【机器学习】HOG detectMultiScale 参数分析
前段時間學習了HOG描述子及其與SVM結合在行人檢測方面的應用。
當我們用訓練好的模型去檢測測試圖像時,我們會用到detectMultiScale() 這個函數來對圖像進行多尺度檢測。
這是opencv3.1里的參數解釋
可以看到一共有8個參數。
1.img(必需)
這個不用多解釋,顯然是要輸入的圖像。圖像可以是彩色也可以是灰度的。
2.foundLocations
存取檢測到的目標位置
3.hitThreshold?(可選)
opencv documents的解釋是特征到SVM超平面的距離的閾值(Threshold for the distance between features and SVM classifying plane)
所以說這個參數可能是控制HOG特征與SVM最優超平面間的最大距離,當距離小于閾值時則判定為目標。
4.winStride(可選)
HoG檢測窗口移動時的步長(水平及豎直)。
winStride和scale都是比較重要的參數,需要合理的設置。一個合適參數能夠大大提升檢測精確度,同時也不會使檢測時間太長。
5.padding(可選)
在原圖外圍添加像素,作者在原文中提到,適當的pad可以提高檢測的準確率(可能pad后能檢測到邊角的目標?)
常見的pad size 有(8, 8),?(16, 16),?(24, 24),?(32, 32).
6.scale(可選)
如圖是一個圖像金字塔,也就是圖像的多尺度表示。每層圖像都被縮小尺寸并用gaussian平滑。
scale參數可以具體控制金字塔的層數,參數越小,層數越多,檢測時間也長。 一下分別是1.01 ?1.5 1.03 時檢測到的目標。 通常scale在1.01-1.5這個區間
7.finalThreshold(可選)
這個參數不太清楚,有人說是為了優化最后的bounding box
8.useMeanShiftGrouping(可選)
bool 類型,決定是否應用meanshift 來消除重疊。
default為false,通常也設為false,另行應用non-maxima supperssion效果更好。
轉自:https://www.cnblogs.com/klitech/p/5747895.html
總結
以上是生活随笔為你收集整理的【机器学习】HOG detectMultiScale 参数分析的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 【opencv+机器学习】error C
- 下一篇: 通俗易懂的图解堆排序