多台Azure Kinect配准与三维重修点云融合

[复制链接]
发表于 2025-12-3 13:39:22 | 显示全部楼层 |阅读模式
提示:文章写完后,目次可以主动天生,怎样天生可参考右边的资助文档
  


媒介

本文章教学 多台Azure Kinect配准与三维重修点云融合 的相干理论及思绪,相干代码将免费开源至github,敬请等待。

一、同步多台装备

在举行多相机大概双相机的数据收罗时,为了使得各相机所捕获的每一帧数据都是同一时候的场景,因此必要对各个相机间举行同步利用。当有多个Kinect Azure装备同时毗连时,需将它们分成master属性(主装备)和subordinate属性(附属装备)两种,此中主装备有且只有一个,剩下的全部为附属装备。
每个 Azure Kinect DK 装备附带 3.5 毫米同步端口(输入同步和输出同步),可将多个装备链接在一起。 毗连装备后,软件可以和谐装备之间的触发定时。 必要留意的是,“同步输入”和“同步输出”插孔必要拆下Azure Kinect DK外部塑料盖才华看到。
同步的设置有两种,可利用以下任一方法来完成装备设置:
菊花链设置。 同步一个主装备以及最多八个附属装备。在菊花链设置中毗连 Azure Kinect DK 装备步调:

  • 将每个 Azure Kinect DK 毗连到电源。
  • 将每个装备毗连到其自身的主机。
  • 选择一个装备充当主装备,并将 3.5 毫米音频线插入该装备输出同步端口。
  • 将该线缆的另一端插入第一个附属装备的输入同步端口。
  • 若要毗连另一个装备,请将另一根线缆插入第一个附属装备的输出同步端口,以及下一个装备的输入同步端口。
  • 重复上述步调,直到全部装备都已毗连。 末了一个装备应毗连了一根线缆。 其输出同步端口应该是空的。

    星形设置。 同步一个主装备以及最多两个附属装备。在星形设置中毗连 Azure Kinect DK 装备步调:
  • 将每个 Azure Kinect DK 毗连到电源。
  • 将每个装备毗连到其自身的主机。
  • 选择一个装备充当主装备,将耳机分线器的单体端插入其输出同步端口。
  • 将 3.5 毫米音频线毗连到耳机分线器的“分接”端。
  • 将每根线缆的另一端插入某个附属装备的输入同步端口。

    触发器源必须利用 3.5 毫米音频线将信号传送到主装备的输入同步端口。线缆长度应小于 10 米,可以是立体声或单声道音频线。可以利用立体声或单声道音频线。 Azure Kinect DK 会将音频线毗连器的全部套管和套环短接到一起,并将其接地。 如下图所示,装备只从毗连器尖端吸取同步信号。

实际收罗场景可如下所示:
每个Azure Kinect DK可以毗连至差别的主机,也可以全部毗连至同一台主机。可以根据装备的利用方式以及通过 USB 毗连传输的数据量利用专用主机控制器。
留意:每个毗连装备的软件必须设置为以主模式或附属模式运行。利用外部同步时,始终应先启动附属相机,然后再启动主相机,如许才华正常调解时间戳。
毗连装备完成后简单地验证装备是否已毗连并可通讯,步调如下:

  • 打开 Azure Kinect 查察器的两个实例。
  • 在“打开装备”下,选择要测试的附属装备的序列号。
  • 在“外部同步”下,选择“附属装备”。选择“开始”。
  • 启动附属装备后,利用 Azure Kinect 查察器的另一实例打开主装备。
  • 在“外部同步”下,选择“主装备”。选择“开始”。
  • Azure Kinect主装备启动后,Azure Kinect查察器两个实例应表现图像。
    除此之外,也可以自己编写代码完成多台装备的同步收罗。
二、配准多台装备

验证装备可准确通讯后,接下来可对其举行校准,以便在单个域中天生图像。
在单个装备中,深度相机和 RGB 相机已颠末出厂校准,可以协同工作。 但是,如果必须一同利用多个装备,则必须对这些装备举行校准,以确定怎样将图像从捕获它时地点的相机域转换为用于处理处罚图像的相机域。
目标:多摄像机转移矩阵的标定可以将多摄像机人体姿态转移到同一空间坐标。多摄像头的标定是为了通过标定技能获取两个或更多摄像头的相机坐标之间的旋转平移矩阵。
方案:现在利用的比力多的标定方法是张正友标定法(优劣棋盘格标定)。对于单个传感器而言,该方法可以盘算传感器的内参、畸变参数以及传感器坐标系和天下坐标系之间的外参。对于两个传感器而言,可以盘算它们之间的外参。
简而言之,配准就是一个用各种方法探求相机间的旋转矩阵的过程。
配准之前,必要相识以下知识:
2.1 四个坐标系

