Компьютерное зрение.
Базовый уровень.

Работа с компьютерным зрением в задачах беспилотных автомобилей по детектированию и распознавнию объектов городской среды
Курс основан на решении задач беспилотного автомобиля по детектированию
и распознаванию пешеходов, светофоров, дорожных знаков и разметки. Для отработки задач автономного движения на практике используется образовательный учебный беспилотный автомобиль АЙКАР и испытательные полигоны АЙКАР Стенд.
Ключевая задача Айкара – двигаться по своей полосе дорожного полотна, соблюдая правила дорожного движения и корректно реагируя на внешние элементы: дорожные знаки, сигналы светофора и приближение пешеходов.



Язык программирования: Python
В ходе курса Вам предстоит писать программы на языке Python. Для этого необходимо установить Python, среду разработки и подключить библиотеку OpenCV. На нашем сайте представлены подробные инстуркции по установке необходимого ПО.

В некоторых уроках курса вам предстоит работать с кодом в Google Colab. Мы записали поясняющее видео о том, что это и как начать им пользоваться.


Последнее пожелание. Как правило, наши уроки начинаются с теоретической части. Бывает такое, что Вы смотрите теоретическую часть и ничего не понимаете.
Это не повод бросать занятие! Не волнуйтесь: все сложные моменты теории подробно разбираются в практической части урока.

Введение в компьютерное зрение

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

После просмотра видео рекомендуем закрепить материал и выполнить задания в блокноте Google Colab.

Изображение с камеры компьютера

В этом уроке мы выведем на экран видеопоток с камеры компьютера. Своеобразный "Hello World" в OpenCV.


Распознавание сигналов светофора

В этом уроке мы будем распознавать, какой свет сейчас зажжён на фотографиях реальных светофоров. Научимся пользоваться особенностью цветового пространства HSV и искать файлы по маске адреса.
00:05 – Постановка задачи
00:55 – Общее описание работы алгоритма
04:55 – Изъятие конкретной составляющей цвета из изображения
15:12 – Разбор программы распознования сигналов светофора
25:55 – Работа с путями и именами изображений

Детектирование и распознавание дорожных знаков

В этом уроке мы познакомимся с пороговой бинаризацией, контурным анализом, детектированием по цветам и попиксельным сравнением с эталоном.
Детектирование объектов на изображении
0:07 – Что называется детектированием?
1:14 – Принцип работы детектирования по цвету
3:26 – Функция бинаризации inRange
6:03 – Программа для подбора порогов бинаризации
11:13 – Бинаризация изображения из файла и с камеры: значения параметров
15:47 – Функция размытия изображения
18:29 – Избавление от ряби на чёрно-белом изображении: функции erode и dilate
22:19 – Написание функции детектирования знаков: получение бинаризованного изображения
25:14 – Написание функции детектирования знаков: функция поиска контуров
29:08 – Написание функции детектирования знаков: использование наибольшего контура
31:38 – Вырезание области изображения с детектируемым объектов
Распознавание детектированных объектов
0:07 – Принцип распознавания сравнением с эталоном
2:37 – Бинаризация эталонного изображения и распознаваемого
9:09 – Распознавание дорожных знаков: сравнение сдетектированного изображения с эталоном
12:57 – Верификация распознаного изображения

Детектирование простых объектов на примере пешеходов

До этого момента в курсе были рассмотрены относительно простые инструменты компьютерного зрения. Переходим к изучению методов машинного обучения.
Предобученный HOG-SVM детектор
В этом уроке мы поговорим о том, как работают HOG-SVM детектор, и воспользуемся предобученным детектором для обнаружения пешеходов.


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

Детектирование дорожной разметки

Когда едешь по дороге, важно не слететь с неё.
В этом уроке мы напишем алгоритм для определения центра дороги.
Детектирование дорожной разметки
00:21 – Детектирование дорожной разметки камерой беспилотного автомобиля и движение по своей полосе дорожного полотна
02:18 – Общий разбор работы алгоритма
05:41 – Бинаризация изображения
13:29 – Перспективное преобразование
18:36 – Находим самые белые столбцы
24:06 – Располагаем окна для поиска пикселей разметки
30:12 – Находим пиксели дорожной разметки
37:11 – Перемещаем окна за линией
39:51 – Вычисляем центральную линию