91av视频/亚洲h视频/操亚洲美女/外国一级黄色毛片 - 国产三级三级三级三级

資源簡介

本資源為HOG+SVM實現的行人檢測系統,包括完整的訓練、檢測和測試程序。檢測程序運行環境為VS2013+opencv2.4.13和QT+opencv3.1.0,測試程序運行環境為matlab2016,具體運行方法見資源中的.txt說明文件。

資源截圖

代碼片段和文件信息

//?Pedestriandetection.cpp?:?定義控制臺應用程序的入口點。
//

#include?“stdafx.h“

#include?
#include?
#include?
#include?
#include?
#include?
#include?

#include?
#include
#include?
#include?
#include?“opencv2/video/background_segm.hpp“
#include?

using?namespace?std;
using?namespace?cv;

#define?PosSamNO?2400??//正樣本個數
#define?NegSamNO?12660????//負樣本個數

#define?TRAIN?false???//是否進行訓練true表示重新訓練,false表示讀取xml文件中的SVM模型
#define?CENTRAL_CROP?true???//true:訓練時,對96*160的INRIA正樣本圖片剪裁出中間的64*128大小人體

//HardExample:負樣本個數。如果HardExampleNO大于0,表示處理完初始負樣本集后,繼續處理HardExample負樣本集。
//不使用HardExample時必須設置為0,因為特征向量矩陣和特征類別矩陣的維數初始化時用到這個值
#define?HardExampleNO?0??

void?press(HOGDescriptor?&myHOG?Mat?src);
//繼承自CvSVM的類,因為生成setSVMDetector()中用到的檢測子參數時,需要用到訓練好的SVM的decision_func參數,
//但通過查看CvSVM源碼可知decision_func參數是protected類型變量,無法直接訪問到,只能繼承之后通過函數訪問
class?MySVM?:?public?CvSVM
{
public:
//獲得SVM的決策函數中的alpha數組??
double?*?get_alpha_vector()
{

return?this->decision_func->alpha;
}

//獲得SVM的決策函數中的rho參數即偏移量??
float?get_rho()
{
return?this->decision_func->rho;
}
};



