Provided by: grass-doc_8.3.0-1_all bug

NAME

       r.in.mat  - Imports a binary MAT-File(v4) to a GRASS raster.

KEYWORDS

       raster, import

SYNOPSIS

       r.in.mat
       r.in.mat --help
       r.in.mat  input=name   [output=name]    [--overwrite]   [--help]   [--verbose]   [--quiet]
       [--ui]

   Flags:
       --overwrite
           Allow output files to overwrite existing files

       --help
           Print usage summary

       --verbose
           Verbose module output

       --quiet
           Quiet module output

       --ui
           Force launching GUI dialog

   Parameters:
       input=name [required]
           Name of input MAT-File(v4)

       output=name
           Name for output raster map (override)

DESCRIPTION

       r.in.mat will import a GRASS raster map from a Version 4 MAT-File which was  created  with
       Matlab  or  Octave.  Attributes such as map title and bounds will also be imported if they
       exist.
       Specifically, the following array variables will be read:

           •
                map_datamap_namemap_titlemap_northern_edgemap_southern_edgemap_eastern_edgemap_western_edge
       Any other variables in the MAT-file will be simply skipped over.
       The ’map_name’ variable is optional, if it exists, and is valid, the new map will be  thus
       named.  If  it  doesn’t  exist  or a name is specified with the output= option, the raster
       map’s name will be set to "MatFile" or  the  name  specified  respectively.   (maximum  64
       characters; normal GRASS naming rules apply)
       The ’map_title’ variable is optional, the map’s title is set if it exists.
       The ’map_northern_edge’ and like variables are mandatory unless the user is importing to a
       "XY" non-georeferenced location (e.g. imagery data). Latitude and longitude values  should
       be in decimal form.

NOTES

       r.in.mat  imports  a Version 4 MAT-File. These files can be successfully created with more
       modern versions of Matlab and Octave (see "EXAMPLES" below).
       Everything should be Endian safe, so the file to be imported can be simply copied  between
       different system architectures without binary translation (caveat: see "TODO" below).
       As  there  is  no  IEEE value for NaN in integer arrays, GRASS’s null value may be used to
       represent it within these maps. Usually Matlab will save any integer based matrix with NaN
       values as a double-precision floating point array, so this usually isn’t an issue. To save
       space, once the map is loaded into GRASS you can convert it back to an  integer  map  with
       the following command:
       r.mapcalc "int_map = int(MATFile_map)"
       NaN  values  in  either  floating point or double-precision floating point matrices should
       translate into null values as expected.
       r.in.mat must load the entire map array into memory before  writing,  therefore  it  might
       have problems with huge arrays.  (a 3000x4000 DCELL map uses about 100mb RAM)
       GRASS  defines  its  map  bounds  at  the  outer-edge  of  the  bounding cells, not at the
       coordinates of their centroids. Thus,  the  following  Matlab  commands  may  be  used  to
       determine and check the map’s resolution information will be correct:
           [rows cols] = size(map_data)
           x_range = map_eastern_edge - map_western_edge
           y_range = map_northern_edge - map_southern_edge
           ns_res = y_range/rows
           ew_res = x_range/cols
       Remember Matlab arrays are referenced as (row,column), i.e. (y,x).
       In  addition,  r.in.mat  and  r.out.mat  make  for  a  nice  binary  container  format for
       transferring georeferenced maps around, even if you don’t use Matlab or Octave.

EXAMPLES

       In Matlab, save with:
       save filename.mat map_* -v4
       In Octave, save with:
       save -mat4-binary filename.mat map_*

TODO

       Robust support for mixed-Endian importation.  (This is a work in progress, please help  by
       reporting any failures to the GRASS bug tracking system;
       Add  support  for  importing  map  history, category information, color map, etc.  if they
       exist.
       Option to import a version 5 MAT-File, with map and support information stored in a single
       structured array.

KNOWN ISSUES

       If you encounter any problems, please contact the GRASS Development Team.

SEE ALSO

        r.out.mat, r.in.ascii, r.in.bin, r.mapcalc, r.null.

        The Octave project

AUTHOR

       Hamish Bowman
        Department of Marine Science
       University of Otago
       New Zealand

SOURCE CODE

       Available at: r.in.mat source code (history)

       Accessed: Tuesday Jun 27 11:12:52 2023

       Main index | Raster index | Topics index | Keywords index | Graphical index | Full index

       © 2003-2023 GRASS Development Team, GRASS GIS 8.3.0 Reference Manual