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

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

Модерирует : 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

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

gyra

Moderator
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Предыдущие темы: 1 часть | 2 часть | 3 часть

ScanKromsator

Знаменитый Кромсатор для обработки получаемых при сканировании изображений страниц.  
Автор: bolega
ScanKromsator в Википедии: http://ru.wikipedia.org/wiki/ScanKromsator
 
Обсуждение создания e-книг: Электронные книги: сканирование, обработка, сборка
 
 
Текущая версия программы: ScanKromsator v6.71 Подключаемые утилиты и их настройка.
Предыдущая стабильная версия: ScanKromsator 6.00.5  Устаревшие версии: Подробнее...
 

Новое в 6-й версии
Изменения в версии (5.92) + описание нового порядка обработки (с "финализацией" файлов)
Учебный пример от bolega по использованию зон
Хелп v1.0 для Кромсатора. Есть в PDF (368 КБ)
 
Подборка ответов bolega про работу ScanKromsator (версия 1.0.2 с закладками и сносками), 2016 г.
ScanKromsator. Хрестоматия 2.1. (версия от 25.12.2018)    Включённые в т.ч. материалы: Подробнее...
 

Видеоуроки про ScanKromsator
 
Видео от bolega:
  Обработка зон. Часть 1. Версия с таймлайнами на youtube
    Как правильно обрабатывать зоны с фоном (чистка фона страниц в иллюстрациях).

  Обработка зон. Часть 2. Версия с таймлайнами на youtube
    Раскрашенные зоны, переобработка зон, габариты страниц, ребинаризация, удаление спеклов, малоцветные зоны и создание djvu.
 

Видеоролики других авторов: Подробнее...
 


ВАЖНО ! Выкладывайте субтаск своего задания, когда задаёте вопрос о работе SK.
Инструкция по созданию субтаска в следующей строке!

Что делать, если ScanKromsator не делает то, что хотелось бы...
И ещё bolega о том же самом... и, наконец, от него же ОКОНЧАТЕЛЬНОЕ РЕШЕНИЕ.

Всего записей: 7932 | Зарегистр. 18-02-2006 | Отправлено: 10:34 14-11-2018 | Исправлено: shch_vg, 18:02 14-10-2021
TelecomUral

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

Цитата:
А Вы не обратили внимание, что при перемещении мыши по скану (без щелчка!) вид курсора меняется при прохождении через резак?

"А вы ещё не попробовали навести мышку на четыре резака одновременно?"
Один, первый, режим - считывание места мышки и реакция вида курсора. Совершенно иной режим - отправка от мышки новых ее координат тому объекту, который в первом режиме вероятно даже не опрашивался о текущей его координате.
 

Цитата:
Что мешает при попадании мыши в дельта-окрестность точки пересечения резаков изменению вида курсора с одновременным переходом в возможный режим перетаскивания/ поворачивания области внутри резаков?

Всё это, повторяю, гадание на кофейной гуще. И, наверное, радости bolega не добавляет.
 

Цитата:
Насколько я понимаю концепцию

Вот уже и варианты пошли Я о таком и не думал. В голове крутилась картинка обычного текстового блока. Но ваш пример актуальнее, наверное.

Всего записей: 1553 | Зарегистр. 15-07-2010 | Отправлено: 08:02 09-02-2021
shch_vg

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

Цитата:
"А вы ещё не попробовали навести мышку на четыре резака одновременно?"  
Один, первый, режим - считывание места мышки и реакция вида курсора. Совершенно иной режим - отправка от мышки новых ее координат тому объекту, который в первом режиме вероятно даже не опрашивался о текущей его координате.

Не очень понял смысл этого абзаца.
Пример - перемещение одного резака.
Сначала при попадании курсора на резак меняется его вид.
При нажатии и удерживании ЛК мыши перетаскивается резак в новое положение.
Т.е. в этом процессе фиксируются два момента:
1. координаты курсора при попадании на резак
2. координаты курсора при отпускании ЛКМ.
Разность этих координат позволяет вычислить новое положение резака.
То же самое происходит в приведенном мною варианте, но уже относительно области внутри резаков.
Сначала получаются координаты любого угла этой области.
Затем после нажатия и удержания ЛКМ курсор перемещается в новое положение.
При отпускании ЛКМ фиксируются новые координаты перетаскиваемого угла.
Далее простая арифметика позволяет вычислить новое местоположение всех резаков.
 
