Pull to refresh

Comments 18

Благодарю за отличную статью!
Если из сенсоров только Realsense D435 то какой алгоритм будет работать лучше?
А в чем именно заключается Ваш подход? Это какой-то оптимизированный вариант перечисленных подходов или кардинально другой?
Как поведут себя лидары, если на дороге встретятся 20 беспилотников с лидарами и начнут светить друг другу?
А ещё как влияют многкратные отражения лазерного луча от разных поверхностей на работу лидара? Например, луч отразился от поверхности авто, от окна здания и вернулся с другого направления?
Очень познавательно, спасибо! Можно несколько вопросов? На сколько я знаю, инженеры Tesla делают автопилот без лидаров, окружающая обстановка меряется только по (стерео)камерам. Как сильно помогает облако точек от лидара? Используете ли вы камеры видимого спектра? Как ведет себя лидар в сильный снегопад? И как вообще разные погодные условия влияют на качество распознавания объектов?
Нет ни слова о применении радаров. Яндекс не использует радарные датчики?
Контролировать окружающую обстановку в оптическом диапазоне это, конечно, хорошо, но мало, т.к. при наличии дождя, снега, тумана и т.д. эффективность таких датчиков резко снижается. Поэтому сейчас многие используют радарные датчики, работающие в диапазоне 24 ГГц и/или 77 ГГц.
Как радар работает на расстояниях в несколько метров? Скорость радиосигнала 30 000 000 км/с, от пешехода на расстоянии 15 м эхо придёт за 0,000000001с. Неужели электроника радара способна заметить такое малое время с нужной точностью?
Давайте по порядку:
1. Вас же не смущает, что камера или лидар работают на таком расстоянии? Хотя скорость распространения сигнала примерно такая же.
2. Вы немного ошиблись (в 100 раз), написав, что скорость радиосигнала 30 000 000 км/c. В свободном пространстве скорость распространения, примерно, 3*10^8 м/c или 300 000 км/с Поэтому эхо придет примерно за 0,1 мкс (вроде, не ошибся). Так что электронике уже отводится немного побольше времени и она будет успевать :)
3. Дело в том, что автомобили оснащаются датчиками (РЛД) нескольких типов. Условно их можно разделить на датчики дальнего (около 150-300 метров) и ближнего обзора (около 15-50 метров). Получается, что цель захватывается и сопровождается радарным датчиком дальнего обзора еще на расстоянии около 150-300 метров (т.е. у системы есть около 1-2 мкс, чтобы отреагировать на цель). Т.е. система не пытается работать «с нуля» на расстоянии 15 м от цели, а ведет цель с того момента, когда она была обнаружена РЛД дальнего обзора. Постоянно происходит накопление и обработка информации, поэтому при сокращении расстояния до цели до некой пороговой величины система либо подаст сигнал водителю, либо начнет торможение и остановку транспортного средства (ТС). РЛД ближнего обзора позволяют контролировать боковое сближение с другими ТС.
Это очень кратко. Если же вам интересно узнать немного подробнее об этой технологии, то делюсь ссылками на материалы:
1) "Датчики. Актуальные технологии и применения датчиков автомобильных систем активной безопасности. Часть 6. Радары" — конечно, этот материал нельзя назвать свежим, но он все еще актуален.
2) "Измеритель дальности и скорости на железнодорожном транспорте" — система, построенная на базе автомобильного радара. Приводятся типовые значения дальности, погрешности. Диапазон частот тот же, что и в автомобильных радарных датчиках.
3) "Автомобильные радары: история, практика, перспектива (до 2006)" — интересная обзорная статья по РЛД различных диапазонов.
1. Нет, по тому, что лидар и камера работают не по принципу эхолокации. Там мгновенное распространение сигнала как раз помогает. Радар работает по принципу радиолокации ru.wikipedia.org/wiki/Радиолокация#Основные_методы_радиолокации, и определяет расстояние до объекта по формуле D = 2T/c, где Т- время, а с — скорость света. Ни к лидару, ни к камере это не отностится
2. Да, ошибся, верно. Но 0.1 мкс это тоже время на грани возможностей электроники. Если справляется — ок. Но, опять-таки, с какой точностью она сможет замерить эти 0.1мкс? Ошибка всего на 0.05мкс это уже 50% и 7,5м — существенно.
3. Основные проблемы с пешеходами возникают не когда они были в поле зрения за 300м, а именно когда они появились в нём внезапно на дистанции сопоставимой с тормозным путём

