Pull to refresh

Comments 90

Очень интересная тема. И радует что занимаются этим у нас… Хоть какие-то надежды подаются… ))
А вообще разработки поддобных систем это не на один год… первые реально-существуюшие какие-то прототипы, смогут появится не раньше, чем через лет 20-25… Ровно тогда, когда система сможет распознавать внезапно выбежавшую на дорогу кошку или собаку или еще хуже ребенка (т.е. маленький объект). Почему-то о последнем вечно забывают, и распознают образы исключительно только ростом от 1 — 1.2 метра… Но это так… Полемика…

Вобщем, Полезное дело делаете! Дерзайте! )
20-25 лет — это перегиб, они появятся гораздо раньше. Лет 10 это максимум.
К сожалению, занимаюсь этим не у нас. Про детей мы тоже помним. Я даже делал небольшие эксперименты: если дополнительно рассмотреть верхнюю половину области интереса, то она будет классифицирована как человек. В тоже время вся область целиком — как не человек. Таким образом можно сказать, что у нас ребенок…

В Европе же другие скоростные ограничения в городах. В жилах зонах это может быть 30 км/ч. Вольво недавно представила систему уже реально интегрированную в их новые машины, которая способна обнаруживать людей и останавливать машину в случае опасности. Подробностей на сайте мало. Есть только несколько видео записей, сделанных на тестовом полигоне. В качестве человека там показан манеке.
В крайнее воскресенье видел Вольву с рекламой этой фичи в районе Горбушки. После того как прочитал рекламу, появилось желание бросится под неё :) Тем более, ехала не быстро. :) Сдержался!
Вы только убедитесь, что эта фича входит в стандартную комплектацию, а то вдруг это какой-нибудь «пакет безопасности», на котором владелец решил сэкономить.
Но там, на скольтко я понимаю, все проще — нет никакого распознавания изображения, вместо этого ультразвоковые сенсоры — типа парктроника, которые к тому же срабатывают не только на людей, а на любые препятствия перед автомобилем.
UFO landed and left these words here
На чем это пишете?
Под какую систему?
И под какой лицензией это потом будет?
В основном использую Матлаб. В тестовой машине все на C/C++ и сейчас не спеша перевожу часть работы на Си/Си++.
UFO landed and left these words here
А нет какой–то внятной лицензионной политики. В машине все завязано на Kogmo-RTDB (http://www.kogmo-rtdb.de/), которая распространяется под GNU GPL v.3. Посмотрел по коду разных компонент — в основном там только указание на копирайт университета. На публику пока что эти исходники не выставляют.
наши водятлы как давили пешеходов, так и будут давить :(
надо ставить дополнительный алко-замок зажигания помимо распознавания пешеходов :)
Наши пешеходы, как бегали по проезжей части, так и бегают. И ни один водятел не застрахован от долбоёба, выскакиевающего не глядя на проезжую часть.
А особенно — от пьяного, краснорожего, с неизменной бутылкой пива в руках, который может просто выйти на проезжую часть, попинать проезжающие машины.

Жара то какая )…
Это не более чем неловкое оправдание. В Европе пешеходы и велосипедисты далеко не святые, однако гибнет их почему-то чуть ли в сто раз меньше чем у нас.
Замок зажигания обходится фразой: гражданоэчкаэ, а помог-ик-те мне машинку завеэсти (произносить с характерными ужимками и бесконечно ясным взглядом).
А также дети за рулём и дамы с собачкой на руках и косметичкой в зубах…

Да, но мы не об этом. А, если я правильно понял, об алгоритме обнаружения объектов движения в некоторой области вокруг движущегося авто. Тем более, что с развитием разрешающей способности и скорости срабатывания детекторов это стало реализуемо как правильно заметили в течении 10-12 лет. В науке, мы видим, уже. ИМХО, такая система очень актуальна для людей, днями проводящих за рулём, когда из-за длительной поездки теряется активность восприятия действительности.
Как вариант — средство помощи для парковки или автономно работающие средства передвижения на рабочих площадках :).
>надо ставить дополнительный алко-замок зажигания

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

Вопрос: при распознавании, Вы опираетесь на температуру тела. А как отсеивается, допустим температура, например, глушителя впереди едущих автомобилей?
ну как видите на крайней нижней правой фотографии — глушитель как раз выдался за пешехода…
Машина машине друг, поэтому и обратила система внимание чтобы не задавить :)
На глушитель тоже нежелательно натолкнутся… Хотя последствия столкновения будут и не такими критичными для жизни кого-либо…
Описываемый алгоритм работает в обычных климатических условиях (температура воздуха 20-25 градусов цельсия и температура тела ~37 градусов). Как он поведет себя летом, когда воздух горячее человека?
Летом, конечно, ИК камера хуже подходит для обнаружения пешеходов. Но не ей единой это можно делать. В жару можно использовать лидар/радар как основной источник информации.
Я не понял, нахуя это надо. Давайте лучше мочить педестрианов.
Даже для вашей идеи подходит! Делаем нормальное обнаружение пешеходов, и машины-роботы-убийцы могут их давить!
Задумки хорошие, автор — молодец, но я про другое тут подумал.

