Dans la version 27, une nouvelle famille de fonctions apparaît, il s'agit des fonctions d'intelligence artificielle. Ces fonctions permettent l'utilisation de modèles de reconnaissance d'objets.

 

 

La reconnaissance d'objets utilise un modèle de reconnaissance. Ce modèle est une base à laquelle on a appris les diverses formes que pouvait prendre un objet, une personne, un visage, … Il existe de nombreux modèles permettant de reconnaitre des objets. Plus le nombre d'images utilisées pour créer le modèle a été important, plus la reconnaissance sera efficace. On appelle ces bases de données des dataset. On trouve des modèles gratuits, payants et certaines sociétés proposent de créer des modèles spécifiques.

 

Grâce à la version 27 de WINDEV, il est possible d'exploiter ces différents modèles. La famille de fonctions IA* permet donc d'exploiter ces modèles. WINDEV 27 est d'ailleurs livré avec le modèle « yolo » qui permet de débuter rapidement le développement d'application de reconnaissance d'objets.

 

Voici par exemple un code permettant de détecter des personnes dans une image :

 

// Initialisation du tableau des type d'éléments recherchés.
tabElement est un tableau de 1 entiers
tabElement[1] = iadPersonne

// Lancement de la recherche
tabIARésultatImage est un tableau de iaRésultatImage
tabIARésultatImage = IADétecte(IMG_Salle,tabElement)

// On filtre le résultat pour éviter des faux positifs (indice de confiance).
tabIARésultatImage = tabIARésultatImage.Filtre(unePersonne=>unePersonne.IndiceConfiance>50)

// Dessin des polygones qui entourent ces personnes.
dDébutDessin(IMG_Salle)
POUR TOUT UnePersonne de tabIARésultatImage
dPolygone(IMG_TEST,CoordonnéeImageVersChampImage(IMG_TEST, UnePersonne.Polygone),Transparent,iJauneClair)
FIN

Info("Il y a "+tabIARésultatImage.Occurrence+" personnes identifiées dans l'image.")

 

On obtient donc en quelques lignes de code un détourage des personnes détectées sur l'image fournie.

Le résultat obtenu est bien sûr dépendant :

  • de la qualité de l'image,
  • de son éclairage, son orientation,
  • du modèle utilisé (dataset),
  • de la tolérance à l'erreur choisie (indice de confiance).

 

< Retour

5 commentaires

Jacques ROSEC
06/11/2021 - 16:56 - Répondre
A part reconnaître une personne ou un visage dans une photo, l'IA peut-elle l'identifier ? (son nom) De même l'IA peut-elle lire le contenu d'un plaque d'immatriculation ?

Guillaume BAYLE
08/11/2021 - 09:26 - Répondre
Bonjours, les modèles proposés par défaut (au nombre de 82 !) permettent d'obtenir les plaques ou visages d'une image. La reconnaissance des caractères d'une plaque contenue dans une image, ou d'un visage, constitue une étape supplémentaire. Une illustration est déjà proposée dans la LST 111. N'hésitez pas à contacter notre support pour davantage de détails en fonction de vos besoins précis.

Birkle
01/02/2022 - 18:18 - Répondre
Bonjour, comment intégrer un nouveau modèle ? Quel est le format attendu dataset ? Quel code doit être généré ? Merci d'avance de votre aide

christian
11/02/2022 - 15:58 - Répondre
Il manque la procédure : CoordonnéeImageVersChampImage

Loïc HAMEL
11/02/2022 - 16:04 - Répondre
Bonjour, C'est une fonction du WLanguage, pas une procédure.

Publier un commentaire : 
Votre adresse email ne sera pas publiée