Python3与OpenCV3.3 图像处理(七)--洪填充

一、本节简介

本节主要讲解洪填充的简单使用,以及洪填充的概念


二、什么是洪填充

泛洪填充算法又称洪水填充算法是在很多图形绘制软件中常用的填充算法,最熟悉不过就是

windows paint的油漆桶功能。算法的原理很简单,就是从一个点开始附近像素点,填充成新

的颜色,直到封闭区域内的所有像素点都被填充新颜色为止。泛红填充实现最常见有四邻域

像素填充法,八邻域像素填充法,基于扫描线的像素填充方法。根据实现又可以分为递归与

非递归(基于栈)。


三、示例

按照惯例,通过示例来看一下洪填充的知识点,讲解的内容依然在注释里展现

import cv2 as cv
import numpy as np

def fill_color_demo(image):
    """
    漫水填充:会改变图像
    """

    #复制图片
    copyImg=image.copy()
    #获取图片的高和宽
    h,w =image.shape[:2]

    #创建一个h+2,w+2的遮罩层,
    #这里需要注意,OpenCV的默认规定,
    # 遮罩层的shape必须是h+2,w+2并且必须是单通道8位,具体原因我也不是很清楚。
    mask=np.zeros([h+2,w+2],np.uint8)

    #这里执行漫水填充,参数代表:
    #copyImg:要填充的图片
    #mask:遮罩层
    #(30,30):开始填充的位置(开始的种子点)
    #(0,255,255):填充的值,这里填充成黄色
    #(100,100,100):开始的种子点与整个图像的像素值的最大的负差值
原文地址:https://www.cnblogs.com/gangzhucoll/p/12778296.html