数据集地址: Calgary-Campinas-359 (CC-359) dataset
这里选用singlecoil 部分进行举例
我的文件结构如下
选取Train_part1文件夹中的文件进行读取
#导入相关的包
import numpy as np
import os
import matplotlib.pyplot as plt
#读取文件
path='E:\\磁共振数据集\\CC-59\\Train_part1\\Train\\'#路径
files= os.listdir(path)
data_all=[]
for file in files:
with open("E:\\磁共振数据集\\CC-59\\Train_part1\\Train\\"+file, "rb") as fp:
data = np.load(fp)
data_all.append(data) #len(data_all)为12,共12个npy文件
print(data_all[0].shape) ##(170, 256, 256, 2)
给出的是K空间数据,最后一个维度2分别代表实部和虚部的数据
def to_complex(data):
# from data[256,256,2] to [256,256]complex
data = data[:,:,0] + 1j*data[:,:,1]
return data
选择一个切片进行绘图
img=np.fft.ifft2(to_complex(data_all[0][100]))#傅里叶变换转变成图像域
plt.figure(figsize=(8,8))
plt.subplot(121)
plt.imshow(np.fft.fftshift(np.log(1+np.abs(to_complex(data_all[0][100])))),cmap='gray')
plt.title('full k space')
plt.subplot(122)
plt.imshow(np.abs(img),cmap='gray')
plt.title("full image")
plt.show()
最后展示图片如下
最后,此篇文章有参考 jinfeng2411的博客,原博客有数据集的百度网盘链接