s1101406 Homework #4

 1122 Digital Image Processing Assignment #4

  • 學號: s1101406              姓名: 徐宇昕

  • 主題: 膚色偵測 Skin Color Detection 利用所學習顏色(Color)的知識與技術,撰寫一個程式來偵測照片中的皮膚顏色區域並將其標示出。使用附件中的 6 張照片及膚色標準答案(Ground Truth)做測試,並呈現所設計膚色偵測方法執行結果的 IOU(Intersection Over Union)數值(每張圖片值及所有 6 張圖片平均值)。 IOU = (你的方法所計算出的膚色區域像素) and(膚色標準答案區域像素) /  (你的方法所計算出的膚色區域像素) or (膚色標準答案區域像素)

  • 開發環境: Microsoft Windows 11, Visual Studio 2022, Opencv 4.90, C++

  • 程式架構與說明: 
    • 抑制 libpng 的警告訊息。
    • 用迴圈跑各個圖像文件名數組,每次處理兩個圖像(原圖和答案圖)。
    • 讀取圖像並確認是否成功讀取。
    • 將圖像轉換為 HSV 和 YCrCb 色彩空間,並根據範圍提取皮膚區域的二值化。
    • 將兩個二值化進行位元運算合併為全局遮罩。
    • 顯示原始圖像、答案圖像和結果圖像。
    • 定義函數 calculateIOU:此函數用於計算兩個二值化遮罩之間的交集比聯集(IOU)。。
    • 將遮罩轉換為 CV_8U 類型。
    • 通過位元運算計算遮罩的交集和聯集。
    • 計算位元運算交集和聯集圖像中所有像素值的總和。
    • 計算 IOU 並返回比例值。
    • 顯示結果。
    • 累加 IOU 以計算平均 IOU。
    • 最後顯示平均 IOU。
  • 圖片補充:
















留言

這個網誌中的熱門文章

rzwang Homework #1

s1093350 Homework #2

s1061637 作業6