I am a very very bloody ITK/SimpleITK beginner trying to understand the basic principles of ITK/SimpleITK. My aim is to register to 2 point clouds: the first one is from a stereoscopic imaging modality (disparity map converted to a set of points). The second point cloud is from a known mesh (stl) where I have already extracted the points. I have everything stored in Python in numpy arrays.
After having a look at the manual and going through the examples, some things aren’t clear to me and I am stuck for days, so I decided to write this post. I will try to collect the most important questions. Please correct my statements if needed
1.) There are ITK/SimpleITK images that offer large flexibility (non equidistant pixels, etc.). Do I have to convert my point clouds into such a data type to apply the registration? I only found the function sitk.GetArrayFromImage but it is not clear to me, how to treat a point cloud Or is there a datatype like PointSet/Mesh for such tasks? In this case, is there a function like sitk.GetArrayFromImage for Meshes?
2.) I think, I would need later (now I am playing around with very simple examples) some kind of non-rigid registration. I found ITK/SimpleITK since this is one of the few libraries that offer this. What would you recommend to choose for a Python implementation: ITK or SimpleITK or is this basically the same? Do I need to consider something special about the datatypes?
3.) After thinking about the datatypes, and how I can understand my problem as a 2D problem (most of the examples are 2D only) it came to my mind that a registration of the depth maps could also be a way to go. I have the disparity map (which is basically a gray scale image) from the stereo vision and I could create something like this from the mesh by taking the distance between surface and a predefined plane and put these distances into an image. Is this possible? Are there any recommended functions?
Ok, I think, that is all until now. Especially the first questions is the most important one because this would allow me to continue working with (Simple)ITK. I am very grateful for your answers in advance!