Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > OOP
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Grupo de Teaming del ClubDelphi

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 23-12-2009
Avatar de TomMB
TomMB TomMB is offline
Registrado
 
Registrado: dic 2004
Posts: 7
Poder: 0
TomMB Va por buen camino
comparar dos TImage

Hola.
quisiera saber como se pueden comparar dos TImage p.e.

if Image1=Image2 then ....

Gracias.
Responder Con Cita
  #2  
Antiguo 23-12-2009
Avatar de Neftali [Germán.Estévez]
Neftali [Germán.Estévez] Neftali [Germán.Estévez] is offline
[becario]
 
Registrado: jul 2004
Ubicación: Barcelona - España
Posts: 18.285
Poder: 10
Neftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en bruto
¿Qué quieres comprara dos TImage o dos imágenes?

Entiendo que lo segundo.
Deberás compararlas Pixel a Pixel y determinar si hay alguno diferente.
__________________
Germán Estévez => Web/Blog
Guía de estilo, Guía alternativa
Utiliza TAG's en tus mensajes.
Contactar con el Clubdelphi

P.D: Más tiempo dedicado a la pregunta=Mejores respuestas.
Responder Con Cita
  #3  
Antiguo 23-12-2009
Avatar de TomMB
TomMB TomMB is offline
Registrado
 
Registrado: dic 2004
Posts: 7
Poder: 0
TomMB Va por buen camino
Hola, te explico.
Después de capturar una imagen y meterla en un Timage, quiero que lo compare con otros TImagen que tienen diferentes imágenes cargadas.



Gracias.
Responder Con Cita
  #4  
Antiguo 23-12-2009
Avatar de Neftali [Germán.Estévez]
Neftali [Germán.Estévez] Neftali [Germán.Estévez] is offline
[becario]
 
Registrado: jul 2004
Ubicación: Barcelona - España
Posts: 18.285
Poder: 10
Neftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en bruto
Pues lo dicho, debes escanear la imagen y comparar los pixels 1 a 1. Debería bastar con dos For anidados, uno para recorrer filas y otro columnas:

Código Delphi [-]
  Image1.Picture.Bitmap.Canvas.Pixel[0,0] = 
    Image2.Picture.Bitmap.Canvas.Pixel[0,0];
  ...

Para optimizar puede revisar la ayuda sobre ScanLine.

Otra opción (que se me ocurre ahora) podría ser la de no verlas como imágenes sino como ficheros genéricos. Tal vez esta pueda resultar más rápida.
(1) Grabas la imagen 1 en un fichero temporal 1 y la imagen 2 enun fichero temporal 2.
(2) Calculas el CRC de ambos.
(3) comparas los CRC.

Ambos tipos de comparación en teoría funcionan bien, en la práctica piensa que con que sólo exista un pixel diferente en ambas imágenes te darán como diferentes; Y eso en la mayoría de los casos no es lo deseado.

Otro tema diferente es la utilización de algoritmos que permitan un % de error; De forma que si las imágenes son iguales en un 98% (por ejemplo) las considere iguales.
__________________
Germán Estévez => Web/Blog
Guía de estilo, Guía alternativa
Utiliza TAG's en tus mensajes.
Contactar con el Clubdelphi

P.D: Más tiempo dedicado a la pregunta=Mejores respuestas.
Responder Con Cita
Respuesta



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
como Hacer que un TImage siga a un Timage? j_flores3000 OOP 8 27-03-2008 18:47:50
Copiar Bitmap de un TImage a otro TImage quinqui Gráficos 2 24-01-2008 15:22:30
Comparar 2 TImage TomMB Gráficos 5 24-12-2006 21:14:49
comparar con el mod emiliu Varios 1 23-01-2006 20:55:53
como combinar 2 Timage en un tercer Timage JefeNet Gráficos 10 02-09-2004 16:51:35


La franja horaria es GMT +2. Ahora son las 05:32:45.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi