2011-10-06 101 views
0

我正在處理一個問題(在C++/opencv中),其中4個用戶需要使用從膚色和上手的特徵中提取的身份信息來相互區分。但是,膚色方法(在YCrCb中)的可靠性非常低,因爲膚色之間沒有太大差異。因此,我試圖從手中提取更多的功能,比如較暗的點等。爲此,我計算了圖像的拉普拉斯算子。結果:圖像處理手特徵識別

http://imageshack.us/photo/my-images/818/afb1.jpg/ 
http://imageshack.us/photo/my-images/31/afb2i.jpg/ 
http://imageshack.us/photo/my-images/638/afb3.jpg/ 

前兩張圖片來自同一手/人。第二張圖像是另一個人的手。正如你所看到的,在第一幅圖像中可以看到一個清晰的亮點,它們代表了手部較暗的部位。我的想法是在小方塊上採樣handcontour,並在其他圖像中找到這些方塊。之後,我們可以評估哪個圖像對於給定圖像具有最高和最高的匹配。

但是,我找不到一個算法來查找示例圖像和其他圖像之間的匹配。我嘗試了cvMatchTemplate()操作(http://dasl.mem.drexel.edu/~noahKuntz/openCVTut6.html#Step%202)和meanShift算法,但這兩種技術的結果都非常糟糕。

有人可以給我一些提示嗎?

+0

您已經在另一個用戶名下發布了一個非常類似的問題。請使用您的新見解編輯該問題,並刪除此問題。 –

+0

[圖像處理皮膚顏色識別]可能的重複(http://stackoverflow.com/questions/7589394/image-processing-skin-color-identification) –

回答

0

這是一個棘手的問題,因爲手是如此靈活的物體。如果你先解決手勢估計問題,你可能會有一些運氣。 這裏是一個很好的紙張,以幫助您在研究空間的句柄:

Vision-based hand pose estimation: a review

視頻例如用OpenCV的實現:

http://www.youtube.com/watch?v=uETHJQhK144

一旦你的手的估計姿態,那麼你有一個基礎來隔離和比較每隻手的相同區域(例如,只是指關節和手腕之間的區域)。然後你可以開始應用通用圖像匹配技術。應用Eigenfaces示例(您的案例中的「Eigenhands」)可能是您最好的選擇。特徵臉是在計算機視覺課程開始時教授的,大量的信息可以在線獲得。

+0

感謝您的信息,我創建了一個handmodel,但現在我需要一些過濾器從手中提取小的獨特細節,如黑點。正如我在第一篇文章中解釋的那樣,拉普拉斯發現了許多這些特徵,但我想我需要其他濾鏡才能使這些細節更清晰可見,然後才能跟蹤它們。我已經嘗試過梯度和sobel過濾器,但一些提示會很好。此外,我認爲我需要一種算法來匹配其他圖像中的這些特徵(例如,將小樣本與從一隻手中提取的黑點相比較)。如果有特定的算法,我現在不用。 – user170353

+0

是的,一旦你有手區域,你想跟蹤*正確註冊和轉換*你有一個圖像匹配的基礎。訓練哈爾分類器是「正確」的方式,但非常困難。應用Eigenfaces示例(您的案例中的「Eigenhands」)可能是您最好的選擇。特徵臉是在計算機視覺課程開始時教授的,大量的信息可以在線獲得。如果您發現我的回答有幫助,請注意或接受。 :) 謝謝 –