My current approach involves projecting the cloud onto the XY plane and then creating a uniform grid_cloud of the same resolution / size. I am able to prune this grid_cloud based on its differences to the above shown cloud, which gives me a sort of 'negative space' representation. Detecting the circular shape and its respective center is relatively straight forward from there.
My preliminary results are ~OK, but I thought I would check the here to see if anyone has any novel ideas I could implement to improve upon it.
Are there any sort of edge detection, or hole detection, libraries I could make use of?
For instance I am able to qutie easily generate a poly-line which traces the outer perimeter of the cloud, but unfortunately not the inner circle perimeter.