在Matlab中找到曲线的长度

时间:2014-10-06 09:42:17

标签: matlab line pixels

我有一个镂空的二进制图像。 图像包含曲线。 我希望能够找到任意两点之间的线的长度(像素数)(当然在线上)。 我怎么能这样做(在Matlab中)?

1 个答案:

答案 0 :(得分:2)

这是一种简单情况的方法(没有循环等,你的线只是一个像素宽)

  1. 从起点开始,定义为当前点并标记为已访问
  2. 转到当前点的未访问的邻居点
  3. 将计数增加1,标记为已访问,将此点定义为当前点
  4. 如果到达终点,请停止。如果你仍然有一些没有参与的邻居,请转到2.如果你没有访问过的邻居,重置计数为零,并尝试从起点走(以探索相反的方向)。
  5. 当然,这可以在任何编程语言中使用。尝试在MATLAB中实现这一点,如果你遇到困难,你可以考虑提出一个更具体的问题。