roboforum.ru

Технический форум по робототехнике.

Recognition (Yeremeyev method)

Re: Recognition (Yeremeyev method)

Сообщение EDV » 21 янв 2009, 11:51

Виталий писал(а):Лучше бы описание алгоритма расширили.

Добавлено спустя 40 минут 7 секунд:
И демонстрашка не качается.

Кстати недавно про ваш метод вспоминал в связи с решением задачи по взлому одной капчи. Интересно было бы узнать подробности работы метода, очень уж он мне приглянулся своей простотой. Думаю там есть куда его развивать, только вот описание получить бы.


Описание алгоритма здесь (на английском): http://edv-detail.narod.ru/AVM_main.html

Посмотрите демонстрационную версию, прикиньте, подходит ли алгоритм AVM для вашей задачи. Если подходит, то я подготовлю новые AVM SDK v0.5 и подробное описание к их использованию (на русском).

Выложил AVM Win32 Demo на обменный сервер, можете попробовать скачать отсюда

8)
Аватара пользователя
EDV
 
Сообщения: 1016
Зарегистрирован: 06 июн 2007, 15:19
Откуда: Украина, Лисичанск
ФИО: Дмитрий Еремеев

Re: Recognition (Yeremeyev method)

Сообщение Виталий » 21 янв 2009, 13:40

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

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

Можно писать на vkle на маил ру, ну или здесь.
Все новости о моих проектах http://savethebest.ru
Аватара пользователя
Виталий
 
Сообщения: 2114
Зарегистрирован: 08 окт 2004, 16:43
Откуда: St. Petersburg
Skype: quark-bot
ФИО: Клебан Виталий

Re: Recognition (Yeremeyev method)

Сообщение EDV » 21 янв 2009, 15:02

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


Хотелось бы взглянуть на результаты, есть какие-нибудь демо-версии, или AVI с результатами обработки?
Аватара пользователя
EDV
 
Сообщения: 1016
Зарегистрирован: 06 июн 2007, 15:19
Откуда: Украина, Лисичанск
ФИО: Дмитрий Еремеев

Re: Recognition (Yeremeyev method)

Сообщение Виталий » 21 янв 2009, 15:50

Единственное что осталось от проекта со зрением - золотая медаль ВДНХ за робота следующего за человеком. Может конечно удастся найти AVI но не факт.
Кстати задача уже найдена - поиск порнографии в базах изображений.
Все новости о моих проектах http://savethebest.ru
Аватара пользователя
Виталий
 
Сообщения: 2114
Зарегистрирован: 08 окт 2004, 16:43
Откуда: St. Petersburg
Skype: quark-bot
ФИО: Клебан Виталий

Re: Recognition (Yeremeyev method)

Сообщение EDV » 21 янв 2009, 16:13

С поиском порнографии всё гораздо проще, там не обязательно распознавать изображение, достаточно найти «цвет» кожи, используя для этого гистограмму цвета, потом выяснить, сколько процентов изображения этот цвет занимает, и по превышению порогового значения (ну очень много голого тела в кадре) определить что это - порнография.

Короче, к AVM это никакого отношения не имеет :)
Аватара пользователя
EDV
 
Сообщения: 1016
Зарегистрирован: 06 июн 2007, 15:19
Откуда: Украина, Лисичанск
ФИО: Дмитрий Еремеев

Re: Recognition (Yeremeyev method)

Сообщение Виталий » 21 янв 2009, 16:19

Вы неправы. Есть коллекции фотографий где очень много голого тела (фотосессии моделей), но порнографии там нет.
Все новости о моих проектах http://savethebest.ru
Аватара пользователя
Виталий
 
Сообщения: 2114
Зарегистрирован: 08 окт 2004, 16:43
Откуда: St. Petersburg
Skype: quark-bot
ФИО: Клебан Виталий

Re: Recognition (Yeremeyev method)

Сообщение =DeaD= » 21 янв 2009, 16:22

