OpenCV開發筆記(五十五):紅胖子8分鐘帶你深入了解Haar、LBP特徵以及級聯分類器識別過程(圖文並茂+淺顯易懂+程式源碼)
若該文為原創文章,未經允許不得轉載
原部落客部落格地址://blog.csdn.net/qq21497936
原部落客部落格導航://blog.csdn.net/qq21497936/article/details/102478062
本文章部落格地址://blog.csdn.net/qq21497936/article/details/106144767
各位讀者,知識無窮而人力有窮,要麼改需求,要麼找專業人士,要麼自己研究
紅胖子(紅模仿)的博文大全:開發技術集合(包含Qt實用技術、樹莓派、三維、OpenCV、OpenGL、ffmpeg、OSG、單片機、軟硬結合等等)持續更新中…(點擊傳送門)
OpenCV開發專欄(點擊傳送門)
上一篇:《OpenCV開發筆記(五十四):紅胖子8分鐘帶你深入了解Haar級聯分類器進行人臉檢測(圖文並茂+淺顯易懂+程式源碼)》
下一篇:持續補充中…
前言
紅胖子來也!!!
上一篇使用了Haar級聯分類器進行人臉識別,本篇章就了解Haar、LBP特徵以及理解分類器的識別過程。
Haar(哈爾特徵)
概述
哈爾特徵(Haar-like features)是用於物體識別的一種數字影像特徵。它們因為與哈爾小波轉換極為相似而得名,是第一種即時的人臉檢測運算。
哈爾特徵使用檢測窗口中指定位置的相鄰矩形,計算每一個矩形的像素和並取其差值。然後用這些差值來對影像的子區域進行分類。 例如,當前有一個人臉影像集合。通過觀察可以發現,眼睛的顏色要比兩頰的深。因此,用於人臉檢測的哈爾特徵是分別放置在眼睛和臉頰的兩個相鄰矩形。這些矩形的位置則通過類似於人臉影像的外接矩形的檢測窗口進行定義。
哈爾特徵最主要的優勢是它的計算非常快速。使用一個稱為積分圖的結構,任意尺寸的哈爾特徵可以在常數時間內進行計算。
Haar特徵分為四類:邊緣特徵、線性特徵、中心特徵和對角線特徵,組合成特徵模板。
原理
Harr特徵也成Haar-like特徵,是一種簡單且高效的影像特徵,其基於矩形區域相似的強度差異性Haar小波。
最原始的Haar-like特徵在2002年的《A general framework for object detection》提出,它定義了四個基本特徵結構,如下圖:
在持續的發展中,又增加12種特徵,擴招到16種特徵:
可以將上圖每一個特徵理解成為一個窗口,這個窗口將在影像中做步長為1的滑動,最終遍歷整個影像。
在詳細講解級聯匹配之前,先附上一張圖片的轉換後的閾值灰度分布圖:
如下圖:
可以進一步增加特徵提取,增加強分類器如下圖:
級聯分類器、強分類器和弱分類器
- 級聯分類器:級聯分類器由n個強分類器(n >= 1,姑且把1算進去)
- 強分類器:強分類器由n個弱分類器(n >= 1,姑且把1算進去)
- 弱分類器:使用基本的一個特徵進行分類的
識別過程
見圖:
LBP特徵
概述
原始的LBP運算元定義為在3∗3的窗口內,以窗口中心像素為閾值,將相鄰的8個像素的灰度值與其進行比較,若周圍像素值大於等於中心像素值,則該像素點的位置被標記為1,否則為0。這樣,3∗3鄰域內的8個點經比較可產生8位二進位數(通常轉換為十進位數即LBP碼,共256種),即得到該窗口中心像素點的LBP值,並用這個值來反映該區域的紋理資訊。需要注意的是,LBP值是按照順時針方向組成的二進位數。
LPB原理
LPB特徵匹配跟Haar相似,但又不同,如下:
可以取樣多個點(不限於8個),取樣的半徑可以擴大,這個根據開發者設自身去調整優化,找到合適目標場景的。
原部落客部落格地址://blog.csdn.net/qq21497936
原部落客部落格導航://blog.csdn.net/qq21497936/article/details/102478062
本文章部落格地址://blog.csdn.net/qq21497936/article/details/106144767