作業說明:將照片輸入於程式中,檢查出照片中人物的皮膚。
執行環境:windows10、python3.8.8、opencv-python==4.5.1.48、numpy==1.20.1
實作過程:
先將圖片讀入,並且將照片轉換成兩種不同的color space一個為HSV,另一個為YCrCb
,接著分別處理兩個不同色域中的圖片,其中HSV的片段為
H的判斷範圍約為0~42因為陣列儲存為uint8(範圍為0~255),所以轉換過後為圖中樣子,S範圍為 0.23~0.68。將偵測到的皮膚改為綠色。
再來處理YCrCb色域圖片,其程式碼片段為
Cr範圍為 135~180,Cb範圍為85~135。將偵測的皮膚改為紅色。
實作結果:
原始照片
分析:
YCrCb處理中,偵測皮膚幾乎都有覆蓋到,但沙灘卻被誤判為皮膚的很嚴重。
判斷式調整過後最好的版本
沒有留言:
張貼留言