Provided by: grass-doc_7.8.2-1build3_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; you will need to login with an OSGeo Userid)
       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)

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

       © 2003-2019 GRASS Development Team, GRASS GIS 7.8.2 Reference Manual