ece4580:module_pcd:connectedcomponents
Differences
This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
ece4580:module_pcd:connectedcomponents [2017/02/10 19:45] – pvela | ece4580:module_pcd:connectedcomponents [2024/08/20 21:38] (current) – external edit 127.0.0.1 | ||
---|---|---|---|
Line 6: | Line 6: | ||
Here is the main algorithm for doing so: | Here is the main algorithm for doing so: | ||
- | < | + | |
- | Compute the proximity matrix (see '' | + | |
- | Apply a threshold to the proximity matrix to get the connectivity matrix C. | + | |
- | Find the first row with a non-zero as the index. | + | |
- | While there is an index to grab | + | |
- | Grab a random point from the point cloud. Let its index be i. | + | - Set labels to be a 1 x np matrix where np is the number of points in the point cloud. |
- | Initialize the index set S=i. | + | - While there is an index to grab |
- | Initialize the neighbor index set N=i. | + | |
- | While the neighbor set is not empty, do the following: | + | * Grab a random point from the point cloud. Let its index be i. |
- | Zero out the rows for the current neighbor index set (C(N,:)=0). | + | |
- | Given the neighbor set, find its connected components | + | |
- | There are all of the indices that are non-zero in the column C(N,:)). | + | |
- | Add these indices to the index set S. | + | |
- | | + | |
- | </code> | + | |
+ | | ||
+ | * The index set S forms a cluster. | ||
+ | * Set labels(S) = numSets | ||
+ | |||
+ | Each time a new set S is computed, it defines a connected component cluster. The indices in the set S are then used to label the points. | ||
+ | The labels variable should be returned. | ||
----------------------- | ----------------------- |
ece4580/module_pcd/connectedcomponents.1486773947.txt.gz · Last modified: 2024/08/20 21:38 (external edit)