До появления в продаже беспилотных автомобилей осталось не так много времени. 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)


  1. Vik
    16.08.2015 10:18

    Я из текста не понял одного: если перед автомобилем возник не человек, а любое другое препятствие, в том числе и движущееся, что тогда? Какая разница для автомобиля между человеком и не человеком? И что значит «чтобы машинное зрение автомобиля не спутало вас с фоном». Сонару автомобиля должно быть всё равно какого цвета препятствие, разве нет?


    1. Grox
      16.08.2015 11:37

      Сонары слышат ближайшее окружение. Если на высокой скорости пешехода узреет сонар, то максимум, машина успеет немного затормозить.
      Речь о распознавании по изображениям с камер, которые видят ситуацию вокруг на десятки метров.


    1. YouraEnt
      16.08.2015 14:18

      Детектор пешеходов чаще всего нужен для пропуска пешехода. То есть в ситуации, кгда человек стоит у края дороги и ждёт, чтобы перейти её.


  1. bak
    16.08.2015 13:13

    пешехода удаётся заметить с высокой точностью 73,8%

    Пожалуй, я больше не стану переходить дорогу в неположенных местах.


    1. kyrie
      17.08.2015 12:53

      Ну почему, статистически у вас есть почти 4 попытки.


  1. Ajex
    16.08.2015 16:18

    Интересно, а каков процент распознавания у среднестатистического водителя? Интересно сравнить с роботом.
    Реальность такова, что на ближнем свете в ночное время суток распознать пешехода без жилета дальше чем за 10-20 метров практически нереально.
    Поэтому большинство людей еще живы ибо имеют инстинкт самосохранения и понимают, что не нужно выскакивать в таких условиях перед машиной, ибо от водителя тут практически ничего не зависит и у него практически нет ни каких шансов среагировать в такой ситуации, даже если он полон сил и со 100% зрением.
    Не понимаю, почему бы всем борцам за жизни пешеходов не пролоббировать закон, обязывающий устанавливать в серийные авто хотя бы самые элементарные сонары, которые будут давать звуковое предупреждение о такой ситуации. Это ведь элементарные вещи, которые могут спаси много жизней.


    1. shifttstas
      19.08.2015 15:50

      в городе — светофоры с кнопкой намного проще
      за городом — светоотражающие материалы

      и то и другое частично используется уже и в этой стране


  1. nomadmoon
    17.08.2015 07:55

    А лисапедистов распознаёт?


  1. Mithgol
    17.08.2015 10:25

    пешехода удаётся заметить с высокой точностью 73,8% случаев
    Дальше не мог уж читать: рука накрыла лицо.


  1. m08pvv
    17.08.2015 12:22

    И почему все пытаются распознавать в видимом спектре?
    Почему не сделать комплексную систему, которая ищет не только в видимом, но и в ИК, а также по дальномеру. С видимым диапазоном человек не всегда справляется даже при идеальных условиях, что уже говорить про чёрные куртки ночью и прочие прелести дорожных видео.


    1. BelBES
      17.08.2015 13:08

      Ну почему же? Например, Родриго Бененсон в паре своих работ использовал стерео-камеру для повышения качества детектирования пешеходов. Также и в Mersedes разрабатывают алгоритмы детектирования пешеходов, исопльзующие depth-информацию. Но там везде есть свои нюансы особенности (начиная от низкой точности стерео-камер и их склонность «умирать» при пересветах и т.п., заканчивая медленной скоростью обработки данных с лидаров).

      Дальномер вообще может дать информацию о препятствии, но классифицировать его скорей всего не сильно поможет.

      Что касается IR диапазона — то по сути он ведь нам может дать только чуть более качественную картинку, но методы обработки будут аналогичны тем, что используются для обычной RGB-камеры, т.ч. обобщить текущие системы на IR камеры не должно составить большого труда.


      1. m08pvv
        17.08.2015 13:18

        Суть в том, что чем больше источников данных — тем больше вероятность обнаружения препятствия. И, как мне кажется, нет особой разницы между избежать столкновения со стеной или с пешеходом (разве что в последнем случае если водитель выживет, то может ещё и сесть). В тех случаях, когда в видимом спектре не разобрать, приходит на помощь ИК и дальномер. Объединяя вместе разные технологии, мы получаем больше шансов заметить препятствие. А используя данные, которые человек не в состоянии самостоятельно воспринимать (ИК, лидар и т.д.), можно добиться результатов, превосходящих человеческие возможности и при этом повторяемые и стабильные, что и ожидается от роботизированных автомобилей.


        1. BelBES
          17.08.2015 14:03

          1) Чем больше входных данных, тем дольше их придется обрабатывать, а хотелось бы все обрабатывать в режиме реального времени (если пешеходы будут детектироваться 5 минут на каждом кадре со 100% точность, то актуальность этой информации будет нулевой) на железе, которое можно навесить на автомобиль, а не на кластере.

          2) Задачи obstacle detection и детектирования конкретно автомобилей/пешеходов — это разные задачи. Т.к. в современных системах уже не достаточно просто понять, что перед нами объект, мы еще хотим знать, что это за объект (простейший случай, мы хотим знать, что препятствие на обочине — это пешеход, а не столб/дерево и надо ли его пропускать, ну или предсказывать траектории движения пешеходов, чтобы своевременно принимать меры для избежания столкновений).


          1. m08pvv
            17.08.2015 14:24

            1) Что мешает обрабатывать каждый поток данных отдельно и выдавать только сигнал о детектировании? А для комбинированных методов (например, выделение паттернов на расширенном диапазоне «видимый+ИК») вполне можно получить такую же скорость обработки, как и для одиночных методов.

            2) В такой постановке можно к «пешеходам» добавить ещё и лося, падающий столб и многое другое, ибо их траектории тоже неплохо бы предсказывать?


            1. BelBES
              17.08.2015 14:35

              1) Что мешает обрабатывать каждый поток данных отдельно и выдавать только сигнал о детектировании?

              Не понял идею.

              2) В такой постановке можно к «пешеходам» добавить ещё и лося, падающий столб и многое другое, ибо их траектории тоже неплохо бы предсказывать?

              Ну можно наверно. Но тут то в статье речь идет именно про детектирование пешеходов)


              1. m08pvv
                17.08.2015 15:29

                Не понял идею.

                Есть одна коробка, которая обрабатывает видимый спектр и выдаёт «вот там пешеход!», есть вторая коробка, которая обрабатывает данные лидара и выдаёт «вот там движущееся препятствие» — крупномодульный параллелизм. Да, добавится задержка из-за нового уровня абстракции, но всё это можно свести к допустимым результатам и система будет успевать реагировать.
                Более того, техника развивается и то, что «вчера» делалось кластером, «завтра» будет делаться простым персональным устройством.


                1. BelBES
                  17.08.2015 15:41

                  Осталось дождаться этого светлого завтра, когда можно будет нашпиговать машину вычислителями подо все возможные задачи)
                  А вообще сейчас такое уже делают, например реализуя часть пайплайна «в железе» при помощи FPGA.


  1. IvanKlut
    17.08.2015 15:52

    Пришла в голову мысль, что сама технология автоматического управления гугломобилем побочная. Основная функция иметь полную картину происходящего в мире и отслеживать людей…


  1. mexanism
    17.08.2015 16:39
    +1

    Пропустит ли гугломобиль манекена на пешеходном переходе?
    image


  1. BalinTomsk
    17.08.2015 21:36

    --но с появлением на улицах роботизированных автомобилей лучше одеваться поярче, а не в камуфляж

    однажды чуть на задавил негра при повороте налево в темный неосвешенный переулок, негр был одет во все черное — я с трудом распознал белки глаз. Думаю компу будет проше, прочитал в IR и UV диапазонах