个性化阅读
专注于IT技术分析

洪水填充和边界填充算法之间有什么区别?

洪水填充算法:

洪水填充算法也称为种子填充算法。它确定连接到多维数组中给定节点的区域。该算法通过填充或重新着色内部区域(因此图像边界)中包含不同颜色的选定区域来工作。它通常由具有以各种不同颜色区域为边界的邻域的图片来说明。要绘制此类区域, 我们将替换特定的内部颜色, 而不是发现边界颜色值。这是因为采用了洪水填充算法, 因此可以理解该方法的原理。

现在, 有两种方法可用于通过连接像素创建无限边界– 4连通法和8连通法。在4连接方法中, 该像素最多可以具有四个相邻像素, 它们位于当前像素的适当位置, 左侧, 上方和下方。相反, 在8连接方法中, 它可以有八个, 并且相对于四个对角像素检查相邻位置。因此, 这两种方法中的任何一种通常都不会重绘内部点。

边界填充算法:

它遵循一种方法, 其中区域填充从某种程度上开始驻留在区域内部, 然后将内部填充到边界。在边界包含单一颜色的情况下, 填充算法在向外的像素中逐个像素继续, 直到遇到边界颜色为止。边界填充算法通常主要在交互式绘画包中实现, 在其中容易选择内部点。

边界填充的功能从接受室内点(x, y)的坐标开始, 边界颜色和填充颜色成为输入。从(x, y)开始, 该方法检查相邻位置以发现它们是否是边界色的一部分。如果不是来自边界色, 则将其填充为填充色, 并根据条件测试其相邻像素。当检查所有像素直到世界的边界颜色时, 该过程结束。

填充算法和边界填充算法之间的区别:

洪水填充算法 边界填充算法
它可以处理包含一种以上边界色的图像。 它只能处理包含单一边界色的图像。
洪水填充算法比边界填充算法要慢。 边界填充算法比泛洪填充算法快。
在Flood-fill算法中, 可以使用随机颜色来绘制内部部分, 然后将旧的部分替换为新的部分。 在边界填充算法中, 通过连续搜索边界颜色来绘制内部点。
它需要大量的内存。 在边界填充算法中, 内存消耗相对较低。
洪水填充算法既简单又高效。 边界填充算法的复杂度很高。

赞(0) 打赏
未经允许不得转载:srcmini » 洪水填充和边界填充算法之间有什么区别?
分享到: 更多 (0)

评论 抢沙发

评论前必须登录!

 

觉得文章有用就打赏一下文章作者

微信扫一扫打赏