LINUX.ORG.RU
ФорумTalks

[djvu][плач ярославны] Свободные форматы, да... Дайте нам спеки — мы все напишем, да...

 


0

1

Вот тут некоторые люди говорят, что, мол, обпеньсорс-сообщество может все, если бы не злобные копирасты/секреты/патенты, если бы не монополия Винды, то у нас бы уже все было замечательно и все бы на Линуксе сидели.

Вот взялся я, сидя под Линуксом, изготавливать электронную книгу в открытом и свободном формате DjVu. Решил сделать хорошо, качественно: чтобы читалось хорошо, а объем оставался маленький, чтобы с оглавлением, с метаданными и с OCR-слоем, все как положено...
Что же я обнаруживаю?

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

Посмотрим на все этапы.


Сканирование и подготовка изображений
Ну, хорошо, отсканировать везде можно. А вот с предварительной подготовкой изображений несколько хуже. Нет никакого ПО, которое помогло бы мне обработать документ с учетом особенностей алгоритма сжатия. Пришлось пользоваться старым добрым Imagemagick'ом и здравым смыслом.

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

Самое плохое — это результат. О нем в следующем параграфе.

Сжатие в DjVu
Ну хорошо, приходим к сжатию. Сжимаем при помощи DjVuLibre. О да, авторы написали, что оно работает «хуже проприетарных аналогов». Но кто ж знал, что «хуже» — это примерно в три раза хуже, чем у Lizardtech или Caminova?!

Возможно, я накосячил при подготовке изображений. Но откуда же я знаю, как было надо, а?

Да и потом, такую простую оптимизацию, как вынос общих для страниц элементов в разделяемые словари при сжатии JB2, а не копирование их в каждую страницу, DjVuLibre делать не умеет. Не говоря уже о том, чтобы сжимать не по одной странице, а потом тупо соединять, а просканировать сразу все и найти наиболее оптимальный набор общих элементов.

Ну вот что за фигня такая, а? Библиотека открытых аналогов не имеет. Находится в разработке уже 10 лет, с 2001 года, а основана она на опубликованных исходниках AT&T и Lizardtech, так что первая версия даже называлась то ли 2.0, то ли еще выше номером была. И за все это время она все еще «хуже проприетарных аналогов». Ну почему она хуже? Умных людей, что ли, нету, чтобы сделать ее не хуже? Ну я понимаю, если программа, обрабатывающая проприетарные форматы была бы хуже, у нее объективные причины. Я понимаю, если бы у проприетарного аналога была огромная фора по времени, но тут если она и есть, то ведь не больше трех лет. А сжатие все еще хуже в 3-4 раза. Это как можно в музее злопыхателей опенсорса поставить: «Мы открытые, поэтому мы дерьмо».

OCR-слой
Вот тут я узнал, что такое ад.

Мне хотелось сделать, вычитать и выровнять вручную OCR-слой. Единственная программа под Линуксом, которая позволила мне это сделать — кривой и косой djvusmooth. А самое интересное, что такой функции не было даже в проприетарном редакторе от Caminova. Только в djvusmooth. Который был с сюрпризом. Сюрприз был в том, что он не умеет добавлять и удалять элементы, только модифицировать.

Мне пришлось делать самописные скрипты, которые выделяют текст при помощи djvused, перегоняют его в удобочитаемый формат, позволяют отредактировать, потом накладывают на документ обратно. А потом подравнивать с помощью djvusmooth. Который зависает, если слишком быстро передвигаться по элементам (например, курсором).

Я вот сейчас этим занимаюсь, сижу и пла́чу.

Не говоря уже о том, что нормального OCR'а под Линукс тоже нет.


Возможно, стоило сначала перегнать в PDF, а потом через pdf2djvu. Но это бы не решило многих проблем. Пусть уж остается, как есть.


А люди говорят: «Выдайте нам спеки видеокарты, мы сами все 3D напишем!». Ага, щас. Напишут.


Может быть, у меня кривые руки. Не исключаю. Но что ж, мне для таких простых операций нужно изучить структуру формата, ознакомиться с алгоритмами сжатия и еще прочитать код djvulibre? Доколе еще, Катилина, мы будем вот так все делать?


А Okular имеет критические баги в обработке текстового слоя DjVu, которые висят открытые в багтрекере еще с 2010-го года.

Ну вот почему у нас все так плохо?

★★★★★

Последнее исправление: proud_anon (всего исправлений: 2)

Пиши багрепорты, а не ной.

Quasar ★★★★★
()
Ответ на: комментарий от Quasar

