27.Isaac教程--局部建图

news/2023/5/28 7:11:35

26.Isaac教程-局部建图

在这里插入图片描述

ISAAC教程合集地址: https://blog.csdn.net/kunhe0512/category_12163211.html

局部地图是机器人周围直接环境的基于网格的简化表示。 这些简化的世界表示对于安全地规划机器人附近的静态和动态障碍物至关重要。 局部建图管道将来自连接到机器人的不同传感器的传感器消息(如 FlatscanProto)作为输入。 每个传感器都遵循独立的发射模式,并且可以围绕机器人任意定向。 局部建图管道的输出是一个统一的距离图,由规划堆栈使用。 距离图是一个单通道图像,描述了机器人与网格图上最近障碍物的距离。

证据网格图

为了融合来自不同传感器的数据并生成统一的地图,使用了一种基于中间网格的表示形式,称为证据网格图。 Dempster-Shafer 理论有助于在机器人周围构建一个占用网格,其中每个单元格包含三个浮点数:一个单元格是自由的信念质量,一个单元格被占用的信念质量和被分配为不确定的剩余质量。 每个传感器消息都被解析成一个证据网格图,所有这些单独的网格图融合在一起,构建一个统一的环境证据网格图。

Evidence Grid Map 消息作为三通道 ImageProto 消息传输,可以使用 EvidenceGridMapViewer codelet 查看。

一个有代表性的工厂环境及其对应的统一证据网格图如下所示:

白色代表空闲单元格,黑色代表占用单元格,绿色代表不确定单元格。

架构

本地构图管道的架构如下所示:

  • 每个证据图的结构是通过其格定义来定义的。 网格指定证据网格图的机器人中心、单元格大小、维度和框架。 可以更改相应 LatticeGenerator codelet 中的参数以更改相应证据网格图的结构。

  • 收到平面扫描消息后,RangeScanToEvidenceMap 通过鸟瞰证据网格图表示范围值。 命中点之前的所有网格单元都标记为空闲,而命中点之外的网格单元标记为不确定。 lattice proto 指定传感器在网格地图上的中心,并帮助可视化传感器范围值相对于它自己的格子。

  • 一旦生成传感器证据网格,它就会与 EvidenceMapFusion codelet 中先前时间步计算的统一网格融合。 最后计算的融合地图根据机器人在刻度之间的相对运动进行转换。 传感器地图根据传感器相对于机器人的对齐方式进行转换(如机器人模型中指定的那样)。 然后将两个转换后的地图堆叠起来,并融合它们相应的证据网格值(在必要时进行插值)。 可以通过将 ISAAC_PARAM(FusionOperator, fusion_operator) 设置为四个字符串之一来使用四个融合规则之一:“pcr6”(默认)、“dempster_shafer”、“josang_average”、“josang_cumulative”。

    注意

    目前,PCR6 融合规则是 CUDA 加速的,结果比同等的基于 CPU 的融合实现至少快 4 倍。

  • EvidenceMapInpaint 使用所需的证据质量值绘制证据网格图中的区域。 例如,如果传感器配置有盲点,则可以通过此小代码手动设置这些区域中的值。

  • EvidenceToBinaryMap 根据空闲类和占用类的参数化阈值将证据图转换为二进制图。

  • BinaryToDistanceMap codelet 将二进制映射转换为距离映射以供规划器使用。

更多精彩内容:
https://www.nvidia.cn/gtc-global/?ncid=ref-dev-876561

在这里插入图片描述

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

如若内容造成侵权/违法违规/事实不符,请联系郑州代理记账网进行投诉反馈,一经查实,立即删除!

相关文章

CMOS Sensor的调试经验分享-转载

CMOS Sensor的调试经验分享 CMOS Sensor的调试经验分享      我这里要介绍的就是CMOS摄像头的一些调试经验。   首先,要认识CMOS摄像头的结构。我们通常拿到的是集成封装好的模组,一般由三个部分组成:镜头、感应器和图像信号处理器构成…

文字点选验证码的坐标获取

前言 本文主要对一般的文字点选验证码图片进行坐标获取,起初碰到这类型验证也是大多采用第三方平台进行定位,所以这次也想挑战一下。本次学习中参考了很多资料,也有自己的思考🤔对本人小白来说也是次小突破吧!希望对亲…

【STM32】LCD液晶显示

🐱作者:一只大喵咪1201 🐱专栏:《STM32学习》 🔥格言:你只管努力,剩下的交给时间! LCD显示📺LCD简介📺TFTLCD驱动原理📺ILI9341 液晶控制器简介&…

简单聊聊柳伟卫的《鸿蒙HarmonyOS应用开发从入门到精通》这本书

柳伟卫所著的《鸿蒙HarmonyOS应用开发从入门到精通》一书由北京大学出版社出版,已经于2022年4月上市。本文希望与读者朋友们分享下这本书里面的大致内容。 封面部分 首先是介绍封面部分。 《鸿蒙HarmonyOS应用开发从入门到精通战》封面部分是采用了全黑设计&#…

初探 C# GPU 通用计算技术

GPU 的并行计算能力高于 CPU,所以最近也有很多利用 GPU 的项目出现在我们的视野中,在 InfoQ 上看到这篇介绍 Accelerator-V2 的文章,它是微软研究院的研究项目,需要注册后才能下载,感觉作为我接触 GPU 通用运算的第一…

