提取膚色資訊原理及操作 opencv

2022-07-25 13:21:14 字數 687 閱讀 7532

網上也有很多的資料,講述怎麼提取膚色的,大致有5種方法。這幾種方法**

第一種:rgb color space

第二種:rg color space

第三種:ycrcb之cr分量+otsu閾值化

第四種:ycrcb中133<=cr<=173 77<=cb<=127

第五種:hsv中 7我來講述一下提取膚色的原理。

這幾種方法都不外乎一種操作,首先將影象的各個通道分離出來,如rgb  rg ycrcb以及hsv幾種單通道,然後對在各種通道上的資料分析,資料在一定範圍內的影象提取出來,其餘的資料都賦值0,這其實就是所謂的閾值處理,然而這個閾值會對光照,背景甚至攝像頭的效能的影響,需要自己調整引數。

示例1:使用了opencv的cvinranges函式處理各個通道的資料,因為攝像頭不好所以使用了高斯模糊以平滑影象,最後各處理後的通道影象按位與,合成乙個影象。

void caigesture::skindetect(iplimage* src,iplimage* dst)

cvreleaseimage(&imgy); 

cvreleaseimage(&imgcr); 

cvreleaseimage(&imgcb); 

cvreleaseimage(&imgycrcb); 

}

git原理及操作

git是乙個開源的分布式版本控制軟體。github gitlab是基於git的運程檔案託管平台。正常提交流程 git把管理的檔案分為兩個區域四種狀態 工作區 當前開發程式所在目錄稱為工作區,即 工作開發都是在該目錄,該區域的檔案會有狀態的變化且狀態由git自動檢測,如果程式中檔案做任何操作 增 刪 ...

for迴圈原理及操作

for迴圈是程式語言中一種迴圈語句,迴圈語句由迴圈體及迴圈的判定條件兩部分組成。js例項 for var i 0 i 100 i 變數初始化var i 1 迴圈條件 i 100 迴圈語句塊console.log i 迴圈變化 i 上述 會迴圈輸出0 99的數值 var i 1 此時i的值為1,迴圈條...

XMPP協議原理及相關資訊

原創 xmpp協議簡介 一 xmpp extensible messageing and presence protocol 可擴充套件訊息與存在協議 是目前主流的四種im im instant messaging,即時訊息 協議之一,其他三種分別為 即時資訊和空間協議 impp 空間和即時資訊協議...