Почитал про формат подробнее. Таки умеет.

Quasar ★★★★★
()
Ответ на: комментарий от drull

drull> Насколько я помню fb2 прекрасно поддерживает изображения. Единственная проблема - обтекание текстом картинки ЕМНИП не работает.

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

Quasar ★★★★★
()
Ответ на: комментарий от Siado

Siado> Можно далеко не ходить и вспомнить SIP. Вроде все открыто и хорошо, а до сих пор нет ни одного клиента(использующего Pulse Audio), через который можно нормально поболтать через инет.

PulseAudio не нужен. А Ekiga и Linphone3 отлично справляются с задачей.

Quasar ★★★★★
()
Ответ на: комментарий от Nebuchadnezzar

Прикинь, но в конце 90% тобой перечисленного - это не сарказм, а правда. Так что мимо.

Quasar ★★★★★
()
Ответ на: комментарий от ooobooontooo

ooobooontooo> Баттхерт детектед.

Возвращайся на двач, быдло.

Quasar ★★★★★
()
Ответ на: комментарий от Igron

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

Я же меркантильный эгоист. Пока УМВР, я смеюсь над высокими материями, и чихать хотел на отдельные проблемы каких-то мифических сообществ.

Может показаться, что это не дальновидно? Отнюдь, на протяжении декады пользователей не особо и прибавилось, но кто скажет что поддержка железа в стагнации? Всегда, уверен, всегда найдутся гики, которые напишут драйвер для популярного оборудования. Переживать за ядро? Увольте, его как раз разрабатывают за бумажки. А с софтом проблемы только у фанатиков, которым, отчего-то раз в год просто необходим специфичный функционал, и именно под линуксом. Смешно же.

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

У пользователей программ, написанных на инициативе, только два варианта — подстроиться под вкусы и хотелки авторов или делать самому. Кто не понимает этого — ССЗБ и ныть тут последнее дело.

baverman ★★★
()
Ответ на: комментарий от ooobooontooo

ooobooontooo> на днях непогрешимая ext4 рухнула после потери питания и утащила внезапно файлы в /dev/null

ССЗБ
ext4 - до сих пор ещё нестабильная ФС. И да - бэкапы рулят. Ежели будет сбой аппаратного обеспечения (а может он и был?) - будешь так же на линукс и всё СПО валить проблемы железа?

Quasar ★★★★★
()
Ответ на: комментарий от Quasar

> Шатл-В-Рот спасать и не будет. Его задача - закопать линукс.

Пока что он его де-факто спас от смерти.

Igron ★★★★★
()
Ответ на: комментарий от baverman

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

В том-то и дело, что это сраный десктоп мизантропа, на котором только почту проверить и жж почитать. Даже в игры не поиграть и товар в магазине не оплатить. А когда нужно выполнять какие-нибудь реальные задачи, на помощь бежит виндовс с ее платным-софтом-на-все-случаи-жизни.

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


С софтом проблемы именно у тех, кто хоть что-то создает (видео, музыку, графику, документацию, товар). У тех, кто долбится по irc проблем, естественно, никаких. Ибо задач вообще не ставится, кроме «убить время». А это и без шайтан-машины сделать можно.

У пользователей программ, написанных на инициативе, только два варианта — подстроиться под вкусы и хотелки авторов или делать самому. Кто не понимает этого — ССЗБ и ныть тут последнее дело.


Капитан в треде.
Что мне делать после гнома? Пока вижу только xfce, благо пятую версию они не пилят.
Что мне делать после третьего фаерфокса? Кусать локти.
И так во всем. Платный софт не будет выгонять своих пользователей, ибо ему нужны деньги. А свободным товарищам похер: был один процент, стало полпроцента. И срать.

Igron ★★★★★
()
Ответ на: комментарий от Igron

Что мне делать…?

Снимать штаны и бегать, очевидно же. Чего ты пытаешься добиться такими вопросами? Ими никого не проймешь. Ответ прекрасно знаешь сам: не устраивает — плати. Взывать к «сообществу» — бесполезно, весь такой софт разрабатывается для себя любимых.

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

baverman ★★★
()
Ответ на: комментарий от baverman

> Это лично твои проблемы, и больше ничьи. Трагедии в этом никакой нет.

Я-то со своими проблемами сам как-нибудь разберусь.

А что будешь делать ты, когда очередная купленная тобой железка не заведется «патамушто один процент»? Платить временем и рублем.
Что будешь делать ты, когда на арч забьют, потому что «авторы устали и хотят денег»? Платить.
Что будешь делать ты, когда разработчики awesome выпустят новомодный awesome-ng, которым можно будет управлять только вставив специальную тач-панель в анальное отверстие? Платить, без изменений.

