Перейти из форума на сайт.

НовостиФайловые архивы
ПоискАктивные темыТоп лист
ПравилаКто в on-line?
Вход Забыли пароль? Первый раз на этом сайте? Регистрация
Компьютерный форум Ru.Board » Компьютеры » Программы » Scan Tailor (часть 2)

Модерирует : gyra, Maz

 Версия для печати • ПодписатьсяДобавить в закладки
Страницы: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153

Открыть новую тему     Написать ответ в эту тему

Widok



Moderator-Следопыт
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

Scan Tailor


Задача программы - пост-обработка сырых сканов книг для последующей сборки в PDF/DJVU,CBR/CBZ и т.д.
Программа обеспечивает большое удобство для использования, большую интерактивность и не меньшую автоматизацию процесса (по сравнению со СканКромсатором).
Кросс-платформенный (Windows,Mac OS, Linux) проект с открытыми исходниками.


Англоязычный топик по ScanTailor
Ветки:
Scan Tailor Plus (Vadim "DikBSD" Kuznetsov) >>>  последняя версия   (Отличия от авторской версии)
Scan Tailor Еnhanced (Petr "pejuko" Kovar) >>>  последняя версия   (Отличия от авторской версии)
Scan Tailor Featured (monday2000) >>>  последняя версия   (Отличия от авторской версии)
Scan Tailor Advanced (4lex4) >>>  последняя версия (Отличия от авторской версии); ветка develop
 
Документация:
Документация (Wiki) | Зоны картинок в ScanTailor | ScanTailor. Быстрое начало | Видеоуроки и скринкасты новых функций СТ от Tulona
Статья: Scan Tailor. Программа для обработки отсканированных книг
Видеоурок: Создание DjVu с помощью Scan Tailor (зеркало)
Использование Scan Tailor совместно с Djvu Imager (сборка djvu методом разделенных сканов)
Как собрать Scan Tailor из исходных кодов под Windows
Почему нельзя сделать сплошную нумерацию вывода


Автор проекта - Tulon. Почему его здесь не видно? .
DikBSD автор ветки ScanTailor Plus история повторяется.
Юзеры! Будьте скромнее!


Дистрибутивы, форки, дополнения

Всего записей: 24190 | Зарегистр. 07-04-2002 | Отправлено: 12:17 17-02-2010 | Исправлено: ndch, 16:47 18-07-2018
woodyfon

Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
DikBSD
Если не трудно, расскажите какие ключевые отличия от оригинального ST. Уже столько сборок появилось, что и запутался.

Всего записей: 412 | Зарегистр. 03-08-2007 | Отправлено: 21:43 23-01-2012
DikBSD

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Теперь jpg отображаются в ST - добавил папку imageformats с dll-ми...
Скачать можно там же
https://sourceforge.net/projects/scantailor/files/scantailor-devel/plus/0.9.11-2012-01-22/
 
Добавлено:

Цитата:
Если не трудно, расскажите какие ключевые отличия от оригинального ST. Уже столько сборок появилось, что и запутался.

Главное - Настройки для режима Вывода (для ч/б сканов в LZW или FAX4, Уровень пятен и т.д.). Автосохранение. Еще что-то - не помню уже. Кое-что ушло в официальную версию по мелочам...
В последнем релизе код Петра Ковача для Смешанного режима - обводка по прямоугольнику автоопределения зоны.
 
В основном в README можно посмотреть:https://sourceforge.net/projects/scantailor/files/scantailor-devel/plus/0.9.11pre-2011-11-30/

Всего записей: 177 | Зарегистр. 23-11-2009 | Отправлено: 23:08 23-01-2012
amaid



Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
запоминание настроек размера полей сделайте, плиз, если не очень трудно.

Всего записей: 523 | Зарегистр. 25-01-2006 | Отправлено: 22:36 24-01-2012
LonerDergunov



Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Можно ли выровнять вертикальные линии?
Горизонтальные линии - если они волнистые - можно исправить с помощью dewarping.
Однако при dewarpingе можно поставить точки только на горизонтальной оси.
Как быть если вертикальные линии тоже неровные?

