Я прочитал первый кадр изображения DICOM CINE, затем хочу прочитать второй кадр и так далее. Сколько байтов я должен искать указатель файла, чтобы получить следующий кадр (если размер кадра ширина = 640, высота = 480).
Файл DICOM CINE C#.Net
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