来自二进制映像的动态连接的组件

时间:2019-07-23 20:22:40

标签: connected-components

这是我的情况。我有一个图像以位数组的形式加载到内存中,可以随时对其进行修改。数组中的每个索引都是一个像素,可以为0或1。

添加像素时,仅表示其值从0到1。 删除像素后,仅表示其值从1变为0。

必须连接图像中的所有像素,这意味着像素只能添加到相邻的(4连接性)占用的像素中。

问题出现是在移除像素时。如果移除像素将像素分成多个未连接的不同组,则需要将其从图像中移除。

现在,我正在使用基本的连接组件标记算法来标记组件。这适用于静态图像,但不适用于动态图像。图片的值范围很广,可能很大,因此每次运行此算法都不可行。

我已经做了大量的研究,大多数事情都使我指出了动态连接图的问题。最具体地说:

J。 Holm,K。de Lichtenberg和M. Thorrup。 "Poly-logarithmic deterministic fully-dynamic algorithms for connectivity, minimum spanning tree, 2-edge connectivity and biconnectivity"。 2001. ACM杂志

但是,正如我在上面说的那样,图像可能会变得很大,并且将每个像素作为一个节点会大大增加其内存复杂性。这会变得很昂贵,因为会有多个图。

所以我的问题是,当我们知道要处理平面图或更好的动态数据网格时,有更好的解决方案来解决动态连接问题?类似于 dynamic 动态连接的组件标签。

0 个答案:

没有答案