begin process at 2012 05 30 10:15:46
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Archive C/C++

 > 

Archives

 > 

Graphique

 > 

traitement image : filtre circulaire


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

traitement image : filtre circulaire

lundi 13 décembre 2004 à 17:58:53 | traitement image : filtre circulaire

jphotension


jphotension

Bonjour,

je traite des images binaires bitmap en programmant en C. J'effectue des traitements sur l'image : érosion, dilatation, ouverture, fermeture ( fusion....), chapeau de forme...etc.
et donc pour traiter ces images j'utilise un élément structurant (filtre)de forme rectangulaire...le probleme c'est que c'est pourri avec des rectangles...donc j'essaie de faire des cercles mai je galere.

Explication de ma méthode : j'ai dessiné un grand disque noir sur photoshop..on s'en fou..lol, et donc suivant la taille du filtre ( élément structurant) rentrée par l'utilisateur (nombre de pixels : ici diametre du cercle) je découpe le cercle par ce nombre. Chaque case de ce cercle contient donc alors (nombre de pixel du diametre du cercle / taille filtre) ² . Si le nombre de pixels blancs dans un grand carré est inférieur au nombre de pixels noirs, alors dans un tableau de la taille du filtre je met la couleur noir ou blanche.

/*imageheight = imageWidth ici : taille de l'image ou j'ai dessiné mon grand cercle / d : taille du filtre
*/
echelle = ( imageHeight - imageHeight%d ) / d ;
//compte le nombre de pixel de meme couleur a l'intérieur de chaque carre
for (rowIdx = 0 ; rowIdx < d ; rowIdx++ )
{
for (colIdx = 0 ; colIdx < d ; colIdx++ )
{
for ( l = 0 ; l < echelle ; l++ )
{
for ( c = 0 ; c < echelle ; c++ )
{
if (matrice_binarise[rowIdx*echelle + l][colIdx*echelle + c] == 255)
sommeBlanc = sommeBlanc++ ;
else sommeNoir = sommeNoir++ ;
}
}
if ( sommeBlanc > sommeNoir ) matrice_cercle[rowIdx][colIdx] = 255;
else matrice_cercle[rowIdx][colIdx] = 0;
sommeBlanc = 0; sommeNoir = 0;
}
}


je rajouterai du code si vous voulez parce que c'est plus compliqué que ca ! j'utilise des pointeurs de pointeurs et tout, je veux pas travailler avec des tableau 1D, c'est chiant pour les indices..
Merci
Et puis meme si vous avez un algo pour faire des cercles!?! lol (pas de BGI ni OpenGl...)
jeudi 24 mars 2005 à 00:51:54 | Re : traitement image : filtre circulaire

muzamfr


salut j'ai po trop compris ton truc mais moi j'essaye de faire érosion, dilatation, ouverture, fermeture sur une bitmap si tu as les algos de base sur les procédés stp envoi par mail muzamfr@hotmail.com merci ciao
zamzam
mercredi 19 mars 2008 à 18:10:22 | Re : traitement image : filtre circulaire

Pistol_Pete

Salut
Pour la morphologie mathematique, c'est par ici:
http://www.cppfrance.com/codes/LOGICIEL-COMPLET-TRAITEMENT-IMAGE-WIN-32_44353.aspx

A+
Mon site internet : [ Lien ]



Cette discussion est classée dans : taille, nombre, image, filtre, cercle


Répondre à ce message

Sujets en rapport avec ce message

nombre de caractère [ par mig73 ] salut à tousje suis sous visual c++.netj'ai utilisé la fonction suivante:CFile::GetLenght qui me donne la taille en octet du fichier que je lisA parti Nombre d'entier d'un fichier composé de chiffres [ par ValToutCourt ] Bonjour à tous, j'ai un probléme en programmation, je dois recupérer le nombre d'entier stoké dans un fichier, ca parait bidon, mais j'ai deja tout es Prob avec Sleep [ par blinkseb ] Bonjour à tous,j'ai besoin de tracer un cercle (en réalité c'est une ellipse mais le prob reste le même !) en un certain temps.Je calcule dont le nomb Composant TImageList [ par bipbip83 ] Bonjour, Je suis en train de développer un projet qui nécessite le composant TImageList de C++ Builder, Je souhaite remplir ce composant à partir d'im Definir une region circulaire dans une image 12 bit bmp [ par pirate75000 ] Je travail sur des images de 12 bits de niveau de grisJe desire appliquer des filtre sur cette image,la partie principale etant contenue dans un cercl Modifier la taille d'un CImage et seulement à l'affichage [ par perigv ] Je suis débutant et voila mon problème:Je souhaiterai arriver à redimensionner une image de type CImage à la taille que je veux pour pouvoir la compar prise de tete sur des SCROLLBARS [ par scualis ] Tchaoo J'en peux plus ca fait 3 jours que j'essaye de rajouter des scrollbars a ma maudite application qui est en fait une MFC document based qui affi image en forme de cercle [ par mathieu57100 ] bonjour, j'aimerai savoir comment faire appraitre une image seulement dans un cercle, la partie de l'image hors du cercle n'apparaitrait pas.j'ai essa Comment charger une image 1024x768? [ par Slown ] Bonjour. J'ai trouvé un tutorial traitant sur le mapping. Voici le code: http://www.linuxgraphic.org/section3d/openGL/didacticiels/didac6/didac5.html  [Visual C++] taille de la fenêtre d'éxecution [ par elo29 ] Bonjour, Je travaille sur un code qui permet de binariser une image. Mon souci est que l'image initiale avec laquelle j'ai besoin de travailler a une


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,546 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales