Drone Photogrammetry GSD & Mission Planner
Compute ground sample distance, ground footprint, flight-line spacing, trigger interval and motion-blur speed limit for drone mapping missions. Add an area and battery flight time to get total image count, flight lines, mission duration, battery swaps and SD card size.
Plan a drone mapping mission properly before you go to site. Enter your camera's sensor size, focal length and resolution, then the flight altitude and the overlap targets your photogrammetry workflow needs. The calculator returns the ground sample distance (cm/pixel), ground footprint per image, flight-line spacing, image trigger interval, the maximum ground speed your shutter can sustain without motion blur, and — if you add an area — the total image count, flight lines, mission time, battery swaps and SD card capacity you'll need. It's the same math Pix4D and DroneDeploy run behind the scenes.
curl -X POST https://toolsamurai.com/api/v1/drones-uav/photogrammetry-gsd-calculator \ -H "Authorization: Bearer sk_live_•••••••••••••••" \ -H "Content-Type: application/json" \ -d '{ "sensor_width_mm": 17.3, "sensor_height_mm": 13, "focal_length_mm": 12.29, "image_width_px": 5280, "image_height_px": 3956, "flight_altitude_m": 100, "forward_overlap_pct": 80, "side_overlap_pct": 70, "ground_speed_ms": 5, "shutter_speed_s": 0.001, "area_hectares": 10, "battery_flight_time_min": 35, "image_size_mb": 12 }'
The method behind the numbers
Ground sample distance is the size of one image pixel projected onto the ground. From similar triangles: GSD = (sensor_width × altitude) / (focal_length × image_width). Multiply by image dimensions to get the ground footprint per image.
Flight-line spacing is footprint width × (1 − side_overlap). Along-line photo spacing is footprint height × (1 − forward_overlap). Trigger interval is the photo spacing divided by ground speed — fly faster and the camera must shoot faster.
Motion blur is the distance the craft moves while the shutter is open, divided by GSD: blur_px = (speed × shutter) / GSD. The industry rule is to keep blur below 0.5 px to preserve edge sharpness for feature matching. The 'max speed for blur' output inverts the formula at the 0.5-px limit.
For an area mission, the calculator divides total area by the per-image footprint (after overlap) to get image count, then divides survey-area width by flight-line spacing to get line count. Mission time adds the in-line flight time (line length × lines / speed) and 15 s of turn time per line. Battery swaps round up by per-battery flight time, and SD card size is image count × per-image file size.
See it in practice
Standard orthomosaic mission with M3E's 17.3 mm sensor, 12.29 mm focal length, 5280×3956 px, 80/70 overlap.
- sensor_width_mm
- 17.3
- sensor_height_mm
- 13
- focal_length_mm
- 12.29
- image_width_px
- 5280
- image_height_px
- 3956
- flight_altitude_m
- 100
- forward_overlap_pct
- 80
- side_overlap_pct
- 70
- ground_speed_ms
- 5
- shutter_speed_s
- 0.001
- area_hectares
- 10
- battery_flight_time_min
- 35
- image_size_mb
- 12
Sub-3 cm GSD survey with the P4 RTK's 1" 20 MP sensor.
- sensor_width_mm
- 13.2
- sensor_height_mm
- 8.8
- focal_length_mm
- 8.8
- image_width_px
- 5472
- image_height_px
- 3648
- flight_altitude_m
- 80
- forward_overlap_pct
- 80
- side_overlap_pct
- 70
- ground_speed_ms
- 6
- shutter_speed_s
- 0.001
- area_hectares
- 25
- battery_flight_time_min
- 27
- image_size_mb
- 8
Frequently asked questions
Why must I enter the actual focal length, not the 35-mm equivalent?
The GSD formula uses physical optics — actual focal length and actual sensor width. The 35-mm equivalent is a relative-field-of-view rescaling for human comparison and gives the wrong answer if you plug it into the formula. DJI publishes both numbers; use the small physical one (e.g., M3E = 12.29 mm, not 24 mm equivalent).
What overlap should I use?
For flat orthomosaic mapping: 75–80% forward, 65–75% side is the sweet spot. For 3D building models or vegetation: bump to 85–90% forward, 80% side — the photogrammetry engine needs more parallax. Higher overlap dramatically increases image count and flight time, so don't over-spec unless the model demands it.
How do I avoid motion blur?
Keep blur under 0.5 px per pixel. Fast shutter (1/1000 s or shorter) lets you fly faster without smearing pixels. Bright daylight makes a fast shutter easy; dawn or dusk forces you to slow down. The 'max speed for blur' output tells you the speed cap your current shutter allows.
Why does the result differ from DJI Pilot or Pix4Dcapture?
Real mission-planning apps add turn time, take-off/landing transit, and assume the drone reaches cruise speed before triggering. This calculator is the underlying photogrammetry math, which is what those apps run too — small differences (5–10%) come from their turn-time and transit assumptions. Treat this as the lower bound on mission time.
Does this support LiDAR or oblique missions?
The GSD, footprint and battery-swap outputs apply to nadir RGB missions. Oblique (45° camera tilt) and LiDAR missions have different overlap rules and aren't modelled here — use the nadir number as a planning baseline and apply manufacturer guidance for the modifier.
Put Drone Photogrammetry GSD & Mission Planner on your site
Free, no signup required. Customise theme, pre-fill values, or lock inputs so visitors can only change what you choose.
<iframe src="https://toolsamurai.com/embed/drones-uav/photogrammetry-gsd-calculator"
width="100%" height="640" frameborder="0"
style="border:0;display:block"
title="Drone Photogrammetry GSD & Mission Planner — ToolSamurai"></iframe>