Differences
This shows you the differences between two versions of the page.
| Both sides previous revision Previous revision Next revision | Previous revision | ||
|
image_virtualization [2026/07/15 19:12] hermann |
image_virtualization [2026/07/22 04:12] (current) hermann ↷ Page moved from reference_book:image_virtualization to image_virtualization |
||
|---|---|---|---|
| Line 11: | Line 11: | ||
| Map computations in Dinamica use image virtualization to extend and adjust, at runtime, the image dimensions, making sure that all images presented to any operator have the same number of lines and columns. This allows images used by any computation to have different dimensions while retaining the ability to run the calculation in parallel at high speed. | Map computations in Dinamica use image virtualization to extend and adjust, at runtime, the image dimensions, making sure that all images presented to any operator have the same number of lines and columns. This allows images used by any computation to have different dimensions while retaining the ability to run the calculation in parallel at high speed. | ||
| - | Typically, the only requirement when using virtualization is that all images share the same projection and rotation, although different models can use different projections and rotations((Rotation refers to the direction the image's north points toward. The rotation is non-zero if the image's north points in a direction other than the image's top.)). It is also possible to use maps with different projections as part of the 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 share the same projection and rotation (rotation refers to the direction the image's north points toward, and is non-zero if the image's north points in a direction other than the image's top), although different models can use different projections and rotations. It is also possible to use maps with different projections as part of the 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&800|}} | {{reference_book:imagevirtualization3.png?direct&800|}} | ||
| Line 21: | Line 21: | ||
| ===== Virtualization Explained ===== | ===== Virtualization Explained ===== | ||
| - | Older versions of Dinamica could only manipulate maps with the same number of lines and columns. Additional information such as registration coordinates, resolution, etc., was not treated uniformly by all functors — many of them simply ignored this information in the input maps. | + | Older versions of Dinamica could only manipulate maps with the same number of lines and columns. Additional information such as registration coordinates, resolution, etc., was not treated uniformly by all functors, and many of them simply ignored this information in the input maps. |
| Dinamica handles map extents and resolution in a very uniform way. Basically, when a set of maps is given to a functor, they are first analyzed to determine the minimum extent and resolution an input map should have to best cover all necessary cells. Then, each input map is wrapped in a virtual version of itself with this new resolution and extent. The functor receives those virtual versions and uses them to perform the computation. By using this virtualization process, Dinamica 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 the same map might have different virtual representations depending on the original set of maps given to a particular functor. | Dinamica handles map extents and resolution in a very uniform way. Basically, when a set of maps is given to a functor, they are first analyzed to determine the minimum extent and resolution an input map should have to best cover all necessary cells. Then, each input map is wrapped in a virtual version of itself with this new resolution and extent. The functor receives those virtual versions and uses them to perform the computation. By using this virtualization process, Dinamica 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 the same map might have different virtual representations depending on the original set of maps given to a particular functor. | ||
| Line 65: | Line 65: | ||
| ===== See Also ===== | ===== See Also ===== | ||
| - | * [[gui_tips#virtualization|Useful Tips for Using the Graphical Interface — Virtualization]] | + | * [[:gui_tips#virtualization|Useful Tips for Using the Graphical Interface - Virtualization]] |