pycharm运行模型时怎么设置权重?_用通用的语义分割模型实现裂缝检测

前期试错说来也是曲折,先是找了一篇PSPNet训练自己样本集的博文(如下),兴冲冲以为很快就可以搞定https://blog.csdn.net/ziyouyi111/article/details/80416935​blog.csdn.net用的是TensorFlow的框架下该项目hellochick/PSPNet-te…

你不能不知道的六种 Python 图像库的图片读取方法总结

目录一、前言二、opencv——cv2.imread三、PIL——PIL.Image.open四、matplotlib——matplotlib.image.imread五、scipy.misc——scipy.misc.imread六、skimage——skimage.io.imread七、Tensorflow——tf.image.decode八、总结#、参考文章一、前言 在研究深度学习计算机视觉的…

基础算法--计算几何

一、引言计算机的出现使得很多原本十分繁琐的工作得以大幅度简化,但是也有一些在人们直观看来很容易的问题却需要拿出一套并不简单的通用解决方案,比如几何问题。作为计算机科学的一个分支,计算几何主要研究解决几何问题的算法。在现代工程和…

叉积与点积的运用

叉积与点积的运用 http://blog.csdn.net/hintonic/article/details/7837713 http://acm.bupt.edu.cn/dahao/wiki/index.php/4.2叉积与点积的运用 http://zh.wikipedia.org/wiki/叉积 http://dev.gameres.com/Program/Abstract/Geometry.htm 怒火之袍   计算几何算法概览 …

霍夫线/圆变换从原理到源码详解

1 简述2 标准霍夫线变换原理2.1 霍夫变换直线的方程2.2 霍夫空间2.3 检测直线的方法2.4 一个例子 3 霍夫线变换的算法流程3.1 标准霍夫线变换算法流程3.2 统计概率霍夫变换算法流程 4 OpenCV中的霍夫变换函数4.1标准霍夫变换HoughLines()函数4.2 统计概率霍夫变换(HoughLinesP)…

【计算机视觉】霍夫线/圆变换从原理到源码详解

【计算机视觉】霍夫线/圆变换从原理到源码详解 目录 1 简述2 标准霍夫线变换原理2.1 霍夫变换直线的方程2.2 霍夫空间2.3 检测直线的方法2.4 一个例子3 霍夫线变换的算法流程3.1 标准霍夫线变换算法流程4 OpenCV中的霍夫变换函数4.1标准霍夫变换HoughLines()函数4.2 统计概率霍…

[科学计算]插值法

在生活中,我们把描述事物之间的关系称之为函数。它有两种情况:一类是用离散数据表示的;另一类是有明显的表达式,但是表达式普遍很复杂,不易于计算和使用。为了解决这个问题,我们可以在一定的误差范围内&…

三、QML开发之qml 语言基础

QML就是用来编辑和生成Quick界面的语言,所以在开发界面之前一定要了解基础的QML语言基础知识,接下来从介绍qml语法如何编写,变量和属性 对象的简要说明,通过本节的学习能够达到简单的加载图片 和设置lable标签存放位置&#xff0c…

不知道吃什么?来个随即点餐,点到啥吃啥!

不知道吃什么&#xff1f;来个随即点餐&#xff0c;点到啥吃啥&#xff01; 走过路过&#xff0c;千万不要错过&#xff01; <body><div><div id"box1">回家做饭</div><button id"start">开始</button><button i…

随即输入5个字符串,输出最大串

随即输入5个字符串&#xff0c;输出最大串 解题思路&#xff1a;先输入5个字符串&#xff0c;通过for循环进行长度判断&#xff0c;类似于冒泡排序&#xff0c;输出第一个位置的字符串即可 public static void main(String[] args) {Scanner sc new Scanner(System.in);Strin…

js生成随机圆,随即大小、随机位置、随机颜色

效果&#xff1a; 随即大小&#xff1a; // 随机大小 const randomSize function () {const size parseInt(Math.random()*150) 1return size px }随机位置&#xff1a; // 随机位置top const randomTop function () {const top parseInt(Math.random()*1000)return to…

linux脚本生成一个100以内的随机数,提示用户猜数字并将随即生成的数字显示

脚本生成一个100以内的随机数&#xff0c;提示用户猜数字并将随即生成的数字显示 使用read提示用户猜数字 使用if判断用户猜数字的大小关系 猜对了 猜大了 猜小了 使用while循环输入 首先&#xff1a;vi rendom 进入&#xff1a; #!/bin/bash end100 out101 while [ end−…

人工智能-八皇后爬山法(最陡上升,首项选择),随即重新启动法

#include<iostream> #include<string> #include<time h""> #include<iomanip> using namespace std;int qi[64]; int maze[64];int check(int idx) {int index idx;int row index / 8;int col index % 8;int j;int h 0;int i;for (i c

随即付|蓝牙支付模块,自制扫码付费开关

扫码付费演示视频&#xff1a;使用蓝牙支付模块&#xff0c;把空气净化器改造成共享的_哔哩哔哩_bilibili 立创开源地址&#xff1a;低成本的蓝牙扫码支付模块 - 嘉立创EDA开源硬件平台 应用领域&#xff1a; ♦ 扫码付费插座 ♦ 洗衣机扫码付费 ♦ 各种游乐车扫码付费 ♦…