GCP Projection Line

I have a series of ground control points in GDA94 zone 51 UTM coords. Can anyone suggest what to use as the first line to allow WebODM to recogise the coordinate system. Works fine if I convert everything to WGS84 UTM 51S but would like to know if it recognises the Australian GDA94 UTM coords.

1 Like

Try using a PROJ4 definition:

+proj=utm +zone=51 +south +ellps=GRS80 +towgs84=0,0,0,0,0,0,0 +units=m +no_defs 

Our EPSG database doesn’t have every EPSG code, nor can our projection library model anything from PROJ5 or newer.

Ok, that makes sense. Thank you,
Grant

1 Like

I tried using the new projection line but is doesn’t seem to work - out by about 1.5 to 2 m. However, if I convert all my GCPs to WGS84 z51s coordinates I get an almost perfect fit using the WGS 84 projection line. Maybe there is a problem with WebODM recogising non WGS84 projections?

1 Like

For sure. ODM uses proj4 which doesn’t handle datum transformations properly. Proj now does, but it took a whole rewrite. Proj4 and earlier assumed separated concerns of datum and projection, and so didn’t attempt to correctly handle datums.

1 Like

OK thanks. Probably need to warn users to stick with WGS84 UTM projections for their GCP’s.

2 Likes

Agreed. Can you open a pull request on docs.OpenDroneMap.org in the GCP section?

1 Like

Not sure how to do that. Maybe you can do that for me?

1 Like

I’ve got it bookmarked for my Docs Update list of things to add from the Community, so I’ll get to it Eventually TM :stuck_out_tongue:

1 Like

PROJ has focused more on transformations since its version 5. And it is highly recommended that all applications that use the library are updated as well. However, there are many applications that have not yet done so, so the option of getting rid of the PROJ4 definitions seems far away.

That is, if you really know what transformation you are using to transform to WGS84, then you still have the possibility of replicating the same transformation in a PROJ4 string of a reference system definition. (This is true at least in transformations to and from WGS84.)

I don’t know which transformation you are applying in your specific case (there are currently three static possible transformations defined in the EPSG and PROJ databases), but it is most likely that if you define the reference system with the following string you will achieve the desired result:

+proj=utm +zone=51 +south +ellps=GRS80 +towgs84=0.06155,-0.01087,-0.04019,0.0394924,0.0327221,0.0328979,-0.009994 +units=m +no_defs

That string corresponds to EPSG:9688, GDA-94 to WGS84 (2), with the rotation parameters inverted to follow the PROJ4 position vector convention for Helmert transformations.

The other possible transformations are EPSG:1150, GDA-94 to WGS-84 (1) (the first one mentioned by Saijin_Naib), and EPSG:9689, GDA-94 to WGS-84 (3) (you need to download a grid to perform an horizontal gridshift). Both of them can be replicated with PROJ4 strings.

In any case, the important thing is that you know which transformation you are comparing with.

P.D.: epsg.io does not belong to the EPSG and is extremely out of date.

4 Likes

Thanks for that feedback. If I transform all my GDA94 UTM coords to WGS84 UTM then my ground control points fit exactly (+/- 10-20 cm) with my orthophoto output, so I am quite happy with that.

2 Likes

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.