原文章来源:https://machinelearning.apple.com/research/roomplan
此处是内容翻译摘要加上我自己的个人理解,如有错误欢迎指正
三维空间理解已成为机器学习中的一个重要研究方向。最近苹果的产品上添加了能进行三维感知的产品(LiDAR sensor functionality),这使得场景感知和深度学习的结合能被应用在各个生活的领域。而创建一个3D楼层平面图则是其中的一项应用,这项应用可以被用在AR,机器人科学,游戏等领域。
为了实现3D场景平面图的生成,苹果在2022年推出了roomPlan 软件框架作为游戏等的一种实现方案。(可见https://developer.apple.com/documentation/RoomPlan)这个API使用苹果自带的摄像头和LiDAR扫描仪来为房间创建3D平面图。这包括生成房间的各种参数,家具的尺寸和类型,提高模型精度的拍摄指导,以及能被导出为各种通用场景描述(USD,USDA或USDZ)的方案。
这个API的核心设计有两个:3D房间布局估计和3D物体感知管线。3D房间布局估计利用了两个神经网络,一个用于检测墙壁和窗口,而另一个用于检测门窗。估计其将墙壁和开头检测为线并通过估计其高度将它们提升为3D。它在2D墙面上检测门窗并根据墙壁信息和相机位置将它们投影到3D空间中。3D物体感知管线则是将其它物体识别为16个类别的家具。
3D房间布局估计Room Layout Estimation(RLE)
该部分实现的功能主要是检测墙壁,窗口等,并实时在用户的手机或平板上处理数据。
其挑战在于一些可能阻挡结构或开口的家具,以及平板玻璃和镜面墙等影响感知的存在。为了应对这些挑战,文章使用了两个由不同神经网络构成的管线:一个用于检测墙壁和开口,另一个用于检测门窗。
对于墙壁和开口的检测
算法主要分为两个阶段:第一阶段是将检测到的点云通过神经网络贴上语义标签,并以鸟瞰图视角来预测2D的墙壁和开口。第二阶段,则是对墙高使用一系列后处理算法来将2D的墙壁和开口提升为3D。
墙壁和开口管线先将带语义点云转换为两种伪图像表示:语义图(Semantic map)和Z切片图(Z-slicing map)
语义图是一个H*W*K的向量,它编码了整个鸟瞰空间的语义信息。其中H,W,K分别是图像的长度,宽度和语义类数量。这个图是通过将点云及其相关的语义向量投影到图像网格的二维鸟瞰图来创建的。
Z切片图则是将点云划分在一个H*W*Z的体素空间中,Z是沿重力