La Web del Programador: Comunidad de Programadores
 
    Pregunta:  34948 - COMPARACION IMAGENES EN DELPHI
Autor:  Pablo Jankowicz
Hola, tengo un problema y me gustaria saber si me pueden ayudar... necesito saber por donde puedo encarar a la hora de comparar dos imagenes escaneadas en BMP en Delphi... Existe alguna funcion o algo por el estilo... no necesito que sea con manejo de redes neuronales
Gracias

  Respuesta:  Alexander Botero Gómez
hola
epero que la siguiente funcion te pueda ayudar

function compararbitmap : boolean;
var
bitmap1,bitmap2 : Tbitmap;
alto, ancho : longint;

begin
bitmap1 := Tbitmap.create(self);
bitmap2 := Tbitmap.create(self);
if (bitmap1.width = bitmap2.width) and
(bitmap1.height = bitmap2.height) then
begin
//primero compara si tienen el mismo alto y ancho
for alto := 1 to bitmap1.height do
for ancho := 1 to bitmap2 do
if bitmap1.canvas.pixels[alto,ancho] <> bitmap2.canvas.pixels[alto,ancho] then
begin
compararbitmap := false;
exit
end;
compararbitmap := true
end
else
compararbitmap := false
end

comentarios
solo compara si tiene el mismo ancho y alto las imagenes,
si cada uno de los pixeles que conforman la imagen son iguales y algo que no hice en la funcion es al bitmap es cargarle el archivo que quieres comparar
bitmap1.loadfromfile(nombre del archivo)

si tienes alguna duda del codigo escribeme