cv - Comparer des images (:cv_compare_image)
Déclaration
shapes, visualized = image:cv_compare_image(other_image[, options])
Paramètres
-
other_image Objet image à comparer
-
options Table
Champs d’options
{
should_visualize = false | true, -- facultatif, produire une visualisation, par défaut false
approx_epsilon = integer_value, -- facultatif, pourcentage du périmètre d’approximation du contour, simplifie les contours complexes, par défaut 2
}
Valeur de retour
-
shapes Table : liste des formes correspondant aux différences entre les deux images
Structure des formes
{
{ -- forme 1
{ -- sommet 1
["y"] = number_value,
["x"] = number_value,
},
{ -- sommet 2
["y"] = number_value,
["x"] = number_value,
},
...
},
{ -- forme 2
{ -- sommet 1
["y"] = number_value,
["x"] = number_value,
},
{ -- sommet 2
["y"] = number_value,
["x"] = number_value,
},
...
},
...
} -
visualized Objet image ; lorsque
options.should_visualizevauttrue, il s’agit de l’image de visualisation
Description
Compare deux images pour trouver leurs différences et retourne les listes de sommets des régions différentes. Les deux images doivent avoir les mêmes dimensions.
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')
-- retourne une liste de formes, pouvant en contenir plusieurs
local shapes, visimg = img1:cv_compare_image(img2)
nLog(shapes) -- afficher les sommets des formes
dialog():add_image(visimg):show() -- afficher l’image des différences