• 大小: 7.02MB
    文件类型: .rar
    金币: 1
    下载: 0 次
    发布日期: 2023-09-25
  • 语言: 其他
  • 标签: 手势识别  

资源简介

VS+OPENCV做的手势识别

资源截图

代码片段和文件信息

#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 ;//均值飘逸分割平滑系数
extern CvSeq* seqMidObj;//塞选后的轮廓集合


/////////////////////////////////////////////////////////////////////////////////////////////////////////////
int main()
{
int c = 0;
double scale = 0.5;
//打开摄像头
//CvCapture* capture = cvCaptureFromCAM(1);
cv::VideoCapture Capture(0);
if (!Capture.isOpened())
{
return -1;
}
//扑捉第一帧图像
cv::Mat frame_sr;
Capture >> frame_sr;
//mat结构向IplImage转换
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;
//重新调整图像大小
//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();

/////////////////////开始循环///////////////////////////////
while (c != 27)
{
//继续扑捉当前视频贞
Capture >> frame_sr;
sharpenImage1(frame_sr frame_sr);//图像进行锐化处理

IplImage imgTmp = frame_sr;
IplImage *src = cvCloneImage(&imgTmp);

//缩小要处理的图像(减小运算量)
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);//图像进行锐化处理
//cvCvtColor(src2 src2 CV_BGR2YCrCb);
//cvConvertScale(src2 src2 1.0 / 255.0 0);//将原图RGB归一化到0-1之间
//cvCvtColor(src2 src2 CV_BGR2HSV);//得到HSV图
//cvShowImage( “均值漂移分割“ tmp4);

//拉普拉斯变换主要用于边缘检测
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);

////求手的移动方向
hand_direction(seqMidObj);

////绘制额外信息
cvZero(tmp2);
hand_draw(tmp2 seqMidObj); //绘制在检测窗口
h

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----

     文件      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\link.command.1.tlog

     文件      14600  2016-02-27 17:07  OpenCVtestTwo_new\OpenCVtestTwo\Debug\OpenCVtestTwo.tlog\link.read.1.tlog

     文件       1102  2016-02-27 17:07  OpenCVtestTwo_new\OpenCVtestTwo\Debug\OpenCVtestTwo.tlog\link.write.1.tlog

     文件        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个文件信息

评论

共有 条评论