Файл DICOM CINE C#.Net

Я прочитал первый кадр изображения DICOM CINE, затем хочу прочитать второй кадр и так далее. Сколько байтов я должен искать указатель файла, чтобы получить следующий кадр (если размер кадра ширина = 640, высота = 480).


person y_zyx    schedule 12.05.2011    source источник
comment
возможный дубликат файла DICOM CINE C#.Net   -  person Hans Passant    schedule 12.05.2011


Ответы (2)


под киноизображением DICOM вы имеете в виду многокадровые файлы DICOM, верно? Могу я узнать: на какой платформе вы работаете, какую библиотеку dicom lib/SDK вы используете? а для вашего изображения DICOM оно было распаковано? в BMP (32-бит/24-бит)?

Если ваш файл dicom находится в 24-битном (3-байтовом) BMP, то ваш следующий кадр данных пикселей будет 640 * 480 * 3.

person Gary Tsui    schedule 31.05.2011

Предполагая, что вы имеете дело с несжатым (собственным) многокадровым DICOM. В этом случае вам необходимо извлечь следующую информацию, прежде чем приступать к вычислению размера каждого кадра изображения.

  • Синтаксис передачи (0002, 0010), чтобы убедиться, что набор данных не использует синтаксис инкапсулированной/сжатой передачи.
  • Выборка на пиксель (0028, 0002): представляет количество выборок (плоскостей) в этом изображении. Например, 24-битный RGB будет иметь значение 3.
  • Количество кадров (0028, 0008): общее количество кадров
  • Строки (0028, 0010)
  • Столбцы (0028, 0011)
  • Выделенный бит (0028, 0100): количество битов, выделенных для каждого образца пикселя.
  • Планарная конфигурация (0028, 0006): условный элемент, указывающий, отправляются ли пиксельные данные по плоскости или попиксельно. Это необходимо, если Samples per Pixel (0028, 0002) имеет значение больше 1.

Вы бы рассчитали размер кадра следующим образом:

Размер кадра в байтах = Строки * Столбцы * (Выделенные биты * Выборка на пиксель/8)

person LEADTOOLS Support    schedule 23.10.2014