До появления в продаже беспилотных автомобилей осталось не так много времени. Google доводит до ума технологии машинного зрения и один из самых важных элементов — распознавание пешеходов в реальном времени.
Исследователи из Google Research Алекс Крижевский (Alex Krizhevsky), Анелия Ангелова (Anelia Angelova) с коллегами представили новый метод детектирования пешеходов с помощью нейросетей. Метод показал обнадёживающий результат: пешехода удаётся заметить с высокой точностью в 73,8% случаев по тесту Caltech Pedestrian, который содержит базу данных с 50 000 помеченных пешеходов в городских и сельских условиях. Такой результат сравним с самыми лучшими альтернативными разработками.
Специалисты говорят, что одним из перспективных направлений в последнее время стало использование GPU-ускорителей в нейросетях для исполнения почти в реальном времени сложных алгоритмов распознавания образов, NLP и беглого анализа видеопотока.
На недавней конференции Nvidia GPU Technology Conference было представлено несколько таких решений. Лучше всего технологический прогресс в данной области прослеживается на результатах теста ImageNet Large Scale Visual Recognition Challenge, который проводится с 2010 года. С тех пор кардинально снизился уровень ошибок в классификации изображений алгоритмами машинного зрения.
Распознавание пешеходов — одна из практических задач, где используется новая технология. В будущем нейросети с GPU-ускорением наверняка найдут применение в камерах наблюдения, системах контроля за движением транспортных средств и др.
Возвращаясь к разработке Google, распознавание пешеходов — очень сложная задача, потому что её нужно решать в постоянно изменяющихся условиях внешней среды почти в реальном времени. Объекты вокруг автомобиля находятся в движении. Существующие технологии относительно успешно решают эту задачу. Например, один из методов показывает точность 58% в тесте Caltech Pedestrian, Другой метод под названием VeryFast предусматривает видеосъёмку на 100 кадрах/с (для сравнения, у Google съёмка идёт на 15 кадрах/с), но там точность ниже. Есть методы с более высокой точностью, но они работают гораздо медленнее, снижение скорости до 195 раз.
В Google Research поставили цель улучшить точность распознавания без ущерба для скорости работы. На 15 кадрах/с они показали кардинальное повышение точности до 73,8%.
Фраза “26,2% average miss rate” из научной работы не должна вводить в заблуждение: речь не идёт о том, что автомобиль промахнулся по пешеходу и не заработал очки как в Carmageddon. Наоборот, фраза означает, что это алгоритм «промахнулся» и не распознал человека, чтобы затормозить перед ним.
В Google Research систему машинного зрения запускали на графическом ускорителе старого поколения Nvidia K20 Tesla GPU. Сейчас выпущены новые версии K40 и K80, которые используются в некоторых суперкомпьютерах из рейтинга Top500.
Группа исследователей Google Research намерена улучшить результат, увеличивая глубину каскада нейросетей и оптимизируя соотношение производительности и точности.
Так или иначе, но с появлением на улицах роботизированных автомобилей лучше одеваться поярче, а не в камуфляж, чтобы машинное зрение автомобиля не спутало вас с фоном. С другой стороны, такой совет можно дать и сейчас, когда машинами часто управляют полуслепые, полупьяные и отвлекающиеся водители.
Комментарии (20)
Ajex
16.08.2015 16:18Интересно, а каков процент распознавания у среднестатистического водителя? Интересно сравнить с роботом.
Реальность такова, что на ближнем свете в ночное время суток распознать пешехода без жилета дальше чем за 10-20 метров практически нереально.
Поэтому большинство людей еще живы ибо имеют инстинкт самосохранения и понимают, что не нужно выскакивать в таких условиях перед машиной, ибо от водителя тут практически ничего не зависит и у него практически нет ни каких шансов среагировать в такой ситуации, даже если он полон сил и со 100% зрением.
Не понимаю, почему бы всем борцам за жизни пешеходов не пролоббировать закон, обязывающий устанавливать в серийные авто хотя бы самые элементарные сонары, которые будут давать звуковое предупреждение о такой ситуации. Это ведь элементарные вещи, которые могут спаси много жизней.shifttstas
19.08.2015 15:50в городе — светофоры с кнопкой намного проще
за городом — светоотражающие материалы
и то и другое частично используется уже и в этой стране
Mithgol
17.08.2015 10:25пешехода удаётся заметить
Дальше не мог уж читать: рука накрыла лицо.с высокой точностью 73,8% случаев
m08pvv
17.08.2015 12:22И почему все пытаются распознавать в видимом спектре?
Почему не сделать комплексную систему, которая ищет не только в видимом, но и в ИК, а также по дальномеру. С видимым диапазоном человек не всегда справляется даже при идеальных условиях, что уже говорить про чёрные куртки ночью и прочие прелести дорожных видео.BelBES
17.08.2015 13:08Ну почему же? Например, Родриго Бененсон в паре своих работ использовал стерео-камеру для повышения качества детектирования пешеходов. Также и в Mersedes разрабатывают алгоритмы детектирования пешеходов, исопльзующие depth-информацию. Но там везде есть свои нюансы особенности (начиная от низкой точности стерео-камер и их склонность «умирать» при пересветах и т.п., заканчивая медленной скоростью обработки данных с лидаров).
Дальномер вообще может дать информацию о препятствии, но классифицировать его скорей всего не сильно поможет.
Что касается IR диапазона — то по сути он ведь нам может дать только чуть более качественную картинку, но методы обработки будут аналогичны тем, что используются для обычной RGB-камеры, т.ч. обобщить текущие системы на IR камеры не должно составить большого труда.m08pvv
17.08.2015 13:18Суть в том, что чем больше источников данных — тем больше вероятность обнаружения препятствия. И, как мне кажется, нет особой разницы между избежать столкновения со стеной или с пешеходом (разве что в последнем случае если водитель выживет, то может ещё и сесть). В тех случаях, когда в видимом спектре не разобрать, приходит на помощь ИК и дальномер. Объединяя вместе разные технологии, мы получаем больше шансов заметить препятствие. А используя данные, которые человек не в состоянии самостоятельно воспринимать (ИК, лидар и т.д.), можно добиться результатов, превосходящих человеческие возможности и при этом повторяемые и стабильные, что и ожидается от роботизированных автомобилей.
BelBES
17.08.2015 14:031) Чем больше входных данных, тем дольше их придется обрабатывать, а хотелось бы все обрабатывать в режиме реального времени (если пешеходы будут детектироваться 5 минут на каждом кадре со 100% точность, то актуальность этой информации будет нулевой) на железе, которое можно навесить на автомобиль, а не на кластере.
2) Задачи obstacle detection и детектирования конкретно автомобилей/пешеходов — это разные задачи. Т.к. в современных системах уже не достаточно просто понять, что перед нами объект, мы еще хотим знать, что это за объект (простейший случай, мы хотим знать, что препятствие на обочине — это пешеход, а не столб/дерево и надо ли его пропускать, ну или предсказывать траектории движения пешеходов, чтобы своевременно принимать меры для избежания столкновений).m08pvv
17.08.2015 14:241) Что мешает обрабатывать каждый поток данных отдельно и выдавать только сигнал о детектировании? А для комбинированных методов (например, выделение паттернов на расширенном диапазоне «видимый+ИК») вполне можно получить такую же скорость обработки, как и для одиночных методов.
2) В такой постановке можно к «пешеходам» добавить ещё и лося, падающий столб и многое другое, ибо их траектории тоже неплохо бы предсказывать?BelBES
17.08.2015 14:351) Что мешает обрабатывать каждый поток данных отдельно и выдавать только сигнал о детектировании?
Не понял идею.
2) В такой постановке можно к «пешеходам» добавить ещё и лося, падающий столб и многое другое, ибо их траектории тоже неплохо бы предсказывать?
Ну можно наверно. Но тут то в статье речь идет именно про детектирование пешеходов)m08pvv
17.08.2015 15:29Не понял идею.
Есть одна коробка, которая обрабатывает видимый спектр и выдаёт «вот там пешеход!», есть вторая коробка, которая обрабатывает данные лидара и выдаёт «вот там движущееся препятствие» — крупномодульный параллелизм. Да, добавится задержка из-за нового уровня абстракции, но всё это можно свести к допустимым результатам и система будет успевать реагировать.
Более того, техника развивается и то, что «вчера» делалось кластером, «завтра» будет делаться простым персональным устройством.BelBES
17.08.2015 15:41Осталось дождаться этого светлого завтра, когда можно будет нашпиговать машину вычислителями подо все возможные задачи)
А вообще сейчас такое уже делают, например реализуя часть пайплайна «в железе» при помощи FPGA.
IvanKlut
17.08.2015 15:52Пришла в голову мысль, что сама технология автоматического управления гугломобилем побочная. Основная функция иметь полную картину происходящего в мире и отслеживать людей…
BalinTomsk
17.08.2015 21:36--но с появлением на улицах роботизированных автомобилей лучше одеваться поярче, а не в камуфляж
однажды чуть на задавил негра при повороте налево в темный неосвешенный переулок, негр был одет во все черное — я с трудом распознал белки глаз. Думаю компу будет проше, прочитал в IR и UV диапазонах
Vik
Я из текста не понял одного: если перед автомобилем возник не человек, а любое другое препятствие, в том числе и движущееся, что тогда? Какая разница для автомобиля между человеком и не человеком? И что значит «чтобы машинное зрение автомобиля не спутало вас с фоном». Сонару автомобиля должно быть всё равно какого цвета препятствие, разве нет?
Grox
Сонары слышат ближайшее окружение. Если на высокой скорости пешехода узреет сонар, то максимум, машина успеет немного затормозить.
Речь о распознавании по изображениям с камер, которые видят ситуацию вокруг на десятки метров.
YouraEnt
Детектор пешеходов чаще всего нужен для пропуска пешехода. То есть в ситуации, кгда человек стоит у края дороги и ждёт, чтобы перейти её.