dshean / demcoreg

Utilities for DEM and point cloud co-registration
MIT License
110 stars 42 forks source link

Error during gdal reproject: "Object given is not a Python function" #45

Closed rcormier33 closed 2 years ago

rcormier33 commented 2 years ago

Running into a problem when GDAL is reprojecting my DEMs. Here is the code up to the error

`Reference: 2021_10_03_Discovery_Mine_dsm2.tif Source: Discovery_Mine_dsm2.tif Mode: nuth Output: Discovery_Mine_dsm2_dem_align\Discovery_Mine_dsm2_2021_10_03_Discovery_Mine_dsm2

Warping all inputs to the following: Resolution: 0.031370000000001015 Extent: [353337.1446387405, 7008245.025648932, 354702.3585187405, 7010228.931808715] Projection: '+proj=utm +zone=12 +datum=WGS84 +units=m +no_defs' Resampling alg: cubic

1 of 2: 2021_10_03_Discovery_Mine_dsm2.tif nl: 63242 ns: 43520 res: 0.031

Traceback (most recent call last): File "E:\01_Projects\2022\22-17-NN Discovery Mine\07_GIS\dist\demcoreg-0.5.0\demcoreg\dem_align.py", line 605, in main() File "E:\01_Projects\2022\22-17-NN Discovery Mine\07_GIS\dist\demcoreg-0.5.0\demcoreg\dem_align.py", line 273, in main ref_dem_ds, src_dem_ds_align = warplib.memwarp_multi([ref_dem_ds, src_dem_ds_align], \ File "E:\01_Projects\2022\22-17-NN Discovery Mine\07_GIS\dist\demcoreg-0.5.0\demcoreg\venv\lib\site-packages\pygeotools\lib\warplib.py", line 520, in memwarp_multi return warp_multi(src_ds_list, res, extent, t_srs, r, warptype=memwarp, verbose=verbose, dst_ndv=dst_ndv) File "E:\01_Projects\2022\22-17-NN Discovery Mine\07_GIS\dist\demcoreg-0.5.0\demcoreg\venv\lib\site-packages\pygeotools\lib\warplib.py", line 512, in warp_multi dst_ds = warptype(ds, res, extent, t_srs, r, outdir, dst_ndv=dst_ndv, verbose=verbose) File "E:\01_Projects\2022\22-17-NN Discovery Mine\07_GIS\dist\demcoreg-0.5.0\demcoreg\venv\lib\site-packages\pygeotools\lib\warplib.py", line 216, in memwarp return warp(src_ds, res, extent, t_srs, r, driver=driver, dst_ndv=dst_ndv, verbose=verbose) File "E:\01_Projects\2022\22-17-NN Discovery Mine\07_GIS\dist\demcoreg-0.5.0\demcoreg\venv\lib\site-packages\pygeotools\lib\warplib.py", line 192, in warp gdal.ReprojectImage(src_ds, dst_ds, src_srs.ExportToWkt(), t_srs.ExportToWkt(), gra, 0.0, 0.0, prog_func) File "E:\01_Projects\2022\22-17-NN Discovery Mine\07_GIS\dist\demcoreg-0.5.0\demcoreg\venv\lib\site-packages\osgeo\gdal.py", line 3914, in ReprojectImage return _gdal.ReprojectImage(*args, **kwargs) RuntimeError: Object given is not a Python function `

I tried reprojecting into NAD83(CSRS) UTM zone 12 but ran into the same problem. Both rasters have the same resolution and mostly overlap, one is a few m wider than the other.

Any help is greatly appreciated

ShashankBice commented 2 years ago

Hi, Looks like you are using native windows. Please try to use Windows subsytem for linux as instructed here. Reproject function used here is not available on windows. Cheers, Shashank