资源简介
颜色识别中,我们一直要调整的参数,毫无疑问就是颜色的阈值了。 阈值变化太难受了·,与外界光线,天气等等有关,每次使用颜色识别的代码基本上都要去改其参数。想想都头大。所以,写此个快速查找颜色阈值的小助手,屡试不爽。可以轻易查找出颜色阈值。
代码片段和文件信息
#include
#include
using namespace cv;
using namespace std;
//-----------------------------------【全局函数声明部分】--------------------------------------
// 描述:全局函数声明
//-----------------------------------------------------------------------------------------------
static void ContrastAndBright(int void *);
void ShowHelpText();
//-----------------------------------【全局变量声明部分】--------------------------------------
// 描述:全局变量声明
//-----------------------------------------------------------------------------------------------
int hmin=0;
int hmax=180;
int smin=0;
int smax=255;
int vmin=0;
int vmax=255;
int i=0;
char key;
Mat imgHSV;
Mat imgThresholded;
Mat g_srcImageg_dstImage;
Mat result(Size(600100)CV_8UScalar(255));//定义一个空白的图片
//-----------------------------------【main( )函数】--------------------------------------------
// 描述:控制台应用程序的入口函数,我们的程序从这里开始
//-----------------------------------------------------------------------------------------------
int main( )
{
//改变控制台前景色和背景色
system(“color 2F“);
ShowHelpText();
cout<<“按ESC键退出程序按空格键确定利用当前帧“;
//从摄像头读入视频
Mat frame;
VideoCapture capture(0);
if(!capture.isOpened())
{
cout<<“摄像头打开失败!“< return -1;
}
char filename[200];
while(1)
{
key = waitKey(50);
capture>>frame;
imshow(“【视频】“frame);
if(key == 27)
break;//按ESC键退出程序
if(key == 32)//按空格键进行拍照
{
sprintf(filename“1.jpg“);
imwrite(filenameframe);//图片保存到本工程目录中
break;}
}
g_srcImage = imread(“1.jpg“);
resize(g_srcImageg_srcImageSize(320240));
if( !g_srcImage.data ) { printf(“Oh,no,读取g_srcImage图片错误~! \n“); return false; }
g_dstImage = Mat::zeros( g_srcImage.size() g_srcImage.type() );
//图片预处理
vector hsvSplit;
cvtColor(g_srcImage imgHSV COLOR_BGR2HSV); //Convert the captured frame from BGR to HSV
//因为我们读取的是彩色图,直方图均衡化需要在HSV空间做
split(imgHSV hsvSplit); //返回一个下标从零开始的一维数组
equalizeHist(hsvSplit[2]hsvSplit[2]); //直方图均衡化,,用于提高图像的质量
merge(hsvSplitimgHSV); //merge 与split 函数相反。可以将多个单通道图像合成一幅多通道图像。
//创建窗口
namedWindow(“【效果图窗口】“1);//WINDOW_NORMAL
//创建轨迹条
createTrackbar(“hmin:“ “【效果图窗口】“&hmin 180ContrastAndBright );
createTrackbar(“hmax:“ “【效果图窗口】“&hmax 180ContrastAndBright );
createTrackbar(“smin:“ “【效果图窗口】“&smin 255ContrastAndBright );
createTrackbar(“smax:“ “【效果图窗口】“&smax 255ContrastAndBright );
createTrackbar(“vmin:“ “【效果图窗口】“&vmin 255ContrastAndBright );
createTrackbar(“vmax:“ “【效果图窗口】“&vmax 255ContrastAndBright );
createTrackbar(“右滑输出:“ “【效果图窗口】“&i1ContrastAndBright );
//调用回调函数
ContrastAndBright(hmin0);
ContrastAndBright(hmax0);
ContrastAndBright(smin0);
ContrastAndBright(smax0);
ContrastAndBright(vmin0);
ContrastAndBright(vmax0);
//输出一些帮助信息
cout<
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
目录 0 2018-12-23 21:28 快速寻找颜色阈值小助手\
目录 0 2018-12-23 21:28 快速寻找颜色阈值小助手\Debug\
文件 80384 2018-12-23 21:08 快速寻找颜色阈值小助手\Debug\利用滑动条寻找颜色阈值.exe
文件 654884 2018-12-23 21:08 快速寻找颜色阈值小助手\Debug\利用滑动条寻找颜色阈值.ilk
文件 1674240 2018-12-23 21:08 快速寻找颜色阈值小助手\Debug\利用滑动条寻找颜色阈值.pdb
目录 0 2018-12-23 21:28 快速寻找颜色阈值小助手\ipch\
目录 0 2018-12-23 21:28 快速寻找颜色阈值小助手\ipch\利用滑动条寻找颜色阈值-f9a1d1a5\
文件 57212928 2018-12-23 21:07 快速寻找颜色阈值小助手\ipch\利用滑动条寻找颜色阈值-f9a1d1a5\利用滑动条寻找颜色阈值-1e0dfec2.ipch
目录 0 2018-12-23 21:28 快速寻找颜色阈值小助手\利用滑动条寻找颜色阈值\
文件 71762 2018-12-23 21:08 快速寻找颜色阈值小助手\利用滑动条寻找颜色阈值\1.jpg
文件 67347 2018-12-23 11:54 快速寻找颜色阈值小助手\利用滑动条寻找颜色阈值\111.jpg
目录 0 2018-12-23 21:28 快速寻找颜色阈值小助手\利用滑动条寻找颜色阈值\Debug\
文件 11926 2018-12-23 21:08 快速寻找颜色阈值小助手\利用滑动条寻找颜色阈值\Debug\CL.read.1.tlog
文件 330 2018-12-23 21:08 快速寻找颜色阈值小助手\利用滑动条寻找颜色阈值\Debug\CL.write.1.tlog
文件 646 2018-12-23 21:08 快速寻找颜色阈值小助手\利用滑动条寻找颜色阈值\Debug\cl.command.1.tlog
文件 2 2018-12-23 21:08 快速寻找颜色阈值小助手\利用滑动条寻找颜色阈值\Debug\li
文件 2 2018-12-23 21:08 快速寻找颜色阈值小助手\利用滑动条寻找颜色阈值\Debug\li
文件 2 2018-12-23 21:08 快速寻找颜色阈值小助手\利用滑动条寻找颜色阈值\Debug\li
文件 2 2018-12-23 21:08 快速寻找颜色阈值小助手\利用滑动条寻找颜色阈值\Debug\li
文件 2 2018-12-23 21:08 快速寻找颜色阈值小助手\利用滑动条寻找颜色阈值\Debug\li
文件 2 2018-12-23 21:08 快速寻找颜色阈值小助手\利用滑动条寻找颜色阈值\Debug\li
文件 2 2018-12-23 21:08 快速寻找颜色阈值小助手\利用滑动条寻找颜色阈值\Debug\li
文件 2 2018-12-23 21:08 快速寻找颜色阈值小助手\利用滑动条寻找颜色阈值\Debug\li
文件 2 2018-12-23 21:08 快速寻找颜色阈值小助手\利用滑动条寻找颜色阈值\Debug\li
文件 2 2018-12-23 21:08 快速寻找颜色阈值小助手\利用滑动条寻找颜色阈值\Debug\li
文件 2 2018-12-23 21:08 快速寻找颜色阈值小助手\利用滑动条寻找颜色阈值\Debug\li
文件 2 2018-12-23 21:08 快速寻找颜色阈值小助手\利用滑动条寻找颜色阈值\Debug\li
文件 2 2018-12-23 21:08 快速寻找颜色阈值小助手\利用滑动条寻找颜色阈值\Debug\li
文件 2 2018-12-23 21:08 快速寻找颜色阈值小助手\利用滑动条寻找颜色阈值\Debug\li
文件 2 2018-12-23 21:08 快速寻找颜色阈值小助手\利用滑动条寻找颜色阈值\Debug\li
文件 2 2018-12-23 21:08 快速寻找颜色阈值小助手\利用滑动条寻找颜色阈值\Debug\li
............此处省略55个文件信息
- 上一篇:x-studio365.zip
- 下一篇:管家婆财贸双全升级到17.5工具
相关资源
- opencv已经编译好直接可以用的连接库
- opencv双目通过特征提取恢复深度
- 直线的四种裁剪算法
- opencv火焰检测识别230808
- 杭州汇萃智能科技软件说明书HCvisio
- opencv 张正友相机标定源代码及标定照
- 程序员的自我修养 装载,链接,库
- opencv3.4+opencv_contrib3.4+cuda10.0+tbb+win10
- SURF算法+单应矩阵+RANSAC算法实现拼接
- 相机标定单目、双目.zip
- opencv-3.4.1-vc14_vc15.exe(OpenCV VS14.15安装
- OpenCV3.4.1-1安装包
- 从车道线检测项目入门opencv
- opencv安装
- 一个基于easypr的车牌识别demo
- opencv4.0.0.0
- frozen_east_text_detection.pb
- 车牌识别系统opencv版
- QT Creator快速入门(第3版 高清PDF)
- OpenCV4.0.0包含Contrib完整包
- opencv_contrib-4.0.1.zip
- opencv_contrib3.4.0+vs2017+win10+opencv3.4.0
- 计算机视觉-算法与应用(中文-高清扫
- OpenCV3.2.0.chm离线帮助文档opencv官方文
- OpenCV人脸识别样本数据集,包含正样
- OpenCV4经过cmake编译完整的contribute,
- opencv_contrib-4.2.0.zip
- VS2015编译的OpenCV4.1.2
- opencv-4.0.0-vc14_vc15.EXE程序
- 基于OpenCV的计算机视觉技术实现.pdf
评论
共有 条评论