详细英文文档地址:
地址1:https://github.com/tensorflow/graphics
地址2:https://tensorflow.google.cn/graphics(自动跳转到 地址1)
说明:因为tensorflow地址大部分无法访问,可以在https://github.com/tensorflow/下找到需要的内容
TensorFlow重磅推出一个全新的图形工具TensorFlow Graphics,结合计算机图形学和计算机视觉技术,以无监督的方式解决复杂3D视觉任务。
近年来,可插入到神经网络架构中的一种新型可微图形层(differentiable graphics layers)开始兴起。
从空间变换器(spatial transformers)到可微图形渲染器,这些新型的神经网络层利用计算机视觉、图形学研究获得的知识来构建新的、更高效的网络架构。它们将几何先验和约束显式地建模到神经网络中,为能够以自监督的方式进行稳健、高效训练的神经网络架构打开了大门。
1.概述(Overview)
从高级层面来说,计算机图形学的pipeline需要3D物体及其在场景中的绝对位置、构成它们的材质的描述、光、以及摄像头。然后,渲染器对这个场景描述进行解释,生成一个合成渲染。
相比之下,计算机视觉系统是从图像开始的,并试图推断出场景的相关参数。也就是说,计算机视觉系统可以预测场景中有哪些物体,它们由什么材料构成,以及它们的3D位置和方向。
训练一个能够解决这些复杂的3D视觉任务的机器学习系统通常需要大量的数据。由于给数据打标签是一个成本高昂而且复杂的过程,因此设计能够理解三维世界、而且无需太多监督的机器学习模型的机制非常重要。
将计算机视觉和计算机图形学技术结合起来,我们得以利用大量现成的无标记数据。
如下图所示,这个过程可以通过合成分析来实现,其中视觉系统提取场景参数,图形系统根据这些参数返回图像。如果渲染结果与原始图像匹配,则说明视觉系统已经准确地提取出场景参数了。
在这种设置中,计算机视觉和计算机图形学相辅相成,形成了一个类似于自动编码器的机器学习系统,能够以一种自监督的方式进行训练。
2.安装 TensorFlow Graphics
地址:https://github.com/tensorflow/graphics/blob/master/tensorflow_graphics/g3doc/install.md
CPU 版:pip install --upgrade tensorflow-graphics
GPU 版:pip install --upgrade tensorflow-graphics-gpu
3.API Documentation
地址:https://github.com/tensorflow/graphics/blob/master/tensorflow_graphics/g3doc/api_docs/python/tfg.md
4.兼容性(Compatibility)
TensorFlow Graphics完全兼容最新发布的稳定版本TensorFlow,tf-nightly和tf-nightly-2.0-preview。 所有功能都与graph and eager execution.兼容。
5.调试(Debugging)
Tensorflow Graphics 严重依赖 L2 normalized tensors,以及处于预定范围内的特定功能的输入,检查所有这些都需要在循环中,因此默认情况下不会激活。建议在特定的训练周期内打开这些检查,以确保一切都按预期运行。
地址:https://github.com/tensorflow/graphics/blob/master/tensorflow_graphics/g3doc/debug_mode.md(该文档提供了启用该功能的说明)
6.Colab 教程
为了帮助您开始使用TF Graphics提供的一些功能,下面提供了一些Colab笔记本,并且大致按顺序排序。涉及大范围的主题,包括物体姿态估计(object pose estimation),插值interpolation,物体材料object materials,照明lighting,非刚性表面变形non-rigid surface deformation,球面谐波 spherical harmonics和网格卷积mesh convolutions。
6.1.入门级(Beginner)
物体姿态估计( Object pose estimation )
备用地址:https://github.com/tensorflow/graphics/blob/master/tensorflow_graphics/notebooks/6dof_alignment.ipynb
Camera intrisic optimization
备用地址:https://github.com/tensorflow/graphics/blob/master/tensorflow_graphics/notebooks/intrinsics_optimization.ipynb
Object pose estimation | Camera intrisic optimization |
---|---|
6.2.中等难度(Intermediate)
B-spline and slerp interpolation | Reflectance | Non-rigid surface deformation |
---|---|---|
B样条和球面线性插值( B-spline and slerp interpolation)
备用地址:https://github.com/tensorflow/graphics/blob/master/tensorflow_graphics/notebooks/interpolation.ipynb
反射率(Reflectanc)
备用地址:https://github.com/tensorflow/graphics/blob/master/tensorflow_graphics/notebooks/reflectance.ipynb
非刚性表面变形(Non-rigid surface deformation)
备用地址:https://github.com/tensorflow/graphics/blob/master/tensorflow_graphics/notebooks/non_rigid_deformation.ipynb
6.3.高等难度(Advanced)
Spherical harmonics rendering | Environment map optimization | Semantic mesh segmentation |
---|---|---|
球面谐波渲染(Spherical harmonics rendering)
备用地址:https://github.com/tensorflow/graphics/blob/master/tensorflow_graphics/notebooks/spherical_harmonics_approximation.ipynb
环境地图优化(Environment map optimization)
备用地址:https://github.com/tensorflow/graphics/blob/master/tensorflow_graphics/notebooks/spherical_harmonics_optimization.ipynb
语义网格分割(Semantic mesh segmentation)
备用地址:https://github.com/tensorflow/graphics/blob/master/tensorflow_graphics/notebooks/mesh_segmentation_demo.ipynb
7.TensorBoard 3D
可视化debug是评估实验是否朝着正确方向进行的一种很好的方法。为此,TensorFlow Graphics提供了一个TensorBoard插件,可以交互式地对3D网格和点云进行可视化。
地址1:https://colab.research.google.com/github/tensorflow/tensorboard/blob/master/tensorboard/plugins/
mesh/Mesh_Plugin_Tensorboard.ipynb(插件使用方法)——无法访问
地址1-1.https://github.com/tensorflow/tensorboard/tree/master/tensorboard/plugins/mesh(内容与地址二相同)
说明:因为地址1无法访问,可以在https://github.com/tensorflow/下找到需要的内容
地址2:https://github.com/tensorflow/graphics/blob/master/tensorflow_graphics/g3doc/tensorboard.md(安装和配置)
注意:TensorBoard 3D目前与急切执行和TensorFlow 2不兼容。
8.后续更新(Coming next...)
在许多方面,我们希望发布重新采样器,额外的3D卷积和池操作符,以及可区分的光栅化器!
在Twitter上关注我们,了解最新消息!
地址:https://twitter.com/_TFGraphics_ (无法访问)
9.附加信息(Additional Information)
您可以在Apache 2.0许可下使用此软件。
10.社区(Community)
作为TensorFlow的一部分,我们致力于营造一个开放和热情的环境。
Stack Overflow:询问或回答技术问题。地址:https://stackoverflow.com/questions/tagged/tensorflow
GitHub:报告错误或发出功能请求。 地址:https://github.com/tensorflow/graphics/issues
TensorFlow博客:及时了解TensorFlow团队的内容和社区的最佳文章。地址:https://medium.com/tensorflow
Youtube频道:关注TensorFlow节目。 地址:http://youtube.com/tensorflow/
。