Partage
  • Partager sur Facebook
  • Partager sur Twitter

Opencv et détection de plaque d'immatriculation

    4 février 2024 à 16:50:39

    Bonjour, sa fait unmoment que je fais des recherches sur la détection de plaque d'immatriculation. Pour le moment je me contente d'essayer de les detecter et de les encadrer dans l'image.

    J'ai trouvé un exemple mais il semble etre assez capricieux et ne marche pas bien.

    Le voici:

    # import required libraries
    import cv2
    import numpy as np
    
    # Read input image
    img = cv2.imread("voiture/voiture8.jpg")
    cv2.imshow("gray",img)
    cv2.waitKey(0)
    
    # convert input image to grayscale
    gray = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY)
    
    cv2.imshow("gray",gray)
    cv2.waitKey(0)
    
    # read haarcascade for number plate detection
    cascade = cv2.CascadeClassifier('haarcascades\haarcascade_russian_plate_number.xml')
    
    # Detect license number plates
    plates = cascade.detectMultiScale(gray, 1.2, 5)
    print('Number of detected license plates:', len(plates))
    
    # loop over all plates
    for (x, y, w, h) in plates:
        # draw bounding rectangle around the license number plate
        cv2.rectangle(img, (x, y), (x + w, y + h), (0, 255, 0), 2)
        gray_plates = gray[y:y + h, x:x + w]
        color_plates = img[y:y + h, x:x + w]
    
        # save number plate detected
        cv2.imwrite('Numberplate.jpg', gray_plates)
        cv2.imshow('Number Plate', gray_plates)
        cv2.waitKey(0)

    J'ai essayé pas mal de choses, differente images et differents parametres mais sa marche mal, quelqu'un aurait t'il une idée du problème dans ce code?

    • Partager sur Facebook
    • Partager sur Twitter
      4 février 2024 à 18:47:18

      sa fait unmoment  -> ça fait un moment

       differente images  -> différentes images

      mais sa marche mal -> ça marche mal

      Tu as un message d'erreur ?


      -
      Edité par Phil_1857 4 février 2024 à 18:49:20

      • Partager sur Facebook
      • Partager sur Twitter
        5 février 2024 à 1:12:12

        Salut,

        Le script fonctionne chez moi, mais à condition que le modèle pré-entrainé soit présent dans ton répertoire.

        haarcascades\haarcascade_russian_plate_number.xml

        Autrement le télécharger sur Github

        Et que l'image contienne une plaque d'immatriculation RUSSE.

        • Partager sur Facebook
        • Partager sur Twitter
          6 février 2024 à 13:13:29

          J'ai effectivement fait de erreurs d’orthographe, désolé j'ai écrit vite et j'ai jamais était fort en français...

          J'ai bien ce fichier, j'obtiens des images de plaques d'immatriculation mais pas forcement bien cadré sur la plaque, certaines zones sont en trop.

          J'ai mis ci-joint des images de plaque que j’obtiens une fois binarisé.

          Je me pose la question de comment supprimer le contour de l'image qui ne sert a rien dans l'image, auriez vous une idée?

          J'ai bien pensé à créer un rectangle dans l'image en vérifiant que le tracé du rectangle n'ai pas de pixels noir sur son passage.

          Eventuellement j'ai également pensé a effectuer une rotation de l'image, j'ai essayé la transformation de hough mais je n'ai pas de bon résultats.

          Quelqu'un sait t'il comment apprendre au modèle de reconnaissance de plaque?

          Est ce compliqué a faire? Je n'ai rien trouvé sur le net en français à ce propos.

          -
          Edité par CyrilDan 6 février 2024 à 13:18:08

          • Partager sur Facebook
          • Partager sur Twitter
            7 février 2024 à 22:11:32

            CyrilDan a écrit:

            J'ai effectivement fait de erreurs d’orthographe, désolé j'ai écrit vite et j'ai jamais était fort en français...

            Tu fais des fautes sur des mots courants, le Web est démocratisé depuis 20 ans. Non, je ne t'excuse pas. Honnêtement, entre ta demande (lire les plaques) et tes fautes "mais j'écris trop vite, désolé." Ça pue l'arnaque ton truc.

            • Partager sur Facebook
            • Partager sur Twitter
              22 mars 2024 à 10:06:58 - Message modéré pour le motif suivant : Merci de créer votre propre sujet


                22 mars 2024 à 10:30:18

                tu devrais créer ton propre sujet plutôt et surtout indiquer ce qui bloque, comment tu comptes capturer la plaque. Dans l'idée, il faut fait une reconnaissance de caractère pour récupérer le numéro de la plaque et passer cette chaine à l'api
                • Partager sur Facebook
                • Partager sur Twitter
                  22 mars 2024 à 11:03:06 - Message modéré pour le motif suivant : Merci de créer votre propre sujet


                  Opencv et détection de plaque d'immatriculation

                  × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
                  • Editeur
                  • Markdown