roboforum.ru

Технический форум по робототехнике.
Текущее время: 21 фев 2025, 18:21

Часовой пояс: UTC + 4 часа




Начать новую тему Ответить на тему  [ Сообщений: 148 ]  На страницу Пред.  1, 2, 3, 4, 5 ... 10  След.
Автор Сообщение
 Заголовок сообщения: Re: Сваял макетик - Камера + AVR
СообщениеДобавлено: 09 окт 2009, 11:02 
Не в сети
Аватара пользователя

Зарегистрирован: 28 дек 2004, 20:33
Сообщения: 10211
Откуда: Тольятти
Skype: Ed_Gull
прог. языки: Bascom AVR Basic
ФИО: Гуль Эдуард Викторович
ок, а тогда можно по подробней про вот это?

Michael_K писал(а):
видеобуфера (правда камеру нужно перевернуть ) чтобы первой считываласьстрока, которая ближе к камере)


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Сваял макетик - Камера + AVR
СообщениеДобавлено: 09 окт 2009, 11:12 
Не в сети

Зарегистрирован: 29 окт 2008, 18:14
Сообщения: 260
Откуда: Химки МО
прог. языки: Java
А для ламеров на вроде меня можно схему и прошивку?
Страшно захотелось повторить!


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Сваял макетик - Камера + AVR
СообщениеДобавлено: 09 окт 2009, 11:30 
Не в сети
Аватара пользователя

Зарегистрирован: 07 окт 2009, 00:29
Сообщения: 6028
Откуда: СПб
EdGull писал(а):
ок, а тогда можно по подробней про вот это?
Michael_K писал(а):
видеобуфера (правда камеру нужно перевернуть),
чтобы первой считываласьстрока, которая ближе к камере)


Алгоритм предполагает, что робот уже стоит "примерно на линии".
Поэтому рядом с роботом линия в камере широкая и ее хорошо видно.
Алгоритм находит ее центр, потом ищет "продолжение" этой линии в следующей строке и т.д.

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

repository писал(а):
А для ламеров на вроде меня можно схему и прошивку?
Страшно захотелось повторить!


Еще подумаю :) Может avr123 продам или кто тут у вас микроботами торгует :lol:

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

Вообще меня иногда пробивает на "выкладывать" (см. например myavr.narod.ru),
но занятие это неблагодарное, как показывает мой опыт :cry:


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Сваял макетик - Камера + AVR
СообщениеДобавлено: 09 окт 2009, 11:48 
Не в сети
Аватара пользователя

Зарегистрирован: 29 апр 2008, 21:15
Сообщения: 4130
Откуда: Хабаровск
прог. языки: C,C++,Assembler,PHP,Javascript,Ruby, SPIN,Java(?)
ФИО: Андрей Юрьевич
Какой смысл тогда было создавать этот топик? Если хотели, чтобы это было кому-то полезно, выложили бы исходники. Если для "продать", так довели бы до ума сначала.

_________________
Проект [[Open Robotics]] - универсальные модули для построения роботов
Модули Open Robotics можно приобрести в магазине shop.roboforum.ru

Day OFF? You must be pulling my leg! Stop making humor before someone sees you, fool!



Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Сваял макетик - Камера + AVR
СообщениеДобавлено: 09 окт 2009, 12:05 
Не в сети
Аватара пользователя

Зарегистрирован: 07 окт 2009, 00:29
Сообщения: 6028
Откуда: СПб
Про продать - это шутка, конечно.
(Я думал, смайлики натолкнут вас на эту мысль :) )

Какой смысл? Показать возможности ПРОСТЫХ решений.
Направить творческую мысль.

Знаете, почему я написал, что "выкладывать" - занятие неблагодарное?
Потому что прилетает куча писем типа: "а у меня компилятор это не ест",
"а я перепутал питание - что делать", "не могли бы вы переделать, чтобы было
"с блэкджеком и шлюхами", "перепишите все на паскале" и т.д.

Поймите, я выкладываю что-то для того,
чтобы можно было посмотреть как это можно сделать.
А дальше все зависит от ВАС. Приложите свои знания, умения, труд.

А вам только готовое подавай... Грустно.


Когда поставлю на шасси и вылижу алгоритмы, то оценю повторяемость.
Если (ЕСЛИ!) повторяемость будет хорошей, то выложу. Иначе смысла нет.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Сваял макетик - Камера + AVR
СообщениеДобавлено: 09 окт 2009, 12:17 
Не в сети
Аватара пользователя

