| ||||
: О проекте :: Устройство робота :: Фото и видео :: Демострационный софт :: О авторе : | ||||
Обнаружение препятствийЭтот блок осуществляет определение дальностей от камеры до препятствий, попавших в кадр. На выходе блока образуется сектор дальностей (Рис. 1) в виде массива координат X,Y (где X,Y - координаты в плоскости земли обнаруженных точек препятствий). Рис. 1 Сектор дальностей (Локальная карта расположения препятствий в видимой области: 1- видимая зона; 2 - невидимая зона; 3-препятствия) Известно много методов определения дальности до препятствий. К сожалению, ни один из них невозможно применить в условиях функционирования данного робота. Поэтому автором данной работы был разработан новый принцип определения дальности до препятствий. Не смотря на то, что предлагаемый метод имеет свои ограничения на использования, для большинства мобильных транспортных роботов, работающих в помещении, данный метод может быть успешно применен. Рассмотрим специфику работы интеллектуального мобильного робота, функционирующего внутри помещения. Этот робот двигается внутри помещения по ровному полу. Будем исходить из предположения, что все предметы в помещении, которые встретятся на пути робота, стоят на полу. Все неровности на полу (люк, порог и т.п.) робот должен расценивать как препятствия.
а) Цветное изображение, б) Оконтуренное изображение Рассмотрим кадр видеоизображения (Рис. 2). Можно заметить, что на оконтуренном изображении (Рис. 2, б) первая снизу контурная линия - это граница какого-либо объекта, стоящего на полу. В этом случае каждая точка этой линии находится в плоскости пола. Тогда дальность такой точки можно определить (Рис. 3). Рис. 3 Принцип "ровного пола" На рисунке величина Fy - коэффициент пропорциональности между реальными и экранными координатами. где H - высота экрана в пикселях, FOVy - угол обзора камеры по высоте. bc - угол наклона камеры, Zс - высота установки камеры, v - расстояние в пикселях по оси y от центра экрана до искомой точки, Найдем угол y (Рис.3): Тогда искомое расстояние D от точки A до камеры рассчитывается по формуле: По найденной дальности D точки можно легко найти реальные координаты X и Y этой точки. Искомая координата XA точки A в системе координат камеры, исходя из подобия треугольников (Рис.4, a), будет рассчитываться по формуле: Здесь: u - расстояние в пикселях по оси x от центра экрана до искомой точки: Здесь W - ширина экрана. Fx - коэффициент пропорциональности между реальными и экранными координатами. FOVx - угол обзора камеры по горизонтали. Рис. 4. Получение координат точки по известной дальности: a) определение координаты X в системе координат камеры, б) перевод координат точки из системы координат камеры в систему координат робота. Тогда в системе координат робота искомые координаты точки A будут иметь вид (см. Рис. 4, б): Где: Xс и Yc - смещение камеры от центра координат робота по оси X и Y соответственно. Данный метод получения дальности до препятствий был назван автором принципом "ровного пола". Достоинства и недостатки методаДостоинство метода заключается в том, что он способен определить дальности до препятствий даже по статическому изображению. Метод не требует от робота специальных поступательных движений и других изменений в поведении. Недостатком метода является его неуниверсальность. Метод не будет работать на пестром полу или на поверхности, отличной от ровного пола. См. также: Оконтуривание. | ||||
Дизайн: DynSoft |