Main Content

pointPillarsObjectDetector

PointPillars object detector

Since R2021b

Description

The pointPillarsObjectDetector object defines a PointPillars object detector. To detect objects in a point cloud, pass the trained PointPillars object detector to the detect object function.

If you have a pretrained PointPillars deep learning network, you can use the pointPillarsObjectDetector function to create the pointPillarsObjectDetector object.

If you have training data, you can create an untrained pointPillarsObjectDetector object and use the trainPointPillarsObjectDetector function to train the model.

Creation

Description

detector = pointPillarsObjectDetector(pcRange,class,anchorBox) creates an untrained PointPillars object detector and sets the PointCloudRange, ClassNames, and AnchorBoxes properties.

To train the object detector, you must specify it as an input to the trainPointPillarsObjectDetector function.

detector = pointPillarsObjectDetector(net,pcRange,class,anchorBox) creates a PointPillars object detector by using the specified pretrained network net. This syntax sets the Network property in addition to the properties from the previous syntax.

detector = pointPillarsObjectDetector(___,Name=Value) sets the ModelName, VoxelSize, NumPillars and NumPointsPerPillar properties by using name-value arguments in addition to any combination of input arguments from previous syntaxes. For example, pointPillarsObjectDetector(pcRange,class,anchorBox,ModelName="customDetector") creates a PointPillars object detector with the name "customDetector".

Properties

expand all

Name of the object detector, specified as a character vector or string scalar.

To set this property, specify it as a name-value argument at object creation. For example, pointPillarsObjectDetector(net,pcRange,class,anchorBox,ModelName="customDetector") sets the name for the object detector to "customDetector".

This property is read-only.

PointPillars deep learning network to use for object detection, specified as a dlnetwork (Deep Learning Toolbox) object. You can set this property at object creation by using the input argument net.

This property is read-only.

Range of the input point cloud, specified as a six-element vector of the form [ xmin xmax ymin ymax zmin zmax ].

  • xmin and xmax are the minimum and the maximum limits along the x-axis, respectively.

  • ymin and ymax are the minimum and the maximum limits along the y-axis, respectively.

  • zmin and zmax are the minimum and the maximum limits along the z-axis, respectively.

Set this property at object creation by using the input argument pcRange.

This property is read-only.

Names of the object classes, specified as a categorical vector, a vector of strings or a cell array of character vectors. Set this property at object creation by using the input argument class.

Data Types: char | string | categorical | cell

This property is read-only.

Anchor boxes, specified as an N-by-1 cell array. N is the number of object classes in the PointPillars deep learning network. Each cell defines an anchor box as a vector of the form [length width height center angle].

  • length, width, height — represent the length, width, and height of the anchor box, respectively. Specify each value as a positive real number, in meters.

  • center — represents the center of the anchor box along z axis.

  • angle — represents the orientation of the anchor box along z axis in radians, which is the yaw angle of the lidar sensor.

Set this property at object creation by using the input argument anchorBox.

Data Types: cell

This property is read-only.

Size of the pillars, specified as a two-element vector of the form [length width], representing the length and width of the voxel in meters.

To set this property, specify it as a name-value argument at object creation. For example, pointPillarsObjectDetector(net,pcRange,class,anchorBox,VoxelSize=[0.16 0.16]) sets the size of the voxel to [0.16 0.16].

This property is read-only.

Number of prominent pillars, specified as a positive scalar.

To set this property, specify it as a name-value argument at object creation. For example, pointPillarsObjectDetector(net,pcRange,class,anchorBox,NumPillars=1000) sets the number of pillars to 1000.

This property is read-only.

Minimum number of points per pillar, specified as a positive scalar.

To set this property, specify it as a name-value argument at object creation. For example, pointPillarsObjectDetector(net,pcRange,class,anchorBox,NumPointsPerPillar=100) sets the minimum number of points per pillar to 100.

Object Functions

detectDetect objects using PointPillars object detector

Extended Capabilities

Version History

Introduced in R2021b

expand all