Ну всё, ща тут будет обсуждение поисковых признаков порнографии :ROFL:

Добавлено спустя 37 секунд:
А что, хоть трафику отгребём по поисковым словам :crazy: :ROFL:
Проект [[Open Robotics]] - Универсальные модули для построения роботов
Аватара пользователя
=DeaD=
 
Сообщения: 24218
Зарегистрирован: 06 окт 2004, 18:01
Откуда: Ебург
прог. языки: C++ / PHP / 1C
ФИО: Антон Ботов

Re: Recognition (Yeremeyev method)

Сообщение Виталий » 21 янв 2009, 17:11

Посмотрел демо. Куча ложных срабатываний, а с неконтрастными объектами не работает вообще. Зато быстро =)

Добавлено спустя 8 минут 9 секунд:
Помоему предыдущая версия была лучше.
Все новости о моих проектах http://savethebest.ru
Аватара пользователя
Виталий
 
Сообщения: 2114
Зарегистрирован: 08 окт 2004, 16:43
Откуда: St. Petersburg
Skype: quark-bot
ФИО: Клебан Виталий

Re: Recognition (Yeremeyev method)

Сообщение EDV » 21 янв 2009, 18:02

Да, это недостаток, метод хорошо работает только с контрастными изображениями. Но вы не забывайте, что на вход AVM подаются полутоновые изображения (не цветные), так что контраст - это всё что у него есть, для того что бы правильно распознать объект (попробуйте освещение получше поставить, что бы камера более контрастное изображение видела).

В прошлой версии вы могли обучить AVM к примеру на своё лицо, но по истечении какого то времени, за счёт самообучения, AVM могла обучиться «лишнему» и начать распознавать всё что угодно, но только не лицо. В этой версии основной упор делался на стабильную работу AVM в течении продолжительного времени.

Добавлено спустя 9 минут 59 секунд:
Вот что мне нравится в AVM, так это то, что быстродействие (время поиска) при увеличении разрешения входного изображения, ухудшается, но не катастрофически. У меня дома Web-камера Logitech Fusion, она обеспечивает захват достаточно больших разрешений (типа 900x700 и дальше), и что интересно, на моём процессоре Core 2 Duo E6600, с большими разрешениями можно всё ещё комфортно работать в real-time.

Так вот, я заметил, что AVM может достаточно точно определять положение лица (особенно при большом размере ключевого изображения, тип 160x160), лицом, буквально можно рисовать по экрану (траектория движения).

Потом я пробовал обучать AVM на "рот", типа рот закрыт, рот открыт. Определяло очень успешно, если приделать это к манипулятору мыши, то можно будет буквально перемещать ярлыки рабочего стола, перемещая голову и открывая/закрывая рот (прикольно но не удобно).

Ещё один вариант применения в этом направлении, обучить AVM на открытую ладонь, потом, перемещая ладонь перед web-камерой, рисовать символы (росчерки). За каждым таким "росчерком" можно закрепить определённую реакцию компьютера, и таким образом компьютером можно будет управлять буквально "голыми руками".

Дело в том, что я недавно закончил улучшение алгоритма AVM (я тестировал его на одной и той же видеопоследовательности и оценивал эффективность), и пока ещё и сам не выяснил до конца его возможностей.
Аватара пользователя
EDV
 
Сообщения: 1016
Зарегистрирован: 06 июн 2007, 15:19
Откуда: Украина, Лисичанск
ФИО: Дмитрий Еремеев

Re: Recognition (Yeremeyev method)

Сообщение Виталий » 21 янв 2009, 18:53

Управление рукой уже было давно реализовано. Это же кожа =)
Мне например нравится ваш алгоритм, я вижу что у него есть перспективы, я вижу что вы обошлись без нормировок и почти везде используете целочисленную арифметику и мне это нравится. Поэтому я и предлагаю обсудить варианты улучшения.
Пожалуйста не думайте, что моя цель выторговать алгоритм - я думаю он не очень сложен, судя по результатам.
Все новости о моих проектах http://savethebest.ru
Аватара пользователя
Виталий
 
