IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Bibliothèques tierces Python Discussion :

Bibliothèque Scikit -> Problème avec fonction Remove_Small_Objects


Sujet :

Bibliothèques tierces Python

  1. #1
    Futur Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Février 2014
    Messages
    7
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Bâtiment Travaux Publics

    Informations forums :
    Inscription : Février 2014
    Messages : 7
    Points : 7
    Points
    7
    Par défaut Bibliothèque Scikit -> Problème avec fonction Remove_Small_Objects
    Bonjour à tous,

    J'ai développé le code suivant :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    import numpy as np
    import matplotlib.pyplot as plt
     
    from skimage import data
    from PIL import Image as imge
    from skimage.filter import canny
    from scipy import ndimage
    from skimage import morphology
    from skimage.filter import sobel
     
     
    img = imge.open("ortho0007.tiff")
    gray = img.convert('L')
    coins = np.asarray(gray)
     
    coins=ndimage.gaussian_filter(coins, 1)
    elevation_map = sobel(coins)
     
    markers = np.zeros_like(coins)
     
    markers[coins < 60] = 3
    markers[coins > 130] = 1
     
    segmentation = morphology.watershed(elevation_map, markers)
     
    test2=np.bool_(segmentation)
    #test2= np.int_(segmentation)
    coins_cleaned = morphology.remove_small_objects(test2, 50)
    (Je vous épargne le code utilisant les fenêtres de matplotlib pour afficher mes résultats.)

    Le problème se situe au niveau de la dernière ligne avec l'utilisation de la fonction remove_small_objects.

    En l’occurrence, cette dernière est censée me supprimer, sur mon image résultat, toutes les composantes faisant (ici) moins de 50pixels.
    Quoi que je fasse, que je place en entrée une image booléenne ou en int, que je met 50 ou 300, le résultat que j'obtiens est noir (soit que des 0).
    Au contraire, si je place directement le fichier "segmentation" au lieu de "test2" en entrée de cette fonction le résultat retournée est "segmentation", ni plus ni moins. Il ne le change donc pas.

    Auriez-vous une idée de mon problème ?
    Dans l'attente d'une réponse favorable,
    Cordialement,
    Pierre.

    PS: - L'image "ortho0007" est une image .tiff d'une façade de pierres et briques.
    - Voici le lien sur la documentation de cette fonction :
    http://scikit-image.org/docs/dev/api..._small_objects

  2. #2
    Futur Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Février 2014
    Messages
    7
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Bâtiment Travaux Publics

    Informations forums :
    Inscription : Février 2014
    Messages : 7
    Points : 7
    Points
    7
    Par défaut
    Petites précisions :
    - Lorsque test2 est en int, le résultat renvoyé est test2 sans modification.
    - Lorsque test2 est en bool, le résultat renvoyé est "noir".

    Lorsque je tape "coins_cleaned", j'obtiens :
    >>> coins_cleaned
    array([[ True, True, True, ..., True, True, True],
    [ True, True, True, ..., True, True, True],
    [ True, True, True, ..., True, True, True],
    ...,
    [ True, True, True, ..., True, True, True],
    [ True, True, True, ..., True, True, True],
    [ True, True, True, ..., True, True, True]], dtype=bool)


    Le résultat n'est donc pas du tout nul et pourtant il apparaît noir ...

    J'ai essayé de multiplié "coins_cleaned" par 255 après l'avoir transformé en int. mais rien de change.

Discussions similaires

  1. Problème avec fonctions et string/char
    Par vdumont dans le forum C++
    Réponses: 6
    Dernier message: 08/04/2006, 17h54
  2. Problème avec fonction
    Par Goundy dans le forum C
    Réponses: 24
    Dernier message: 01/10/2005, 21h17
  3. [MFC][WINSOCK] Problème avec fonction recv
    Par Le Farfadet dans le forum MFC
    Réponses: 4
    Dernier message: 23/09/2005, 12h00
  4. Problème avec fonction d'envoie de mail
    Par zyg dans le forum Réseau/Web
    Réponses: 1
    Dernier message: 23/02/2005, 09h48
  5. [Requête] Problème avec fonction "DATE_FORMAT()"
    Par sekiryou dans le forum Requêtes
    Réponses: 4
    Dernier message: 11/01/2005, 22h52

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo