社区
图形处理/算法
帖子详情
【新手】数学形态学的腐蚀、膨胀、开运算、闭运算、击中、不击中、骨架化等变换中,结构元素分解能提高效率吗???
sxshao
2005-04-02 04:30:55
【新手】数学形态学的腐蚀、膨胀、开运算、闭运算、击中、不击中、骨架化等变换中,结构元素分解能提高效率吗???
如:
0 1 1 1 0
1 1 1 1 1
1 1 @ 1 1
1 1 1 1 1
0 1 1 1 0
=
1
@
1
+
1 @ 1
+
0 1 0
1 @ 1
0 1 0
...全文
730
4
打赏
收藏
【新手】数学形态学的腐蚀、膨胀、开运算、闭运算、击中、不击中、骨架化等变换中,结构元素分解能提高效率吗???
【新手】数学形态学的腐蚀、膨胀、开运算、闭运算、击中、不击中、骨架化等变换中,结构元素分解能提高效率吗??? 如: 0 1 1 1 0 1 1 1 1 1 1 1 @ 1 1 1 1 1 1 1 0 1 1 1 0 = 1 @ 1 + 1 @ 1 + 0 1 0 1 @ 1 0 1 0
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
4 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
sxshao
2005-04-03
打赏
举报
回复
3 * 3 / ( 3 + 3 ) = 3 / 2 = 1.5
5 * 5 / ( 5 + 5 ) = 5 / 2 = 2.5
7 * 7 / ( 7 + 7 ) = 7 / 2 = 3.5
huanyun
2005-04-03
打赏
举报
回复
其实不一定的 实际要比较的话 还是使用算法测试精确数据吧
因为每做一次都要准备缓冲 而且要遍历图像
我的算法 自己测试的是 3*3 变为 3+3 并不能提高效率
5*5 变为 5+5 可以提高效率
7*7 变为 7+7 可以大幅度提高效率
sxshao
2005-04-02
打赏
举报
回复
////////////////////////////////////////////////////////////////////////
//BOOL MakeErosion()
//----------------------------------------------------------------------
//基本功能:本函数对图像数据执行腐蚀操作。
//----------------------------------------------------------------------
//参数说明:int *nMask 结构元素数组指针
// int nMaskLen 结构元素长度(以点数为计数单位)
// unsigned char *pOut 输出图像数据指针
// unsigned char *pIn 输入图像数据指针
// int nWidthBytes 图像宽度(以字节表示)
// int nWidth 图像宽度(以像素表示)
// int nHeight 图像高度
//----------------------------------------------------------------------
//返 回:BOOL
// 成功返回TRUE,失败返回FALSE。
//----------------------------------------------------------------------
//注 意:此函数声明为保护型,只能在CMorphPro类中使用。
//----------------------------------------------------------------------
////////////////////////////////////////////////////////////////////////
BOOL CMorphPro::MakeErosion(int *nMask, int nMaskLen,
unsigned char *pOut, unsigned char *pIn,
int nWidthBytes, int nWidth, int nHeight)
{
_Normalization(pIn, nWidthBytes, nWidth, nHeight);
//若传入的图像数据为空,将无法完成操作,直接返回。
if(pOut == NULL || pIn == NULL) return FALSE;
//定义变量
int x, y, k;
unsigned char Mark;
CString CStrMessage;
for (k = 0; k < nMaskLen; k++)
{
CStrMessage.Format("(x,y) : (%d,%d)", nMask[2*k], nMask[2*k+1] ) ;
//AfxMessageBox(CStrMessage);
}
//执行腐蚀操作
for( y = 0; y < nHeight; y++ )
{
unsigned char *pOutTemp = pOut;
pOutTemp += y * nWidthBytes;
for( x = 0; x < nWidth; x++ )
{
Mark = 1;
for (k = 0; k < nMaskLen; k++)
{
//不能处理边界像素
if ((x + nMask[2 * k] >= 0 ) &&
(x + nMask[2 * k] < nWidth) &&
(y + nMask[2 * k + 1] >= 0) &&
(y + nMask[2 * k + 1] < nHeight))
{
unsigned char Data;
//取与模板中位置相对应的像素值
unsigned char *pTemp = pIn;
pTemp += y * nWidthBytes;
pTemp += nMask[2 * k + 1] * nWidthBytes;
Data = pTemp[x + nMask[2 * k]];
if(Data != 255)
{
Mark = 0;
k = nMaskLen;
}
}
else
{
Mark = 0;
k = nMaskLen;
}
}
if (Mark == 1) pOutTemp[x] = 255;
}
}
return TRUE;
}
sxshao
2005-04-02
打赏
举报
回复
腐蚀、膨胀的循环往往不需要全部走完就知道结果跳出来了。
膨胀
腐蚀
开
运算
闭
运算
matlab,11.
形态学
膨胀
、
腐蚀
、
开
运算
、
闭
运算
1.
膨胀
:对边界点进行扩充,填充空洞,使边界向外部扩张的过程。2.
腐蚀
:消除物体边界点,使边界向内部收缩的过程,把小于
结构
元素
的物体去除掉。3.
开
运算
:先
腐蚀
后
膨胀
的过程称为
开
运算
,作用:去除孤立的小点,毛刺,消除小物体,平滑较大物体边界,同时不改变其面积。4.
闭
运算
:先
膨胀
后
腐蚀
的过程是
闭
运算
。作用:填充物体内细小的空洞,连接临近物体,平滑边界,同时不改变其面积。
开
运算
: 先
腐蚀
后
膨胀
...
图像
数学
形态学
的基本原理与代码实现(
腐蚀
、
膨胀
、开
闭
运算
)
图像
数学
形态学
的基本原理与代码实现(
腐蚀
、
膨胀
、开
闭
运算
) 文章目录图像
数学
形态学
的基本原理与代码实现(
腐蚀
、
膨胀
、开
闭
运算
)1. 集合基础2.
腐蚀
(erode)2.1 集合描述2.2 通俗理解3.
膨胀
(dilate)3.1 集合描述3.2 通俗理解4. 代码实现5.其他 1. 集合基础 集合是由一个或多个确定
元素
所构成的整体。 空集:确定
元素
如果不存在,就是空集。常记为 ∅\varnothing∅ 并集:所有
元素
合并到一起的集合。常记为 A∪BA\cup BA∪B 交集:相同
元素
的集合。常记为 A
膨胀
、
腐蚀
、开、
闭
运算
——数字图像处理
中
的
形态学
转自:https://blog.csdn.net/welcome_xu/article/details/6694985
膨胀
、
腐蚀
、开、
闭
运算
是
数学
形态学
最基本的
变换
。 本文主要针对二值图像的
形态学
膨胀
:把二值图像各1像素连接成分的边界扩大一层(填充边缘或0像素内部的孔);
腐蚀
:把二值图像各1像素连接成分的边界点去掉从而缩小一层(可提取骨干信息,去掉毛刺,去掉孤立的0像素); 开:先
腐蚀
再
膨胀
...
[Halcon&图像]
形态学
处理(
腐蚀
、
膨胀
、
开
运算
、
闭
运算
)
一般图像处理是针对图像做形状的改变,而形态处理则是对图像进行
结构
性的改变,而常见的形态处理就是针对二值图像(图像
中
的任何像素灰度值不是0就是255)的
膨胀
(Dilation)、
腐蚀
(Erosion)、
开
运算
(先
腐蚀
再
膨胀
)、
闭
运算
(先
膨胀
再
腐蚀
)。 一、理论:
膨胀
(Dilation)-增加像素: &nb...
openCv学习笔记(四)-
数学
形态学
1(二值图像的
膨胀
、
腐蚀
、
开
运算
和
闭
运算
)
一
形态学
基本概念 是一门建立在格论和拓扑学基础之上的图像分析学科,是
数学
形态学
图像处理的基本理论。其基本的
运算
包括:二值
腐蚀
和
膨胀
、二值开
闭
运算
、
骨架
抽取、极限
腐蚀
、
击
中
击不
中
变换
、
形态学
梯度、Top-hat
变换
、颗粒分析、流域
变换
、灰值
腐蚀
和
膨胀
、灰值开
闭
运算
、灰值
形态学
梯度等。 在很多邻域
中
,如预处理、基于物体形状分割、物体量
化等
,与其他标准算法相比,
形态学
方法都有更好的结果和
图形处理/算法
19,469
社区成员
50,678
社区内容
发帖
与我相关
我的任务
图形处理/算法
VC/MFC 图形处理/算法
复制链接
扫一扫
分享
社区描述
VC/MFC 图形处理/算法
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章