Теперь Кью работает в режиме чтения

Мы сохранили весь контент, но добавить что-то новое уже нельзя

Как сделать из Dicom файла тензор для обработки искусственной нейросетью?

Data sciencePython+3
Лео
  ·   · 2,5 K
Исправляю старые баги, добавляю новые  · 26 апр 2021

Что бы открыть файл я нашел библиотеку pydicom. Там же есть возможность получить сразу массив для конвертации в тензор.

Например:

import pydicom
import torch
# путь к файлу
test_filepath = '/content/ID_0000_AGE_0060_CONTRAST_1_CT.dcm'
# чтение файла в python объект 
dicom_file = pydicom.dcmread(test_filepath)
file_array = ds.pixel_array
# конвертация в тензор через Pytorch
file_tensor = torch.Tensor(file_array)

Во время текста я получил исключение из-за неподдерживаемого типа массива np.uint16, возможно, это не редкость. Тип легко изменить с помощью astype.

import numpy as np
file_array = ds.pixel_array.astype(np.uint8)

Ну а проверить и визуализировать результат можно так:

from matplotlib import pyplot as plt
plt.imshow(file_tensor) 
Без названия.png