ROI(region of interest)感兴趣区域:

图像处理中,从被处理的图像以方框、圆、椭圆、不规则多边形等方式勾勒出需要处理的区域,称为感兴趣区域,ROI。在Halcon、OpenCV、Matlab等机器视觉软件上常用到各种算子(Operator)和函数来求得感兴趣区域ROI,并进行图像的下一步处理。

ROI的获取:

src = cv.imread("E:/picture/demo.jpg", 1);
cv.namedWindow("input image", src);
face = src[50:250, 100:300];
gray = cv.CvtColor(face, COLOR_BGR2GRAY);
src[50:250, 100:300] = gray;
imshow("changed image", src);

泛洪填充

洪泛算法的讲解:https://blog.csdn.net/mao0514/article/details/47041409
我们无需关注其具体算法实现,知道怎么使用就足够了。

使用floodFill填充彩色图像:

def fill_color_demo(image):copyImg = image.copy();h, w = image.shape[:2];mask = np.zeros([h+2, w+2],np.uint8);cv.floodFill(copyImg, mask, (30, 30), (0, 255, 255), (100, 100, 100), (50, 50, 50), cv.FLOODFILL_FIXED_RANGE);#填充过程:从(30,30)开始取这个像素点;颜色填充设置为(0,255, 255);#S(100,100,100),表示当前观察像素值与其部件邻域像素值或者待加入该部件的种子像素之间的亮度或颜色之负差的最大值。#(50,50,50)表示当前观察像素值与其部件邻域像素值或者待加入该部件的种子像素之间的亮度或颜色之正差的最大值。cv.imshow("fill_color_demo", copyImg);

使用floodlFill()填充灰度图像:

def fill_binary():image = np.zeros([400, 400, 3], np.uint8);image[100:300, 100:300, :] = 255;cv.imshow("fill_binary_demo", image);mask = np.ones([402, 402, 1], np.uint8);mask[101:301, 101:301]  = 0;cv.floodFill(image, mask, (200,202), (0, 0 ,140), cv.FLOODFILL_MASK_ONLY);cv.imshow("fill_binary", image);

floodFill()函数:

floodFill函数详解