Чтобы можно было такую автоматически управляемую машину выпустить на улицу с людьми, нужно чтобы уровень надежности был минимум на порядок выше необходимого. В данном случае — чтобы система полностью хавала сцену (с 3D-реконструкцией) и могла, грубо говоря, «время определить на часах у пешехода».

Вместо невнятных схем с задиранием контраста на специально подобранных «удобных» картинках. Вы ж подавите всех…
Спасибо.

Трехмерный лидар большой помощник в этом деле. С его помощью можно хорошо рассмотреть все, что вокруг.
> Очевидно, что проблема обнаружения пешеходов — программная, а предотвращение столкновения — аппаратная.

Странно. А вот мне всегда было «очевидно», что «проблема обнаружения» — аппаратная (например IR-камерой), а проблема предотвращения столкновения — программная (алгоритм предсказания поведения пешехода).
хм… вы немного не правы, либо не совсем верно поняли автора.
расскажите мне что за IR Камера которая сама по себе сможет определить пешехода? Вообще говоря проблема детектирования таких объектов как пешеход это программно-аппаратная проблема, здесь и подбор нужных приборов, и выбор верного алгоритма обработки данных с приборов.
Насчет предотвращения столкновения, я думаю автор имел ввиду, что должен существовать аппаратный комплекс, который будет предотвращать столкновение. Вообщем то для решения этой задачи тоже необходим программно-аппаратый комлекс, так как тут должен быть алгоритм работы, что если не успеваем затормозить, необходимо совершить маневр уклонения, так чтобы минимизировать ущерб (скажем подставить мягкий бампер, вместо жестого крыла, либо же вообще уйти чуть в сторону и объехать человека)
Давайте не будем объезжать человека. В Россиях это чревато встретиться на встречке с таким же объезжающим. Надо просто притормозить машину и предоставить решение водителю.
Почти во всех семплах по HOG берут задачу обнаружения человеческого тела. Думаю вам тоже стоило бы попробовать.
Насчет производительности. У этих ребят реализация на CUDA дала порядка 15fps на 640x480 сером изображении. С учетом развития видях, сейчас можно ожидать на какойнибудь 475ой производительность на 50-100% больше.
На самом деле передо мной не стоит задача — сделать реально работающую систему. Моя задача придумывание каких–то новых подходов для решения этой задачи. Если они работают медленно, но работают, то моя задача выполнена. Это и хорошо, и плохо одновременно. =)

Про гистограммы ориентированных градиентов я слышал. Даже использовал в качестве признаков для классификации пешеходов. Но никогда не использовал их именно для обнаружения, попробую…
На самом деле вам стоит уже сейчас задуматься над тем, чтобы на основе вот этих ваших обучений потом основать компанию, которая бы занималась R&D подобной проблемы и в конечном итоге производством.
Я думаю, если вы предложите это вашему учебному заведению типа они поддерживают вас техникой, а вы за это отдаете некоторое кол-во акций универу. Тем более, что все это происходит на западе, где по идее люди более привыкли думать головой о выгоде в будущем, чем у нас.


Разумеется технология обнаружения людей нам нужна чтобы департамент транспорта сэкономил на водителях автобусов.
В технологию, как я понимаю, пока не заложена возможность автобусу определять подрезающую его маршрутку.
Блин, какой же ЕD-209 красавчик! А звук, звук какой был?! Мммм…
А инфракрасная камера будет работать при температуре за бортом +39C?
Вот да, мне интересно — при каких условиях проводились ваши испытания и расчеты? Летом? Зимой? Весной? В дождь? Снег?
Технология очень интересная, может чуть расскажете где и кем вы работаете? Неужто в России подобные проекты существуют?
Записи делал в разное время года. Летние результаты наименее внушительны.

Я сейчас в аспирантуре, в Германии. Читал, что в России собирались устроить большой слет–конкурс робототехников в какой–то глуши. Конкурс заключался в демонстрации своих проектов беспилотных машин, которые могут ездить по российскому бездорожью =) Приз конкурса – правительственный грант, помощь в оснащении автомобиля и даже приемники ГЛОНАСС.

