open3d.ml.torch.datasets.augment.ObjdetAugmentation#

class open3d.ml.torch.datasets.augment.ObjdetAugmentation(cfg, seed=None)#

Class consisting different augmentation for Object Detection

ObjectRangeFilter(data, pcd_range)#

Filter Objects in the given range.

ObjectSample(data, db_boxes_dict, sample_dict)#

Increase frequency of objects in a pointcloud.

Randomly place objects in a pointcloud from a database of all objects within the dataset. Checks collision with existing objects.

Parameters:
  • data – Input data dict with keys (‘point’, ‘bounding_boxes’, ‘calib’).

  • db_boxes_dict – dict for different objects.

  • sample_dict – dict for number of objects to sample.

PointShuffle(data)#

Shuffle Pointcloud.

__init__(cfg, seed=None)#
augment(data, attr, seed=None)#

Augment object detection data.

Available augmentations are:

ObjectSample: Insert objects from ground truth database. ObjectRangeFilter: Filter pointcloud from given bounds. PointShuffle: Shuffle the pointcloud.

Parameters:
  • data – A dictionary object returned from the dataset class.

  • attr – Attributes for current pointcloud.

Returns:

Augmented data dictionary.

static in_range_bev(box_range, box)#
load_gt_database(pickle_path, min_points_dict, sample_dict)#

Load ground truth object database.

Parameters:
  • pickle_path – Path of pickle file generated using scripts/collect_bbox.py.

  • min_points_dict – A dictionary to filter objects based on number of points inside. Format of dict {‘class_name’: num_points}.

  • sample_dict – A dictionary to decide number of objects to sample. Format of dict {‘class_name’: num_instance}