Menu

vehicle

Vladimir Baranov
Attachments
cvehicle_povorot_algo.jpg (511906 bytes)

Алгоритм ухода от столкновения.

Пока в симуляторе я поставил 3 машины, у каждой заранее записано управление (вручную) и статический обьект дерево. 1 машина едет по своей полосе, а другая едет произвольно туда-сюда (непредсказуемый зомбокар). Моя цель продумать алгоритм ухода от столкновения на симуляторе и примерно обосновать его реализацию. Возможно как-то совместить виртуальную модель с реальной картинкой.
Для этого потребуется юстирование камеры. Возможно придется купить стереокамеру, потому что если брать 2 разные видеокамеры

Проблемы при обработке видео:

  • разная расфокусировка 1-ой и 2-ой стереокамер
  • разный закон шумов
  • разные угловые смещения камер

Все это нагрузит проц.
Можно рассмотреть Cortex в качестве процессора для стереозрения на реальной камере.
Либо возложить эту задачу на видеоадаптер.
В продаже есть бытовые стерео камеры, вопрос потянет ли этот кортекс 2 HD потока.
На этот вопрос сайт ARM особо информации не дает.
В последней версии grafeditor я написал real time фильтры работающие с видеокамерой по firewire .
Я проверял с видеокартой NVIDIA и с ATI и видеокамерой Panasonic.
Почитать книгу по OpenCL.

Методы распознавания обьектов:
-Метод масштабирования, зуминг камеры


Задача 1.

В симуляторе 3 машины, у каждой заранее записано управление (вручную)
и статический обьект (дерево).


Алгоритм автоматического управления по криволинейной траектории


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

2.Авто должен уметь возвращаться в траекторию, вписываться, после обьезда препятствий

Управляющие парметры :
wang - угол поворота колес
speed - текущая скорость
vector<int> pts - точки поворота
vector<int> pvt_i - индексы поворотов
nf - насколько точек просматрив. траектория
tf - время прохода поворота
Skr - кривизна траектории</int></int>

Скорость на повороте = const

  1. Расчет Skr по pts
  2. Заполнить массив индексов поворотов pvt_i
  3. Когда прошли точку pvt0_start
    Рачет угла поворота r_alfa расчет dSalfa = put_se(pvt0_i, pvte_i)
    Расчет приращения dwang = dSalfa / V_start

Расчет кривизны кривой
Цикл 0..до pts.size()
Skr = dy / dx
Первый проход поиск pnt_i=1. начала поворотов
4.1 Векторное произведение acos( v1(p0_i, p0_i+1) x v1(p0_i, pe_i+1)

==================================================================================
Закончено
==================================================================================
+Сделаем посчет пройденного расстояния,

Ссылки:
Можно почитать книгу по OpenCL.
http://www.youtube.com/watch?v=1LKYEoDte30


MongoDB Logo MongoDB