Сжатие конспектов — различия между версиями

Материал из Вики ИТ мехмата ЮФУ
Перейти к: навигация, поиск
(Ссылки)
(Windows)
 
(не показано 45 промежуточных версий 5 участников)
Строка 1: Строка 1:
 
== Введение ==
 
== Введение ==
  
Сатья посвящена эффективному сжатию цифровых копий конспектов, полученных с помощью фотокамеры (в первую очередь) или сканера.
+
Статья посвящена эффективному сжатию цифровых копий конспектов, полученных с помощью фотокамеры (в первую очередь) или сканера.
  
 
== Пара слов о получении фотографий ==
 
== Пара слов о получении фотографий ==
  
При съемке конспекта, нужно быть аккуратным: следить за фокусом и стараться, чтоб разворот в каждом кадре занимал одно и то же место. Последнее крайне важно при автоматизированной обрезке - соотношение сторон тетради и фотокадра разное, поэтому неизбежны поля, кторые следует обрезать в целях сокращения объема данных.
+
При съемке конспекта нужно быть аккуратным: следить за фокусом и стараться, чтобы разворот в каждом кадре занимал одно и то же место. Последнее крайне важно при автоматизированной обрезке соотношение сторон тетради и фотокадра разное, поэтому неизбежны поля, кторые следует обрезать в целях сокращения объема данных.
 
