一、前言

泛洪填充算法也叫漫水填充算法。在网上查阅了很多的关于泛洪填充的案例但是一直都表示理解不了参数的具体作用,在自己的研究中才慢慢有所了解。

二、泛洪填充

import cv2
import matplotlib.pyplot as plt
import numpy as npimage = cv2.imread("cat.png")
copyImg = image.copy()h, w = image.shape[:2]
mask = np.zeros([h+2, w+2],np.uint8)
cv2.floodFill(copyImg,mask,(360,200),(100,100,0),(100,50,100),(10,10,10),cv2.FLOODFILL_FIXED_RANGE)img = cv2.cvtColor(copyImg, cv2.COLOR_BGR2RGB)
cv2.imshow("fill_color_demo", copyImg)
plt.figure('image')
plt.imshow(img)
plt.show()

核心的代码是:

cv2.floodFill(copyImg,mask,(360,200),(100,100,0),(100,50,100),(10,10,10),cv2.FLOODFILL_FIXED_RANGE)

三、参数说明

floodFill(image, mask, seedPoint, newVal[, loDiff[, upDiff[, flags]]])

image参数表示输入/输出1或3通道,8位或浮点图像。
mask参数表示掩码,该掩码是单通道8位图像,比image的高度多2个像素,宽度多2个像素。填充时不能穿过输入掩码中的非零像素。
seedPoint参数表示泛洪算法(漫水填充算法)的起始点,即图像像素坐标。


newVal参数表示在重绘区域像素的新值。
loDiff参数表示当前观察像素值与其部件邻域像素值或待加入该组件的种子像素之间的亮度或颜色之负差的最大值。
upDiff参数表示当前观察像素值与其部件邻域像素值或待加入该组件的种子像素之间的亮度或颜色之正差的最大值。

在floodfill函数中,第二参数是掩膜,掩膜为1的区域被遮盖住了,不能用于泛洪。第二个参数是起始坐标,注意先列后行。第三个坐标是目标颜色,第四个坐标是泛洪的下界,第五个坐标是泛洪的上界(就是能够比第二个参数的像素值大多少),第六个参数是固定的。

参考:https://www.cnblogs.com/loubin/p/12292189.html

西北乱跑娃 --- opencv泛洪填充学习笔记相关推荐

  1. OpenCV之Python学习笔记

    RSS订阅 登陆 注册 原文链接地址:http://www.itozi.net/19477.html OpenCV之Python学习笔记 ITOZI 发布于 2015-08-06 分类:OpenSta ...

  2. 12月19日 OpenCV 实战基础学习笔记——特征匹配

    文章目录 前言 一.特征匹配 1.Brute-force 蛮力匹配 2.1 对 1 匹配 3.k 对最佳匹配 二.答题卡识别 前言 本文为12月19日 OpenCV 实战基础学习笔记--特征匹配,分为 ...

  3. OpenCV for Ios 学习笔记(4)-标记检测1

    本文原始地址:OpenCV for Ios 学习笔记(4)-标记检测1 简单的标记经常是以白色块和黑色块构成的规则图形.因为我们预先知道这些因素,所以我们可以很容易检测标记. 如图: 首先,我们需要找 ...

  4. OpenCV之Python学习笔记(1)(2): 图像的载入、显示和保存 图像元素的访问、通道分离与合并

    OpenCV之Python学习笔记 一直都在用Python+OpenCV做一些算法的原型.本来想留下发布一些文章的,可是整理一下就有点无奈了,都是写零散不成系统的小片段.现在看到一本国外的新书< ...

  5. 12月28日 OpenCV 实战基础学习笔记——疲劳检测

    文章目录 前言 一.眨眼疲劳检测 前言 本文为12月28日 OpenCV 实战基础学习笔记--疲劳检测. 一.眨眼疲劳检测 from scipy.spatial import distance as ...

  6. OpenCV 4.0学习笔记

    OpenCV 4.0学习笔记 g++ //#include <opencv2/core.hpp> //#include <opencv2/imgproc.hpp> //#inc ...

  7. 36篇博文带你学完opencv :python+opencv进阶版学习笔记目录

    基础版学习笔记传送门 36篇博文带你学完opencv :python3+opencv学习笔记汇总目录(基础版) 进阶版笔记 项目 opencv进阶学习笔记1: 调用摄像头用法大全(打开摄像头,打开摄像 ...

  8. OpenCV 图像处理编程学习笔记

    <OpenCV编程实例代码>各章重点知识点简述 第一章 OpenCv环境配置 第二章 图像及视频的基本操作 第二部分 图像处理技术 第三章 图像灰度变换技术 第四章 图像平滑技术 第五章 ...

  9. opencv 的norm_OpenCV学习笔记(一)之图像金字塔-上采样与降采样与DOG

    一. 图像金字塔 一个图像金字塔式一系列的图像组成,最底下的图形尺寸最大,最上方的图像尺寸最小. 高斯金字塔是从底向上,逐层降采样得到的. 高斯金字塔的生成过程分为两步: 1. 对当前层进行高斯模糊. ...

最新文章

  1. 基于Tomcat7、Java、WebSocket的服务器推送聊天室
  2. 基于IPSec的×××配置实验
  3. Nginx正向代理实现
  4. 为什么需要这么多编程语言?
  5. 什么时候学习编程都不晚
  6. SetTimer函数和 KillTimer函数
  7. 猴子香蕉问题——枚举
  8. Win10/11 移动C:\Users 目录
  9. 【B站】陈睿:令人刮目相看的年轻一代
  10. sklearn笔记18决策树gini系数
  11. numeric比较大小 数据库_SQL数据库中Numeric(10,2)是什么意思?
  12. js对象、数字深拷贝方式(转)
  13. Hibernate的三种检索策略
  14. 模拟登陆速卖通的小问题,并解决。新手成长路漫漫
  15. Bata冲刺 第一天
  16. svn版本更迭的原理
  17. 卡巴斯基公布财报,2020年业务稳定增长
  18. 基于yolov5实现FPS游戏自瞄,理论上通杀所有射击游戏
  19. 发那科2021参数_发那科参数(详细)讲述.doc
  20. 〖Python零基础入门篇㊲〗- 类的继承、多态与多重继承

热门文章

  1. 微信建群怎么建?不止一种方法,快试试这个!
  2. 批改网中的作文不能粘贴怎么办?
  3. 【Vue】Antd Affix a-affix 固钉组件,宽度未随父容器宽度变化
  4. 适合快速阅读的论文翻译工具,翻译论文必备!
  5. 【解决方案】SkeyeVSS加油站远程视频监控系统建设标准及推广应用方案
  6. crash 和 anr的区别
  7. win7系统,网络ID是灰色的。就是要看网络工作组计算机的那个“网络 ID”的那个按钮。
  8. Python基于Flask框架实现视频直播,电脑桌面录屏web端展示,远程控制电脑
  9. 求知若饥,虚心若愚----不错的演讲,与大家共勉
  10. 花生wifi后台管理系统项目日记