上位机图像处理和嵌入式模块部署(qmacvisual图像拼接)

news2024/11/24 10:30:34

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

        qmacvisual本身提供了图像拼接的功能。功能本身比较有意思的。大家如果拍过毕业照,特别是那种几百人、上千人的合照,应该就会印象比较深刻。因为拍照的时候人比较多,仅靠一次曝光,是没有办法把所有人放到相框里面的。所以,这个时候图像拼接就可以发挥出优势了。一般情况下,摄像机会进行旋转拍摄,每旋转一定角度就会拍摄一张照片,等拍摄完毕之后,通过算法就可以将这些照片合成一张大的集体照,这样就实现了最初的拍摄目的,也就是拍摄一张大合照。

1、创建工程和创建流程

        qmacvisual运行的前提就是创建工程,以及创建流程。

2、引入多张图片

        鉴于qmacvisual的获取图像插件,每次只能获取一张图片,而本次实验有三张输入图片,所以这里需要引入插件三次。每次插件配置截图中,引入相应的图片即可。

3、图像拼接

        图像拼接插件的位置,位于【图像处理】-》【图像拼接】,直接把它从树形节点拖到流程里面就可以了。双击图像拼接插件,你就可以看到这样的窗口,

        配置的部分有两个地方。第一个地方,就是添加图片链接。每单击一次添加按钮,就会多一个链接选项。我们继续单击这个链接选项,就可以关联到相应的图片。因为有三张图片参与运算,所以这里有三个链接地址。第二个地方,就是这里的拼接参数,参数越大,意味着拼接的时间越长,但匹配的质量会很高。本身插件提供的参数是0.35,我们暂且不做调整。有兴趣的同学,可以测试验证下,看看是不是如前所述,即参数越大,花费的时间越长。

        所有这些都配置完毕之后,单击执行按钮,我们就可以看到生成这样一幅长长的图像。这幅图像是由三张图像拼接而成,中间重复的部分做了拼接。整体看上去效果还是可以的。

4、图像显示

        为了显示出最终的效果,我们会增加一个图像显示的控件。在这个控件当中,会把关联地址指向图像拼接的结果图像。至于显示窗口的位置,可以根据自己的想法随意指定一个即可。

5、流程配置

        最后,为了方便大家重复这个实验,我们给出了完整的测试流程,它的截图是这样的,

        从应用场景上说,图像拼接是一门非常实用的技术,在社会生活各个方面发挥着重要的角色。也许在工业领域用的不是很多,毕竟工业领域大部分都是识别、分割和验证,但是在民用领域,特别是消费领域有着很大的市场。借助于这个算法,意味着不需要昂贵的相机,只需要重复拍摄就可以得到超长的相机图像。

        如果大家想象力再丰富一点,在相机下面有放一个电机,每隔一定角度拍摄一下,那么一圈下来就是360度,这完全是一个立体场景的效果。现在很多房产中介的app,上面会3d显示对应的房源信息,基本原理就是这个图像拼接技术。

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

基于SpringBoot的“校园志愿者管理系统”的设计与实现(源码+数据库+文档+PPT)

基于SpringBoot的“校园志愿者管理系统”的设计与实现(源码数据库文档PPT) 开发语言:Java 数据库:MySQL 技术:SpringBoot 工具:IDEA/Ecilpse、Navicat、Maven 系统展示 系统总体结构图 系统首页界面图 志愿者注册…

数据分析之POWER Piovt透视表分析

将几个数据表之间进行关联 生成数据透视表 超级透视表这里的字段包含子字段 这三个月份在前面的解决办法 1.选中这三个月份,鼠标可移动的时候移动到后面 2.在原数据进行修改 添加列获取月份,借助month的函数双击日期 选择月份这列----按列排序-----选择月…

记录rocketMQ5.+启动报错解决过程

1.根据官方文档指引下载对应的rocketMQ源码包,上传到服务器解压 2. 启动NameServer nohup sh bin/mqnamesrv & 验证namesrv是否启动成功 tail -f ~/logs/rocketmqlogs/namesrv.log The Name Server boot success… 3.启动BrokerProxy nohup sh bin/mqbroker -n …

活动图高阶讲解-14

37 00:02:26,000 --> 00:02:32,000 接下来,我们看下一个知识点,就是决策 38 00:02:32,000 --> 00:02:38,000 就是令牌的一种什么, 39 00:02:38,000 --> 00:02:42,000 一种分流, 40 00:02:42,000 --> 00:02:47,000 它走哪个流, 41 00:02:…

C语言函数间参数传递

在C语言中,函数是程序的基本组成单元之一,而参数传递则是函数间交换信息的重要方式之一。本文将探讨C语言中函数间参数传递的各种方式及其特点。 以下是我整理的关于C语言的一些入门级资料,免费分享给大家:https://m.hqyjai.net/…

怎么让ChatGPT批量写作原创文章

随着人工智能技术的不断发展,自然语言处理模型在文本生成领域的应用也日益广泛。ChatGPT作为其中的佼佼者之一,凭借其强大的文本生成能力和智能对话特性,为用户提供了一种高效、便捷的批量产出内容的解决方案。以下将就ChatGPT批量写作内容进…

