DICOM Изображение слишком темное с ITK - PullRequest
3 голосов
/ 28 августа 2011

Я пытаюсь прочитать изображение с помощью ITK и отобразить с помощью VTK.

Но есть проблема, которая преследует меня довольно долгое время.

Я читаю изображения, используяклассы itkGDCMImageIO и itkImageSeriesReader.

После прочтения я могу сделать две разные вещи:

1.Я могу преобразовать изображение ITK в vtkImageData, используя itkImageToVTKImageFilter и использовать vtkImageReslicer, чтобы получить все три оси.Затем я использую классы vtkImageMapper, vtkActor2D, vtkRenderer и QVTKWidget для отображения изображения.

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

2.Второй сценарий - конвейер регистрации.Здесь я читаю изображение, как и раньше, затем использую классы, приведенные в главе «Руководство по программному обеспечению ITK» о регистрации.Затем я повторяю образец изображения и использую itkImageSeriesWriter.

И вот тогда возникает проблема.После записи изображения в файл я сравниваю это новое изображение с изображением, которое я использовал в качестве входных данных в программном обеспечении XMedcon.Если изображение, которое я написал, было показано слишком ярко в моем программном обеспечении, то при сравнении их в XMedcon изменений не будет.В противном случае, если изображение было слишком темным в моем программном обеспечении, оно выглядит испорченным в XMedcon.

При сравнении обоих изображений (исходного и нового) я заметил, что в обоих случаях происходят измененияв модальности, размерах в пикселях и glmax.

Полагаю, проблема в glmax, поскольку основные изменения происходят с более темными изображениями.

Я действительно не знаю, что делать.Это как-то связано с уровнем цвета / окном?Самое странное, что все изображения очень похожи, с одинаковыми тегами, и только некоторые из них отображают ошибки при показе / записи.

Ответы [ 3 ]

4 голосов
/ 29 августа 2011

Я не знаком с особенностями VTK / ITK, но мне кажется, что проблема более общая, чем эта. Медицинские изображения имеют большой динамический диапазон, и часто изображения выглядят очень темными или очень яркими, если в окне не установлен какой-либо подходящий диапазон. Теги DICOM Window Center (0028, 1050) и Window Width (0028, 1051) будут включать некоторые настройки окна по умолчанию, которые были выбраны модальностью. Обычно эти значения разумны, но не всегда. См. Часть 3 стандарта DICOM (11_03pu.pdf - это имя файла) в разделе C.11.2.1.2 для получения подробной информации о том, как необработанные пиксели изображения масштабируются для отображения. Общая идея заключается в том, что вам нужно применить линейное масштабирование к изображениям, чтобы получить соответствующие значения пикселей для отображения.

1 голос
/ 28 августа 2011

Какие типы пикселей вы используете? В большинстве случаев при использовании ITK проще использовать тип с плавающей запятой, но необработанные медицинские изображения часто являются короткими, поэтому это может стать вашей проблемой.

Вы также должны записывать образ на диск после каждого шага (например, в формате MHD) и проверять его с помощью программы просмотра, которая, как известно, работает правильно, например, vv (http://www.creatis.insa -lyon.fr / rio / ст). Вы также можете разместить их здесь, а также свой код для дальнейшего просмотра.

Удачи!

0 голосов
/ 30 июня 2017

Для того, что вы описываете как первую проблему:

  1. Я могу преобразовать изображение ITK в vtkImageData, используя itkImageToVTKImageFilter и использовать vtkImageReslicer для получения всех трех осей.Затем я использую классы vtkImageMapper, vtkActor2D, vtkRenderer и QVTKWidget для отображения изображения.

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

Я предлагаю следующее: Проверьте ваше окно / уровень в VTK, они, вероятно, не соответствуют вашим изображениям.Если это томография брюшной полости = 350, уровень 50 должен быть хорошим уровнем цвета.

...