摘要:
其实写过一步法二值图像连通区域标记之后我就感觉这个标记和填充基本上是一回事,所以我这里就用了一步法的那个队列算法。也没什么好说的,算法几乎一样,就是细节的区别。还有这里使用了ginput函数。至于堆栈版的实现,看情况吧。 clear all; close all; clc; img=imread(' 阅读全文
摘要:
还是一个函数的使用ginput()clear all;close all;clc;img=ones(200,200);imshow(img);[x y]=ginput()这里鼠标左键点击一次[x y]添加一个值,点四次就有四个值。敲击回车结束。获得坐标的(0,0)就是图像的(0,0)。 阅读全文
摘要:
这个只需要遍历一次图像就能够完全标记了。我主要参考了WIKI和这位兄弟的博客,这两个把原理基本上该介绍的都介绍过了,我也不多说什么了。一步法代码相比两步法真是清晰又好看,似乎真的比两步法要好很多。 代码如下: clear all; close all; clc; img=imread('lianto 阅读全文
摘要:
我几乎完全就是照着WIKI百科上的算法实现的,不过是用Matlab而已。使用了两步法进行标记,一步法我还没怎么看。两步法中第二步是比较麻烦的,其中用到了不相交集合的一些理论,尤其是不相交集合森林,我这里的find_set函数就是参考《算法导论》311页的算法写的。如果用c++写,也许需要自己构造数据 阅读全文