cv2.HOGDescriptor的compute方法总是返回一个空元组

问题描述 投票:3回答:1

我正在使用here中给出的代码片段来计算小图像补丁的HOG功能。然而,对于随附的代码,应该保持HOG特征值的变量h正在返回空元组。任何人都可以请指出我在代码中哪里出错?

import numpy as np
import cv2

img = cv2.imread('newimg.jpg')
img_gray = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY)
img_gray = cv2.resize(img_gray,(50,50))

hog = cv2.HOGDescriptor()
h = hog.compute(img_gray)
print(h)

附上测试图像

python-3.x cv2
1个回答
1
投票

我认为图像尺寸存在问题。更具体地说,与猪的描述符的默认窗口大小相比,图像大小更小。我建议您调整图片大小,然后使用下面附带的代码段。

winSize = (32,32)
blockSize = (16,16)
blockStride = (8,8)
cellSize = (8,8)
nbins = 9
hog = cv2.HOGDescriptor(winSize, blockSize, blockStride, cellSize, nbins)
h = hog.compute(img_gray)
print(h) 
© www.soinside.com 2019 - 2024. All rights reserved.