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

Малая U-Net для обнаружения транспортных средств

Вивек Ядав

В проекте по обнаружению транспортных средств учащиеся используют стандартные методы компьютерного зрения для обнаружения и определения местоположения транспортных средств на изображениях, сделанных во время вождения по шоссе. Компания Vivek вышла далеко за рамки стандартных методов компьютерного зрения и использовала U-Net, архитектуру кодировщика-декодера, которая доказала свою эффективность для получения медицинских изображений. Результаты поразительны.

Еще одно преимущество использования U-сети состоит в том, что у нее нет полностью связанных слоев, поэтому нет ограничений на размер входного изображения. Эта функция позволяет нам извлекать элементы из изображений разного размера, что является привлекательным атрибутом для применения глубокого обучения к высокоточным данным биомедицинской визуализации. Способность U-net работать с очень небольшим объемом данных и отсутствие особых требований к размеру входного изображения делают его сильным кандидатом для задач сегментации изображений.

Проект My Lane Detection Project в самоуправляемой автомобильной наноструктуре от Udacity

Парам Аггарвал

Парам дает отличное пошаговое руководство по своему первому проекту - Finding Lane Lines. Он также включает видео, в котором показаны все промежуточные этапы, необходимые для поиска полос движения на дороге. Затем он применяет свой конвейер компьютерного зрения к новому набору видео!

Это самый важный шаг, мы используем преобразование Хафа для преобразования точек пикселей, которые были обнаружены как края, в осмысленные линии. Требуется множество параметров, включая то, насколько прямой должна быть линия, чтобы она считалась линией, и какой должна быть минимальная длина линий. Он также будет соединять для нас последовательные линии, если мы укажем максимально допустимый промежуток. Это ключевой параметр, позволяющий нам объединить пунктирную полосу движения в одну обнаруженную полосу движения.

Экстраполировать линии с помощью numpy.polyfit

Петерис Никифоров

В преддверии проекта «Поиск линий переулка» мы обучаем студентов некоторым важным функциям компьютерного зрения для извлечения линий из изображений. Это такие инструменты, как преобразования Хафа и обнаружение краев Кэнни. Однако мы оставляем учащимся самим определять, какие линии соответствуют линиям дорожек. Большинство студентов находят некоторые точки и экстраполируют y = mx + b. Однако Петерис пошел дальше и научился использовать функцию numpy.polyfit () для автоматического определения линейного уравнения!

Если вернуться к исходному вопросу, как нам экстраполировать строки?

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

Подход на основе глубокой нейронной сети для изучения поведения человека за рулем

Вивек Ядав

Обучая свою сквозную сеть управления для проекта Behavioral Cloning, Вивек заставил нас значительно улучшить изображение. Он перевернул свои изображения, изменил их размер, добавил тени, изменил яркость и применил вертикальные и горизонтальные сдвиги. Все это позволило его модели обобщить до совершенно нового трека, которого он никогда раньше не видел.

Это был, пожалуй, самый странный проект, который я делал. Этот проект бросил вызов всем моим предыдущим знаниям о глубоком обучении. В общем, большой размер эпох и обучение с большим количеством данных приводят к лучшей производительности, но в этом случае каждый раз, когда я выходил за пределы 10 эпох, машина просто съезжала с трассы. Хотя все улучшения изображения и настройки кажутся разумными n0w, я не думал о них априори.

Но инженерам-самоуправляемым автомобилям не обязательно знать C / C ++, верно?

Мигель Моралес

Практический пост Мигеля охватывает некоторые из различных точек зрения, с которых инженеру, занимающемуся автономными автомобилями, может потребоваться знание C ++, ROS и других инструментов разработки автономных транспортных средств. Это отличное чтение, если вы ищете работу в отрасли!

Инженеры по самостоятельному вождению автомобилей используют C / C ++, чтобы выжать из машины как можно больше скорости. Помните, что вся обработка в автономных транспортных средствах выполняется в режиме реального времени и даже иногда в параллельных архитектурах, поэтому вам придется научиться кодировать для ЦП, но также и для графического процессора. Для вас жизненно важно предоставить программное обеспечение, которое может обрабатывать большое количество изображений (подумайте о стандартных кадрах в секунду - 15, 30 или даже 60) каждую секунду.