Drone surveying

Our compeny is inveistaing the ability to complete drone surveys of landscapes with the aim of creating 3D models to be used in AutoCAD for measurment purposes - these will be for surveys of watercourses to assess their viability for hydropower projects. Accuracy needs to cm level - max 10cm for outline survey or cm level for design work.
I understand to get this accuracy level we need to use RTK GPS to be able to set out Global Control Points (GCP) visible by the drone. Being a complete novice to this I have a couple of questions, would greatly appreciate some comments…

We were thinknig of a DJI Drone.

Firstly, I presume we need to make obtain accurate coordinates and elevation of all the GCP’s… Can we do this with a single ReachRS receiver? I see there are comments about needing a base station and a rover - is it really necessary to have both when the unti can operate as both simultaneously?

Secondly, do we also need RTK GPS on the drone itself, or can software create a 3D model if the drone can see and reference GCP’s from the air?

Thirdly, are there any special camera requirements for what we need to do, beyond that available on lets say a DJI Phantom 4?

We were thinking of using software like Pix4D software to create the model and then Autocad ReCap to get it into AutoCAD…

Would greatly appreciate someone giveing me an overview of the components needed to acheive the desired result.

Thanks ever so much for your help…


This post from @igor.vereninov lists some use cases that will be of interest…

I am not sure about current DJI integration status. My understanding is you would need to run the Reach as a separate device with it’s own radio as 3rd party integration with DJI is a bit challenging. Not sure you can get shutter event from a DJI branded camera.

Most of the people we work with are favoring a Sony A6000 since it has a nice 23MP sensor with hot shoe for shutter event timestamps. I would guess you could make a Phantom 4 fly that rig with a Reach.

I would say you may want to take a look at their Matrice over a Phantom if you really want a DJI. It’s being designed for your use case, among others. You just need to know whether being locked in to a vendor’s tech is worth the relative turn-key capability. For some it is perfectly OK as long as it meets mission.

The other big question in my mind is whether the organization(s) you will be surveying for have published standards for aerial photogrammetry/survey. E.g. Some Dept of Transportation’s at the state level in the US will have a published standard that may require sensors are calibrated at a lab to work on a DoT contract. Might be the same when it comes to other infrastructure projects. I am NOT an expert in this field. I just build the things. Rarely get to use them. It’s just something I am watching very closely as this is relatively young tech in a new market and there is a lot of hype still.

Overall, the tech exists and it’s getting better every day thanks to people here on this forum and companies like Emlid pushing L1 RTK capabilities. But there are still some integration hurdles and regulatory issues that are open as far as I am concerned. IMO, being an early adopter is only fun if you have patience and a twisted sense of humor.

1 Like

Hi all,

I am also new into this field. but here is what i understand so far.

  1. you need a base and a rover. A reach standard development kit will suffice.

  2. set your base to a known coordinate. you can get this from your land survey office or from DGPS. I myself havent test REACH for a DGPS set up.

  3. once the base is set to known coordinate, set few ground control points using the rover unit. Save the GCPs’ coordinate.

  4. fly your drone, take aerial photos, stitch the many photos using standalone software like agisoft photoscan.

  5. import the photo to qgis, use georeferencer plugin to realign the photo to your ground control points. And finally save it as geotiff.

correct me im wrong. I am currently at no 2 myself. hahaha.

Thanks Remi

So we dont need any GPS system on the drtone itself to link to the base unit for the purposes of creating the model? ( obviously we need it for the flight plan ) - and from your comment I understand that software can do all the work necessary to create the 3D model provided the GCP can be georeferenced using the model creation software?

Do the aerial photos need any extra data link GeoTags adding to them or are just plain photos adequate, and is there a minimum resolution?

Does there need to be any integration between flight planning software and everything else?

Thanks Coby

What is the purpose of having shutter event timestamps?

in general, you want to make sure you can sync your RTK data with images for post processing. to do that you need to know exactly where you were the exact moment your shutter triggered. the more accurate your shutter event the more accurate the final product. there is potential lag in the system between when the camera was told to fire and when it actually does. not as big of a deal if you are not moving. using the hotshoe is a bit of a hack, but also why the A6000 is preferred. The A5000 and qx1 have to be internally hacked. just using the voltage pulse off the hotshoe that would normally fire your flash since it also needs to be accurate to work correctly. then you get into rolling vs global shutter and when, exactly the shutter event happened and for how long. but for our purposes and typical speeds might not be a big deal. not enough data to say for sure. from the case studies above it does not appear to be a huge deal.


