cv - Détecter les caractéristiques de plusieurs modèles (:cv_detect_templates)
Déclaration
results, visualized = image:cv_detect_templates(templates_with_options)
Paramètres
-
templates_with_options Table facultative : chaque élément séquentiel est un objet image et les champs nommés sont des options
Champs d’options
{
should_visualize = false | true, -- facultatif, produire une visualisation, par défaut false
detector = 0 | 1 | 2, -- facultatif, détecteur de caractéristiques, 0: ORB, 1: SIFT, 2: SURF, par défaut 0: ORB
score_thresh = number_value, -- facultatif, seuil de score en pourcentage pour la correspondance, par défaut 90
}
Valeur de retour
-
results Table : collection des caractéristiques de modèles détectées dans l’image
Structure des résultats
{
{ -- résultat 1
{ -- sommet 1
["y"] = number_value,
["x"] = number_value,
},
{ -- sommet 2
["y"] = number_value,
["x"] = number_value,
},
{ -- sommet 3
["y"] = number_value,
["x"] = number_value,
},
{ -- sommet 4
["y"] = number_value,
["x"] = number_value,
},
confidence = number_value, -- confiance agrégée de tous les points caractéristiques
angle = number_value, -- angle de rotation
index = number_value, -- index du modèle correspondant dans la collection d’entrée
},
{ -- résultat 2
{ -- sommet 1
["y"] = number_value,
["x"] = number_value,
},
{ -- sommet 2
["y"] = number_value,
["x"] = number_value,
},
{ -- sommet 3
["y"] = number_value,
["x"] = number_value,
},
{ -- sommet 4
["y"] = number_value,
["x"] = number_value,
},
confidence = number_value,
angle = number_value,
index = number_value,
},
...
} -
visualized Objet image ; lorsque
options.should_visualizevauttrue, il s’agit de l’image de visualisation
Description
Détecte dans l’image les caractéristiques d’un ensemble de petits modèles ; cela convient aux modèles déformés ou pivotés.
Pour chaque modèle, seul le meilleur résultat dont le score dépasse score_thresh est retourné.
Pris en charge à partir de la version 20250625
Remarque
score_thresh (entrée) et confidence (sortie) sont distincts.
score_thresh filtre les points caractéristiques ; confidence est la confiance agrégée de tous les points du modèle.
Exemple
local cv = require("image.cv")
local img1 = image.load_file(XXT_SCRIPTS_PATH..'/1.png')
local img2 = image.load_file(XXT_SCRIPTS_PATH..'/2.png')
local results, visimg = screen.image():cv_detect_templates({
img1, img2;
score_thresh = 90,
detector = 1, -- SIFT
should_visualize = true, -- lorsque true, la deuxième valeur retournée est une image
})
nLog(results)
dialog():add_image(visimg):show()