Другое дело, что, если рассматривать вопрос безопасности дорожного движения и пешеходов в России, то надо начинать не с разработок «умных» машин.
Если не секрет — кто является заказчиком ваших разработок?
А почему выбрали именно визуальное распознавание? Есть же всякого рода эхолокаторы, с ними имхо надежнее и вычислительных мощностей меньше тратиться…
визуальное распознавание на основе данных с ИК (тепло) камеры, можно по температуре примерно выделить людей — видимо на это упирались… в идеале можно наложить еще дальномер и получиться фильтр по объемной форме + температура
меня интересует другое, не проще ли было как в дарпа: 3д сканер, выделяем объекты, которые быстро приближаются к машине (люди, кошки, деревья) и на основе этого или уворачиваемся (зная 3д модель вокруг имхо не сложно построить путь объезда) и/или тормозим… т.е. нам же в принципе все равно кого не задавить (при приближении к дереву мы как б тоже можем его «задавить») — главное то не столкнуться
и еще один момент, когда много машин с некими активными радарами — они не будут друг друга глушить?
С активными Радарами — могут и глушить. С Лидарами — всё намного проще (но при желании тоже можно)
судя по разным видео роликам разрешение у лидаров не такое уж и большое =( не факт что человека можно будет адекватно распознать на расстоянии тормозного пути
Вот и я тоже думаю, что человек или бумажная коробка, аппаратуру не должно беспокоить, она не должна допустить столкновения.

Глушить думаю не будут, корабли же не глушат. Летучие мыши и дельфины тоже не глушат :)
Да, судя по этому видео, тут даже больше возможностей. Система может оценить обстановку, а если на соседних авто установлена эта же система, и они еще могут взаимодействовать, например послать сигнал угрозы. Соседние и встречные авто будут оповещены, и обеспечат траекторию, на основе траектории от авто, которому грозит угроза. Короче бешеную рекурсию можно замутить :)
если такое стоит на всех авто в колонне, то они могут очень неплохо уточнять 3д модель (например то что в «тени» не видит один — видит другой) и как итог вряд ли столкнутся даже с тоненькой палочкой
/me хочет побаловаться лидаром =)
ЗЫ: что-то мне подсказывает что гугл бы для streetview такая штука бы пригодилась (текстуры есть, 3д модель получаем, вырезаем людей (банально вычитаем несовпадения: люди двигают, а здания на месте), накладываем текстуры — вуаля 3д копия реального мира)
провозглашаю public domain при хабросвидетелях
Ну такая система ТОЖЕ нужна в дополнение к вашей. А нужна она для конфликтных ситуаций, когда задавить кого-то придется, и лучше что бы это был не человек, а дерево (правда лучше только для пешехода, а вот водителю и дереву будет грустно).
Как верно заметили внизу важно не только не задавить, но и понимать, что происходит вокруг. Если мы уворачиваемся от столкновения с пешеходом и приближаемся к коробке, то хочется знать, что коробка это коробка, а не человек.

3д сканер очень интересная штука. Как раз сейчас разбираюсь с ним…
имхо тепловизор прекрасно отделит коробку от человека без особых способов распознавания (хотя все равно придется как то найти людей, чтоб узнать какая примерно температура у них… а то может все замерзли, а коробку нагрели — тогда коробку объезжаем, а людей… в общем грустно)
Еще бы хотел сказать, что подобные системы смогут не только помогать в уходе от аварийной ситуации, но так же и помогать при выяснении что случилось при аварии и кто виноват. Если подобные системы будут писать 3D-модель своего движения, то можно будет буквально по секундам визуально узреть что же произошло.
Желаю вам удачи и всяческих успехов в этом начинании!
В предложении ошибочка: «В оригинальной работе дисперсия вычисляется по контору=контуру объекта.»
А раскажите по подробнее про лидар?
Как быстро он изменяет?
Он сразу возвращает поток растояний до объектов под всеми доступными углами или его надо нацеливать («замерь ка мне под такими то углами»)?
Спасибо!
интересно узнать, когда температура воздуха больше температуры человека?
если кто-то бросил окурок в сторону например — не опознает ли машина в нем человека?

Сорри за тупые вопросы — интересно.
размер окурка не соизмерим с размером человека + учет дальности
мы знаем расстояние до окурка и его размер по плоской картинке (видео с ИК камеры) — и значит можем узнать его реальный размер
другое дело что окурок может закрыть обзор и тогда с кем нибудь да столкнемся
Не понял, откуда система знает размер окурка на плоской картинке. Это ведь означает, что в базе данных системы должен быть окурок с его параметрами. И, более того, система должна распознать, что это вот горячее пятно — это окурок вблизи, а не человек вдали.
мы знаем расстояние до окурка (или любого другого объекта) уже в 3 раз пишу… кроме ИК камеры есть еще лидар — типа такая штука — дальность измеряет… т.е. автор не только ищет теплых людей, но и знает сколько метров до грустного финала осталось =)
Что такое лидар, я знаю.) Но не думал, что у него хватет точности и скорости обнаруживать и столь мелкие объекты, и осматривать все пространство вокруг машины.
вот тут же незнаю =) думаю если это такой мелкий объект, что его не видит лидар — оно будет просто пропущено алгоритмом как шум и проблема решена =)
Окурок это не серьезно =) Я же выделяю прямоугольник, который в реальности имеет размер 2 на 1 метр. Окурок в нем будет небольшой точкой.
Окурок это не серьезно =) Я же выделяю прямоугольник, который в реальности имеет размер 2 на 1 метр. Окурок в нем будет небольшой точкой.
Такой алгоритм уже реализован на Volvo S60. Эта машина автоматически затормозит, если на её пути окажется пешеход.

