2019年5月16日 星期四

1041547 作業4

一、作業要求


利用所學的顏色的知識,撰寫一個程式來偵測一張輸入照片中的皮膚區域並將其標示出。

二. 使用環境


windows10
Python3.6
Opencv 3.4.1

三. 實作方法


根據https://arxiv.org/ftp/arxiv/papers/1708/1708.02694.pdf給的演算法,做皮膚偵測。
先對BGR範圍做判斷,再將圖片轉到YCrCb去判斷,保留的部分用白色,最後在對原圖片做mask。

四. 實作結果


原圖


R > 95 and G > 40 and B > 20 and R > G and R > B and | R - G | > 15
只有去掉背景的樣子
Cr > 135 and Cb > 85 and Y > 80
比BGR效果明顯


Cr <= (1.5862*Cb)+20 and Cr>=(0.3448*Cb)+76.2069 and Cr >= (-4.5652*Cb)+234.5652 and Cr <= (-1.15*Cb)+301.75 and Cr <= (-2.2857*Cb)+432.85
沙灘少了一些

最後全部mask







沒有留言:

張貼留言