Un exemple typique chaîne d'outils python serait :
Aussi loin que différencier les formes J'obtiendrais sa silhouette en regardant la forme de l'arrière-plan. Je détecterai ensuite le nombre de coins en utilisant un algorithme de détection des coins. détection des angles algorithme (par exemple, Harris). Un triangle a 3 coins, un carré 4, et un smiley aucun. Voici un python implémentation de la détection des coins de Harris avec Scipy .
Edit :
Comme vous le mentionnez dans les commentaires, l'article du blog ne présente pas la fonction qui produit un noyau gaussien nécessaire à l'algorithme. Voici un exemple d'une telle fonction à partir de l'article de blog. Livre de cuisine Scipy (excellente ressource, d'ailleurs) :
def gauss_kern(size, sizey=None):
""" Returns a normalized 2D gauss kernel array for convolutions """
size = int(size)
if not sizey:
sizey = size
else:
sizey = int(sizey)
x, y = mgrid[-size:size+1, -sizey:sizey+1]
g = exp(-(x**2/float(size)+y**2/float(sizey)))
return g / g.sum()