Systèmes ADAS: Assistant de contrôle de direction et de voies PIF6004 Sujets Spéciaux en informatique II Systèmes ADAS: Assistant de contrôle de direction et de voies Sujets Introduction Honda Intelligent Driver Support System (HIDS) Détection de voies Détection de voies (exemple d’implémentation): groupe d’étudiants du cours SIF1033 (groupe MA Levasseur)
Introduction ACC et LKAS: Ces systèmes (propriétaire de Honda) permettent le contrôle adaptatif de croisière et la détection des voies
HIDS Diagramme du HIDS
HIDS Fonctions du ACC Garder la vitesse dans l’intervalle 45-100 km/h Accélération < 0.08 G Décélération < 0.2 G
HIDS Fonctions du LKAS Garder la vitesse dans l’intervalle 65-100 km/h G Latéral < 0.2 G Rayon de la route > R230m
Introduction Advanced Driver Assistance Systems (ADAS): taches de conduite
Introduction Détection de voies (lane detection) Référence: RT Detection of Lane Markers in Urban Streets, M. Aly, Computer Vision Lab, Caltech
Introduction Détection de voies (lane detection) Correction de l’effet de perspective dans les images
Introduction Détection de voies (lane detection) Filtrage des images (détection des arêtes et contours)
Introduction Détection de voies (lane detection) Détection des segments rectilignes
Introduction Détection de voies (lane detection) Détection des segments rectilignes, raffinement de la localisation par l’approche RANSAC
Introduction Détection de voies (lane detection) Détection des segments rectilignes, raffinement de la localisation par l’approche RANSAC par Bezier Spline
Introduction Détection de voies (lane detection) Détection des segments rectilignes, raffinement de la localisation par l’approche RANSAC par Bezier Spline avec projection avant et après des splines
Détection de voies (lane detection) Introduction Détection de voies (lane detection) Résultat de la localisation des voies Bezier splines avec projection Bezier splines originales
Détection de voies (exemple d’implémentation) Introduction Détection de voies (exemple d’implémentation) Étapes de traitement des images vidéo Transformation en perspective Lissage gaussien Transformation des couleurs (BGR -> HSV) Égalisation + Seuils Dilatation morphologique Hough Lines Classification (Modèle paramétrique Bayésien)
Détection de voies (exemple d’implémentation) Introduction Détection de voies (exemple d’implémentation) Étapes de traitement des images vidéo Transformation en perspective: permet de sélectionner la région d’intérêt (ROI) correspondant au pavé (avec les bandes lignées). Permet aussi de rendre les lignes plus droites. IMAGE
Détection de voies (exemple d’implémentation) Introduction Détection de voies (exemple d’implémentation) Étapes de traitement des images vidéo Transformation en perspective: permet de sélectionner la région d’intérêt (ROI) correspondant au pavé (avec les bandes lignées) Avant transformation Après transformation
Détection de voies (exemple d’implémentation) Introduction Détection de voies (exemple d’implémentation) Étapes de traitement des images vidéo Lissage gaussien: permet d’amoindrir le bruit, et d’éliminer des défauts dans l’image (ex: fentes dans la route, ombrages)
Détection de voies (exemple d’implémentation) Introduction Détection de voies (exemple d’implémentation) Étapes de traitement des images vidéo Transformation de couleurs BGR => HLS BGR: Blue, Green, Red HLS: Hue (teinte), Luminance, Saturation Permet la segmentation plus facile des lignes blanches: Basée sur le seuillage de la bande S et L Sachant que la Saturation et la Luminance sont élevées pour les ligne blanches.
Détection de voies (exemple d’implémentation) Introduction Détection de voies (exemple d’implémentation) Étapes de traitement des images vidéo Égalisation d’histogramme et seuillage d’image (HSL) Image HSL originale HLS Corrigée: Égalisation de la luminance Seuillage de la luminance avec THRESH_TOZERO Égalisation de la luminance et de la saturation THRESH_TOZERO
Détection de voies (exemple d’implémentation) Introduction Détection de voies (exemple d’implémentation) Étapes de traitement des images vidéo Seuillage d’image suite …. Un dernier seuillage, binaire (THRESH_BINARY) sur la luminance et la saturation permet l’extraction des lignes blanches Les valeurs de seuils tant sélectionnées manuellement
Détection de voies (exemple d’implémentation) Introduction Détection de voies (exemple d’implémentation) Étapes de traitement des images vidéo Dilatation morphologique Pour corriger les défauts, discontinuités des lignes Noyau rectangulaire 5x15 (élément structurant), étant donné que les lignes sont généralement verticales
Détection de voies (exemple d’implémentation) Introduction Détection de voies (exemple d’implémentation) Étapes de traitement des images vidéo Détection des lignes droites (Hough Line Probabiliste)
Détection de voies (exemple d’implémentation) Introduction Détection de voies (exemple d’implémentation) Étapes de traitement des images vidéo Détection des lignes droites (Hough Line Probabiliste)
Détection de voies (exemple d’implémentation) Introduction Détection de voies (exemple d’implémentation) Étapes de traitement des images vidéo Classification (Approche paramétrique de Bayes): permet de classer les lignes selon qu’elle soit pointillée (bleu) ou continue (verte) Classificateur basé sur l’apprentissage automatique probabiliste de Bayes. Il compare les probabilités qu’une observation appartienne à chacune des classes à partir des valeurs de plusieurs attributs et détermine la classe d’appartenance qui maximise la vraisemblance Utilisation: Détermination du type de ligne: Pleine ou pointillée Classe Attribut #1 Attribut #2 Attribut #3 …
Détection de voies (exemple d’implémentation) Introduction Détection de voies (exemple d’implémentation) Étapes de traitement des images vidéo Classification (Approche paramétrique de Bayes): permet de classer les lignes selon qu’elle soit pointillée (bleu) ou continue (verte) Avant le démarrage du programme Au démarrage Pendant l’exécution Prise de données Entraînement Classification Données d’entraînement Caractéristiques passées au classificateur: Longueur des lignes Angle des lignes Résultat: Le type de ligne (continue ou pointillée)
Détection de voies (exemple d’implémentation) Introduction Détection de voies (exemple d’implémentation) Étapes de traitement des images vidéo Classification (Approche paramétrique de Bayes): permet de classer les lignes selon qu’elle soit pointillée (bleu) ou continue (verte)