0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

CV学习中的ROI与泛洪填充

深度学习自然语言处理 来源:深度学习自然语言处理 作者:云时之间 2020-11-05 09:19 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

一:ROI

ROI(region of interest),中文翻译过来就是感兴趣区域,在机器视觉、图像处理中,从被处理的图像以方框、圆、椭圆、不规则多边形等方式勾勒出需要处理的区域,这一部分区域被我们称之为感兴趣区域。

ROI选定的这个区域一般是我们所关注的重点,圈定该区域后我们可以进行进一步的处理,在一定程度上可以减少工作量。

ROI主要应用在视频监控领域,最常见的为ROI智能视频编码技术,具有ROI功能的摄像机可以让用户选择画面中感兴趣的区域,启用ROI功能后,重要的或者移动的区域将会进行高质量无损编码, 而对那些不移动,不被选择的区域降低其码率和图像质量,进行标准清晰度视频压缩,甚至是不传输这部分区域视频,达到节省网络带宽占用和视频存储空间。

现在我们使用OpenCV来进行实操:

在代码中,我们选择 选择50:180行、100:220列区域作为截取对象,首先先生成灰度图,这里的灰度图是单通道图像,后续将单通道图像转换为三通道RGB灰度图,因为只有三通道的backface才可以赋给三通道的src,有一点需要注意,COLOR_RGB2GRAY是把三通道RGB对象转换为单通道灰度对象!!!

得到结果如下:

可以看到Windows的logo被灰色圈出,这一个logo可以被称之为我们的ROI区域。

二:泛洪填充

泛洪填充算法(Flood Fill Algorithm),泛洪填充算法又称洪水填充算法,这是在很多图形绘制软件中常用的填充算法,最熟悉不过就是windows paint的油漆桶功能。算法的原理很简单,就是从一个点开始附近像素点,填充成新的颜色,直到封闭区域内的所有像素点都被填充新颜色为止。泛红填充实现最常见有四邻域像素填充法,八邻域像素填充法,基于扫描线的像素填充方法。根据实现又可以分为递归与非递归(基于栈)。

我们可以理解为泛洪填充是一种彩色图像填充。

①:FLOODFILL_FIXED_RANGE – 改变图像,泛洪填充

代码如下:

在代码里,有几个点需要注意

1:我们设置的图片(mask)都是为uin8类型的单通道阵列,另外为何mask中需要+2,因为当从0行0列开始泛洪填充扫描时,mask多出来的2可以保证扫描的边界上的像素都会被处理。

2:floodFill函数 floodFill(image, mask, seedPoint, newVal[, loDiff[, upDiff[, flags]]])

Image:表示输入/输出1或3通道,8位或浮点图像。

Mask:表示掩码,该掩码是单通道8位图像,比image的高度多2个像素,宽度多2个像素。填充时不能穿过输入掩码中的非零像素。

seedPoint:表示泛洪算法(漫水填充算法)的起始点。

newVal参数表示在重绘区域像素的新值。

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

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

flags参数:操作标志符,包含三部分:

低八位(0~7位):用于控制算法的连通性,可取4(默认)或8。

中间八位(8~15位):用于指定掩码图像的值,但是如果中间八位为0则掩码用1来填充。

高八位(16~32位):可以为0或者如下两种标志符的组合:

LOODFILL_FIXED_RANGE:表示此标志会考虑当前像素与种子像素之间的差,否则就考虑当前像素与相邻像素的差。

FLOODFILL_MASK_ONLY:表示函数不会去填充改变原始图像,而是去填充掩码图像mask,mask指定的位置为零时才填充,不为零不填充。

在图像中,我们以(30,30)为起点开始计算:

得到结果如下:

参考文章:

https://www.cnblogs.com/little-monkey/p/7598529.html

责任编辑:xj

原文标题:【CV学习笔记】ROI与泛洪填充

文章出处:【微信公众号:深度学习自然语言处理】欢迎添加关注!文章转载请注明出处。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 图像处理
    +关注

    关注

    29

    文章

    1352

    浏览量

    59784
  • 机器视觉
    +关注

    关注

    166

    文章

    4852

    浏览量

    126763
  • CV
    CV
    +关注

    关注

    0

    文章

    54

    浏览量

    17694

原文标题:【CV学习笔记】ROI与泛洪填充

文章出处:【微信号:zenRRan,微信公众号:深度学习自然语言处理】欢迎添加关注!文章转载请注明出处。

