图像形态学操作—腐蚀扩展深度

图像形态学操作—腐蚀扩展深度

大家好,又见面了,我是全栈君,今天给大家准备了Idea注册码。

在这里,我们想向大家解释这本书的数字图像处理对冈萨雷斯的扩大和使用腐蚀-definedopencv取得的成果,然后控制它们之间的差异。

一:opencv达到

       在这之前能够看我的另外一篇blog:http://blog.csdn.net/lu597203933/article/details/17184439

膨胀:

案例代码:

int main(){	int a[8][8] = {		{0,0,0,0,0,0,0,0}, 		{0,0,5,1,0,0,1,1}, 		{0,1,0,1,0,1,0,0},		{0,1,1,2,1,0,1,0},		{0,0,0,1,0,1,0,0},		{0,1,0,0,0,0,0,1},		{0,0,0,0,0,0,0,0},		{0,0,0,0,0,0,0,0}	};	Mat S = Mat::zeros(8, 8, CV_8UC1);	for(int j = 0; j < S.rows; j++)	{		for(int i = 0; i < S.cols; i++)		{			S.at<uchar>(j,i) = a[j][i];		}	}	cout << "S = " << endl << " " << S << endl;	Mat result;	Mat dilated = Mat::zeros(3, 3, CV_8UC1);	dilated.at<uchar>(0,1) = 1;	//eroded.at<uchar>(0,2) = 1;	dilated.at<uchar>(1,0) = 1;	dilated.at<uchar>(1,1) = 2;          // 结构元素非0即1	dilated.at<uchar>(1,2) = 1;	dilated.at<uchar>(2,1) = 1;	cout << "dilated = " << endl << " " << dilated << endl;		dilate(S, result, dilated);  	cout << "result = " << endl << " " << result << endl;	return 0;}

结果:

图像形态学操作—腐蚀扩展深度

膨胀就是假设结构元B有一处非0,而A相应位置非0,则求出A中与B中相应非0处所有像素最大值来取代当前像素点值。Opencv中默认的结构元是3*3的矩阵,所有非0。

腐蚀:

案例代码:

int main(){	int a[8][8] = {		{0,0,0,0,0,0,0,0}, 		{0,0,5,1,0,0,1,1}, 		{0,1,0,1,0,1,0,0},		{0,1,1,2,1,0,1,0},		{0,0,0,1,0,1,0,0},		{0,1,0,0,0,0,0,1},		{0,0,0,0,0,0,0,0},		{0,0,0,0,0,0,0,0}	};	Mat S = Mat::zeros(8, 8, CV_8UC1);	for(int j = 0; j < S.rows; j++)	{		for(int i = 0; i < S.cols; i++)		{			S.at<uchar>(j,i) = a[j][i];		}	}	cout << "S = " << endl << " " << S << endl;	Mat result;	Mat eroded = Mat::zeros(3, 3, CV_8UC1);	eroded.at<uchar>(0,1) = 1;	//eroded.at<uchar>(0,2) = 1;	eroded.at<uchar>(1,0) = 1;	eroded.at<uchar>(1,1) = 2;          // 结构元素非0即1	eroded.at<uchar>(1,2) = 1;	eroded.at<uchar>(2,1) = 1;	cout << "eroded = " << endl << " " << eroded << endl;		erode(S, result, eroded);  	cout << "result = " << endl << " " << result << endl;	return 0;

结果:

图像形态学操作—腐蚀扩展深度

腐蚀就是结构元B处非0,则A相应位置也全非0。且取全非0处最小值来取代当前像素点的值。

 

二:书中定义

膨胀: . 图像形态学操作—腐蚀扩展深度这里的B是结构元。B~是结构元的反射。反射不明确能够看书,就是旋转或者按中心点对称。如:

0 1   的反射就是 1 1

1 1                        1 0

与opencv中唯一的差别就是必须得求反射,而opencv中则直接用给定的结构元B。

腐蚀: 图像形态学操作—腐蚀扩展深度

案例:

图像形态学操作—腐蚀扩展深度

作者:小村长  出处:http://blog.csdn.net/lu597203933 欢迎转载或分享,但请务必声明文章出处。 (新浪微博:http://weibo.com/2653613245/profile , 欢迎交流!

版权声明:本文博主原创文章,博客,未经同意不得转载。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/116869.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 导弹防御系统(dfs+最长上升子序列)

    导弹防御系统(dfs+最长上升子序列)原题连接/为了对抗附近恶意国家的威胁,R 国更新了他们的导弹防御系统。一套防御系统的导弹拦截高度要么一直 严格单调 上升要么一直 严格单调 下降。例如,一套系统先后拦截了高度为 3 和高度为 4 的两发导弹,那么接下来该系统就只能拦截高度大于 4 的导弹。给定即将袭来的一系列导弹的高度,请你求出至少需要多少套防御系统,就可以将它们全部击落。输入格式输入包含多组测试用例。对于每个测试用例,第一行包含整数 n,表示来袭导弹数量。第二行包含 n 个不同的整数,表示每个导弹的高度。当输入测试用例

    2022年8月8日
    9
  • python字符串的比较

    python字符串的比较关于其中字符串类型id引用驻留机制见python中的字符串的驻留机制字符串的比较操作:运算符:>,>=,<,<=,==,!= 比较规则:首先比较两个字符串中的第–个字符,如果相等则继续比较下一个字符,依次比较下去,直到两个字符串中的字符不相等时,其比较结果就是两个字符串的比较结果,两个字符串中的所有后续字符将不再被比较比较原理:两字符进行比较时,比较的是其ordinalvalue(原始值),调用内置函数ord可以得到指定字符的ordinalv

    2022年6月18日
    36
  • 编码器原理_编码器使用方法

    编码器原理_编码器使用方法引用LQ的编码器原理1/概述  旋转编码器是用来测量转速的装置。它分为单路输出和双路输出两种。技术参数主要有每转脉冲数(几十个到几千个都有),和供电电压等。单路输出是指旋转编码器的输出是一组脉冲,而双路输出的旋转编码器输出两组相位差90度的脉冲,通过这两组脉冲不仅可以测量转速,还可以判断旋转的方向。编码器如以信号原理来分,有增量型编码器,绝对型编码器。 2/原理 增量型编码

    2022年10月1日
    4
  • mysql的TIMESTAMPDIFF的简单使用「建议收藏」

    mysql的TIMESTAMPDIFF的简单使用「建议收藏」一、首先看TIMESTAMPDIFF在项目中的一个具体使用场景mybatis查询:二、mysql的时间差函数TIMESTAMPDIFF、DATEDIFF的具体用法TIMESTAMPDIFF(interval,datetime_expr1,datetime_expr2)说明:返回日期或日期时间表达式datetime_expr1和datetime_expr2the之间的整数差…

    2022年5月5日
    297
  • Razor语法_range语法

    Razor语法_range语法本章通过示例来说明常见用途下的Razor语法。1.Razor中的核心转换符号是@。这个单一字符用做标记-代码的转换字符,有时也反过来用作代码-标记的转换字符。这里共有两种基本类型的转换:代码表达式和代码块。求出表达式的值,然后将值写入到响应中。@{stringrootNamespace="MyApp";}&lt;span&gt;@rootNamespace.Models&…

    2025年7月26日
    2
  • eclipse使用maven教程

    eclipse使用maven教程eclipse使用maven教程什么是mavenmaven下载与安装与配置1下载2安装3配置环境变量在eclipse中配置1m2eclipse安装2配置eclipse3创建一个maven项目1项目的结构2Eclipse中maven常用的命3使用maven命令0.什么是maven参考https://www.cnblogs.com/whgk/p

    2022年4月6日
    45

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号