//-----------------------------------【程序说明】----------------------------------------------
// 程序名称: createTrackbar函数 官方sample程序【 浅墨优化&详细注释版】
// 说明:【OpenCV入门教程之四】 创建Trackbar &图像对比度、亮度值调整 配套博文源码之【番外篇】
// VisualStudio 2010版 使用OpenCV版本:2.4.8
// 官方原版示例路径:opencv_source_code/samples/cpp/connected_components.cpp
// 配套博文链接:http://blog.csdn.net/poem_qianmo/article/details/21479533
// 2014年3月18 日 Edited by 浅墨
// 浅墨的微博:@浅墨_毛星云
//------------------------------------------------------------------------------------------------
//-----------------------------------【头文件包含部分】---------------------------------------
// 描述:包含程序所依赖的头文件
//----------------------------------------------------------------------------------------------
#include "opencv2/imgproc/imgproc.hpp"
#include "opencv2/highgui/highgui.hpp"
#include <iostream>
//-----------------------------------【命名空间声明部分】---------------------------------------
// 描述:包含程序所使用的命名空间
//-----------------------------------------------------------------------------------------------
using namespace cv;
using namespace std;
//-----------------------------------【全局函数声明部分】--------------------------------------
// 描述:全局函数声明
//-----------------------------------------------------------------------------------------------
Mat img;
int threshval = 160; //轨迹条滑块对应的值,给初值160
//-----------------------------【on_trackbar( )函数】------------------------------------
// 描述:轨迹条的回调函数
//-----------------------------------------------------------------------------------------------
static void on_trackbar(int, void*)
{
Mat bw = threshval < 128 ? (img < threshval) : (img > threshval);
//定义点和向量
vector<vector<Point> > contours;
vector<Vec4i> hierarchy;
//查找轮廓
findContours( bw, contours, hierarchy, CV_RETR_CCOMP, CV_CHAIN_APPROX_SIMPLE );
//初始化dst
Mat dst = Mat::zeros(img.size(), CV_8UC3);
//开始处理
if( !contours.empty() && !hierarchy.empty() )
{
//遍历所有顶层轮廓,随机生成颜色值绘制给各连接组成部分
int idx = 0;
for( ; idx >= 0; idx = hierarchy[idx][0] )
{
Scalar color( (rand()&255), (rand()&255), (rand()&255) );
//绘制填充轮廓
drawContours( dst, contours, idx, color, CV_FILLED, 8, hierarchy );
}
}
//显示窗口
imshow( "Connected Components", dst );
}
//-----------------------------------【main( )函数】--------------------------------------------
// 描述:控制台应用程序的入口函数,我们的程序从这里开始
//-----------------------------------------------------------------------------------------------
int main( )
{
system("color 5F");
//载入图片
img = imread("1.jpg", 0);
if( !img.data ) { printf("Oh,no,读取img图片文件错误~! \n"); return -1; }
//显示原图
namedWindow( "Image", 1 );
imshow( "Image", img );
//创建处理窗口
namedWindow( "Connected Components", 1 );
//创建轨迹条
createTrackbar( "Threshold", "Connected Components", &threshval, 255, on_trackbar );
on_trackbar(threshval, 0);//轨迹条回调函数
waitKey(0);
return 0;
}
没有合适的资源?快使用搜索试试~ 我知道了~
温馨提示
浅墨出品,分享精神至上~ 图片素材为初音,非常萌。 一个演示了用轨迹条来控制轮廓检测,轮廓填充的程序。浅墨将其详细注释,放出来供大家消化研习。 博文《【OpenCV入门教程之六】 创建Trackbar & 图像对比度、亮度值调整》的配套详细注释源代码的番外篇。 博文链接: http://blog.csdn.net/poem_qianmo/article/details/21479533 1.已将dll打包到Release文件夹下,点击Release文件夹下的exe可以直接看到运行结果. 2.源代码运行需要进行OpenCV+VS开发环境的配置。可以参看我写的配置博文: http://blog.csdn.net/poem_qianmo/article/details/19809337 3.写作当前代码时配套使用的OpenCV版本: 2.4.8 4.推荐代码结合博文一起看,学习效果更佳。 by浅墨
资源推荐
资源详情
资源评论
收起资源包目录
OpenCVdemo4_ultra_createTrackbar by浅墨.rar (22个子文件)
OpenCVdemo4_ultra_createTrackbar
OpenCVdemo4_ultra_createTrackbar.suo 17KB
OpenCVdemo4_ultra_createTrackbar
main.cpp 3KB
OpenCVdemo4_ultra_createTrackbar.vcxproj 4KB
OpenCVdemo4_ultra_createTrackbar.vcxproj.user 143B
1.jpg 97KB
OpenCVdemo4_ultra_createTrackbar.vcxproj.filters 942B
Release
vc100.pdb 428KB
link.command.1.tlog 3KB
OpenCVdemo4_ultra_createTrackbar.lastbuildstate 86B
cl.command.1.tlog 842B
cl.read.1.tlog 2B
OpenCVdemo4_ultra_createTrackbar.exe.intermediate.manifest 381B
main.obj 953KB
cl.write.1.tlog 398B
OpenCVdemo4_ultra_createTrackbar.log 3KB
OpenCVdemo4_ultra_createTrackbar.sln 963B
Release
opencv_core248.dll 2MB
OpenCVdemo4_ultra_createTrackbar.exe 17KB
opencv_imgproc248.dll 1.82MB
1.jpg 97KB
opencv_highgui248.dll 1.98MB
OpenCVdemo4_ultra_createTrackbar.pdb 643KB
共 22 条
- 1
浅墨_毛星云
- 粉丝: 4w+
- 资源: 80
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功
- 1
- 2
- 3
- 4
- 5
- 6
前往页