binary data reading into an image

8 次查看(过去 30 天)
I need some help with a bin file i have downloaded.it contains slices of the brain mri. this is the info i got about the .bin file
The suffix “bin” indicates that the file is a stream of binary numbers. The numbers are encoded as two-byte two's complement integers. The byte order is big-endian. This order is the standard for Sun workstations. Odd and even bytes must be interchanged for DEC VAX computers and Intel 80x86 microprocessors. The “.bin” file contains the voxels in row-column-slice order, meaning that the first voxel in the file should be displayed in the upper left of the screen, the second voxel should be displayed to the right of the first, etc., until the end of the row is reached. The next voxel should be displayed below the first voxel of the file, the next to the right of that, etc., until one complete slice is displayed. The first voxel of the second slice follows the last voxel of the first slice, etc.
thank you

采纳的回答

Walter Roberson
Walter Roberson 2012-11-11
fread() with '*int16' as the precision. reshape() the linear stream into a cuboid and then permute() [2 1 3] to change the data order to MATLAB's data order.
  5 个评论
Walter Roberson
Walter Roberson 2012-11-12
Instead of converting it to uint8(), try using imagesc() on the int16 data.
Evolution
Evolution 2012-11-12
thanks it worked absolutely fine .

请先登录,再进行评论。

更多回答(0 个)

类别

Help CenterFile Exchange 中查找有关 3-D Volumetric Image Processing 的更多信息

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by