【发布时间】:2014-06-16 18:26:46
【问题描述】:
我有一个关于连接组件的问题。我有一个二进制图像(只有 0 和 1)我从 matlab 运行函数: f=
1 0 0 1 0 0 0 1 0 0
1 1 0 1 1 1 0 0 1 0
0 0 0 0 0 0 0 1 1 1
1 0 0 0 1 0 1 0 1 1
1 1 0 0 0 0 0 1 1 1
0 0 0 1 0 0 1 0 0 0
0 0 0 1 0 1 1 0 1 1
1 1 0 0 1 0 0 0 1 0
1 1 0 1 1 1 0 1 0 0
1 1 0 0 1 0 0 0 1 0
[L 数量]=bwlabel(f);
假设他们给了我矩阵:
1 0 0 4 0 0 0 5 0 0
1 1 0 4 4 4 0 0 5 0
0 0 0 0 0 0 0 5 5 5
2 0 0 0 6 0 5 0 5 5
2 2 0 0 0 0 0 5 5 5
0 0 0 5 0 0 5 0 0 0
0 0 0 5 0 5 5 0 7 7
3 3 0 0 5 0 0 0 7 0
3 3 0 5 5 5 0 7 0 0
3 3 0 0 5 0 0 0 7 0
但是你可以在这个结果中看到,矩阵的顺序是跟随列的。现在我想将其更改为 oder 行,这意味着数字 4 是 2 ,数字 5 是 3 ......等等。 顺序是左-> 右和上-> 下。我该怎么做(阅读的顺序)??
非常感谢
【问题讨论】:
-
一个简单的解决方案是在 bwlabel 之前横切您的图像,然后再横切它。看答案
-
您是否正在尝试阅读文本,就像您发布的示例图像中一样?如果是这样,也请在问题中发布这些图片。
标签: sorting image-processing bounding-box