brain images: Change data type of brain image

1 min read

Last update: 2012/09/04

An image file can be saved in different formats such as uint8 or int16, etc, based on different number of bytes used for each voxel. How to convert between them? Here is one solution using SPM functions (no need SPM’s interface). Assume img1.img is the original image with datatype int16, img2.img is the file you want to create with datatype uint8.

V=spm_vol('img1.img');
disp(V.dim); %you will find the last element is 4 in SPM2
V2=V;
V2.fname='img2.img';
V2.dim(4)=2;
M=spm_read_vols(V);
spm_write_vol(V2, M);

Explanation:
Variable V.dim is a 1×4 vector. The first three are number of voxels (or dimensions) along x,y and z direction. The last element (4th) is the number of bytes used for each voxel and it is this variable we want to change.

Note: If you are using SPM5 or SPM8, then the data type information is in V.dt

V=spm_vol('img1.img');
disp(V.dt); %for SPM5 and SPM8
V2=V;
V2.fname='img2.img';
V2.dt=[2 0];
M=spm_read_vols(V);
spm_write_vol(V2, M);

I myself find the following 3 SPM functions are extremely useful and use them a lot:

V=spm_vol('img1.img'); % read header information of an image file
M=spm_read_vols(V); % read the data (voxel intensity) from an image. The result is a 3D matrix with each point corresponding to a point in brain.
spm_write_vol(V2, M); % write data to an image file.

Check out here to see how to convert images with different formats (e.g. ANALYZE, Nifti, DICOM etc)



文献鸟 618 活动


写作助手,把中式英语变成专业英文


Want to receive new post notification? 有新文章通知我

第六十三期fNIRS Journal Club视频 张百强

Youtube: https://youtu.be/vBsdcx08ZV4 优酷:https://v.youku.com/video?vid=XNjQ4NTcxNjM4MA%3D%3D fNIRS信号
Wanling Zhu
13 sec read

第六十三期fNIRS Journal Club通知2025/6/14, 10am 张百强

该文章的声音简介(中文版): 该文章的声音简介(英文版): fNIRS信号容易受到头动伪影、接触不良以及生理噪声等影响,导致测量信号信噪比低和数据浪费。来自北京师范大学牛海晶课题组的张百强同学将分享一
Wanling Zhu
9 sec read

第六十二期fNIRS Journal Club视频 李杨卓博士

Youtube: https://youtu.be/RN0mUjUe99A 优酷:https://v.youku.com/video?vid=XNjQ3MzIyMTA1Ng== 说服是促进信息传播、人
Wanling Zhu
9 sec read

2 Replies to “brain images: Change data type of brain image”

  1. If I’m not mistaken that’s only true for SPM2. For SPM5 and SPM8 the field ‘dim’ has only three entries and the first entry of the field ‘dt’ carries the information about the data type.

Leave a Reply

Your email address will not be published. Required fields are marked *