Comparaison de deux image en C

dickpro Messages postés 4 Date d'inscription jeudi 18 décembre 2008 Statut Membre Dernière intervention 31 mars 2009 - 30 mars 2009 à 14:52
cs_raidana Messages postés 14 Date d'inscription lundi 7 juillet 2008 Statut Membre Dernière intervention 4 mai 2009 - 4 mai 2009 à 12:16
Bonjour a tous,

Je suis actuellemnt sur un projet qui consiste à comparer une image  de référene à une autre image et a savoir si elle sont identique au moin à 70%, et savoir si la deuxièeme image est décadré ou pas . Si quelqu'un pourais m'aider en m'expliquant comment faire parceque je m'y connais pas sur le traitement des image en c.
Merci

DICKPRO

4 réponses

Pistol_Pete Messages postés 1053 Date d'inscription samedi 2 octobre 2004 Statut Membre Dernière intervention 9 juillet 2013 7
30 mars 2009 à 15:29
Salut
Une première approche consiste à parcourir tous tes pixels de ton image et à calculer l'erreur relative moyenne de ton image:
Calcul de l'erreur relative: |Pixtheorique(i,j)-Pix2(i,j)|  /  Pixtheorique(i,j)
Si c'est supérieur à 70% tes deux images sont considéré comme étant identique.

Pour savoir si l'image est décadré ou pas, cherche des infos sur la svd. C'est un outil pour le recalage d'image, je pense que c'est ce que tu recherches.
A+
____________________________________________________________________________
Mon site internet :  
http://ImAnalyse.free.fr
0
dickpro Messages postés 4 Date d'inscription jeudi 18 décembre 2008 Statut Membre Dernière intervention 31 mars 2009
31 mars 2009 à 11:15
Bonjour,
Comment on fait pour parcourir les pixel d'ue image en c?
S'il vous plait merci si vous pouviez donner exempple de code ou algorithme merci.

DICKPRO
0
Pistol_Pete Messages postés 1053 Date d'inscription samedi 2 octobre 2004 Statut Membre Dernière intervention 9 juillet 2013 7
31 mars 2009 à 15:04
Quand on lit une image, on obtient un pointeur sur les données de l'image.
Généralement, les données sont stockées comme cela: R,V,B et A
Pour parcourir toute ton image, il faut faire:

for(i=0;i<Width;i++)
  for(j=0;j<Height;j++){
    ucBits[(i+j*Width)*4]=  Valeur Bleu
    ucBits[(i+j*Width)*4+1]=  Valeur Vert
    ucBits[(i+j*Width)*4+2]=  Valeur Rouge
}
A+
____________________________________________________________________________
Mon site internet :  
http://ImAnalyse.free.fr
0
cs_raidana Messages postés 14 Date d'inscription lundi 7 juillet 2008 Statut Membre Dernière intervention 4 mai 2009
4 mai 2009 à 12:16
Bonjour tout le monde


Si qq un  a arrivé à implémenter l'algorithme de comparaison entre deux images, je serai reconnaissante de postuler l'algorithme pour qu'on puisse discuter et améliorer.


Merci d'avance
0
Rejoignez-nous