2014年6月4日 星期三

HW5: RGB和HSI轉換 , 膚色辨識

(一)RGB to HSI

H: Hue
S: Saturation
I :Intensive


將  RGB modle 轉換成 HSI modle 















其  OPENCV 中有內建的HSV轉換 
但是自己實作還是可以了解比較多
所以沒去使用 OPENCV的函式


轉換步驟:
1.取得 RGB pixel值
2.將其值域 Nomalize to [0,1]

3.套用計算公式
Hue
Saturation
Intensive




結果DEMO:
由左至右為:Hue , Saturation , Intensive ,Original






(二)膚色辨識

膚色檢驗有許多方式,可以從RGB的顏色空間做判斷,可以利用邊緣檢測+RGB做判斷
可以轉型成其他顏色空間做判斷,在此我挑選了將RGB轉換成YCrCb module


YCrCb空間的膚色提取

   YCrCb是一種顏色空間,也可以說是YUV的顏色空間。Y是亮度的分量,而膚色偵測是對亮度比較敏感的,由攝像頭拍攝的RGB圖像轉化为YCrCb空間的話可以去除亮度對膚色偵測的影響。
Cr反映了RGB输入信號红色部分和RGB信號亮度值之間的差异。而CB反應的是RGB输入信號藍色部分和RGB信號亮度值之間的差異。
而我挑選膚色檢測的範圍在 
133<=Cr<=173 77<=Cb<=127 會有最好的效果

DEMO:








沒有留言:

張貼留言