-
大小: 7.02MB文件類(lèi)型: .rar金幣: 2下載: 0 次發(fā)布日期: 2023-09-25
- 語(yǔ)言: 其他
- 標(biāo)簽: 手勢(shì)識(shí)別??
資源簡(jiǎn)介
VS+OPENCV做的手勢(shì)識(shí)別

代碼片段和文件信息
#include“process.h“
//#include“variable.h“
using?namespace?std;
extern?CvSize?sz;
extern?CvSize?newSize;
extern?IplImage?*tmp1;
extern?IplImage?*tmp2;
extern?IplImage?*tmp3;
extern?IplImage?*src1;
extern?IplImage?*src2;
extern?IplImage?*src3;
extern?IplImage*?smooth1;
extern?IplImage*?smooth2;
extern?IplImage*?smooth3;
extern?IplImage*?smooth4;
extern?IplImage*?smooth5;
extern?CvSeq*?handT?;
extern?int?pmsf_value?;//均值飄逸分割平滑系數(shù)
extern?CvSeq*?seqMidObj;//塞選后的輪廓集合
/////////////////////////////////////////////////////////////////////////////////////////////////////////////
int?main()
{
int?c?=?0;
double?scale?=?0.5;
//打開(kāi)攝像頭
//CvCapture*?capture?=?cvCaptureFromCAM(1);
cv::VideoCapture?Capture(0);
if?(!Capture.isOpened())
{
return?-1;
}
//撲捉第一幀圖像
cv::Mat?frame_sr;
Capture?>>?frame_sr;
//mat結(jié)構(gòu)向IplImage轉(zhuǎn)換
IplImage?imgTmp?=?frame_sr;
IplImage?*src?=?cvCloneImage(&imgTmp);
//獲得圖像大小
sz?=?cvGetSize(src);
newSize.height?=?(int)(sz.height?*?scale);
newSize.width?=?(int)(sz.width?*?scale);
sz?=?newSize;
//重新調(diào)整圖像大小
//resizeSrc();
//建立所有窗體
resizeAllWindow();
tmp1?=?cvCreateImage(sz?IPL_DEPTH_8U?1);
tmp2?=?cvCreateImage(sz?IPL_DEPTH_8U?3);
tmp3?=?cvCreateImage(sz?IPL_DEPTH_8U?3);
src1?=?cvCreateImage(sz?IPL_DEPTH_8U?3);
src2?=?cvCreateImage(sz?IPL_DEPTH_8U?3);
src3?=?cvCreateImage(sz?IPL_DEPTH_8U?3);
smooth1?=?cvCreateImage(sz?IPL_DEPTH_8U?1);
smooth2?=?cvCreateImage(sz?IPL_DEPTH_8U?1);
smooth3?=?cvCreateImage(sz?IPL_DEPTH_8U?1);
smooth4?=?cvCreateImage(sz?IPL_DEPTH_8U?1);
smooth5?=?cvCreateImage(sz?IPL_DEPTH_8U?1);
init_hand_YCrCb();
init_hand_HSV();
init_laplace();
inti_threshold();
//載入匹配的模板
init_hand_template();
/////////////////////開(kāi)始循環(huán)///////////////////////////////
while?(c?!=?27)
{
//繼續(xù)撲捉當(dāng)前視頻貞
Capture?>>?frame_sr;
sharpenImage1(frame_sr?frame_sr);//圖像進(jìn)行銳化處理
IplImage?imgTmp?=?frame_sr;
IplImage?*src?=?cvCloneImage(&imgTmp);
//縮小要處理的圖像(減小運(yùn)算量)
cvResize(src?src1?CV_INTER_LINEAR);
cvShowImage(“src“?src1);
cvPyrMeanShiftFiltering(src1?src2?pmsf_value?40?2);
cvSmooth(src2?src3?CV_GAUSSIAN3?0?0?0);
cvShowImage(“高斯去噪“?src3);
//sharpenImage1(src2?src2);//圖像進(jìn)行銳化處理
//cvCvtColor(src2?src2?CV_BGR2YCrCb);
//cvConvertScale(src2?src2?1.0?/?255.0?0);//將原圖RGB歸一化到0-1之間
//cvCvtColor(src2?src2?CV_BGR2HSV);//得到HSV圖
//cvShowImage(?“均值漂移分割“?tmp4);
//拉普拉斯變換主要用于邊緣檢測(cè)
toLaplace(src3);
////hsv色彩提取
hand_HSV();
////YCrCb色彩提取
//hand_YCrCb();
////閥值化
//threshold();
////降噪
reduce_noise();
////尋找手輪廓
hand_contours(smooth1);
////hand_contours(planes[2]);
////hand_contours(tmp2);
////處理(未使用)
////handProcess(seqMidObj);
////尋找匹配
hand_template_match(handT?seqMidObj);
////求手的移動(dòng)方向
hand_direction(seqMidObj);
////繪制額外信息
cvZero(tmp2);
hand_draw(tmp2?seqMidObj);?//繪制在檢測(cè)窗口
h
?屬性????????????大小?????日期????時(shí)間???名稱(chēng)
-----------?---------??----------?-----??----
?????文件??????94720??2016-02-27?17:07??OpenCVtestTwo_new\Debug\OpenCVtestTwo.exe
?????文件?????573068??2016-02-27?17:07??OpenCVtestTwo_new\Debug\OpenCVtestTwo.ilk
?????文件????1813504??2016-01-28?19:11??OpenCVtestTwo_new\Debug\OpenCVtestTwo.pdb
?????文件?????307254??2016-01-27?14:54??OpenCVtestTwo_new\OpenCVtestTwo\1.bmp
?????文件?????307254??2016-01-27?15:00??OpenCVtestTwo_new\OpenCVtestTwo\10.bmp
?????文件?????307254??2016-01-27?14:56??OpenCVtestTwo_new\OpenCVtestTwo\2.bmp
?????文件?????307254??2016-01-27?14:56??OpenCVtestTwo_new\OpenCVtestTwo\3.bmp
?????文件?????307254??2016-01-27?14:57??OpenCVtestTwo_new\OpenCVtestTwo\4.bmp
?????文件?????307254??2016-01-27?14:58??OpenCVtestTwo_new\OpenCVtestTwo\5.bmp
?????文件?????307254??2016-01-27?14:58??OpenCVtestTwo_new\OpenCVtestTwo\6.bmp
?????文件?????307254??2016-01-27?14:59??OpenCVtestTwo_new\OpenCVtestTwo\7.bmp
?????文件?????307254??2016-01-27?14:59??OpenCVtestTwo_new\OpenCVtestTwo\8.bmp
?????文件?????307254??2016-01-27?15:00??OpenCVtestTwo_new\OpenCVtestTwo\9.bmp
?????文件?????182743??2016-02-27?17:07??OpenCVtestTwo_new\OpenCVtestTwo\Debug\main.obj
?????文件???????1656??2016-01-23?15:45??OpenCVtestTwo_new\OpenCVtestTwo\Debug\OpenCVtestTwo.Build.CppClean.log
?????文件??????94720??2016-01-28?19:11??OpenCVtestTwo_new\OpenCVtestTwo\Debug\OpenCVtestTwo.exe
?????文件?????609048??2016-01-28?19:11??OpenCVtestTwo_new\OpenCVtestTwo\Debug\OpenCVtestTwo.ilk
?????文件???????4231??2016-02-27?17:07??OpenCVtestTwo_new\OpenCVtestTwo\Debug\OpenCVtestTwo.log
?????文件????1813504??2016-01-28?19:11??OpenCVtestTwo_new\OpenCVtestTwo\Debug\OpenCVtestTwo.pdb
?????文件???????2602??2016-02-27?17:07??OpenCVtestTwo_new\OpenCVtestTwo\Debug\OpenCVtestTwo.tlog\cl.command.1.tlog
?????文件??????83820??2016-02-27?17:07??OpenCVtestTwo_new\OpenCVtestTwo\Debug\OpenCVtestTwo.tlog\CL.read.1.tlog
?????文件???????2746??2016-02-27?17:07??OpenCVtestTwo_new\OpenCVtestTwo\Debug\OpenCVtestTwo.tlog\CL.write.1.tlog
?????文件???????4866??2016-02-27?17:07??OpenCVtestTwo_new\OpenCVtestTwo\Debug\OpenCVtestTwo.tlog\li
?????文件??????14600??2016-02-27?17:07??OpenCVtestTwo_new\OpenCVtestTwo\Debug\OpenCVtestTwo.tlog\li
?????文件???????1102??2016-02-27?17:07??OpenCVtestTwo_new\OpenCVtestTwo\Debug\OpenCVtestTwo.tlog\li
?????文件????????173??2016-02-27?17:07??OpenCVtestTwo_new\OpenCVtestTwo\Debug\OpenCVtestTwo.tlog\OpenCVtestTwo.lastbuildstate
?????文件?????266782??2016-02-27?17:07??OpenCVtestTwo_new\OpenCVtestTwo\Debug\processfuction.obj
?????文件?????732160??2016-02-27?17:07??OpenCVtestTwo_new\OpenCVtestTwo\Debug\vc120.idb
?????文件?????937984??2016-02-27?17:07??OpenCVtestTwo_new\OpenCVtestTwo\Debug\vc120.pdb
?????文件???????3627??2016-01-24?17:11??OpenCVtestTwo_new\OpenCVtestTwo\main.cpp
............此處省略51個(gè)文件信息
評(píng)論
共有 條評(píng)論