Всего записей: 2972 | Зарегистр. 11-07-2007 | Отправлено: 18:28 26-01-2012
iit512

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Когда же наконец кто-нибудь сделает отключение выравнивания освещения в смешанном режиме?
Об этом речь идет уже больше года.
Вчера был вынужден просто отказаться от обработки книги, потому что даже выставление жирности в максимальную не помогало сделать буквы без разрывов линий.
Ну а фотографии без белых полей обработать вообще нельзя...

Всего записей: 176 | Зарегистр. 18-05-2005 | Отправлено: 19:11 17-02-2012 | Исправлено: iit512, 19:15 18-02-2012
amaid



Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
ну так ты и сделай, умник
а если руки не в том месте растут, научись вежливо просить, без понтов и пены

Всего записей: 523 | Зарегистр. 25-01-2006 | Отправлено: 19:45 17-02-2012 | Исправлено: amaid, 19:47 17-02-2012
iit512

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Прошу прощения, если это выглядело невежливо.
Просто ужасно расстроило, что такая прекрасная программа -- и не может справиться с обычной, в общем-то книгой...
Буду рад, если кто-нибудь посоветует, в какое место исходного кода смотреть.

Всего записей: 176 | Зарегистр. 18-05-2005 | Отправлено: 19:03 18-02-2012 | Исправлено: iit512, 19:10 18-02-2012
DikBSD

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Я пытался в свое время поработать над этой проблемой. Но из-за введения dewarping проблема усложнилась очень сильно! Он писал, что при отключенном выравнивании некоторые сканы обрабатываются неверно. Tulon сказал, что надо отслеживать множество факторов. В общем, я тогда "отодвинул" эту задачу "на потом"...
Если можете, напишите Tulone - ему проще всех будет ввести чекбокс отключения/включения выравнивания освещенности. Полностью он убирать не будет...  
Если его мягко упросить... Эту фичу можно было бы ввести не в основную ветку, а в plus...
 
Добавлено:
iit512, посмотрите, пожалуйста, личные сообщения - я кое-что выслал вам.

Всего записей: 177 | Зарегистр. 23-11-2009 | Отправлено: 10:05 19-02-2012
iit512

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Спасибо!
Я написал на багтрекере СТ (http://sourceforge.net/tracker/?func=detail&aid=3489319&group_id=227253&atid=1070628, там и ссылка на образец, с которым я работаю), но не очень уверен, что это к чему-то приведет.
Поскольку я не знаю ни C, ни тем более C++ и ни разу в жизни не программировал на этих языках, то моя идея была абсолютно топорной: отключить выравнивание освещения в смешанном режиме (или даже вообще отключить), сделать версию без него и обрабатывать картинки сначала нормальной версией, а потом отключенной. С первого наскока не получилось. Нашел функцию grayRasterOp(), которая вроде бы и делает нужное, но ее отключение в normalizeIlluminationGray() приводит к кошмарным последствиям (неопределенным пятнам вместо текста и картинок). Вижу теперь после прочтения Вашего сообщения, что выравнивание освещения тесно связано с распознаванием картинок (никогда бы не подумал, что так может быть), но кошмар на выводе с этим не связан, поскольку зоны картинок определены вручную.
Видимо, надо пробовать дальше. Но делать это я могу исключительно методом тыка.
 
Добавлено:
Вот первый результат, если его можно так назвать: http://rghost.ru/36595321
Если закомментировать в RaiseAboveBackground несколько строчек, то удается избавиться от выравнивания освещения. Однако картинки при этом автоматически не распознаются, приходится выделять их руками. Более того, на вторую указанную "особенность" (пересвечивание текста между картинками) это не влияет, тут я совсем не понимаю, куда копать.
Вот патч к OutputGenerator.cpp:

Код:
 
--- OutputGenerator.cpp.old     2012-02-19 00:25:05.000000000 -0600
+++ OutputGenerator.cpp 2012-02-19 03:04:36.000000000 -0600
@@ -100,12 +100,13 @@
        static uint8_t transform(uint8_t src, uint8_t dst) {
                // src: orig
                // dst: background (dst >= src)
-               if (dst - src < 1) {
-                       return 0xff;
-               }
+//             if (dst - src < 1) {
+//                     return 0xff;
+//             }
                unsigned const orig = src;
                unsigned const background = dst;
-               return static_cast<uint8_t>((orig * 255 + background / 2) / background);
+//             return static_cast<uint8_t>((orig * 255 + background / 2) / background);
+               return static_cast<uint8_t>(orig);
        }
 };
 

 
