计算机图形学遇上深度学习-阿里云开发者社区

开发者社区> 商业新知> 正文

计算机图形学遇上深度学习

简介: 今日,TensorFlow 宣布推出 TensorFlow Graphics,该工具结合计算机图形系统和计算机视觉系统,可利用大量无标注数据,解决复杂 3D 视觉任务的数据标注难题,助力自监督训练。
+关注继续查看

来源商业新知网,原标题:计算机图形学遇上深度学习:针对3D图像的TensorFlow Graphics面世

今日,TensorFlow 宣布推出 TensorFlow Graphics,该工具结合计算机图形系统和计算机视觉系统,可利用大量无标注数据,解决复杂 3D 视觉任务的数据标注难题,助力自监督训练。

GitHub 地址:https://github.com/tensorflow/graphics
近几年,一种可以插入神经网络架构中的新型可微图形层(differentiable graphics layer)开始兴起。从空间变换器(spatial transformer)到可微图形渲染器,这些新型网络层利用多年的和图形学研究知识来构建更高效的新网络架构。将几何先验和约束显式建模到神经网络中,为能够以自监督的方式进行稳健、高效训练的架构打开了大门。

从高级层面来说,计算机图形管道需要 3D 物体及其在场景中的绝对位置、材质描述、光和摄像头。然后,渲染器利用该场景描述生成合成渲染。

1_jpeg

相比之下,计算机视觉系统从图像开始,推理场景的参数,对场景中的物体及其材质、三维位置和方向进行预测。

2_jpeg

训练能够解决这些复杂 3D 视觉任务的机器学习系统通常需要大量数据。由于标注数据的过程既昂贵又复杂,因此设计能够理解三维世界且训练时无需太多监督的机器学习模型非常重要。

结合计算机视觉和计算机图形学技术后,我们得以利用大量可用的无标注数据。如下图所示,这可以通过合成分析(analysis by synthesis)来实现:视觉系统抽取场景参数,图形系统基于这些参数渲染图像。

如果渲染图像结果与原始图像匹配,则说明视觉系统准确地抽取了场景参数。在该设置中,计算机视觉和计算机图形学携手合作,形成了一个类似自编码器的机器学习系统,该系统能够以自监督的方式进行训练。

3_jpeg

可微图形层

接下来,我们将探索 TensorFlow Graphics 的一些可用功能。更多详情,参见 GitHub 项目。

变换

物体变换控制物体在空间中的位置。如下图所示,利用轴角度旋转立方体。旋转轴指向上方,旋转方向为逆时针,使得立方体逆时针旋转。以下 示例展示了如何在神经网络中训练旋转形式,该神经网络被训练用于预测观测物体的旋转和平移。

地址 https://colab.sandbox.google.com/github/tensorflow/graphics/blob/master/tensorflow_graphics/notebooks/6dof_alignment.ipynb
这项任务是很多应用的核心,包括聚焦于与其环境进行交互的机器人。在这些场景中,用机械臂抓取物体需要精确估计这些物体相对于机械臂的位置。

4

建模摄像头

摄像头模型在计算机视觉领域中非常重要且基础,因为它们对三维物体投影到图像平面上的外观有极大影响。如下图所示,该立方体看起来可以放大和缩小,但是事实上这些变化仅仅是由于焦距产生的变化。

想了解摄像头模型的详情,以及如何在 中使用它们的具体示例,可以查看:

https://colab.sandbox.google.com/github/tensorflow/graphics/blob/master/tensorflow_graphics/notebooks/intrinsics_optimization.ipynb
材质

材质模型(material model)定义光与物体的交互过程,从而提供物体的外观。例如,一些材质(如石膏)在各个方向对光进行反射,而镜面等材质会对光进行镜面反射。

在以下交互式 Colab notebook 中,你可以了解如何使用 Tensorflow Graphics 生成如下渲染。你还可以试验不同的材质和光的参数,更充分地了解其交互过程。

地址:https://colab.sandbox.google.com/github/tensorflow/graphics/blob/master/tensorflow_graphics/notebooks/reflectance.ipynb
准确地预测材质属性是很多任务的基础。例如,它可以让用户在自己的环境中放置虚拟家具,室内环境搭配家具的场景非常逼真,从而让用户准确地感知到这件家具的外观。

5_jpeg

几何——3D 卷积和池化

近年来,以点云或网格形式输出三维数据的传感器逐渐成为我们日常生活的一部分,包括智能手机深度传感器、自动驾驶汽车雷达等等。由于其结构不规则,在这些表征上执行卷积要比在规则网格结构上困难得多。

TensorFlow Graphics 提供两个 3D 卷积层和一个 3D 层,允许网络在网格上执行语义部分分类(如下图所示),更多信息参见该 Colab notebook:

https://colab.sandbox.google.com/github/tensorflow/graphics/blob/master/tensorflow_graphics/notebooks/mesh_segmentation_demo.ipynb

6_jpeg

TensorBoard 3d

视觉 debug 是评估实验是否按正确方向运行的重要方式。因此,TensorFlow Graphics 配备有 TensorBoard 插件,以便交互式地查看 3d 网格和点云。

7

开始项目

TensorFlow Graphics 与 TensorFlow 1.13.1 及以上版本兼容。

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
学习准备(下):计算机基础 | Python从入门到精通:入门篇之二
本章节继续讲授关于计算机基础的课程,包括进制、Python编辑器的安装以及编码方式等。
4668 0
推动量子计算与 AI 融合,飞桨成为中国首个支持量子机器学习的深度学习平台
推动量子计算与 AI 融合,飞桨成为中国首个支持量子机器学习的深度学习平台
14 0
《逻辑与计算机设计基础(原书第5版)》——1.4 算术运算
本节书摘来自华章计算机《逻辑与计算机设计基础(原书第5版)》一书中的第1章,第1.4节,作者:(美)M.莫里斯·马诺(M. Morris Mano)著, 更多章节内容可以访问云栖社区“华章计算机”公众号查看。
1195 0
Python学习(29)--tkinter图形界面编程2
Python学习(29)--tkinter图形界面编程2 这一节我们将继续介绍tkinter中的控件部分,本节主要介绍的控件为下拉列表控件Listbox。 1.Listbox Listbox是一个列表框控件,其主要功能为提供一个数据列表供用户选择。
1490 0
+关注
商业新知
商业新知网是首家运用知识图谱构建的,集商业创新知识(数字化创新、营销创新、管理创新为主)与商业创新选型服务于一体的互联网平台,致力于为商业创新与转型的管理者服务。
25
文章
0
问答
文章排行榜
最热
最新
相关电子书
更多
文娱运维技术
立即下载
《SaaS模式云原生数据仓库应用场景实践》
立即下载
《看见新力量:二》电子书
立即下载