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

» Scan Tailor: Часть 2

Автор: StanFreeWare
Дата сообщения: 13.05.2010 06:19
Tulon
В принципе, интерфейс кое-где даже упростится - т.к. отпадет необходимость в кнопках выбора положения рабочей области относительно резака - она всегда будет между. Зато скорость нахождения стадии останется практически такой же высокой. И для последующих алгоритмов работа упрощается. Единственно, что на страницах с большими таблицами и большими контрастными иллюстрациями придется двигать оба резака..
Сможет ли второй резак встать впритирку к краю скана, если граница книги окажется за пределами огрызка?

Но все равно, по-моему к существующей концепции две отдельные кнопки для огрызков таки ближе. Но требуют умения применять к каждой второй странице. По крайней мере для следующей стадии результат после разрезки как огрызка, так и разворота останется идентичным..
Автор: U235
Дата сообщения: 13.05.2010 06:55
Tulon

Цитата:
Возвращаясь к теме разрезки одностраничных сканов:
А почему бы не добавить второй резак для этого типа разреза? Проблема определения где корешок, а где граница книги отпадет сама собой - и то, и другое будет отрезано.

Для приведенного выше скана это хорошо, но как быть если на скане не будет границы книги, а только огрызок? Не порежет ли второй резак в этом случае лишнее?
Кстати повторю еще признаки линий для разрезки.
Настоящая линия разреза (огрызок) Ложная линия (край книги)
Автор: alpopo
Дата сообщения: 13.05.2010 09:12
TulonЗамечание. К обсуждаемой теме разрезки. Попадались двустраничные сканы у которых середина скажем так без линии разреза (белая).В этом случае при авторазрезке граница прижимается к левой или правой границе текста и иногда наезжает на него. Приходится на всех страницах передвигать линию разрезки. Хотелось бы иметь ручной режим установки резака на середину двустраничного скана. Разбить все пополам, а потом негаразды подредактировать
Автор: ndch
Дата сообщения: 13.05.2010 09:39
Tulon
Возник вопрос как у неподготовленного, но понимающего пользователя:
На стадии исправление ориентации страницы можно "листать" кнопками PAGEUP/PAGEDOWN.
Можно ли поворачивать кнопками ?
Например курсор:право/лево/вниз/вверх 90,270,180 градусов. Когда много кривоповернутых -очень бы сэкономило время.
Автор: Tulon
Дата сообщения: 13.05.2010 11:02
ndch
А надо ли такое? Как правило на этой стадии страницы не пролистывают, а применяют поворот ко всем или к каждой второй странице.

Добавлено:
alpopo
Надо полагать бинарные сканы без линии сгиба, но с мусором в нижней / верхней части корешка? Не хотелось бы конечно вводить такую операцию, так как она потенциально деструктивна и ее трудно отменить.
Автор: woodyfon
Дата сообщения: 13.05.2010 13:18

Цитата:
Ну как заинтересовало? Если да, я подчишу упомянутый proof of concept код, и выложу его.

Заинтересовало, но пока не попробую и не понюхаю до конца не разберусь. Ваш метод слишком эмперический. Начну пожалуй с перевода статьи и составление алгоритма. Просто есть разные деформации страницы как по вертикали, так и по горизонтали. Ваш метод, извините, не есть абсолютно универсальный. Думаю, сможет исправлять нормально только горизонтальные искажения (строки текста повернуты относительно наблюдателя горизонтально). По собственному опыту могу сказть, что проще написать самому, чем разбирать код. Поэтому пока не стоит очищать код, трата времени. Но за отклик спасибо.
Автор: ndch
Дата сообщения: 13.05.2010 14:23
Tulon
Надо, например, когда сканируеся куча счетов в разной ориентации.
Автор: alpopo
Дата сообщения: 13.05.2010 16:28
Tulon Пример 2-х страничного скана без линии перегиба - онлайн
Автор: Tulon
Дата сообщения: 13.05.2010 17:05
ndch

Цитата:
Надо, например, когда сканируеся куча счетов в разной ориентации.

Понятно. Может когда-нибудь руки и дойдут, но как обычно ничего не обещаю.

Добавлено:
alpopo

Цитата:
Tulon Пример 2-х страничного скана без линии перегиба - онлайн

Что мы тут имеем: широкую белую полосу искусственного происхождения там, где должен быть корешок. Обычно бы я сказал, что безнадежных пациентов не лечу. В данном случае однако, лечения и не требуется. Пускай линия разреза будет близко от букв - это не проблема. Лишь бы ни по самим буквам.
Автор: StanFreeWare
Дата сообщения: 13.05.2010 18:43
Tulon
Описываю ситуацию.
Дохожу до стадии вывод. Аккуратно выбираю режим для страниц - цветной, черно-белый или смешанный. Запускаю стадию. Ухожу на работу. Возвращаюсь - смотрю - вижу, что порог бинаризации неплохо было бы подкрутить. Опять тыкаю с Ctrl по страницам, выбираю черно-белые, изменяю порог для них. Так же, чертыхаясь, выбираю смешанные, изменяю порог и для них тоже.
Варианты решения.
Пункт "применить к страницам в выбранном режиме". Сортировка полосы предпросмотра по типу режима. Отдельная кнопка применить к для уровня бинаризации.
Замечу, что с уровнем деспекла такой проблемы нет, хотя он работает на тех же режимах, что и бинаризация.
Автор: alpopo
Дата сообщения: 13.05.2010 18:46
Tulon
Цитата:
Лишь бы ни по самим буквам
В том то и дело, что с половины наезжает на первую букву хоть справа, хоть слева от середины, смотря куда прилепится. Причем в этом случае разделитель как правило наклонен, так как для одной из страничек было выравнивание. Я предлагал ввести режим разбиения изображения ровно посередине (без анализа разреза и выравнивания, что при широком пустом или с разделителем поле в середине скана может понадобиться во многих случаях.). Вам, как автору, виднее можно ли здесь что-либо сделать. Благодарю за разъяснения
Автор: StanFreeWare
Дата сообщения: 13.05.2010 19:28
alpopo
Если все сканы одинакового размера, и Вам это интересно, могу предложить технологию разрезки пополам, например, с помощью FS Image Viewer (где-то я ее уже давал, но не найду ссылку).
Автор: alpopo
Дата сообщения: 13.05.2010 20:22
StanFreeWare
Цитата:
FS Image Viewer
Похоже там можно не разбить, а два раза вырезать?
Автор: StanFreeWare
Дата сообщения: 13.05.2010 20:50
alpopo

Цитата:
два раза вырезать

Совершенно верно. Шагов вместо одного будет штуки четыре - crop слева, crop справа, переименование в нечетные левых, переименование в четные правых.
Автор: StanFreeWare
Дата сообщения: 14.05.2010 04:59
Tulon
Дохожу до стадии полезная область, включаю сортировку по высоте или ширине, вижу, что один скан разрезался неправильно, возвращаюсь на разрезку, поправляю, перехожу назад - на полосе половинки с вопросом эти половинки остались на том же месте (по размеру полезной области до изменений). По-моему правильнее их перемещать в верх полосы предпросмотра.

Добавлено:
Макет страница. В плане работы с полноразмерными иллюстрациями (ПРИ) и обложками полезной была бы область применения полей "Ко всем страницами с включенным выравниванием".
Тогда шаги были бы такие:
задал всем страницам нулевые поля.
отсортировал по высоте.
прошел по максимальным - выключил выравнивание у обложек и ПРИ.
по максимальным нормальным страницам выставил поля и применил их к оставшимся страницам.

Добавлено:
Ко всем
Добавил в ST Outliner поддержку файловой организации 0.9.9. Пробуйте, если что не так - пишите в личку. Напоминаю, программа требует установленного .NET Framework 3.5
Автор: VidelSamogO
Дата сообщения: 14.05.2010 13:07
Ошибка в ST Separator 2 [more=Ошибка в ST Separator 2.5]See the end of this message for details on invoking
just-in-time (JIT) debugging instead of this dialog box.