收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    图像上两个多边形的ROI区域,如何获得这两个ROI区域重合部分的ROI

    labview,图像上两个多边形的ROI区域,如何获得这两个ROI区域重合部分的ROI
    发表于 03-16 14:03

    在芯片封装保护,围坝填充胶工艺具体是如何应用的

    围坝填充胶(Dam&Fill,也称Dam-and-Fill或围堰填充)工艺是芯片封装中一种常见的底部填充(Underfill)或局部保护技术,主要用于对芯片、焊点或敏感区域提供机械支撑
    的头像 发表于 12-19 15:55 2162次阅读
    在芯片封装保护<b class='flag-5'>中</b>,围坝<b class='flag-5'>填充</b>胶工艺具体是如何应用的

    汉思底部填充胶:提升芯片封装可靠性的理想选择

    解决方案,在半导体封装领域占据了重要地位。底部填充胶主要用于BGA(球栅阵列)、CSP(芯片级封装)和FlipChip(倒装芯片)等先进封装工艺,通过填充芯片与
    的头像 发表于 09-05 10:48 3076次阅读
    汉思底部<b class='flag-5'>填充</b>胶:提升芯片封装可靠性的理想选择

    【嘉楠堪智K230开发板试用体验】高校竞赛-2025电赛-E题

    四个角点,及封装的参数类似opencvcv2.findContours等相关函数,可参考。 # -*- coding: utf-8 -*- \"\"\" @Brief
    发表于 08-21 15:32

    汉思新材料:底部填充胶工艺需要什么设备

    在底部填充胶工艺,设备的选择直接影响填充效果、生产效率和产品可靠性。以下是关键设备及其作用,涵盖从基板处理到固化检测的全流程:汉思新材料:底部填充胶工艺
    的头像 发表于 08-15 15:17 2128次阅读
    汉思新材料:底部<b class='flag-5'>填充</b>胶工艺<b class='flag-5'>中</b>需要什么设备

    找正方形的代码我把roi删除过后能识别到正方形,加上roi后就识别不出来,为什么?

    找正方形的代码我把roi删除过后能识别到正方形,加上roi后就识别不出来,更改roi为更大更稳定的范围也识别不到,麻烦解答一下,谢谢
    发表于 08-14 06:23

    【GM-3568JHF开发板免费体验】OpenCV 视频目标跟踪 ( CamShift)

    的实现 在 OpenCV ,CamShift 算法通过 cv2.CamShift() 函数实现。 # -*- coding: utf-8 -*- import cv2 imp
    发表于 08-09 13:19

    抖音电商API粉丝行为分析,精准营销ROI翻番!

    在当今竞争激烈的电商环境,抖音电商平台凭借其庞大的用户基础和互动性,成为品牌营销的热土。通过利用抖音提供的API(应用程序接口),商家可以深度分析粉丝行为数据,实现精准营销策略,从而显著提升投资
    的头像 发表于 08-01 14:39 1272次阅读
    抖音电商API粉丝行为分析,精准营销<b class='flag-5'>ROI</b>翻番!

    【Sipeed MaixCAM Pro开发板试用体验】+ 03 + 视觉寻线

    = cv2.morphologyEx(binary1, cv2.MORPH_DILATE, kernel3, iterations=1) #在图像上画出固定的5个ROI区域,便于观察
    发表于 07-24 20:21

    汉思新材料:底部填充胶二次回炉的注意事项

    底部填充胶(Underfill)是一种在电子组装中用于增强焊点可靠性的工艺,特别是在倒装芯片封装。针对底部填充胶(Underfill)进行二次回炉(通常发生在返修、更换元件或后道工序需要焊接
    的头像 发表于 07-11 10:58 1546次阅读
    汉思新材料:底部<b class='flag-5'>填充</b>胶二次回炉的注意事项

    【正点原子STM32MP257开发板试用】项目的实现

    = recognizer.predict(face_roi) if confidence > 85: cv2.putText(frame, \"Stranger
    发表于 07-06 17:09

    明晚开播 |数据智能系列讲座第7期:面向高化能力的视觉感知系统空间建模与微调学习

    鹭岛论坛数据智能系列讲座第7期「面向高化能力的视觉感知系统空间建模与微调学习」明晚8点精彩开播期待与您云相聚,共襄学术盛宴!|直播信息报告题目面向高化能力的视觉感知系统空间建模与微调学习
    的头像 发表于 06-24 08:01 1295次阅读
    明晚开播 |数据智能系列讲座第7期:面向高<b class='flag-5'>泛</b>化能力的视觉感知系统空间建模与微调<b class='flag-5'>学习</b>

    半导体器件CV测量技术解析

    一代材料和器件的研究和开发CV测量的重要性越来越高。因此,必须要了解CV测量的基础。今天就聊一聊CV测量的基础和测量的小技巧。一、CV
    的头像 发表于 06-01 10:02 2124次阅读
    半导体器件<b class='flag-5'>CV</b>测量技术解析

    苹果手机应用到底部填充胶的关键部位有哪些?

    苹果手机应用到底部填充胶的关键部位有哪些?苹果手机,底部填充胶(Underfill)主要应用于需要高可靠性和抗机械冲击的关键电子元件封装部位。以下是其应用的关键部位及相关技术解析:手机主板芯片封装
    的头像 发表于 05-30 10:46 1320次阅读
    苹果手机应用到底部<b class='flag-5'>填充</b>胶的关键部位有哪些?

    直播预约 |数据智能系列讲座第7期:面向高化能力的视觉感知系统空间建模与微调学习

    鹭岛论坛数据智能系列讲座第7期「面向高化能力的视觉感知系统空间建模与微调学习」6月25日(周三)20:00精彩开播期待与您云相聚,共襄学术盛宴!|直播信息报告题目面向高化能力的视觉感知系统空间
    的头像 发表于 05-29 10:04 812次阅读
    直播预约 |数据智能系列讲座第7期:面向高<b class='flag-5'>泛</b>化能力的视觉感知系统空间建模与微调<b class='flag-5'>学习</b>