Chri
Chri

Reputation: 1

detect a rectangular noisy plane (size known; height; width) in a pointcloud

I'm implementing a calibration algorithm between a LiDAR and a Mono-Camera. Until now, I have segmented my pointclouds by my own and manually, which took me a lot of time.I'm looking for an algorithm (prefered in python), which can detect my checkerboard plane in a pointcloud automatically and deletes all other points of the pointcloud given. The size of the checkerboard is known and enough points of the checkerboard surface are given (~1000 points describe this plane).

If there are any known algorithms for this problem, I would greatly appreciate your help. I would also appreciate any tips.

I already tried ransac algorithms, but they were not so satisfying.

Upvotes: 0

Views: 612

Answers (1)

AlixL
AlixL

Reputation: 372

I think you can have a look at Open3D. It is a C++ & Python lib that enables the processing of point clouds. They offer point cloud registration algorithms (ICP, point-to-point, point-to-plane, etc.).

Using one of the registration algorithms, you could use an existing point cloud describing your checkerboard surface, compute the registration to know the position of your checkerboard on the point cloud collected by the LiDaR, and then remove the outlier points.

The Global Registration algorithm is a good place to start.

As suggested by Idog, this method can suffer from some limitations, especially the quality of your point cloud. Alternatively you can look at the Plane segmentation function in Open3D

Upvotes: 0

Related Questions