************** Exception Text **************
System.DivideByZeroException: Attempted to divide by zero.
at ST_Separator.MainForm.ShowProgress(Boolean needInc, Boolean visible, Int32 maximum) in D:\MyDocs\Visual Studio 2008\Projects\!ScanTailor\ST Separator\ST Separator\MainForm.cs:line 62


************** Loaded Assemblies **************
mscorlib
Assembly Version: 2.0.0.0
Win32 Version: 2.0.50727.42 (RTM.050727-4200)
CodeBase: file:///C:/WINDOWS/Microsoft.NET/Framework/v2.0.50727/mscorlib.dll
----------------------------------------
ST Separator
Assembly Version: 2.0.0.0
Win32 Version: 2.0.0.0
CodeBase: file:///d:/Program%20Files/Scan%20Tailor/scantailor-Tulon%20r419%202009-09-16/djvu_imager_v1_3/DjVu%20Sep%20v2.3/Separator%200.31/ST%20Separator%202.5/ST%20Separator.exe
----------------------------------------
System.Windows.Forms
Assembly Version: 2.0.0.0
Win32 Version: 2.0.50727.42 (RTM.050727-4200)
CodeBase: file:///C:/WINDOWS/assembly/GAC_MSIL/System.Windows.Forms/2.0.0.0__b77a5c561934e089/System.Windows.Forms.dll
----------------------------------------
System
Assembly Version: 2.0.0.0
Win32 Version: 2.0.50727.42 (RTM.050727-4200)
CodeBase: file:///C:/WINDOWS/assembly/GAC_MSIL/System/2.0.0.0__b77a5c561934e089/System.dll
----------------------------------------
System.Drawing
Assembly Version: 2.0.0.0
Win32 Version: 2.0.50727.42 (RTM.050727-4200)
CodeBase: file:///C:/WINDOWS/assembly/GAC_MSIL/System.Drawing/2.0.0.0__b03f5f7f11d50a3a/System.Drawing.dll
----------------------------------------

************** JIT Debugging **************
To enable just-in-time (JIT) debugging, the .config file for this
application or computer (machine.config) must have the
jitDebugging value set in the system.windows.forms section.
The application must also be compiled with debugging
enabled.

For example:

<configuration>
<system.windows.forms jitDebugging="true" />
</configuration>

When JIT debugging is enabled, any unhandled exception
will be sent to the JIT debugger registered on the computer
rather than be handled by this dialog box.

[/more]

И для



[more=Ошибка ST Outliner 0.2]

See the end of this message for details on invoking
just-in-time (JIT) debugging instead of this dialog box.

************** Exception Text **************
System.IO.FileNotFoundException: Could not load file or assembly 'System.Xml.Linq, Version=3.5.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089' or one of its dependencies. Не удается найти указанный файл.
File name: 'System.Xml.Linq, Version=3.5.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089'
at Outliner.LinqXML..ctor(String fileName, List`1 pages, List`1 images)
at Outliner.Form1.button2_Click(Object sender, EventArgs e) in D:\MyDocs\Visual Studio 2008\Projects\!ScanTailor\ST_Outliner\ST_Outliner\MainForm.cs:line 207
at System.Windows.Forms.Control.OnClick(EventArgs e)
at System.Windows.Forms.Button.OnClick(EventArgs e)
at System.Windows.Forms.Button.OnMouseUp(MouseEventArgs mevent)
at System.Windows.Forms.Control.WmMouseUp(Message& m, MouseButtons button, Int32 clicks)
at System.Windows.Forms.Control.WndProc(Message& m)
at System.Windows.Forms.ButtonBase.WndProc(Message& m)
at System.Windows.Forms.Button.WndProc(Message& m)
at System.Windows.Forms.Control.ControlNativeWindow.OnMessage(Message& m)
at System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message& m)
at System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)

