detectLOAMFeatures
Description
detects lidar odometry and mapping (LOAM) features in a point cloud based on curvature
values. The function computes the curvature of each point using the closest neighbors of
that point in the same laser scan. The curvature value of a feature point determines whether
the function classifies it as a sharp edge, less sharp edge, planar surface, or less planar
surface point.points
= detectLOAMFeatures(ptCloudOrg
)
specifies options using one or more name-value arguments. For example,
points
= detectLOAMFeatures(ptCloudOrg
,Name=Value
)NumRegionsPerLaser
=6
sets the number of regions to
split each laser scan to 6
. Unspecified arguments have default
values.
Examples
Input Arguments
Output Arguments
Tips
Because LOAM feature point detection supports only organized point clouds, convert an unorganized point cloud into an organized point cloud by using the
pcorganize
function.The LOAM algorithm relies on the neighborhood of each point to compute its curvature and identify which points are on the boundaries of occluded regions. These points are considered unreliable points. Because of this unreliability, any preprocessing steps to the point clouds prior to feature point detection is not recommended.
You can increase registration accuracy by increasing the maximum total number of feature points the function can detect. To increase the total number of feature points, increase the value of one or more of the
MaxSharpEdgePoints
,MaxLessSharpEdgePoints
, andMaxPlanarSurfacePoints
arguments. Note that this can also decrease the processing speed.
Algorithms
The feature point detection algorithm supports VLP-16, HDL-32, and other spinning lidar sensors also known as surround sensors.
The laser ID of each point corresponds to the laser that detects the point. For organized point clouds used with this algorithm, the
pointCloud
Location
property stores the collected points as an M-by-N-by-3 matrix. Each row M represents a separate laser scan with N number of points, and 3 represents the x,y,z coordinates for each point.The algorithm uses the laser ID for point detection in
detectLOAMFeatures
and for point matching inpcregisterloam
.
References
[1] Zhang, Ji, and Sanjiv Singh. “LOAM: Lidar Odometry and Mapping in Real-Time.” In Robotics: Science and Systems X. Robotics: Science and Systems Foundation, 2014. https://doi.org/10.15607/RSS.2014.X.007.
Extended Capabilities
Version History
Introduced in R2022a