2015-08-11 2 views
4

Я пытаюсь записать последовательность цветных изображений в файл dicom в Matlab. Каждое изображение имеет тип uint16. Последовательность сохраняется в 4D-матрице с именем output размером 200x360x3x360 (несколько строк x число колонок x число каналов x число изображений). Когда я исполняю dicomwrite(output,'outputfile.dcm'), он дает следующее сообщение об ошибке:Использование dicomwrite с цветными изображениями

enter image description here

Это говорит бит данных глубина 8, но я гарантировал, что каждое изображение 16-бит. Не уверен, что происходит не так.

documentation для dicomwrite говорит, что он также может писать цветные изображения. Фактически dicomread может считывать цветные изображения dicom таким образом, чтобы размер матрицы, которая хранит данные считывания, составляет 200x360x3x360. Поэтому я думаю, что также можно писать цветные изображения, используя dicomwrite. Любая помощь в этом отношении приветствуется. Существует related post, но он не говорит о последовательности цветовых изображений.

+3

Это означает, что ожидается 8-разрядные данные и вы получите 16 бит. Изображения Dicom Images of Secondary capture (1.2.840.10008.5.1.4.1.1.7.4) должны содержать только 8-битные пиксельные данные. – JohnnyQ

ответ

4

Комментарий от JohnnyQ верен. From this page вниз в разделе A.8.5.4, они перечисляют Многокадровый True Color SC Image НОР Содержимое Ограничения (частичный список цитирую):

In the Image Pixel Module, the following constraints apply:

  • Samples per Pixel (0028,0002) shall be 3
  • Bits Allocated (0028,0100) shall be 8
  • Bits Stored (0028,0101) shall be 8
  • High Bit (0028,0102) shall be 7
  • Pixel Representation (0028,0103) shall be 0

Это кажется не MATLAB делать преобразования для вас, так что вы должен преобразовывать каждый 16-битный цветной канал в 8-бит для DICOM

+0

Спасибо @rkh и @Johnny. Да, преобразование в 8 бит. Но у меня все еще есть сомнения. Когда я прочитал файл dicom и извлек один из фрагментов, срез был 'int16'. Тогда почему для записи требуется 8-битная глубина? – Ruchir

+0

@ Ruchir, возможно, есть файл DICOM, который нарушает стандарт. Вполне возможно, что исходное изображение - это 16-битный многокадровый истинный цвет. Или, может быть, это 16-битная шкала серого цвета mutliframe, соответствующая стандарту, но это действительно цветное изображение ... – rkh

+0

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

 Смежные вопросы

  • Нет связанных вопросов^_^