Projection issues with Coordinate System


I am conducting mapping missions with a DJI M300 RTK drone and P1 with an Emlid RS2+ base station and processing through Pix4Dmapper (4.8.4). GCPs were taken within the survey area using the Emlid RS2+ with NTRIP corrections. The NTRIP is also used to get the base station’s location when setting up local NTRIP for RTK corrections to the drone.

GCPs are collected in NAD83 (CSRS) / UTM 10N and CGVD2013 (CGG2013) height datum. These GCP points also record Lat/Long in DD and Ellipsoidal heights.

I am running into weird projection issues when processing in Pix4D and observing the data in QGIS.

Initially we were processing in Pix4D with Output Coordinate system as NAD83 (CSRS) / UTM 10N to align with our GCPs and local coordinate system. When looking at the Check Points/GCPs we were getting errors of:
X Error = -1.13m
Y Error = 0.62m

Processing the data with an output coordinate system of WGS84 / UTM 10N we got a high accuracy in comparison to the Check Points with errors of:
X = 0.0108m
Y = 0.0132m

I though the issue was resolved. That Pix4D just had issues when taking images in WGS84 and converting to NAD83. However, when importing the produced map into QGIS, there was again issues in comparing to the GCPs. When the project CRS was in WGS84 / UTM 10N, there was errors similar to what was seen initially with horizontal errors of:
X = 1.12m
Y = 0.65m

I get the same error if the QGIS project is in NAD83 (CSRS) / UTM 10N.

What is interesting is that when the project is in NAD83 / UTM 10N, the GCPs are accurate. None of my data has that coordinate system. If I reproject the Pix4D data using GDAL Warp from WGS84 / UTM 10N (with project EPSG: 26910 NAD83 / UTM 10N) to NAD83 (CSRS) / UTM 10N (EPSG: 3157) then the data is aligned with the GCPs in EPSG 26910 and 3157 but not WGS84 / UTM 10N (EPSG: 32610).

If in Pix4D I use the GCPs as 3D GCPs, the resulting data is accurate to the GCPs in QGIS no matter what projection project is in.

My main question is that if my GCPs are within NAD83 (CSRS) / UTM 10N and my output coordinate system is the same, why are there such large errors?

And why would WGS84 / UTM 10N be accurate in Pix4D but then not in QGIS using the same projection?

Any help would be greatly appreciated.

Hi Colin,

Thank you for reporting this. I cannot say for certain if there is a but within PIX4Dmapper. Have you tried processing with PIX4Dmatic yet? I am curious if you receive the same shift in outputs. You can sign up for a trial at the link below.

Hey Mike,

I just gave Pix4Dmatic a try. I don’t like that you can’t select an output coordinate system without GCPs.
Even if we didn’t use GCPs on a site we would still like to create the model in a NAD83 projection.

What I did like is that the software has NAD83 (CSRS) / UTM 10N and CGVD2013 (CGG2013) height datum built in. After running the calibration step and comparing to the GCPs the model was actually quite accurate compared to Pix4Dmapper with errors of
X = 0.022
Y = 0.015
Z = 0.235

That Z accuracy is still not great through.

I also ran Pix4Dmapper with an output coordinate system of NAD83 / UTM 10N and it was very accurate with a RMS error of:
x = 0.0133
y = 0.0151
z = 0.0334

I am assuming now that Pix4Dmapper just has an issue with the projection to NAD83 (CSRS) / UTM 10N coordinate system. Is this something that could be fixed in an update?

Hi @colin.p,

Please note that GCPs are not mandatory if you want to select an output coordinate system.