[GIS] How to drape image on surface using open source software

drapeimageopen-source-gisqgissurface

I have a image with a known projection – say an aerial photo. I also have a raster surface grid with the same projection – say a DEM. Both are in the same projection. Both have the same extent.

How do I "drape" the image on top of the surface using open source software?

The end result would be an oblique-like image that you typically see when you use google earth (or similar 3D earth-observation software).

This question does what I want to do (using Esri), but get better results – What can be used to drape an High res Image over a DEM and get high quality results? And this is a similar (but different) question for QGIS –How to drape a simple jpeg image over dem of some area?

There doesn't seem to be a way to do it in QGIS. I think GRASS should be able to do it, but I haven't figured out a way by looking around or googling. ParaView seems like a possibility, but overly complicated.

Best Answer

You can use Qgis2threejs plugin in QGIS to view an image in 3D. It has great options and potential capabilities that you can see in the plugin's documentation. Then plugin can be downloaded from QGIS Plugin Manager, and you can refer to the pdf documentation if you stuck somewhere, or on GIS SE to seek a help on a specific issue.

Here is a sample output:

enter image description here

Another option is to use Blender software to create 3D images. You can use BlenderGIS to combine GIS data with blender, especially if you want to use georeferenced images. However, the rendering time will increase as you increase the resolution of the output images, but it worth waiting and trying.

Here is some tutorials I found that can help you to do the job:

  1. Shaded relief with BlenderGIS
  2. Owen Powell - maps and terrain models

I used BlenderGIS to create a Fly Over movie, and it was really impressive, but the learning curve and rendering time is quite high, so it is up to you if you want to follow this path.

Related Question