計算機視覺基礎系列(python與opencv的操作與運用/tensorflow的基礎介紹)(十九)---Haar特徵

1 引入機器學習 (Haar的引入)

什麼是特徵?什麼是haar特徵?

特徵是:某個區域的像素點經過某種四則運算得到的結果,這個結果可以是一個向量或者其他的各種元素。(具體值,向量,多維的值,矩陣)本質

Haar特徵:具有特徵的本質,但是又是一種特殊的特徵描述,如下:

 有三個大類,基礎類型,核心類型,all類型。

這十四個類型特徵,這裏的特徵描述是:

 特徵的公式推導公式,若黑色和白色整體部分的像素值的權重值爲1 ,黑色部分的權重值爲-2

根據第二個特徵則得到特徵=白色-黑色

根據第三個特徵後面會繼續介紹

如何利用特徵區分目標?

 區分目標的方法有:閾值判決(大於某種就是,或者說小於某值就是,反之亦然)

知道了如何利用特徵,那麼怎麼得到這個判決呢?

利用機器學習的方法,後面會有詳細介紹。 

2 Haar特徵遍歷的過程

若這裏的haar的特徵圖大小爲10x10的圖,整幅圖像的大小爲100x100,則

遍歷的時候必須用這個haar特徵的模板,從上到下,從左到右遍歷一次,再遍歷的過程中還必須考慮步長的問題,例如若每次滑動的像素爲10,則需要滑動九次,總共爲100個模板,若步長爲5,則運算量還會擴大四倍。我們這裏使用的是模板1。且這裏還需要注意的是,模板是可以進行在滑動過程中進行縮放的,但是縮放也是要從上到下,從左到右進行遍歷的。 模板的縮放等級在每個模板裏面都有20級的。

3 積分圖

什麼是積分圖呢?

 這裏的A區域表示的是第一個部分1,B區域表示的是第一個區域加上第二個區域(1+2),C表示的是第一個區域加上第三個區域(1+3),D表示的是第一個區域,第二個區域和第三個區域以及第四個區域的和(1+2+3+4)。

這樣A,B,C,D四個區域就可以計算出來了。

然而4 = A-B-C+D只運用了三次加減就可以求出來了,但是我們這裏需要把所有的像素遍歷一次,還需要將所有區域求一次。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章