Сообщения: 2114
Зарегистрирован: 08 окт 2004, 16:43
Откуда: St. Petersburg
Skype: quark-bot
ФИО: Клебан Виталий

Re: Recognition (Yeremeyev method)

Сообщение Виталий » 22 янв 2009, 09:19

Забыл приложить результат.
Изображение

Вот с чем это связано? Маловато перепадов на изображении? Нет по чему сгенерировать ключ? :wink:

Вы пробовали тестировать свой алгоритм на коллекциях?
Все новости о моих проектах http://savethebest.ru
Аватара пользователя
Виталий
 
Сообщения: 2114
Зарегистрирован: 08 окт 2004, 16:43
Откуда: St. Petersburg
Skype: quark-bot
ФИО: Клебан Виталий

Re: Recognition (Yeremeyev method)

Сообщение EDV » 22 янв 2009, 10:18

Я тестировал эффективность AVM на видеопоследовательности RcgTraining4s.avi, она есть в SDK
http://edv-detail.narod.ru/AVM_SDK_v0-4.zip.

Спасибо за участие, я постараюсь проверить работу AVM на подобных примерах в ближайшее время. О результатах обязательно сообщу.

Ну а если на «лицо» обучить, находит?

Что бы обнулить AVM (установить исходное состояние), выберите из главного меню: Recognition\Set key image size
Аватара пользователя
EDV
 
Сообщения: 1016
Зарегистрирован: 06 июн 2007, 15:19
Откуда: Украина, Лисичанск
ФИО: Дмитрий Еремеев

Re: Recognition (Yeremeyev method)

Сообщение Виталий » 22 янв 2009, 11:07

Не очень. Находит, потом сбивается, а потом вовсе теряет.
Все новости о моих проектах http://savethebest.ru
Аватара пользователя
Виталий
 
Сообщения: 2114
Зарегистрирован: 08 окт 2004, 16:43
Откуда: St. Petersburg
Skype: quark-bot
ФИО: Клебан Виталий

Re: Recognition (Yeremeyev method)

Сообщение EDV » 22 янв 2009, 18:35

Виталий писал(а):Забыл приложить результат.
Изображение

Вот с чем это связано? Маловато перепадов на изображении? Нет по чему сгенерировать ключ? :wink:

Вы пробовали тестировать свой алгоритм на коллекциях?


А вот что получилось у меня:

1)
Изображение
2)
Изображение
3)
Изображение
4)
Изображение
5)
Изображение

Согласен, изображения 1, 2, 3 дают сбой, если выставлять границы области обучения чётко по размерам изображений. Но стоит только немного увеличить границы области обучения, и всё начинает работать.

Почему так?

Думаю эти рисунки, просто не достаточно «пестрые» для матричного распознавания, маловато перепадов яркости на единицу площади. Увеличиваем размеры области обучения, и получаем больше перепадов яркости на изучаемой картинке.
Аватара пользователя
EDV
 
Сообщения: 1016
Зарегистрирован: 06 июн 2007, 15:19
Откуда: Украина, Лисичанск
ФИО: Дмитрий Еремеев

Re: Recognition (Yeremeyev method)

Сообщение Виталий » 22 янв 2009, 23:38

Так как вы ключи генерируете-то? В вашем алгоритме есть уязвимое место и оно, как мне кажется в том, что в угоду скорости сильно упрощен алгоритм генерации и распознавания ключа. Необходимо его заменить на адаптивный, зависящий от глубины дерева.
Все новости о моих проектах http://savethebest.ru
Аватара пользователя
Виталий
 
Сообщения: 2114
Зарегистрирован: 08 окт 2004, 16:43
Откуда: St. Petersburg
Skype: quark-bot
ФИО: Клебан Виталий

Пред.След.

Вернуться в Алгоритмы

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 2