Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Мультимедиа в Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 10.08.2016, 06:32   #31
Pavia
Лис
Старожил
 
Аватар для Pavia
 
Регистрация: 18.09.2015
Сообщений: 2,409
По умолчанию

Lolidze
Да долго, зато качественно. Что касается ускорения, то тут много вариантов.
- Усреднение в приделах одного класса, чтобы не перебирать все шаблоны.
- перебор координат строится так чтобы не перебирать все координаты.
- чтобы не запускать тяжёлый классификатор делают простую проверку чтобы отсечть заране не подходящие координаты.
- для разных классов перебор идёт по пикселя не пересикающимся.
- сжатие изоброжний.

Заранее отбросить заведомо, то что не нужно проверять. Это достаточно простой и быстрый алгоритм по числу пикселей в квадрате. Раздел выделение Features подраздел интегрирование изображений.
http://www.vision.caltech.edu/html-f...iola04ijcv.pdf

Для быстрой классификации применяют деревья решений, каскадные-классификаторы. Для поиска отличных и непересикающихся пикселей в разных классах применяют ГА и Karhunen-Loeve Transform, который отбирает только те пиксели которые влияют на результат и имеют разное положение в разных классах.

- сжатие и масштабирование. К примеру в предыдущей ссылке с корреляционными НС применялась 3-уровня с разными масштабами.

Мой вам совет больше думайте своей головой. В статьях очень мало нужных слов, и очень много математики которая уводит в ненужные степи.
Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
У дзен программиста программа делает то что он хотел, а не то что он написал .

Последний раз редактировалось Pavia; 10.08.2016 в 07:37.
Pavia вне форума Ответить с цитированием
Старый 10.08.2016, 21:54   #32
Lolidze
Пользователь
 
Регистрация: 05.06.2016
Сообщений: 48
По умолчанию

что-то как-то странно, на винде тратится 2,5 сек на 1 букву, а на линуксе (через вайн) 1,5 ... как такое возможно 0_о

а за советы спасибо большое
Lolidze вне форума Ответить с цитированием
Старый 10.08.2016, 21:58   #33
Alar
Александр
Администратор
 
Аватар для Alar
 
Регистрация: 28.10.2006
Сообщений: 17,501
По умолчанию

даже стало интересно, а если просто на куликсе переписать, быстрее будет?

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

с любопытсвом слежу за темой, результат работы будете выкладывать на форум?
ну хоть в какой то урезанной бетта версии, чтобы можно было скомпилить и порадоваться? )
Alar вне форума Ответить с цитированием
Старый 10.08.2016, 22:57   #34
Alex11223
Старожил
 
Аватар для Alex11223
 
Регистрация: 12.01.2011
Сообщений: 19,500
По умолчанию

Так вирусы и тормозящие антивирусы никто не заставляет ставить.

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

Цитата:
Сообщение от Alar Посмотреть сообщение
скомпилить
Дельфи? На линуксе?
Ушел с форума, https://www.programmersforum.rocks, alex.pantec@gmail.com, https://github.com/AlexP11223
ЛС отключены Аларом.
Alex11223 вне форума Ответить с цитированием
Старый 10.08.2016, 23:35   #35
Lolidze
Пользователь
 
Регистрация: 05.06.2016
Сообщений: 48
По умолчанию

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

"Дельфи? На линуксе?"
есть как таковой лазарь, но он медленнее

"результат работы будете выкладывать на форум?"
да, конечно ! но мнеб закончить ))
Lolidze вне форума Ответить с цитированием
Старый 10.08.2016, 23:46   #36
Lolidze
Пользователь
 
Регистрация: 05.06.2016
Сообщений: 48
По умолчанию

"перебор координат строится так чтобы не перебирать все координаты. "
мне кажется, что убрать получится не более 3-4 подходов в цикле (в начала и в конце) тип проверю откуда начинается буква (где больше черных пикселей) и уберу ненужные подходы, так ?
Lolidze вне форума Ответить с цитированием
Старый 12.08.2016, 23:19   #37
Lolidze
Пользователь
 
Регистрация: 05.06.2016
Сообщений: 48
По умолчанию

Цитата:
Сообщение от Lolidze Посмотреть сообщение
тратится примерно 1-3 сек. Тобишь, 3*6=18 сек нужно на 1 капчу ..\\
чет не особо верно я подсчитал, на 2 буквы тратится 28 секунд... имею~230 эталонов ... хмм. епт, 5 минут будет занимать 1 капча )) даже если я сокрачу 60-70% работы , то все равно будет много ... не, полный перебор походу не подойдет, надо чтот другое придумать...
Lolidze вне форума Ответить с цитированием
Старый 13.08.2016, 03:09   #38
Alar
Александр
Администратор
 
Аватар для Alar
 
Регистрация: 28.10.2006
Сообщений: 17,501
По умолчанию

Цитата:
Сообщение от Lolidze Посмотреть сообщение
чет не особо верно я подсчитал, на 2 буквы тратится 28 секунд... имею~230 эталонов ... хмм. епт, 5 минут будет занимать 1 капча )) даже если я сокрачу 60-70% работы , то все равно будет много ... не, полный перебор походу не подойдет, надо чтот другое придумать...
если цель наверняка подобрать, то почему бы нет, сначала цель, потом оптимизация.
Alar вне форума Ответить с цитированием
Старый 13.08.2016, 08:31   #39
Pavia
Лис
Старожил
 
Аватар для Pavia
 
Регистрация: 18.09.2015
Сообщений: 2,409
По умолчанию

Цитата:
Сообщение от Lolidze Посмотреть сообщение
"перебор координат строится так чтобы не перебирать все координаты. "
мне кажется, что убрать получится не более 3-4 подходов в цикле (в начала и в конце) тип проверю откуда начинается буква (где больше черных пикселей) и уберу ненужные подходы, так ?
Ну давай посчитаем.
70х200 ваша каптча. Размер символов 40х40
70-40=30
70/30=2.3 раза!

Но я говорил не об этом. Когда вы перебираете по x, y и видите что процент совпадения достаточно высок вы можете сдвинуться не на 1 по x, а сразу на ширину глифа символа.
Тут вы получите ускорение ещё ~ в 2 раза.

Уменьшение картинки в 2 раза сокращает перебор в 4 раза. А тут можно в 4 раз уменьшить и получить 16 раз ускорение.

Каскады и деревья решений вам дадут ускорения ещё в 100-1000 раз.
Но чтобы их реализовать вам придётся сделать эталонный перебор без них. Иначе вы не узнаете правильно у вас программа работает или нет.
Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
У дзен программиста программа делает то что он хотел, а не то что он написал .

Последний раз редактировалось Pavia; 13.08.2016 в 08:54.
Pavia вне форума Ответить с цитированием
Старый 13.08.2016, 09:09   #40
Pavia
Лис
Старожил
 
Аватар для Pavia
 
Регистрация: 18.09.2015
Сообщений: 2,409
По умолчанию


Пока что проблемы с метрикой-сравнения поэтому код выложу как решу проблему.
Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
У дзен программиста программа делает то что он хотел, а не то что он написал .
Pavia вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Переадресация в капче Comkina PHP 5 08.06.2015 19:33
Распознание капчи Arsenx777 Общие вопросы Delphi 36 26.01.2014 21:20
Автоматический ввод капчи kotzzz Работа с сетью в Delphi 0 03.09.2011 19:12
Распознание ASCII капчи Blade Общие вопросы C/C++ 1 04.05.2010 17:09