Contenu | Rechercher | Menus

Annonce

Si vous avez des soucis pour rester connecté, déconnectez-vous puis reconnectez-vous depuis ce lien en cochant la case
Me connecter automatiquement lors de mes prochaines visites.

À propos de l'équipe du forum.

#1 Le 17/08/2015, à 17:40

Oni_Shadow

automatisation Image tiff

Bonjour,
Je ne m'y connait pas du tout en traitement d'image, mais j'ai un problème et j'aimerais bien le résoudre.
J'ai une image tiff avec des sphère en niveau de gris et j'aimerais bien les compter pour avoir leur densité. Quel langage vous semble-t-il le plus adapté pour ce type de tâche?
S'il existe déjà un logiciel faisant cela, je suis bien entendu preneur.
Enfin, si vous avez quelque conseil sur la façon de réaliser ceci, faite m'en part, je n'ai jamais fais ce type de chose et suis plutôt perdu... big_smile
Un échantillon d'image mini_285243T65743.png

Dernière modification par Oni_Shadow (Le 17/08/2015, à 17:41)


Rouillé

Hors ligne

#2 Le 21/08/2015, à 10:53

elburgos

Re : automatisation Image tiff

Je pense qu'   opencv peut le faire, par exemple avec cette fonction. Cette lib est tellement vaste et complète que tu trouveras ton bonheur !

Dernière modification par elburgos (Le 23/08/2015, à 14:50)


Envoyé depuis mon Windows Phone

Hors ligne

#3 Le 22/08/2015, à 13:51

nicolas66

Re : automatisation Image tiff

+1 pour OpenCV. En revanche, je doute qu'une transformée de Hough donne de bons résultats vu la qualité de l'image et la circularité approximative des grains ... As-tu déjà contacté des gens expert en traitement d'images ? Quel est le contexte lié à ces images ?


"The computer was born to solve problems that did not exist before." (B. Gates)

Hors ligne

#4 Le 26/08/2015, à 15:09

xanmoo

Re : automatisation Image tiff

python + numpy + scikit-image ou mahotas.

l'idée:
1 recherche de maxima regionaux
2 étiquetage (labelling)
3 la valeur max du label donne le nombre de blobs


Portable IBM Thinkpad R50e 2 Go | 40 Go: MX Linux 19.4
Portable IBM Thinkpad T430 8 Go | 240 Go: endeavour OS
Dell Precision T5500, Xeon x5570, 24Go, GTX 960- 4Go,  SSD 120Go, Ubuntu 22.04
http://dip4fish.blogspot.com/

Hors ligne

#5 Le 26/08/2015, à 15:54

xanmoo

Re : automatisation Image tiff

En python avec mahotas, on peut trouver 284 blobs (traces?) cela donne par exemple:
812180segmentation.png

# -*- coding: utf-8 -*-
"""
Created on Wed Aug 26 16:36:38 2015

@author: jeanpat
"""

import numpy as np
import mahotas as mh
from matplotlib import pyplot as plt
im = mh.imread('285243T65743.png')
gauss = mh.gaussian_filter(im, 9)

## let's use regional minima black blobs
remax = mh.regmin(gauss, Bc=mh.disk(9))
dil = mh.dilate(remax,Bc=mh.disk(3))
lab,n = mh.labeled.label(remax)
display = mh.overlay(im, red= dil)
print n

plt.imshow(display)
plt.show()

Portable IBM Thinkpad R50e 2 Go | 40 Go: MX Linux 19.4
Portable IBM Thinkpad T430 8 Go | 240 Go: endeavour OS
Dell Precision T5500, Xeon x5570, 24Go, GTX 960- 4Go,  SSD 120Go, Ubuntu 22.04
http://dip4fish.blogspot.com/

Hors ligne

#6 Le 26/08/2015, à 16:32

Oni_Shadow

Re : automatisation Image tiff

Merci beaucoup, je n'ai ps trop eu le temps de me pencher dessus, mon ordi étant en réparation, ce que vous avez fait m’intéresse beaucoup, je vais regarder ça de plus près une fois mon ordi en main!


Rouillé

Hors ligne

#7 Le 01/09/2015, à 23:10

Oni_Shadow

Re : automatisation Image tiff