Зарегистрирован: 29 апр 2008, 21:15
Сообщения: 4130
Откуда: Хабаровск
прог. языки: C,C++,Assembler,PHP,Javascript,Ruby, SPIN,Java(?)
ФИО: Андрей Юрьевич
Лично мне не интересен Ваш исходный код.

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

_________________
Проект [[Open Robotics]] - универсальные модули для построения роботов
Модули Open Robotics можно приобрести в магазине shop.roboforum.ru

Day OFF? You must be pulling my leg! Stop making humor before someone sees you, fool!



Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Сваял макетик - Камера + AVR
СообщениеДобавлено: 09 окт 2009, 12:30 
Не в сети
Аватара пользователя

Зарегистрирован: 23 окт 2007, 22:03
Сообщения: 3037
Откуда: Москва
прог. языки: С
ФИО: Евгений Яковец
А как информация из девайса в компьютер поступает. Судя по фотографиям через ЮСБ?

_________________
- Этот человек - не человек! это робот!
- Как? уже делают?!
- Делают!!!


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Сваял макетик - Камера + AVR
СообщениеДобавлено: 09 окт 2009, 12:43 
Не в сети
Аватара пользователя

Зарегистрирован: 07 окт 2009, 00:29
Сообщения: 6028
Откуда: СПб
Для тех, кто не ждет готовых решений:

Частота проца 20МГц, предделитель АЦП - 4.
Получаем оцифровку с периодом 2.6 микросекунды.
Строка видеосигнала - 64 микросекунды (видеоданных меньше)
Строк примерно 280.
Получается порядка 20 точек на строку растра.
То есть, если подходить тупо, то можно получить разрешение
20(ширина кадра)x280(высота) - это неудобно.

Поэтому я делаю выборки по принципу "шахматной доски":
Выборки из строк выбираются со смещением относительно строба.

Изображение
Примерно так.

Получается, что выборки в кадре размещены более-менее равномерно.
Для компьютерной программки из четырех строк формируется одна "широкая".
Для обработки на проце этого не требуется.

Добавлено спустя 4 минуты 35 секунд:
blindman писал(а):
Лично мне не интересен Ваш исходный код.
Не вижу смысла публиковать идею, если не готовы отвечать на вопросы.


Я на умные вопросы как раз готов отвечать. Только они тонут в массе других -
"А можно я вместо атмеги впаяю микросхему от телевизора - у нее ног столько же?"

Дело в том что "Дайте!" - это даже не вопрос.

yak-40 писал(а):
А как информация из девайса в компьютер поступает. Судя по фотографиям через ЮСБ?


Да. Через вот такую приблуду:
http://hardcoder.ru/projects6#usb


Последний раз редактировалось Michael_K 09 окт 2009, 14:07, всего редактировалось 1 раз.

Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Сваял макетик - Камера + AVR
СообщениеДобавлено: 09 окт 2009, 12:53 
Не в сети
Аватара пользователя

Зарегистрирован: 29 апр 2008, 21:15
Сообщения: 4130
Откуда: Хабаровск
прог. языки: C,C++,Assembler,PHP,Javascript,Ruby, SPIN,Java(?)
ФИО: Андрей Юрьевич
Цитата:
Я на умные вопросы как раз готов отвечать. Только они тонут в массе других -
"А можно я вместо атмеги впаяю микросхему от телевизора - у нее ног столько же?"
Если дать неполную информацию - глупых вопросов, что, меньше станет? Просто не отвечайте на них :) А если опубликуете полную информацию - умных вопросов, у тех, кто способен их задать, станет меньше. Ещё, глядишь, и умные предложения появятся

_________________
Проект [[Open Robotics]] - универсальные модули для построения роботов
Модули Open Robotics можно приобрести в магазине shop.roboforum.ru

Day OFF? You must be pulling my leg! Stop making humor before someone sees you, fool!



Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Сваял макетик - Камера + AVR
СообщениеДобавлено: 09 окт 2009, 13:04 
Не в сети
Аватара пользователя

Зарегистрирован: 07 окт 2009, 00:29
Сообщения: 6028
Откуда: СПб
Цитата:
А если опубликуете полную информацию - умных вопросов,
у тех, кто способен их задать, станет меньше.

Тут вы правы, безусловно.
Умных вопросов станет меньше, а вот количество неумных
вырастет как снежный ком. Оно мене надо?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Сваял макетик - Камера + AVR
СообщениеДобавлено: 09 окт 2009, 13:06 
Не в сети
Аватара пользователя

Зарегистрирован: 29 апр 2008, 21:15
Сообщения: 4130
Откуда: Хабаровск
прог. языки: C,C++,Assembler,PHP,Javascript,Ruby, SPIN,Java(?)
ФИО: Андрей Юрьевич
Не стану спорить. Имеете полное право делать так, как удобнее Вам, а не всем остальным.

_________________
Проект [[Open Robotics]] - универсальные модули для построения роботов
Модули Open Robotics можно приобрести в магазине shop.roboforum.ru

Day OFF? You must be pulling my leg! Stop making humor before someone sees you, fool!



Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Сваял макетик - Камера + AVR
СообщениеДобавлено: 09 окт 2009, 13:22 
Не в сети
Аватара пользователя

Зарегистрирован: 07 окт 2009, 00:29
Сообщения: 6028
Откуда: СПб
Алгоритм поиска линии:
Алгоритм предполагает, что линия расположена вертикально и начинается ближе к центру камеры.
(не в том смысле что "строго вертикально", а в том, что "не горизонтально" :) )

Первая строка (ближе к роботу) масштабируется колоколообразной кривой.
При первом запуске центр (пик, максимум) этой кривой находится в центре экрана.
Таким образом "вес" крайних пикселей меньше, чем "вес" центральных.
Находим "центр тяжести" получившегося массива - принимаем его за центр линии в первой строке.
В следующей строке делаем то же самое, но "колокол" уже модифицируем:
во-первых, сужаем его (чем дальше, тем линия тоньше - ибо перспектива)
во-вторых, располагаем центр "колокола", исходя из найденного в предыдущей строке центра линии.
И т.д.

В следующем кадре центр первого "колокола" для первой кривой располагаем, исходя из информации о том,
где была найдена линия в предыдущем кадре.

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

Добавлено спустя 1 минуту 37 секунд:
blindman писал(а):
...а не всем остальным.

Это вы смело сейчас за всех ответили :)

Информации, по-моему, выдал достаточно для повторения.


Последний раз редактировалось Michael_K 09 окт 2009, 14:25, всего редактировалось 2 раз(а).

Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Сваял макетик - Камера + AVR
СообщениеДобавлено: 09 окт 2009, 13:23 
Не в сети

Зарегистрирован: 17 апр 2009, 15:09
Сообщения: 987
Откуда: Rostov-Don
Алгоритм, как я понимаю может быть и такой:
ловим компаратором кадровый строб,
80 раз оцифровываем строку //быстрее не успеваем,
ищем максимум и запоминаем номер отсчета,
и т.д. 60 раз.
*время ADC подогнано под строку, а весь цикл под кадр.
**между кадрами сшиваем отсчеты

Решение красивое, поскольку любой глазок и МК можно использовать :good:


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Сваял макетик - Камера + AVR
СообщениеДобавлено: 09 окт 2009, 13:31 
Не в сети
Аватара пользователя

Зарегистрирован: 07 окт 2009, 00:29
Сообщения: 6028
Откуда: СПб
Алгоритм описал.

Цитата:
80 раз оцифровываем строку //быстрее не успеваем,

У меня только 20 раз получилось.
80 раз за 50 микросекнд - это больше мегагерца.
ATmega88 так не умеет.

В реальном железе планирую перейти на ATxmega32
- вот там и развернусь. Там штатная частота АЦП - 2МГц при 12 битах.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Сваял макетик - Камера + AVR
СообщениеДобавлено: 09 окт 2009, 13:40 
Не в сети

Зарегистрирован: 17 апр 2009, 15:09
Сообщения: 987
Откуда: Rostov-Don
Вы в начале топика говорите о 80*60, но это не принципиально
По ходу оцифровки строки можно запоминать лишь максимум. Это даст правый край широкой линии.
На второй строке по уже имеющемуся значению можно попробовать отловить левый.
А на анализ направления линии есть куча времени между кадрами.

Правда для трасера больше мышиный сенсор подходит, а для распознавалки мобильный или глазок с dsh к матрице.
А вот простой датчик движения в кадре на этом принципе сделать можно.


Последний раз редактировалось contr 09 окт 2009, 13:52, всего редактировалось 1 раз.

Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 148 ]  На страницу Пред.  1, 2, 3, 4, 5 ... 10  След.

Часовой пояс: UTC + 4 часа


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

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


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  
cron
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
Русская поддержка phpBB
phpBB SEO