IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

C# Discussion :

comparaison avec plusieurs images


Sujet :

C#

  1. #1
    Membre à l'essai
    Homme Profil pro
    Étudiant
    Inscrit en
    Mars 2012
    Messages
    26
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2012
    Messages : 26
    Points : 16
    Points
    16
    Par défaut comparaison avec plusieurs images
    Salut
    j'ai un dossier c:\database qui est plein des image
    je veux faire la comparaison avec toutes les images dans ce dossier avec un boucle ou je sais je suis encore débutant ce code fait la comparaison avec deux images seulement
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    {
        /// <summary>
        /// This simple application show how you can encode a fingerprint image compare them against each other.
        /// </summary>
        class Program
        {
            static void Main(string[] args)
            {
                try
                {
                    ///Load tree fingerpirnt images
                    Image fpImage1 = Image.FromFile(@".\Fingerprints\RIGHT_INDEX.BMP");
                    Image fpImage1Copy = Image.FromFile(@".\Fingerprints\RIGHT_INDEX - COPY.BMP");
                    Image fpImage2 = Image.FromFile(@".\Fingerprints\LEFT_INDEX.BMP");
                    FingerprintTemplate fp1, fp1Copy, fp2;
                    //Encoding fingerprint images to prepare their templates.
                    Dermalog.Afis.CodingMatching.FingerprintEncoder encoderEnging = new Dermalog.Afis.CodingMatching.FingerprintEncoder();
                    Console.WriteLine("Start Encoding the fingerprints");
                    encoderEnging.EncodeSynchronous(TemplateFormat.Dermalog,fpImage1, out fp1);
                    encoderEnging.EncodeSynchronous(TemplateFormat.Dermalog, fpImage1Copy, out fp1Copy);
                    encoderEnging.EncodeSynchronous(TemplateFormat.Dermalog, fpImage2, out fp2);
                    Console.WriteLine("Encoding done!");
                    ///compare two similar images
                    Console.WriteLine(string.Format("Comparing first image with a copy of it. Score {0}",Math.Round(fp1.CompareTo(fp1Copy),2)));
                    ///comparing two diffrent images
                    Console.WriteLine(string.Format("Comparing first image with second image. Score {0}", Math.Round(fp1.CompareTo(fp2), 2)));
     
                }
                catch (Exception exp)
                {
    Merci.

  2. #2
    Membre éclairé
    Homme Profil pro
    Administrateur systèmes et réseaux
    Inscrit en
    Septembre 2011
    Messages
    610
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Administrateur systèmes et réseaux
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Septembre 2011
    Messages : 610
    Points : 713
    Points
    713
    Par défaut
    Bonjour,

    J'imagine que le nom des images ne se suivent pas (Image1, Image2, Image3...)?
    Ton nombre d'image est fixe?
    Qu'envisage tu après la comparaison?
    Développe un peu plus ton problème...

  3. #3
    Membre à l'essai
    Homme Profil pro
    Étudiant
    Inscrit en
    Mars 2012
    Messages
    26
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2012
    Messages : 26
    Points : 16
    Points
    16
    Par défaut
    le nombre des image augmente

  4. #4
    Membre éclairé
    Homme Profil pro
    Administrateur systèmes et réseaux
    Inscrit en
    Septembre 2011
    Messages
    610
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Administrateur systèmes et réseaux
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Septembre 2011
    Messages : 610
    Points : 713
    Points
    713
    Par défaut
    Bon ton problème n'est pas clair
    Comme tu ne connais pas le nombre de fichier, et que le type n'a pas été précisé voilà ce que tu peux faire:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    DirectoryInfo rep = new DirectoryInfo(tonChemin);
    DirectoryInfo[] dirs = rep.GetDirectories("*.jpg"); //Partons sur du jpg
    int nbTotalImage = dirs.Length;      //Nombre de fichiers jpg dans le dossier
    int nbComparaison = nbTotalImage - 2; //Nombre de comparaison par image
    int compar = 0;
    while(nbTotalImage != 0)
    {
        compar = 0;
        while(compar <= nbComparaison)
        {
               //Ta comparaison dont on ne connait pas les détail
               compar++;
         }
         nbTotalImage--;
    }

  5. #5
    Membre éclairé
    Homme Profil pro
    Développeur / architecte
    Inscrit en
    Juillet 2009
    Messages
    473
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bas Rhin (Alsace)

    Informations professionnelles :
    Activité : Développeur / architecte

    Informations forums :
    Inscription : Juillet 2009
    Messages : 473
    Points : 674
    Points
    674
    Par défaut
    C'est quoi ta librarie de comparaison, ça m'intéresse?

    Ca doit donner un truc du style si j'ai bien compris:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
     
    Dermalog.Afis.CodingMatching.FingerprintEncoder encoderEnging = new Dermalog.Afis.CodingMatching.FingerprintEncoder();
     
    DirectoryInfo rep = new DirectoryInfo(@"c:\database");
    Image fpImage1 = Image.FromFile(<path to referenceFile>);
    FingerprintTemplate fp1, fp2;
    encoderEnging.EncodeSynchronous(TemplateFormat.Dermalog,fpImage1, out fp1);
     
    foreach(FileInfo file in rep.GetDirectories("*.bmp", SearchOption.AllDirectories))
    {
        Image fpImage2 = Image.FromFile(file.FullName);
     
        encoderEnging.EncodeSynchronous(TemplateFormat.Dermalog, fpImage2, out fp2);
     
        Console.WriteLine(string.Format("Comparing image with reference image. Score {0}", Math.Round(fp1.CompareTo(fp2), 2)));
     
     
    }

Discussions similaires

  1. Utiliser OLE Objet avec plusieurs images?
    Par solaar dans le forum VBA Access
    Réponses: 2
    Dernier message: 11/11/2008, 00h43
  2. median avec plusieurs image
    Par Ludo_360 dans le forum Images
    Réponses: 1
    Dernier message: 23/01/2008, 18h43
  3. Réponses: 8
    Dernier message: 20/07/2007, 09h09
  4. Réponses: 7
    Dernier message: 19/07/2007, 14h14
  5. Réponses: 6
    Dernier message: 03/04/2007, 20h40

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo