Технический форум по робототехнике.
pt177 » 13 ноя 2010, 11:59
Здравствуйте.
Задача поставлена следующим образом.
Дано: Колесо игорной рулетки, шарик (белый пластик).
Требуется: Создать устройство, рассчитывающее и передающее в ПК под управлением Windows номер, в который попал шарик.
Условия:
1. Устройство должно работать с помощью камеры.
2. Камера устанавливается сверху-сбоку колесе (приблизительно 100 см в высоту, 50 см вбок).
3. На колесо не допускается установка каких-либо устройств, датчиков и т.д.
4. Цена конечного оборудования (камера, плата в/з и пр.) имеет значение.
5. Критически важна 100% безошибочность определения номера.
Что упрощает задачу.
1. У шарика всего 4 состояния.
а) Круговое движение по борту.
б) Нестабильное поведение - сход с борта, скачки в любых направлениях и т.д.
в) Круговое движение в ячейке номера. Возможны незначительные колебания в рамках ячейки, хотя как правило, за счет ц/б силы, шарик
лежит во внешнем углу ячейки.
г) Отсутствия шарика на рулетке. Нет игры, вылет.
2. Номера на всех колесах располагаются одинаково.
3. Цвет номеров строго чередуется ч-б-ч...
4. Номер 0 (Zero) зеленого цвета.
Цены, сроки, условия оплаты, дополнительные вопросы принимаются здесь же, в этом топике.
С уважением,
Сергей.
Последний раз редактировалось
pt177 15 ноя 2010, 11:19, всего редактировалось 3 раз(а).
AndreiSk » 13 ноя 2010, 15:00
Какой бюджет?
Какие сроки?
Условия оплаты?
EdGull » 13 ноя 2010, 15:09
и город не помешал бы?
AndreiSk » 13 ноя 2010, 15:18
Примерный расклад такой будет:
a) индустриальная камера+объектив, $1500
б) пк, ну без конкретной конфигурации, но хороший ПК будет $1000
в) поворотно-наклонная система (pan/tilt), чтобы наводил камеру на объект съемки, $500
г) 1 месяц работы программиста $5000
$1500+$1000+$500+$5000=$8000=250тр.
Заказ материалов=1-2 месяца (зависит от почты/наличия)
Работа 1 месяц (грубо), итого 2- месяца
Michael_K » 13 ноя 2010, 15:23
Плюс свет-тестирование-калибровка-отладка на месте.
Ну и я бы не особо надеялся на полное отсутствие стороннего платного софта.
pt177 » 13 ноя 2010, 16:05
Спасибо за быстрый отклик.
Бюджет, сроки и условия оплаты хотелось бы услышать от претендентов.
AndreiSk, спасибо за участие, но за такие деньги можно ракету в космос запустить. Вместе с программистом за $5000
EdGull, Воронеж.
Michael_K, предполагается, что калибровка и тестирование будет проводиться при каждой установке устройства.
С уважением,
Сергей.
=DeaD= » 13 ноя 2010, 16:11
1. Прочитал, склоняюсь к правильности оценки бюджета тов. AndreiSk
2. "Критически важна 100% безошибочность определения номера" - если бы была только эта задача, то всё упрощается, основные проблемы в объявленной задаче идут от необходимости в процессе определять относительные и абсолютные скорости шарика. Это автоматически влечёт супер-пупер камеру, умение работать с ней, быструю обработку информации и т.п. Кстати, как часто надо знать эту вашу скорость шарика?
PS: Ракета в космос выйдет дороже
pt177 » 13 ноя 2010, 16:30
Господа, боюсь, я что-то не то сказал насчет скоростей шарика
Нам требуется приблизительно знать с какой скоростью движется шарик по борту рулетки, чтобы в определенный момент выбросить флаг "Ставок больше нет". Иными словами, нам не надо знать скорость в числах.
Что упрощает задачу.
1. У шарика всего 4 состояния.
а) Круговое движение по борту.
б) Нестабильное поведение - сход с борта, скачки в любых направлениях и т.д.
в) Круговое движение в ячейке номера. Возможны незначительные колебания в рамках ячейки, хотя как правило, за счет ц/б силы, шарик
лежит во внешнем углу ячейки.
г) Отсутствия шарика на рулетке. Нет игры, вылет.
2. Номера на всех колесах располагаются одинаково.
3. Цвет номеров строго чередуется ч-б-ч...
4. Номер 0 (Zero) зеленого цвета.
С уважением,
Сергей.
=DeaD= » 13 ноя 2010, 16:41
ИМХО нет большой разницы между точным определением и приблизительным. Вопрос в вероятности ошибки. Т.е. насколько критично, что система не выкинет флаг до полной остановки - я так полагаю критично.
flyroman » 13 ноя 2010, 17:14
Если не секрет, вы хотите заменить крупье?
Michael_K » 13 ноя 2010, 19:16
=DeaD= писал(а):1. Прочитал, склоняюсь к правильности оценки бюджета тов. AndreiSk
Бюджета - возможно. Сроков - пожалуй, слишком оптимистично.
pt177 писал(а):Michael_K, предполагается, что калибровка и тестирование будет проводиться при каждой установке устройства.
Это понятно - само собой. Я имел в виду, что программисту нужно обеспечить доступ к "боевым" условиям, иначе он вам "натеоретизирует"... То есть буквально поставить рядом с программистом живого крупье, смоделировать "реальное" освещение и тому подобные штуки, консультировать по необходимости...
P.S. Бывает так - вроде сделали "машинное зрение", а на месте оказалось, что реальные железки в цеху немножко "из печки" - светятся в инфракрасе, как фонари, заразы... Не говоря уже о том, что солнышко приходится закрывать, поместив все это в "ящик" и т.п.
Виталий » 13 ноя 2010, 21:53
Бюджет занижен, а сроки просто нереальные.
Это же блин "компьютерное зрение" для казино. Там все моргает, светится.
Виктор Казаринов » 13 ноя 2010, 22:16
Да, 5 килобаксов да еще для 100% распознаваемости - невероятно мало. Нужно выдавать более реальное ТЗ. Где вы видели КПД двигателя 100% или надежность изделий 100%? А распознавание блестящего шарика (если не ошибаюсь) в очень трудно предсказуемой световой обстановке 100% - это и есть самое нереальное. Это - гипотетический предел.
pt177 » 13 ноя 2010, 23:01
Благодарю всех, кто присоединился к дискуссии.
Давайте проясним некоторые моменты, используя фото колеса рулетки.
1. Шарик не блестящий.
2. На радиусе, по которому движется шарик всего 4 цвета: зеленый, красный, черный, белый (шарик).
3. Все блики на колесе находятся в определенных местах.
4. Области слежения за шариком может указывать оператор при калибровке на месте, учитывая блики и т.п.
5. Если в течение 1 секунды шарик лежит в номере, он больше никуда оттуда не денется.
Хорошо, допустим, мы решили отказаться от замера скорости шарика. Остается только задача определения номера, в который попал шарик.
Продолжаем диспут
С уважением,
Сергей.
- Вложения
-
=DeaD= » 13 ноя 2010, 23:11
Если освещение стабилизировано в целом и бликов левых нет, тогда всё достаточно просто (безотносительно бюджета) - чисто по алгоритму - снимаем с шагом 1мм по повороту все виды рулетки, строим индексную часть (т.е. какой-то участок небольшой берем с 4 подряд номерами в него попадающими и по нему будем определять положение барабана).
Далее как найти шарик - по индексу извлекаем изображение в этом положении, вычитаем из текущего кадра с учетом небольшого возможно изменения освещения и получаем явное пятно шарика
Ну и останется привязка шарика к номеру - это уже либо пофантазировать + математика, либо вручную разметить сектор для всех положений барабана для 1 номера.
PS: Это разумеется решение "в лоб", но вроде должно прокатить.