WRN: Assembly binding logging is turned OFF.
To enable assembly bind failure logging, set the registry value [HKLM\Software\Microsoft\Fusion!EnableLog] (DWORD) to 1.
Note: There is some performance penalty associated with assembly bind failure logging.
To turn this feature off, remove the registry value [HKLM\Software\Microsoft\Fusion!EnableLog].



************** Loaded Assemblies **************
mscorlib
Assembly Version: 2.0.0.0
Win32 Version: 2.0.50727.42 (RTM.050727-4200)
CodeBase: file:///C:/WINDOWS/Microsoft.NET/Framework/v2.0.50727/mscorlib.dll
----------------------------------------
Outliner
Assembly Version: 1.0.0.0
Win32 Version: 1.0.0.0
CodeBase: file:///d:/Program%20Files/Scan%20Tailor/scantailor-Tulon%20r419%202009-09-16/djvu_imager_v1_3/DjVu%20Sep%20v2.3/Separator%200.31/ST%20Outliner%200.2/Outliner.exe
----------------------------------------
System.Windows.Forms
Assembly Version: 2.0.0.0
Win32 Version: 2.0.50727.42 (RTM.050727-4200)
CodeBase: file:///C:/WINDOWS/assembly/GAC_MSIL/System.Windows.Forms/2.0.0.0__b77a5c561934e089/System.Windows.Forms.dll
----------------------------------------
System
Assembly Version: 2.0.0.0
Win32 Version: 2.0.50727.42 (RTM.050727-4200)
CodeBase: file:///C:/WINDOWS/assembly/GAC_MSIL/System/2.0.0.0__b77a5c561934e089/System.dll
----------------------------------------
System.Drawing
Assembly Version: 2.0.0.0
Win32 Version: 2.0.50727.42 (RTM.050727-4200)
CodeBase: file:///C:/WINDOWS/assembly/GAC_MSIL/System.Drawing/2.0.0.0__b03f5f7f11d50a3a/System.Drawing.dll
----------------------------------------

************** JIT Debugging **************
To enable just-in-time (JIT) debugging, the .config file for this
application or computer (machine.config) must have the
jitDebugging value set in the system.windows.forms section.
The application must also be compiled with debugging
enabled.

For example:

<configuration>
<system.windows.forms jitDebugging="true" />
</configuration>

When JIT debugging is enabled, any unhandled exception
will be sent to the JIT debugger registered on the computer
rather than be handled by this dialog box.




[/more]
Автор: StanFreeWare
Дата сообщения: 14.05.2010 13:10
VidelSamogO
Спасибо посмотрю, но лучше в личку. Просто чтобы не засорять чужой топик bag-report'ами.
Автор: Tulon
Дата сообщения: 14.05.2010 22:33
У меня грустные новости. Я ухожу с этого форума.

Мое присутствие здесь создает огромную нагрузку на меня, котороя чем дальше, тем становится все более невыносимой.
На работе меня так не грузят. Программисты, работающие в компаниях, не занимаются техподдержкой и не видят большую часть багрепортов, не говоря уже о фич-реквестах. Для этого есть специальные люди, которые все это фильтруют, назначают приоритеты, и сообщают программистам только о самых важных задачах и только маленькими порциями. В противном случае программисты сначала впадут в депрессию, а потом постепенно поувольняются.
А что мы имеем в случае меня и ST? Представьте альпиниста, который лезет на Эверест. В этот момент ему звонит жена по мобильнику: "Дорогой, в доме хлеб кончился, ты не мог бы на обратном пути заскочить в магазин?". И пока он лезет на очередной Эверест, ему таких просьб может прийти с десяток. Что в этом случае сделает альпинист? Правильно - отключит мобильник. Вот именно это я и собираюсь сделать.

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

Что касается разработки ST, то по мере желания и свободного времени, она будет продолжена - не исключено, что даже ускорится.

