91av视频/亚洲h视频/操亚洲美女/外国一级黄色毛片 - 国产三级三级三级三级

  • 大小: 157KB
    文件類型: .rar
    金幣: 2
    下載: 0 次
    發(fā)布日期: 2021-05-10
  • 語言: 其他
  • 標簽: QTopencv??

資源簡介

一般做手形識別,會先做膚色分割,因為人的皮膚顏色(黃種人哈),在HSV顏色空間下,和背景相比有明顯的差別,所以利用膚色可以很好的提取手的區(qū)域。 在此 我使用形狀匹配(matchShapes)來做,手形的對比,識別出手形代表的數(shù)字意義。當然這種方法非常依賴于模板的豐富性,有很大的局限性。

資源截圖

代碼片段和文件信息

/*
?*?攝像頭讀取-->
?*?HSV顏色空間轉(zhuǎn)換及通道分離-->
?*?膚色分割-->
?*?中值濾波-->
?*?輪廓檢測及過濾-->
?*?輪廓形狀匹配
?*
?*/


#include?
#include?

#include?
using?namespace?cv;
using?namespace?std;

#define?MAXVALUE?(80)
#define?KERNEL_SIZE?(7)

int?minVal?=?7?maxVal?=?20;

int?is_using_canny?=?0;
int?canny_threshold?=?3;

Mat?frame;??????????????????//原始圖像幀
vector??channels;??????//HSV通道分離
Mat?frameH;?????????????????//H通道
Mat?result;?????????????????//最終結(jié)果
Mat?resultRGB;??????????????//將結(jié)果顯示在原圖

int?match_number?=?-1;

//模板總數(shù)
#define?TEMPLATE_NUMS???(10)
vector?>?mContoursTemp;??//輪廓模板集
vector?>?mContoursProc;??//待處理輪廓集


//分割H通道時的最小值
void?trackBarMin(int?pos?void*?userdata)
{}
//分割H通道時的最大值
void?trackBarMax(int?pos?void*?userdata)
{}

//是否使用Canny邊緣檢測
void?isUsingCanny(int?pos?void*?userdata)
{}

//分割H通道時的最大值
void?cannyThreshold(int?pos?void*?userdata)
{}


//載入模板的輪廓
void?init_hand_template(void);

//?對膚色分割、濾波去噪、開運算后圖像進行輪廓提取并過濾
void?hand_contours(Mat?&srcImage);

//?將目標輪廓與模板輪廓進行匹配
void?hand_template_match(void);

//?在圖片的左上角標注數(shù)字
void?number_draw(Mat?&img?int?num);

//?將Mat中的每個元素設置為某個數(shù)值
void?setMatInt(Mat?&?input_image?uchar?val);