Другой вопрос: можно ли это реализовать, следуя алгоритму программы?

Всего записей: 6544 | Зарегистр. 14-01-2005 | Отправлено: 14:49 09-02-2021
TelecomUral

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

Цитата:
1. координаты курсора при попадании на резак
2. координаты курсора при отпускании ЛКМ.
Разность этих координат позволяет вычислить новое положение резака.

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

Всего записей: 1553 | Зарегистр. 15-07-2010 | Отправлено: 15:15 09-02-2021
shch_vg

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

Цитата:
но это ж очевидно, что при нажатии ЛКМ и последующем перемещении мыши происходит масса обработок изображения (рендеринг на лету). Вы же видите, что линия резака не статична.

При чем здесь резак?
Я упоминал только координаты курсора.
Насколько я помню из моей допенсионной программистской деятельности можно определять местоположение КУРСОРА, а все эти рендеринги это работа программы по вычислению текущего местоположения резака, используя текущие координаты курсора.

Всего записей: 6544 | Зарегистр. 14-01-2005 | Отправлено: 15:57 09-02-2021 | Исправлено: shch_vg, 16:02 09-02-2021
TelecomUral

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

Цитата:
При чем здесь резак?

как причем? Вам надо визуально резак переместить в новое место. Вы от рендеринга не можете избавиться как от ненужной дополнительной вещи в процессе. Вам необходимо двигать мышь и отрисовывать резак над сканом. Ветка, отвечающая за рендеринг, вероятно, и блокирует возможность одновременно рулить несколькими резаками. Это же целые идеологии сейчас, все эти среды разработки, QT и прочие wxWidgets-ы. Создан какой-нибудь объект, с определенными характеристиками. Создана комбинация объектов, она помещена на "рабочий стол программы", MV СК. Все взаимосвязано, стройно, масштабируется внутри окошка быстро.  А вы предлагаете воткнуть туда "лом" прямой обработки движений мыши Скорее всего это просто технически невозможно.
Вот у меня на днях была задача по работе: ввели новую услугу коммерсанты. Анализ номера звонящего потребовался для выставления тарифа. Так мне пришлось написать новую функцию обработки услуг на самом нижнем уровне биллинга, потому что номер звонящего в принципе ранее не передавался с верхнего уровня в базу данных. Ни в запросе, ни в справочнике, ни в подзапросах, ни в экспортируемой таблице его не было. Пришлось раскрутить всё что до меня наваяли за 14 лет, изменить связки всей "пирамиды" запросов к таблицам, добавив в параметры "номер вызывающего абонента". И до кучи справочники обновить. И ещё пока неизвестно, а не ошибся ли я в какой-нибудь мелочи
А с графикой скорее всего все на-амного сложнее. Все эти сплайны и z-порядки, известные еще в 80е годы - цветочки.

Всего записей: 1553 | Зарегистр. 15-07-2010 | Отправлено: 16:17 09-02-2021
shch_vg

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

Цитата:
 А вы предлагаете воткнуть туда "лом" прямой обработки движений мыши

Не "прямой обработки движений мыши", а обработки текущего положения курсора.
Эти координаты курсора (по горизонтали и по вертикали) постоянно высвечиваются в СК (слева внизу нижние два числа) при перемещении курсора по скану в главном окне.
Причем съём этих координат происходит не постоянно, а дискретно.
А все эти, как Вы выразились "целые идеологии сейчас, все эти среды разработки, QT и прочие wxWidgets-ы" тоже начинают работу со съёма текущих координат курсора.

Всего записей: 6544 | Зарегистр. 14-01-2005 | Отправлено: 17:08 09-02-2021 | Исправлено: shch_vg, 17:30 09-02-2021
TelecomUral

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

Цитата:
тоже начинают работу со съёма текущих координат курсора