天下坐标系:即物体在真实的物理环地步点坐标系。
相机坐标系:即以相机的的中心点为原点而创建的坐标系。相机的光轴通过该原点,且为该坐标系的Z轴。
图像坐标系:即所得到的图像地点的坐标系,图像的中心即为该坐标系的原点。必要留意的是,相机的光轴也通过图像坐标系的原点。
像素坐标系:即以图像的左上角(大概左下角)为原点的坐标系举个例子,CCD传感上上面的8mm x 6mm,转换到像素巨细是640x480. 如果dx表现像素坐标系中每个像素的物理巨细就是1/80. 也就是说毫米与像素点的之间关系是piexl/mm.必要留意的是,像素坐标系中的点,以像向来表现,而非隔断单元。像素坐标系与图像坐标系均在像平面上,范围与图片尺寸有关。
相机坐标系和图像物理坐标系:
此中点X为相机坐标系下的实际天下中的点,XYZ为像机坐标系,xyz为图像坐标系,右图为正视图,f代表相机的焦距。
四个坐标系的叠加:

2.2 天下坐标系到相机坐标系


旋变革更:

平移变动:

2.3 相机坐标系到图像物理坐标系


2.4 图像物理坐标系到像素坐标系


坐标系变动的总结

2.5 张正友标定

张正友相机标定法是张正友传授1998年提出的单平面棋盘格的相机标定方法。传统标定法的标定板是必要三维的,必要非常准确,这很难制作,而张正友传授提出的方法介于传统标定法和自标定法之间,但降服了传统标定法必要的高精度标定物的缺点,而仅需利用一个打印出来的棋盘格就可以。同时也相对于自标定而言,进步精度,便于利用。因此张氏标定法被广泛应用于盘算机视觉方面。

已知相机的内参和外参,将他们重新表现为:





容易发现B是一个对称阵,以是B的有效元素就剩下6个,即

通过至少含一个棋盘格的三幅图像,应用上述公式我们就可以估算出B了。得到B后,我们通过cholesky分解 ,就可以得到摄相机机的内参阵A的六个自由度,即:

且R具有正交性和归一性,以是

此处K即是上述的A,一个H矩阵可以提供两个方程,对于5自由度的A,至少必要三幅图片可以求解。但上述的推导效果是基于抱负环境下的解,由于大概存在高斯噪声,以是利用最大似然估计举行优化。接纳更多的图片(20幅有效图片),每幅图片有更多角点(8*6棋盘格)。
根据上述原理可以求得单个传感器的外参,分别求出两个装备的颜色传感器的外参,就可以盘算出两个颜色传感器间的外参。
2.6 实际利用
可以通过opencv库实现相机标定。利用opencv库实现相机标定的步调如下:

  • 相机获取一帧图像,由图像格式转为Mat矩阵
  • 利用findChessboardCorners()函数辨认图像中的棋盘格角点位置drawChessboardCorners()函数可以查察辨认的角点位置是否准确
  • 当有充足多张图后,调用calibrateCamera()以获取单相机的表里参和畸变系数;调用stereoCalibrate()以获取双相机间的外参(R、t)。
    Microsoft 提供了利用 OpenCV 方法的 GitHub 绿屏代码示例。 此代码示例的自述文件提供了有关校准装备的更多详细信息和阐明。

三、多台装备3维空间信息重修

此处发起录制视频与天生点云是分开的。 如许做的长处有两点:一是在详细利用时发现如果二者并行,收罗速率将会是龟速。二是这里的kinect纵然更换为恣意的RGB-D相机,该步调仍然可以运行。
Kinect Azure通过k4a_device_get_calibration函数可以获取各传感器的内参以及它们之间的外参,并存放在k4a_calibration_t数据范例中,方便利用者直接获取数据。在SDK提供的各函数接口中,会通过k4a_transformation_create函数将k4a_calibration_t数据范例转换成k4a_transformation_t范例后进利用用。换句话说,直接利用SDK提供的函数时用k4a_transformation_t范例,必要读取表里参详细数据时用k4a_calibration_t范例。
通过k4a_transformation_color_image_to_depth_camera函数可以获取到深度图像上每个像素对应的彩色值,并生存在同分辨率的transformation_color_image图像中。通过k4a_transformation_depth_image_to_point_cloud函数可以获取到深度图像上每个像素对应的点云坐标。末了遍历每个像素点,将对应的点云坐标和彩色数据写在构造的color_point_t布局体中作为一个彩色点,清除数据非常点后,全部被写在vector向量中的点即为单相机得到的单帧点云数据。可以利用PCL点云库天生点云。
得到单个相机的点云后,将全部点云举行融合,根据第二步配准得到的外参,我们可以将差别视角的点云融合至同一视角,到达三维重修的效果。
三维重修点云融合流程如下图:


总结

以上就是本日要讲的内容,本文章教学 多台Azure Kinect配准与三维重修点云融合 的相干理论及思绪,相干代码将免费开源至github,敬请等待。

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

×
回复

使用道具 举报

登录后关闭弹窗

登录参与点评抽奖  加入IT实名职场社区
去登录
快速回复 返回顶部 返回列表