Scale constraint?

Unless I’ve missed something (in which case nevermind) I don’t believe ODM has the scale constraint functionality that many other mapping softwares have. Many of the organizations that I work with don’t have the: time, resources, funds, or training to create survey-grade GCPs. Especially in wilderness areas. Scale constraints are a good step towards relative accuracy, especially when trying to compare relative changes between flights.

How realistic would it be for this to be implemented? Obviously nothing replaces well surveyed GCPs, but scale constraints are a great way to turn very inaccurate non-gcp maps into kind-of inaccurate non-gcp maps, which can be really important!


Probably very realistic. I’m not familiar with other software’s workflows, how does the feature work in detail? Plus I assume this would only apply for images that have no georeferencing (not even GPS values in the EXIFs) or not?

1 Like

It can be applied to projects with GPS/GCPs, as well as MTPs. I found it helpful for non-RTK/PPK GCPs.

How-To Use a Scale Constraint:

Measurement Workflow Training Course (Free via Pix4D/MyTeachables):

As Saijin said above, it can be applied to GPS tagged images! (I believe it may be a requirement for Pix4D scale-constraints even).

I’ll have to go read some white papers on the exact math behind it, but the user-facing process starts after processing your initial orthomosaic. You find a point-of-interest with known dimensions and input coordinate points with the known lengths in-between them (it can also be used as an additional check when using well surveyed GCPs by checking the distance between them). So basically the program is saying this point_A is at (x,y) and point_B is at (x,y). The user then inputs that the distance between point_A and point_B is (n), the software mulls this over and makes some scale corrections by partially reprocessing the dataset.

You could use something as functionally specific as a yard stick that you’ve laid out, or just something with known measurements like a house or a car.

My experience with Pix4D and Agisoft is that scale-constraints do have reasonable limits of functionality (as they should). So say you’ve made a map with only GPS-tagged images and you create a scale-constraint with a previously placed yard stick. If the software originally calculated the yard stick as being 0.8 yards without scale-constraint corrections everything will most likely be able to scale appropriately. But if it had previously measured the yard stick as 0.1 yards, you’re going run into some issues. My point is that scale-constraints are an additional tool for relative accuracy correction, but they certainly don’t make significant changes possible and can’t correct poorly gathered data-sets.

Excuse my rambling, typing this up on a break and didn’t proof-read very well!

1 Like

My experience exactly. I used a 6’x3’ launch pad for my field surveying, so I always had my scale constraint if I wanted/needed that extra correction.

Interesting, thanks for the details. Certainly worthy of a feature request. I don’t think I’ll have the bandwidth to implement this personally in the near term, but we’d welcome contributions

I think it would be a matter of defining a new file format to describe the contraints and plug those constraints into OpenSfM, but it might not be too straightforward.


This is a pretty interesting proposal.

1 Like