Scratch Geschrieben 30. November 2002 Geschrieben 30. November 2002 Hi, welche möglichkeiten gibt es 2 bilder (.bmp oder .jpg) mit VC++ zu vergleichen ???
Klotzkopp Geschrieben 30. November 2002 Geschrieben 30. November 2002 Falls GDI+ zur Verfügung steht, geht das relativ einfach. Hier eine Beispiel-Konsolenanwendung: // GDI+ #include <windows.h> #include <gdiplus.h> using namespace Gdiplus; #pragma comment( lib, "gdiplus.lib" ) // für cout #include <iostream> using namespace std; int main() { // GDI+ initialisieren GdiplusStartupInput gdiplusStartupInput; ULONG_PTR gdiplusToken; GdiplusStartup(&gdiplusToken, &gdiplusStartupInput, NULL); // Scopeklammern, damit alle Objekte vor GdiPlusShutdown zerstört sind { Bitmap bm1( L"C:\\kk.gif" ); Bitmap bm2( L"C:\\kk2.gif" ); if( bm1.GetWidth() != bm2.GetWidth() || bm1.GetHeight() != bm2.GetHeight() ) { // Unterschiedliche Abmessungen cout << "Die Bilder haben unterschiedliche Abmessungen." << endl; cout << "Es wurde kein Vergleich durchgeführt." << endl; } else { int nDifferentPixels = 0; Color color1, color2; for( int x=0; x<bm1.GetWidth(); ++x ) { for( int y=0; y<bm1.GetHeight(); ++y ) { if( Ok == bm1.GetPixel( x,y, &color1 ) && Ok == bm2.GetPixel( x,y, &color2 ) ) { if( color1.GetValue() != color2.GetValue() ) { ++nDifferentPixels; } } } } cout << "Unterschiedliche Pixel: " << nDifferentPixels << endl; } } GdiplusShutdown(gdiplusToken); return 0; } [/CODE]
Klotzkopp Geschrieben 30. November 2002 Geschrieben 30. November 2002 Nachtrag: GDI+ ist AFAIK bei Windows XP enthalten. Für Windows NT4 SP6, Windows 2000, 98 und ME kann man es hier bekommen: http://www.microsoft.com/downloads/release.asp?releaseid=32738
Fiesek Geschrieben 2. Dezember 2002 Geschrieben 2. Dezember 2002 Grüß Euch! Falls die Postings vorher Deine Frage nicht beantwortet haben, adnn schreib doch einfach mal, was Du da vergleichen willst und vieleicht noch warum. @Mod Sorry, ich will Dir hier nicht in die Parade fahren, aber vieleicht hat er oder sie ja was anderes gesucht. GREETZ ******** * Fiesek * ********
Klotzkopp Geschrieben 2. Dezember 2002 Geschrieben 2. Dezember 2002 Originally posted by Fiesek @Mod Sorry, ich will Dir hier nicht in die Parade fahren, aber vieleicht hat er oder sie ja was anderes gesucht.Kein Problem. Wir hatten die Details des Problems per ICQ geklärt. Kannst Du ja nicht wissen.
Fiesek Geschrieben 3. Dezember 2002 Geschrieben 3. Dezember 2002 Und was war nun das genaue Problem und die richtige Lösung dazu? GREETZ ******** * Fiesek * ********
Klotzkopp Geschrieben 5. Dezember 2002 Geschrieben 5. Dezember 2002 Originally posted by Fiesek Und was war nun das genaue Problem und die richtige Lösung dazu? Das genaue Problem war, die Anzahl der unterschiedlichen Pixel in zwei Bilddateien zu ermitteln. Das sollte mit unterschiedlichen Bitmap-Dateiformaten funktionieren. "Die" richtige Lösung dafür gibt es nicht. Was ich oben beschrieben habe, funktioniert und ist im Vergleich zu anderen möglichen Lösungen recht komfortabel, benötigt allerdings GDI+.
Empfohlene Beiträge
Erstelle ein Benutzerkonto oder melde Dich an, um zu kommentieren
Du musst ein Benutzerkonto haben, um einen Kommentar verfassen zu können
Benutzerkonto erstellen
Neues Benutzerkonto für unsere Community erstellen. Es ist einfach!
Neues Benutzerkonto erstellenAnmelden
Du hast bereits ein Benutzerkonto? Melde Dich hier an.
Jetzt anmelden