【问题标题】:How to smoothen edges found in a image using matlab如何使用matlab平滑图像中的边缘
【发布时间】:2023-03-18 02:50:02
【问题描述】:

如何使用 matlab 平滑下图中的两条线?这样它看起来就像两条平滑的曲线。

我尝试使用如下的 imdilate 和 imclose 函数

 imdilate(im_edge,strel('disk', 2))
 imclose(im_edge,strel('square', 2))

但边缘只是变得延迟或像素变得更近

【问题讨论】:

  • 您是否尝试过使用过滤器?请向我们展示您的尝试。
  • 如何使用过滤器来做到这一点,你能指导我吗
  • 您可以先在 matlab 文档中搜索“filter image”
  • 我试过这个link,它只是模糊然后图像并调整图像大小
  • 请准确定义您使用 smoothen 的含义。你的问题还不够清楚。请edit您的问题包括您已经尝试过的内容并添加缺少的详细信息。

标签: matlab image-processing edge-detection


【解决方案1】:

我试图找到一种让它看起来像曲线的方法。
我认为在正确的方向上使用形态学运算。
形态学操作示例:

扩张:

I = imread('Rx1wSm.jpg');
se = strel('disk',3);
J = imdilate(I, se);

关闭:

se = strel('disk',3);
J = imclose(I, se);

关闭阈值:

se = strel('disk',3);
J = imclose(I, se);
J(J > 50) = 255;
J(J<50)=0;

Matlab 支持更多的形态学运算。
在 Matlab 命令窗口中键入 doc bwmorph 以查看文档。

还有改进的余地,但你需要找到更好的专家。

【讨论】:

  • 我想让它看起来像一条曲线
  • @Le Truong Sinh Matlab 支持更多的形态学运算。在 Matlab 命令窗口中键入 doc bwmorph 以查看文档。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2017-10-26
  • 1970-01-01
  • 2013-01-07
  • 2014-03-14
  • 1970-01-01
  • 2016-09-21
  • 1970-01-01
相关资源
最近更新 更多