Open cppxu opened 6 years ago
@cppxu 您好,这个项目是之前实习做的练手项目,后来搬走了,你现在看到的这个内容就是所有的可以参考代码,其他的我现在自己也没有了。关于LIDC数据的一些操作可以参考这里的一些代码,对图片切割什么的可以看这里等。 关于你的问题,CT图像转换为BMP,我这里是用的python,所以首先使用pydicom包读取出DICOM文件中的pixel信息,然后使用python的一些图像处理库保存图像,这个很多比如scipy.misc,PIL的Image,skimage.io等,比如下面一个简单的例子:
import dicom
import scipy
f_dcm = dicom.read_file('000001.dcm')
scipy.misc.imsave(dstpath, f_dcm.pixel_array)
关于那个命名,LIDC-IDRI-1003是病例号,表示某个病人的数据,dat_21_是该组数据中的第21张切片,一般一组数据会有很多张切片,比如一两百张,因为你在做CT时是横断面扫描,从肺部上面以一定的z轴间隔一直扫描到肺部下面出来一组片子。
谢谢您,那请问一下lung_data/LIDC-IDRI-1003.dat21.bmp这个的第21张图片,应该不是原图的第21张图片吧?那这个是用哪些图合成的这1张图片呢?能否再稍微给点思路! 非常感谢!
@cppxu 这个不能根据文件名来判断切片顺序,需要读取每一张dcm的空间位置信息(Z坐标或者有一个关键字instance number可以排序)然后排序得到一组数据。关于获取z轴信息排序可以参考 write_bin_file.py 和nodule2.py 。关于dcm各个标签的含义可以看我以前的一个总结 LIDC-IDRI肺结节公开数据集Dicom和XML标注详解 和csdn一篇博文的详细介绍 DICOM的常用Tag分类和说明 。
看到你的项目,我非常感兴趣。作者能否能详细实现一次过程的说明。非常感谢。比如如何用自己的数据集进行试验。等等。图像的预处理,分割,分类。。。。。谢谢。希望得到你的帮助。
我也想做一下这个实验,能否说下详细过程,万分感谢!
您好:看到您的项目,很感兴趣。但是由于缺少专业知识,不太懂得怎么将CT图像转换成BMP格式的。 您可否将转换成BMP文件的代码分享下; 问题2转换之后与lung_train.json中的格式怎么对应的(即:如这个的命名原则:lung_data/LIDC-IDRI-1003.dat21.bmp,为什么这样命名呢?) 十分感谢!