There are starting to be distinct categories of commercial drones that make it very attractive to get Phantom sized drones working with RTK. The 2kg law in Australia means that as a company I can just register and fly sub 2kg drones with no extra pilots license. Yes I have a 120m ceiling but that is small price to pay.
Just thought I would add this here because just buing a matrice and a Sony Camera takes drone weight to 3KG+, this requires a seperate pilots license, etc…


Reach RTK installed on Phantom 4. With battery 150 gram, so still well within the 2KG limit. Flies without issues. I could save 40g by getting my 5V from inside the drone (say tapping the internal GPS power) But I have enough power in battery pack tto run the 3DR radio and (next) a Pi Zero Noir camera for realtime RTK positioned infrared (or RGB if I want) imagery all without opening up the drone. All under the 2kg drone weight limit. :slight_smile:


Hi Simon, amazing what you did! How is that working out for you? I want to do the same with my P3P, test it and if everything works fine upgrade to a P4Advanced! Care to share? santiago.escobar@skyeyescorp.com

Hi Simon,

So what equipment did you need to buy and/or modify to get this working? I have a Phantom 4 and am very keen for this set up too…

In its simplest form you need the iphone app MapPilot (to get better, but not perfect timing from), Your reach and a USB powerbank. You can see I have marked the prop limits on the drone. Build a bracket that gets your antenna above the props and can hold your reach and power pack (single 18650 Li ion battery and 3.3. to 5v converter. To go beyond that, well send me a message.

Thanks so much mate. So just to clarify, you have the rover on the P4, a reach RS base station and the 3DR radio or similar too… This theoretically should send corrections right? RTK? Please feel free to email me, timlawrence@uasimagery.com.au

I’m in a similar position- currently running P4P but using just GCPs to give me georeferencing. Would love to integrate RTK GPS on the drone side to aid with the georeferencing…if not reduce or eliminate the user input required to align images with GCPs. I have a pair of Reach RS receivers I’ve been playing with and just ordered a Reach RTK module- but as you point out Tim, to get corrections to the reach module on the drone- do you need a 3DR radio? don’t think there is a LoRa module that is available as a standalone unit to work with reach rtk module? Other option I guess is PPK setup- ie. no radio link- just post-process base/drone positions , but I’m mindful of amount of time to do the post-processing… at present with Agisoft it only takes me about 30 mins to align GCPs manually so it’s not going to much benefit to get RTK/PPK working if I still need to spend more time than this to post-process metadata etc.
Maybe I just wait til Phantom 5 / 6 with integrated RTK GPS?? :slight_smile:

Hi Simon,

How do you get the image Geotags and the RTK time to sync? what do you use? Correct me if I am wrong, but you are recording the entire flights rtk points with time stamps, then you sync the points that “have a image” with the image that has the same time stamp? How do you know the drone and Reach/GPS has exactly the same “time” or is both devices set via satellite? Bottom line, how do you get the correct coordinate to the photo? Last thing, is the Rover exactly ontop of the camera, or how did you calculate the offset? Your idea of fitment is GENIUS!!!

1 Like

I started with the MapPilot (MapsMadeEasy app) timings, but found they were off by quite a bit. 100-200 ms, This is a big improvement on the exif tag timings and a major improvement on the PIX4D capture photo timings, but not good enough. I now capture the photo trigger event on the drone and pass it to the reach rtk unit as a timing mark. I think that I have this accurate to about 30ms (15cm at 5m/s). The reach antenna is as you see it, this is vertically over the camera when the drone is flying at 5m/s, the offset can therefore be taken off the altitude to get camera position. If you are really serious you can access the IMU data in mappilot log files and correct even further.
My method of capturing the DJI trigger event and turning it into a timing mark for the reach is simple and does not involve opening the drone up or permanently modifying it in any way. After a little more testing and the polishing of the workflow, a bit of python scripting, etc, I will be ready to either sell finished Phantom cradles for reach that include the timing mark generator or plans for the same. e-mail me at simon.allen@spatialanalytics.com.au to know more.

1 Like

Hi Simon,

this is the first Reach kind-of-integration with DJI I saw, well done! How did it go? Do you have some first results of absolute mapping accuracy of your setup?

The absolute mapping accuracy is really dependent on your workflow and tools. If you have a good static calibration for your P4 camera then you can turn off autocalibrate in your workflow. Next you have to be able to define the accuracy (or weighting) to be used for the positions (photoscan and Pix4D can, ODM can currently not)

The ‘journey’ is outlined here:

I have both good and poor results as I now move into optimising workflows for the improved precision.

I can say that the method massively reduces the need for numerous GCP’s and you can probably 10cm confirmed accuracy with 3 gcps, altitude is massively improved. I am working through various demo datasets that I have collected over time, watch this space.

I’m looking at doing a large top survey of 700 acres and I need absolute position accuracy within 10 inches (25 cm.) It’s widely accepted then you need a GSD of 1/3 that. I’ll have better due to altitude limitations unless I launch from a hill. Let’s say I’ll have 5cm/pixel GSD.

There seems to be no definitive information out there regarding the number of GCPs I would need to insure the geolocation data of the resulting work product my geolocation data will be accurate to within 25cm. nts…[/i]

How do you determine what is a “sufficient” number of GCPs? I can’t find any guidelines anywhere on the Internet after exhaustive searches!

For all I know, with my accuracy requirements, maybe all I need is one GCP as an absolute coordinate “anchor” so I can later conver to the local coordinate system. A big question is, would it be necessary for me to adjust (I don’t use the word ‘correct’) the geolocation data in the EXIF information of the photos by noting the difference in X Y and Z coordinates of the drone with the GCP and run a script on the photos to get them more in line with the GCP?

My other low-cost strategy would be to buy an Emlid Reach RS, just one, and set it at 5-10 GCPs for a few minutes and log the data. I could then use a free or low-cost subscription to a CORS network and perform PPK to correct the coordinates of the GCPs in post processing.

So the million dollar question is essentially how do you determine the number of GCPs you need to be able to disregard the geolocation data in the photos and still achieve the accuracy you want?

The DJI altitude sensor is adversely impacted by the drone heating up. On my Phantom 4 I see a 3-4m (10-13ft) decrease in the value of an independent altimeter over the course of a 15min flight which the DJI altimeter reports as being all at one altitude. That kind of blows your vertical accuracy requirements. Fortunately the drift is reasonably linear. Unfortunately it is difficult to pull out its impact on a survey when you move the lawn. There are ways to mitigate the drift and correct for it.

  1. Once the drone is warm, the drift goes away (to a degree) So blow half a battery warming up then ensure the drone does not cool down. (lot of assumptions here)
  2. Limit each mission to 15 minutes. At the start of each mission take a photo on the ground, at the end of each mission take a photo on the ground. Have a reference value for the ground where you take off. calculate the drift rate over time between the start of mission on the ground image and the end of mission on the ground image and apply the drift to correct all the mission images.

IN answer to your million dollar question here are a few more questions.
Is your terrain lumpy or flat, bare or tree covered?
What software are you intending to use?
Have you calibrated your camera?
Will your GCP’s be raised or flat to the main surface (ground)?
Why Buy a Reach RS, if you are only doing PPK, surely a Reach RTK, a homemade ground plane and a USB battery bank in a Tupperware box would deliver?


So regarding the altimeter drift, it sounds like it might be better to spend the extra time to lay down a lot of GCPs and only use those for geolocation in the post processing which would make the altimeter issue irrelevant (and maybe the camera calibration unnecessary?)

Answers to your questions:

  • Terrain is lumpy, desert-like with some roads, structures, excavation puts in the foothills of some low-lying mountains no trees or water. Probably no more than 500ft elevation change on the property though.

  • I use Agisoft Photoscan

  • Have not calibrated the camera but obviously I can learn to do that. Does it need to be done with each battery change though on DJI drones?

  • GCPs will be flat on the surface

  • Great point about why spend the extra for a Reach RS. Considering the parts and and some value on my time to build a homemade unit using the RTK, I guess it saves me about around $400-$500. I guess I still might consider the RS though as a more “professional” setup, especially if I want to add a second as a rover to do RTK later. But I get your point.