NiftyNet: Как загрузить собственные данные?
Я провожу некоторое время, читая документацию, но все еще не понимаю: 1. как загрузить мои собственные данные 2. как отображается метка изображения 3. существует ли стандартный формат данных
1 ответ
Вопрос 1: В настоящее время есть несколько способов загрузить свои собственные данные, изменив конфигурационные файлы. Вы можете указать свои изображения в файле CSV, используя раздел конфигурации, который выглядит следующим образом:
[labels]
csv_file=labels.csv
spatial_window_size = (20, 42, 42)
interp_order = 0
pixdim=(1.0, 1.0, 1.0)
axcodes=(A, R, S)
Параметр csv_file заставит NiftyNet использовать изображения, перечисленные в label.csv, которые должны иметь формат:
subject_id1,path_to_label_image_1
subject_id2,path_to_label_image_2
...
subject_idn,path_to_label_image_n
Другие параметры описаны здесь.
Другой способ - использовать автоматический поиск пути, который выглядит следующим образом:
[modality1]
path_to_search = ./example_volumes/monomodal_parcellation
filename_contains = _T2,patient
filename_not_contains = _T2W
spatial_window_size = (20, 42, 42)
interp_order = 3
pixdim=(1.0, 1.0, 1.0)
axcodes=(A, R, S)
Это говорит о том, что в папке./example_volumes/monomodal_parcellation можно найти все файлы с именами '_T2' и 'img' (за исключением файлов с именем '_T2W' в имени файла). Subject_id для этих изображений будет именем файла с удаленными "img" и "_T2".
Вопрос 2: Изображения и метки совпадают, имея одинаковый subject_id. Если у вас есть простая схема именования файлов, вы часто можете воспользоваться автоматическим поиском для автоматического сопоставления файлов и subject_ids. (Например, пациент001_T2.nii и пациент001_label.nii можно легко сопоставить, указав "filename_contains = _T2, пациент" для изображения и "filename_contains = _label, пациент" для метки). В противном случае вы можете явно указать соответствие в файлах CSV.
Вопрос 3: NiftyNet поддерживает форматы изображений, которые обрабатываются Nibabel или, если вы установили SimpleITK, SimpleITK.