Создайте новую серию DICOM

В этом примере показано, как создать новую серию DICOM для измененного изображения DICOM.

В стандарте DICOM изображения могут быть организованы последовательно. По умолчанию, когда вы записываете изображение с метаданными в файл DICOM, dicomwrite помещает изображение в ту же серию. Обычно новая серия DICOM запускается только при некотором изменении изображения. Чтобы сделать измененное изображение началом новой серии, присвойте новый уникальный идентификатор DICOM полю метаданных SeriesInstanceUID.

Чтение изображения из файла DICOM в рабочую область.

I = dicomread('CT-MONO2-16-ankle.dcm');

Отобразите изображение. Поскольку данные изображения DICOM подписаны 16-битными данными, автоматически масштабируйте область значений отображения так, чтобы минимальное значение пикселя было черным, а максимальное значение пикселя было белым.

imshow(I,'DisplayRange',[])

Figure contains an axes. The axes contains an object of type image.

Считайте метаданные из файла DICOM.

info = dicominfo('CT-MONO2-16-ankle.dcm');

Чтобы идентифицировать серию, к которой принадлежит изображение, просмотрите значение свойства SeriesInstanceUID.

info.SeriesInstanceUID
ans = 
'1.2.840.113619.2.1.2411.1031152382.365.736169244'

Этот пример изменяет изображение, удаляя весь текст из изображения. Текст на изображении выглядит белым. Найдите максимальное значение всех пикселей в изображении, которое соответствует белому тексту.

textValue = max(I(:));

Фон изображения выглядит черным. Найдите минимальное значение всех пикселей на изображении, которое соответствует фону.

backgroundValue = min(I(:));

Чтобы удалить текст, установите все пиксели с максимальным значением минимального значения.

Imodified = I;
Imodified(Imodified == textValue) = backgroundValue;

Просмотр обработанного изображения.

imshow(Imodified,'DisplayRange',[])

Figure contains an axes. The axes contains an object of type image.

Чтобы записать измененное изображение как новую серию, вам нужен новый уникальный идентификатор DICOM (UID). Сгенерируйте новый UID с помощью dicomuid функция. dicomuid гарантировано сгенерировать уникальный UID.

uid = dicomuid
uid = 
'1.3.6.1.4.1.9590.100.1.2.330053006212065372123761543973312552760'

Установите значение поля SeriesInstanceUID в метаданных, связанных с исходным файлом DICOM, на сгенерированное значение.

info.SeriesInstanceUID = uid;

Запишите изменённое изображение в новый файл DICOM, задав в качестве аргумента измененную структуру метаданных. Поскольку вы задаете значение SeriesInstanceUID, записанное изображение является частью новой серии.

dicomwrite(Imodified,'ankle_newseries.dcm',info);

Чтобы проверить эту операцию, просмотрите изображение и поле метаданных SeriesInstanceUID в новом файле.

См. также

Приложения

Функции

Похожие темы