Не все mediawiki одинаково функциональны
Jul. 4th, 2017 03:44 pmЖалуюсь.
В рамках проекта
vitus_wagner по вычитке книги осознал, что для загрузки материала в mediawiki надо не совсем не то, что предоставляет finereader при "сохранении результата". Форматы есть всякие, но те, что дают разметку - это уже результат вёрстки с распознаванием. А для вычитки может понадобиться оригинал. Оригинал тоже предоставлен, но отдельно. И в исходном виде он имеет размер за три гига. Выгрузка в тексте - это результат распознавания без вёрстки. А для вычитки в медиавики нужен файл с исходными сканами, но подгруженным распознанным слоем, который движёк proofread подгрузит на страничку при первой вичитке страницы.
Значит что надо сделать?
Выгружаем из finereader-а в формате pdf. Это нам нужно для полного кайфа, так как там содержится не просто распознанный текст, но и разметка - где именно он на странице находится. Если честно, это нам нафиг потом не понадобится, но чисто для удовлетворения эстетического чувства, что всё сделано как положено, приятно.:)
С pdf работать не знаю как, но есть инструмент для работы с djvu. Там же есть конвертилка, запустив которую получаем djvu-формат.
Он нам нужен для извлечения текстового слоя в виде S-выражений:
Следующий шаг — из исходных сканов надо получить те-же djvu.
Но сканы в png и такой конвертилки напрямую не попалось под руку, но есть другие.
К тому же есть сканы в color RGB, а есть в grayscale и один даже оказался почему-то в grya+alpha. Но последнее, думаю, просто недоразумение.
RGB переводим в jpg (например, тулзой convert от ImageMagick) и теперь
gray переводим (тоже convert) в pgm, а его, например, так:
Параметры подглядел из своих старых записей и пока не внимательно не вникал зачем они и где сколько надо, на первое время они и не имеют решающего значния. В данном случае для серых сканов необходимо разрешение, достаточное для вычитки, а цветные так и вовсе не важны.
Проведя означенные операции со всеми сканами получаем постраничную djvu-кацию.
В них подгружаем текстовые слои, выуженные на предыдущем этапе из свёрстанного файнридером документа.
Далее собираем все страницы в мультибандл и "вуаля!" — можно загружать в mediawiki.
Я так и сделал. Файл, индекст, страница. Но в окне редактирования не обнаружил текста.
Расстроился. Что-то сделал не так? Но вроде эксперимент ставил, и подгруженный в документ текст извлекался.
Оказывается. У меня, вообще-то есть два mediawiki-сервера. И эксперимент я ставил на одном, а для вычитки загрузку собирался сделать на другом. И они разные. Там xenial, а там - precise. Но на последнем mediawiki как-то неудачно обновился, а на первом вслед за системой обновление прошло без особых проблем. В итоге на первом 1.29, а на втором - 1.25. Расширения ProofreadPage тоже разных версий. В пользу более старого, то что там специфичные элементы управления не сломались, а на новом их не видно.
Затаив дыхание заружаю файл туда где свежий софт — текстовый слой в наличии.
Значит, собрано всё верно.
А вот на обоих mediawiki кое-что сломалось. :)
В рамках проекта
Значит что надо сделать?
Выгружаем из finereader-а в формате pdf. Это нам нужно для полного кайфа, так как там содержится не просто распознанный текст, но и разметка - где именно он на странице находится. Если честно, это нам нафиг потом не понадобится, но чисто для удовлетворения эстетического чувства, что всё сделано как положено, приятно.:)
С pdf работать не знаю как, но есть инструмент для работы с djvu. Там же есть конвертилка, запустив которую получаем djvu-формат.
Он нам нужен для извлечения текстового слоя в виде S-выражений:
(page 0 0 2600 3544
(line 552 2783 2186 3126
(word 552 2783 2186 3126 "LAMER"))
(line 953 2607 1743 2656
(word 953 2607 1134 2656 "Ouvrage")
(word 1154 2607 1287 2656 "publi\303\251")
(word 1311 2618 1400 2644 "sous")
(word 1422 2618 1460 2656 "la")
(word 1483 2618 1671 2656 "direction")
(word 1695 2618 1743 2656 "de"))
(line 914 2527 1793 2576
(word 914 2538 961 2575 "V.")
(word 988 2527 1286 2576 "Romanovsky,")
(word 1315 2538 1461 2576 "Claude")
(word 1483 2531 1793 2576 "Francis-Boeuf,"))
(line 1138 2447 1534 2495
(word 1138 2447 1305 2495 "Jacques")
(word 1342 2458 1534 2495 "Bourcart"))
(line 1185 673 1492 708
(word 1185 673 1348 707 "PARIS,")
(word 1399 678 1492 708 "1953")))
Следующий шаг — из исходных сканов надо получить те-же djvu.
Но сканы в png и такой конвертилки напрямую не попалось под руку, но есть другие.
К тому же есть сканы в color RGB, а есть в grayscale и один даже оказался почему-то в grya+alpha. Но последнее, думаю, просто недоразумение.
RGB переводим в jpg (например, тулзой convert от ImageMagick) и теперь
c44 $src.jpg -slice 100 $dst.djvugray переводим (тоже convert) в pgm, а его, например, так:
c44 $src.pgm -dpi 300 -percent 4 $dst.djvuПараметры подглядел из своих старых записей и пока не внимательно не вникал зачем они и где сколько надо, на первое время они и не имеют решающего значния. В данном случае для серых сканов необходимо разрешение, достаточное для вычитки, а цветные так и вовсе не важны.
Проведя означенные операции со всеми сканами получаем постраничную djvu-кацию.
В них подгружаем текстовые слои, выуженные на предыдущем этапе из свёрстанного файнридером документа.
Далее собираем все страницы в мультибандл и "вуаля!" — можно загружать в mediawiki.
Я так и сделал. Файл, индекст, страница. Но в окне редактирования не обнаружил текста.
Расстроился. Что-то сделал не так? Но вроде эксперимент ставил, и подгруженный в документ текст извлекался.
Оказывается. У меня, вообще-то есть два mediawiki-сервера. И эксперимент я ставил на одном, а для вычитки загрузку собирался сделать на другом. И они разные. Там xenial, а там - precise. Но на последнем mediawiki как-то неудачно обновился, а на первом вслед за системой обновление прошло без особых проблем. В итоге на первом 1.29, а на втором - 1.25. Расширения ProofreadPage тоже разных версий. В пользу более старого, то что там специфичные элементы управления не сломались, а на новом их не видно.
Затаив дыхание заружаю файл туда где свежий софт — текстовый слой в наличии.
Значит, собрано всё верно.
А вот на обоих mediawiki кое-что сломалось. :)
no subject
Date: 2017-07-09 10:46 pm (UTC)no subject
Date: 2017-07-09 11:15 pm (UTC)А так сложно, потому, что FR выгружает уже свёрстаное. Он же сам и предлагает процесс вычитки, так что на выходе как раз и должен получиться конечный результат. А в данном случае необходимо вычитку вывести вовне, на совместную работу. От того и заморочки. Может, конечно, кто-то и умеет выгружать исходные сканы и распознанным и вычитанным слоем, но не мой файнридер.
no subject
Date: 2017-07-09 11:26 pm (UTC)Хочется увидить, как это.
В самом-то файнридере я этот процесс знаю, и до сих пор полагал, что это возможно как-то более-менее тольлко в нём самом и делать.
no subject
Date: 2017-07-10 03:39 am (UTC)Для примера могу привести словарь, который вычитываю.
По сравнению с файнридером в mediawiki+proofread свободная вёрстка, никак не связанная с оригиналом. То есть текстовый слой тупо импортируется без всякой разметки и всю разметку нужно делать средствами wiki. Или не делать. Если нужны картинки, то их вставлять отдельно. Вот, кстати, не знаю, можно ли импортировать кусок изображения. Было бы удобно. Страницу целиком можно, а чтобы часть — такой возможности не видел. Но proofread на своих серверах настраивал уже давно, мало ли что уже изменилось. А может и новые какие возможости появились в самом medawiki. Вычитываемая книга получается автоматически разбита на страницы и если нужно собрать в цельный текст (по главам, разделам или книжку целиком) можно их включить в обычную статью.
Оригинальный скан может быть нужен когда вычитывается страница. Скан показывается тут же, ну и вёрстку, если надо, можно делать близкой к оригиналу.
UPD. Упс. Неудачный пример привёл. Тамошняя книжка была товарищем собрана криво, со смещением страниц в текстовом слое. Так что пусть не пугает несоответствие скана тексту.
Чтобы понятнее было, ссылки приведу: начальная статья словаря. Так сказать, "лицо". Файл первого тома доступен с mediawiki, к нему сгенерирован индекс, там список ссылок на страницы есть. Разноцветные в соответствии
с цветовой диференцацией штановсо статусом: пустые/"вычитка не требуется", проблемные, "муха не сидела", созданные/не_вычитанные, вычитанные, подтверждённые.И в этом викисорсе что-то в ява-скриптах у proofread сломали — куда-то делся интерфейс редактирования. Наверно, потому что народ в основном на языковых разделах тусуется, а за этим следить некому.