HOG 行人檢測 學習體會(如何製作訓練樣本)

2021-06-22 02:21:32 字數 893 閱讀 8078

**:

如何製作訓練樣本

分析了原作者的資料集,結合網上一些資料,下面描述如何製作訓練樣本

1、如何從原始生成樣本

對比inriaperson\inriaperson\train\pos(原始),inriaperson\train_64x128_h96\pos(生成樣本)可以發現,作者從原始裁剪出一些站立的人,要求該人不被遮擋,然後對剪裁的left-right reflect。以第一張為例crop001001,它剪裁了2個不被遮擋的人,再加上原**,共3張,再加左右映象,總共6張。

2、裁剪

可利用基於opencv1.0的程式imageclipper,進行裁剪並儲存,它會自動生成檔名並儲存在同一路徑下新生成的imageclipper資料夾下。

3.改變大小

可以利用acdsee軟體,tools/open in editor,進去後到resize選項; tools/rotate還可實現left-right reflect

4. 製作pos.lst列表  進入dos介面,定位到需要製作列表的資料夾下,輸入 dir /b> pos.lst,即可生成檔案列表;

仔細分析了cvhop.cpp中的compute函式,可以直接呼叫它來獲得樣本hog,然後訓練得到檢測運算元

1.製作樣本

2.對每一張呼叫

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進行訓練和分類,可得到權重係數,即getdefaultpeopledetector()函式中呼叫的檢測運算元detector[ ]

HOG 行人檢測 學習體會(如何製作訓練樣本)

如何製作訓練樣本 分析了原作者的資料集,結合網上一些資料,下面描述如何製作訓練樣本 1 如何從原始生成樣本 對比inriaperson inriaperson train pos 原始 inriaperson train 64x128 h96 pos 生成樣本 可以發現,作者從原始裁剪出一些站立的人...

行人檢測 HOG運算元

梯度直方圖特徵 hog 是一種對影象區域性重疊區域的密集型描述符 它通過計算區域性區域的梯度方向直方圖來構成特徵。hog特徵結合 svm分類器已經被廣泛應用於影象識別中,尤其在行人檢測中獲得了極大的成功。需要提醒的是,hog svm 進行行人檢測的方法是法國研究人員 dalal 在2005 的cvp...

HOG演算法 行人檢測

hog histogram of oriented gridients 是2005年提出描述行人特徵的演算法,在當年取得了突破性的進展,處理在行人檢測領域,在其他識別方面hog也取得了不錯的效果。hog通過計算和統計影象區域性區域的梯度方向直方圖來形成描述特徵 在一張影象中,人與外界存在乙個邊緣,通...