Je viens de récupérer mon ordinateur; si je comprends bien (et ce n'est pas sur, le traitement d'image je n'ai jamais fait, et ća ne doit pas être trivial) tu appliques un flou gaussien afin de binariser l'image, puis regarder les bloc locaux obtenus, les compte et les affiches. Pour essayer d'améliorer ceci, il faut que je binarise l'image a la main avant, ou trouve de meilleurs moyen de le faire automatiquement.
En tout cas merci de me lancer de la sorte, c'est très aimable!

Dernière modification par Oni_Shadow (Le 01/09/2015, à 23:52)


Rouillé

Hors ligne

#8 Le 03/09/2015, à 00:44

xanmoo

Re : automatisation Image tiff

Bonjour,

L'idée est de flouter l'image pour éviter de détecter du bruit (mh.gauss), puis de rechercher des maxima régionaux (ici minimaux car les taches sont noires ), avec mh.regmin, puis enfin de les compter après étiquetage (mh.label);mh étant la librairie utilisée (mahotas).
Le lien suivant pointe sur un notebook en python2 : notebook ipython


Portable IBM Thinkpad R50e 2 Go | 40 Go: MX Linux 19.4
Portable IBM Thinkpad T430 8 Go | 240 Go: endeavour OS
Dell Precision T5500, Xeon x5570, 24Go, GTX 960- 4Go,  SSD 120Go, Ubuntu 22.04
http://dip4fish.blogspot.com/

Hors ligne

#9 Le 24/09/2015, à 00:40

Oni_Shadow

Re : automatisation Image tiff

Je viens de remarquer que je ne vous ai pas remercier ; grâce à votre notebook, je me suis lancer sur le traitement de cette image, et bien plus, je fais à présent des choses que je ne me pensais pas capable il y a quelques semaines encore. Merci beaucoup!
python et numpy sont plutôt sympa pour faire de la science enfait!


Rouillé

Hors ligne

#10 Le 24/09/2015, à 07:30

xanmoo

Re : automatisation Image tiff

Super, bonne route


Portable IBM Thinkpad R50e 2 Go | 40 Go: MX Linux 19.4
Portable IBM Thinkpad T430 8 Go | 240 Go: endeavour OS
Dell Precision T5500, Xeon x5570, 24Go, GTX 960- 4Go,  SSD 120Go, Ubuntu 22.04
http://dip4fish.blogspot.com/

Hors ligne

#11 Le 04/10/2015, à 22:16

Oni_Shadow

Re : automatisation Image tiff

salut, c'est encore moi...
J'essais de faire de plus en plus de choses mais je viens de me rendre compte qu'au lieu de tout coder tout seul, utiliser des lib avec des fonctions déjà prêtes, cela pouvait être mieux coder et surtout plus rapide.
J'essaye par exemple en ce moment de récupérer le profils dans deux images, j'y arrive à peu près (enfin pas entièrement, mon profil n'est pas continue... et je me suis dit que des lib pouvait faire le boulot, en lisant de la doc j'ai pris connaissance de l’algorithme Canny Edge Detection qui semble être implémenté dans pleins de lib (opencv ou skitimage par exemple) mais je ne trouve rien avec mahotas alors même qu'ils en parle sur leur site... suis-je aveugle ? Je n'ai pas l'habitude de fouiller dans de la doc et j'ai sûrement rater quelque... Xanmoo, as-tu déjà utiliser ce type d’algorithme est-ce implémenter dans mahotas? comment as0tu fait pour trouver la bonne fonction?
Merci d'avance
O_S

Post-Scriptum : Voila ce à quoi je suis arriver en une petite heure et demis pour vous donner un exemple de ce à quoi je veux arriver.
mini_477959SEMprofileextraction1C.pngmini_434612SEMprofileextraction2C.png

Édit : en creusant d'avantage, je viens de me rendre compte que cela fait parti des évolutions futures prévues

Dernière modification par Oni_Shadow (Le 04/10/2015, à 22:34)


Rouillé

Hors ligne

#12 Le 11/10/2015, à 17:16

xanmoo

Re : automatisation Image tiff

Scikit-image est équipé pour obtenir un profil densitométrique le long d'un droite quelconque. S'il s'agit de réaliser un profil le long d'une courbe quelconque,je ne connais pas d'outil prêt à l'emploi.


Portable IBM Thinkpad R50e 2 Go | 40 Go: MX Linux 19.4
Portable IBM Thinkpad T430 8 Go | 240 Go: endeavour OS
Dell Precision T5500, Xeon x5570, 24Go, GTX 960- 4Go,  SSD 120Go, Ubuntu 22.04
http://dip4fish.blogspot.com/

Hors ligne