GCP's are in NY State Plane East Feet (ESPG:6537) But DTM still Generates Elevations in Meters

I am trying to solve an issue with WebODM where I have my Ground Control Points surveyed with GPS in New York State Plane Feet and utilize that file when processing the orthos in WebODM. However, When I extract the DTM and insert it into QGIS with the project specified in the ESPG:6537 coordinate system and generate contours from the DTM they still are generated in meters. The ortho successfully is in the correct 6537 coordinate system. Am I missing something? Below is my GCP file and a screen shot of the project in QGIS along with the processing parameters in WebODM. Any help would be greatly appreciated. Thanks.
GCP File with what I think is the proper header:

+proj=tmerc +lat_0=38.83333333333334 +lon_0=-74.5 +k=0.9999 +x_0=150000 +y_0=0 +ellps=GRS80 +units=us-ft +no_defs
655879.625 1592749.792 926.21 4220.13 1083.44 DJI_0641.JPG TP1
655879.625 1592749.792 926.21 4027.50 1554.00 DJI_0642.JPG TP1
655879.625 1592749.792 926.21 3897.85 2046.92 DJI_0643.JPG TP1
656273.277 1592906.797 902.30 2472.48 414.34 DJI_0486.JPG TP2
656273.277 1592906.797 902.30 2645.77 854.54 DJI_0487.JPG TP2
656273.277 1592906.797 902.30 2582.69 1374.31 DJI_0488.JPG TP2
656350.845 1592652.334 900.36 2267.92 608.62 DJI_0496.JPG TP3
656350.845 1592652.334 900.36 2264.54 1124.46 DJI_0497.JPG TP3
656350.845 1592652.334 900.36 2277.69 1628.77 DJI_0498.JPG TP3
656250.615 1592250.078 864.17 3417.66 1036.00 DJI_0552.JPG TP5
656250.615 1592250.078 864.17 3488.00 1441.38 DJI_0553.JPG TP5
656250.615 1592250.078 864.17 3562.71 1838.35 DJI_0554.JPG TP5

WebODM Processing Parameters:

[INFO] DTM is turned on, automatically turning on point cloud classification
[INFO] Initializing OpenDroneMap app - Sat Feb 15 14:47:11 2020
[INFO] ==============
[INFO] build_overviews: False
[INFO] camera_lens: auto
[INFO] cameras: {}
[INFO] crop: 3
[INFO] debug: False
[INFO] dem_decimation: 1
[INFO] dem_euclidean_map: False
[INFO] dem_gapfill_steps: 3
[INFO] dem_resolution: 100.0
[INFO] depthmap_resolution: 640
[INFO] dsm: False
[INFO] dtm: True
[INFO] end_with: odm_orthophoto
[INFO] fast_orthophoto: False
[INFO] force_gps: False
[INFO] gcp: /var/www/data/da9f691c-c5b0-4033-b41d-c63a82e980cb/gcp/New_gcp_file_1581434881031_NYSP_East_NAD83_2011.txt
[INFO] ignore_gsd: True
[INFO] matcher_distance: 0
[INFO] matcher_neighbors: 8
[INFO] max_concurrency: 10
[INFO] merge: all
[INFO] mesh_octree_depth: 9
[INFO] mesh_point_weight: 4
[INFO] mesh_samples: 1.0
[INFO] mesh_size: 100000
[INFO] min_num_features: 18000
[INFO] mve_confidence: 0.6
[INFO] name: da9f691c-c5b0-4033-b41d-c63a82e980cb
[INFO] opensfm_depthmap_method: PATCH_MATCH
[INFO] opensfm_depthmap_min_consistent_views: 3
[INFO] opensfm_depthmap_min_patch_sd: 1
[INFO] orthophoto_compression: DEFLATE
[INFO] orthophoto_cutline: False
[INFO] orthophoto_no_tiled: False
[INFO] orthophoto_resolution: 1.0
[INFO] pc_classify: True
[INFO] pc_csv: False
[INFO] pc_ept: False
[INFO] pc_filter: 2.5
[INFO] pc_las: True
[INFO] pc_sample: 0
[INFO] project_path: /var/www/data
[INFO] rerun: None
[INFO] rerun_all: False
[INFO] rerun_from: [‘odm_dem’, ‘odm_orthophoto’]
[INFO] resize_to: 2048
[INFO] skip_3dmodel: False
[INFO] sm_cluster: None
[INFO] smrf_scalar: 1.25
[INFO] smrf_slope: 0.15
[INFO] smrf_threshold: 0.5
[INFO] smrf_window: 18.0
[INFO] split: 999999
[INFO] split_overlap: 150
[INFO] texturing_data_term: area
[INFO] texturing_keep_unseen_faces: False
[INFO] texturing_nadir_weight: 16
[INFO] texturing_outlier_removal_type: gauss_clamping
[INFO] texturing_skip_global_seam_leveling: False
[INFO] texturing_skip_hole_filling: False
[INFO] texturing_skip_local_seam_leveling: False
[INFO] texturing_skip_visibility_test: False
[INFO] texturing_tone_mapping: none
[INFO] time: False
[INFO] use_3dmesh: False
[INFO] use_exif: False
[INFO] use_fixed_camera_params: False
[INFO] use_hybrid_bundle_adjustment: False
[INFO] use_opensfm_dense: False
[INFO] verbose: False
[INFO] ==============
[INFO] Running dataset stage
[INFO] Loading dataset from: /var/www/data/da9f691c-c5b0-4033-b41d-c63a82e980cb/images
[INFO] Loading 281 images
[INFO] Wrote images database: /var/www/data/da9f691c-c5b0-4033-b41d-c63a82e980cb/images.json
[INFO] Found 281 usable images
[INFO] Parsing SRS header: +proj=tmerc +lat_0=38.83333333333334 +lon_0=-74.5 +k=0.9999 +x_0=150000 +y_0=0 +ellps=GRS80 +units=us-ft +no_defs
[INFO] Generated coords file from GCP: WGS84 UTM 18N
[INFO] Parsing SRS header: WGS84 UTM 18N
[INFO] Parsing SRS header: WGS84 UTM 18N
[INFO] 12 GCP points will be used for georeferencing
[INFO] Parsing SRS header: WGS84 UTM 18N
[INFO] Finished dataset stage
[INFO] Running split stage
[INFO] Normal dataset, will process all at once.
[INFO] Finished split stage
[INFO] Running merge stage
[INFO] Normal dataset, nothing to merge.
[INFO] Finished merge stage
[INFO] Running opensfm stage
[INFO] Altitude data detected, enabling it for GPS alignment

1 Like

Correct, all outputs are always in UTM (with meter units). If you need to convert to feet, you’ll need to reproject them to your CRS of choice.

We could change this in the future, see --proj property removed from recent version (0.9.1). We’d welcome contributions toward that effort.


Thanks for the info. My orthophoto and DTM both project nicely in QGIS. It is the elevations that I require in feet. I will need to find a was to generate foot contours and I’m going to need to find a work around for that. I appreciate the feedback Piero.

1 Like

I just performed a Raster Calculation on the data set to convert from meters to feet and that worked to perfection!


Do you have a recommended workflow for reprojecting into US survey feet?

1 Like

Hi Robbie,
In your GIS software of choice, you can use a raster calculator to change the units. There are some good youtube tutorials for this. I use QGIS, and I also make my contour lines in the GIS software, not in webodm. It’s the same tool- GRASS- so the results are similar, but I can customize more in QGIS.

1 Like