How to input data from a .bin file into a 3D array?

7 Ansichten (letzte 30 Tage)
Liam Day
Liam Day am 2 Feb. 2016
Kommentiert: Liam Day am 2 Feb. 2016
I have a .bin file which signifies the positions of lungs from CT imaging, in 3D size [128 128 128]. I am trying to upload it using fopen and fread but it only gives a single 2D image size [128 128 1].
My code:
fid = fopen('filedirectoryandname.bin')
image = fread(fid, [128 128 128], '*uint16')
I don't think fread can work wth [128 128 128] images. Is there another way?
I have also tried the function interfileread but apparently my .bin file isn't a valid interfile file.

Akzeptierte Antwort

James Tursa
James Tursa am 2 Feb. 2016
You could read it into a vector and then reshape. E.g.,
image = fread(fid, 128*128*128, '*uint16');
image = reshape(image,128,128,128);
  1 Kommentar
Liam Day
Liam Day am 2 Feb. 2016
This is giving me a [128 128 128] array, thank you for your help

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (0)

Kategorien

Mehr zu Read, Write, and Modify Image finden Sie in Help Center und File Exchange

Tags

Community Treasure Hunt

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

Start Hunting!

Translated by