资源简介
一个实现石头剪刀布的小程序,基于opencv,在vs2010和opencv2.4.4下可以完美运行,另一个是一个根据手势播放音频的,还有一个提供参考
代码片段和文件信息
#include “stdafx.h“
//#include “cv.h“
#include
#include
//#include
//#include
#include
using namespace std;
int pmsf_value = 5;//均值飘逸分割平滑系数
int MopEx_value = 2;//开运算
int Hmatch_value = 25;//模板匹配系数
//亮度
int V_low = 30;
int V_high = 250;
//饱和度
int S_low = 10;
int S_high = 170;
//色相
int H_low_max = 40;
int H_high_min = 100;
int if_high_light = 1; //是否高光补偿
IplImage *src = 0;
IplImage *srcResize = 0;
IplImage *img_YCrCb = 0;
CvSize newSize;
CvSize sz;
IplImage *tmp1;
IplImage *tmp2;
IplImage *tmp3;
IplImage *src2;
IplImage *src1;
////////////////////////////////////////////////////////////////////////////////////////////////////////////////
IplImage *YCrCb;
IplImage *YCrCb_mask;
IplImage *Y_channel*Cr_channel *Cb_channel;
IplImage *Y_cmp*Cr_cmp *Cb_cmp;
CvScalar Y_lower;
CvScalar Y_upper;
CvScalar Cr_lower;
CvScalar Cr_upper;
CvScalar Cb_lower;
CvScalar Cb_upper;
CvScalar YCrCb_lower;
CvScalar YCrCb_upper;
///////////////////////////////////////////////////////////////////////////////////////////////////////////////
void init_hand_YCrCb()
{
//
img_YCrCb = cvCreateImage( sz 8 3);
YCrCb_mask = cvCreateImage(szIPL_DEPTH_8U1);;
//最终的图片
YCrCb = cvCreateImage(szIPL_DEPTH_8U3);
//三通道
Y_channel = cvCreateImage(szIPL_DEPTH_8U1);
Cr_channel = cvCreateImage(szIPL_DEPTH_8U1);
Cb_channel = cvCreateImage(szIPL_DEPTH_8U1);
//按范围截取后
Y_cmp = cvCreateImage(szIPL_DEPTH_8U1);
Cr_cmp = cvCreateImage(szIPL_DEPTH_8U1);
Cb_cmp = cvCreateImage(szIPL_DEPTH_8U1);
//YCrCb的颜色范围
Y_lower = CV_RGB(00130);
Y_upper = CV_RGB(00130);
Cr_lower = CV_RGB(00125);
Cr_upper = CV_RGB(00125);
Cb_lower = CV_RGB(00132);
Cb_upper = CV_RGB(00147);
YCrCb_lower = cvScalar(001320);
YCrCb_upper = cvScalar(1301251470);
}
////////////////////////////////////////////////////////////////////////////////////////////////////////////////
void hand_YCrCb()
{
//转换到YCrBr
cvCvtColor(src2img_YCrCb CV_RGB2YCrCb);
//分割到YCrCb
cvSplit(img_YCrCbY_channelCr_channelCb_channel0);
//将Y_channel的位于 Y_lower 和 Y_upper 之间的元素复制到 Y_tmp中
cvInRangeS( Y_channel Y_lower Y_upper Y_cmp);
cvInRangeS(Cr_channelCr_lowerCr_upper Cr_cmp);
cvInRangeS(Cb_channelCb_lowerCb_upper Cb_cmp);
//合并YCrCb通道到YCrCb中
cvMerge(Y_cmpCr_cmpCb_cmp0YCrCb);
//显示结果
cvShowImage(“YCrCb_mask“YCrCb);
//cvInRangeS (img_YCrCb YCrCb_lower YCrCb_upper YCrCb_mask);
//cvShowImage( “YCrCb_mask“ YCrCb_mask);
}
//////////////////////////////////////////////////////////////////////////////////////////////////////////////
IplImage* hsv_image;
IplImage* hsv_mask;
CvScalar hsv_min;
CvScalar hsv_max;
IplImage *H_img*S_img *V_img;
IplImage *H_mask *H_mask1*S_mask *S_mask1 *V_mask *V_mask1 *V_mask2;
//////////////////////////////////
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 135235 2004-03-11 21:53 2==862\手识识别\Debug\MusicPlay.exe
文件 246 2004-03-11 21:39 2==862\手识识别\MusicPlay.clw
文件 40061 2004-03-11 22:04 2==862\手识识别\MusicPlay.cpp
文件 4322 2004-03-11 21:39 2==862\手识识别\MusicPlay.dsp
文件 543 2004-03-11 21:39 2==862\手识识别\MusicPlay.dsw
文件 335 2004-03-11 21:39 2==862\手识识别\MusicPlay.h
文件 41984 2004-03-11 22:04 2==862\手识识别\MusicPlay.ncb
文件 53760 2004-03-11 22:04 2==862\手识识别\MusicPlay.opt
文件 2391 2004-03-11 21:53 2==862\手识识别\MusicPlay.plg
文件 1457 2004-03-11 21:39 2==862\手识识别\MusicPlay.rc
文件 1626 2004-03-11 21:39 2==862\手识识别\ReadMe.txt
文件 450 2004-03-11 21:39 2==862\手识识别\Resource.h
文件 296 2004-03-11 21:39 2==862\手识识别\StdAfx.cpp
文件 1106 2004-03-11 21:39 2==862\手识识别\StdAfx.h
文件 250368 2010-05-21 14:05 26openCVshoushishibie\基于openCV的手势识别\开发文档\1 软件需求分析与开发计划.doc
文件 138752 2010-05-21 16:39 26openCVshoushishibie\基于openCV的手势识别\开发文档\2概要设计说明书.doc
文件 57856 2010-05-21 16:08 26openCVshoushishibie\基于openCV的手势识别\开发文档\3 数据需求说明书.doc
文件 200192 2010-05-21 16:24 26openCVshoushishibie\基于openCV的手势识别\开发文档\4 详细设计说明书.doc
文件 181248 2010-05-21 16:31 26openCVshoushishibie\基于openCV的手势识别\开发文档\5 测试分析报告.doc
文件 777216 2010-05-21 14:05 26openCVshoushishibie\基于openCV的手势识别\开发文档\6 使用说明书.doc
文件 84992 2010-05-21 16:01 26openCVshoushishibie\基于openCV的手势识别\开发文档\7 项目开发总结报告.doc
文件 700928 2010-05-21 16:23 26openCVshoushishibie\基于openCV的手势识别\开发文档\项目技术论文.doc
文件 5950 2010-04-06 14:48 26openCVshoushishibie\基于openCV的手势识别\成果软件\1.bmp
文件 2822 2010-04-06 20:25 26openCVshoushishibie\基于openCV的手势识别\成果软件\10.bmp
文件 5326 2010-04-06 14:46 26openCVshoushishibie\基于openCV的手势识别\成果软件\2.bmp
文件 4990 2010-04-06 14:49 26openCVshoushishibie\基于openCV的手势识别\成果软件\3.bmp
文件 6758 2010-04-06 20:19 26openCVshoushishibie\基于openCV的手势识别\成果软件\4.bmp
文件 5886 2010-04-06 14:51 26openCVshoushishibie\基于openCV的手势识别\成果软件\5.bmp
文件 4574 2010-04-06 20:21 26openCVshoushishibie\基于openCV的手势识别\成果软件\6.bmp
文件 4878 2010-04-06 20:23 26openCVshoushishibie\基于openCV的手势识别\成果软件\7.bmp
............此处省略154个文件信息
评论
共有 条评论