一、作業要求
利用所學的顏色的知識,撰寫一個程式來偵測一張輸入照片中的皮膚區域並將其標示出。
二. 使用環境
Python3.6
Opencv 3.4.1
三. 實作方法
先對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
沒有留言:
張貼留言