2017-04-05 210 views
1

所以我想統計出多少人出現在臉書個人資料圖片中。 通常有0-2人(有時候有4-5人,但更爲罕見)。FaceBook個人資料圖片中有多少人?

的樣本數據集(和使用python幾次嘗試),可以在這裏找到:

https://github.com/yoniker/FaceDetect

我嘗試了不同的方法,他們沒有給出合理的結果(所有的這些方法是最錯誤的的時間),我已經試過如下:

- 面部檢測 - http://docs.opencv.org/trunk/d7/d8b/tutorial_py_face_detection.html

它通常不會找到任何人(即發生在大約75%的圖片) - 我已經嘗試了不同的哈爾FILT ers和參數。

-Pedestrian Detection http://www.pyimagesearch.com/2015/11/09/pedestrian-detection-opencv/ 大多數情況下,它仍然沒有找到人。

OpenFace:可能這種臉部識別算法並不能真正幫助人臉檢測(請參閱https://groups.google.com/forum/#!topic/cmu-openface/X6erXKckk0Q)。

最後我看了不同的StackOverflow問題,如 Count the number of people in the video但它們都不相關!

我已經嘗試了半天現在 - 所以幫助將超級讚賞!

+0

很明顯,人臉檢測應該是這個問題的一個解決方案。但如果你只是說你嘗試失敗,沒有人會告訴你你做錯了什麼,以及如何解決它... 提供了一個圖像,顯示你做了什麼,你期待的結果和你得到的結果 – Piglet

+0

顯示結果將涉及共享許多JPG文件。我說的是,我提到的任何方法在任意設置中都不會面臨任何問題(實際上我不太確定那些設置工作正常)。如果你發現其中的任何一個做得好,請讓我知道哪一個。再說一遍:我說大多數時候,這些都是錯誤的(大多數時候沒有找到有人的時候找到某個人,比如檢測到0/1或者1/2的人臉)。 –

回答

2

對我來說,dlib比使用OpenCV的haar人臉檢測器給出了更好的結果。它也有python綁定。你可以找到快速啓動代碼來做臉部檢測here

如果您發佈的圖像中未正確檢測到面部,它將有可能更好地幫助您。

話雖如此,以提高人臉檢測除了使用DLIB,你可以用這些思想實驗:把它傳遞給面部檢測器之前的灰度圖像

  • 使用直方圖均衡化(equalizeHist上OpenCV的)。 (即預處理您的圖像)
  • 如果臉部向左或向右傾斜,則更常見的臉部檢測失敗。要解決此問題,請將圖像以5度爲單位旋轉至30度並應用臉部檢測。在每次旋轉時,您可能會檢測到新面孔。
  • 大多數未使用深度學習的人臉檢測器主要檢測正面。除了使用深度學習或使用HOG或HAAR功能訓練自己的側面輪廓面部檢測器之外,沒有什麼可以做的。

希望這可以幫助你改善你的臉部檢測。

+0

謝謝,我會給它一個鏡頭,但是我必須說,在Facebook Profile的真實世界中,許多面孔都不是「正面」。我想在另一個問題上訓練我的網絡,所以我希望能夠使用別人的網絡來檢測人員:)任何建議? (我正在看openface,但看到我發佈的鏈接 - 那個特定的網絡在檢測方面做得不好!)。 –

+0

是的,關於正面是這樣的。然後深入的學習是我想要走的路。試試這個https://github.com/quanhua92/darknet/。我自己並沒有使用過它,但我記得我的一位朋友告訴我這是爲了檢測臉部。我猜這應該工作。祝你好運! – harshkn

+0

謝謝,你對dlib的工作比HAAR好得多!不過,正如你所建議的,這還遠遠不夠完美,我已經上傳了一個小數據集,以便你可以在https://github.com/yoniker/FaceDetect中看到它的確切位置。我會檢查出黑網現在讓你知道,無論哪種方式,你已經非常有幫助:) –

0

OpenCV中始終存在級聯分類器,以滿足您的所有人臉檢測需求。如果你可以給它提供一些很好的功能,它會給你所有的結果。

相關問題