Читайте также:
|
|
Третьим способом организации растровых данных является их фрагментация. Фрагменты подобны полосам, но каждый фрагмент соответствует прямоугольной области изображения. В отличие от полос, которые всегда имеют ту же ширину, что и изображение, фрагменты могут иметь любую ширину — от одного пикселя до ширины всего изображения. В определенном смысле можно считать, что непрерывные изображения представляют собой один большой фрагмент. Однако на практике фрагменты организованы таким образом, что пиксельные данные, соответствующие одному фрагменту, имеют объем от 4 до 64 Кб, а их высота и ширина кратны 16. Это позволяет повысить эффективность буферизации и декодирования данных изображения.
Если данные изображения организованы в виде фрагментов, то обычно все они имеют одинаковый размер, фрагментируется все изображение, фрагменты не перекрываются и сжимаются с применением одной схемы. Единственным исключением является формат CALS Raster Туре II, позволяющий объединить сжатые и несжатые фрагменты изображения. Как правило, фрагменты не компрессируются, если это может привести к увеличению объема их данных (отрицательное сжатие) или требует неразумных временных затрат.
Кроме того, фрагментация данных позволяет оптимизировать степень сжатия путем применения к разным частям изображения различных схем сжатия. Например, одна часть изображения (наиболее загруженная) разделяется на фрагменты, сжимаемые с применением схемы JPEG, а другая часть того же изображения (состоящая только из одного или двух цветов) может быть сохранена в виде фрагментов, закодированных по алгоритму группового кодирования. В этом случае указанные фрагменты изображения будут иметь разный размер, причем наименьший из них может состоять всего из нескольких пикселей, а наибольший — из сотен или даже тысяч пикселей.
Иногда фрагментация позволяет декодировать и распаковывать большие изображения быстрее, чем если бы их пиксельные данные были организованы в виде строк или полос. Поскольку фрагменты можно раскодировать независимо друг от друга, файловые форматы, позволяющие применять фрагменты, содержат в заголовке файла сведения о количестве фрагментов, их размере и смещении. Используя эту информацию, программа, которая должна отобразить, например, правый нижний угол очень большого изображения, может прочесть только те фрагменты, которые описывают нужную область, пропустив остальные.
Схемы сжатия, ориентированные на применение данного способа организации данных, естественно, лучше работают с файловыми форматами, поддерживающими фрагментацию. Наверное, поэтому в последние версии файлового формата TIFF включена схема сжатия JPEG.
Дата добавления: 2015-01-30; просмотров: 30 | Поможем написать вашу работу | Нарушение авторских прав |