Добавлено:
По-видимому, два описанных дефекта имеют разные источники. Если первый (пересвечивание картинок) можно устранить грубым хаком функции RaiseAboveBackground, то второй (пересвечивание текста), по-видимому, связан с тем, что светимость текста перед выравниванием освещенности и бинаризацией вычисляется по всему изображению, тогда как логичнее было бы определять ее только по текстовым участкам. Однако найти подтверждение этому в коде пока не могу.

Всего записей: 176 | Зарегистр. 18-05-2005 | Отправлено: 12:10 19-02-2012 | Исправлено: iit512, 13:40 19-02-2012
DikBSD

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Я ранее пытался поработать с освещением, но времени - мало, поэтому и переключился на другое.
 
Добавлено:
Освещение "работает" и в режиме без выпрямления строк, и в режиме выпрямления. Учтите, пожалуйста это. Иначе эффект от выключения освещения будет РАЗНЫЙ. А обработка картинок в этих двух режимах - разная. Отсюда и сложности...
Насчет патча - если у вас хватит терпения "добить" до конца освещение - то тогда сделайте, пожалуйста, патч ВСЕГО изменения кода - я внесу в репозиторий, в ветку plus. Иначе - вдруг локальные изменения кода "испортят" что-нибудь "глобальное" в ST. Хорошо?

Всего записей: 177 | Зарегистр. 23-11-2009 | Отправлено: 17:17 19-02-2012
iit512

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Спасибо за информацию.
Моя цель, однако, гораздо скромнее: сделать Scan Tailor Minus, в котором просто не будет выравнивания освещенности. Но, похоже, и это недостижимо, потому что автоопределение картинок и выравнивание слишком тесно завязано, а разделить эти два процесса для меня -- это примерно также, как мне попросить Вас найти морфологические синапоморфии двух клад, выделенных по митохондриальному геному (хотя, может быть, Вы биолог?).
Я теперь хочу только одну вещь найти -- где выравнивается освещение для текстовой части смешанной картинки? Не знаете случайно?

Всего записей: 176 | Зарегистр. 18-05-2005 | Отправлено: 23:30 19-02-2012 | Исправлено: iit512, 23:38 19-02-2012
iit512

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Кажется, я понял в чем дело. Вот здесь -- binarize(maybe_smoothed, normalize_illumination_crop_area) область, используемая для вычисления порога бинаризации, берется слишком большой, включающией картинки, и поэтому порог получается очень высоким, отчего и буквы оказываются пересвеченными.
К сожалению, это только мое предположение, поскольку я не знаю, как бы подставить туда какой-нибудь другой полигон. Буду благодарен за подсказку.

Всего записей: 176 | Зарегистр. 18-05-2005 | Отправлено: 08:01 20-02-2012
DikBSD

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
К сожалению, я пытался разобраться с освещением очень давно... Уже и не помню многое. Если найду время, попробую понять механизм алгоритма и, если получится, сделать выравнивание освещения опционально отключаемым. Но обещать не буду...
 
Добавлено:
P.S. iit512, для биолога вы неплохо разбираетесь в программировании. Пишу это - с уважением, без иронии.

Всего записей: 177 | Зарегистр. 23-11-2009 | Отправлено: 19:28 20-02-2012
iit512

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Спасибо. Надо еще учесть, что у СТ очень хороший код.
Я думаю, Вы заметили, что здесь, скорее всего, две проблемы:
1) Отсутствие отключения выравнивания освещения в смешанном режиме
2) Неправильное вычисление порога бинаризации в смешанном режиме
И если первую можно решить введением чекбокса, то вторая -- настоящий баг, который надо как-то исправить.
На багтрекере Арцимович написал мне в том смысле, что все так, но он ничего делать не будет

Всего записей: 176 | Зарегистр. 18-05-2005 | Отправлено: 22:49 20-02-2012 | Исправлено: iit512, 01:08 21-02-2012
DikBSD

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Будем потихоньку разбираться.

Всего записей: 177 | Зарегистр. 23-11-2009 | Отправлено: 20:36 21-02-2012
iit512

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Спасибо!
Как Вы видите, у нас с Арцимовичем идет все же некоторая дискуссия на багтрекере.
Обратите внимание, пожалуйста, на третий пример, который я выложил (http://rghost.ru/36628401). Он ясно, на мой взгляд, демонстрирует эффект влияния темных картинок на текст, вне зависимости от того, помещены они в пользовательские зоны или нет.

Всего записей: 176 | Зарегистр. 18-05-2005 | Отправлено: 04:55 22-02-2012
DikBSD

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Хорошо
 
Добавлено:
Я не смог скачать этот пример - файл удален.

Всего записей: 177 | Зарегистр. 23-11-2009 | Отправлено: 19:56 22-02-2012
iit512

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
http://www.onlinedisk.ru/file/830369/

Всего записей: 176 | Зарегистр. 18-05-2005 | Отправлено: 20:33 22-02-2012
iit512

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Арцимович нашел баг и попатчил СТ!!! Теперь текст между темными картинками не осветляется!!!
===
Я обычно работаю в Plus, потому что там есть прямоугольные зоны, поэтому попатчил вручную, благо надо вставить только "&& !mask" на 1482 строке OutputGenerator.cpp
DikBSD: можно Вас попросить поправить это в Plus?
===
Теперь осталось только сделать чекбокс на отключение выравнивания освещенности в смешанном режиме. Возражение о том, что тогда темные картинки получаются очень странно, меня не сильно волнует, потому что я все равно разделяю слои и могу картиночный слой обрабатывать любым способом, который позволяет ImageMagick.
Покуда я сделаю так: применю грубый хак (см. патч выше) и отключу выравнивание освещения вообще, получится Scan Tailor Minus который я буду запускать только тогда, когда увижу эти самые белые пятна. Единственное, что надо помнить при этом -- автоматическое выделение картинок в ST Minus работать тоже не будет.
===
Теперь у меня все есть! Ну, не все Хочется еще сделать так, чтобы было несколько групп выравнивания страниц. А то часто бывает, что есть иллюстрации со своими размерами блока, и текст -- со своими размерами. Выравнивать все единообразно -- текст будет смотреться плохо, не выравнивать -- будет менее читаемый результат...
Еще я уже писал здесь, что СТ зачем-то каждый раз начинает обрабатывать файл, даже если я держу нажатым Ctrl или Shift и просто выделяю некоторую группу. Это -- бесцельная трата ресурсов компьютера, как говорится, not a green way.
А еще -- сильно раздражает, когда при удалении файла из проекта тебя каждый раз перемещают к началу (если забываешь отжать кнопку синхронизации).

Всего записей: 176 | Зарегистр. 18-05-2005 | Отправлено: 03:07 23-02-2012 | Исправлено: iit512, 03:27 23-02-2012
DikBSD

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

Цитата:
Арцимович нашел баг и попатчил СТ!!! Теперь текст между темными картинками не осветляется!!

Вот это - радостная новость! Сейчас просмотрю код и перенесу его в ветку plus. На днях сделаю новую сборку под Win32.
P.S. К лету накоплю на Mac mini - буду выкладывать и сборки plus под Mac OS X
 
Добавлено:

Цитата:
DikBSD: можно Вас попросить поправить это в Plus?  

Конечно. Сегодня уже не успею - выложу завтра.
 
Добавлено:

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

В любом случае - из-за "пересвеченности" картинок Смешанных режим редко используется. А поэкспериментировать с включением/отключения режима можно всегда .
Сначала выложу новую сборку, а потом можно будет заняться и чекбоксом (со всеми вытекающими отсюда настройками...)
 
Добавлено:

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

Если забуду - напомните позднее, ладно?

Всего записей: 177 | Зарегистр. 23-11-2009 | Отправлено: 22:00 23-02-2012
Открыть новую тему     Написать ответ в эту тему

Страницы: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153

Компьютерный форум Ru.Board » Компьютеры » Программы » Scan Tailor (часть 2)

Имя:
Пароль:
Сообщение

Для вставки имени, кликните на нем.

Опции сообщенияДобавить свою подпись
Подписаться на получение ответов по e-mail
Добавить тему в личные закладки
Разрешить смайлики?
Запретить коды


Реклама на форуме Ru.Board.

Powered by Ikonboard "v2.1.7b" © 2000 Ikonboard.com
Modified by Ru.Board
© Ru.Board 2000-2018

BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

Рейтинг.ru