2017-08-10 50 views
0

我正在創建一個程序,用opencv檢測頭部,而不僅僅是臉部。必須有辦法做到這一點。除了頭部之外,我需要確定頭部的最高像素(頭髮的頂部)和下巴的低中心點...我沒有找到任何OS X OpenCV示例..下面是我想實現什麼... https://pasteboard.co/GF19Fao.jpgOpenCV和OsX HEAD檢測

看起來夠簡單吧?

回答

0

我建議您考慮一下haarcascades

This由不包含在OpenCV中的幾個級聯組成。


方法1:

輪廓正面人臉的有一個很好的起點。

就我個人而言,我還沒有測試過它們,所以我很難告訴你結果是什麼樣子。

如果最終邊框單獨適合完美在整個頭部,那麼你可以做如下假設爲出發點

if box = (topLeft, topRight, bottomLeft, bottomRight) 
then hairTop = distance(topLeft, topRight)/2 
and chin = distance(bottomLeft, bottomRight)/2 

如果沒有,你可以做兩件事情:

1.進行一些測量重新調整,以查看移動所得矩形以找到下巴和頂部頭髮有多遠。

2.您也可以使用其他分類器的組合。

合併正面/側面人臉的結果與分類找到下巴

合併正面/側面人臉upperbody分類找到頂部的頭髮。


方法2

您也可以使用正面/側面人臉分類找到頂部頭髮,只是使用找到下巴。


這兩種方法都要求您運行多個測試以找到滿足您的任務的最佳值/估計值。

+0

順便說一下..我用的每張照片都會在同一個地方的臉上 –

+0

你有沒有試過我的建議? – eshirima

+0

是的。我設法讓嘴巴下來。我發現了一個「頭肩膀」級聯,但它有時顯示比頭髮更多的頭髮..我需要完全匹配頭髮的頂部。你能解釋一下我的「頭髮頂」算法嗎? –