Почему значение моего пикселя в DICOM превышает значение атрибута «Максимальное значение пикселя изображения»?

Я использую dcmtk для извлечения данных изображения из данных dicom. Теперь у меня есть следующая информация для образца изображения:

  • (0028,0002) Образцов на пиксель: 1
  • (0028,0004) Фотометрическая интерпретация: МОНОХРОМ2
  • (0028,0010) Рядов: 256
  • (0028,0011) Столбцы: 256
  • (0028,0030) Расстояние между пикселями: 1,5625 \ 1,5625
  • (0028,0100) Выделено бит: 16
  • (0028,0101) Хранимые биты: 12
  • (0028,0102) Старший бит: 11
  • (0028,0103) Представление пикселей: 0
  • (0028,0106) Наименьшее значение пикселя изображения: 1
  • (0028,0107) Максимальное значение пикселя изображения: 1060
  • (0028,1050) Центр окна: 474
  • (0028,1051) Ширина окна: 1000
  • (0028,1055) Центр и ширина окна Пояснение: Algo1

Когда я применил значение окна / центра к реальному значению пикселя данных, многие из них белые. Я перебираю значения пикселей и обнаружил, что многие значения пикселей (более 80 процентов) выходят за рамки Максимальное значение пикселя изображения. Многие из них больше пятикратного! Это сделало мое полученное изображение почти полностью белым. Как ни странно, я не понимаю, почему, когда я делю значения пикселей на 256, полученное изображение близко к изображению, которое я ожидал. Я не могу понять, почему это правда.

Может быть, приятно увидеть другой неизвестный атрибут:

  • (0019,1009) Неизвестно: 1.0
  • (0019,100b) Неизвестно: 245
  • (0019,1016) Неизвестный: 25,53

Почему это случилось с моим изображением?


person mf mf    schedule 08.05.2013    source источник
comment
У вас есть содержимое элементов изменения масштаба? Я имею в виду, перемасштабировать точку пересечения (0028,1052) и изменить масштаб (0028,1053). Также может быть полезно прикрепить изображение, показывающее результат вашего изображения. В любом случае эта страница может быть вам очень полезна: dicomiseasy .blogspot.com.es / 2012/08 / chapter-12-pixel-data.html   -  person jap1968    schedule 08.05.2013
comment
В шапке моего образца ничего подобного нет. Все вещи для группы 0028 я перечислил. Многие значения (80 процентов) выходят за пределы окна, все становится белым, но другие зрители показывают это изображение, как я ожидал.   -  person mf mf    schedule 08.05.2013
comment
Вы читаете необработанные значения как беззнаковые или как подписанные? Значение элемента данных pixel representation (0028,0103) равно 0 (вы должны читать их как целые числа без знака).   -  person jap1968    schedule 09.05.2013
comment
Я читаю их как неподписанные.   -  person mf mf    schedule 09.05.2013


Ответы (2)


не могли бы вы убедиться, что вы читаете только 12 бит каждого пикселя? то есть вы применили что-то в этом направлении

int value = ((byte [0] & 0x0f) ‹---------------- 8) | байт [1];

и не

int value = (byte [0] ‹---------------- 8) | байт [1];

person michael pan    schedule 20.05.2013

Я не видел данных вашего изображения, но из того, что вы говорите, я думаю, что это проблема с порядком байтов. Сейчас я мало работал с gdcmtk, но в gdcm у нас есть возможность установить порядок байтов данных. Попробуйте установить порядок байтов на маленький, а не на большой. Если бы вы могли предоставить мне файл dicom, я могу попытаться прочитать его с помощью gdcm.

person Freddy Jose    schedule 16.05.2013