Image#

Conversion#

mlstatpy.image.detection_segment.detection_segment.convert_array2PIL(img, mode=None)[source][source]#

Convertit une image donnée sous la forme d’un array au format numpy.array.

Paramètres:
  • img – epkg:numpy:array

  • mode – voir modes, si None, essaye de deviner.

Renvoie:

PIL

Le mode 'binary' convertit une image issue de la fonction @see fn random_noise_image.

mlstatpy.image.detection_segment.detection_segment.convert_PIL2array(img)[source][source]#

Convertit une image donnée sous la forme d’une image Pillow au format numpy.array.

@param img Pillow @return numpy.array

Images aléatoires#

mlstatpy.image.detection_segment.random_image.random_noise_image(size, ratio=0.1)[source][source]#

Construit une image blanche de taille size, noircit aléatoirement ratio x nb pixels pixels.

@param size taille de l’image @param ratio proportion de pixels à noircir @return numpy.array

mlstatpy.image.detection_segment.random_image.random_segment_image(image, lmin=0.1, lmax=1.0, noise=0.01, density=1.0)[source][source]#

Ajoute un segment aléatoire à une image. Génère des points le long d’un segment aléatoire.

@param image numpy.array (modifié par la fonction) @param lmin taille minimal du segment @param lmax taille maximam du segment @param density nombre de pixel à tirer le long de l’axe @param noise bruit @return dictionary with size, angle, x1, y1, x2, y2, nbpoints

Segments#

mlstatpy.image.detection_segment.detection_segment.detect_segments(image, proba_bin=0.0625, cos_angle=0.9807852804032304, seuil_nfa=1e-05, seuil_norme=2, angle=0.1308996938995747, stop=-1, verbose=False)[source][source]#

Détecte les segments dans une image.

Paramètres:
  • image – image (fichier, array, PIL)

  • proba_bin – est en fait un secteur angulaire (360 / 16) qui determine la proximite de deux directions

  • cos_angle – est le cosinus de l’angle correspondant à ce secteur angulaire

  • seuil_nfa – au delà de ce seuil, on considere qu’un segment génère trop de fausses alertes pour être sélectionné

  • seuil_norme – norme en deça de laquelle un gradient est trop petit pour etre significatif (c’est du bruit)

  • angle – lorsqu’on balaye l’image pour détecter les segments, on tourne en rond selon les angles 0, angle, 2*angle, 3*angle, …

  • stop – arrête après avoir collecté tant de segments

  • verbose – affiche l’avancement

Renvoie:

les segments

mlstatpy.image.detection_segment.detection_segment.plot_segments(image, segments, outfile=None, color=(255, 0, 0))[source][source]#

Dessine les segments produits par la fonction @see fn detect_segments

@param image image (fichier, array, PIL) @param segments résultats de la fonction @see fn detect_segments @param outfile fichier de sortie @param color couleur @return nom de fichier ou image