3.7.7. Сжатый файлJPEG создает сжатый файл, в котором находятся все параметры, маркеры и, конечно, сжатые единицы данных изображения. Параметры состоят из слов длины 4 бита (объединяемых в пары), из одного байта или из двух байт. Маркеры необходимы для разделения файла на части. Маркеры имеют длину 2 байта. Первый байт равен 'FF'X, а второй не ноль и не 'FF'X. Перед маркером может стоять несколько байтов с 'FF'X. В табл. 3.59 перечислены все маркеры JPEG (первые четыре группы состоят из маркеров начала кадра). Сжатые единицы данных комбинируются в минимальные единицы данных (MCU, minimal data unit), где MCU состоит или из одной единицы (мода без чередования) или из трех единиц данных всех цветных компонент (мода с чередованием). На рис. 3.58 показаны все основные части выходного файла, сжатого по методу JPEG (части, заключенные в квадратные скобки, могут отсутствовать). Файл начинается с маркера SOI и кончается маркером EOI. Между этими маркерами сжатый образ делится на кадры. В иерархической моде может быть несколько кадров, а во всех других модах имеется только один кадр. В каждом кадре информация об изображении хранится в одном или нескольких сканах; у кадра также имеется заголовок, перед которым могут находиться таблицы (которые, в свою очередь, могут иметь маркеры). За первым сканом может следовать сегмент DNL (define number of lines, определение числа строк), который начинается маркером DNL. В нем записано число строк сжатого образа, содержащегося в кадре. Скан начинается с таблицы (которая может отсутствовать), за которой идет заголовок скана, после которого размещается несколько сегментов энтропийного кода (ECS, entropy-coded segment), которые разделяются маркерами рестарта RST (restart). Каждый ECS состоит из одного или нескольких MCU, где MCU - это или одна единица данных, или три такие единицы.
|