Skip to content
This repository has been archived by the owner on Jul 27, 2024. It is now read-only.

根据“点云簇的拟合结果”进行判断 #12

Open
Tracked by #2
HuaYuXiao opened this issue Dec 28, 2023 · 1 comment
Open
Tracked by #2

根据“点云簇的拟合结果”进行判断 #12

HuaYuXiao opened this issue Dec 28, 2023 · 1 comment
Assignees

Comments

@HuaYuXiao
Copy link
Owner

HuaYuXiao commented Dec 28, 2023

This implementation has the constraint that all of the landmarks it expects to see are cylindrical pillars of a uniform radius. The landmarks are identified using laser scan data reported by the simulation/real robot. First the laser scan data is divided into clusters based on the range values reported by the scanner. If a cluster has more than 3 data points it is then processed using a circle fitting algorithm based on this practical guide to identify the center and estimated radius. For more information on the circle fitting see this paper and related website. After fitting the circle any fit with a radius greater than the threshold parameter is discarded. Initially, a classification algorithm based on this paper was also implemented, but it yielded worse results than screening by radius in this application since the approximate size of each landmark is known. A more advanced classification scheme would be more useful when running the robot in a real world as seen by all of the false positive readings in summary video.

In order to associate incoming data with the current estimation of the landmark states, the Mahalanobis distance was used. While this method is more complex than just comparing the physical distance, it has the advantage of taking into account the covariance of the estimated pose. See this resource for how to implement this type of data association. If the distance between a data point and an estimated landmark is under a minimum threshold it is considered a match to an existing landmark. If the distance between a data point and all estimated landmarks is greater than a maximum threshold it is considered a new landmark. These parameters will likely change based on the environment the robot is operating in to yield optimal results.

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant