增强现实(AR)可将 RoboDK 工作站的元素叠加到输入视频或实时视频信号之上。
在RoboDK 中,启用图像处理编辑器插件即可使用该功能。
注:您应联系 RoboDK 以获取图像处理编辑器插件的访问权限。
视频:本视频教程总结了将增强现实技术与仿真https://youtu.be/Phj3_sQNSp0 。集成的步骤
可通过导航至工具➔添加管理器并启用图像处理编辑器来启用图像处理编辑器功能。
启用图像处理编辑器插件后,现在必须为增强现实技术站做好准备。创建成功的增强现实渲染所需的步骤可归纳为三个部分:
1.选择并创建一个靶标。将标记导入 RoboDK。
2.在 RoboDK 中创建一个模拟相机。
3.创建检测管道。
增强现实插件需要使用标记来估计相机的位姿和轨迹。
RoboDK 支持4 种OpenCV 标记:如下图所示,分别为Aruco、Chessboard、Charuco Diamond 和 Charucoboard:
选择标记时需要考虑很多因素。站点的大小、相机分辨率、帧速率、运动、照明和遮挡都是需要考虑的重要因素。例如,一个拥有固定、、无遮挡相机的大型台站将从使用Aruco 标记中获益匪浅,因为单个标记 ID 的检测距离要比相同大小的 Charuco Diamond 或 Charucoboard 标记上的 4 个或更多ID 远得多,而且没有运动模糊和遮挡,可以保证在任何时候都能检测到标记。如果标记偶尔出现部分遮挡,则应选择 Charucoboard,因为它不需要检测到所有 ID 就能确定相机位置。以下台面有助于选择标记类型:
阿鲁科 | 夏鲁科钻石 | Charucoboard | 棋盘 | |
优点 | - 更便捷的设置 - 最快渲染时间 | - 最均衡方案 (精度/渲染时间) | - 抗部分闭塞 - 最准确 | - 相机校准 |
缺点
(标记必须始终保持在相机视野内)
| - 被遮挡时失去跟踪功能 - 最不准确的位姿 | - 被遮挡时失去跟踪功能 - 更难设置 | - 渲染时间长 - 不擅长使用实时 AR | - 更难检测 - 不能被遮挡 |
建议的应用 | - 高 FPS / 低分辨率实时 AR - 长视频 - 无障碍视频 - 固定相机 - 大型站 | - 更好地跟踪实时 AR - 高分辨率视频 - 相机慢动作 | - 包含部分标记闭塞的视频 - 对位姿精度要求较高的视频。 | - 相机校准 (如果通用校准不够,可使用棋盘生成自定义相机校准文件) |
选择合适的标记后,就可以自定义标记 ID、大小、棋盘式布局和方格大小
然后必须保存并打印标记。可使用 "另存为... "功能将标记的 PNG 图像保存在计算机上,然后将其轻松导入 RoboDK。要打印标记,可使用 "复制到剪贴板 "选项将图像快速导入文本/图像编辑器(如 Word 或 GIMP),然后按比例调整大小并打印。
注:要计算所生成标记的大小,必须将像素字段转换为毫米。在 RoboDK 中,像素和毫米之间的转换是 1px = 0.265mm。
重要: 打印的标记和导入 RoboDK 的虚拟标记必须大小相同。好的做法是测量物理标记,并使用 RoboDK 中的测量和缩放工具将 RoboDK 中的标记调整为与物理标记相同的尺寸。
您应在 RoboDK 中导入标记,以标明标记相对于机器人和其他物体的位置。
请按照以下步骤正确放置标记:
1.在 RoboDK 工作站中,创建一个新的参考坐标系。
2.右键单击新的参考坐标系,选择 "添加项目..."。
3.查找并选择用浮动标记生成器创建的 PNG 标记。
4.调整虚拟标记的比例,使其与真实标记的大小一致:
举例说明:Charuco Diamond 标记的默认尺寸为 106.186 毫米 x 106.186 毫米。如果打印的标记尺寸为 280mm x 280mm,则必须应用 2.63688 → ( 280 / 106.186 ) 的比例因子。方法是双击标记物体,选择更多选项 à 应用比例。
5.将标记中心对准参考坐标系原点,Y 轴指向顶部 ID。
举例说明:要移动标记,请双击标记物体并修改物体相对于标记坐标系的位置。在我们的示例中,标记需要在 X 轴上移动 140 毫米,在 Y 轴上移动 140 毫米,并在 Z 轴上旋转 180°。正确位置示例见下图。
6.将坐标系放置在测站中,使测站物体相对于坐标系对齐。
提示:如果想在最终渲染中隐藏标记,可以将虚拟标记放在站点资产下,确保物理标记被叠加资产隐藏。
为了将工作站资产精确叠加到视频画面上,必须创建一个模拟相机。该模拟相机使用利用靶标计算出的相机位姿和轨迹,从与输入视频画面相同的角度、距离和轨迹记录 RoboDK 工作站。
该模拟相机的分辨率需要与输入视频相匹配,这样标记缩放才能准确。为管理平台添加虚拟相机的步骤如下:
1.在工具栏中选择 "图像处理编辑器" à "添加 RoboDK 相机",为管理平台添加相机。
2.右键单击相机或相机画面,选择 "相机设置"。
3.调整虚拟相机设置,使其与输入视频画面的分辨率相匹配。
4.对齐参考坐标系,使模拟相机可以看到虚拟的 Aruco 标记。
提示:您可以根据需要调整焦距和工作距离,以确保在渲染时间内所有站内物体都在视图中。下图显示的是配置充分的虚拟相机,分辨率为 1280x720p。
为达到最佳效果,录制物理输入视频时应注意以下几点:
1.将标记置于光线充足的平面上。为获得最佳效果,请考虑虚拟站中物体与标记和记录环境各自的大小和距离。
2.一致的相机设置(真实相机和模拟相机必须具有匹配的分辨率设置)。
3.可辨认的 Aruco 证件(相机必须保持证件可辨认。应避免的事项镜头过快/模糊、相机分辨率低、标记与相机距离过远)。
4.确保视频为 .mp4 或 .avi 格式
提示:高分辨率/FPS 输入馈送可能需要较长的渲染时间。对于超过 720p/60fps 的镜头,预期视频渲染时间会明显延长,相机 AR 中的 FPS 也会降低。
要创建自定义相机校准文件,请打印出一张棋盘,用相机拍摄约 10-20 张棋盘图像,使用的设置与拍摄视频时相同。
每幅图像应包含整个棋盘。每幅图像中棋盘的方向和位置应有所不同。
拍摄图像后,导航至图像处理编辑器 à 从文件校准...并填写棋盘参数。然后选择图像。RoboDK 将生成一个校准文件,可在创建管道时使用。
为 AR 准备RoboDK 工作站的最后一步是创建一个检测靶标的管道。该检测管道将用于计算真实和虚拟标记的位姿,并将来自模拟 RoboDK 相机的资产叠加到输入视频馈送之上。
请按照以下步骤创建检测管道:
1.导航至工具栏中的图像处理编辑器à 图像处理编辑器。
2.如果使用视频 AR,请选择模拟的 RoboDK 相机;如果使用相机 AR,请选择相机源。
3.在Detectors à Charuco Diamond Markers 下选择标记。
4.根据物理标记尺寸设置所需的参数。
5.在设备下,设置校准文件。建议使用通用校准。
6.在文件à 项目另存为下保存管道项目
准备好工作站、录制好输入视频并保存好处理管道后,我们就可以开始制作 AR 视频了。接下来的章节将详细介绍如何制作 AR 视频和实时 AR 渲染,以及帮助修复不良渲染的故障排除部分。
视频 AR 工具用于在预先录制的视频顶部创建 AR 叠加层。这非常适合演示或宣传视频。在渲染视频的同时,还可以修改站点,修改后的内容将立即应用。
请按照以下步骤在视频上创建AR 叠加效果:
1.隐藏站内所有不希望呈现在 AR 视频中的物体。
2.选择图像处理编辑器 → 扩增现实(视频)。
3.如果保存了多个管道,请为标记选择正确的管道。
4.选择包含标记的参考坐标系。
5.选择输入的视频文件。
6.选择输出视频的位置和名称。
7.监控渲染过程,并进行必要的修改,以达到理想的质量。
8.视频渲染完成后,就可以关闭 AR 相机坐标系了。