AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Multimedia Delphi Funktion zum Vergleich zweier Bilder, falsche Ergebnisse...
Thema durchsuchen
Ansicht
Themen-Optionen

Funktion zum Vergleich zweier Bilder, falsche Ergebnisse...

Ein Thema von burning · begonnen am 2. Jan 2004 · letzter Beitrag vom 3. Jan 2004
 
burning

Registriert seit: 29. Dez 2003
25 Beiträge
 
#1

Funktion zum Vergleich zweier Bilder, falsche Ergebnisse...

  Alt 2. Jan 2004, 16:16
Hi,
Die folgende Prozedur ist von
http://www.tipps.delphi-source.de/gr...020911-8.shtml
Wenn ich mit ihr zwei genau gleich große Bilder vergleiche, so liefert sie die absurdesten Ergebnisse...

Bsp:
1. ich liefere 2 Bilder von der Größe 5*8. Sie sind beide komplett grau, bis auf den Pixel ganz links oben im ersten Bild.
2. Das Programm gibt an, dass es 3 Unterschiede gibt, was ja eindeutig 2 zuviel sind.

Wenn ich das eine Bild noch weiter verändert hab, so zeigte er mal zu wenige, mal zu viele Fehler an.

Woran kann das liegen?

Code:
procedure CompareImages(Image1, Image2: TImage);
var x, y: integer;
  anzahl_unterschiede: LongInt;
  zeile1, zeile2: PByteArray;
  prozent: single;
const schwellenwert=5;
  // Erst wenn die Unterschiede den Schwellenwert überschreiten,
  // wird die Abweichung registriert.
begin
  anzahl_unterschiede:=0;
  for y:=0 to image1.Picture.Bitmap.height-1 do begin
    zeile1:=image1.Picture.Bitmap.scanline[y];
    zeile2:=image2.Picture.Bitmap.scanline[y];
    for x:=0 to image1.Picture.Bitmap.width-1 do
      if abs(zeile1[x]-zeile2[x])>schwellenwert then
        inc(anzahl_unterschiede);
    if image1.Picture.Bitmap.height*image1.Picture.Bitmap.width>0 then
      prozent:=100*(anzahl_unterschiede/(image1.Picture.Bitmap.height*
      image1.Picture.Bitmap.width))
    else
      prozent:=0;
    form1.label1.caption:='Unterschiede:'+FloatToStr(prozent)+'%';
    form1.label2.caption:='Unterschiede:'+IntToStr(anzahl_unterschiede);
  end;
end;
  Mit Zitat antworten Zitat
 


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 20:58 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz