open3d.ml.tf.pipelines.ObjectDetection

class open3d.ml.tf.pipelines.ObjectDetection(model, dataset=None, name='ObjectDetection', main_log_dir='./logs/', device='cuda', split='train', **kwargs)

Pipeline for object detection.

__init__(model, dataset=None, name='ObjectDetection', main_log_dir='./logs/', device='cuda', split='train', **kwargs)

Initialize.

Parameters
  • model – network

  • dataset – dataset, or None for inference model

  • device – ‘gpu’ or ‘cpu’

  • kwargs

Returns

The corresponding class.

Return type

class

get_3d_summary(infer_bboxes_batch, inputs_batch, epoch, results=None, save_gt=True)

Create visualization for input point cloud and network output bounding boxes.

Parameters
  • infer_bboxes_batch (Sequence[Sequence[BoundingBox3D]) – Batch of predicted bounding boxes from inference_end()

  • inputs_batch

    Batch of ground truth boxes and pointclouds. PointPillars: (Tuple (points(N, 4), bboxes(Nb, 7), labels(Nb),

    calib(B, 2, 4, 4), points_batch_lengths(B,), bboxes_batch_lengths(B,)))

    PointRCNN: (Tuple (points(B, N, 3), bboxes(B, Nb, 7), labels(B,

    Nb), calib(B, 2, 4, 4)))

  • epoch (int) – step

  • results (tf.FloatTensor) – Model output (only required for RPN stage of PointRCNN)

  • save_gt (bool) – Save ground truth (for ‘train’ or ‘valid’ stages).

Returns

[Dict] visualizations of inputs and outputs suitable to save as an

Open3D for TensorBoard summary.

load_ckpt(ckpt_path=None, is_resume=True)
run_inference(data)

Run inference on given data.

Parameters

data – A raw data.

Returns

Returns the inference results.

run_test()

Run test with test data split, computes mean average precision of the prediction results.

run_train()

Run training with train data split.

run_valid(epoch=0)

Run validation with validation data split, computes mean average precision and the loss of the prediction results.

Parameters

epoch (int) – step for TensorBoard summary. Defaults to 0 if unspecified.

save_ckpt(epoch)
save_config(writer)

Save experiment configuration with tensorboard summary.

save_logs(writer, epoch)