Home > brain, matlab > Convert images to matrix

Convert images to matrix

September 2nd, 2010

Quite often you need to convert an image (or multiple images) to a MatLab matrix for further analysis and visualization (e.g. extracting time series, multivariate pattern analysis, etc). SPM provides handy functions for this:

P = spm_select; % select 1 or more images
V = spm_vol(P);
M = spm_read_vols(V);

The dimension of M is 3D or 4D depending on how many images you selected. The 1st 3 dimensions are spatial and the last one is temporal.

If you want to save a matrix to a image file, use

V.fname = 'b.img';%
spm_write_vol(V, M);
Author: Xu Cui Categories: brain, matlab Tags:
About the author:

Xu Cui is a human brain research scientist in Stanford University. He lives in the Bay Area in the United States. He also started a company. Check out PaperBox and BizGenius he runs.


He was born in He'nan province, China. He received education in Beijing University(BS), University of Tennessee (Knoxville) (MS), Baylor College of Medicine (PhD) and Stanford University (PostDoc). Read more ...
  1. No comments yet.