【问题标题】:Change 8-connectivity of pixels in an image to 4-connectivity将图像中像素的 8-connectivity 更改为 4-connectivity
【发布时间】:2016-06-29 17:30:15
【问题描述】:

我有一个包含 8-Connected path 的 BW 图像

需要更改图像,以使像素之间存在 4 连接,即可以遍历整个路径而无需沿对角线移动。

这个过程需要使用形态学操作来完成。

一个可能的输出是这张图片。 4-Connected path

【问题讨论】:

  • 用特定的腐蚀内核腐蚀它 (strel)
  • 你能为这个特定情况推荐任何内核吗?路径由黑色像素组成,需要四通。
  • 预期的结果是什么?
  • 预期结果现在附在主要问题文本中。
  • 每个正方形是一个像素,还是每个正方形由几个像素组成?这是您上传的真实图片吗?

标签: matlab image-processing vision image-morphology


【解决方案1】:

命中或未命中操作是数学形态学的一部分,所以我会做与骨架化操作相反的操作。

所以我会使用这个命中或未命中过滤器:

X 0 1

X 1 0

X X X

X 是任何值。使用这样的掩码,您可以连接通过角相互接触的黑色像素(值 0) 不要忘记构建滤镜的其他三个旋转(90°、180° 和 270°)。

这是伪代码:

Input: Input Image In, Output Image Out, the four hit-or-miss filters F0, F1, F2, F3
Copy In into Out
For each pixel p in In
    if F0 is true for p, or F1 is true for p, F2 is true for p, F3 is true for p
        Out(p) becomes black.

【讨论】:

  • 我将如何将这 4 个命中未命中过滤图像组合在一起以获得所需的结果?你能解释一下整个过程吗,因为我无法完全理解你的意思。
  • 我认为两个结构元素就足够了,除非计划就地这样做。
  • 我认为如果我们不使用 4 SE,我们会错过一些案例。
  • 因为它们是角连接的,我想说的是 45、225、135、315 /deg 旋转。坦率地说,它们成对相同,只是从相对侧检测到角连接(=线)。所以你实际上通过使用它们使线条太粗。显然,使用上限或下限会稍微改变结果。
  • 确实,这条线会粗一点。
猜你喜欢
  • 1970-01-01
  • 2015-07-18
  • 2012-01-15
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2023-02-20
相关资源
最近更新 更多