mapImage.mapImage edit page

an image that knows where on the specimen it sits

A raster of values - a forescatter or backscatter image, a band contrast map, any per pixel quantity - together with the geometry that says which part of the specimen each pixel covers. That is what makes an image and an EBSD map comparable objects rather than an array plus a pixel size and a convention held in someone's head.

The grid is REGULAR: an origin and two perpendicular step vectors, with pos derived rather than stored. This is the difference from EBSDgrid, which stores pos per pixel so that a measured grid may be rotated, sheared or smoothly distorted. An image is none of those - a distortion is applied by resampling onto a new regular grid, never by moving grid points - so the general contract would only mean permitting states that cannot arise.

An EBSD map joins a sequence of images as one of them, carrying the map along with whichever channel is to be registered on:

mapImage(ebsd.bc,ebsd)

so a whole sequence is one mapImage array rather than a list of two different things.

An image pre-processed for registration - gamma compressed, filtered - is an entry of its own, with spatialTransformId as the transform between it and the image it was derived from. Nothing here declares what to register on: that is a fact about a comparison, so it belongs to the job.

Syntax

mg = mapImage(img)                        % unit step, its own frame
mg = mapImage(img,'dxy',0.05)             % square pixels
mg = mapImage(img,'dxy',[dx dy])
mg = mapImage(ebsd.bc,ebsd)               % a channel of a gridded map
mg = mapImage(img,ebsd)                   % an image already on the map's grid
mg = mapImage(img,'dxy',0.05,'name','bse')

Input

img r × c × k numeric, integer types scaled to [0,1]
ebsd EBSD, gridded and square

Output

mg mapImage

Options

dxy pixel size, scalar or [dx dy]
name a valid MATLAB identifier, the field an aligned image is written under
origin vector3d position of pixel (1,1)
scanUnit unit of the positions, default 'um' or the map's own

Class Properties

img r × c × k values
name what this image is called
ebsd EBSD on the same grid, empty if there is none
origin vector3d, the position of pixel (1,1)
d1, d2 vector3d, the step from row to row and column to column
frame referenceFrame the geometry is expressed in
scanUnit unit of the positions, taken from the map. Default 'um'
pos r × c vector3d, derived from origin, d1 and d2
layout gridLayout the array is stored in, derived from d1 and d2

See also

EBSD EBSDsquare gridLayout mapImage.interp mapImage.edgeMap

Citing this page. This page is part of the documentation of MTEX, a free and open source MATLAB toolbox for analyzing and modeling crystallographic textures. It was written by The MTEX Developers and is published at https://mtex-toolbox.github.io/mapImage.mapImage.html. If you use MTEX, or reuse text or figures from this page, in your research, please cite

F. Bachmann, R. Hielscher, H. Schaeben: Texture Analysis with MTEX - Free and Open Source Software Toolbox, Solid State Phenomena 160 (2010), 63-68. 10.4028/www.scientific.net/SSP.160.63

BibTeX
@article{bachmann2010mtex,
  author  = {F. Bachmann and R. Hielscher and H. Schaeben},
  title   = {Texture Analysis with MTEX - Free and Open Source Software Toolbox},
  journal = {Solid State Phenomena},
  volume  = {160},
  pages   = {63-68},
  year    = {2010},
  doi     = {10.4028/www.scientific.net/SSP.160.63},
  url     = {https://doi.org/10.4028/www.scientific.net/SSP.160.63}
}

Other papers describing specific MTEX methods are listed under Publications — please cite the one that best fits your application. The MTEX source code is licensed under the GNU General Public License v2.0; the text and figures of this documentation are licensed under CC BY 4.0, which permits reuse — including by automated systems — provided The MTEX Developers and this page are credited.