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

Programmation multimédia/Jeux Python Discussion :

Traitement d'image - mesure longueur d'objets sur photo


Sujet :

Programmation multimédia/Jeux Python

  1. #1
    Candidat au Club
    Femme Profil pro
    Ingénieur
    Inscrit en
    novembre 2018
    Messages
    2
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : Ingénieur

    Informations forums :
    Inscription : novembre 2018
    Messages : 2
    Points : 3
    Points
    3
    Par défaut Traitement d'image - mesure longueur d'objets sur photo
    Bonjour à tous,
    je suis nouvelle sur ce forum et je débute avec Python (mon logiciel de prédilection est plutôt R). Mais voilà, R n'est pas taillé pour le traitement d'image.

    Mon objectif : mesurer automatiquement des poissons posés sur une bâche blanche avec un indicateur d'échelle.

    Pour l'instant, j'ai travaillé avec l'image d'un seul poisson. J'ai déjà réussi à
    - passer mon image en nuances de gris
    - enlever le bruit
    - enlever l'arrière-plan (enfin à peu près)
    - segmenter les éléments présents dans l'image
    - les mesurer (en pixel)

    Mon problème c'est que la mesure n'est pas associée à l'élément poisson ni à l'indicateur d'échelle. Il m'est donc difficile d'automatiser le processus. J'ai vu qu'il existait un module "keras" qui permettait d'identifier la catégorie de l'image mais je n'ai pas (encore) réussi à le faire fonctionner et surtout je ne vois pas comment faire le lien entre la forme reconnue (basée sur des features) et celle mesurée (basée sur des contours). Et existe-t-il un moyen pour s'assurer que le poisson a été entièrement pris en compte ? (Qu'il n'a pas été considéré comme 2 entités par exemple)
    Je me pose aussi la question de la forme de l'indicateur d'échelle : carré ? rond ? Parce qu'il ne faut pas qu'il soit déformé lors de la prise de la photo (qui pourra être prise selon des angles et zooms différents).

    Merci pour vos réponses :-), je vous mets en-dessous mon début de code

    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
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    import numpy as np
    import cv2 as cv
    from matplotlib import pyplot as plt
    from skimage import morphology
    from skimage import measure
    from  scipy import ndimage as nd
    from matplotlib import pyplot as plt
     
    img = cv.imread('SAA_1.jpg')
    gray = cv.cvtColor(img,cv.COLOR_BGR2GRAY)
    ret, thresh = cv.threshold(gray,0,255,cv.THRESH_BINARY_INV+cv.THRESH_OTSU)
     
    # noise removal
    kernel = np.ones((3,3),np.uint8)
    opening = cv.morphologyEx(thresh,cv.MORPH_OPEN,kernel, iterations = 2)
    sure_bg = cv.dilate(opening,kernel,iterations=3)
     
    cv.imshow('labels',lab)
     
    mask = nd.morphology.binary_fill_holes(sure_bg)
     
    lab, n = nd.label(ret*mask)
    plt.title(str(n)+' objects detected')
    plt.imshow(lab)
    plt.show()
     
    props = measure.regionprops(lab)
    #donne le longueur max de l'element 1
    props[0]['major_axis_length']
    props[0].major_axis_length
    #donne le nombre d'elements
    len(props)
     
    #liste des longueurs trouvees
    liste_longueurs = list()
    for i in range(0, len(props)):
        liste_longueurs.append(props[i].major_axis_length)
     
    #on suppose que le poisson est la plus grande :
    print(max(liste_longueurs))

  2. #2
    Nouveau Candidat au Club
    Femme Profil pro
    Étudiant
    Inscrit en
    mai 2019
    Messages
    1
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 19
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : mai 2019
    Messages : 1
    Points : 1
    Points
    1
    Par défaut
    Bonjour,
    Avez vous trouvé la solution à votre problème depuis ? En effet je suis confrontée au même type de problème...

  3. #3
    Candidat au Club
    Femme Profil pro
    Ingénieur
    Inscrit en
    novembre 2018
    Messages
    2
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : Ingénieur

    Informations forums :
    Inscription : novembre 2018
    Messages : 2
    Points : 3
    Points
    3
    Par défaut
    Bonjour,

    non je n'ai pas trouvé de solution satisfaisante. Comme ce n'était qu'une partie optionnelle du projet, elle est pour l'instant en suspens. Mais je reste preneuse de toute nouvelle info.

    Bon courage dans vos recherches !

  4. #4
    Expert éminent Avatar de BufferBob
    Profil pro
    responsable R&D vidage de truites
    Inscrit en
    novembre 2010
    Messages
    2 848
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : responsable R&D vidage de truites

    Informations forums :
    Inscription : novembre 2010
    Messages : 2 848
    Points : 7 834
    Points
    7 834
    Par défaut
    salut,

    le sujet a l'air super intéressant, mais j'avoue que j'ai du mal à bien cerner la problématique, où interviennent la bâche blanche, l'indicateur d'échelle, kera etc.
    à minima est-ce que tu peux fournir le(s) fichier(s) concerné(s) pour que je puisse mieux me représenter le truc ?
    Avant donc que d'écrire, apprenez à penser.
    Selon que notre idée est plus ou moins obscure, l'expression la suit, ou moins nette, ou plus pure.
    Ce que l'on conçoit bien s'énonce clairement, et les mots pour le dire arrivent aisément.
                                                        - Nicolas Boileau, L'Art poétique

Discussions similaires

  1. Traitement d'image : mesure de niveau (liquide)
    Par zicos dans le forum Traitement d'images
    Réponses: 11
    Dernier message: 18/11/2008, 22h04
  2. Traitement d'image C++ : détection de droites sur une photo
    Par Vincent157 dans le forum Traitement d'images
    Réponses: 7
    Dernier message: 05/07/2007, 16h56
  3. [Traitement d'image] Editeur de photo sur internet
    Par Hoegaarden dans le forum Webdesign & Ergonomie
    Réponses: 3
    Dernier message: 12/09/2005, 15h05
  4. Traitements d'image sur PNG avec transparence
    Par Ingham dans le forum Langage
    Réponses: 16
    Dernier message: 02/08/2004, 17h42

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