本项目开发了一个基于PyTorch框架的医学影像分析系统,专注于自动检测3D-CT影像中的肺部结节。
Python 2.7.15 和 PyTorch 1.0.0 的数据预处理分为两个阶段:step1 和 step2。
在第一步中,主要进行去噪、坐标转换、统一分辨率、提取感兴趣区域(ROI)和标签等操作。最终输出不是切片形式的数据,而是准备过程中的中间3D图像结果(各个图片的尺寸可能不同)。这些步骤可以在 `./work/preprocess` 目录下通过运行 `python prepare.py` 来生成相应的文件。
第二阶段包括从数据中裁剪出3D-patch、挖掘困难负样本、进行数据增强和拼接等操作。此外,测试阶段还需要对输入的数据进行切割并合并结果。需要注意的是,在训练和测试过程中使用的patch大小是不同的:训练时为(None,1,128,128,128),而测试时则为(None,1,208,208,208)。
在第一阶段预处理完成后,生成的文件包括 `name_clean.npy` 和 `name_label.npy`。第二阶段的数据准备直接封装到了 DataBowl3Detector 类中,并且该类会使用 step1 产生的中间结果进行进一步的操作。输入 stage1 的 numpy 文件为 name_clean.npy 和 name_label.npy;而输入到 stage2 的 numpy 文件则分别为 name_pbb.npy 和 name_lbb.npy。
这两个阶段的预处理过程是交替执行的,以确保数据能够顺利地从准备阶段过渡到训练和测试阶段。