Рома Болгарчук Дебютант

Код буквы и картинки. Как выглядит книга глазами ЭВМ?

Для большего понимания преимуществ использования электронных книг предлагаю, очень приблизительно, описать саму суть различий рисованного текста и распознанного. Как я это понимаю, но, так сказать, глазами ЭВМ.

Oleksiy Mark , Shutterstock.com

Распознанный или набранный на компьютере текст представляет собой векторный формат. Грубо говоря, это линии, как на графике, описанном какой-либо формулой. Но именно в данном случае, наверное, целесообразнее назвать его кодом, т.к. сами картинки линий в виде крохотных рисунков записаны отдельно и их роль не существенна, ведь при каждой новой букве, исходя из её кода, отображается один и тот же рисунок. Т. е., для того чтобы отобразить все буквы «а» в тексте, компьютер использует один маленький рисунок самой буквы «а». Один для всех букв (если её формат одинаков).

А сама буква записана в виде очень короткого кода в виде нуля и единиц. К примеру, буква «а» в таком коде будет представлять собой вот такую последовательность сигналов: «11010000» в кодировке ISO 8859−5. Единица, как известно, это присутствие сигнала, а «0» — его отсутствие. Получается, чтобы компьютер понял одну букву, ему достаточно 8 сигналов.

Теперь разберем растровые (точки) картинки. Тут уже, для того чтобы отобразить именно картинку той же буквы «а», понадобится целый массив точечек. Если изображение черно-белое — то расположенных в определенной очередности черных и белых точек, которые и будут «рисунком» буквы. Причем на каждую нарисованную точку потребуются те же 8 сигналов. Но уже не на всю букву, а только на одну точку. Естественно, одной черной точкой нарисовать букву «а» не получится. А какое минимальное количество точек нужно для прорисовки буквы, вообразите сами (100 битов вместо 8). Но то, что не одна и не две или три, это очевидно. Посему и картинки так много весят.

К тому же, в отличие от кода, в котором компьютер как бы знает, что это та или иная буква, в случае с картинкой ему абсолютно все равно, что нарисовано. Т. е. оперировать буквой как буквой он уже не может, а просто слепо копирует изображение, перенося каждую точку. Если в первом случае все буквы в тексте как бы одинаковы, то во втором приходится постоянно рисовать и каждую новую букву. Даже если она идентична предыдущей — «а», и рисовать всё вокруг букв. Получается, если в обычном тексте (набранном в ворде) встречается, к примеру, 2000 букв «а», то рисунок самой буквы используется только один (постоянно повторяется и не занимает место). Кстати, количество букв в таком тексте можно увидеть в статистике.

А вот если аналогичный текст — рисованный (не распознанный), то все 2000 букв «а» будут прорисовываться снова и снова и для каждой с них как бы будет 2000 картинок вместо 1. Они сами по себе занимают намного больше места, и кроме как отобразить их на экране, сходу с ними ничего не сделаешь (ни поиска по тексту, ни статистики, ни прослушки). Для ЭВМ это просто набор черных и белых точек, а не определенный код символов. Он может отобразить на экране любую картинку. Но картинка может быть слепо отраженными точками разного цвета либо конкретным знаком на экране, который отличается и понимается компьютером.

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

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

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

Теперь кратенько по форматам.

Формат — это, образно говоря, способ сохранения текста или картинки в виде какого-либо файла. Способов сохранить есть масса, посему форматов и программ, которые работают с данными файлами, также много.

Для сохранения в одном файле текста и картинки используют в основном два формата — djvu и pdf. Это самые распространенные.

Многим полюбился формат djvu. Но я его крайне не рекомендую использовать для сохранения книг. Да, конечно, заманчиво, что фото (каковым зачастую является djvu) имеет маленький размер. Многие попавшиеся мне в руки книги в данном формате — просто испорченное время и бессмысленно потраченный труд. Т.к., в основном, изображение в данном формате навсегда утрачивает свое качество и буквы иногда не видно, а иногда их невозможно распознать.

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

Тем не менее я пока не встречал программы для данного формата, которая могла бы с легкостью добавлять примечания, пометки и многое другое. Как, например, PDF-Viwer или Foxit Reader для аналогичного формата — pdf. Поэтому все же сохранять книги в формат djvu не рекомендую, т.к. возможности таких файлов на данный момент все еще на очень низком уровне и работать с ним сложнее. Хотя места книги в формате djvu занимают немножко меньше, чем в pdf.

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

Зачастую распознанные книги мне приходится сохранять даже в трех различных документах: 1 — pdf — Акробат ридер; 2 — docx — ворд; 3 — txt — обычный текстовый документ, открывается блокнотом. Третий формат занимает пустяковый размер и очень удобен для прослушивания книг на смартфоне. Хотя его недостатком является полное отсутствие картинок и какого-либо форматирования.

