OpenSfM
OpenSfM copied to clipboard
Aligning submodes seems not working
I have split my datasets into several submodes and reconstructed each one, and everything worked well until this stage. After that I aligned the submodes in order to generate a final reconstruction. But it seems like the commend "align_submodels" is not working well. I've checked each submodes folder and there are two json files including "reconstruction.json" and "reconstruction.aligned.json". Interestingly, these two files showed me the same result when visualizing them in the viewer, which means the submodes were not aligned at all. In addition, there is no reconstruction.json in the top layer of the data folder.
Could someone please tell me what's wrong or do I miss something? Thank you in advance for your kind response.
Alignment might not be noticeable all the times by visual exploration, especially if the adjustment was small (have you compared the point values?)
Also, the software will not merge the submodels for you into a global reconstruction.
Thanks for your kind response. Here I find out a weird issue. Even though the reconstruction of each submode succeeds, the aligned result is still wrong. I wonder that both camera poses and all the 3D points should be merged; however, this is not the case when I view all the reconstruction.aligned.json files through the online viewer.
I explore the programming codes a bit, but there are some issues that I can't understand. Could you please clear the following issues? Thank you for your help in advance.
- When starting alignment, the code runs bundle adjustment. What to adjust in this stage? (both camera poses and 3D points?)
- Then for each sub-reconstruction, their scale, rotation, and translation are computed. What is the reference for these parameters? For example, traditional photogrammetry selects a base submode and fixes it, and then aligns the rests of the submodels w.r.t the base submodel. In OpenSfM, I could not catch where the reference coordinate system is.
- I checked each reconstruction.aligned.json file in each submodel and compared the translations of the same image, but their results are entirely different. So I think something wrong of the alignment function or workflow.
Not sure if this is your issue, but you have to specify whether or not to use the reconstruction version in some steps, for example
opensfm undistort --reconstruction reconstruction.aligned.json