Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Эл.издания.docx
Скачиваний:
5
Добавлен:
01.05.2025
Размер:
967 Кб
Скачать
☆

10. Формат DjVu. . Описание, преимущества, недостатки. Технология разделения на слои. Методы сжатия для каждого слоя и их описание. Проблема «инь» при сжатии текстового слоя и методы её решения.

DjVu – графический формат, который используется преимущественно для сохранения и сжатия отсканированных книг, содержащих цветные изображения и текст.

Особенности:

- чисто растровый формат

- применяется для учебной литературы

- для переноса информации с бумажных носителей в электронный вид (сканирование)

- сохраняет структуру фона

- структура формата открыта

- комбинация разрушающего и неразрушающего методов упаковки. Например, упаковка цветов в палитры (преобразование цветовых координат, в том числе преобразование цветного изображения в черно-белое) или схема аппроксимации по опорным точкам относятся к типичным "разрушающим" преобразованиям, в результате которых информация теряется безвозвратно. В качестве неразрушающего преобразования обычно используются различные вариации на тему алгоритма Лемпеля-Зива.

Плюсы:

- главный плюс – это, безусловно, небольшой размер;

- при небольшом размере файла сохраняется хорошее качество изображений и особенно текста;

- обрабатывается только видимое изображение, что снижает нагрузку на потребление ресурсов компьютера, что особо актуально для файлов большого размера и для владельцев слабых машин;

- возможность использования формата для отображения литературы и документов, содержащих формулы, диаграммы, таблицы, а также исторических документов, с сохранением фактуры отсканированного документа;

- текст остается четким даже при сильном увеличении.

Минусы: DjVu – это сжатие изображения с потерями. То есть часть информации неизбежно теряется. В основном, это касается картинок.

Для сжатия цветных изображений в DjVu применяется специальная технология, разделяющая исходное изображение на три слоя: передний план, задний план и чёрно-белую (однобитовую) маску. Маска сохраняется с разрешением исходного файла; именно она содержит изображение текста и прочие чёткие детали. Разрешение заднего плана, в котором остаются иллюстрации и текстура страницы, по умолчанию понижается для экономии места. Передний план содержит цветовую информацию о маске; его разрешение обычно понижается ещё сильнее. Затем задний и передний планы сжимаются с помощью вейвлет-преобразования, а маска — алгоритмом JB2.

Особенностью алгоритма JB2 является то, что он ищет на странице повторяющиеся символы и сохраняет их изображение только один раз. В многостраничных документах каждые несколько подряд идущих страниц пользуются общим «словарём» изображений.

При кодировании сканов книг в формат DjVu иногда возникает следующая проблема: некоторые буквы в DjVu-файле ошибочно подменяются на другие, внешне схожие с ними буквы (иногда это касается и цифр). Наиболее часто это подмена букв "и" -> "н" (или наоборот), отчего эта проблема получила название "проблема инь".

Кроме текста, «инь» нередко портит математические и прочие формулы, что очень существенно.

Причина этой проблемы - ошибки классификации символов в DjVu-кодировщике, помноженные на использование кодировщиком "словарей разделённых символов".

При DjVu-кодировании изображение на скане сегментируется на текст и фон, после чего текст попадает в слой маски, которая кодируется в подформат JB2. Для снижения размера получаемого DjVu-файла JB2-кодировщик разбивает всё множество кодируемых сканов на группы по 10-20 сканов, и создаёт для каждой такой группы словарь разделённых символов.

Разделённые символы - это визуально и "смыслово" тождественные символы букв, цифр, и прочих знаков, которые присутствуют более чем в одном экземпляре на страницах данной "словарной группы" сканов. Cловарь содержит образцы разделённых символов наряду с информацией о количестве экземпляров каждого символа, номерах страниц его вхождений, и координатах вхождений.

Если изображения двух разных букв визуально схожи - то при lossy-режиме кодировщик может ошибочно решить, что это одна и та же буква. В результате в djbz-словаре вместо двух символов окажется один - и он будет растиражирован по всем позициям, занимаемыми в тексте обоими символами. Так и возникает ошибка инь.

К счастью, проблема инь не является неустранимой. Есть 2 принципиальных способа её решения:

1. Отказ от "усреднения" символов словаря

2. Борьба с ошибками классификации символов

Проблема сводится практически к нулю при использовании разрешения 600 dpi при создании DjVu (что обеспечивается автоматически при использовании Scan Tailor во время создания DjVu).