Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision Both sides next revision
reference_book:image_virtualization [2017/07/24 00:06]
admin [Limitations]
reference_book:image_virtualization [2017/07/24 17:16]
admin
Line 29: Line 29:
 Typically, the only requirement when using virtualization is that all images must share the same projection and same rotation, although different models can use different projections and rotations((Rotation is related to the where the image north points to. The rotation is non-zero if the image north points toward a direction other than the image top.)). It is also possible to use maps with different projections as part of a same model, as long as images with different projections are not given as inputs to the same functors at the same time. Typically, the only requirement when using virtualization is that all images must share the same projection and same rotation, although different models can use different projections and rotations((Rotation is related to the where the image north points to. The rotation is non-zero if the image north points toward a direction other than the image top.)). It is also possible to use maps with different projections as part of a same model, as long as images with different projections are not given as inputs to the same functors at the same time.
  
-{{ reference_book:​imagevirtualization3.png?​direct&​600 |}}+{{ reference_book:​imagevirtualization3.png?​direct&​800 |}}
  
 To facilitate the re-projection of maps ensuring that the projections are the same, a convenient wrapper around the [[http://​gdal.org/​gdalwarp.html|gdal_warp]] and [[http://​gdal.org/​gdal_translate.html|gdal_translate]] called [[:​Transform Map]] is provided. This functor simply runs those GDAL utilities distributed with Dinamica EGO 4. To facilitate the re-projection of maps ensuring that the projections are the same, a convenient wrapper around the [[http://​gdal.org/​gdalwarp.html|gdal_warp]] and [[http://​gdal.org/​gdal_translate.html|gdal_translate]] called [[:​Transform Map]] is provided. This functor simply runs those GDAL utilities distributed with Dinamica EGO 4.
Line 41: Line 41:
 Version 4 handles map extents and resolution in a very uniform way. Basically, when a set of maps is given to a functor, they are first analysed to determine what is the minimum extents and resolution that an input map should have to cover all necessary cells the best possible way. Then, each input map is wrapped around a virtual version of itself with this new resolution and extents. The functor receives those virtual versions and use them to perform the computation. By using this virtualization process, version 4 ensures that all maps given to a functor have the same number of lines and columns, resolution, and extents. It is also worth noting that a same map might have different virtual representation depending on the original set of maps given to a particular functor. Version 4 handles map extents and resolution in a very uniform way. Basically, when a set of maps is given to a functor, they are first analysed to determine what is the minimum extents and resolution that an input map should have to cover all necessary cells the best possible way. Then, each input map is wrapped around a virtual version of itself with this new resolution and extents. The functor receives those virtual versions and use them to perform the computation. By using this virtualization process, version 4 ensures that all maps given to a functor have the same number of lines and columns, resolution, and extents. It is also worth noting that a same map might have different virtual representation depending on the original set of maps given to a particular functor.
  
-{{ reference_book:​imagevirtualization4.png?​direct&​600 |}}+{{ reference_book:​imagevirtualization4.png?​direct&​800 |}}
  
 The virtual resolution of the resulting virtual maps is always the smallest resolution from all maps involved in the visualization process. This minimizes the number of cells that have to be analyzed when deciding to what original cell a virtual cell from the virtual map corresponds. The virtual resolution of the resulting virtual maps is always the smallest resolution from all maps involved in the visualization process. This minimizes the number of cells that have to be analyzed when deciding to what original cell a virtual cell from the virtual map corresponds.
  
-{{ reference_book:​imagevirtualization6.png?​direct&​600 |}}+{{ reference_book:​imagevirtualization6.png?​direct&​800 |}}
  
 ===== Controlling Virtualization ===== ===== Controlling Virtualization =====
Line 56: Line 56:
    * **Limited**:​ Raster map virtualization will be used, but only if its use does not result in very large maps compared to the dimensions of the input maps. Otherwise, an error will be reported.    * **Limited**:​ Raster map virtualization will be used, but only if its use does not result in very large maps compared to the dimensions of the input maps. Otherwise, an error will be reported.
  
-{{ reference_book:​imagevirtualization16.png?​direct&​600 |}}+{{ reference_book:​imagevirtualization16.png?​direct&​800 |}}
  
 The selected corresponding option is also presented in the status bar. Double clicking the corresponding label in the status bar brings the relevant tab from the "​Options"​ dialog, where the "​Raster map virtualization"​ option can be edited. The selected corresponding option is also presented in the status bar. Double clicking the corresponding label in the status bar brings the relevant tab from the "​Options"​ dialog, where the "​Raster map virtualization"​ option can be edited.
Line 64: Line 64:
 The following example shows how virtualization works in practice: The following example shows how virtualization works in practice:
  
-{{ reference_book:​imagevirtualization12.png?​direct&​600 |}}+{{ reference_book:​imagevirtualization12.png?​direct&​800 |}}
  
 ===== Limitations ===== ===== Limitations =====
Line 76: Line 76:
 It is also worth noting that certain maps should not be mixed with other maps with different extents/​resolutions such as maps representing line features, specially roads. Some algorithms might assume that a road is always one cell wide and the virtualization process might produce a map where this assumption does not hold.  It is also worth noting that certain maps should not be mixed with other maps with different extents/​resolutions such as maps representing line features, specially roads. Some algorithms might assume that a road is always one cell wide and the virtualization process might produce a map where this assumption does not hold. 
  
-{{ reference_book:​imagevirtualization13.png?​direct&​600 |}}+{{ reference_book:​imagevirtualization13.png?​direct&​800 |}}
  
-{{ reference_book:​imagevirtualization14.png?​direct&​600 |}}+{{ reference_book:​imagevirtualization14.png?​direct&​800 |}}