Вернуться к разделу "СканКромсатор v5.6A. Пособие по программе".


Ужирнение трудночитаемого текста в СканКромсаторе

Рассматривается только случай чёрно-белых сканов (не серых)!!!

В своей статье о СканКромсаторе vadimir предложил приём улучшающей обработки сканов - повышающий ресемплинг с одновременным применением 2 фильтров - Blur и Sharpen (в СканКромсаторе). О том, что такое ресемплинг, можно прочитать в моей статье Что такое DPI и ресемплинг.

Я провёл ряд натурных экспериментов с целью изучения особенностей и возможностей этой операции. Правда, из статьи vadimir неясно, какие сканы подвергались повышающему ресемплингу - серые или чёрно-белые, я использовал только чёрно-белые.

По результатам экспериментов выяснилось, что все 3 фильтра на вкладке Quality в Кромсаторе - Smooth, Blur, Sharpen - практически полностью эквивалентны друг другу (по производимому эффекту). По крайней мере, в отношении чёрно-белых сканов. Сравнение производилось по готовым DjVu-файлам, созданным из тестовых сканов, путём быстрого попеременного переключения DjVu-файлов. При таком способе сравнения достигается "мультипликационный эффект": глаз замечает мельчайшую разницу в деталях 2 вариантов одной и той же страницы.

Разница по фильтрам была обнаружена лишь в отдельных крайне редких буквах, которые просто чуть-чуть меняют свою форму. Поэтому применять именно связку "Blur + Sharpen" практически не имеет смысла, это просто увеличивает в 1,5 раза (замерянное) время обработки сканов. Вполне достаточно использовать один из этих 3 фильтров (любой), например, Smooth.

Все эти фильтры ужирняют буквы. При этом значительно улучшается вид бледного и плохо пропечатанного текста (со слабыми перемычками букв), а также скругляются зазубренные и ступенчатые буквы.

На вкладке Quality любому из этих 3 фильтров можно назначить желаемое количество проходов обработки (каждого скана) - от 1 до 5. Были испробованы все 5 вариантов, и выяснилось следующее:

Количество проходов:

1 - 4:  Качество текста неизменно, только размер tif-файла чуть растёт от 1 к 4.

5:  Качество текста получается хуже.

Делаем вывод, что оптимально использовать количество проходов = 1 (для наилучшего быстродействия).

На вкладке Options есть поле Resample filter. Здесь можно выбрать, по какому алгоритму будет осуществляться повышающий ресемплинг в нашей обработке сканов. Были испробованы все варианты значений фильтров, и оказалось, что:

Интерполяционные фильтры:

Самый плохой (по качеству) - Linear

Получше - Lanczos3

Самый лучший:

Fast linear, Bilinear, Bicubic - все 3 абсолютно эквивалентны. Замеренная скорость обработки - одинаковая, секунда в секунду.


Вывод:

Ужирнение букв удобнее всего делать так:

DPI = 600

Smooth = 1

Resample filter = Bicubic


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


Алгоритм ужирнения текста

1. Запускаем СканКромсатор v5.6A. Загружаем обрабатываемые tif-файлы. Выбираем в меню Edit -> Clear all options.

2. На вкладке Files ставим галку Default в поле Output dir. В поле DPI ставим значение 600 dpi.

3. На вкладке Options в поле Resample filter выбираем значение Bicubic.

4. На вкладке Quality - самое интересное. Здесь делаем в точности следующее:

a. Ставим галку Enhance image.

b. Кликаем в списке на последний файл, нажимаем кнопку Apply up to current. При этом на всех файлах в списке проставятся жирные зелёные галочки.

c. Нажимаем на клавиатуре Ctrl и ставим галку Smooth. В появившемся диалоге соглашаемся применить опцию ко всем файлам.

5. Нажимаем кнопку Process. В появившемся диалоге соглашаемся с изменением DPI выходных файлов. Начинается процесс обработки.

6. По окончании процесса обработки забираем обработанные tif-файлы из выбранной ранее Output dir. В процессе обработки может вылететь ошибка: что-то вроде "Неправильно установленный параметр". Это значит, что вы выполнили п.4 алгоритма не в абсолютной точности. Это, скорее всего, один из глюков Кромсатора.


Примеры ужирнения текста

В левой части примеров показан скан до обработки, в правой части - после. Примеры сделаны на базе скриншотов готовых DjVu-файлов, открытых в WinDjView. Во всех примерах переделывается некая низкокачественная чужая DjVu-книга, так что исходные сканы отсутствуют. Во всех случаях применение ужирнения текста вызвало рост размера результирующего DjVu-файла в 1,5-2 раза по сравнению с контрольным DjVu-файлом. Однако, на мой взгляд, повышение читабельности DjVu-файла оправдывает рост его размера (по крайней мере, при переделке чужих "плохих" книг).

Пример № 1.

Текст крупнозернистый, "ломанный". Читабельность хоть и удовлетворительная, но читать такую книгу тяжело и неприятно - быстро устают глаза.

Текст стал гораздо более гладким, буквы - скруглёнными. Глаза теперь испытывают гораздо меньшее напряжение. Правда, и яркость букв сильно возросла, но это можно подкорректировать увеличением гаммы в WinDjView с 1,0 до 2,0 (Меню: Файл -> Настройки -> Отображение).

 

Пример № 2.

Здесь мы видим, что исходная книга практически совершенно не читабельна (много разрывов в буквах) и её хоть выбрасывай в помойку. Единственный выход - применить описываемую процедуру ужирнения текста.

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

 

Пример № 3.

Пример аналогичный первому. Тоже удовлетворительная читабельность. Но текст всё же "ломанный", но на этот раз - мелкозернистый, контуры букв покрыты микрозубчиками. Читать такую книгу лишний раз не захочется.

Здесь эффект получился почти такой же, что и в первом примере, и даже лучше - буквы стали не такими яркими. При желании можно, аналогично предыдущему примеру, увеличить гамму в WinDjView с 1,0 до 1,5 (до 2,0 будет многовато).

 

Пример № 4.

В этом примере мы видим, что буквы сильно истончённые, изъеденные, сильно-разрывные. Хотя, как ни странно, читабельность всё же удовлетворительная - за счёт того, что не потеряны перемычки букв (за счёт правильного выбора порога при конвертации grey->bw в Кромсаторе). Естественно, что читать такую книгу - это просто портить свои глаза.

Результат получился очень хорошим, аналогичный предыдущему примеру. Читабельность очень хорошая и на текст приятно посмотреть. Правда, немного ярковато, так что не помешает поднять гамму в WinDjView с 1,0 до 1,5.

 

Пример № 5.

В этом (последнем) примере показан случай, когда ужирнение текста можно и не делать - читабельность и так довольно неплохая. Единственное, что тут контуры букв не "мягкие", а резкие, это немного колет глаз. Хотя это не так уж и существенно.

Текст заметно стал ярче, так что повышение гаммы в WinDjView с 1,0 до 1,5 просто показано. Что изменилось? Главным образом то, что читать такой текст стало гораздо приятнее, т.к. контуры букв стали более мягкими, т.е. как бы "плавно переходящие на нет".

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


Автор: monday2000.

23 июня 2006 г.

E-Mail  (monday2000 [at] yandex.ru)

Hosted by uCoz