int?main()
{
//檢測窗口(64128)塊尺寸(1616)塊步長(88)cell尺寸(88)直方圖bin個數9
HOGDescriptor?hog(Size(64?128)?Size(16?16)?Size(8?8)?Size(8?8)?9);//HOG檢測器,用來計算HOG描述子的
int?DescriptorDim;//HOG描述子的維數,由圖片大小、檢測窗口大小、塊大小、細胞單元中直方圖bin個數決定
MySVM?svm;//SVM分類器

//若TRAIN為true,重新訓練分類器
if?(TRAIN)
{
string?ImgName;//圖片名(絕對路徑)
ifstream?finPos(“E:\\項目\\數字圖像處理\\INRIAPerson\\INRIAPerson\\96X160H96\\Train\\INRIAPerson96X160PosList.txt“);//正樣本圖片的文件名列表
//ifstream?finPos(“PersonFromVOC2012List.txt“);//正樣本圖片的文件名列表
ifstream?finNeg(“E:\\項目\\數字圖像處理\\INRIAPerson\\INRIAPerson\\NoPersonFromINRIAList.txt“);//負樣本圖片的文件名列表

Mat?sampleFeatureMat;//所有訓練樣本的特征向量組成的矩陣,行數等于所有樣本的個數,列數等于HOG描述子維數
Mat?sampleLabelMat;//訓練樣本的類別向量,行數等于所有樣本的個數,列數等于1;1表示有人,-1表示無人


//依次讀取正樣本圖片,生成HOG描述子
for?(int?num?=?0;?num {
cout?< //ImgName?=?“D:\\DataSet\\PersonFromVOC2012\\“?+?ImgName;//加上正樣本的路徑名
ImgName?=?“E:\\項目\\數字圖像處理\\INRIAPerson\\INRIAPerson\\96X160H96\\Train\\pos\\“?+?ImgName;//加上正樣本的路徑名
Mat?src?=?imread(ImgName);//讀取圖片
if?(CENTRAL_CROP)
src?=?src(Rect(16?16?64?128));//將96*160的INRIA正樣本圖片剪裁為64*128,即剪去上下左右各16個像素
//resize(srcsrcSize(64128));

vector?descriptors;//HOG描述子向量
hog.compute(src?descriptors?Size(8?8));//計算HOG描述子,檢測窗口移動步長(88)
//
cout?<riptors.size()?<
//處理第一個樣本時初始化特征向量矩陣和類別矩陣,因為只有知道了特征向量的維數才能初始化特征向量矩陣
if?(0?==?num)
{
DescriptorDim?=?descriptors.size();//HOG描述子的維數
//初始化所有訓練樣本的特征向量組成的矩陣,行數等于所有樣本的個數,列數等于HOG描述子維數sampleFeatureMat
sampleFeatureMat?=?Ma

?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????目錄???????????0??2019-03-25?00:41??行人檢測工程文件\
?????目錄???????????0??2019-03-25?00:40??行人檢測工程文件\Pedestriandetection\
?????目錄???????????0??2019-03-25?00:40??行人檢測工程文件\Pedestriandetection\Debug\
?????文件??????184320??2018-05-18?19:50??行人檢測工程文件\Pedestriandetection\Debug\Pedestriandetection.exe
?????文件??????960104??2018-05-18?19:50??行人檢測工程文件\Pedestriandetection\Debug\Pedestriandetection.ilk
?????文件?????3165184??2018-05-18?19:50??行人檢測工程文件\Pedestriandetection\Debug\Pedestriandetection.pdb
?????文件???????44073??2018-05-18?19:51??行人檢測工程文件\Pedestriandetection\HOGDetectorForOpenCV.txt
?????目錄???????????0??2019-03-25?00:40??行人檢測工程文件\Pedestriandetection\Pedestriandetection\
?????目錄???????????0??2019-03-25?00:40??行人檢測工程文件\Pedestriandetection\Pedestriandetection\Debug\
?????目錄???????????0??2019-03-25?00:40??行人檢測工程文件\Pedestriandetection\Pedestriandetection\Debug\Pedestri.EA9A9B55.tlog\
?????文件???????13766??2018-05-18?19:50??行人檢測工程文件\Pedestriandetection\Pedestriandetection\Debug\Pedestri.EA9A9B55.tlog\CL.read.1.tlog
?????文件????????1384??2018-05-18?19:50??行人檢測工程文件\Pedestriandetection\Pedestriandetection\Debug\Pedestri.EA9A9B55.tlog\CL.write.1.tlog
?????文件?????????169??2018-05-18?19:50??行人檢測工程文件\Pedestriandetection\Pedestriandetection\Debug\Pedestri.EA9A9B55.tlog\Pedestriandetection.lastbuildstate
?????文件????????1878??2018-05-18?19:50??行人檢測工程文件\Pedestriandetection\Pedestriandetection\Debug\Pedestri.EA9A9B55.tlog\cl.command.1.tlog
?????文件????????2438??2018-05-18?19:50??行人檢測工程文件\Pedestriandetection\Pedestriandetection\Debug\Pedestri.EA9A9B55.tlog\link.command.1.tlog
?????文件????????5028??2018-05-18?19:50??行人檢測工程文件\Pedestriandetection\Pedestriandetection\Debug\Pedestri.EA9A9B55.tlog\link.read.1.tlog
?????文件?????????726??2018-05-18?19:50??行人檢測工程文件\Pedestriandetection\Pedestriandetection\Debug\Pedestri.EA9A9B55.tlog\link.write.1.tlog
?????文件????????3373??2018-05-18?19:50??行人檢測工程文件\Pedestriandetection\Pedestriandetection\Debug\Pedestriandetection.log
?????文件??????824508??2018-05-18?19:50??行人檢測工程文件\Pedestriandetection\Pedestriandetection\Debug\Pedestriandetection.obj
?????文件?????1703936??2018-05-13?10:24??行人檢測工程文件\Pedestriandetection\Pedestriandetection\Debug\Pedestriandetection.pch
?????文件???????11194??2018-05-13?10:24??行人檢測工程文件\Pedestriandetection\Pedestriandetection\Debug\stdafx.obj
?????文件??????756736??2018-05-18?19:50??行人檢測工程文件\Pedestriandetection\Pedestriandetection\Debug\vc120.idb
?????文件?????1781760??2018-05-18?19:50??行人檢測工程文件\Pedestriandetection\Pedestriandetection\Debug\vc120.pdb
?????文件???????13053??2018-05-18?19:51??行人檢測工程文件\Pedestriandetection\Pedestriandetection\Pedestriandetection.cpp
?????文件????????4672??2018-05-13?10:24??行人檢測工程文件\Pedestriandetection\Pedestriandetection\Pedestriandetection.vcxproj
?????文件????????1326??2018-05-13?10:19??行人檢測工程文件\Pedestriandetection\Pedestriandetection\Pedestriandetection.vcxproj.filters
?????文件????????1594??2018-05-13?10:19??行人檢測工程文件\Pedestriandetection\Pedestriandetection\ReadMe.txt
?????文件?????????225??2018-05-13?10:19??行人檢測工程文件\Pedestriandetection\Pedestriandetection\stdafx.cpp
?????文件?????????234??2018-05-13?10:19??行人檢測工程文件\Pedestriandetection\Pedestriandetection\stdafx.h
?????文件?????????236??2018-05-13?10:19??行人檢測工程文件\Pedestriandetection\Pedestriandetection\targetver.h
?????文件??????????44??2018-05-18?19:47??行人檢測工程文件\Pedestriandetection\Pedestriandetection.opensdf
............此處省略20個文件信息

評論

共有 條評論