Всем удачи и до свидания.
Автор: VidelSamogO
Дата сообщения: 18.05.2010 16:34
-=Del=-
Автор: StanFreeWare
Дата сообщения: 18.05.2010 17:01
VidelSamogO
А я воспринимаю данное решение Tulon'а как метод сохранить нервы и наоборот не впадать в депрессию. В проекте накопилось довольно много мелочевки, которую нужно спокойно и внимательно разгрести. Без этого какие могут быть новые фичи - только с преумножением старых багов...
Процесс идет, за последние несколько дней уже сделан 0.9.9pre3 со вторым резаком (сужу по изменениям в дереве исходников (см ссылку в шапке)).
И после этого были исправления, и как раз по душу мелочевки.
Это же самое главное - что процесс идет.
Автор: alpopo
Дата сообщения: 18.05.2010 19:11
VidelSamogO Программа есть и твердо стоит на ногах. Дайте автору возможность помечтать о чем нибудь земном. И еще ...Большое видится на расстоянии... К тому же код открыт и уже другие умельцы могут хоть чего - хоть диссертацию, если с кодом нелады.
Автор: iit512
Дата сообщения: 19.05.2010 00:34
А кто-нибудь из присутствующих может делать сборки? Скажем, из последнего пререлиза?
Автор: U235
Дата сообщения: 19.05.2010 14:27
iit512

scantailor-0.9.9pre3 snapshot Tue, 18 May 2010 20:27:42 +0000
Автор: Dashout
Дата сообщения: 19.05.2010 15:21
U235
Спасибо за ссылку!
Автор: monday2000
Дата сообщения: 19.05.2010 15:27

Цитата:
У меня грустные новости. Я ухожу с этого форума.

Если кому интересно - то моё мнение об этом тут:

http://www.djvu-scan.ru/forum/index.php?topic=48.msg530#msg530
Автор: woodyfon
Дата сообщения: 19.05.2010 17:10
monday, Хватит писать мемуары. Именно мемуары, потому что их никто не читает. Вместо того, чтобы учить других, делайте просто книги. Наступит момент, уверен, что некоторые свои вопросы вы пересмотрите. ST сейчас наиболее удобен для сканообработки. Остальные методики хороши, но очень сложны и запутанны, Так зачем усложнять, если 80% всех книг можно сделать с помощью одного лишь ST c отличным результатом качества.
Автор: cnf
Дата сообщения: 19.05.2010 17:31
woodyfon
Он не пересмотрит. Он уже во многих темах наследил, включая эту. В разделе Флейм даже тема есть: Проблема monday2000
Автор: iit512
Дата сообщения: 20.05.2010 03:11

Цитата:
scantailor-0.9.9pre3 snapshot Tue, 18 May 2010 20:27:42 +0000

Огромное спасибо!!

Добавлено:
scantailor-0.9.9pre3
Не сохраняет перемещения резака, проекты лишь частично совместимы с предыдущей сборкой. Стер, откатился на pre2.
Автор: U235
Дата сообщения: 21.05.2010 01:52
iit512

Цитата:
Не сохраняет перемещения резака

snapshot Thu, 20 May 2010 19:23:46
исправлено.
Автор: kvesda
Дата сообщения: 22.05.2010 21:35
Делал книгу на сканах после OpticBook3600 - на них "отгрызков" нет. На этапе "Разрезка страниц" на автомате - все прекрасно. Решил вручную переключиться с "Целой страницы" на "С огрызком" - ожидал, что проставятся 2 резака по краям скана - т.к. скан без огрызка страницы, целый. Но... В общем, так и не дождался окончания работы - процессор загружен - идут расчеты, но по-видимому прогу сбило с толку то, что скан - целая страница, без изгиба и части другой страницы. Через полчаса просто остановил работу...
Конечно, не тот тип разрезки я пытался применить к скану - это было тестирование новой сборки программы.
Tulon, надеюсь мое сообщение будет Вам полезно.
На всякий случай выкладываю архив с 2-мя разными сканами - на 1-м - разворот - все прекрасно, на 2-м - целая страница - разрезка для огрызка уходит в штопор и не выходит из него. Думаю, что это будет на любом целом скане...
http://www.onlinedisk.ru/file/438862/
Tulon - спасабо за чистку пятен - прекрасно работает!!!

Страницы: 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061

Предыдущая тема: CmCkA v4


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