gpt4 book ai didi

python-2.7 - SVM自定义对象检测器的正负样本分别

转载 作者:行者123 更新时间:2023-12-02 17:41:06 25 4
gpt4 key购买 nike

我正在尝试通过在OpenCV上使用HOG + SVM方法来训练自定义对象检测器。

我已经使用下面的代码从正样本和负样本中提取了HOG功能:

import cv2

hog = cv2.HOGDescriptor()
def poshoggify():

for i in range(1,20):
image = cv2.imread("/Users/munirmalik/cvprojek/cod/pos/" + str(i)+ ".jpg")
(winW, winH) = (500, 500)

for resized in pyramid(image, scale=1.5):
# loop over the sliding window for each layer of the pyramid
for (x, y, window) in sliding_window(resized, stepSize=32, windowSize=(winW, winH)):
# if the window does not meet our desired window size, ignore it
if window.shape[0] != winH or window.shape[1] != winW:
continue

img_pos = hog.compute(image)
np.savetxt('posdata.txt',img_pos)

return img_pos

且等效函数为负样本。

如何以SVM知道哪个为正和哪个为负的方式格式化数据?

此外,如何将这种培训转化为通过网络摄像头检测所需物体的“测试”?

最佳答案

如何以SVM知道哪个为正和哪个为负的方式格式化数据?

现在,您将创建另一个名为labels的列表,该列表将存储与相应图像关联的类值。例如,如果您具有一组训练如下的功能:

features = [pos_features1, pos_features2, neg_features1, neg_features2, neg_features3, neg_features4]

您将有一个对应的标签类,例如
labels = [1, 1, 0, 0, 0, 0]

然后,您可以将其提供给分类器,如下所示:
clf=LinearSVC(C=1.0,  class_weight='balanced')
clf.fit(features,labels)

此外,如何将这种培训转化为通过网络摄像头检测所需物体的“测试”?

训练之前,您应该将标记的数据集(groundtruth)分为训练和测试数据集。您可以使用 skilearns KFold module进行此操作。

关于python-2.7 - SVM自定义对象检测器的正负样本分别,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45037918/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com