да ёпрст же...
начинают. не спорю.
Вы на шаг вперёд собираетесь начать думать? Сняли координаты, ок, следующий шаг какой? Ну, предположительно, конечно.  
Следующий шаг в уже построенной системе окна - ? Определить, на какой объект мышь навелась.
Затем что?
Разрешить объекту отработать наведение на него.
Либо сделать какое-то иное действие. Прокукарекать в динамик. Вид курсора поменять. Неважно.
Событие -> реакция.
Так вот когда резак подсвечен, а ЛКМ нажата, реакция на это "отрисовывать его непрерывно в совокупности с подлежащим сканом, пока ЛКМ нажата". И иной обработки не предусмотрено. Сейчас.
Чтобы активировать другой резак для рендеринга, сначала надо отпустить прежний. Именно об этом я написал выше - "уже попробовали вы навести мышь на все четыре резака сразу".
Там два резака сразу можно двигать, параллельных. Почему не четыре? Потому что резак двигается в одной координате, полоске у края, ее ж тоже рисовать надо, когда там головка ездит. Нажимаете ЛКМ - резак отрисовывается согласно перемещению мыши по той ее координате, которая конгруэнтна координате перемещения резака. Визуализация объекта так сделана. Сместилась мышь по X влево - рендерится вертикальный резак и скан повдоль координаты Y. Объект "одномерен" если зажата ЛКМ. Во всяком случае, я это так предполагаю. (Я замечал, что если резак наклонить, то его отрисовка резко замедляется. Видно, как  перерисовываются подлежащие пиксели.)
Все, давайте закончим.

Всего записей: 1553 | Зарегистр. 15-07-2010 | Отправлено: 17:37 09-02-2021
shch_vg

Gold Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
TelecomUral
Прошу прощения, но не стал читать такое подробное описание.
Объясните мне без всякого рендеринга (можно в ЛЯ), как происходит высветка резаков при загрузке уже имеющегося задания.
Я по простоте душевной считал, что информация о резаках записана в файле sk.ini.
Аналогично после перемещения резака в новое положение его координаты перезаписывают старые в том же файле задания.
Вот и все.
 
А поскольку информация о резаках есть в файле задания, то, сместив один резак на несколько пикселей, можно связанный с ним сместить на то же количество пикселей в ту же сторону.
Это же распространяется и на перемещение угла области внутри резаков, только в этом случае можно смещать и два других резака.

Всего записей: 6544 | Зарегистр. 14-01-2005 | Отправлено: 17:59 09-02-2021 | Исправлено: shch_vg, 18:13 09-02-2021
TelecomUral

Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
shch_vg
до перезаписи в sk.ini вы упускаете целый мир своей жизни: вы следите глазами за резаком на экране. И сопоставляете то, что нарисовано на скане, с перемещающимся резаком. А уж потом фиксируете ini.

Всего записей: 1553 | Зарегистр. 15-07-2010 | Отправлено: 18:09 09-02-2021
shch_vg

Gold Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
TelecomUral
Я согласен, что это будет замедлять процесс перерисовки резаков, но в принципе-то это возможно.
 
Уже сейчас, таская один резак при нажатом CTRL, двигается и второй, но особой задержки в перерисовке я не замечаю.

Всего записей: 6544 | Зарегистр. 14-01-2005 | Отправлено: 18:16 09-02-2021 | Исправлено: shch_vg, 18:20 09-02-2021
bearjrgm



Advanced Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
всем привет, кто чем пользуется для выпрямления строк? Можно это как-то соединить с кромсатором?

Всего записей: 750 | Зарегистр. 03-07-2005 | Отправлено: 16:33 15-02-2021
daa2013

Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Подскажите, как обработать в СК, плиз.
 
Есть сканы, где иллюстрации колоризованы. Т.е. это 256 оттенков синего (фиолетового).  
 

 
Вопрос №1.  
Если бы я посканил их в сером (а с высокой вероятностью я мог быть вынужден это сделать), то как 256 оттенков серого перевести в 256 оттенков синего (или любого другого заданного цвета) в СканКромсаторе ?  
 
Вопрос №2.  
Мне удалось посканить в цвете, но полезли всякие паразитные цвета (желтые, зеленые и всякие другие грязные пиксели). Для достижения цветовой чистоты я бы с радостью перевел иллюстрации сначала в серый, а потом в заданный цвет (желательно по цветопробе на темном участке).  Но как это сделать ?
Может, где-нибудь существует прямая конвертация в 256 оттенков заданного цвета, а не просто в серое ?
 
 
Я когда-то делал что-то похожее в Шопе. Но это было давно и я плохо помню как. Разберусь, конечно.
Но был бы рад, если бы мне также дали ссылку на вменяемое описание этого процесса в пакетном режиме, пусть даже и не в СК.

