rc_visard 3D Stereo Senso

1 简介

rc_visard 3D立体视觉传感器
在这里插入图片描述

支持的接口标准

  • GenICam Generic Interface for Cameras
  • GigE Gigabit Ethernet

词汇表

SGM semi-global matching 半全局匹配
SLAM Simultaneous Localization and Mapping 即时定位与地图构建

2 安全

3 硬件规格

坐标系

rc_visard的坐标帧原点被定义为左相机镜头的出口瞳孔。帧称为传感器坐标帧或相机坐标帧。

传感器/相机框架和机器人坐标系之间的正确偏移量可以通过手眼校准程序进行校准

4 安装

设备发现

rcdiscover-gui
在这里插入图片描述

5 测量原理

5.1 立体视觉

视差越大,物体距离相机越近。

计算三维信息需要的模块

  • Camera
    该模块负责捕获同步图像对,并将其转换为接近理想相机拍摄的图像(校正)。
  • Stereo matching
    该模块使用半全局匹配计算校正后的立体图像对的视差。
  • Camera calibration
    该模块使用户能够重新校准rc_visard的立体相机。

6 软件模块

rc_visard的几个机载软件模块

  • 3D相机模块
    获取图像对并计算3D深度信息,如视差,误差和置信度图像,也可以通过rc_visard的GigE Vision/GenICam接口访问。
  • 导航模块
  • 检测模块
    提供多种检测功能,如抓点计算和目标检测。
  • 配置模块
    用户能够执行校准和为特定的应用程序配置rc_visard。
  • 数据库模块
    使用户能够配置所有其他模块可用的全局数据,例如负载载体,感兴趣的区域和夹具。

6.1 3D相机模块

6.1.1 相机

6.1.1.3 参数

6.1.2 立体匹配

6.1.2.1 计算视差图像

校正后,保证一个对象点投影到左右图像的同一像素行上。右侧图像中该点的像素列始终小于或等于左侧图像中同一点的像素列。术语“视差”表示左右图像像素列之间的差异,表示物体点离相机的深度或距离。视差图像存储左侧相机图像中所有像素的视差值。

视差越大,物体点越近。视差为0表示物体的投影点在同一图像列,目标点在无限远。通常,有些像素的视差无法确定。这种情况出现在物体左侧被遮挡,因为从右边的相机看不到这些区域。此外,差没有纹理的区域无法确定视差。无法确定视差的像素被标记为无效视差值0。区分无效视差测量值和视差测量值为0(对于无限远的物体),后者的视差值被设置为大于0的尽可能小的视差值。

为了计算视差值,立体匹配算法必须在左右相机图像中找到相应的目标点。这些点代表场景中相同的物体点。对于立体匹配,rc_visard使用SGM(半全局匹配),它提供了快速的运行时间和很高的精度,特别是在物体边界,精细结构和弱纹理区域。

任何立体匹配方法的一个关键要求是图像中纹理的存在,即由于场景中的图案或表面结构而导致的图像强度变化。在完全没有纹理的区域,例如没有任何结构的白墙,视差值要么无法计算,要么结果错误或置信度低(参见置信度和误差图像,第6.1.2.3节)。场景中的纹理不应该是人为的、重复的图案,因为这些结构可能会导致模糊,从而导致错误的视差测量。

当处理纹理较差的对象或在无纹理的环境中工作时,可以使用外部模式投影仪将静态人工纹理投影到场景中。这种模式应该是随机的,不包含重复的结构。rc_visard提供IOControl模块(参见IO和投影仪控制,章节6.4.4)作为可选的软件模块,可以控制连接到传感器的图案投影仪。

6.1.2.2
6.1.2.3 置信和误差图像

对于每个视差图像,还提供了一个误差图像和一个置信图像,给出了每个视差值的不确定性度量。这些图像与视差图像具有相同的分辨率和相同的帧速率。误差图像包含视差误差 d e p s {d}_{eps} deps,其像素与视差图像中相同图像坐标处的视差值相对应。置信度图像中对应的置信度值𝑐在0 ~ 1之间。

