【发布时间】:2018-05-26 04:15:31
【问题描述】:
import cv2
image = cv2.imread("cat.1.jpg",0)
winSize = (64,64)
blockSize = (16,16)
blockStride = (8,8)
cellSize = (8,8)
nbins = 9
derivAperture = 1
winSigma = 4.
histogramNormType = 0
L2HysThreshold = 2.0000000000000001e-01
gammaCorrection = 0
nlevels = 64
hog = cv2.HOGDescriptor(winSize,blockSize,blockStride,cellSize,nbins,derivAperture,winSigma,histogramNormType,L2HysThreshold,gammaCorrection,nlevels)
winStride = (8,8)
padding = (8,8)
locations = ((10,20),)
hist = hog.compute(image,winStride,padding,locations)
print (hist)
print (len(hist))
print (len(hist[0]))
我有近 50000 张狗 (25K) 和猫 (25K) 的图像。我想训练一个 SVM 分类器,以便它正确预测特定图像是狗还是猫。通过使用 HOG 描述符,我得到了特定图像大小为 1764*1 的特征向量。
如何使用所有图像的特征向量?以及如何提供标签(例如 1 表示猫或 -1 表示狗)。注意图像文件名的格式为 at.1.jpg,cat。 2.jpg.............cat.25000.jpg
【问题讨论】:
标签: machine-learning computer-vision svm