There is a way to adjust the rays bundles just from GCPs?

Hi to all,

I’m trying to create a model from non-georeferenced photos (all metadata removed).
I have a set of measured GCPs in a local coordinates system and want to use them to derive all the parameters of the aero-triangulation process, so the photos can be undirstorted and the model can be adjusted with them.
I assigned a random UTM reference to my GCPs coordinates just because a georeference is needed for them.

Without any additional parameter I sent the task to a dockerized ODM machine.

As the photos are not georeferenced, it seems to me that the GCPs were not taken into account, because the computed internal parameters of the shots differ a lot from the original ones, and the model is not adjusted or geo-spatially located on the GCPs.

I work sometimes with non-georeferenced local coordinates systems. There is a way to adjust the rays bundles just from GCPs?

1 Like

Welcome! Thanks for helping me make the geohash algorithm for QGIS! Great to see you in our community :sunglasses:

This is all quite above me, so hopefully Piero and/or Stephen can comment soon to help you.

1 Like

Hi Saijin, thank you, I’m testing ODM and I think it is a powerful tool.

My problem seems to be the name and/or location of the gcp_list.txt file. I was confused about where it must be.

If somene is interested, we can remove the images metadata and process the model just with GCPs. I added 500000 m to the mapX and 100000 m to the mapY coordinates and started the gcps file with an EPSG:32631 line. The model was well adjusted and georeferenced near the null island. It is easy to remove the reference and move it to original local system later.

I am now testing its accuracy versus the non-removed metadata images dataset.


Ah good. I was going to suggest there’s a likely bug otherwise, but it sounds like it works as expected.

It’ll be interesting to see what it does with the exif in there: I don’t expect that will turn out well: the extrinsic will have some conflicts. If your lucky, it will prioritize the info from the GCPs, but I’m not sure. It will interesting to see for sure.


I’d raise the possibility of a bug Don't use invalid triangulated points · mapillary/OpenSfM@07a3c2f · GitHub


Thank you all. The process run out of memory in the mesh step. The dense cloud point was created but real objects or structures have a big inclination respect the general slope’s normal. Also, some area wasn’t covered, maybe recognized as outliers. I need to review the logs.
I think that we need to transform local to global GCPs coordinates, or process images without exif georeference metadata if working in a (non-georeferenced) local reference system.