Warstwy różniczkowe dla grafiki.

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)
Run w notatniku
Cele TensorFlow Grafiki podejmowania użytecznych funkcji graficznych powszechnie dostępne dla społeczności poprzez zapewnienie zestawu różniczkowalnych warstw graficznych (np kamer, modele odbicia, siatki zwoje) i funkcje podglądu 3D (np 3D TensorBoard), które mogą być stosowane w urządzeniu uczenia modele wybór.

W ciągu ostatnich kilku lat nastąpił wzrost liczby nowatorskich, zróżnicowanych warstw graficznych, które można umieszczać w architekturach sieci neuronowych. Od transformatorów przestrzennych po zróżnicowane renderery grafiki, te nowe warstwy wykorzystują wiedzę zdobytą przez lata badań nad wizją komputerową i grafiką do tworzenia nowatorskich i wydajniejszych architektur sieciowych. Wyraźne modelowanie geometrycznych a priori i ograniczeń w modelach uczenia maszynowego otwiera drzwi do architektur, które można solidnie, wydajnie i, co ważniejsze, trenować w sposób samonadzorowany.

Aby rozpocząć, zobaczyć bardziej szczegółowy przegląd , z instrukcją instalacji , oraz API .