一尘不染

在python中读取没有标题的.img医学图像

python

我有一个没有头文件的X射线照片.img文件。但是,已发布文件的研究人员已提供了有关此文件的信息。

High resolution (2048 × 2048 matrix size, 0.175mm pixel size)
Wide density range (12-bit, 4096 gray scale)
Universal image format (no header, big-endian raw data)

我正在尝试使用Python打开文件,但无法这样做。有人可以建议任何方法来读取此图像文件吗?


阅读 522

收藏
2021-01-20

共1个答案

一尘不染

通过下载JSRT数据库,我找到了一些像您一样的射线照相图像。我已经在此数据库的第一个映像上测试了以下代码:JPCLN001.IMG。

import matplotlib.pyplot as plt
import numpy as np

# Parameters.
input_filename = "JPCLN001.IMG"
shape = (2048, 2048) # matrix size
dtype = np.dtype('>u2') # big-endian unsigned integer (16bit)
output_filename = "JPCLN001.PNG"

# Reading.
fid = open(input_filename, 'rb')
data = np.fromfile(fid, dtype)
image = data.reshape(shape)

# Display.
plt.imshow(image, cmap = "gray")
plt.savefig(output_filename)
plt.show()

它产生一个输出文件JPCLN001.PNG,如下所示:

JSRT数据库的第一张图片

我希望我已经回答了你的问题。祝您编码愉快!

2021-01-20