Так что твое это «я д'Артаньян, а вы все пидарасы» рано или поздно закончится. И тогда ты тоже задашься вопросом: «а нахера мне все это?» Один процент — не проблема линукса, это самая его суть.

Igron ★★★★★
()

Ну хорошо, я, может, и воспользуюсь, но нельзя же ждать от любого, кто хочет отсканить книгу, что он будет рабираться с Imagemagick?

Такой человек будет гимпом страничка за страничкой «подготавливать». Хотя, кстати, при помощи той же лептоники можно предраспознавательную подготовку хорошо сделать (да и для самого распознавания там наметки есть - не зря же ее в OCR используют).

О да, авторы написали, что оно работает «хуже проприетарных аналогов». Но кто ж знал, что «хуже» — это примерно в три раза хуже, чем у Lizardtech или Caminova?!

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

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

Поделитесь с сообществом, не будьте жмотом! =)

Ну вот почему у нас все так плохо?

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

Eddy_Em ☆☆☆☆☆
()

всегда предпочитаю бумажные книги и PDF, а не DjVu, читать отсканированные книги - редкое «удовольствие»

aho
()
Ответ на: комментарий от baverman

Конкретно этот формат практически никому не нужен. Он ничего не умеет, кроме как причинять боль глазам.

Ну тебе не нужен - радуйся. Но почти все выкладываемые математические книжки в djvu, поэтому приходится пользоваться.

Vovka-Korovka ★★★★★
()
Ответ на: комментарий от Vovka-Korovka

математические

О том и речь. Товарищ, будь внимательнее!

baverman ★★★
()
Ответ на: комментарий от Igron

А что будешь делать ты…?

Доброхот как есть, ну натурально.

За меня тоже не волнуйся. Чего я делать точно НЕ буду, так это плакаться на ЛОРе.

baverman ★★★
()
Ответ на: комментарий от Deleted

>12309 - он как Бог - его никто не видел, но он есть :)

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

Nebuchadnezzar ★★★★
()
Ответ на: комментарий от metar

>Кроме как на свалках пиратских книг в рунете нигде больше не видел djvu. Может он просто никому не нужен?

У DjVu специфическое назначение. Он не нужен для «просто книг». Он нужен для книг, где важно сохранить исходное отображение. Для этого и разрабатывался. Поэтому и достаточно малопопулярен.

Вот, типичное «расово верное» применение DjVu:
http://airbase.ru/computers/pmk/progs/PMK.djvu
http://airbase.ru/computers/pmk/kon-tiki/kon-tiki.djvu
http://files.balancer.ru/aviation/books/Su-27SK_RLE_1.djvu

KRoN73 ★★★★★
()
Ответ на: комментарий от stevejobs

>Это лучший формат для высококачественных сканов с OCR-слоем.

Блин, сколько видел дежавюшек — все без исключения безобразно пережатые кривульки, читать невоозможно. Покажите мне хоть одну высококачественную для примера. Хочется посмотреть, как оно на самом деле. Может правда, не формат кривой, а оцифровщики косоруки?

massimus ★★★
()

типичный такой опенсурс.

zgen ★★★★★
()
Ответ на: комментарий от massimus

Покажите мне хоть одну высококачественную для примера

KRoN73 чуть выше дал ссылки. Первый раз увидел годные djvu.

baverman ★★★
()

Опенсорс сообщество само по себе не очень, а если прибавить невменяемость большинства пользователей, становится совсем грустно.

Идея хорошая — реализация на двоечку.

OperaSoftvvare ★★
()
Ответ на: комментарий от metar

Не все читают Донцову и прочих. Некоторым нужны справочники и специализированная литература, аналогов которой нет в продаже. Но упоротые идиоты такие упоротые: не нужно мне — не нужно никому.

ramon13666 ★★★
()
Ответ на: комментарий от baverman

Да, я просто когда писал, до второй страницы обсуждения не дошёл. Написал — а они прямо надо мной :)

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

massimus ★★★
()
Ответ на: комментарий от massimus

>только если стоит задача посмотреть, как именно выглядел конкретный бумажный экземпляр.

И то просто картинки без адского дежавюшного пережатия справляются с этой задачей лучше.

massimus ★★★
()

unpaper для подготовки и все в порядке...

а остальное --- да, скрипты... а чего в этом плохого? только то, что маленькую и редкую работу не будешь напрягаться и вспоминать как и что делал?

