I need to import a file of unsupported format into Matlab (multiple image sequence)

7 次查看(过去 30 天)
I have files that contain multiple frames of raw data images (uint16 or uint32)and I have the row column information and how many frames are stored consecutively in the file. However, I can not find a suitable approach for telling matlab to import this file and the images it contains. It is a proprietary format (Ultrasound data) but I can look in a separate header file to find out the image parameters. Does anyone know how to tellMatlab to not only tell it the size of columns and rows but that there are multiple images as well???
Thank You!

回答(1 个)

Chaowei Chen
Chaowei Chen 2011-8-22
Does the file follows a certain format like tif? In this case, frame_k = imread('filename.tif',k);
If it is a custom format, I bet you can work around with the template below
fid = fopen(f_name, 'rb' );
file_id = fread( fid, 16, 'uchar');
file_head = fread( fid, 5, 'int32' ); % File_header
nFr = file_head(1); width = file_head(2); depth = file_head(3); nFrp3D = file_head(4); n3D = file_head(5);
fclose(fid);
  1 个评论
John Crane
John Crane 2011-8-22
It is not one of the supported file formats but it is similar to a tif. For these file there is no header and imaging data starts at byte 0. I would get the parameters from another file. Would you still do an fread when you have file_head(1..5)?
It just doesn't appear to me how to pass the multi frame parameters into fread or imread.

请先登录,再进行评论。

Community Treasure Hunt

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

Start Hunting!

Translated by