0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

图像的点云是如何拼接在一起的?

新机器视觉 来源:古月居 作者:月照银海似蛟龙 2021-07-04 17:05 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

理解好图像的点云拼接,需要从相机的模型说起。理解相机的成像原理之后,便可更为深刻的理解图像的点云如何拼接在一起。

首先说下相机的概念与原理。

相机概念与原理

相机的作用:将三维世界中的坐标点(单位为米)映射到二维图像平面(单位为像素)。

通常我们见到的相机都是针孔相机,但是不是简单的 针孔,还有透镜的畸变存在,所以在做图像处理时要进行畸变校正。

由于畸变的存在,我们在使用相机之前都要进行相机标定。

目的就是求出内参对于简单的应用求出径向畸变和切向畸变就够了。

所谓的外参就是相机的位姿。

有了外参、内参、图像、深度信息 便可以把图像中的点,转到世界坐标系下,并带有RGB的颜色。就形成了所谓的点云。

相关的公式也很好理解 ,就是通过相似三角形的原理。

23eb1154-dbc7-11eb-9e57-12bb97331649.png

注意其中fx 、fy、 cx 、cy也就是相机的内参了。在相机出厂时会给出。

理解了相机的概念与原理,来编辑代码实现下。

Code实现

全部代码

先放上全部代码,再进行分段讲解

代码讲解

poYBAGDhes-Ac1LLAAEtIvo2CAQ223.jpg

读取对应路径下的彩色图像、深度图像、相机的位姿。

上面说了,有了这三个量再加上相机内参,就可以得到点云。

pYYBAGDheuyAeEIiAAAy3-ecoVY412.jpg

//相机内参

poYBAGDhevaAee5jAABQUA2GHZA654.jpg

传说中的相机内参

//定义点云使用的格式

声明pcl的格式创建一个点云,然后开始for循环处理每一张图片和对应的深度图片与相机位姿。

poYBAGDhex2Af6F8AABA6-h5p2A196.jpg


poYBAGDheyyAYrZ5AAAfdiZaiKQ717.jpg



poYBAGDhez-AK4qZAABIxz4NCw4286.jpg


得到要处理的彩色图像深度图像对应的pose,然后for循环处理每一个像素。

得到深度信息

通过:

23eb1154-dbc7-11eb-9e57-12bb97331649.png

这个公式得到相机坐标系下的 x,y,z

poYBAGDhe82Ae_HpAAAcQ6kw-oQ038.jpg

相机坐标系下的点通过坐标变换转到世界坐标系下。

poYBAGDhe9-AFDOCAAB28rxHi7I711.jpg

赋值点云的坐标与颜色。

pYYBAGDhe-qAD3h8AAAmI6o-KK4503.jpg

保存成点云文件。

责任编辑:lq6

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 图像
    +关注

    关注

    2

    文章

    1096

    浏览量

    42163
  • 拼接
    +关注

    关注

    0

    文章

    17

    浏览量

    12869

原文标题:图像的点云拼接-原理讲解与代码实现

文章出处:【微信号:vision263com,微信公众号:新机器视觉】欢迎添加关注!文章转载请注明出处。