выкладывайте свой скрипт что бы не потерялся и потом смотрите уже может чем то помочь сообщество или нет. а так навряд ли сообщество в курсе Ваших индивидуальных проблем «где там под одеялом» :)

----

1 что касается стонов «сделайте мне в линуксе приятно» --- каждый делает приятно себе сам, никто ничего не обязан делать стонущему (тем более жирному такому, с претензиями).

2 никто старые версии софта не отбирает (что касается de так до сих пор опенвиндовс собирается).

3 непонятны стоны жирных тролей «как нам заработать на свободном софте» в разрезе «с нас хотят денех за то что нам приятно»? или крестик или трусы господа!

ну и последнее, никто захватывать мир не собирается из gplщиков (это всего навсего следствие гнилости модели проприетарного софта основанной на идее бессрочной ренты). чего все проприетарщики так возбудились и стонут не понятно?

psv1967 ★★★★★
()

for fun вещи пишутся теми, кому это интересно. Открытые спеки могут ускорить процесс написания, но не более. Будет интересно - раскопают и проприетарные форматы, и неописанные протоколы. Не будет интересно - не напишут.

Открытые форматы важнее тем, кто пишет за деньги.

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

Сам же говоришь, скриптов написал, и вроде и жить можно.

Legioner ★★★★★
()
Ответ на: комментарий от baverman

>Там обычный вырвиглаз.

У меня есть серьёзные подозрения, что поклонники djvu используют аппаратное сглаживание близоруких глаз.
Надо бы провести опрос:
а) читаете ли вы книги в djvu?
б) хорошее ли у вас зрение?

massimus ★★★
()

Scan Tailor (tailor по английски - портной) - это интерактивный инструмент для пост-обработки сканированных страниц. Он делает такие операции как разрезание страниц, компенсация наклона, добавление/удаление полей, и другие. Вы даете ему необработанные сканы, а в результате получаете страницы, готовые для печати или сборки в PDF или DJVU файл. Сканирование, оптическое распознавание символов, а также сборка многостраничных документов не входят в задачи проекта.

http://scantailor.sourceforge.net/?q=ru/about

Ocr-слой не особо нужен. «Стандартный» кодировщик жмет хуже, но есть еще didjvu и сервис any2djvu

сматри также http://mydebianblog.blogspot.com/2008/05/djvu.html

DNA_Seq ★★☆☆☆
()

>а потом через pdf2djvu

кстати, текстовый слой он сохраняет, так что если есть pdf-ки созданные через файнриадер то одним движением их можно перегнать в djvu в 2 раза сэкономив на размере. Конечно, не идеал но книжка весом в 50 метров предпочтительнее чем в сотню

DNA_Seq ★★☆☆☆
()
Ответ на: комментарий от Nebuchadnezzar

Ну, дык, пост не от балды был написан, а по мотивам личных хождений по стерне, а так же темам на ЛОРе. Как пример:
А давайте разберём:
> http://www.linux.org.ru/forum/talks/6486325
Назовите ФС которая никогда и ни при каких условиях не фейлит.
> http://www.linux.org.ru/forum/desktop/6314387
Qt-диалог видели?
> http://www.linux.org.ru/forum/talks/4124342
В Ubuntu исправлено.
> http://www.linux.org.ru/forum/talks/6123975
Про 865 написал парой строчек выше. 12309 активно фиксят, причём, как я могу судить, довольно успешно.

RussianNeuroMancer ★★★★★
()
Ответ на: комментарий от massimus

>У меня есть серьёзные подозрения, что поклонники djvu используют аппаратное сглаживание близоруких глаз.

У меня есть серьёзные подозрения, что ты не знаком ни с физиологией, ни с оптикой, ни, в частности, с близорукостью :) У близоруких разрешающая способность на близком расстоянии выше, чем у людей с плохим зрением. «Аппаратное сглаживание» работает на больших дистанциях. DjVu обычно читают, всё же, не в десятке метров, а на расстоянии чёткого видения. И близорукие увидят больше деталей. Примерно столько, сколько люди с нормальным зрением, вооружившись увеличительным стеклом :)

KRoN73 ★★★★★
()
Ответ на: комментарий от massimus

>все без исключения безобразно пережатые кривульки, читать невоозможно.

пережатия как такового алгоритм не дает. Скорее всего сканы просто черно-белые

Может правда, не формат кривой, а оцифровщики косоруки?


большинство книг того же колхоза сканились в середине 90х, какие тогда винты и интернеты были думаю напоминать не стоит

