Сжатие конспектов

Материал из Вики ИТ мехмата ЮФУ
Перейти к: навигация, поиск

Введение

Статья посвящена эффективному сжатию цифровых копий конспектов, полученных с помощью фотокамеры (в первую очередь) или сканера.

Пара слов о получении фотографий

При съемке конспекта нужно быть аккуратным: следить за фокусом и стараться, чтобы разворот в каждом кадре занимал одно и то же место. Последнее крайне важно при автоматизированной обрезке — соотношение сторон тетради и фотокадра разное, поэтому неизбежны поля, кторые следует обрезать в целях сокращения объема данных. Так же важно установить максимально возможное качество для фото: разрешение и сжатие jpeg. Это важное правило актуально не только в нашем случае: исходники всегда должны иметь хороший запас качества.

Подготовка материалов к сжатию

Итак, основная задача: подготовить фотографии конспекта к последующему сжатию в формат DjVu. Подготовка заключается в преобразовании изображений таким бразом, чтобы djvu-кодировщик мог правильно выделить передний план (текст) и задний план (фон). Текст должен быть черным, контрастным. Фон — значительно бледнее. Такое преобразование позволит добиться впечатляющего сжатия без потери читабельности, а в некоторых случаях даже облагородит материал (например, возможна дальнейшая распечатка без фона «в клеточку»).

Windows

Средства: IrfanView.

Небезызвестный бесплатный просмотрщик умеет проводить пакетную модификацию изображений, изменяя нужные нам параметры.

Какие это параметры:

  • цветность - если цвет не нужен, возможно преобразование в оттенки серого (grayscale)
  • яркость (brightness, изменяется в диапазоне [-255..255] каждый раз относительно текущего значения 0)
  • контрастность (contrast, изменяется аналогично яркости, но в диапазоне [-127..127])
  • гамма-коррекция (gamma correction, [0.01..6.99])
  • четкость (sharpness, [1..99])

Так же утилита позволяет настроить параметры обрезки (cropping).

Приступим:

  • Запустите IrfanView
  • File -> Batch Conversion/Rename или нажмите 'B'
  • Выберите местоположение сканов и добавьте их к задаче
  • Выберите выходной формат - TIF (для экономии места) или BMP (если все равно)
  • Выберите выходной каталог (Output directory)
  • Поставьте галочку 'Use advanced options' и нажмите кнопку 'Advanced', чтобы добраться до самого главного - настройки параметров изображения
  • Установите следующие параметры:
  Sharpness = 50
  Brightness = 100
  Contrast = 75
  Gamma correction = 0.3

Примечание. Указанные выше значения приведены в качестве примера. Вообще говоря, они подбираются экспериментально. Потренироваться можно на одном из разворотов, вызвав из меню Image -> Color corrections... .

  • Установите галочки 'Convert to grayscale' для конвертации в оттенки серого.

Примечание. Опцию нужно выбрать, если не имеет смысла сохранять цвет. При конвертации в djvu наличие цвета незначительно влияет на размер. Но, на серой картинке проще подбирать приведенные выше параметры.

  • Можете настроить обрезку на фрейме 'CROP'. Т.к. визуальных средств прицеливания нет, с первого раза попасть может не получиться
  • Можете сохранить настройки на будущее, нажав 'Save settings' (так или иначе вьювер помнит последние)
  • Нажмите 'OK', тем самым закрыв окно расширенных настроек
  • Для начала обработки нажмите 'Start Batch'

После обработки обязательно гляньте, что вышло. Если результат недостаточно контрастен, или наоборот, слишком насурмлен - поиграйтесь с настройками.

Примечание. То что мы получили на этом шаге — набор картинок в формате tif или bmp — промежуточный результат для дальнейшего сжатия в djvu. После конвертации, убедившись что конечный результат вас устраивает, их можно смело удалить.

Linux

Увы, пока не исследовано.

Сжатие

Windows

Средства: DjVu Solo 3.1, DjVu Editor (Pro) 4.1 (предпочтительней, работает с новым форматом)

  • Запустите DjVu Solo 3.1 или DjVu Editor (Pro) 4.1 (обе утилиты имеют одинаковый интерфейс)
  • File -> Open (Файл -> Открыть...), выберите тип файла (тот, в который сохраняли во вьювере) и откройте ОДНУ первую обработанную страницу конспекта
  • Щелкните по thumbnail'у этой страницы правой кнопкой и выберите 'Insert Page(s) After' ('Вставка страницы после...')
  • Опять в диалоге выберите тип файла (иначе ничего не увидите), и откройте оставшиеся листы
  • Из-за бага проводника Windows, последний файл окажется вторым. Перетащите его куда положено
  • File -> Encode As DjVu (Файл -> Кодировать в DjVu), выберите 'Bundled' ('Одним файлом') и нажмите 'OK'
  • Сохраните файл
  • Укажите Resolution = 300 (Разрешение), Scanned (Сканированный)
  • Нажмите 'OK' и дождитесь окончания кодирования

Просмотрите результат. Если он вас не устроит, придется повторить обработку в IrfanView с другими параметрами.

Linux

Увы, пока не исследовано.

Просмотр и печать

Linux:

Windows/Linux:

Windows:

КПК (Windows Mobile, только просмотр):


Перед печатью следует включить только передний план. Если в таком режиме конспект читабелен, видны рисунки (то есть при кодировании они не были отнесены к фону) — можно подавать на печать. Иначе, лучше произвести печать вместе с фоном.

Пример

Исходник
Результат сжатия

Исходник (2.27 MiB | 2324 KiB)

Обработанный исходник (5.11 МiB)

Результат (DjVu) (0.05 MiB | 51.6 KiB)

Коэффициент сжатия: 2324 KiB / 51.6 KiB = 45

Ссылки