置信度定义为真实视差值在测量视差𝑑周围误差的三倍区间内的概率,即[𝑑− 3 d e p s {3d}_{eps} 3deps,𝑑+ 3 d e p s {3d}_{eps} 3deps]。因此,具有误差和置信值的视差图像可用于需要概率推理的应用。与无效视差测量相对应的置信度和误差值将为0。

6.4 配置模块

6.4.1 手眼标定

6.4.2 碰撞检测

6.4.3 相机标定

6.4.4 IO和投影仪控制

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

linux信号相关概念

signal 信号引入什么是信号?如何产生信号?通过按键产生信号调用系统函数向进程发信号系统调用函数发送信号的流程: 由软件条件产生信号软件发送信号的流程: 硬件异常产生信号硬件异常的流程: Deliver、Pending、Block概念信号在内…

【Ne4j图数据库入门笔记1】图形数据建模初识

1.1 图形建模指南 图形数据建模是用户将任意域描述为节点的连接图以及与属性和标签关系的过程。Neo4j 图数据模型旨在以 Cypher 查询的形式回答问题,并通过组织图数据库的数据结构来解决业务和技术问题。 1.1.1 图形数据模型介绍 图形数据模型通常被称为对白板友…

明文scheme拉起此小程序

微信开发文档说明:https://developers.weixin.qq.com/miniprogram/dev/framework/open-ability/url-scheme.html 1、开发者无需调用平台接口,在MP平台->设置->隐私与安全->明文Scheme拉起此小程序声明后,可自行根据如下格式拼接app…

【静态分析】软件分析课程实验A1-活跃变量分析和迭代求解器

1 作业导览 为 Java 实现一个活跃变量分析(Live Variable Analysis)。实现一个通用的迭代求解器(Iterative Solver),用于求解数据流分析问题,也就是本次作业中的活跃变量分析。 Live Variable Analysis 详…

facenet人脸检测+人脸识别+性别识别+表情识别+年龄识别的C++部署

文章目录 一. 人脸检测二.人脸识别facenet2.1 训练人脸识别模型2.2 导出ONNX2.3 测试 三.人脸属性(性别、年龄、表情、是否戴口罩)3.1 训练3.2 导出ONNX3.3 测试 四. 集成应用五、Jetson 部署5.1 NX5.2 NANO 一. 人脸检测 代码位置:1.detect …

深入理解数据结构第五弹——排序(2)——快速排序

排序(1):深入了解数据结构第四弹——排序(1)——插入排序和希尔排序-CSDN博客 前言: 在前面我们已经讲过了几种排序方式,他们的效率有快有慢,今天我们来学习一种非常高效的排序方式…

【windows-搭建Ubuntu22LTS】

