OpenCV背景去除的幾種方法

1、膚色偵測法
   膚色提取是基於人機互動方面常見的方法。因爲膚色是人體的一大特徵,它可以迅速從複雜的背景下分離出自己的特徵區域。一下介紹兩種常見的膚色提取:

1)HSV空間的膚色提取
 
    HSV色彩空間是一個圓錐形的模型,具體如右圖所示:
 色相(H)是色彩的基本屬性,就是平常說的顏色名稱,例如紅色、黃色等,
依照右圖的標準色輪上的位置,取360度得數值。(也有0~100%的方法確定) 飽和度(S)是色彩的純度,越高色彩越純,低則變灰。取值爲0~100%。明度(V)也叫亮度,取值0~100。
     根據膚色在HSV三個分量上的值,就可以簡單的偵測出一張圖像上膚色的部分。一下是膚色偵測函數的源代碼:

 

 (2)YCrCb空間的膚色提取
   YCrCb也是一種顏色空間,也可以說是YUV的顏色空間。Y是亮度的分量,而膚色偵測是對亮度比較敏感的,由攝像頭拍攝的RGB圖像轉化爲YCrCb空間的話可以去除亮度對膚色偵測的影響。下面給出基於YCrCb膚色偵測函數的源代碼:

2、基於混合高斯模型去除背景法

   高斯模型去除背景法也是背景去除的一種常用的方法,經常會用到視頻圖像偵測中。這種方法對於動態的視頻圖像特徵偵測比較適合,因爲模型中是前景和背景分離開來的。分離前景和背景的基準是判斷像素點變化率,會把變化慢的學習爲背景,變化快的視爲前景。

 

3、背景相減背景去除方法

   所謂的背景相減,是指把攝像頭捕捉的圖像第一幀作爲背景,以後的每一幀都減去背景幀,這樣減去之後剩下的就是多出來的特徵物體(要偵測的物體)的部分。但是相減的部分也會對特徵物體的灰階值產生影響,一般是設定相關閾值要進行判斷。以下是代碼部分:


 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章