当前位置: 首页 > news >正文

24.08.28--点云图像投影参数理解;yaml_node理解

24.08.28–点云投影到图像参数理解;Yaml_node理解

1 点云,图像数据融合

	目前项目中,需要点云图像数据融合,常见的数据融合一般是将3d点云投影到图像成像平面,以获得障碍语义信息。前期做点云投影到图像时,
因为有前人写好的内容,自己只是拿来使用。最近需要整理双目相机生成的点云投影到相机成像平面时,发现由双目生成的点云投影到成像平面
时只需考虑相机内参即可,不像由激光雷达点云投影到图像还需考虑旋转、平移矩阵及相机内参,下面做一些整理。

1.1 激光雷达点云投影到相机成像平面

整体流程:1 首先根据相机、激光雷达之间的旋转、平移关系将每一个点云转换到相机坐标系2 根据相机内参,将转换到相机坐标系下的点云投影到相机成像平面
总结:传感器之间存在旋转平移关系时需要考虑变换关系,并利用相机内参将点云投影到成像平面

1.2 双目或深度相机点云投影到图像成像平面

	由双目相机生成的点云,尤其双目相机厂商已经集成之后,将点云投影到图像成像平面只需要利用相机内参即可,不需要考虑旋转平移关系
(针对集成之后的双目相机)。因为点云就是由双目生成的,再将点云投影到图像平面只需考虑相机内参即可。

2 yaml_cpp中的yaml_node理解

	最近需要读取yaml格式的标定文件,需要根据机器上的标定文件内容来更新所需的标定参数。之前对yaml_node理解不够,yaml_node在
加载yaml文件之后,其实就是将yaml文件在内存中做了一个备份,只要加载yaml文件之后,即使删除原始yaml文件,依然可以通过yaml_node
变量读取变量中的内容。yaml_cpp内部封装了数据结构,可以根据yaml文件内容将加载的yaml文件内容存储到变量node中,其实将yaml内容
以特定格式存储在内存中,即使删除被加载的原yaml文件,依然可以从内存中读取yaml_node变量中的内容,二者不影响。

整体流程

1.机器上标定文件格式有yaml格式,txt格式两种类型
2.针对yaml格式内容,直接加载机器yaml内容及需要更改的yaml文件,只需要针对对应值做赋值即可
3.针对txt格式文件,需要先将txt内容读取到vector容器中,将之前加载的需要修改的yaml文件yaml_node
赋值,即将从txt文件中读取的存储在vector中的内容赋值(基于key值)给对应的yaml_node中的对应值,至此将yaml_node更新完成

相关文章:

  • 北京网站建设多少钱?
  • 辽宁网页制作哪家好_网站建设
  • 高端品牌网站建设_汉中网站制作
  • 【机器学习-随记】使用 Slack 和 Facebook Messenger 的消息机器人实现虚拟客服人员
  • mysql集群技术
  • 数据结构(邓俊辉)学习笔记】优先级队列 08——左式堆:结构
  • I get HttpClient.Timeout Error in C# OpenAI library
  • 游戏开发面试题
  • Vue3组件通讯六种方式
  • 进程终止 等待 替换
  • 2024了,Neo4j能显示节点图片吗?
  • [深度学习] 时间序列分析工具TSLiB库使用指北
  • 【二叉树】OJ题目
  • Android 架构模式之 MVVM
  • AWS CodeCommit 停服,欢迎大家使用极狐GitLab!
  • Scrapy入门学习
  • Windows IPv6漏洞CVE-2024-38063
  • spring boot 集成es使用
  • python3.6+scrapy+mysql 爬虫实战
  • 【附node操作实例】redis简明入门系列—字符串类型
  • 【跃迁之路】【444天】程序员高效学习方法论探索系列(实验阶段201-2018.04.25)...
  • css选择器
  • dva中组件的懒加载
  • Mocha测试初探
  • rabbitmq延迟消息示例
  • 从零搭建Koa2 Server
  • 前端之React实战:创建跨平台的项目架构
  • 算法之不定期更新(一)(2018-04-12)
  • 想写好前端,先练好内功
  • 一道面试题引发的“血案”
  • 移动端解决方案学习记录
  • 原生Ajax
  • ionic入门之数据绑定显示-1
  • 继 XDL 之后,阿里妈妈开源大规模分布式图表征学习框架 Euler ...
  • #Spring-boot高级
  • #基础#使用Jupyter进行Notebook的转换 .ipynb文件导出为.md文件
  • $HTTP_POST_VARS['']和$_POST['']的区别
  • $LayoutParams cannot be cast to android.widget.RelativeLayout$LayoutParams
  • $var=htmlencode(“‘);alert(‘2“); 的个人理解
  • (1/2)敏捷实践指南 Agile Practice Guide ([美] Project Management institute 著)
  • (2020)Java后端开发----(面试题和笔试题)
  • (cos^2 X)的定积分,求积分 ∫sin^2(x) dx
  • (阿里云在线播放)基于SpringBoot+Vue前后端分离的在线教育平台项目
  • (待修改)PyG安装步骤
  • (二)丶RabbitMQ的六大核心
  • (附源码)springboot炼糖厂地磅全自动控制系统 毕业设计 341357
  • (介绍与使用)物联网NodeMCUESP8266(ESP-12F)连接新版onenet mqtt协议实现上传数据(温湿度)和下发指令(控制LED灯)
  • (离散数学)逻辑连接词
  • (六)vue-router+UI组件库
  • (新)网络工程师考点串讲与真题详解
  • (一)项目实践-利用Appdesigner制作目标跟踪仿真软件
  • (转)Spring4.2.5+Hibernate4.3.11+Struts1.3.8集成方案一
  • .apk文件,IIS不支持下载解决
  • .net framwork4.6操作MySQL报错Character set ‘utf8mb3‘ is not supported 解决方法
  • .NET/C# 使用 ConditionalWeakTable 附加字段(CLR 版本的附加属性,也可用用来当作弱引用字典 WeakDictionary)
  • .NET实现之(自动更新)
  • .NET微信公众号开发-2.0创建自定义菜单
  • [240621] Anthropic 发布了 Claude 3.5 Sonnet AI 助手 | Socket.IO 拒绝服务漏洞