PhotoModeler 2018.1 Release and Drone Vertical Datums
PhotoModeler version 2018.1.0 was released April 11th, 2018. It has a number of large and small improvements and fixes.
- UAV Control Marking Improvement. UAV and drone projects with GCP (ground control points) are now easier to set up.
- Multi-point Transform Improvement. Multi-point transforms can now be formed with just one point assigned (translate), or two points assigned (translate and scale).
- Evaluation System Improvement. Evaluation codes are now 30 days long and are easier to get.
- UI Speed Improvements. A variety of user interface speed improvements have been made.
Drone Vertical Datums
The title of this article mentions drone vertical datums – what does this have to do with the 2018.1 release? First, what is a vertical datum?
A datum in geodesy is a reference point or surface against which all coordinates are based. Another way to think about it is this: if you see a geographic coordinate like (493449.2, 309294.1, 203.6), what is the (0,0,0) of this coordinate system? The datum defines that (0,0,0) or origin.
A geographic coordinate has little meaning without reference to its geographic system (projection, earth surface shape, and horizontal and vertical datums). A horizontal datum is the reference for X and Y, North and South, or Latitude and Longitude. A vertical datum is the reference for height.
Vertical datums are often tied to mean sea level. You can pick any point on the earth and say “This is height zero”, and that would be your vertical datum point. How does this relate to drone projects?
Many drones / UAVs store a GPS position and height in the EXIF header of every image. This tells you where the drone was in space when the photo was taken. This information can help solve photogrammetric projects and help you do real world measurements and mapping in a known geographic system. Unless otherwise stated, drones store their GPS data relative to the WGS 84 horizontal datum. On the other hand, they rarely store the height relative to a standard datum (with a few exceptions, see below). Why is that? GPS data is not very accurate (esp. in height) for a moving platform (again with a few exceptions). You cannot fly a drone at constant height if you depend on just GPS height data – the drone needs something more accurate. That information often comes from an on-board barometer.
When you configure your drone for each flight there is usually a calibration or set up step. This step will usually set the barometer’s reference height. So zero height is the height of the ground where the drone took off. This is not the height relative to a standard geographic datum. Why would this cause a problem?
GCPs and Vertical Datums
Where you can get into trouble is when you introduce other geographic coordinates into your project (such as from ground control points (GCPs)). These GCPs are usually defined relative to a standard geographic datum, or to a local vertical datum that is not the same as the drone’s zero height point. For example, your drone might fly 50m above the ground and the image data will have stored heights around 50m, but the real height of the ground relative to WGS 84 might be 350m. Your GCPs will have height values around 350m and your drone heights are around 50m. You can see how this conflicting information might cause trouble in processing.
The PhotoModeler 2018.1 release has three changes that make dealing with this vertical datum conflict easier and more automatic. Also note that while the vertical datum change is a common issue, the difference in accuracy between the drone GPS and the more accurate GCPs (either horizontal or vertical differences), can cause issues as well. The 2018.1 release changes help with both of these problems.
The three changes in 2018.1 that help are:
- When GCPs are being marked in a project that was set up with EXIF GPS, a message comes up that allows you to disable the drone GPS.
- The multi-point transform (a coordinate transformation between sets of 3d points) now works with just a single point (translate), or two points (translate and scale). As before three and more points define the full transformation between coordinate systems.
- When GCPs are assigned in a project, the project is put into a temporary transformed coordinate system to match the GCPs marked so far. When processing is carried out, the temporary transformation is first applied.
These changes mean that the steps to add GCPs to a drone project are faster and less prone to error. With the temporary coordinate system the GCP Locate function works right away, making GCP marking and assignment easier. These are the new typical steps in 2018.1 and later:
- Solve your drone project with drone image EXIF GPS data.
- Import your GCPs.
- Assign your first GCP point – you are given the option to disable the GPS-based transform.
- Assign sufficient GCPs around the project (typically four or more). As you mark/assign the Locate function becomes useful and helps you find your ground locations more easily.
- Optimize the project.
The PPK and RTK Exception
There is an exception to the statement above that the GPS information (esp. height) is not accurate from your drone or embedded in your images. This exception is when RTK (Real Time Kinematics) GPS, or PPK (Post Processed Kinematics) GPS are used. In this case, the GPS position data stored with the images is accurate and often as accurate as the subsequent GCPs to be assigned. In this case the drone GPS does not need to be turned off (hence why it is an option). A PPK or RTK project can be solved with both the image GPS data and the GCP data active. RTK and PPK systems are more expensive but they allow you to reduce the number of GCPs required for a given level of accuracy. These systems trade off higher up-front cost for lower per-project cost.
PhotoModeler 2081.1 release has some nice improvements and fixes, one of those being the improvement of the GCPs marking process in drone projects.