HOG+SVM
发布日期:2021-11-07 18:53:25 浏览次数:1 分类:技术文章

本文共 1866 字,大约阅读时间需要 6 分钟。

#include 
#include
#include
using namespace std;using namespace cv;using namespace cv::ml;int main(){ //文件路径的前缀 string PrePath = "C:/Users/GuSheng/Desktop/photo/pedestrians128x64/"; //文件名字的前缀 string PreFileName1 = "per0000"; string PreFileName2 = "per000"; ostringstream is; vector
filename;//保存文件的名字 filename.clear(); //文件的个数为20 int total = 20; for (int i = 1; i <= total;++i) { is.str("");//这句话是必须的 is << i; if (i<=9) { filename.push_back(PrePath + PreFileName1 + is.str() + ".ppm"); } else { filename.push_back(PrePath + PreFileName2 + is.str() + ".ppm"); } } //开始进行HOG检测 //影像的大小为64*128 块的大小为16*16 块的步长为8 cell的大小为8*8 bin的大小为9 //则一副影像的特征向量为 7*15*4*9=3780 Mat DataMat = Mat::zeros(total, 3780, CV_32FC1); Mat labelMat = Mat::zeros(total, 1, CV_32SC1); for (size_t i = 0; i < filename.size();++i) { vector
descriptor; descriptor.clear(); Ptr
hog = new HOGDescriptor(Size(64, 128), Size(16, 16), Size(8, 8), Size(8, 8), 9); Mat img = imread(filename[i], IMREAD_GRAYSCALE); if (img.empty()) { continue; } hog->compute(img, descriptor, Size(1, 1)); //填充样本数据 for (size_t j = 0; j < descriptor.size();++j) { DataMat.at
(i, j) = descriptor[j]; } labelMat.at
(i, 0) = i+1; } //开始进行训练 Ptr
svm = SVM::create(); svm->setType(SVM::C_SVC); svm->setKernel(SVM::LINEAR); svm->setTermCriteria(TermCriteria(TermCriteria::MAX_ITER, 100, 1e-06)); //开始进行训练 svm->train(DataMat, ROW_SAMPLE, labelMat); svm->save("SVM_people.xml"); string testName = "C:/Users/GuSheng/Desktop/photo/pedestrians128x64/per00012.ppm"; Mat testImg = imread(testName, IMREAD_GRAYSCALE); if (testImg.empty()) { return -1; } Ptr
hog = new HOGDescriptor(Size(64, 128), Size(16, 16), Size(8, 8), Size(8, 8), 9); vector
descriptor; hog->compute(testImg, descriptor); int ret = svm->predict(descriptor); cout << ret << endl; return 0;}

转载地址:https://blog.csdn.net/zhanggusheng/article/details/71104767 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!

上一篇:LBP
下一篇:DFT

发表评论

最新留言

感谢大佬
[***.8.128.20]2024年03月26日 08时24分28秒

关于作者

    喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!

推荐文章