Надеюсь, моя статья пойдет на пользу обществу. И книг в плохом пережатом качестве с перекошенными, не распознанными страницами, засунутыми вместе с разворотом в djvu, будет встречаться все меньше. В Интернете есть масса статей, как правильно распознать и сохранить книгу файнридером или ClearScan в формат pdf (текст под изображением с добавлением гиперссылок в содержании) или в ворд. Поэтому на данных моментах останавливаться пока не буду. Хотя стоит отметить, что даже самая лучшая на сегодняшний день программа распознавания текстов не всегда справляется, к примеру, со сложными химическими формулами и громоздкими таблицами. Из-за чего и приходится сохранять поверх текстов изначально сканированные картинки. Тем не менее данная программа отлично распознает простые тексты, которые можно сохранить в ворд. Сэкономив в дальнейшем и время, и место на диске.

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

Обновлено 27.03.2014
Статья размещена на сайте 16.01.2014

Комментарии (3):

Чтобы оставить комментарий зарегистрируйтесь или войдите на сайт

Войти через социальные сети:

  • Рома Болгарчук Рома Болгарчук Дебютант 30 марта 2014 в 03:02 отредактирован 30 марта 2014 в 03:57

    Да. Спасибо за дополнение, про него в статье не упоминал, как и к примеру odt (OpenDocument Text) xhtml, html chm и др. . Это все довольно перспективные форматы. Но честно говоря тема подобных форматов и опенсорс в целом, выходит далеко за рамки данной статьи. Просто мне надо было, наверно, в статье оговориться, что речь пойдет о форматах более популярных в среде виндовс. Хотя опять же конечно сейчас все больше появляется программ работающих с разными форматами вне зависимости от системы. Тем не мне, мне почему то с ним приходилось сталкиваться реже. Но они так же довольно популярны особенно при работе с художественной и некоторой научно-популярной литературой. Так что конечно мое мнение возможно и субъективно. Может ситуация характерна только для меня и связана с рядом факторов. 1 - использование системы виндовс. 2 – получение файлов не через электронные библиотеки, а через соц. сети, торренты, файлообменники. 3- спицифика самой литературы (научная и малоизвестная). Может из-за данных факторов так сложилось что около 90 % книг, которые мне встречались (а проработал я не мало) были именно в формате djvu, pdf или в лучшем случае doc, а иногда, к сожалению и тхт. Тем не менее, изредка встречался и fb2. Но из за того что он редко встречается я с ним практический не знаю как работать. Хотя мне хватает просто перегнать его в тхт. И все же и данный формат достоин внимания т.к. он довольно шустро развивается на разных платформах и совершенно различных устройствах. Но я бы не стал переоценивать данный формат. По крайней мере пока. Т.к. опенсорс мне кажется все еще сыроват, и пусть меня закидают тухлыми яйцами линуксоиды, но все же… Хотя это опять же отдельная тема.

  • Комментарий скрыт
    • Рома Болгарчук Рома Болгарчук Дебютант 30 марта 2014 в 03:49 отредактирован 30 марта 2014 в 11:39

      Rambalac Rambalac, спасибо за поправку. В принципе да. По большому счету можно закодировать одну точку как сигнал. Т.е. к примеру, есть сигнал – белый, нет – черный. Вот этот черный и будет точка. Меня сбило с толку то, что на мониторе я могу поставить минимальную цветопередачу 16 цветов - 8 бит. Поэтому одна точка будет кодироваться 8 битами, а не одним. Тем не менее, если анализировать именно хранение информации, то совершенно верно. Можно и 1 битом закодировать одну черно-белую точку. Но все равно, с помощью 8 точек нарисовать полноценную букву и главное пространство вокруг неё довольно проблематично. Поэтому ошибка в данном случае мне кажется, не существенна.
      п.с. К тому же, конечно можно сохранить в ч.б. но это минимум. При сканировании и сохранении именно фотографий книги я рекомендую использовать «оттенки серого», как это не странно, но именно черно-белый рисунок текста распознать немного сложнее. Точнее будет больше ошибок в тексте. Но опять же это зависит от многих нюансов (разрешения фото, шрифта доп. графич. элементов на странице). А при сохранении текста в градации серого уже придётся задействовать полутона т.е. не только 0 и 1 – черный и белый, но и к примеру светло-серый, темно-серый поэтому здесь уже наверно будут использоваться как минимум те же 8 бит. Наверно надо было упомянуть это в статье, а то действительно некоторые в погоне за размером сканируют и сохраняют изображение в ч.б. вместо серого. Но в принципе это уже нюансы сканирования.