OpenCV中floodfill的使用(洪水填充)(两种填充方式)

OpenCV中floodfill的使用(洪水填充)(两种填充方式)

关键是理解参数的意义和作用,具体以于代码体现,高低值用于判定是否填充

第一种填充方式:以高低值判断填充区域
第二种填充方式:以被1包围的的闭合空间作为填充区域

代码实现:

import cv2
#泛洪填充的使用
#泛洪填充的使用
# 1.FLOODFILL_FIXED_RANGE 以高低值判断填充区域
img = cv2.imread('cat.jpg')
cv2.imshow('img',img)
mask = np.zeros([img.shape[0]+2,img.shape[1]+2],np.uint8) #+2是使用要求
#floodfill的参数:1.操作图像 2.掩膜 3.起始像素点 4.填充颜色 5.填充颜色的低值 6.填充颜色的高值 7.填充方法
cv2.floodFill(img,mask,(30,30),(255,100,100),(20,20,20),(50,50,50),cv2.FLOODFILL_FIXED_RANGE)
cv2.imshow('newimg',img)
cv2.waitKey()
#2.FLOODFILL_MASK_ONLY1的闭合空间作为填充区域
image = np.zeros([400,400,3],np.uint8)
image[100:300,100:300,:] = 255
cv2.imshow('image',image)
mask = np.ones([402,402,1],np.uint8) #将要填充的区域用1围起来
mask[101:301,101:301] = 0
mask[10:150,10:150] = 0 #与初始像素点无连接的区域不会填充
#省略高低值参数
cv2.floodFill(image,mask,(200,200),(255,10,100),cv2.FLOODFILL_MASK_ONLY)
cv2.imshow('newimage',image)
cv2.waitKey()

运行结果:
在这里插入图片描述
在这里插入图片描述

  • 0
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值