Segmentation par croissance de région [Résolu]

salhiamina 9 Messages postés samedi 22 septembre 2007Date d'inscription 20 janvier 2010 Dernière intervention - 15 janv. 2010 à 08:36 - Dernière réponse : amamaroua 1 Messages postés samedi 16 janvier 2016Date d'inscription 16 janvier 2016 Dernière intervention
- 16 janv. 2016 à 14:27
Salut tous le monde
j'ai un petit souci avec mon bout de code.
j'essaie d'écrire le code java pour segmenter une image avec l'approche croissance de région.
quand j'exécute le code il m'affiche des exceptions.
est ce que qlq peut m'aider s'il vous plait

//************************Growing****************************
/**
* This method performs the bulk of the processing. It runs a classic stack-based
* region growing algorithm:
* 1 - Find a pixel which is not labeled. Label it and store its coordinates on a
* stack.
* 2 - While there are pixels on the stack, do:
* 3 - Get a pixel from the stack (the pixel being considered).
* 4 - Check its neighboors to see if they are unlabeled and close to the
* considered pixel; if are, label them and store them on the stack.
* 5 - Repeat from 1) until there are no more pixels on the image.
le code est pour une image en entré noir et blanc
*/

private int width,height;
private int[][] labels;

private void Growing(BufferedImage image){
width=image.getWidth();
height=image.getHeight();
labels = new int[width][height];
Stack mustDo = new Stack();

for(int h=0;h
Afficher la suite 

Votre réponse

8 réponses

Meilleure réponse
cs_laurent1024 987 Messages postés mardi 31 mai 2005Date d'inscription 30 août 2012 Dernière intervention - 15 janv. 2010 à 15:04
1
Merci
dans tes boucles, il ne fait pas faire le h <= height mais h < height. pareil pour width.
    
for (int h=0;h < height;h++)
    	 for(int w=0;w < width;w++)
    		 output[count++]=labels[w][h];

Merci cs_laurent1024 1

Avec quelques mots c'est encore mieux Ajouter un commentaire

Codes Sources a aidé 96 internautes ce mois-ci

Commenter la réponse de cs_laurent1024
cs_laurent1024 987 Messages postés mardi 31 mai 2005Date d'inscription 30 août 2012 Dernière intervention - 15 janv. 2010 à 12:04
0
Merci
Bonjour
L'exception java.lang.ArrayIndexOutOfBoundsException at Growing.ClasseMenu.Growing(ClasseMenu.java:209)
T'indiques que tu utilise une case qui n'existe pas dans ton tableau.
Commenter la réponse de cs_laurent1024
salhiamina 9 Messages postés samedi 22 septembre 2007Date d'inscription 20 janvier 2010 Dernière intervention - 15 janv. 2010 à 14:49
0
Merci
Bonjour laurent1024
merci pour votre réponse mais j'ai une question de plus! comment je peut faire pour éviter cette erreur?
l'erreur est au niveau de la ligne suivante:
output[count++]= labels[w][h];

j'utilise un tableau à 1 dimension " output " pour stocker les valeurs du "labels"(matrice) et puis je passe "output" comme argument dans
image2   = createImage (new MemoryImageSource( larg,haut, output, 0 ,larg));
pour créer mon image résultat.
Alors quand j'essaie d'afficher la taille de chaque tableau en utilisant:
System.out.println(width);
System.out.println(height);
System.out.println(labels.length);
System.out.println(output.length);

il m'affiche le résultat suivant:
width
384
height
294
labels
384
output
112896
la taille du labels < taille du output!!!!!!
aide moi s'il vous plait
merci d'avance.
Commenter la réponse de salhiamina
salhiamina 9 Messages postés samedi 22 septembre 2007Date d'inscription 20 janvier 2010 Dernière intervention - 15 janv. 2010 à 17:12
0
Merci
merci bien laurent1024
ça marche...
j'ai une question technique et je ne sais pas est ce que c'est le forum adéquate pour la poser ou non(ou bien je doit créer un nouveau sujet sur le même forum)
pour travailler sur la segmentation d'une image mamographie par croissance de région je suis entrain d'utiliser BufferedImage alors que mon encadreur me propose de convertir l'image à PixelsGraber pour faciliter les choses et pendant mes recherche sur le net j'ai remarqué l'utilisation du PlannerImage avec JMF pour réaliser la segmentation par croissance de région
ma question: quelle est le meilleure choix pour des bonnes résultats?
merci d'avance
Commenter la réponse de salhiamina
cs_laurent1024 987 Messages postés mardi 31 mai 2005Date d'inscription 30 août 2012 Dernière intervention - 15 janv. 2010 à 17:33
0
Merci
Bonjour.
Je pense que le mieux c'est de faire un nouveau topic sur le forum pour avoir des réponses à tes nouvelles questions.

Cdt
Commenter la réponse de cs_laurent1024
dhokaramira 3 Messages postés jeudi 3 février 2011Date d'inscription 3 mai 2011 Dernière intervention - 2 mai 2011 à 22:25
0
Merci
Bonjour;
J'utilise le meme code pour segmenter des images imr cérébrales, mais j'ai le meme problème posé ci-dessus, c'est a dire que l'orsque j'essaie d'afficher la taille des tableaux j'ai la taille du labels < taille du output!!!!!! et ceux malgré que j'ai utilisé la recommandation de Laurent1024.
Aidez moi SVP.

[code=java]/code
Commenter la réponse de dhokaramira
mina023 3 Messages postés samedi 16 mai 2009Date d'inscription 11 mai 2012 Dernière intervention - 10 mai 2012 à 14:34
0
Merci
bonjour, je suis étudiant et nouveau en programmation java, mon projet de fin d'étude : segmentation d'image IRM cérébrale par système Multi-Agent par la méthode classique région ( division fusion) .
Pour cela je dois utiliser les systèmes multi agents et je dois lui intégrer une plate-forme de développement de SMA (JADE (Java Agent DEvelopment Framework)) ,Si quelqu'un a une idée dans ce sujet , particulièrement dans le domaine SMA et comment programmer les agents ,
Merci d'avance.
amamaroua 1 Messages postés samedi 16 janvier 2016Date d'inscription 16 janvier 2016 Dernière intervention - 16 janv. 2016 à 14:27
Bonjour mina023, je viens de trouver votre commentaire et je souffre également du meme problème, puisque vous l'avez posté en 2012 j'assume que vous avez déjà trouvé une solution, pouvez vous me donner une idée sur l'utilisation des agents dans la segmentation des images? Merci :)
Commenter la réponse de mina023

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.