Se connecter / S'enregistrer
Votre question

[MFC]parcours d'image

Tags :
  • Pixel
  • Programmation
Dernière réponse : dans Programmation
25 Avril 2006 16:12:04

salut, pour une application que je developpe, je doit parcourir tout les picels de l'image et j'utilise le code suivante:

  1. //On parcours les pixels de la fenetre
  2. for (int j=0;j<m_ClientRect.Height();j++)
  3. {
  4. for (int k=0;k<m_ClientRect.Width();k++)
  5. {
  6.  
  7. pix.x=k;
  8. pix.y=j;
  9. ng=Calcul_ng(DC,pix);
  10.  
  11. Tab_ng[ng]=Tab_ng[ng]+1;
  12. }
  13. }


le seul probleme, c'est que c'est tellement long que l'application plante avant la fin, pourtant ç marche quand je parcour les 2 premieres ligne de pixel.

est ce que quelqu'un connaittrai une methode pour accelerer le parcours
de l'image et donc evité que mon application plante?

Autres pages sur : mfc parcours image

25 Avril 2006 17:31:53

Salut!
J'ai déjà créer un programme en php qui me permettait de parcourir chaque pixel d'une image. L'application fonctionnait assez bien pour les petites images, mais galérait vraiment sur une image assez grosse parce que le php n'est pas vraiment adapté pour le traitement d'image.Je pense qu'il faut utiliser un langage plus adapté. Je te conseille le C/C++
25 Avril 2006 17:47:55

je suis deja en C++ est pour parcourir les 15 premieres ligne de pixel d'une image 512*512, il me faut 20 seconde, est ce que quelqu'un aurait pas une methode pour aceleer le traitement!!
26 Avril 2006 00:23:32

La vitesse dépend du traitement que tu fais dans Calcul_ng.
Si tu affectes l'affichage à l'écran dans cette fonction, je te conseille plutôt de travailler sur une copie et de faire la mise à jour écran quand tu as fini, le gain de vitesse sera très conséquent.

Par contre je ne comprends pas en quoi le parcours plus ou moins long de cette partie devrait faire planter ton programme ... tu as quelque chose à revoir de ce côté.
26 Avril 2006 00:34:03

Je pose une question très con, a quoi cela sert de parcourir une image par pixel ? Quel est l'interet ?
26 Avril 2006 08:23:47

ben en faite, si je parcours l'image pixel par pixel c'est que je doit recuperer le niveau de gris de chaque pixel de l'image, donc je n'ai pas le choix.
26 Avril 2006 09:09:20

Essaye d'optimiser ta fonction Calcul_ng.

Tu peux également découper ton image en plusieurs morceaux et affecté plusieurs thread pour faire le travail si c'est possible, sur certains PC tu auras un gain de temps.
26 Avril 2006 09:19:49

merci, j'ai reussi a resoudre mon probleme en optimisant la fonction Calcul_ng :invasmiley:
Tom's guide dans le monde
  • Allemagne
  • Italie
  • Irlande
  • Royaume Uni
  • Etats Unis
Suivre Tom's Guide
Inscrivez-vous à la Newsletter
  • ajouter à twitter
  • ajouter à facebook
  • ajouter un flux RSS