int?main()
{
????//?載入模板的輪廓
????init_hand_template();

#if?1
????namedWindow(“original“);
????namedWindow(“TrackBar“);
????namedWindow(“result“);

????createTrackbar(“minVal“?“TrackBar“?&minVal?MAXVALUE?trackBarMin);
????createTrackbar(“maxVal“?“TrackBar“?&maxVal?MAXVALUE?trackBarMax);

????createTrackbar(“is_using_canny“?“TrackBar“?&is_using_canny?1?isUsingCanny);
????createTrackbar(“canny_threshold“?“TrackBar“?&canny_threshold?120?cannyThreshold);

????//?打開攝像頭
????VideoCapture?capture(0);
????if(false?==?capture.isOpened())
????{
????????cout?<????????return?-1;
????}

????Mat?kernel?=?getStructuringElement(MORPH_RECT?Size(KERNEL_SIZE?KERNEL_SIZE));

????while(true)
????{
????????//?獲取圖片幀
????????capture?>>?frame;
????????if(true?==?frame.empty())
????????{
????????????cout?<ame“?<????????????break;
????????}

????????//?顯示原始圖片
????????imshow(“original“?frame);
????????resultRGB?=?frame.clone();

????????//?轉(zhuǎn)換HSV顏色通道
????????cvtColor(frame?frame?CV_BGR2HSV);

????????//?HSV通道分離
????????split(frame?channels);
????????frameH?=?channels[0];

????????//?顯示H通道圖片
//????????imshow(“H-channels“?frameH);

????????//?膚色分離-使用OpenCV自帶函數(shù)
????????inRange(frameH?Scalar(minVal)?Scalar(maxVal)?result);

????????//------------------------------濾波平滑-----------------------------
????????//?中值濾波:?可以很好的去除椒鹽噪聲,而且ksize越大效果越好。
????????medianBlur(result?result?11);

????????//----------------------------形態(tài)學運算-----------------------------
????????/*
?????????*?腐蝕?MORPH_ERODE
?????????*?膨脹?MORPH_DILATE
?????????*?開運算?MORPH_OPEN
?????????*?閉運算?MORPH_CLOSE
?????????*?形態(tài)學梯度?MORPH_GRADIENT
??

?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----

?????文件???????5950??2010-04-06?14:48??HSV_matchShapes\build-HSV_matchShapes-Desktop_Qt_5_3_0_MinGW_32bit-Debug\1.bmp

?????文件???????2822??2010-04-06?20:25??HSV_matchShapes\build-HSV_matchShapes-Desktop_Qt_5_3_0_MinGW_32bit-Debug\10.bmp

?????文件???????5326??2010-04-06?14:46??HSV_matchShapes\build-HSV_matchShapes-Desktop_Qt_5_3_0_MinGW_32bit-Debug\2.bmp

?????文件???????4990??2010-04-06?14:49??HSV_matchShapes\build-HSV_matchShapes-Desktop_Qt_5_3_0_MinGW_32bit-Debug\3.bmp

?????文件???????6758??2010-04-06?20:19??HSV_matchShapes\build-HSV_matchShapes-Desktop_Qt_5_3_0_MinGW_32bit-Debug\4.bmp

?????文件???????5886??2010-04-06?14:51??HSV_matchShapes\build-HSV_matchShapes-Desktop_Qt_5_3_0_MinGW_32bit-Debug\5.bmp

?????文件???????4574??2010-04-06?20:21??HSV_matchShapes\build-HSV_matchShapes-Desktop_Qt_5_3_0_MinGW_32bit-Debug\6.bmp

?????文件???????4878??2010-04-06?20:23??HSV_matchShapes\build-HSV_matchShapes-Desktop_Qt_5_3_0_MinGW_32bit-Debug\7.bmp

?????文件???????6878??2010-04-06?18:36??HSV_matchShapes\build-HSV_matchShapes-Desktop_Qt_5_3_0_MinGW_32bit-Debug\8.bmp

?????文件???????3002??2010-04-06?20:24??HSV_matchShapes\build-HSV_matchShapes-Desktop_Qt_5_3_0_MinGW_32bit-Debug\9.bmp

?????文件?????310114??2017-03-21?16:23??HSV_matchShapes\build-HSV_matchShapes-Desktop_Qt_5_3_0_MinGW_32bit-Debug\debug\HSV_matchShapes.exe

?????文件?????339928??2017-03-21?16:23??HSV_matchShapes\build-HSV_matchShapes-Desktop_Qt_5_3_0_MinGW_32bit-Debug\debug\main.o

?????文件??????18090??2017-03-21?16:15??HSV_matchShapes\build-HSV_matchShapes-Desktop_Qt_5_3_0_MinGW_32bit-Debug\Makefile

?????文件??????14115??2017-03-21?16:15??HSV_matchShapes\build-HSV_matchShapes-Desktop_Qt_5_3_0_MinGW_32bit-Debug\Makefile.Debug

?????文件??????14146??2017-03-21?16:15??HSV_matchShapes\build-HSV_matchShapes-Desktop_Qt_5_3_0_MinGW_32bit-Debug\Makefile.Release

?????文件???????2942??2017-02-17?11:39??HSV_matchShapes\HSV_matchShapes\common.pri

?????文件????????190??2017-03-09?10:22??HSV_matchShapes\HSV_matchShapes\HSV_matchShapes.pro

?????文件??????18337??2017-03-21?16:58??HSV_matchShapes\HSV_matchShapes\HSV_matchShapes.pro.user

?????文件???????9914??2017-03-21?16:23??HSV_matchShapes\HSV_matchShapes\main.cpp

?????目錄??????????0??2017-03-21?16:23??HSV_matchShapes\build-HSV_matchShapes-Desktop_Qt_5_3_0_MinGW_32bit-Debug\debug

?????目錄??????????0??2017-03-09?10:20??HSV_matchShapes\build-HSV_matchShapes-Desktop_Qt_5_3_0_MinGW_32bit-Debug\release

?????目錄??????????0??2017-03-09?10:22??HSV_matchShapes\build-HSV_matchShapes-Desktop_Qt_5_3_0_MinGW_32bit-Debug

?????目錄??????????0??2017-03-21?16:58??HSV_matchShapes\HSV_matchShapes

?????目錄??????????0??2017-03-09?10:20??HSV_matchShapes

-----------?---------??----------?-----??----

???????????????778840????????????????????24


評論

共有 條評論