Skip to content

Commit 5ac96b2

Browse files
vkhalidovfacebook-github-bot
authored andcommitted
corrected UV coordinates flip for torso
Summary: Fixes flip transform for body parts that do not change labels under flip: - old behavior: UV coordinates unchanged - new behavior: UV coordinates flipped Reviewed By: MarcSzafraniec Differential Revision: D19327508 fbshipit-source-id: 7747e56b2746984452d13db9a7f6536034eba114
1 parent 4f68200 commit 5ac96b2

File tree

1 file changed

+5
-4
lines changed

1 file changed

+5
-4
lines changed

projects/DensePose/densepose/structures.py

+5-4
Original file line numberDiff line numberDiff line change
@@ -152,14 +152,15 @@ def _transform_pts(self, transforms, dp_transform_data):
152152
self.x = self.segm.size(1) - self.x
153153
self._flip_iuv_semantics(dp_transform_data)
154154

155-
def _flip_iuv_semantics(self, dp_transform_data):
155+
def _flip_iuv_semantics(self, dp_transform_data: DensePoseTransformData) -> None:
156156
i_old = self.i.clone()
157157
uv_symmetries = dp_transform_data.uv_symmetries
158158
pt_label_symmetries = dp_transform_data.point_label_symmetries
159159
for i in range(self.N_PART_LABELS):
160-
if pt_label_symmetries[i + 1] != i + 1:
161-
annot_indices_i = i_old == i + 1
162-
self.i[annot_indices_i] = pt_label_symmetries[i + 1]
160+
if i + 1 in i_old:
161+
annot_indices_i = (i_old == i + 1)
162+
if pt_label_symmetries[i + 1] != i + 1:
163+
self.i[annot_indices_i] = pt_label_symmetries[i + 1]
163164
u_loc = (self.u[annot_indices_i] * 255).long()
164165
v_loc = (self.v[annot_indices_i] * 255).long()
165166
self.u[annot_indices_i] = uv_symmetries["U_transforms"][i][v_loc, u_loc]

0 commit comments

Comments
 (0)