Facebook推开源PyTorch3D,机器学习让3D变得更美妙
作者头像
  • 胡云畅
  • 2020-02-18 19:33:47 0

长期以来,大多数机器学习模型主要集中在二维图像识别和理解上。然而,随着技术的发展,这些模型逐渐扩展到了三维领域,包括识别三维物体、将二维草图转化为三维模型等方面。

类似于互联网媒体的发展路径,机器学习模型也在向三维图像处理转型,涵盖三维图像的理解、还原和分析等内容。

毫无疑问,具备三维感知能力的模型将有助于机器更好地理解和适应现实世界,例如在复杂的三维空间中导航,识别被遮挡的物体,以及提升增强现实(AR)、虚拟现实(VR)和游戏等领域的用户体验。

尽管如此,三维领域的机器学习模型此前一直缺乏必要的工具和资源。得益于Facebook在增强现实(AR)和虚拟现实(VR)领域的大力投资,他们推出了专门针对三维环境的深度学习平台——PyTorch3D。

实际上,PyTorch3D的设计灵感来源于Mesh R-CNN模型。Mesh R-CNN是Facebook去年发布的一个模型,旨在从二维图像中重建三维模型,能够还原出包含遮挡物体的三维场景。

在PyTorch3D中,结合了高度优化的二维图像识别库Detectron2,使得物体识别能力得以延伸至三维空间。研究人员和工程师可以通过PyTorch3D进行各种三维深度学习研究,包括三维重建和推理等任务,甚至可以辅助二维识别的应用。

PyTorch3D的主要特性和功能如下:

  1. 引入新型三维网格数据格式
    三维网格系统由顶点坐标和面索引组成,处理大小不一的三维网格数据是一项挑战。为此,Facebook开发了一种新的三维网格格式Meshes,这种格式能快速转换基础网格数据,使运算符和数据匹配更加高效。同时,它还允许研究人员灵活地在不同视角之间切换。

  2. 高效处理三维网格
    基于新的三维网格格式,PyTorch3D优化了一系列通用运算符和三维数据损失函数,支持异构数据的导入。这意味着研究人员可以对三维网格进行投影变换、图卷积、采样和损失函数等操作。

  3. 可微分网格渲染
    渲染引擎是将三维模型转换成二维图像的核心部分,传统渲染方法通常不支持微分。但像OpenDR和redner这样的渲染器可以构建支持深度学习的可微分图形渲染器。由于PyTorch3D旨在与各种深度学习算法集成,因此所有运算符都具备以下特点:兼容PyTorch算子;支持异构批数据;可微分;支持GPU加速。

    本文来源:图灵汇
责任编辑: : 胡云畅
声明:本文系图灵汇原创稿件,版权属图灵汇所有,未经授权不得转载,已经协议授权的媒体下载使用时须注明"稿件来源:图灵汇",违者将依法追究责任。
    分享
开源PyTorch3D美妙Facebook变得机器学习
    下一篇