anyone can help me to open this file . sin
44 次查看(过去 30 天)
显示 更早的评论
3 个评论
Cris LaPierre
2024-12-17,14:38
@mohd akmal masud we need to know the format used to create the file in order to read it in correctly.
From here: 4.3. Interfile output of projection set
The Interfile format is especially suited for acquisition protocol using a multiple headed rotating gamma camera. The total description of the Interfilev3.3 format can be found on the Interfile website: http://www.medphys.ucl.ac.uk/interfile/index.htm.
Two files are created when using the Interfile/Projection output: your_file.hdr and your_file.sin. The header file contains all information about the acquisition while the your_file.sin file contains the binary information.
The page lists the following details as well
- Image Type: 16-bit Unsigned
- Width & Height & Number of Images can be read into the .hdr files if unknown.
- Tick the case: Little Endian byte Order
回答(1 个)
Cris LaPierre
2024-12-17,15:23
编辑:Cris LaPierre
2024-12-17,15:33
This code will reproduce the results obtained in imageJ using the settings provided in the GATE documentation with one change - your .hdr file indicates the number format is double, not uint16.
numI = 240;
% Define the filename
filename = 'jaz_100M_60proj.sin';
% Open the file for reading
fileID = fopen(filename, 'r');
% Read the data as 16-bit unsigned integers
data = fread(fileID, [128*128,inf], 'double', 'ieee-le');
% Close the file
fclose(fileID);
% reshape the data
proj = reshape(data,128,128,240);
proj = permute(proj,[2 1 3])
% display one image
imshow(proj(:,:,1), []);
Just a comment that I have no idea what the data should look like. This should serve as a starting point nonetheless.
2 个评论
另请参阅
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!