This Python-based programs transforms a CSV mission polygon from the map-creator or Litchi flight-hub in a 3D vertices photo-mission for 3D photogrammetry. (DJI SDK 5) •hdrpano2kmz creates photogrammetry 3D wayline missions from an area polygon (map-creator or Litchi mission hub)•helix2kmz creates a helix mission based on centre coordinates, start altitude, radius, trigger-distance•vertical2kmz creates a vertical mission based on a polygon
Helix
The most sophisticated mission for photogrammetry is still my helix mission. (See my videos with only 89 images) I added the helix mission to my python programs. Only 89 images
Elevation
In this step the program adds elevation for each polygon waypoint based on aster30m worldwide from NASA. The lowest alti-tude is obtained from the mission polygon line number one. (aster30m from opentopodata.org)
Photo interval grid
In the first step the program places a photo distance grid into the polygon. The value from the distance trigger is readed in line 1 at position 45 in the CSV file. *photo_distinterval* in metersToday only metric distances are supported!
Triangulation
In this step the polygon is converted into triangles. For each triangle a single mission step with elevation is calculated. The indi-vidual photo waypoints are simplified to a straight flight line with elevation.
KML mission export
In this step the program creates two KML files for Google Earth.KMZ mission export for DJI Pilot SDK 5The program creates a zipped KMZ file with the wayline.wpml and template.kml file.
CSV mission export
The CSV final 3D mission files is saved. You can read it with iOS hdrpano 3D or Litchi.
Full package
In the current distribution you will find several CSV mission polygon files to try. Load the Google KML file in Google and the mission KMZ file in DJI Pilot.
The Python project
I will implement this triangulation in the Mac OS map-creator soon. There will be a new Windows QT version too.
Additional arguments hdrpano2kmz
•-cross or -CROSScreates a cross mission at 90 degrees•-tri or -TRIcreates a triangulated 3D terrain mission•-s od -Ssecure altitude passage between triangles (triangulation)•-c or -Cadd a centre waypoint for convex or concave 3D missions•-elv or -ELVtransform the mission on one triangulated elevation surface•-dp or -DPKMZ mission export for DJI Pilot 2•-fly or -FLYKMZ mission export for DJI Fly Mavic 3, Mini 4 Pro, Air 3
Usage
hdrpano2kmz polygon.csv -cross -fly hdrpano2kmz panplatten.csv -tri -dpThe mission pitch angle, heading and the trigger distance are read in the second row of the CSV file. The CSV file format is compatible with the map-creator or Litchi mission hub. headingposition 4 in the CSV file, +/-180 northpitchposition 8 in the CSV file, 0-90photo trigger distancelast position in the CSV file, 5-50mThe program creates 3 files. CSV, KML and KMZ
Additional arguments helix2kmz
• -circle or CircleSimple circle mission• -ultra or -UltraUltra helix mission• -dp or -DPKMZ mission export for DJI Pilot 2• -fly or -FLYKMZ mission export for DJI Fly (Mavic 3, Mini 4 Pro...)• -elv or -ELVTransform the mission on one triangulated elevation surfaceThe elevated surface is defined with 6 waypoints
Usage
helix-kmz lat lon start-altitude helix-radius POI-altitudelat / lonThe POI centerstart-altitudeThe start-altitude for the mission (15m-60m for example)The total mission hight is limited to 120mhelix-radiusThe basic semi-spherical radius of the missionPOI-altitudeThe altitude of the target (0m-10m for example)Must be smaller than start-altitude
Example
helix-kmz 47.01714 7.23134 20 60 5 -fly -ultraThe pitch angle is calculated from the aircraft position to the target POI altitude. It depends on the start-altitude, radius, and POI-altitude.
Download the Windows python version, for mac OS you can use the map-creator
This Python-based programs transforms a CSV mission polygon from the map-creator or Litchi flight-hub in a 3D vertices photo-mission for 3D photogrammetry. (DJI SDK 5) •hdrpano2kmz creates photogrammetry 3D wayline missions from an area polygon (map-creator or Litchi mission hub)•helix2kmz creates a helix mission based on centre coordin-ates, start altitude, radius, trigger-distance•vertical2kmz creates a vertical mission based on a polygon
Helix
The most sophisticated mission for photogrammetry is still my helix mission. (See my videos with only 89 images) I added the helix mission to my python programs. Only 89 images
Elevation
In this step the program adds elevation for each polygon way-point based on aster30m worldwide from NASA. The lowest altitude is obtained from the mission polygon line number one. (aster30m from opentopodata.org)
Photo interval grid
In the first step the program places a photo distance grid into the polygon. The value from the distance trigger is readed in line 1 at position 45 in the CSV file. *photo_distinterval* in metersToday only metric distances are supported!
Triangulation
In this step the polygon is converted into triangles. For each tri-angle a single mission step with elevation is calculated. The individual photo waypoints are simplified to a straight flight line with elevation.
KML mission export
In this step the program creates two KML files for Google Earth.KMZ mission export for DJI Pilot SDK 5The program creates a zipped KMZ file with the wayline.wpml and template.kml file.
CSV mission export
The CSV final 3D mission files is saved. You can read it with iOS hdrpano 3D or Litchi.
Full package
In the current distribution you will find several CSV mission polygon files to try. Load the Google KML file in Google and the mission KMZ file in DJI Pilot.
The Python project
I will implement this triangulation in the Mac OS map-creator soon. There will be a new Windows QT version too.
Additional arguments hdrpano2kmz
•-cross or -CROSScreates a cross mission at 90 degrees•-tri or -TRIcreates a triangulated 3D terrain mission•-s od -Ssecure altitude passage between triangles (triangulation)•-c or -Cadd a centre waypoint for convex or con-cave 3D missions•-elv or -ELVtransform the mission on one triangulated elevation surface•-dp or -DPKMZ mission export for DJI Pilot 2•-fly or -FLYKMZ mission export for DJI Fly Mavic 3, Mini 4 Pro, Air 3
Usage
hdrpano2kmz polygon.csv -cross -fly hdrpano2kmz panplatten.csv -tri -dpThe mission pitch angle, heading and the trigger distance are read in the second row of the CSV file. The CSV file format is compatible with the map-creator or Litchi mission hub. headingposition 4 in the CSV file, +/-180 northpitchposition 8 in the CSV file, 0-90photo trigger distancelast position in the CSV file, 5-50mThe program creates 3 files. CSV, KML and KMZ
Additional arguments helix2kmz
• -circle or CircleSimple circle mission• -ultra or -UltraUltra helix mission• -dp or -DPKMZ mission export for DJI Pilot 2• -fly or -FLYKMZ mission export for DJI Fly (Mavic 3, Mini 4 Pro...)• -elv or -ELVTransform the mission on one triangulated elevation surfaceThe elevated surface is defined with 6 way-points
Usage
helix-kmz lat lon start-altitude helix-radius POI-altitudelat / lonThe POI centerstart-altitudeThe start-altitude for the mission (15m-60m for example)The total mission hight is limited to 120mhelix-radiusThe basic semi-spherical radius of the missionPOI-altitudeThe altitude of the target (0m-10m for example)Must be smaller than start-altitude
Example
helix-kmz 47.01714 7.23134 20 60 5 -fly -ultraThe pitch angle is calculated from the aircraft position to the target POI altitude. It depends on the start-altitude, radius, and POI-altitude.