|
|
  |
Проект "народной" pick&place машины, optical-recognizing CNC |
|
|
|
Feb 2 2012, 13:22
|
Местный
  
Группа: Свой
Сообщений: 313
Регистрация: 7-01-07
Из: Севастополь
Пользователь №: 24 170

|
Напомнило институт... Я участвовал тогда в работе по созданию сортировочной машины. Надо попытаться вспомнить, как их правильно перевернуть. Если вспомню - напишу. Всплыло из памяти, С.Лем "Эдем" - там описывалось, что лоток с деталями трясся и они непонятным образом укладывались рядами. Вот так и было, микровибрация и сброс в накопитель лежащего кверх ногами. Правда, детали тогда у нас покрупнее были. Вибрирующий лоток, чтобы детали легли в один слой. С наклоном. На выходе просто выталкивали не так лежащие на второй круг. Помню, целый курс возились, пока не заработало. Систему зрения тогда писали на ЕС-1035 :-), сейчас тот парень профессор. Заглянул в коробку с 0805. Что-то у меня больше правильно лежит. Стукнул по донышку, стало меньше :-) Интересная тема. Себе такой же хочется.
|
|
|
|
|
Feb 2 2012, 14:59
|
Гуру
     
Группа: Участник
Сообщений: 3 928
Регистрация: 28-03-07
Из: РФ
Пользователь №: 26 588

|
В принципе, с кинематикой сегодня я определился, что радует. Хочется какой-то рабочий софт.
По распознаванию. Не известно, насколько будет работоспособно, но с прицелом на аппаратную реализацию можно бы попробовать такой вариант. В основном все элементы черно-белые, поэтому цветовая составляющая нам не нужна. Поэтому входной видеопоток переводим в серый. 480*480 230К. Наверное можно даже 4бита - 115К. Преобразуем в градиенты (монохром). Дальше ксорим с паттерном (который тоже в градиенте) и считаем сумму установленных бит. Этакая пародия на сумму наименьших квадратов. Результат записываем на место анализируемого пикселя. Хотя нам не нужно знать, где располагается каждый компонент, достаточно знать, где располагается несколько наиболее определившихся, поэтому достаточно иметь короткий массивчик с тремя координатами - X, Y, A.
Сообщение отредактировал Огурцов - Feb 2 2012, 15:02
|
|
|
|
|
Feb 4 2012, 23:48
|
Гуру
     
Группа: Участник
Сообщений: 3 928
Регистрация: 28-03-07
Из: РФ
Пользователь №: 26 588

|
Первый третий блин:
25 секунд. Предыдущий вариант считался минут десять. А первый - вообще бы неизвестно сколько. Есть вероятность, что при переходе от 8bpp к монохрому будет раз в 8 быстрее. 3 секунды - это уже более менее терпимо. Но это все без градиентного фильтра - даже не знаю, как его реализовать, если градиент будет вычисляться по двум измерениям. зы: не, монохром сделать будет слишком сложно, придется сдвигать все изображение по биту, так что в результате будет работать наверное даже медленнее, чем сейчас. Как вариант - сделать предварительный поиск подходящих областей по картинке с меньшим разрешением, после чего - уточняющий, детальный поиск внутри их. ззы: есть такая либа Open Source Computer Vision Library http://ru.wikipedia.org/wiki/OpenCV которая используется в проекте, который был приведен выше.
Сообщение отредактировал Огурцов - Feb 5 2012, 01:02
|
|
|
|
|
Feb 5 2012, 11:13
|
Гуру
     
Группа: Свой
Сообщений: 2 563
Регистрация: 8-04-05
Из: Nsk
Пользователь №: 3 954

|
Цитата(Demeny @ Feb 5 2012, 15:55)  А смысл сейчас - париться с распознаванием? да и элементы сваленные в кучу друг на дружку, а не лежащие один слоем тоже сомнительно выглядят. один механизм захвата как попало лежащего резистора чего стоит. зы выводы резисторов слегка магнитятся, то есть если рассыпать их на тонкую пластинку, под которой будет периодически намагниченный магнит (смена полярности через несколько мм) то большинство еще и по углам распределяться правильно с точностью до 180 град. ззы этой ссылки тут вроде еще не было: http://www.marsohod.org/index.php/projects/138-cloning
|
|
|
|
|
Feb 5 2012, 19:08
|
Гуру
     
Группа: Участник
Сообщений: 3 928
Регистрация: 28-03-07
Из: РФ
Пользователь №: 26 588

|
Цитата(Demeny @ Feb 5 2012, 09:55)  А смысл сейчас - париться с распознаванием ? Это потому, что : Цитата(_pv @ Feb 5 2012, 12:13)  элементы сваленные в кучу друг на дружку Кстати, в предыдущем варианте время нужно умножить на 360 (зависит от круговой точности, 256 тоже должно хватить). Ну так минуток 180 на поиск одного компонента потребуется )))
|
|
|
|
|
  |
5 чел. читают эту тему (гостей: 5, скрытых пользователей: 0)
Пользователей: 0
|
|
|