【发布时间】:2019-12-03 03:16:05
【问题描述】:
我正在尝试使用 HOG 和 SVM 了解 Python 中的行人检测代码,以使用 FPGA 对其进行加速。
以下从网站复制的代码工作正常
hog = cv2.HOGDescriptor()
hog.setSVMDetector(cv2.HOGDescriptor_getDefaultPeopleDetector())
def detector(image):
rects, weights = hog.detectMultiScale(image, winStride=(4, 4), padding=(8, 8),scale=1.05)
for (x, y, w, h) in rects:
cv2.rectangle(image, (x, y), (x + w, y + h), (0, 0, 255), 2)
cv2.rectangle(image, (x, y), (x + w, y + h), (0, 0, 255), 2)
rects = np.array([[x, y, x + w, y + h] for (x, y, w, h) in rects])
result = non_max_suppression(rects, probs=None, overlapThresh=0.7)
return result
frame = cv2.imread("/.../pedestrian2.jpg")
result = detector(frame.copy())
for (xA, yA, xB, yB) in result: # draw the final bounding boxes after non-maxima supression
cv2.rectangle(frame, (xA, yA), (xB, yB), (0, 255, 0), 2)
img = cv2.cvtColor(frame, cv2.COLOR_BGR2RGB)
img_out = PIL.Image.fromarray(img)
img_out
按照教程
https://www.learnopencv.com/handwritten-digits-classification-an-opencv-c-python-tutorial/
我知道主要功能是 hog.compute(im,descriptor) 计算图像的 HOG 特征,但是第一个代码中的这个函数在哪里?它是否在其中一个函数内?
【问题讨论】: