上位机图像处理和嵌入式模块部署(qmacvisual之ROI设定)

【 声明:版权所有,欢迎转载,请勿用于商业用途。 联系信箱:feixiaoxing @163.com】

        ROI,全称是region of interest,也就是感兴趣区域。这里面一般分成两种情况,一种是所有的算法都依赖于这个ROI,那么这个时候最好直接把图像裁剪一下。因为安装的时候,可能camera的视场角比较大,但是实际有效的数据范围并没有那么大,所以这个时候裁剪一下图片其实是不错的选择,还能提高图像的处理效率,毕竟处理的数据量一下子小了很多。另外一种,就是特定算法的ROI,这种情况下就不需要裁剪图片了,直接在某一种算法下面设定ROI区域就行。

1、裁剪图片

        在qmacvisual下面,裁剪图片的插件位于【图像处理】-》【剪切图像】。它的用途,就是直接对输入的图像进行裁剪。因为安装的缘故,或者希望提高处理效率的原因,这种裁剪在很多情况下,都是很有必要的。单击一下插件,你就可以看到这样的弹窗,

        需要配置的地方有两处,一处是输入图像,就是截图里面的输入图像。还有一处就是ROI对象中的配置,选中使用ROI,添加对应的图形就可以。目前选择的方式总共有四种,分别是矩形、旋转矩形、圆形和多边形。

        我们以矩形为例,单击后就会在右侧的窗口中出现一个矩形。这个时候如果需要移动矩形的位置,先把鼠标move到中间实心正方形的位置,按下去自由移动就可以了。

2、单个算法的ROI设置

        除了上面说的这种图片裁剪的方法,还有一种处理就是只在单个插件中,对区域进行设置。这种设置一般是来自于现场处理的情况来处置,多半来自于行业背景知识或者是积累的经验数值。比如说【轮廓特征选择】中的ROI设置,它的截图就是这样的,

        我们发现这部分设置和之前的裁剪图片是非常相似的。一样的勾选框,一个的图形选择,还有一样的按钮选择。可以添加ROI,也可以删除ROI。当然这种区域的选择,一般需要和客户进行沟通和商量,本身就是一些经验数值,需要进行单独标定的。并且不同的行业,不同的使用者,在什么地方标注兴趣区域,怎么标定兴趣区域,这都是有门道和说法的。对于图像算法的开发同学来说,他只需要提供相关的功能就好了。

3、qmacvisual留下的一个遗憾

        还有一个功能,qmacvisual没有提供,蛮遗憾的,但是实际生产中确实用蛮多的。那就是图片的缩小。现在的sensor拍摄的图片普遍像素都很高,图片也很大。这种情况下我们需要的可能不是兴趣区域,而是需要把原来的图像进行缩小处理,比如图片缩小为原来的1/4、1/9等等。只要原来的图片自带的信息量足够就可以。但是目前为止,在qmacvisual没有找到相关的功能。这意味着,如果需要这个功能,就要自己去单独设计和开发了。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/564744.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

政安晨:【深度学习部署】—— TensorFlow Extended(TFX)介绍

政安晨的个人主页:政安晨 欢迎 👍点赞✍评论⭐收藏 收录专栏: TensorFlow与Keras实战演绎机器学习 希望政安晨的博客能够对您有所裨益,如有不足之处,欢迎在评论区提出指正! 前言 TensorFlow Extended(TFX&a…

中断(NVIC)的使用--EXTI--TIM

目录 中断是什么 轮询 中断 中断调用情况 中断的分类 内部中断(TIM、UART等) tim.c tim.h 外部中断EXTI exti.c exti.h 中断是什么 在处理事件的时候有两种方式:轮询和中断。 轮询 顾名思义,就是每轮都询问一次。比如…

python—接口编写部分

最近准备整理一下之前学过的前端小程序知识笔记,形成合集。顺便准备学一学接口部分,希望自己能成为一个全栈嘿嘿。建议关注收藏,持续更新技术文档。 目录 前端知识技能树http请求浏览器缓存 后端知识技能树python_api:flaskflask…

Qt——2D画图

基础画图函数 矩形 painter.drawRect(50,50,200,100); 圆角矩形 painter.drawRoundRect(50,50,200,200,50,50); xRadius和yRadius分别以矩形宽度和高度的一半的百分比指定,并且应该在0.0到100.0的范围内 弧线 painter.drawArc(50,50,200,200, -90*16, 90*16);…

【Linux】对进程地址空间的理解

一、关于进程地址空间的简单理解 进程地址空间其实是分了很多个区域的,区域划分的本质就是区域内的各个地址都是可以使用的。如同下面这个图所示: 无论是环境变量的地址还是环境变量表的地址,所存放的地址都在栈的上部。这里的已初始化数据和…

【JavaEE -- 网络初识】

网络初识 1. 局域网和广域网1.1 局域网(LAN)1.2 广域网WAN 2. 网络通信基础2.1 IP地址2.2 端口号 3. 协议 -- 重点3.1 网络通信协议拆分成多层3.2 TCP/IP 五层网络协议 4. 封装和分用4.1 封装过程4.2 分用过程4.3 网络传输的数据单位 5. 网络编程中的客户…

34.网络游戏逆向分析与漏洞攻防-游戏网络通信数据解析-登录数据包的监视与模拟

免责声明:内容仅供学习参考,请合法利用知识,禁止进行违法犯罪活动! 如果看不懂、不知道现在做的什么,那就跟着做完看效果 内容参考于:易道云信息技术研究院VIP课 上一个内容:33.游戏登录数据…

阿里云-零基础入门NLP【基于深度学习的文本分类3-BERT】

文章目录 学习过程赛题理解学习目标赛题数据数据标签评测指标解题思路BERT代码 学习过程 20年当时自身功底是比较零基础(会写些基础的Python[三个科学计算包]数据分析),一开始看这块其实挺懵的,不会就去问百度或其他人,当时遇见困难挺害怕的…

pytorch如何向tensor结尾添加元素或维度--torch.cat()、torch.unsqueeze()的用法

目录 示例1 矢量后增加元素 示例2 tensor维度增加1 示例3 另一种替代unsqueeze的方法 示例1 矢量后增加元素 使用torch.cat()函数 ptorch.Tensor([1,5,0]) ptorch.cat((p, torch.Tensor([4])), 0) 结果: 这里,cat的第一个输入变量用()包绕&#xf…

mysql 存储引擎 基本介绍

目录 一 存储引擎概念介绍 (一)存储引擎概念 (二)MySQL常用的存储引擎 (三)存储引擎运作方式 二 MyISAM 存储引擎介绍 (一) MyISAM 存储引擎特点 1,不支持…

道路与航线

一道类似缩点的好题&#xff0c;先按道路缩点 然后将缩点以后的图按照航线做DAG 在DAG上先跑topsort 在每一个团内部跑dijkstra&#xff0c;同时更新top点 很有意思的一道题目 #include<bits/stdc.h> using namespace std; using ll long long; const int N 3e510; co…

chatgpt和 github copilot chat哪个更强

chatgpt大家应该都不陌生 ChatGPT 是由 OpenAI 开发的一种基于 GPT&#xff08;生成式预训练模型&#xff09;的聊天机器人。它可以生成语言上下文相关的响应&#xff0c;从而进行自然语言对话。ChatGPT 利用大规模的语言数据进行预训练&#xff0c;并通过微调或在线学习来适应…