code: def _read_depth_image(self):
          
          # read raw uint16 buffer
          im_arr = self._depth_stream.read_frame()
          raw_buf = im_arr.get_buffer_as_uint16()
          buf_array = np.array([raw_buf[i] for i in range(PrimesenseSensor.DEPTH_IM_WIDTH * PrimesenseSensor.DEPTH_IM_HEIGHT)])
  
          # convert to image in meters
          depth_image = buf_array.reshape(PrimesenseSensor.DEPTH_IM_HEIGHT,
                                          PrimesenseSensor.DEPTH_IM_WIDTH)
          depth_image = depth_image * MM_TO_METERS # convert to meters
          if self._flip_images:
              depth_image = np.flipud(depth_image)
          else:
              depth_image = np.fliplr(depth_image)
          return DepthImage(depth_image, frame=self._frame)
docs: Reads a depth image from the device