MCPcopy Create free account
hub / github.com/BerkeleyAutomation/meshrender / wrapped_render

Method wrapped_render

meshrender/scene.py:214–278  ·  view source on GitHub ↗

Render images of the scene and wrap them with Image wrapper classes from the Berkeley AUTOLab's perception module. Parameters ---------- render_modes : list of perception.RenderMode A list of the desired image types to return, from the perception

(self, render_modes, front_and_back=False)

Source from the content-addressed store, hash-verified

212 return self._renderer.render(render_color, front_and_back=front_and_back)
213
214 def wrapped_render(self, render_modes, front_and_back=False):
215 """Render images of the scene and wrap them with Image wrapper classes
216 from the Berkeley AUTOLab's perception module.
217
218 Parameters
219 ----------
220 render_modes : list of perception.RenderMode
221 A list of the desired image types to return, from the perception
222 module's RenderMode enum.
223
224 front_and_back : bool
225 If True, all surface normals are treated as if they're facing the camera.
226
227 Returns
228 -------
229 list of perception.Image
230 A list containing a corresponding Image sub-class for each type listed
231 in render_modes.
232 """
233
234 # Render raw images
235 render_color = False
236 for mode in render_modes:
237 if mode != RenderMode.DEPTH and mode != RenderMode.SCALED_DEPTH:
238 render_color = True
239 break
240
241 color_im, depth_im = None, None
242 if render_color:
243 color_im, depth_im = self.render(render_color, front_and_back=front_and_back)
244 else:
245 depth_im = self.render(render_color)
246
247 # For each specified render mode, add an Image object of the appropriate type
248 images = []
249 for render_mode in render_modes:
250 # Then, convert them to an image wrapper class
251 if render_mode == RenderMode.SEGMASK:
252 images.append(BinaryImage((depth_im > 0.0).astype(np.uint8), frame=self.camera.intrinsics.frame, threshold=0))
253
254 elif render_mode == RenderMode.COLOR:
255 images.append(ColorImage(color_im, frame=self.camera.intrinsics.frame))
256
257 elif render_mode == RenderMode.GRAYSCALE:
258 images.append(ColorImage(color_im, frame=self.camera.intrinsics.frame).to_grayscale())
259
260 elif render_mode == RenderMode.DEPTH:
261 images.append(DepthImage(depth_im, frame=self.camera.intrinsics.frame))
262
263 elif render_mode == RenderMode.SCALED_DEPTH:
264 images.append(DepthImage(depth_im, frame=self.camera.intrinsics.frame).to_color())
265
266 elif render_mode == RenderMode.RGBD:
267 c = ColorImage(color_im, frame=self.camera.intrinsics.frame)
268 d = DepthImage(depth_im, frame=self.camera.intrinsics.frame)
269 images.append(RgbdImage.from_color_and_depth(c, d))
270
271 elif render_mode == RenderMode.GD:

Callers 2

test_viewer.pyFile · 0.80
sampleMethod · 0.80

Calls 1

renderMethod · 0.95

Tested by

no test coverage detected