import tensorflow as tf

                                  predicted_poses)]:
      for i in range(classes.shape[0]):
        sdf = tf.expand_dims(sdfs[i], -1)
        sdf = sdf * -1.0  # inside positive, outside zero
        samples_object = centernet_utils.transform_pointcloud(
            tf.reshape(samples_world, [1, 1, -1, 3]),
            tf.reshape(poses[2][i], [1, 1, 3]),
            tf.reshape(poses[0][i], [1, 1, 3, 3]),
            tf.reshape(poses[1][i], [1, 1, 3]), inverse=True) * 2.0
        samples_object = (samples_object * (29.0/32.0) / 2.0 + 0.5) * 32.0 - 0.5
        samples = tf.squeeze(samples_object)
        interpolated = trilinear.interpolate(sdf, samples)
        occupancy_value = tf.math.sign(tf.nn.relu(interpolated + self.tol))
        sdf_values += occupancy_value
