s1091541 作業5

 

 主題: 膚色偵測 Skin Color Detection

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

開發環境:

  • windows11
  • Opencv 4.7.0
  • Visual Studio 2022 C++

 

程式碼說明:

本次作業使用了HSV以及YCrCbCr分量搭配Otsu閥值分割兩種方法呈現。

l   HSV:

1.    首先設定遮罩。 

     

2.    使用cvtColor()將圖像轉為HSV色彩空間。

3.    將代表皮膚像素的範圍框在H:0-25S:40-255V:50-255

4.    依上述範圍套上遮罩後便可呈現出結果。

 

l   YCrCbCr分量搭配Otsu閥值分割:

1.    使用cvtColor()將圖像轉為YCrCb色彩空間。

2.    使用split()分割顏色通道,並只留下其中的Cr通道。

3.    使用threshold()Cr通道進行自動閥值分割作為遮罩。

4.    最後將初始圖套上遮罩便可呈現結果。

 

成果:

l   HSV:

l   YCrCbCr分量搭配Otsu閥值分割:

 

  





 

留言

這個網誌中的熱門文章

rzwang Homework #1

s1093350 Homework #2

s1091537 Homework #1