DNA_Seq ★★☆☆☆
()
Ответ на: комментарий от baverman

>Окромя последней. Там обычный вырвиглаз.

Первые две я сам лет 10 назад делал (виндовым софтом, кстати :)), третья — скачана откуда-то. Просто привёл пример, что DjVu востребован там, где есть надобность в сохранении оригинала печатного документа. Правда, где там вырвиглаз, окромя большого размера, непонятно.

KRoN73 ★★★★★
()
Ответ на: комментарий от proud_anon

>Может, и западные люди пиратские книги не в PDF, а в DjVu выкладывали бы

Западные люди предпочитают не сканить книгу а покупать pdf-ку и взламывать. Сканы у них тоже в djvu (хотя может это русская диаспора сканит?)

DNA_Seq ★★☆☆☆
()
Ответ на: комментарий от massimus

>Может правда, не формат кривой, а оцифровщики косоруки?

Дык, топикстарт прочти, оцени объём работы, который нужен для создания полноценного некривого DjVu. Обычно, действительно, DjVu делают тупо загнав картинки в файл. Ни навигации, ни, тем более, OCR-слоя. Да ещё и с параметрами сжатия не играют. А там, ведь, даже для каждого графического слоя свои параметры.

KRoN73 ★★★★★
()
Ответ на: комментарий от Legioner

Legioner> Сам же говоришь, скриптов написал, и вроде и жить можно.

В дебиане лежат уже готовые скрипты, ТС походу даже поискать не пытался

pct-scanner-scripts - scan and create merged DjVu and PDF documents for archivg

Description: scan and create merged DjVu and PDF documents for archiving
 This package contains a script and configuration system to easily
 scan documents and create digital archives. It can create DjVu
 PDF and JPEG outputs, in merged and individual files. It also has
 a configuration file system where different configurations can be
 defined, making it easy to switch between configurations.
 .
 Features:
  - auto archiving in merged and individual DjVu, PDF, and JPEG files
  - auto and manual resume when scanning somehow fails
  - cascading configuration system, for easy customizing
  - easy command-line-style bash program, with useful options
  - archiving made possible with both ADF and flatbed scanners
  - built for productivity and daily use
  - uses bash, scanadf and other mainstream processing tools
  - multilanguage commandline output

sdio ★★★★★
()
Ответ на: комментарий от proud_anon

>я попробовал несколько читалок FB2 под Линукс, и вот какое дело: ни одной приличной не нашел.

cool reader 3

DNA_Seq ★★☆☆☆
()
Ответ на: комментарий от stevejobs

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

я так пару книжек в качестве оплаты труда по сканированию получил. В общем договоренность такая была - сканю книжку, делаю djvu и книжка моя

DNA_Seq ★★☆☆☆
()
Ответ на: комментарий от KRoN73

Правда, где там вырвиглаз, окромя большого размера, непонятно.

Там разрешение маловато. На нетбуке, при зуме во всю ширину экрана — мыло. Не сравнить с твоими сканами.

baverman ★★★
()
Ответ на: комментарий от kernel

> А не читалкописалку djvu.

писалка отстает от официальной виндовой в частности из-за того что алгоритм претендует на звание «интеллектуального» - есть фоновый слой жмущийся с потерями и передний план lossless, линуксовый кодер много не думая сует все в передний план. Вот на задний и передний умеет разделять didjvu

DNA_Seq ★★☆☆☆
()
Ответ на: комментарий от Quasar

>ext4 - до сих пор ещё нестабильная ФС. И да - бэкапы рулят. Ежели будет сбой аппаратного обеспечения (а может он и был?) - будешь так же на линукс и всё СПО валить проблемы железа?

Как только говорят про достоинства линукса ext4 - наикрутейшая ФС, суперстабильная и вообще не то что эта вантузяцкая нтфс. Как только случается проблема - оно нестабильное и вообще ты сам дурак. Не смешно? Я лично сколько с линуксом работал, от фанатиков только в таком духе и слышал оправдания. Бекапы я делаю, благо мне макось это удобно предоставляет, в отличии от, и тем не менее я не хочу, чтобы чудофс сыпалась от жесткой перезагрузки - это уровень фат32.

ooobooontooo
()
Ответ на: комментарий от DNA_Seq

>Вот пример современного скана

Спасибо, посмотрел в Okular и Evince. Смотрю на монитор с полутора метров. Вижу драные края букв. При этом там есть OCR, то есть из этого можно сделать нормальный PDF c нормальными шрифтами. Преимуществ djvu я тут не вижу.

massimus ★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.