mirror of
https://github.com/facebookresearch/pytorch3d.git
synced 2025-08-02 20:02:49 +08:00
Remove spurious compute in _compute_vertex_normals
Summary: https://github.com/facebookresearch/pytorch3d/issues/736 Reviewed By: bottler Differential Revision: D38881935 fbshipit-source-id: 62aa3575513ab752a5afda4a257a985032bc7f6d
This commit is contained in:
parent
898ba5c53b
commit
a65928dcb9
@ -890,34 +890,22 @@ class Meshes:
|
|||||||
verts_normals = torch.zeros_like(verts_packed)
|
verts_normals = torch.zeros_like(verts_packed)
|
||||||
vertices_faces = verts_packed[faces_packed]
|
vertices_faces = verts_packed[faces_packed]
|
||||||
|
|
||||||
|
faces_normals = torch.cross(
|
||||||
|
vertices_faces[:, 2] - vertices_faces[:, 1],
|
||||||
|
vertices_faces[:, 0] - vertices_faces[:, 1],
|
||||||
|
dim=1,
|
||||||
|
)
|
||||||
|
|
||||||
# NOTE: this is already applying the area weighting as the magnitude
|
# NOTE: this is already applying the area weighting as the magnitude
|
||||||
# of the cross product is 2 x area of the triangle.
|
# of the cross product is 2 x area of the triangle.
|
||||||
verts_normals = verts_normals.index_add(
|
verts_normals = verts_normals.index_add(
|
||||||
0,
|
0, faces_packed[:, 0], faces_normals
|
||||||
faces_packed[:, 1],
|
|
||||||
torch.cross(
|
|
||||||
vertices_faces[:, 2] - vertices_faces[:, 1],
|
|
||||||
vertices_faces[:, 0] - vertices_faces[:, 1],
|
|
||||||
dim=1,
|
|
||||||
),
|
|
||||||
)
|
)
|
||||||
verts_normals = verts_normals.index_add(
|
verts_normals = verts_normals.index_add(
|
||||||
0,
|
0, faces_packed[:, 1], faces_normals
|
||||||
faces_packed[:, 2],
|
|
||||||
torch.cross(
|
|
||||||
vertices_faces[:, 0] - vertices_faces[:, 2],
|
|
||||||
vertices_faces[:, 1] - vertices_faces[:, 2],
|
|
||||||
dim=1,
|
|
||||||
),
|
|
||||||
)
|
)
|
||||||
verts_normals = verts_normals.index_add(
|
verts_normals = verts_normals.index_add(
|
||||||
0,
|
0, faces_packed[:, 2], faces_normals
|
||||||
faces_packed[:, 0],
|
|
||||||
torch.cross(
|
|
||||||
vertices_faces[:, 1] - vertices_faces[:, 0],
|
|
||||||
vertices_faces[:, 2] - vertices_faces[:, 0],
|
|
||||||
dim=1,
|
|
||||||
),
|
|
||||||
)
|
)
|
||||||
|
|
||||||
self._verts_normals_packed = torch.nn.functional.normalize(
|
self._verts_normals_packed = torch.nn.functional.normalize(
|
||||||
|
Loading…
x
Reference in New Issue
Block a user