cv - Convertir une image en contours de formes (:cv_to_shapes)
Déclaration
shapes, visualized = image:cv_to_shapes([ options ])
Paramètres
-
options
Table facultativeChamps d’options
{
should_visualize = false | true, -- facultatif, produire une visualisation, par défaut false
closed = false | true, -- facultatif, fermer les formes, par défaut false
blur_size = integer_value, -- facultatif, taille du noyau de flou, nombre impair positif uniquement, par défaut 3
canny_threshold1 = 100, -- facultatif, seuil inférieur de Canny, par défaut 100
canny_threshold2 = 200, -- facultatif, seuil supérieur de Canny, par défaut 200
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 : informations des sommets des formes présentes dans l’imageStructure de la collection de formes
{
{ -- forme 1
{ -- sommet 1 de la forme 1
["y"] = number_value,
["x"] = number_value,
},
{ -- sommet 2 de la forme 1
["y"] = number_value,
["x"] = number_value,
},
...
},
{ -- forme 2
{ -- sommet 1 de la forme 2
["y"] = number_value,
["x"] = number_value,
},
{ -- sommet 2 de la forme 2
["y"] = number_value,
["x"] = number_value,
},
...
},
...
} -
visualized
Objet image ; lorsqueoptions.should_visualizevauttrue, il s’agit de l’image de visualisation retournée
Description
Convertit les contours présents dans l’image en informations de sommets de formes. Pour de meilleurs résultats, privilégiez des formes fermées simples et bien délimitées.
Exemple
local cv = require("image.cv")
local img = image.load_file(XXT_SCRIPTS_PATH..'/1.png')
local shapes, visimg = img:cv_to_shapes({
blur_size = 3,
approx_epsilon = 2,
closed = true,
should_visualize = true,
})
nLog(shapes)
dialog():add_image(visimg):show()