GeoLite2 geoip数据库下载和使用

GeoLite2 数据库是免费的 IP 地理定位数据库,与MaxMind 的 GeoIP2 数据库相当,但准确度较低 。GeoLite2 国家、城市和 ASN 数据库 每周更新两次,即每周二和周五。GeoLite2 数据还可作为 GeoLite2 Country 和 GeoLite2 City Web 服务中的 Web …

学习transformer模型-权重矩阵Wq,Wk,Wv的困扰和解析

背景: 学习transformer模型,计算multiHead attention的时候,权重矩阵Wq,Wk,Wv给我造成了很大的困扰: 1,为啥要需要W*? 2,这个W*是从哪里来的? 搜索了各种信…

Python-VBA编程500例-027(入门级)

验证字符串能否转换(Verify Whether A String Can Be Converted)在多个实际应用场景中扮演着重要角色。常见的应用场景有: 1、数据清洗与预处理:在数据处理和分析过程中,原始数据可能包含格式错误、多余字符或不符合规范的内容。验证字符串…

『Apisix系列』破局传统架构:探索新一代微服务体系下的API管理新范式与最佳实践

文章目录 『Apisix基石篇』『Apisix入门篇』『Apisix进阶篇』『Apisix安全篇』 『Apisix基石篇』 🚀 手把手教你从零部署APISIX高性能API网关 利用Docker-compose快速部署Apache APISIX及其依赖组件,实现高效的API网关搭建通过编写RPM安装脚本来自动化安…

love 2d win 下超简单安装方式,学习Lua 中文编程 刚需!!

一、下载love 2d 参考:【Love2d从青铜到王者】第一篇:Love2d入门以及安装教程 或直接下载: 64位,现在一般电脑都可以用。 64-bit zipped 32位,很复古的电脑都可以用。 32-bit zipped 二、解压 下载好了之后,解压到…

54 npm run serve 和 npm run build 输出的关联和差异

前言 通常来说 我们开发的时候一般会用到的命令是 “npm run serve”, “npm run build” 前者会编译当前项目, 然后将编译之后的结果以 node 的形式启动一个服务, 暴露相关业务资源, 因此 我们可以通过 该服务访问到当前项目 后者是编译当前项目, 然后做一下最小化代码的优…

机器学习—— PU-Learning算法

机器学习—— PU-Learning算法 本篇博客将介绍PU-Learning算法的基本概念、基本流程、基本方法,并简单探讨Two-step PU Learning算法和无偏PU Learning算法的具体流程。最后,将通过Python代码实现一个简单的PU-Learning示例,以便更好地理解这…

动态规划——回文串问题

目录 练习1:回文子串 练习2:最长回文子串 练习3:回文串分割IV 练习4:分割回文串 练习5:最长回文子序列 练习6:让字符串成为回文串的最小插入次数 本篇文章主要学习使用动态规划来解决回文串相关问题&…

【C#】知识点速通

前言: 笔者是跟着哔站课程(Trigger)学习unity才去学习的C#,并且C语言功底尚存,所以只是简单地跟着课程将unity所用的C#语言的关键部分进行了了解,然后在后期unity学习过程中加以深度学习。如需完善的C#知识…

JDBC远程连接mysql报错:NotBefore: Sat Mar 30 16:37:41 UTC 2024

虚拟机docker已经部署了mysql,用navicat可以直接远程连接,datagrip却不能,如图: 需要在最后加上 ?useSSLfalse , 如:jdbc:mysql://192.168.30.128:3306?useSSLfalse navicat不用加的原因是没有使用jdbc连接&#x…

实验二 pandas库绘图以及数据清洗

1.1pandas验证操作 1、验证以下代码,并将结果附截图 import pandas as pd A[1,3,6,4,9,10,15] weight[67,66,83,68,79,88] sex[女,男,男,女,男, 男] S1pd.Series(A)#构建S1序列 print(S1) S2pd.Series(weight)#构建S2序列 print(S2) S3pd.Series(sex)#构建S3序列 p…

第3章.引导ChatGPT精准角色扮演:高效输出专业内容

角色提示技术 角色提示技术(role prompting technique),是通过模型扮演特定角色来产出文本的一种方法。用户为模型设定一个明确的角色,它就能更精准地生成符合特定上下文或听众需求的内容。 比如,想生成客户服务的回复…

STM32的DMA

DMA(Direct memory access)直接存储器存取,用来提供在外设和存储器之间或者存储 器和存储器之间的高速数据传输,无须CPU干预,数据可以通过DMA快速地移动,这就节 省了CPU的资源来做其他操作。 STM32有两个DMA控制器共12个通道(DMA1有7个通道…

(八)目标跟踪中参数估计(似然、贝叶斯估计)理论知识

目录 前言 一、统计学基础知识 (一)随机变量 (二)全概率公式 (三)高斯分布及其性质 二、似然是什么? (一)概率和似然 (二)极大似然估计 …