收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    硬件融合拼接器与软件融合拼接的区别?

    硬件融合拼接器和软件融合拼接是两种不同的图像拼接技术,它们在实现方式、效果和应用场景等方面存在些区别。 1、实现方式 硬件融合
    的头像 发表于 09-28 14:33 316次阅读

    拼接处理器的性能如何?

    性能方面表现卓越,以下从多个维度进行深入解析。 、硬件设计:稳定与高效的基石 融大视觉的拼接处理器采用嵌入式纯硬件设计,这设计理念使其区别于依赖操作系统的软件方案。由于没有传统操
    的头像 发表于 09-05 00:11 553次阅读

    无法将Jlink调试器与CYBT263065EVAL COOLDIM_PRG_BOARD连接在一起怎么解决?

    我无法将 Jlink 调试器与 CYBT263065EVAL COOLDIM_PRG_BOARD连接在一起
    发表于 07-03 06:24

    异形拼接处理器可以实现的效果

    异形拼接处理器可以实现的效果非常多样化和创新,以下是对其可实现效果的进步补充: 、创意拼接显示 1、任意角度拼接:异形
    的头像 发表于 03-21 12:39 512次阅读
    异形<b class='flag-5'>拼接</b>处理器可以实现的效果

    ADS1258芯片底部的散热片需要与地连在一起吗?

    ADS1258芯片底部的散热片需要与地连在一起吗?我的电路中给ADS1258供电的是正负2.5V,全部按照推荐电路设计的,两道的ADS1258的REF+端的电压是0V,REF-端的是-2.5V
    发表于 02-14 06:14

    ADS1217是需要2个电源隔离供电吗?还是接在一起,对测量精度有多大影响?

    是需要2个电源隔离供电吗,还是接在一起,对测量精度有多大影响 比如: 电路单片机供电VDD=5V,有路DCDC隔离出AVDD=5V,我在AD供电的时候是不是DVDD就接单片机的电源,AVDD接DCDC隔离的5V,而单片机IO和ADSPI引脚就不需要光耦隔离了?
    发表于 02-11 07:55

    ADS1198有两个时钟,CLK和SCLK,这两个时钟信号能接在一起吗?

    最近在做这块芯片,看到有两个时钟,CLK和SCLK,这两个时钟信号能接在一起吗,就是说CLK和SLCK能不能使用同个时钟信号?另外,关于芯片的SPI输入输出,要不要做些初始化的工作,这些我好想在手册上没看到
    发表于 02-07 06:28

    电路图设计:需要问下,需要哪些零件可以组合在一起组成个音箱?

    目前手头上只有这个音响。现在需要问下,需要哪些零件可以组合在一起组成个音箱?嗯,设备呃,包括哪些是多大的电容电阻和三极管,最好能详细到多大的二极管,三极管电容电阻
    发表于 01-24 13:05

    DAC7811接入系统后输出恒为4V是怎么回事

    部分的地连接在一起时,电路输出句出现了错误,恒为4v,(模块采用+ -5v供电),请大家帮忙指导下。谢谢! 工具数据手册的电路连接了电路图,参考电压选的2.048V,单独供电是模块可以工作
    发表于 01-20 07:23

    ADS7953 MXO和AINO般都是连在一起的,但要保证Rsource&lt;50Ω,请问这个Rsource是指哪里?

    数据手册上说,MXO和AINO般都是连在一起的,但要保证Rsource<50Ω,请问这个Rsource是指哪里,怎么理解
    发表于 01-15 08:03

    AN-166:与Linduino一起飞行中更新

    电子发烧友网站提供《AN-166:与Linduino一起飞行中更新.pdf》资料免费下载
    发表于 01-12 10:09 0次下载
    AN-166:与Linduino<b class='flag-5'>一起</b>飞行中更新

    ADS1274“模拟地”和“数字地”是接在一起好,还是分开连接好?

    地和模拟地需要全部接到模拟地上。那么请问对于ADS1274而言,到底“模拟地”和“数字地”是接在一起,还是分开连接,性能更好呢。尤其是对于电路噪声这性能来说。
    发表于 12-30 07:24

    是否可以将6片TLV5638的REF脚并联在一起接到基准电压?

    我设计的个系统中,用到6片TLV5638作为DA输出,我使用外部基准电压作为REF的输入,请问我是否可以将6片TLV5638的REF脚并联在一起接到基准电压? 这样使用会有什么影响吗? 如不能这样使用,能否推荐种6片TLV
    发表于 12-27 08:27

    将AINN和AGND接在一起,请问AMC1306M25的AGND的地和隔离电源的地是个地吗?

    一起,请问AMC1306M25的AGND的地和隔离电源的地是个地吗? 如果不是AGND我应该怎么接?
    发表于 12-23 08:25

    LTM4681是否支持VOUT1, VOUT2 VOUT 3的三通道并联输出?

    , VOUT1_CFG , VOUT1_CFG网络连接在一起?)(RVTRIM1_CFGRVTRIM2_CFGRVTRIM3_CFG网络连接在一起?)。如果两组配置引脚需要连接在一起 , 配置电阻需要如何添加 。 3
    发表于 12-19 08:25