SRS with DJI cameras and GCPs

Hi all,

I cannot figure out how CC actually apply spatial reference systems. I try to be as clear as possible with this following example:

  • last week we surveyed an industrial site (8 hectares, a total of about 50 GPixels, 2500 images more or less) with a DJI Phantom 4 Pro. Nadir + oblique views. Overlap and sidelap are correct.
  • prior to flight missions, we also surveyed 12 ground control points with a Leica GS18T, using as SRS WGS84/UTM 32N. So GCPs are known coordinates. Those GCPs have been converted to orthographic coordinates by an experienced surveyor.
  • Importing the images in CC Master, the pose is automatically set to WGS84, while the pose metadata are WGS84/EGM96 geoid (which appear to be the SRS adopted by DJI. Am I wrong?)

The workflow we then followed is:

  1. changed all pose metadata to WGS84/32N (selecting all the images in Photogroup, then changing the setting from the right-side drop-down menu)
  2. changed all the images SRS in the 3D view (this BEFORE aerotriangulation, so with no model or splats visible) since they remain set to EGM96 (don't know why)
  3. run a first AT
  4. imported the GCPs data from a TXT file, using CC wizard and setting the SRS to WGS84/32N (since this is the SRS suggested by the surveyor)
  5. set all the GCPs on at least 7 images for each GCP. Here, the left-side colored tab before the images' name is RED, reporting more than 3 pixels of reprojection error, which shouldn't be the case
  6. set the reconstruction, subdividing the model in 16 tiles, structured aerial dataset.
  7. started the 3MX production, jpeg 100%, keep camera calibration, reference to GCPs for accurate position.

Now... the model is pretty good, actually great to be used to show, but the altitudes are way off (like 30 meters, 30% off since the actual altitude is 105 meters and the model shows 130 to 135 meters) and GCPs positions are 50 cm off, which should not happen when you set ground control points to produce accurate scale, orientation and spatial position.

Could you please help us finding the issue? I was aware of a ContextCapture bug on the altitudes (which is crazy for a reality modeling software which costs a lot, the accuracy should be its job) but with so many settings for SRSs in the same production, maybe I'm a little lost.

Thanks.

  • It is not so much bug of CC regarding altitudes but fact that DJI P4 doesn't write GPS altitudes in EXIF, it writes barometric altitude so it doesn't matter which geoid is used but it seems more accurate after adding photos is to choose WGS84 ellipsoid(just keep in mind that it will set it as default for next imports, very strange GUI approach). But it doesn't matter if GCPs are used if they are in correct SRS. Keep in mind there are 2 SRS needed for horizontal and vertical directions. What geoid does the survey points use?

    Also there is no need to mess with coordinates and trying to change before aerotriangulation. Contextcapture anyway internally uses ECEF coordinates so it recalculates them from any coordinate system to ECEF for displaying together.