[openv.org的解释](https://docs.opencv.org/4.1.0/d7/d1b/group__imgproc__misc.html#ga366aae45a6c1289b341d140839f18717)

这个函数有2个版本,我们关注有掩膜的那个版本。
我们重点强调一下,mask的大小要设置为(height+1, width+1);且Since the mask is larger than the filled image, a pixel (x,y) in image corresponds to the pixel (x+1,y+1) in the mask.

针对上述两代代码的详细分析:

  • 首先,两段代码都有mask参数,但是泛洪填充不能跨越输入掩码中的非零像素。所以在第一段代码时,我们设置了cv.FLOODFILL_FIXED_RANGE参数—(泛洪的范围时浮动的),且将mask设置为全0,所以可以对整个图片进行泛洪填充;
  • 在第二段代码时,我们设置cv.FLOODFILL_MASK_ONLY(—不会对图像有更改仅使用给定的值填充mask),将mask的对应部分设置为0(将要进行泛洪的地方设置为0),剩余部分设置为1。
  • 由此可以知道,mask的初始化和cv.FLOODFILL_MASK_ONLY/cv.FLOODFILL_FIXED_RANGE是一一对应的关系。

人脸检测-ROI与泛洪填充(5)相关推荐

  1. OpenCV+python:ROI与泛洪填充

    1,ROI 感兴趣区(Region of Interest,ROI) 是图像的一部分,它通过在图像上选择或使用诸如设定阈值(thresholding) 或者从其他文件(如矢量> 转换获得等方法生 ...

  2. python填充红色_一起学opencv-python七(ROI,泛洪填充和颜色替换)

    ROI 这个ROI是我们自己选择的,ROI就是图像的一个子集,ROI也可以说是我们需要进行操作的一个区域或者说我们选中的区域.我下面是和opencv的滑条结合了一下,就是滑动滑条,ROI的区域会跟着变 ...

  3. OpenCV之ROI和泛洪填充

    一.获取RIO区域 import cv2 as cv import numpy as np print("----------hello python----------") sr ...

  4. opencv基础篇3讲(二)-色彩空间转换像素运算ROI与泛洪填充

    色彩空间的转换 1.常见色彩空间及色彩空间转换 RGB 红色:Red,绿色:Green,蓝色:Blue HSV 色相:Hue(0-180),饱和度:Saturation(0-255),明度:Value ...

  5. 人脸检测实战进阶:使用 OpenCV 进行活体检测

    使用 OpenCV 进行活体检测 在本篇博文中,您将学习如何使用 OpenCV 执行活体检测.您将创建一个活体检测器,该检测器能够在人脸识别系统中发现假人脸并执行反人脸欺骗. 在教程的第一部分,我们将 ...

  6. OpenCV for Python之图像RIO与泛洪填充

    OpenCV for Python之图像RIO与泛洪填充 1 ROI与泛函填充 2 ROI 3 泛洪填充 Opencv4 官方文档 : https://docs.opencv.org/4.2.0/ O ...

  7. OpenCV笔记(1)(图片读取与现实、色彩空间、基础运算、均值方差、逻辑运算、泛洪填充、均值中值及自定义平滑)...

    一.图片读取和显示 import cv2 as cv# 图片读取cv.imread(img_path) car_img = cv.imread("car1.png") # 图片显示 ...

  8. [python opencv 计算机视觉零基础到实战] 八、ROI泛洪填充

    一.学习目标 了解什么是ROI 了解floodFill的使用方法 如有错误欢迎指出~ 目录 [python opencv 计算机视觉零基础到实战] 一.opencv的helloworld [[pyth ...

  9. ROI感兴趣区域提取与泛洪填充

    一.ROI提取 1.定义:ROI提取称对感兴趣区域提取. 2.作用:勾勒感兴趣的区域,可以是方框.圆.椭圆.不规则形状等. 3.应用:以视频监控领域ROI智能视频编码技术为例,具有ROI功能的摄像机可 ...

最新文章

  1. Linux环境编程--多线程
  2. 【GStreamer】gstreamer工具详解之:gst-discoverer-1.0
  3. mybatis学习笔记(3)—数据库和bean名称不一样处理方案
  4. 37signals为何砍掉中层?个人点评,高素质人才队伍工作,靠的是全体发挥综合能力,而不是靠......
  5. sublime for mac 注册码
  6. echo显示文字后不换行(sep /p 和 echo 命令的一些细节)
  7. larave 5 could not be opened: failed to open stream: Permission denied
  8. 华为关闭telnet命令_华为交换机关闭Telnet
  9. 数字通信原理笔记(一)---概述
  10. 机房搬迁实施规划方案
  11. 大白话云计算,大数据,人工智能
  12. Neno和OpenMP的性能提升验证
  13. request.getSession().setAttribute()和 request.setAttribute()
  14. 用python证明采样定理_如何理解 Nyquist 采样定理?
  15. mysql数据库之ddl语句盘点
  16. vue elementui table 复选框
  17. html跳转qq浏览器,javascript,_银联在线支付接口,qq浏览器不能跳转,javascript - phpStudy...
  18. Android系统 —— image文件解析
  19. Java菜单(菜单条、菜单和菜单项)
  20. 神经网络可以用来预测吗,如何用神经网络做预测

热门文章

  1. 南邮四年来的学校主页
  2. 开发中你不得不知的一些英文缩写(专业术语)
  3. Tomcat中设计模式
  4. 【原理】#01红外热成像仪的工作原理介绍
  5. 苹果系统无法购买服务器,梦幻西游手游iOS目前无法处理您的购买解决办法
  6. 海伦公式已知三边求面积
  7. python xlwings库对于excel单元格的操作
  8. CTFHUB log
  9. 杭电考研经验贴,0基础观看
  10. 泰勒公式求极限c语言switch,C语言利用泰勒公式构造求SIN(X),求大触帮看我的代码哪里有问题...