Спасибо за ссылки. С удивлением узнал из первой, что радары применяются на расстояниях от 0,2м. В голове не укладывается, но интересно :-)
Давайте еще раз по порядку :)
1. Лидар — это активная система, принцип работы которого схож с радаром, т.е. лидар излучает и принимает отраженный сигнал. Разница только в том, что лидар с работает в оптическом диапазоне, а радар — в радиодиапазоне. Поэтому время распространения сигнала у лидара и РЛД примерно одинаковые. Проблема в том, что наличие тумана, дождя, снега или просто запыленность или загазованность воздуха могут стать критичными для работы лидара. А вот на сигнал РЛД эти факторы влияют в меньшей степени, чем на сигнал лидара. Хотя тоже влияют.
Аналогично и с камерами, т.к. для улучшения работы камеры в темное время суток может использоваться инфракрасная подсветка. Хотя в светлое время суток камера может не использовать подсветку.
Получается, что чисто пассивной системой можно считать только камеру (без подсветки). Но при этом она будет малоэффективна в услових низкой освещенности (правда, есть автомобильный свет, который можно считать активной подсветкой для камеры :) ).
2. Тут все зависит от алгоритмов обработки и скорости вычислителя. Но идея именно в том, что система следит за обстановкой постоянно.
3. Если пешеход появляется перед ТС на дистанции, сопоставимой с тормозным путем, то не поможет, ни камера, ни лидар, ни радар, т.к. ТС просто физически не успеет затормозить. Хотя тут тоже очень много нюансов в плане ситуаций и сценариев их возникновения. Например, если пешеход возник неожиданно из-за рядом стоящего ТС (например, на светофоре), то РЛД его (пешехода) обнаружит и не даст водителю поехать даже если тот уже нажал на педаль газа. Дистанции обнаружения вы сами видели в статьях.
А вот если пешеход появляется сзади или сбоку, когда водитель его не видит, то РЛД в этой ситуации может предупредить водителя, подав сигнал, или включив торможение.

Опять же, РЛД и камера, как правило, используется совместно, взаимно дополняя друг друга и компенсируя недостатки друг друга.
1. Есть 3 метода измерения, используемые в лидарах, импульсный лишь один из них.Потому я думал, что на коротких дистанциях импульсные не используется. Но, теперь вижу, что используется. Высокоточный таймер усложняет и удорожает устройство. Помимо импульсного на малых расстояниях до 15м используется фазовый. А вообще-то самый простой способ — особенно на расстояниях от долей до десятков метров — триангуляционный www.prst.ru/docs/triangul-prinzip.pdf — именно его я имел в голове, когда говорил о лидарах. Для радара он не применим.
2. да
3. Вот как раз вы не правы. Время реакции водителя 0.4-0.6с, у робота почти мгновенно. Кроме того, робота теоретически можно научить сложным манёврам ухода вбок, а водителей никогда этому учить не будут — только тормози в пол. Так что потенциал сохранения жизней пешеходам тут очень существенный. Так что умение вовремя заметить внезапного пешехода на короткой дистанции — очень ценно.
Про замеры времени 0.1 мкс. Есть же еще один параметр которым можно жертвовать для увеличения точности — latency, или пинг по русски. Т.е. банально умножая оптический путь измеряем бОльшее расстояние, жертвуя запаздыванием измерения. Как это технически делать — отдельная тема.
'2. Да, ошибся, верно. Но 0.1 мкс это тоже время на грани возможностей электроники

За 0.1 мкс можно небольшие матрицы перемножить, это же целых 100нс! Несколько сотен операций для таких монстров, как CPU. А нужно лишь время замерить. Но детектор смещения фазы, как понимаю, реализуется намного более просто, чем процессор или даже счётчик.


Кстати, бытовые лазерные дальномеры имеют точность порядка 3мм.

Те, кто ездил по дорогам России, знают, что есть куча перекрестков, выехать с которых невозможно, если тебя не пропустит кто-то из водителей, имеющих тем не менее преимущество в движении. На таком месте, автопилот будет стоять сутки на второстепенной дороге и проедет часа в 4 ночи, когда поток по главной дороге иссякнет.
Как решается такая проблема? Автопилот научится распознавать кивок другого водителя, означающий, что тебя пропускают?
На таком месте, автопилот будет стоять сутки на второстепенной дороге

Алгоритм живого водителя довольно прост — 1) в меру нагло медленно высовываемся, чтобы вас заметили, но не зацепили; 2) как только на главной встречается ТС, которое снижает скорость достаточно, чтобы вы проехали без столкновений, это значит, что вас пропускают, и вы едете. Аналогично с другой стороны, достаточно пропускать высунувшихся с какой-то вероятностью.

Про toloka, и расстановку баунд боксов… Неужели так трудно сгенерить синтетические данные где заранее известны все эти боксы. В наше то время, если уж в риал тайме фотореализм рендерится то облако точек то точно можно. Вообще синтетические данные и тесты как то используются?
Я видел вакансии в фирмы, которые генерят такие данные. Но также читал что нейросети на таких данных ведут себя не так как на реальных.
Но если «на глаз» данные выглядят одинаково, а распознаватель (нейросеть в данном случае) ведет себя как то по разному — я скорее засомневаюсь в распознавателе, потому что он явно цепляется ни за те данные которые мы от него хотим. Это в общем то и проблема всех нейросетей, что мы не понимаем а что они в действительности там распознают. И как раз набор разных тестов, в том числе синтетических, дает хоть какую то гарантию что алгоритм решает нужную нам задачу, и делает это надежно.
Я посмотрел ваш график точности, если взять самую дальнюю точку на medium графике, получается precision и recall ~~0.8. Это что же, получается при детекции машин на картинке, 20% будут ложными срабатываниями, а 20% машин не будут обнаружены? Что-то это как-то маловато для отказоустойчивой системы. Я читал обзоры работ по детекции пешеходов, в целом вывод такой же был примерно — пока всё плохо, если пешеход перекрыт, то надежно различить его можем в <60% случаев.

Ну и ещё я правильно понимаю, что ночью пешеходов детектить эта система не умеет?
Sign up to leave a comment.