-
Notifications
You must be signed in to change notification settings - Fork 115
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Inaccurate Camera Positioning with UAV Data #138
Comments
In my case, Glomap detected 238/374 images when Colmap only detected 120/374 images
Additional info:
For sake of experiment, I resize the dataset to 1/8 * original size for getting faster result, then I move it to "input" folder Command used:
|
In second attempt, Glomap detected 374/374 images when Colmap only detected 340/374 imagesI resize the dataset to 1/4 * original size instead of 1/8, then I move it to "input" folder. I use spatial_matcher instead of exhausive_matcher Left = Colmap 3.11dev0 commit Additional info:
Command used:
|
@ichsan2895 Thanks for your comments and experiments! Regarding the test results that I obtained when I initially opened the issue, I used the COLMAP GUI to set up some parameters:
After considering your comments, I tried using the command interface you suggested. I was glad to see that GLOMAP produced the expected results :) However, I have a few more questions; I might need to open another issue in COLMAP 3.11.
|
In my test,
I never use GUI interface for reconstruction. But, What I expect :
It didn't happen to me. Maybe something wrong when it compiled? I use |
I used
This really seems like some kind of normalization has been applied to the camera's pose. Of course, regardless, glomap indeed shows better performance than colmap. |
Personally from my experience, I think It need to be inspected with more various dataset. |
The type of data you are dealing with poses challenges for SfM in general, please refer for more details to: "Critical Configurations For Radial Distortion Self-Calibration", http://ccwu.me/file/radial.pdf Apart from that, colmap is likely still the better choice for data with significant unknown distortion. glomap can deal quite robustly with unknown focal length but significant unknown distortion is still often a challenge. In glomap, you may want to try running additional rounds of retriangulation and bundle adjustment. It may (or may not) help with the issue. |
@ahojnnes Thanks for your comment! I will further study and understand the effects of radial distortion based on the paper you provided. In addition to performing additional rounds of triangulation and bundle adjustment, I might attempt to mitigate the bending of camera positions using GPS constraints. |
Colmap has a new pose prior mapper that can take advantage of GPS priors. GLOMAP currently doesn't have a built in way to take advantage of them but could be relatively easily modified to do so. |
Hi development team,
I've been testing your glomap software with UAV imagery, focusing on vegetated scenes. I've noticed that the software isn't performing as well as I'd hoped with these types of images. The original image layout should be nearly coplanar, and colmap has been able to achieve the slightly better results. However, with glomap, the final calculated positions of the images form a curved arc surface, which is not the expected outcome. I've tested this with several similar datasets, and they all seem to produce similar incorrect results.
These are results.
dataset sample
glomap result
colmap result

colmap result(with gps constrained)
The results above are from tests I conducted using a public dataset with scenes similar to my own data. The dataset can be accessed at this link: https://cloud.pix4d.com/site/48774/dataset/390556/files/inputs?shareToken=82c66f66-6d88-41a8-9dfa-98c70ce934bf. In addition to the abnormal camera positioning in the reconstruction, there's also a peculiar issue with point cloud coloring failure, which didn't occur in my own data tests. However, a similar issue with the curvature of the positions was present. I'm not sure if this is related to glomap's use of ray angle as an error term during the global positioning process instead of reprojection error. Or rather, for UAV data, should we adopt a GPS-constrained approach for SfM? Have you considered integrating this feature into the glomap library?
Additionally, the cmake install command does not seem to correctly install the glomap.lib static library to the specified directory.
The text was updated successfully, but these errors were encountered: