Ru-Board.club
← Вернуться в раздел «Программы»

» Scan Tailor

Автор: monday2000
Дата сообщения: 24.08.2009 09:03
Мне прислал письмо рубордовец ukpyr:

Цитата:
Здравствуйте.

Начал свой проект программы обработки сканов - http://code.google.com/p/artscan/ . Хочу выслушать мнения/замечания/пожелания знающих людей.

Пишу на Scala (статический объектно-функциональный язык, работает на JVM). Выбрал его из-за кросс-платформенности, краткости (за счет вывода типов и функциональщины объем текста практически такой же как на Питоне/Руби), по скорости не сильно проигрывает С++, доступности всех средств JRE - богатые возможности по работе с графикой, наличие граф.библиотек, скриптование на Bsh/JS/Python/Groovy/Ruby.

Вот скрин гравного окна : http://img233.imageshack.us/img233/737/screenshot1h.png .
Справа - панель плагинов. Сверху вниз : дерево доступных плагинов, параметры выбранного плагина, редактор скрипта, консоль вывода скрипта.
Плагин пишется в самой Scala (там где нужна быстая обработка), или на одном из скриптовых языков. В тексте в комментарии описываются параметры, которые нужно задать перед запуском плагина (скорее всего в XML). Когда пользователь выбирает плагин из списка, список этих параметров отображается в удобном для редактирования виде под списком плагинов (что-то типа property editor). То есть для непродвинутых пользователей это не сложно.
Продвинутые пользователи могут создавать свои плагины - в редакторе набирается текст, можно сразу запустить и увидеть результат. Из скриптов доступны любые операции над документами и страницами - от простых манипуляций над страницами (удаление, вставка и т.д.) до работы с зонами и изображениями. Для обработки изображений доступны средства самой AWT/Swing и библиотеки ImageMagick / ImageJ ( http://rsbweb.nih.gov/ij/ , http://rsbweb.nih.gov/ij/plugins/index.html ). Далее планирую подключить свободные OCR библиотеки Tesseract/OCRopus и др.
С помощью скриптов-плагинов и готовых библиотек можно очень быстро нарастить библиотеку граф.фильтров. Реализация алгоритмов обработки сканов - более сложная, но вполне подъемная задача.
В документе реализую работу с зонами/слоями. Как - пока вопрос открытый. Скорее всего каждому объекту (документу, странице, слою, зоне) можно будет присвоить текстовые теги/проперти - так можно быстро фильтровать/назначать объекты для обработки.

Почему-то он не хочет открывать топик на форуме.
Автор: Smokeer
Дата сообщения: 25.08.2009 20:19
Судя по скрину главного окна там пока неначто открьівать топик... вьі лучше обњясните каким боком ArtScan к Scan Tailor'у?
Спамите, товарищь
Автор: Tulon
Дата сообщения: 25.08.2009 22:32
Ну вот наконец подключился к инету на новой квартире. Жить сразу стало веселее.

До сих пор работаю над ручным выделением зон - через пару недель надеюсь закончить. Можно было бы релиз выпустить, исключительно для того, чтобы падений в оффициальном релизе не было. От версии, которую я последний раз здесь выкладывал, ни одного краш репорта не получил.
Автор: denver 22
Дата сообщения: 27.08.2009 22:47
Tulon, прошу у новых сборок, выкладываемых здесь указывать и версию, и ревизию. А то по ссылке в шапке программа уже не собирается давно...
Автор: ndch
Дата сообщения: 30.08.2009 10:41
Tulon
Определился с пожеланием: хочется чтоб в выходе наряду с числовым разрешением был пункт "выходное разрешение=входному разрешению" (т.е. без масштабирования)
Автор: Tulon
Дата сообщения: 30.08.2009 12:16

Цитата:
Определился с пожеланием: хочется чтоб в выходе наряду с числовым разрешением был пункт "выходное разрешение=входному разрешению" (т.е. без масштабирования)

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

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

Добавлено:
denver 22

Цитата:
Tulon, прошу у новых сборок, выкладываемых здесь указывать и версию, и ревизию. А то по ссылке в шапке программа уже не собирается давно...

OK.

U235
А что, та проблема со сборкой так и не решилась? Я пробовал собирать новую версию Qt под MinGW - у меня собралось нормально.
Автор: ndch
Дата сообщения: 31.08.2009 03:25
Tulon

Цитата:
В таком случае можно просто выставить нужный вам DPI для всего проекта.

Не слишком ли, если в проекте изображения с разным dpi ?
Автор: U235
Дата сообщения: 31.08.2009 09:59
Tulon

Цитата:
А что, та проблема со сборкой так и не решилась? Я пробовал собирать новую версию Qt под MinGW - у меня собралось нормально.

К сожалению не решилась.. При сборке Qt возникают ошибки, например, не находит библиотеку qsqlited при линковке. Думаю, что проблемы из-за системных переменных, возможно я что-то удалил лишнее... Если не трудно, напишите версии Qt и всего остального при которых у Вас все собралось (еще лучше с названиями дистрибутивов, т.к. может быть я не то скачиваю и пытаюсь устанавливать). Еще, если будет время, попробую запустить сборку на другой машине.
Автор: Tulon
Дата сообщения: 31.08.2009 19:40
ndch

Цитата:
Не слишком ли, если в проекте изображения с разным dpi ?

Ситуация реальная или гипотетическая? Если реальная, то как так получилось?

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

Я против введения этой опции потому что:
1. Мне очень сложно представить ситуацию, где такой режим будет оптимальным вариантом.
2. В остальных 99% случаев этот режим будет неоптимальным вариантом, и поэтому неспециалистам лучше его вообще не предлагать.
Автор: ndch
Дата сообщения: 01.09.2009 15:49
Tulon
На двух разных сканерах сканилось. У одного "родное" разрешение сканирования 300dpi, у другого 400dpi.

Ситуация такая: нужно повернуть все страницы. Все. Больше ничего не требуется.
ни бинаризации, ни ресайза, ни кропа. НИЧЕГО.
Автор: Tulon
Дата сообщения: 01.09.2009 20:52

Цитата:
Ситуация такая: нужно повернуть все страницы. Все. Больше ничего не требуется.
ни бинаризации, ни ресайза, ни кропа. НИЧЕГО.

Для такой задачи я думаю лучше использовать Book Restorer.

Добавлено:
U235
У меня Qt версии 4.5.2, которая только исходники, не та, что уже собрана под MinGW. Хотя могу и с той попробовать - раньше обе собирались без проблем. Версии остальных библиотек по идее не должны влиять.
Автор: Rsbr
Дата сообщения: 01.09.2009 21:35

Цитата:

Ситуация такая: нужно повернуть все страницы. Все. Больше ничего не требуется.
ни бинаризации, ни ресайза, ни кропа. НИЧЕГО.


Image Magik можно использовать...Ну или там ещё куча простых программ с пакетным режимом.

Автор: ndch
Дата сообщения: 02.09.2009 08:01
Tulon

Цитата:
Для такой задачи я думаю лучше использовать Book Restorer.

Я не хочу "вникать" в философию работы этой программы.
Хочу тупо загрузить файлы и нормализовать горизонтальную линию, ничего не читая и ни в чём не разбираться.

Вроде бы с таким девизом развивается программа ?
Автор: Tulon
Дата сообщения: 02.09.2009 09:47

Цитата:
Хочу тупо загрузить файлы и нормализовать горизонтальную линию, ничего не читая и ни в чём не разбираться.

Грузите файлы, прогоняете все стадии, на выходе получаете 600 DPI. Как я уже говорил, некратное увеличение - не проблема. Это и называется "ни в чем не разбираться".
Автор: ukpyr
Дата сообщения: 02.09.2009 15:31

Цитата:
Ситуация такая: нужно повернуть все страницы. Все. Больше ничего не требуется.
ни бинаризации, ни ресайза, ни кропа. НИЧЕГО.
Imagemagick :

Код: mogrify -rotate 90 *.tif
Автор: Nikola7
Дата сообщения: 04.09.2009 16:07
Tulon

Цитата:
До сих пор работаю над ручным выделением зон - через пару недель надеюсь закончить.


Задача нужная - сначала автоматическое определение, потом корректировка (размеров полученного на этапе автоопределения, добавление зон вручную - если пропущено - так?)
Ещё бы потом сделать вывод в многослойный многостраничный PDF с заданными конечными размерами и разрешением каждого слоя, а?
И чтобы каждый слой жался разными алгоритмами...
Автор: ndch
Дата сообщения: 04.09.2009 17:07
Nikola7
В акробате со сборкой справитесь ?
А то некислая задача получается (с учётом кодирования в jbig2 и jpeg2000).
Автор: Nikola7
Дата сообщения: 04.09.2009 17:20
Ну, Tulon должен заинтересоваться, т.к если этих моментов не будет (а есть ещё несколько пока дажн не обсуждавшихся), то программа не выйдет на тот уровень, который (я надеюсь) он задумывал.
Автор: dabudada
Дата сообщения: 04.09.2009 17:44

Цитата:
многостраничный PDF с заданными конечными размерами

Ну, тогда уже и вывод в djvu делать нужно А это уж слишком, явный перебор как по мне, на то и нужны обработанные сканы, чтобы из них лепить по своему желанию все что угодно. Хотя мне подобное тоже мечтается
Tulon, ждем новую сборку, с этой проблем вроде нет. А у Вас приходят баг-репорты?
Автор: Nikola7
Дата сообщения: 04.09.2009 17:57

Цитата:
чтобы из них лепить по своему желанию все что угодно.


Добавлю, удобно лепить. А пока удобство собственно для вывода в PDF-DJVU неощутимое.
Автор: monday2000
Дата сообщения: 05.09.2009 20:25

Цитата:
Ещё бы потом сделать вывод в многослойный многостраничный PDF с заданными конечными размерами и разрешением каждого слоя, а?

Ради бога - только в отдельной сторонней программе - а не в самом ST.
Автор: Tulon
Дата сообщения: 07.09.2009 02:34
Я согласен с тем, что сборка PDF / DJVU прямо из СТ теоретически имеет приемущества перед сборкой в отдельной программе. Дело тут не в юзабилити, а в том, что СТ уже знает, где на странице картинки. Причем если он ошибся, то вам в любом случае придется поправить его вручную (зоны на днях доделаю). Автоматический алгоритм СТ + ручная доводка будут лучше чем автоматический алгоритм того же DEE, который норовит на картинках найти элементы переднего плана и бинаризовать их.
Однако если до этого и дойдут у меня руки, то очень не скоро.
Автор: Tulon
Дата сообщения: 09.09.2009 01:42
Первая версия с поддержкой зон: http://www.onlinedisk.ru/file/214474/
Решил не делать отдельную стадию "Зоны" и разместил их на стадии "Вывод".
Автор: Tulon
Дата сообщения: 10.09.2009 02:13
Получил краш репорт от новой версии, но ST там походу не при чем - его уронил AntiVir.
Автор: ndch
Дата сообщения: 10.09.2009 19:16
Tulon

Цитата:
Решил не делать отдельную стадию "Зоны" и разместил их на стадии "Вывод".


В djvu содержит часто биколор в 300 dpi, полноцвет-100dpi.
Как вариант jb2-600dpi, iw44-200dpi.

В смысле - лучше бы оно было двумя файлами:
один полноцветный 200 dpi
второй биколор - 600 dpi

Почему ? Так можно делать как djvu так и pdf.

Добавлено:
Было бы удобнее если одновременно можно было видеть только один слой.

Прямоугольные области планируются ?

как отменить начало создание зоны/слоя ?

Сглаживание выделения не очень как-то работает:
http://pic.ipicture.ru/uploads/090910/52469/tp3lbLNlW5.png

Первая бага:
http://pic.ipicture.ru/uploads/090910/52469/SB5aDKXLRF.png

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

Во вторых недоперевод. Нет русского перевода.
Автор: Tulon
Дата сообщения: 10.09.2009 21:19
ndch
Вывод в два отдельных файла, да еще с разными разрешениями нужен единицам, а усложнит интерфейс для всех. Даже при отсутствии аргументов против, до нее все равно руки дошли бы еще очень и очень не скоро.


Цитата:
Было бы удобнее если одновременно можно было видеть только один слой.

Зачем?


Цитата:
Прямоугольные области планируются ?

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


Цитата:
как отменить начало создание зоны/слоя ?

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


Цитата:
Сглаживание выделения не очень как-то работает:

Нормально работает, учитывая неоднородный фон.


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

Шлите пример - не могу воспроизвести.


Цитата:
Во вторых недоперевод. Нет русского перевода.

Почему то обновленный перевод не попал в релиз.




Добавлено:

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

Воспроизвел - происходит если в проекте нет ни одной страницы с контентом. Даже исправлять такой мелкий баг не охота.
Автор: ndch
Дата сообщения: 10.09.2009 21:29
Tulon

Цитата:
Даже при отсутствии аргументов против, до нее все равно руки дошли бы еще очень и очень не скоро.

Будем ждать.

Добавлено:

Цитата:
Воспроизвел - происходит если в проекте нет ни одной страницы с контентом. Даже исправлять такой мелкий баг не охота.

Было содержимое, обещаю воспроизвести
Автор: iit512
Дата сообщения: 11.09.2009 01:20
Умоляю Вас -- исправьте, пожалуйста, баг с точками-лидерами!
Автор: Tulon
Дата сообщения: 11.09.2009 04:15

Цитата:
Умоляю Вас -- исправьте, пожалуйста, баг с точками-лидерами!

Это не баг - это чрезмерно аггрессивное удаление мусора. После зон как раз собираюсь доводить до ума деспеклинг.
Автор: denver 22
Дата сообщения: 11.09.2009 10:44

Цитата:
После зон как раз собираюсь доводить до ума деспеклинг.

О, сразу 2 функции, которые я жду в более лучшем исполнении. Очень очень жду... Удачи в разработке!

Страницы: 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172

Предыдущая тема: Невозможно установить Acronis True Image Home v10.0.4940


Форум Ru-Board.club — поднят 15-09-2016 числа. Цель - сохранить наследие старого Ru-Board, истории становления российского интернета. Сделано для людей.