طبقات متباينة للرسومات.

import numpy as np
import tensorflow as tf
import trimesh

import tensorflow_graphics.geometry.transformation as tfg_transformation
from tensorflow_graphics.notebooks import threejs_visualization

# Download the mesh.
!wget https://storage.googleapis.com/tensorflow-graphics/notebooks/index/cow.obj
# Load the mesh.
mesh = trimesh.load("cow.obj")
mesh = {"vertices": mesh.vertices, "faces": mesh.faces}
# Visualize the original mesh.
threejs_visualization.triangular_mesh_renderer(mesh, width=400, height=400)
# Set the axis and angle parameters.
axis = np.array((0., 1., 0.))  # y axis.
angle = np.array((np.pi / 4.,))  # 45 degree angle.
# Rotate the mesh.
mesh["vertices"] = tfg_transformation.axis_angle.rotate(mesh["vertices"], axis,
                                                        angle).numpy()
# Visualize the rotated mesh.
threejs_visualization.triangular_mesh_renderer(mesh, width=400, height=400)
تهدف TensorFlow Graphics إلى جعل وظائف الرسومات المفيدة متاحة على نطاق واسع للمجتمع من خلال توفير مجموعة من طبقات الرسومات المختلفة (مثل الكاميرات ونماذج الانعكاس والتلافيف الشبكية) ووظائف العارض ثلاثي الأبعاد (مثل 3D TensorBoard) التي يمكن استخدامها في نماذج التعلم الآلي الخاصة بك خيار.

شهدت السنوات القليلة الماضية ارتفاعًا في طبقات الرسومات الجديدة القابلة للتفاضل والتي يمكن إدراجها في بنيات الشبكات العصبية. من المحولات المكانية إلى عارضين الرسومات التفاضلية ، تستفيد هذه الطبقات الجديدة من المعرفة المكتسبة على مدار سنوات من رؤية الكمبيوتر وأبحاث الرسومات لبناء هياكل شبكات جديدة وأكثر كفاءة. تفتح النمذجة المسبقة والقيود الهندسية في نماذج التعلم الآلي الباب أمام البنى التي يمكن تدريبها بقوة وكفاءة والأهم من ذلك ، بطريقة تخضع للإشراف الذاتي.

للبدء ، راجع نظرة عامة أكثر تفصيلاً ودليل التثبيت وواجهة برمجة التطبيقات .