Skip to content

Commit a0247ea

Browse files
bottlerfacebook-github-bot
authored andcommitted
pulsar image_size validation
Summary: For a non-square image, the image_size in PointsRasterizationSettings is now (H,W) not (W,H). A part of pulsar's validation code wasn't updated for this. The following now works. ``` H, W = 249, 125 image_size = (H, W) camera = PerspectiveCameras(focal_length=1.0, image_size=(image_size,), in_ndc=True) points_rasterizer = PointsRasterizer(cameras=camera, raster_settings=PointsRasterizationSettings(image_size=image_size, radius=0.0000001)) pulsar_renderer = PulsarPointsRenderer(rasterizer=points_rasterizer) pulsar_renderer(Pointclouds(...), gamma = (0.1,), znear = (0.1,), zfar = (70,)) ``` Reviewed By: nikhilaravi, classner Differential Revision: D32316322 fbshipit-source-id: 8405a49acecb1c95d37ee368c3055868b797208a
1 parent a8cb7fa commit a0247ea

File tree

1 file changed

+13
-24
lines changed

1 file changed

+13
-24
lines changed

pytorch3d/renderer/points/pulsar/unified.py

Lines changed: 13 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -143,41 +143,30 @@ def _conf_check(self, point_clouds, kwargs: Dict[str, Any]) -> bool:
143143
"The camera type can not be changed after renderer initialization! "
144144
"Current camera orthogonal: %r. Original orthogonal: %r."
145145
) % (orthogonal_projection, self.renderer._renderer.orthogonal)
146-
if (
147-
isinstance(self.rasterizer.raster_settings.image_size, tuple)
148-
and self.rasterizer.raster_settings.image_size[0]
149-
!= self.renderer._renderer.width
150-
) or (
151-
not isinstance(self.rasterizer.raster_settings.image_size, tuple)
152-
and self.rasterizer.raster_settings.image_size
153-
!= self.renderer._renderer.width
154-
):
146+
image_size = self.rasterizer.raster_settings.image_size
147+
if isinstance(image_size, tuple):
148+
expected_height, expected_width = image_size
149+
else:
150+
expected_height = expected_width = image_size
151+
if expected_width != self.renderer._renderer.width:
155152
raise ValueError(
156153
(
157-
"The rasterizer width and height can not be changed after renderer "
158-
"initialization! Current width: %d. Original width: %d."
154+
"The rasterizer width can not be changed after renderer "
155+
"initialization! Current width: %s. Original width: %d."
159156
)
160157
% (
161-
self.rasterizer.raster_settings.image_size,
158+
expected_width,
162159
self.renderer._renderer.width,
163160
)
164161
)
165-
if (
166-
isinstance(self.rasterizer.raster_settings.image_size, tuple)
167-
and self.rasterizer.raster_settings.image_size[1]
168-
!= self.renderer._renderer.height
169-
) or (
170-
not isinstance(self.rasterizer.raster_settings.image_size, tuple)
171-
and self.rasterizer.raster_settings.image_size
172-
!= self.renderer._renderer.height
173-
):
162+
if expected_height != self.renderer._renderer.height:
174163
raise ValueError(
175164
(
176-
"The rasterizer width and height can not be changed after renderer "
177-
"initialization! Current height: %d. Original height: %d."
165+
"The rasterizer height can not be changed after renderer "
166+
"initialization! Current height: %s. Original height: %d."
178167
)
179168
% (
180-
self.rasterizer.raster_settings.image_size,
169+
expected_height,
181170
self.renderer._renderer.height,
182171
)
183172
)

0 commit comments

Comments
 (0)