Так же важно установить максимально возможное качество для фото: разрешение и [http://ru.wikipedia.org/wiki/JPEG сжатие jpeg]. Это важное правило актуально не только в нашем случае: исходники всегда должны иметь хороший запас качества.
 
Так же важно установить максимально возможное качество для фото: разрешение и [http://ru.wikipedia.org/wiki/JPEG сжатие jpeg]. Это важное правило актуально не только в нашем случае: исходники всегда должны иметь хороший запас качества.
  
 
== Подготовка материалов к сжатию ==
 
== Подготовка материалов к сжатию ==
  
Итак, основная задача: подготовить фотографии конспекта к последующему сжатию в [http://ru.wikipedia.org/wiki/DjVu формат DjVu]. Подготовка заключается в преобразовании изображений таким бразом, чтобы djvu-кодировщик мог правильно выделить передний план (текст) и задний план (фон). Текст должен быть черным, контрастным. Фон - значительно бледнее. Такое преобразование позволит добиться впечатляющего сжатия без потери читабельности, а в некоторых случаях даже облагородит материал (например, возможна дальнейшая распечатка без фона "в клеточку").
+
Итак, основная задача: подготовить фотографии конспекта к последующему сжатию в [http://ru.wikipedia.org/wiki/DjVu формат DjVu]. Подготовка заключается в преобразовании изображений таким бразом, чтобы djvu-кодировщик мог правильно выделить передний план (текст) и задний план (фон). Текст должен быть черным, контрастным. Фон — значительно бледнее. Такое преобразование позволит добиться [[Сжатие_конспектов#.D0.9F.D1.80.D0.B8.D0.BC.D0.B5.D1.80|впечатляющего сжатия]] без потери читабельности, а в некоторых случаях даже облагородит материал (например, возможна дальнейшая распечатка без фона «в клеточку»).
  
 
=== Windows ===
 
=== Windows ===
Строка 19: Строка 19:
  
 
Какие это параметры:
 
Какие это параметры:
* цветность - необходимо преобразование в оттенки серого (grayscale)
+
* '''цветность''' - если цвет не нужен, возможно преобразование в оттенки серого (grayscale)
* яркость (brightness)
+
* '''яркость''' (brightness, изменяется в диапазоне [-255..255] каждый раз относительно текущего значения 0)  
* контрастность (contrast)
+
* '''контрастность''' (contrast, изменяется аналогично яркости, но в диапазоне [-127..127])
* гамма (gamma)
+
* [http://ru.wikipedia.org/wiki/Гамма-коррекция '''гамма-коррекция'''] (gamma correction, [0.01..6.99])
* четкость (sharpness)
+
* '''четкость''' (sharpness, [1..99])
  
 
Так же утилита позволяет настроить параметры обрезки (cropping).
 
Так же утилита позволяет настроить параметры обрезки (cropping).
Строка 34: Строка 34:
 
* Выберите выходной каталог (Output directory)
 
* Выберите выходной каталог (Output directory)
 
* Поставьте галочку 'Use advanced options' и нажмите кнопку 'Advanced', чтобы добраться до самого главного - настройки параметров изображения
 
* Поставьте галочку 'Use advanced options' и нажмите кнопку 'Advanced', чтобы добраться до самого главного - настройки параметров изображения
* Установите следующие параметры (вообще говоря, подбираются экспериментально):
+
* Установите следующие параметры:
 
   Sharpness = 50
 
   Sharpness = 50
 
   Brightness = 100
 
   Brightness = 100
 
   Contrast = 75
 
   Contrast = 75
 
   Gamma correction = 0.3
 
   Gamma correction = 0.3
 +
'''Примечание.''' Указанные выше значения приведены в качестве примера. Вообще говоря, они подбираются экспериментально. Потренироваться можно на одном из разворотов, вызвав из меню Image -> Color corrections... .
  
* Установите галочки 'Convert to grayscale' и  'Overwrite existing files'
+
* Установите галочки 'Convert to grayscale' для конвертации в оттенки серого.
 +
'''Примечание.''' Опцию нужно выбрать, если не имеет смысла сохранять цвет. При конвертации в djvu наличие цвета незначительно влияет на размер. Но, на серой картинке проще подбирать приведенные выше параметры.
  
* Можете настроить обрезку на фрейме 'CROP'. Т.к. визуальных средств прицеливания нет, с первого раза попасть может не получится
+
* Можете настроить обрезку на фрейме 'CROP'. Т.к. визуальных средств прицеливания нет, с первого раза попасть может не получиться
  
 
* Можете сохранить настройки на будущее, нажав 'Save settings' (так или иначе вьювер помнит последние)
 
* Можете сохранить настройки на будущее, нажав 'Save settings' (так или иначе вьювер помнит последние)
Строка 50: Строка 52:
 
После обработки обязательно гляньте, что вышло. Если результат недостаточно контрастен, или наоборот, слишком насурмлен - поиграйтесь с настройками.
 
После обработки обязательно гляньте, что вышло. Если результат недостаточно контрастен, или наоборот, слишком насурмлен - поиграйтесь с настройками.
  
=== Unix ===
+
'''Примечание.''' То что мы получили на этом шаге — набор картинок в формате tif или bmp — промежуточный результат для дальнейшего сжатия в djvu. После конвертации, убедившись что конечный результат вас устраивает, их можно смело удалить.
 +
 
 +
=== Linux ===
 
Увы, пока не исследовано.
 
Увы, пока не исследовано.
  
Строка 56: Строка 60:
  
 
=== Windows ===
 
=== Windows ===
Средства: [http://sun.mmcs.rsu.ru/~alexey/misc/DjVuSolo3.1-noncom.exe DjVu Solo 3.1]
+
Средства: [http://sun.mmcs.rsu.ru/~alexey/misc/djvu_soft/DjVuSolo3.1-noncom.exe DjVu Solo 3.1], [http://sun.mmcs.rsu.ru/~alexey/misc/djvu_soft/DjVuEditor_Pro.zip DjVu Editor (Pro) 4.1] ('''предпочтительней''', работает с новым форматом)
  
Это последняя версия программы, она более не развивается. Несмотря на то, что она использует старый формат, Solo 3.1 нам подойдет - это самый простой вариант под Windows.
+
* Запустите [http://sun.mmcs.rsu.ru/~alexey/misc/djvu_soft/DjVuSolo3.1-noncom.exe DjVu Solo 3.1] или [http://sun.mmcs.rsu.ru/~alexey/misc/djvu_soft/DjVuEditor_Pro.zip DjVu Editor (Pro) 4.1] (обе утилиты имеют одинаковый интерфейс)
 
+
* File -> Open (Файл -> Открыть...), выберите тип файла (тот, в который сохраняли во вьювере) и откройте ОДНУ первую обработанную страницу конспекта
* Запустите утилиту
+
* Щелкните по thumbnail'у этой страницы правой кнопкой и выберите 'Insert Page(s) After' ('Вставка страницы после...')
* File -> Open, выберите тип файла (тот, в который сохраняли во вьювере) и откройте ОДНУ первую обработанную страницу конспекта
 
* Щелкните по thumbnail'у этой страницы правой кнопкой и выберите 'Insert Page(s) After'
 
 
* Опять в диалоге выберите тип файла (иначе ничего не увидите), и откройте оставшиеся листы
 
* Опять в диалоге выберите тип файла (иначе ничего не увидите), и откройте оставшиеся листы
 
* Из-за бага проводника Windows, последний файл окажется вторым. Перетащите его куда положено
 
* Из-за бага проводника Windows, последний файл окажется вторым. Перетащите его куда положено
* File -> Encode As DjVu, выберите 'Bundled' и нажмите 'OK'
+
* File -> Encode As DjVu (Файл -> Кодировать в DjVu), выберите 'Bundled' ('Одним файлом') и нажмите 'OK'
 
* Сохраните файл  
 
* Сохраните файл  
* Укажите Resolution = 300, Scanned
+
* Укажите Resolution = 300 (Разрешение), Scanned (Сканированный)
* Нажмите 'OK' и дождитесь перекодирования
+
* Нажмите 'OK' и дождитесь окончания кодирования
  
Просмотрите результат. Если он вас не устроит, придется повторить [http://it.mmcs.rsu.ru/wiki/index.php/Сжатие_конспектов#.D0.9F.D0.BE.D0.B4.D0.B3.D0.BE.D1.82.D0.BE.D0.B2.D0.BA.D0.B0_.D0.BC.D0.B0.D1.82.D0.B5.D1.80.D0.B8.D0.B0.D0.BB.D0.BE.D0.B2_.D0.BA_.D1.81.D0.B6.D0.B0.D1.82.D0.B8.D1.8E обработку в IrfanView] с другими параметрами.
+
Просмотрите результат. Если он вас не устроит, придется повторить [[Сжатие_конспектов#.D0.9F.D0.BE.D0.B4.D0.B3.D0.BE.D1.82.D0.BE.D0.B2.D0.BA.D0.B0_.D0.BC.D0.B0.D1.82.D0.B5.D1.80.D0.B8.D0.B0.D0.BB.D0.BE.D0.B2_.D0.BA_.D1.81.D0.B6.D0.B0.D1.82.D0.B8.D1.8E| обработку в IrfanView]] с другими параметрами.
  
=== Unix ===
+
=== Linux ===
 
Увы, пока не исследовано.
 
Увы, пока не исследовано.
 +
 +
== Просмотр и печать ==
 +
 +
Linux:
 +
 +
* [http://projects.gnome.org/evince/ Evince]
 +
 +
Windows/Linux:
 +
 +
* [http://djvu.sourceforge.net/djview4.html DjView (в составе DjVuLibre)], [[отдельно]]
 +
 +
Windows:
 +
 +
* [http://windjview.sourceforge.net/ru/index.html WinDjView]
 +
* [http://www.software.com/irfanview-plugin Плагин для IrfanView]
 +
* [http://sun.mmcs.rsu.ru/~alexey/misc/djvu_soft/djvureader.zip DjVu Reader] 1.8 MiB (развитие не поддерживается)
 +
* [http://sun.mmcs.rsu.ru/~alexey/misc/djvu_soft/DjVuBrowserPlugin50.exe Lizardtech DjVu Browser Plugin 5.0] 8.6 MiB (развитие не поддерживается)
 +
* [http://sun.mmcs.rsu.ru/~alexey/misc/djvu_soft/DjVuSolo3.1-noncom.exe DjVu Solo 3.1] 2.2 MiB (не рекомендуется к использованию, только на безрыбье)
 +
* [http://sun.mmcs.rsu.ru/~alexey/misc/djvu_soft/DjVuEditor_Pro.zip DjVu Editor (Pro) 4.1] 2.4 MiB
 +
 +
КПК (Windows Mobile, только просмотр):
 +
 +
*[http://igor.solovyov.googlepages.com/home2 PocketDjVu]
 +
 +
 +
Перед печатью следует включить только передний план. Если в таком режиме конспект читабелен, видны рисунки (то есть при кодировании они не были отнесены к фону) — можно подавать на печать. Иначе, лучше произвести печать вместе с фоном.
 +
 +
== Пример ==
 +
 +
[[Изображение:raw_example.jpg|128px|thumb|right|Исходник]]
 +
[[Изображение:Djvu example.jpeg|128px|thumb|right|Результат сжатия]]
 +
 +
[http://sun.mmcs.rsu.ru/~alexey/misc/djvu_process/raw_example.jpg Исходник] (2.27 MiB | 2324 KiB)
 +
 +
[http://sun.mmcs.rsu.ru/~alexey/misc/djvu_process/ready_example.tif Обработанный исходник] (5.11 МiB)
 +
 +
[http://sun.mmcs.rsu.ru/~alexey/misc/djvu_process/djvu_example.djvu Результат (DjVu)] (0.05 MiB | 51.6 KiB)
 +
 +
Коэффициент сжатия: 2324 KiB / 51.6 KiB = 45
  
 
== Ссылки ==
 
== Ссылки ==
 +
* [http://ru.wikipedia.org/wiki/DjVu О формате DjVu]
 
* [http://www.djvu-soft.narod.ru/ Хороший ресурс, посвященный конвертации в DjVu сканов книг]
 
* [http://www.djvu-soft.narod.ru/ Хороший ресурс, посвященный конвертации в DjVu сканов книг]
 
* [http://djvu.sourceforge.net/ Открытая реализация кодировщика DjVuLibre]
 
* [http://djvu.sourceforge.net/ Открытая реализация кодировщика DjVuLibre]
 
* [http://www.irfanview.net/ Домашняя страница IrfanView]
 
* [http://www.irfanview.net/ Домашняя страница IrfanView]
 +
 +
 +
*[[Конспекты|Конспекты на Вики ИТ мехмата ЮФУ]]

Текущая версия на 00:38, 13 января 2009

Введение

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

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

При съемке конспекта нужно быть аккуратным: следить за фокусом и стараться, чтобы разворот в каждом кадре занимал одно и то же место. Последнее крайне важно при автоматизированной обрезке — соотношение сторон тетради и фотокадра разное, поэтому неизбежны поля, кторые следует обрезать в целях сокращения объема данных. Так же важно установить максимально возможное качество для фото: разрешение и сжатие 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

Ссылки