Система предупреждения о сходе с полосы

Этот пример показывает, как обнаружить и отследить дорожные маркеры маршрута в видео последовательности и уведомляет драйвер, если они преодолевают маршрут. Пример иллюстрирует, как использовать Преобразование Хафа, Строки Хью и блоки Фильтра Калмана, чтобы создать алгоритм обнаружения и отслеживания строки. Пример реализует этот алгоритм с помощью следующих шагов: 1) Обнаружьте маркеры маршрута в текущем кадре видео. 2) Совпадайте с текущими маркерами маршрута обнаруженным в предыдущем кадре видео. 3) Найдите левые и правые маркеры маршрута. 4) Выпустите предупреждающее сообщение, если автомобиль преодолевает любой из маркеров маршрута.

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

Примечание: параметры в качестве примера заданы в рабочем пространстве модели. Чтобы получить доступ к параметрам, нажмите View> Model Explorer. Затем перейдите к Рабочему пространству модели под именем модели.

См. Системный пример предупреждения о сходе с полосы.

Модель в качестве примера

Следующие данные показывают Системную модель предупреждения о сходе с полосы в качестве примера:

Подсистема обнаружения маршрута

Эта подсистема использует 2D КИХ-блоки Фильтра и Автопорога, чтобы обнаружить левые контуры маркеров маршрута в текущем кадре видео. Контуры маркеров маршрута напоминают прямые линии и соответствуют пиковым значениям в матрице Преобразования Хафа. Эта подсистема использует блок Find Local Maxima, чтобы определить местоположение Полярной координаты маркеров маршрута.

Подсистема отслеживания маршрута

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

Исходная подсистема предупреждения

Эта подсистема использует блок Hough Lines, чтобы преобразовать Полярные координаты строки к Декартовым координатам. Подсистема использует эти Декартовы координаты, чтобы вычислить расстояние между маркерами маршрута и центром видео нижней границы. Если это расстояние является меньше, чем пороговое значение, пример выдает предупреждение. Эта подсистема также определяет, является ли строка желтой или белой и твердо ли это или повреждается.

Системные результаты предупреждения о сходе с полосы

Окно Safety Margin Signals показывает график метрики запаса прочности. Метрика запаса прочности определяется расстоянием между автомобилем и самым близким маркером маршрута. Когда метрика запаса прочности, отображенная желтым, опускается ниже 0, отображенный синим, автомобиль находится в исходном режиме маршрута в противном случае, автомобиль находится в нормальном ведущем режиме.

Окно Results показывает левые и правые маркеры маршрута и предупреждающее сообщение. Предупреждающее сообщение указывает, что автомобиль преодолевает правильный маркер маршрута. Тип и цвет маркеров маршрута также показывают в этом окне. В дополнение к текстовому сообщению версия Windows® примера выдает аудио предупреждение.

Доступные версии в качестве примера

Версия с плавающей точкой этого примера: vipldws.slx

Версия фиксированной точки этого примера: vipldws_fixpt.slx

Для просмотра документации необходимо авторизоваться на сайте