Образ mri T1 в питоне с Nipy
У меня есть изображение T1 (NIFTI), уже выровненное, с размерами 121 x 145 x 121.
Изображение загружено нибабелем. Размер вокселя составляет 1,5 х 1,5 х 1,5 мм.
Я хочу преобразовать его в изображение с разрешением 2,0 x 2,0 x 2,0 мм и сохранить выравнивание изображений.
У меня мало знаний в манипуляциях с МРТ. Я не мог найти четкий учебник.
Как я могу это сделать? Если вы знаете любую другую библиотеку Python, которая может это сделать, она также будет работать.
1 ответ
Я бы предложил использовать Nibabel. Он может уменьшить ваш файл nifti всего за несколько строк.
Пример для повторной выборки к изображению до размера вокселя 2x2x2:
import nibabel
import nibabel.processing
input_path = r'/input/path/input_img.nii.gz'
output_path = r'/output/path/output_img.nii.gz'
voxel_size = [2, 2, 2]
input_img = nibabel.load(input_path)
resampled_img = nibabel.processing.resample_to_output(input_img, voxel_size)
nibabel.save(resampled_img, output_path)
Просто обновить input_path
а также output_path
отражать ваши файлы. Второй аргумент в функции resample_to_output (voxel_size
) должен соответствовать размерам вашего ввода или быть одним значением, тогда nibabel будет предполагать, что вы хотите иметь одинаковый размер вокселя для всех измерений.
Информация Nibabel:
Документы: http://nipy.org/nibabel/.
Инструкции по установке: https://anaconda.org/conda-forge/nibabel