FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
|
Herramientas | Buscar en Tema | Desplegado |
#1
|
|||
|
|||
Comprar imagenes
Hola amigos, aqui de nuevo con una duda, resulta que deseo comprar dos iimagenes que tengo, son del mismo tamaño y me pasaron este codigo:
for i:=0 to Imagen1.Width do begin for j:=0 to Imagen1.Height do begin if Imagen1.Canvas.Pixels[i,j] <> Imagen2.Canvas.Pixels[i,j] then //Son diferentes end;{for j} end;{for i} , bueno y la verdad no he probado este metodo, no se si alguien lo halla utilizado, me dijeron que es un poco lento esta forma de hacerlo, y bueno tengo otra opcion, usar redes neuronales, no se si alguien sepa si solo con redes neuronales o con otro metodo mas facil y que no sea tardado me ayuda, es decir amigos, comparo la imagen y si es lo mas parecida a una principal de las dos me arroja un resultado cual sea, gracias, espero no molestarlos. |
#2
|
||||
|
||||
Así como lo haces realmente no comparas las imágenes, más bien los pixeles de las mismas, lo que vendría siendo casi lo mismo que comparar byte por byte los archivos originales. Definitivamente tienes que irte por el lado de redes neuronales o algun otro elemento de IA para poder hacer que el programa efectivamente compare "a ojo" las imágenes y sea capaz de determinar si son o no iguales no tanto por su contenido de bytes sino por como se ven al ojo humano...algo posible, pero si que se llevará su buen tiempo y obviamente demandará recursos del equipo donde esté trabajando.
__________________
AKA "El animalito" ||Cordobés a mucha honra|| |
#3
|
|||
|
|||
Hola amigos, he buscado algo de esto y me encontre algo referente:
Se puede hacer en plan artesanal , simplemente comparando % de pixels. es decir , si las imagenes son siempre tamaño determinado, y la forma o objeto que desas buscar siempre es del mismo tamaño , lo que debes hacer es pasarla todas a blanco y negro y las guardas a modo de patron a buscar. luego cuando quieras reconocer una imagen , la pasas a b/n (esto es facil con bitmaps) y buscas en los patrones que tienes almacenados a cual se parece mas , calculando simplemente el % de pixels iguales. la que tenga > % es la mas parecida. De hecho amigos, pongo por ejemplo 5 imagenes en un form, y le aplico un filtro y pone las imagenes en blanco y negro con los bordes, pero alguien sabe si me podria servir?, es decir asi como dijo AzidRain, o no se algo asi como guardarlas en memoria (virtualmente), espero se pueda, gracias. pd. si no me entienden me dicen |
#4
|
||||
|
||||
A lo mejor te sirva, encontré un código llamdo "ojos electrónicos", más bien sirve como sofware de seguridad, pero si desglosas el código es posible que le encuentres algún provecho, nota : lo encontré entre mis archivos y no es de mi autoría, pero si estaba en la red libremente por alli, no recuerdo si fué por estos foros o en otros).
Ojos electronicos.zip
__________________
Codito, Ergo Sum. |
#5
|
|||
|
|||
Sin mirar el codigo que nos facilito el compañero anterior te puedo comentar que tenes distintos caminos (algo parecido a lo que dijo el otro compañero con el tema de analizar % en pixels por pixels) uno es hacer algo seco... que analice toda la imagen, pero tienes otros caminos, en donde puedes trabajar con matices para lograr identificar el objeto a analizar en si....
puedes hacer por ejemplo, que donde encuentra una X cantidad de pixeles blanco, no lo analice (teniendo en cuenta que puede ser un fondo) siguiente este tipo de ideas, puedes "inventar" una serie compleja y extensa de algoritmos de IA... Te comento que no es imposible, pero esa serie de codigos, suelen ser desarrolladas por un grupo de trabajo y no una sola persona :P jejeje... en si... entrando a muy bajo nivel de programacion en cuanto a los algoritmos (pixel por pixel) lo logras, pero tienes que tener un conocimiento de algebra muy grande para hacer las matrices... ademas te comento que por mi experiencia, a la hora de trabajar pixel por pixel se notaba una diferencia en cuanto al rendimiento de la maquina, en otras palabras, maquina lenta. te comento a grandes rasgos lo que hacia mi programa, Buscaba todos los pixeles negros (fondo blanco, en otras palabras imagen b/n) y las movia un pixel para la izquierda. EL fin de este programa fue ver que tanto se alentisaba el RAD o delphi utilisando esto, en vez de usar por ejemplo
la diferencia en el refresco de la pantalla era notable aclaro. esto, obviamente, tambien depende de la resolucion/tamaño de la imagen/s a analizar... saludos y cuentanos si obtuviste algun resultado satisfactorio =D la mejor de las suertes! |
|
|
Temas Similares | ||||
Tema | Autor | Foro | Respuestas | Último mensaje |
comprar delphi 7 | paty_rlopez | Varios | 6 | 05-08-2011 18:49:00 |
Comprar Delphi 8.0 | BuRtOn | Varios | 15 | 12-07-2008 19:20:14 |
Me acabo de comprar un portatil | seoane | La Taberna | 18 | 04-07-2008 04:34:26 |
Al comprar Delphi 2005 | JXJ | Varios | 6 | 20-01-2006 20:11:20 |
Comprar Fastreport en españa | IVAND | Impresión | 1 | 11-08-2003 07:59:40 |
|