一、环境要求 1. windows版本要求 至少Windows 10 2020年5月(2004) 版, Windows 10 2019年5月(1903) 版,或者 Windows 10 2019年11月(1909) 版 2. 控制面板开启相关的程序(需要重启) 二、Microsoft store安装unbuntu 下载后直接运行(稍微等会&#…

Linux软件安装和部署Java代码

文章目录 1.软件安装1.1.软件安装方式1.2.常用软件安装1.2.1 安装jdk1.2.2 安装Tomcat1.2.3 安装MySQL1.2.4 安装lrzsz 2.项目部署2.1.手工部署项目2.2 通过Shell脚本自动部署项目 1.软件安装 1.1.软件安装方式 (1)二进制发布包安装: 软件已…

基于SSM的学校在线考试系统的设计与实现

功能需求 管理员模块 管理员模块是整个学校在线考试系统中最为重要的管理者,能够对网站内的各种信息进行管理,能够对教师、学生的个人资料进行管理,对于已经离校的学生将其剔除考试名单,将新入校的学生纳入到考试名单中。对于入…

用 element ui 实现季度选择器

由于在数据项目中经常以各种时间条件查询数据,所以时间选择器(DatePicker)组件是很常用的组件。但是在我使用的 Element UI 中,缺少了季度选择器的功能。 简易实现 一开始我根据时间范围使用 select 去遍历,如 2024-Q1、2023-Q4…

win/mac达芬奇19下载:DaVinci Resolve Studio 19

DaVinci Resolve Studio 19 是一款功能强大的视频编辑和调色软件,广泛应用于电影、电视和网络节目的后期制作。这款软件不仅提供了专业的剪辑、调色和音频处理工具,还引入了全新的DaVinci Neural Engine AI工具,对100多项功能进行了大规模升级…

美化博客文章(持续更新)

🎁个人主页:我们的五年 🔍系列专栏:游戏实现:贪吃蛇​​​​​​ 🌷追光的人,终会万丈光芒 前言: 该文提供我的一些文章设计的一些方法 目录 1.应用超链接 1.应用超链接

差速机器人模型LQR 控制仿真——路径模拟

LQR路径跟踪要求路径中带角度,即坐标(x,y,yaw),而一般我们的规划出来的路径不带角度。这里通过总结相关方法,并提供一个案例。 将点路径拟合成一条完整的线路径算法 将点路径拟合成一条完整的线路径是一个常见的问题…

【Java开发指南 | 第十五篇】Java Character 类、String 类

读者可订阅专栏:Java开发指南 |【CSDN秋说】 文章目录 Java Character 类转义序列 Java String 类连接字符串 Java Character 类 Character 类是 Java 中用来表示字符的包装类,它提供了一系列静态方法用于对字符进行操作,其主要分为静态方法…

06 JavaScript学习:语句

JavaScript 语句是用来执行特定任务或操作的一组指令。它可以包括变量声明、条件语句、循环语句、函数调用等。JavaScript 语句以分号结尾,每个语句都会被解释器执行。 分号 ; 在JavaScript中,分号(;)用于表示语句的结束。尽管在…

python爬虫-----深入了解 requests 库(第二十五天)

🎈🎈作者主页: 喔的嘛呀🎈🎈 🎈🎈所属专栏:python爬虫学习🎈🎈 ✨✨谢谢大家捧场,祝屏幕前的小伙伴们每天都有好运相伴左右,一定要天天…

【汇编语言】初识汇编

【汇编语言】初识汇编 文章目录 【汇编语言】初识汇编前言由机器语言到汇编语言机器语言与机器指令汇编语言与汇编指令汇编语言程序示例 计算机组成指令和数据的表示计算机的存储单元计算机的总线 内存读写与地址空间CPU对存储器的读写内存地址空间 总结 前言 为什么要学习汇编…

Numpy重修系列(一) --- 初识Numpy

一、为什么使用Numpy? 1.1、简介 Python科学计算基础包,提供 多维数组对象 、派生对象(掩码数组、矩阵) 数组的快速操作(数学计算、逻辑、形状变化、排序、选择、输入输出、离散傅里叶变换、基本线性代数、基本统计运…

数据分析案例-中国黄金股票市场的EDA与价格预测

🤵‍♂️ 个人主页:艾派森的个人主页 ✍🏻作者简介:Python学习者 🐋 希望大家多多支持,我们一起进步!😄 如果文章对你有帮助的话, 欢迎评论 💬点赞&#x1f4…

【数据结构】单链表经典算法题的巧妙解题思路

目录 题目 1.移除链表元素 2.反转链表 3.链表的中间节点 4.合并两个有序链表 5.环形链表的约瑟夫问题 解析 题目1:创建新链表 题目2:巧用三个指针 题目3:快慢指针 题目4:哨兵位节点 题目5:环形链表 介绍完了…
最新文章