Там используется сонар.

Сравнивали эффективность вашего подхода и уже реализованного?
UFO landed and left these words here
Нет, не сравнивал. У них все больше маркетинговая информация на сайте.
что-то мне подсказывает, что сейчас температура тела у большинства ниже температуры воздуха тем более окружающих объектов. Подумал я посмотрев на градусник показывающий за окном 38 по цельсию.
>> Температура тела человека обычно выше окружающей среды
Очень спорное утверждение.

Для оценки надежности надо использовать статистику.
Ясно, что ваше решение не абсолютное, и есть некоторые существенные изъяны. Например — как вы определяете пешехода? Область с более высокой температурой. Дальше дело техники — отфильтровать, посчитать инварианты и снова отфильтровать. Прямоугольник в 1x2. Как на счет детей?
Практика показывает — один метод редко дает высокие результаты (конечно, в том случае, если вы разрабатываете систему, а не просто исследуете данный подход). Не пробовали использовать в дополнение морфологические особенности пешеходов? Например, начать с таких уже проработанных вещей как распознование лиц.
Все так. Я и не пытаюсь сказать — вот такой метод я использую и он самый лучший. Морфологические признаки использовались когда–то, но сейчас от них отказались в пользу классификации. То есть основная моя работа — это создание более универсального классификатора: выделяем область на картинке и говорим, что там. Сейчас я распознаю взрослых людей (про детей писал выше), надо будет добавить животных — нет проблем, добавляем тренировочные последовательности, изменяем выделяемую из изображения область и вперед.
> Температура тела человека обычно выше окружающей среды.

А что жители европейской части России на это скажут? :)
«Очевидно, что проблема обнаружения пешеходов — программная, а предотвращение столкновения — аппаратная.»

Предотвращение столкновения — тоже программная проблема. Мы ведь не будем тупо тормозить при обнаружение пешехода: может тормозить уже запозно и надо рассчитывать как объехать пешехода и.т.д.
Здорово, что такие технологии начинают появляться. Ежегодно в ДТП погибает более миллиона человек и это число будет расти до тех пор, пока мы не научимся заменять водителя искусственным интеллектом, совершающим меньше ошибок. Но, конечно, современным системам еще очень далеко до возможностей человеческого мозга, от которых просто дух захватывает. Мы, находясь за рулем, сами того не осознавая, совершаем десятки сложнейших прогнозов, причем, после обретения некоторого опыта, нам необязательно задействовать сознание в этом процессе. Сознание включается лишь во внештатных ситуациях, когда какой-либо из прогнозов не сбывается и нужно мгновенно задейтсовать дополнительные ресурсы для принятия решения, которое впоследствии станет частью нашего опыта. Причем мы не используем никаких тепловизоров, достаточно только двух (и даже одного) приемника электромагнитного излучения, чтобы наш мозг моделировал полную трехмерную картину вокруг, состоящую из множества объектов, поведение каждого из которых спрогнозировано. К примеру, сложно представить, что какая-либо система сможет спрогнозировать, что пьяный человек на обочине представляет опасность, или что за выкатившимся на дорогу мячом может выбежать ребенок.
А как же собачки, кошечки и барашки?

Вообще, мне кажется, что выделять области интереса на статичных кадрах — тупиковое направление. Нужно анализировать последовательность кадров, причем как минимум с двух разнесенных по горизонтали сенсорам (бинокулярное зрение). То есть, обязательно нужен анализ по оси времени, хотя бы на несколько кадров, причем каждый кадр должен иметь больше чем один ракурс (как минимум два). Тогда точность распознавания повысится в разы. В этом направлении работы ведутся?
А то! Только другими людьми. Это действительно очень обширная область, в которой есть где развернуться. Но чем больше сенсоров используется, чем больше изображений с разных ракурсов задействовано, тем сложнее становится все это контролировать и соединять воедино.
"… а потом смотрю… столбы начали дорогу перебегать, все перебежали… один не успел"
из объяснений водителя, который в жару утолял жажду не совсем тем.
Only those users with full accounts are able to leave comments. Log in, please.