我正在寻找如何计算二进制数组中路径的距离。 我在matlab中将地图导入为矩阵。有一个穿过两个城市的河流的二进制图像。我只知道如何计算从河点到最近城市的距离,但我没有设法计算沿河的最短距离。 我用所有河点的指数制作了一个向量,但我不知道如何从那个距离到最近的城市......
Image 所以我正在寻找穿过红线的最短距离,朝向它穿过的一个浅蓝色点!
日Thnx
答案 0 :(得分:0)
如果我以正确的方式理解你并不是很困难:只需从每个河流城镇开始执行dfs或bfs(8-neighborhood),如果你去对角线sqrt(2)
则添加1
如果你去一个4邻居。在每个河流像素处,您最终可以通过取最小值来决定。您可以进一步停止在距离另一个城市较远的河流像素处停止...
我真的希望我以正确的方式帮助你:)