HOG行人检测 如何制作样品
原文鏈接:http://blog.csdn.net/Armily/article/details/8333836
如何制作訓(xùn)練樣本
分析了原作者的數(shù)據(jù)集,結(jié)合網(wǎng)上一些資料,下面描述如何制作訓(xùn)練樣本
1、如何從原始圖片生成樣本
對(duì)比INRIAPerson\INRIAPerson\Train\pos(原始圖片),INRIAPerson\train_64x128_H96\pos(生成樣本)可以發(fā)現(xiàn),作者從原始圖片裁剪出一些站立的人,要求該人不被遮擋,然后對(duì)剪裁的圖片left-right reflect。以第一張圖片為例crop001001,它剪裁了2個(gè)不被遮擋的人,再加上原照片,共3張,再加左右鏡像,總共6張。
2、裁剪
可利用基于opencv1.0的程序imageclipper,進(jìn)行裁剪并保存,它會(huì)自動(dòng)生成文件名并保存在同一路徑下新生成的imageclipper文件夾下。
?
3.改變圖片大小
可以利用Acdsee軟件,Tools/open in editor,進(jìn)去后到Resize選項(xiàng); tools/rotate還可實(shí)現(xiàn)left-right reflect
?
4. 制作pos.lst列表 進(jìn)入dos界面,定位到需要制作列表的圖片文件夾下,輸入 dir /b> pos.lst,即可生成文件列表;
?
仔細(xì)分析了cvhop.cpp中的compute函數(shù),可以直接調(diào)用它來獲得樣本HOG,然后訓(xùn)練得到檢測(cè)算子
1.制作樣本
2.對(duì)每一張圖片調(diào)用
hog.compute(img, descriptors,Size(8,8), Size(0,0));
可以生成hog descriptors,把它保存到文件中
for(int j=0;j<3780;j++)
fprintf(f,"%f,",descriptors[j]);
3.利用SVM進(jìn)行訓(xùn)練和分類,可得到權(quán)重系數(shù),即getDefaultPeopleDetector()函數(shù)中調(diào)用的檢測(cè)算子detector[ ]
總結(jié)
以上是生活随笔為你收集整理的HOG行人检测 如何制作样品的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 剑盾怎么加好友 《剑网3》官网
- 下一篇: 如何解决大量样本标注问题