资源简介
浅墨出品,分享精神至上~
图片素材是当前热映的美国队长2的海报,非常酷!
我们用滑动条来控制迭代次数,动态得到不同效果的形态学操作图。
效果有:开闭运算,腐蚀膨胀,黑帽和顶帽。
博文《【OpenCV入门教程之十一】 形态学图像处理(二):开运算、闭运算、形态学梯度、顶帽、黑帽合辑》的配套详细注释源代码。
博文链接:
http://blog.csdn.net/poem_qianmo/article/details/24599073
1.已将dll打包到Release文件夹下,运行Release文件夹中的exe可以直接看到运行结果.
2.源代码运行需要进行OpenCV+VS开发环境的配置。可以参看我写的配置博文:
http://blog.csdn.net/poem_qianmo/article/details/19809337
3.编写环境:Visual Studio 2010
4.写作当前代码时配套使用的OpenCV版本: 2.4.8
5.推荐代码结合博文一起看,学习效果更佳。
by浅墨
代码片段和文件信息
//-----------------------------------【程序说明】----------------------------------------------
// 程序名称::《【OpenCV入门教程之十一】 形态学图像处理(二):开运算、闭运算、形态学梯度、顶帽、黑帽合辑 》 博文配套源码
// 开发所用IDE版本:Visual Studio 2010
// 开发所用OpenCV版本: 2.4.8
// 2014年4月14日 Create by 浅墨
// 配套博文链接: http://blog.csdn.net/poem_qianmo/article/details/24599073
// PS:程序结合配合博文学习效果更佳
// 浅墨的微博:@浅墨_毛星云 http://weibo.com/1723155442/profile?topnav=1&wvr=5&user=1
// 浅墨的知乎:http://www.zhihu.com/people/mao-xing-yun
// 浅墨的豆瓣:http://www.douban.com/people/53426472/
//----------------------------------------------------------------------------------------------
//-----------------------------------【头文件包含部分】---------------------------------------
// 描述:包含程序所依赖的头文件
//----------------------------------------------------------------------------------------------
#include
#include
#include
//-----------------------------------【命名空间声明部分】--------------------------------------
// 描述:包含程序所使用的命名空间
//-----------------------------------------------------------------------------------------------
using namespace std;
using namespace cv;
//-----------------------------------【全局变量声明部分】--------------------------------------
// 描述:全局变量声明
//-----------------------------------------------------------------------------------------------
Mat g_srcImage g_dstImage;//原始图和效果图
int g_nElementShape = MORPH_RECT;//元素结构的形状
//变量接收的TrackBar位置参数
int g_nMaxIterationNum = 10;
int g_nOpenCloseNum = 0;
int g_nErodeDilateNum = 0;
int g_nTopBlackHatNum = 0;
//-----------------------------------【全局函数声明部分】--------------------------------------
// 描述:全局函数声明
//-----------------------------------------------------------------------------------------------
static void on_OpenClose(int void*);//回调函数
static void on_ErodeDilate(int void*);//回调函数
static void on_TopBlackHat(int void*);//回调函数
static void ShowHelpText();
//-----------------------------------【main( )函数】--------------------------------------------
// 描述:控制台应用程序的入口函数,我们的程序从这里开始
//-----------------------------------------------------------------------------------------------
int main( )
{
//改变console字体颜色
system(“color 2F“);
ShowHelpText();
//载入原图
g_srcImage = imread(“1.jpg“);
if( !g_srcImage.data ) { printf(“Oh,no,读取srcImage错误~! \n“); return false; }
//显示原始图
namedWindow(“【原始图】“);
imshow(“【原始图】“ g_srcImage);
//创建三个窗口
namedWindow(“【开运算/闭运算】“1);
namedWindow(“【腐蚀/膨胀】“1);
namedWindow(“【顶帽/黑帽】“1);
//参数赋值
g_nOpenCloseNum=9;
g_nErodeDilateNum=9;
g_nTopBlackHatNum=2;
//分别为三个窗口创建滚动条
createTrackbar(“迭代值“ “【开运算/闭运算】“&g_nOpenCloseNumg_nMaxIterationNum*2+1on_OpenClose);
createTrackbar(“迭代值“ “【腐蚀/膨胀】“&g_nErodeDilateNumg_nMaxIterationNum*2+1on_ErodeDilate);
createTrackbar(“迭代值“ “【顶帽/黑帽】“&g_nTopBlackHatNumg_nMaxIterationNum*2+1on_TopBlackHat);
//轮询获取按键信息
while(1)
{
int c;
//执行回调函数
on_OpenClose(g_nOpenCloseNum 0);
on_ErodeDilate(
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 109055 2014-04-25 20:46 OpenCVdemo8\OpenCVdemo8\1.jpg
文件 86481 2014-04-16 21:08 OpenCVdemo8\OpenCVdemo8\2.jpg
文件 7177 2014-04-27 21:29 OpenCVdemo8\OpenCVdemo8\main.cpp
文件 4404 2014-04-26 22:27 OpenCVdemo8\OpenCVdemo8\OpenCVdemo8.vcxproj
文件 942 2014-04-18 10:45 OpenCVdemo8\OpenCVdemo8\OpenCVdemo8.vcxproj.filters
文件 143 2014-04-18 10:11 OpenCVdemo8\OpenCVdemo8\OpenCVdemo8.vcxproj.user
文件 900 2014-04-18 10:11 OpenCVdemo8\OpenCVdemo8.sln
..A..H. 18432 2014-04-27 21:30 OpenCVdemo8\OpenCVdemo8.suo
文件 109055 2014-04-25 20:46 OpenCVdemo8\Release\1.jpg
文件 16384 2014-04-27 21:30 OpenCVdemo8\Release\OpenCVdemo8.exe
文件 969728 2014-04-27 21:30 OpenCVdemo8\Release\OpenCVdemo8.pdb
文件 2098688 2013-12-29 12:09 OpenCVdemo8\Release\opencv_core248.dll
文件 2080768 2013-12-29 12:10 OpenCVdemo8\Release\opencv_highgui248.dll
文件 1905664 2013-12-29 12:10 OpenCVdemo8\Release\opencv_imgproc248.dll
目录 0 2014-04-27 21:31 OpenCVdemo8\OpenCVdemo8
目录 0 2014-04-27 21:30 OpenCVdemo8\Release
目录 0 2014-04-27 21:31 OpenCVdemo8
----------- --------- ---------- ----- ----
7407821 17
- 上一篇:OpenCV滚动条的创建程序 by浅墨
- 下一篇:OpenCV直线检测程序 by浅墨
评论
共有 条评论