s1082046 作業 5

 主題: 膚色偵測 Skin Color Detection

利用你所學的顏色 (Color) 的知識與技術,撰寫一個程式來偵測一張輸入照片中的皮膚區域並將其標示出。(請用附件中的三張照片做測試)

Write a program that detect skin color from an image.

一、 開發環境:

  •   Windows 11
  •   Visual Studio 2022 C++
  •   OpenCV 4.7.0

二、 程式功能:

() 主程式

       Step1: 使用者輸入(Cin >> img_name)欲偵測膚色的圖片名稱

       Step2: 利用imread()載入圖片

       Step3: 由於原圖過大,在此用resize()等比例縮小10倍,以便觀察

       Step4: 利用imshow()輸出原圖(src_img)查看

       Step5: 跳至副程式skinDetect()做膚色偵測

          Step6:  利用imshow()輸出結果圖(dst_img)

() 副程式(skinDetect())

          採用RGB顏色空間的閾值來做膚色識別

         在研究論文Human Skin Colour Clustering for Face Detection中證明,膚色在RGB模型下的範

     圍滿足以下約束:

 Step1: 利用copyTo()複製一份與原圖相同大小之矩陣作為temp_result

 Step2: 利用兩層迴圈遍歷矩陣的每個值(row and colum)

 Step3: 當滿足以上RGB模型約束,將該範圍填充紅色

          temp_result.at<cv::Vec3b>(i , j) = Vec3b(0, 0, 255)

三、 結果:

範例()


範例()

範例()

四、 程式Demo:






留言

這個網誌中的熱門文章

rzwang Homework #1

s1093350 Homework #2

s1061637 作業6