s1101416 Homework #4
1122 Digital Image
Processing Assignment #4
學號:s1101416 姓名:李柏翰
主題:膚色偵測 Skin Color Detection
專案目標:
轉寫一個程式濾出附件中6 張照片的皮膚部分並與膚色標準答案(Ground
Truth)做比較,計算6張圖片個別的IOU並輸出,最後輸出6個IOU的平均值
遇到的問題:
1. 很難找到一個合適的顏色range偵測皮膚,每張圖片所適合的range並不相同(即使皮膚都偏黃),最後只能依照平均值來更改range,需要嘗試非常多次數值。
開發平台:
作業系統–Microsoft Windows 11 家用版(23H2)
開發環境–Visual Studio Code
套件–OpenCV 4.20
程式語言–Python 3.10.11
程式架構及說明:
calculate_iou函數:計算兩個二值圖像之間的IOU(交集比),np.logical_and計算兩個圖像的交集。np.logical_or計算兩個圖像的聯集。交集的元素總數除以聯集的元素總數,得到IOU值。
detect_skin_and_calculate_iou函數:執行皮膚檢測,並計算與Ground Truth比較得出的IOU。 將原始圖像從BGR色彩空間轉換到YCrCb色彩空間。定義YCrCb色彩空間中的皮膚顏色範圍 (亮度,紅色,藍色),並使用cv2.inRange創建皮膚檢測的遮罩,並計算IOU。
成果展示與討論:
影片連結:
https://drive.google.com/file/d/1L27Qtt-_Oo_D3-YEeVPMX433zg7xVSrD/view?usp=sharing
留言
張貼留言