資源簡介
OpenCV SVM(支持向量機)目標檢測訓練與檢測相關代碼,并附有正、負樣本描述文件樣例。
代碼片段和文件信息
#include?????
#include?????
#include???
#include???
#define?PosSamNO?3000????//正樣本個數????
#define?NegSamNO?5000????//負樣本個數????
#define?HardExampleNO?0???//難例個數??
void?train_svm_hog()
{
//HOG檢測器,用來計算HOG描述子的??
//檢測窗口(4848)塊尺寸(1616)塊步長(88)cell尺寸(88)直方圖bin個數16???
cv::HOGDescriptor?hog(cv::Size(32?32)?cv::Size(8?8)?cv::Size(8?8)?cv::Size(8?8)?9);
int?DescriptorDim?=?0;//HOG描述子的維數,由圖片大小、檢測窗口大小、塊大小、細胞單元中直方圖bin個數決定????
//設置SVM參數??
cv::Ptr?svm?=?cv::ml::SVM::create();
svm->setType(cv::ml::SVM::Types::C_SVC);
svm->setKernel(cv::ml::SVM::KernelTypes::LINEAR);
svm->setTermCriteria(cv::TermCriteria(cv::TermCriteria::MAX_ITER?100?1e-6));
std::string?ImgName;
//正樣本圖片的文件列表??
std::ifstream?finPos(“positive_samples.txt“);
//負樣本圖片的文件列表??
std::ifstream?finNeg(“negative_samples.txt“);
//所有訓練樣本的特征向量組成的矩陣,行數等于所有樣本的個數,列數等于HOG描述子維數???
cv::Mat?sampleFeatureMat;
//訓練樣本的類別向量,行數等于所有樣
?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????文件???????93000??2018-07-27?09:05??positive_samples.txt
?????文件??????285247??2018-07-27?09:05??SVM_HOG.xm
?????文件????????1503??2018-07-27?09:05??HOGDetectorForOpenCV.txt
?????文件??????155000??2018-07-27?09:05??negative_samples.txt
?????文件????????8714??2018-07-27?09:05??svm_vehicle_detection.cpp
評論
共有 條評論