Why one may need a PPK survey drone?
Drones are widely used for aerial imagery. Even consumer model are capable of taking stunning videos and stills. The most popular consumer drones are produced by DJI, a company that has proved to build reliable and easy to use products. However, these drones could be used not just for taking beautiful pictures, but for precise aerial surveying as well. A minor modification opens a wide variety of opportunities from precise aerial mapping and cadastral surveys to volumetrics and 3d modelling. If you already have a DJI drone and use it for videography, you can expand your business opportunities by upgrading your quadcopter to a survey drone. If you already dealing with surveying, you can get a PPK Phantom 4 that will help you to perform surveying cheaper and faster.
When regular drone is not enough.
It is true, that one can use a regular Phantom 4 drone for aerial surveying. Just use one of the available flight planning apps with a “survey” mode to capture overlapping imagery and then use some special software for image processing and stitch and orthomosaic. But there is a major weakness in such approach. It is the accuracy. This means that the objects on your orthophoto will be several meters away from their position in real world.
This happens because Phantom 4 uses a standard UBLOX NEO-M8N GPS module which has the accuracy of several meters. When taking an image, the drone will record the coordinates with the same accuracy, thus, after stitching images together based on these coordinates, the resulting orthophoto will be several meters off too.
Using ground control points
One may use ground control points (GCP) to enhance the accuracy of the orthophoto. To do so, it is necessary to install land based targets that will be visible on the images. The exact coordinates of these targets must be known (usually, they are measured by GNSS satellite receiver), and the number of the targets depends on the desired scale and the size of the surveyed area. The targets are then found on the images and used during photogrammetric processing. known coordinates of each such point help to transform the entire orthomosaic and enhance its accuracy.
Until recently, it was a standard method of precise aerial surveying from drones. Among the shortcomings of this approach is the need to spend time on the installation and coordination of targets. There can easily be dozens of them on one project. Also, it is sometimes impossible to place targets due to the nature of the landscape being surveyed.
On-board GNSS receiver. PPK vs RTK.
The use of on-board high precision GNSS receiver is a big advantage. This way you get accurate image coordinates instead of coarse navigation GPS data. Having it, you will be able to reconstruct orthophoto and 3d model with cm accuracy. Moreover, you no longer going to need a lot of GCPs for the survey. It is recommended to keep just a few for additional control.
There are two ways to obtain accurate image coordinates: in real time with RTK mode and in post-processing with PPK mode. In RTK one gets accurate coordinates right away during the flight, but this method requires very good connection between the base station and the drone. In case of connection loss or interruption the accuracy immediately degrades. PPK mode is simpler and more reliable, as there is no need to have the drone-to-base station connection at all. However it requires some post processing after the flight. Ideally, it is good to have both RTK and PPK enabled drone, but for the most cases of aerial mapping PPK is sufficient and preferable.
A few years ago buying a drone with RTK/PPK receiver on board was a matter of tens of thousands of dollars. This kind of equipment was available only for big business. But now there are affordable and miniature GNSS receivers, base stations and open source software solutions for data processing. Here at UAV-desing we have integrated this technology with DJI drones and created a new affordable tool for for a surveyors, cartographers and cadastral engineers.
You can buy a new Phantom 4 Pro/Advanced enabled with PPK mode, or upgrade your own drone, adding a PPK feature to it.
The upgrade includes:
- integration of Emlid Reach M+ survey class GNSS receiver (GPS/QZSS L1, GLONASS G1, BeiDou B1, Galileo E1, SBA)
- integration of Tallysman GNSS antenna
- precise synchronization of the drone shutter and GNSS receiver. This allows getting 3-5 cm horizontal and vertical accuracy of orthomosaics without GCPs when shooting from 100 meters.
- quick release external GNSS antenna mount
- camera calibration ( exact focal distance and camera-to-antenna offsets )
- software tool for easy RINEX file processing and image geotagging
- detailed manual for surveying and data processing
We always have upgraded drones in stock. All orders shipped within business 1-2 days after payment. Upgrading of your drone takes just 3 days.
1. Design a flightplan in DJI GS Pro or MapPilot
2. Set up a RINEX-compatible base station. It is also OK to use data from differential correction supplier if their station is within 10 km from the survey area.
3. Upload the flight plan to your PPK Phantom 4 and start the mission.
4. After the fight collect the data from GNSS receiver, data from base station and images from the drone.
5. Calculate accurate image coordinates (PPK mode).
6. Reconstruct an orthomosaic, DEM and 3D model with 3-5cm accuracy.
The following is required to perform the survey:
- PPK enabled DJI Phantom 4 Adv/Prov1/Prov2 from UAV-design.
- A decent tablet with installed DJI GS Pro and/or MapPilot (we recommend Apple Ipad)
- GPS/GLONASS GNSS receiver with at least 1Hz record frequency. Alternatively, a reference station within 10 km from the survey area.
- A workstation for data processing. Minimum 16 Gb RAM, Core i7, Dedicated graphic card.
- RTKLIB (open source) software for PPK satellite data processing. For even more accurate results and working with local coordinate systems we recommend Magnet Tools.
- Any software for photogrammetrical processing. For example Agisoft Metashape.
Suggested items that are very helpful:
- Additional batteries.
- Multi-battery charger.
- Car power inverter.
Before every PPK flight, it is necessary to setup a ground base station and turn on the onboard GNSS module.
Settin up the base station.
PPK method requires a base station withing 10 km from the survey area. It has to be turned on before the take off and remain working during the flight. It may be turned off only when flights are over for that day. You may use any RINEX-compatible GNSS receiver or a reference station data supplied from 3rd party.
Base station requirements:
- receiving both GPS/GLONASS
- at least 1 Hz recording frequency ( 5 Hz recommended)
- position no further than 10 km from the survey larea
- logging in static mode and export to RIINEX file
Here is an example of using Emlid Reach RS+ base station.
- Install ReachView mobil app
- Setup Reach RS+ according to the manufacturer requirements ( https://docs.emlid.com/reachrs/placement/)
- Place the base station at a point with known coordinates (lat, lon, height). Alternatively, mark the point and determine its coordinates later.
- Measure the height of the antenna from the top of the marker to the bottom of the Emlid Reach RS+ receiver
- Add 65mm to the measured value. The value you get is the height of the antenna phase center. Write it down.
- Turn on the receiver and follow the connection instructions (https://docs.emlid.com/reachrs/common/reachview/)
Here it is in short:
- When turned on, the receiver will be in a Wi-Fi hotspot mode
- Identify network with “reach:xx:xx” ID on your mobile device
- Enter password “emlidreach”
- Start ReachView app
- Select reach rs+ in device list
Check the main Emlid Reach RS+ setting:
- RTK settings tab – “position mode” must be “Static”
- GNSS select tab – choose GPS/GLONASS, update rate – 5 Hz
- Logging tab – “Raw data” must be “UBX” and state “ON”
Onboard GNSS module installation
Take the drone and the GNSS module out of the from the Phantom 4 case. See the picture below for drone and module position in case.
Slide in the GNSS module to the mount on a side of the drone until you hear a click. Click means that the module is now secured.
Plug in the GNSS connector to the port on the gimbal.
GNSS module is ready.
To detach the GNSS module first unplug the connector from gimbal, then push the lock-pin on the inner side of the mount and slide the GNSS module up and out of the mount.NOTE! You can use the Phantom without GNSS module for capturing stills and videos.
Power on the drone. GNSS module will be powered from the drone battery automatically.
After the first turn on you may check that the Emlid Reach M+ is functioning in a right way (described further). It is not necessary during subsequent flights.
It is recommended to keep the drone still for 1-2 minutes after turning on for proper GNSS module initialization.
LEDs on a side of the module indicate its status. Description of the indication: https://docs.emlid.com/reachm-plus/led-status/
Checking the onboard Reach m+
Perform this check only when you first turn on the GNSS module. You can refer to LED module indication later.
Your GNSS module is comes preconfigured.
Only check the following settings:
- RTK settings – Position mode – “Kinematic”
- RTK settings – GNSS select – check “GPS/GLONASS”, “update rate – 5 Hz”
- Logging tab – Raw data –“UBX” and state “ON”
Congratulations! Your drone is now ready to for getting the flight plan and taking off.
We suggest using DJI GS Pro or MapPilot for flight planning.
DJI GS Pro is convenient for simple aerial surveys. In case if there is a complex terrain or you need to capture a linear object it is better to use MapPilot. We recommend getting a MapPilot business license.
Here is DJI GS Pro parameters.
- shooting angle – “Course Aligned”
- Capture Mode – “Capture at Equal Dist.interval”
- Flight course mode – “Scan Mode”
- longitudinal overlap no less than 70% (80% is better)
- transverse overlap no less than 50% ( 60% or more is better)
- Speed 8-10 m/s
After checking the settings.
- Create a flight plan
- Upload it to the drone
- Take off and ascend to the desired survey altitude
- In the “real time picture mode” check that the image is in focus to prevent blurred imagery.
- Set shutter to 1/200 or shorter
- Set aperture and ISO according to the light conditions. It is preferable to have as low ISO as possible (100-200)
- Launch the auto mission and perform the flight
If you plan to do multiple flight survey, turn off the drone after each flight. Doing so will create a separate RINEX file for each flight in the log of GNSS module. This helps to prevent any possible confusion during data processing.
However, keep the base station on and DO NOT turn it off between the flights. You may turn the base station of when the last flight is completed. The data will be saved automatically.
DJI GS Pro supports flight plans that are longer than a drone flight time. For example, you can create a flight plan for 2 square km survey and start the mission. When the battery will be low the drone will return to the start point. After switching the battery DJI GS Pro will offer you to continue previous survey from the last point of th previous flight.
The data you need for processing.
The purpose of this step is to obtain accurate coordinates of the image centers. To do this you need to have the base station log, onboard GNSS module log and the coordinates of the base station.
- Get the data from the base station and convert it into RINEX files if necessary. You can also use reference station data (the station must be within 10 km from survey area
Emlid Reach RS+ usage example:
Turn the unit on and connect to it using the app. Go to logging tab. Download a UBX file for the date of survey.
2. Get the data from onboard module and images from the drone.
- Power on the drone and connect to the onboard GNSS module as described in manufacturer instruction.
NOTE! If you are downloading data in office it is recommended to connect both base station reach rs + and onboard module reach m+ to your office Wi-Fi (see how here at “Setting up Wi-Fi”). If you connect to onboard module in Wi-Fi hotspot mode, it might require satellite visibility.
- Go to Logging tab and dowload all UBX files for the date of the flight/flights.
- Get the images from the drones SD-card.
- Put images from separate flights into separate folders.
3. Download RTKLIB software from https://docs.emlid.com/reach/common/tutorials/gps-post-processing/
4. Make sure you have “UAV-design tools” software ready.
5. Make sure you have camera calibration parameters and camera to GNSS antenna offset value.
Now you have al the data and ready for processing.
RTKLIB is a free and open source GNSS data processing software and it supports processing only in WGS84 coordinate system.
- Convert UBX log file from onboard GNSS module into RINEX-file as described in the manual (https://docs.emlid.com/reach/common/tutorials/gps-post-processing/). Or use the settings shown below.
Drag and drop UBX file to the top input field and specify “ublox” format. Make sure that Rinex 3.03 version is selected at the Options tab and hit OK.
You now should see raw_yyyymmddtttt.nav and raw_yyyymmddtttt.obs files in the folder containing initial UBX file.
Note, that the files are named with the date and time of the start of the measurements in UTC format.
2. If you use Reach RS+ base station, convert UBX to RINEX in a similar way as above. If you use a different base station, make sure you convert the recorded log file into RINEX.
3. Start the UAV-design tools.
This software is developed by UAV-design team and provides several useful functions:
- Batch rename the images, separating into different flights
- Optimize and prepare RINEX files from reach m+ for using with post processing software (RTKLIB, Magnet Tools, Javad Justin). If you have any problems using optimized files with this software, let us know at firstname.lastname@example.org and we will fix the issue.
- Create a geotag file for further photogrammetric processing.
4. Click on “Rinex processing”
Choose the drone type and provide a path to the raw_YYYYMMDDHHMM.obs file from the GNSS module.
In case you have multiple flights and therefore multiple OBS files, you can select the whole folder. THe software will automatically process all OBS files from that folder and output RINEX files with .18О extension.
Click “Execute”, the following message will appear:
The file raw_201809071320.18o will appears in the data folder:
This file contains the exact timestamps for the camera’s shutter release for subsequent post-processing.
5. Now we can process the base station data and calculate the exact coordinates of image centers.
You can use the following instruction, section “Calculating base position”, or you can follow these steps to do the processing:
- launch RTKLIB RTKPOST
- Specify the path to the data from the onboard GNSS module – a file with the extension .18o (as a rover), as well as to a file with the .obs (.18o) extension from the base station and the .nav (.18n) file. Click “Options” and make sure the settings are as shown below:On the “Positions” tab enter the coordinates of the base station and the antenna height. Remember, we wrote it down during the setting up of the base station.
ATTENTION! The accuracy of the base station coordinates determines the overall accuracy of the entire model.
As a result, a file with the .pos extension will appear in the folder with the initial GNSS module data .
This file contains the geodetic coordinates of the image centers.
6. Start the UAV-Design Tools
If you performed many flights in one or several days, we recommend using the “images preprocessing” procedure.
Choose the minimum break between flights. Enter a prefix for the name of the pictures and specify the directory where all the pictures are. Click “Execute”.
The software will rename all the pictures according to the entered prefix and the date of shooting and will put the pictures in different folders for each flight.
If you have only one or two flights, you may skip this step.
Use “Create geotag list” function to create a CSV file, containing geodetic coordinates for each image.
Choose the scenario (Kind of lib) – “RTKLIB”.
Select a folder with images (make sure to delete all images taken from the ground).
Specify the path to the resulting file with geodetic centers raw_201809071320_events.pos
Close the application when processing is done.
A new CSV file will appear in the Reach module data folder:
This file contains:
- the names of the images
- the geodetic coordinates of the image centers
- accuracy parameters for each image center
This file is used as a geotag file for images when creating orthophotomaps and DEMs. The file is imported to the photogrammetric software along with the images.
Photogrammetric data processing allows you making high-precision 3D terrain models using images and image center coordinates. The orthophotomap of your site and a height map are derived from this model. There are many pieces of the photogrammetric software available. As an example we are going to use Agisoft Metashape pro.
- Images taken with Phantom 4 Advanced/Pro PPK
- Exact image centers coordinates calculated in RTKLIB or other software
Lets get started!
- Start Agisoft Metashape, add a new chunk (1) and import the images (2):
- Go to “Reference” tab:
- You will see a list of images and navigation coordinates of their centers. This coordinates are loaded from the EXIF data. The accuracy of the navigation centers is usually around several meters.
- Select one of the lines with the coordinates, Click Ctrl + A, all lines with cameras in the Reference window should be highlighted. Then right click in this window -> Clear-> Clear All.
Click “Yes” in a dialog
- Now lets load previously obtained accurate coordinates of the image centers. To do this, select import in the Reference window.Select a CSV file with accurate coordinates.Make sure that the center coordinates of the images are loaded and the columns are matching. Then click OK.
Attention! Starting from UAV-design tools version 1.0.8 the coordinate file also contains Accuracy column. It holds the accuracy of each coordinate. If you have this column in your CSV, we recommend checking «Accuracy» box in the «Import CSV» dialog and entering the corresponding column number (5). In this case you will have the accuracy parameter for each image coordinate imported in Agisoft Metashape.Make sure that the accurate image centers coordinates are imported:
- If you already have the accuracy imported from CSV, skip this step. If you didn’t have the accuracy in your CSV file, click Reference settingsEnter 0.1 meter into the camera accuracy window and click OK.
- Open the camera calibration parametersOn the GPS / INS Offset tab, enter the following offset parameters, then click OK
Attention! The offset parameters of your drone may differ from the ones shown on the picture. The parameters for each specific drone are sent along with the camera calibration parameters. You can also get a script from us that will automatically register the offset!
- Start image alignment.With the following parameters:Click ОК. Image alignment takes from several minutes up to an hour depending on the size and amount of images and your computer resources.
- When images are aligned, open camera calibration parameters.Go to “Adjusted” tab and enter the calibrated value of the focal length. This value is individual to each drone and is provided to you by us.
On the Reference panel Click Optimize Cameras.
Uncheck “Fit f” and Click OK.
- On the Reference panel Click “View Errors”.At the end of the list, you will see the resulting errors of all cameras in meters:In this case, the errors averaged at 2.5-2.8 cm
- Now lets check the accuracy of the resulting model using ground control points. For this purpose we laid out the targets and got their exact coordinates before performing the flights. In order to import GCPs into PhotoScan, click the View Source button on the Reference panel. Right-click and select “Create marker” in the Markers field. Left-click the “Longitude” field and enter the longitude value with a dot delimiter. Enter latitude and height in the same way. In our case, we have prepared an XML file containing the coordinates of control points in advance. To load the coordinates, select:Import markers WGS file from the GCP folder. As a result, control points are added to the markers field. It is also possible to load control points from a CSV file. Create a file with the fields: Point number, latitude, longitude. Enter your control points coordinates there. From the Reference window select import and import a CSV. In the dialog window, agree to create markers (select “Yes to all”).
- Now you need to place the markers on the images and see the magnitude of the errors at them. To do this, put a tick in front of the tt1 marker, right-click and from the context menu select Filter Photos by Markers. As a result, only those images that this marker supposedly falls at remain on the panel.Double click the image and the suggested marker position will show up on the image. In our case it is almost at the center of our GCP target. Click the gray marker and drag it to the center of the target. Repeat this for several images (at least 4). The marker will change its color to green. Thus, if we indicated the position of the marker on 4 or more images, we have determined its exact position in space.
- Errors at the control points can be viewed on the Markers panel. To do this, the “view errors” mode must be enabled:
- We made sure that the errors at the control points on the ground are minimal, within a few centimeters.
Having this done, you may proceed to dense point cloud generation and then to DEM and Orthophoto generation.
Please refer to the corresponding section of the Agisoft Photoscan manual.