Всего записей: 734 | Зарегистр. 13-06-2013 | Отправлено: 21:27 04-03-2021 | Исправлено: daa2013, 01:12 05-03-2021
daa2013

Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
bolega
1. Мне кажется, что набор цветов по кнопке Color   имеет смысл автоматически передавать и в окно MW, и оут-задание.  
 
2. Если это невозможно или нецелесообразно, можно ли туда (в Color) прикрутить команду "сохранить как палитру", чтобы не идти на закладку постеризации и не перенабирать цвета  ?

Всего записей: 734 | Зарегистр. 13-06-2013 | Отправлено: 04:04 05-03-2021
TelecomUral

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

Цитата:
Для достижения цветовой чистоты  

а правда нужно это? Я когда-то проводил тесты, печатал, и особо паразитные цвета не мешают.
Как я понимаю, чтобы выловить чистый тон, надо как-то математически выделять средний цвет, по осям разбирать пространство. А если реальная бумага имеет неоднородность, то пойдет искажение. ИМХО, не стоит овчинка выделки. Либо я не сталкивался.

Всего записей: 1553 | Зарегистр. 15-07-2010 | Отправлено: 11:45 05-03-2021
slava_kry

Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
daa2013
Сделайте картинки ч/б диффузионным растром, а потом окрасьте любым цветом...
(т.е. полутону соответствует плотность пиксельных точек)
СК это может, насколько помню.
 
Только дежавю не любит такие выкрутасы и плохо их сжимает.

----------
Вы выказываете себя праведниками пред людьми, но Бог знает сердца ваши, ибо что высоко у людей, то мерзость пред Богом

Всего записей: 4209 | Зарегистр. 18-09-2003 | Отправлено: 14:47 05-03-2021
bolega

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

Цитата:
Есть сканы, где иллюстрации колоризованы. Т.е. это 256 оттенков синего (фиолетового).  

Добавил в СК такую фичу, т.е. colorize серое изображение.
RV, панель image adjustments, закладка hue/saturation. В colors добавил режим colorize. Подбор цвета/яркости интерактивный с помощью preview
 
Добавлено:

Цитата:
Если это невозможно или нецелесообразно, можно ли туда (в Color) прикрутить команду "сохранить как палитру",

А color - это кнопка select clean color? Так там есть возможность добавлять цвета в существующую палитру. Правда, палитра уже должна быть создана, хотя бы пустая, ее имя нужно задать в posterization. Но это мне кажется не проблема.
Впрочем, можно добавить возможность создавать новую палитру прямо в диалоге задания цвета. Сейчас там только выбор существующих палитр.

Всего записей: 3936 | Зарегистр. 09-09-2002 | Отправлено: 22:24 05-03-2021 | Исправлено: bolega, 22:43 05-03-2021
bolega

Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Новая версия 6.71
https://workupload.com/file/MWMY8Q5KuK4

Всего записей: 3936 | Зарегистр. 09-09-2002 | Отправлено: 21:06 06-03-2021
Benoni



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
bolega
Большое спасибо!

Всего записей: 1600 | Зарегистр. 15-06-2006 | Отправлено: 23:47 07-03-2021
qwaxym



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

Цитата:
Мне удалось посканить в цвете, но полезли всякие паразитные цвета (желтые, зеленые и всякие другие грязные пиксели). Для достижения цветовой чистоты я бы с радостью перевел иллюстрации сначала в серый, а потом в заданный цвет (желательно по цветопробе на темном участке).  Но как это сделать ?
Может, где-нибудь существует прямая конвертация в 256 оттенков заданного цвета, а не просто в серое ?

Я делал просто: выделяете pic зону, в настройках зоны color ставите bitonal, а в настройке paint выбираете нужный  цвет.  

Всего записей: 37 | Зарегистр. 19-12-2007 | Отправлено: 17:51 09-03-2021 | Исправлено: qwaxym, 19:40 13-03-2021
niccolo

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

Цитата:
Новая версия 6.71

 
bolega - спасибо большое. По первому ощущению показалась чуть медленнее.... 5.96 и 6.0х
 

Всего записей: 2854 | Зарегистр. 17-09-2001 | Отправлено: 19:34 09-03-2021
Открыть новую тему     Написать ответ в эту тему

Страницы: 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

Компьютерный форум Ru.Board » Компьютеры » Программы » ScanKromsator | СканКромсатор (Часть 4)


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

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

BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

Рейтинг.ru