Reto 16(V3ctor) Elimina .png Repetidas


Ir a la página 1, 2  Siguiente

Objetivo: Reto 16(V3ctor) Elimina .png Repetidas
buenas,

Tenemos esta situación, una carpeta llena de archivos .png (icono), en ella hay por ejemplo 1000, de las cuales 300 son idénticas, pues bien hace una código que detecte las 300 idénticas y las elimine, usa código propio de gambas, pudiéndote apoyar de comandos externos pero que no tengan una función especifica para esa tarea. La discriminación no puede ser por tamaño o nombre ya que puede haber imágenes con nombre parecido y tamaño igual, la discriminación debe ser por el análisis interno de la imagen.

yo encontré una forma que la voy a publicar después del reto, tal vez suba un zip con contraseña y la doy después de vencido el plazo del reto.

la idea es ver como cada uno resuelve este problema, que es la base de la programación resolver problemas y enriquecer así nuestro conocimientos. Cada uno puede resolver el tema de una manera u otra pero que lindo es ver como otro resolvió el mismo problema de una manera totalmente diferente con otro enfoque tal vez.

si tienen alguna duda pregunten, saludos

una semana es suficiente para resolver este reto por tanto el próximo viernes sera el ultimo día para presentar la solución, enviar código con solución a

Objetivo: Re: Reto 16(V3ctor) Elimina .png Repetidas
Interesante desafio, yo tenia una que hacia eso para distinguir fotos pero usaba otro criterio

Si todo esto era igual a otra, consideraba iguales las fotos y les cambiaba el nombre a xxxxxxx_Revisame.jpg

1-igual nombre
2-igual tamaño
3-igual fecha de creación
4-igual en tres partes clave del archivo, o sea un string binario de datos de 1kb


Pero estoy demasiado metido en un CAD como para aceptarlo.

Pero dono un asado y una cerveza de premio al que gane. Eso si, tiene que venir a mi casa de visita.

Perfil MP  
Objetivo: Re: Reto 16(V3ctor) Elimina .png Repetidas
Vale, vale... no des más pistas

Yo ya tengo el método base, necesito hacer el algoritmo para hacerlo eficientemente.


Saludos

Perfil MP  
Objetivo: Re: Reto 16(V3ctor) Elimina .png Repetidas
tercoIDE escribió:  

Pero estoy demasiado metido en un CAD como para aceptarlo.


"en un CAD" es tu programa 3d o estas colaborando en otro proyecto, o estas en un nuevo proyecto???

Objetivo: Re: Reto 16(V3ctor) Elimina .png Repetidas
v3ctor escribió:  

"en un CAD" es tu programa 3d o estas colaborando en otro proyecto, o estas en un nuevo proyecto???


Nuevo, pero...no te quiero robar el post. Pronto sera presentado en sociedad. OpenSource, por supuesto.

Es interesante este desafio pero mas interesante seria un programa comunitario que busque fotos repetidas en todo el disco y las enliste y/o renombre para que un humano decida que hacer.

Podriamos tomarlo como punto de partida.

Perfil MP  
Objetivo: Re: Reto 16(V3ctor) Elimina .png Repetidas
tercoIDE escribió:  
v3ctor escribió:  

"en un CAD" es tu programa 3d o estas colaborando en otro proyecto, o estas en un nuevo proyecto???


Nuevo, pero...no te quiero robar el post. Pronto sera presentado en sociedad. OpenSource, por supuesto.

Es interesante este desafio pero mas interesante seria un programa comunitario que busque fotos repetidas en todo el disco y las enliste y/o renombre para que un humano decida que hacer.

Podríamos tomarlo como punto de partida.


eso era lo que quería saber, bueno esperamos el momento en que lo subas para ayudar ya sea por bug o códigos de ideas, saludos.

última edición por v3ctor el Viernes, 24 Abril 2020, 21:33; editado 1 vez
Objetivo: Re: Reto 16(V3ctor) Elimina .png Repetidas
bueno ya lo tengo casi pronto, falta emprolijarlo.

paso 1: elegir carpeta donde se encuentran las miles de imágenes (podrían ser otro tipo de archivos también)
paso 2: ? (no puedo comentar porque sino doy el método que uso.)
paso 3: eliminar archivos idénticos encontrados menos 1



como van ustedes?

última edición por v3ctor el Domingo, 26 Abril 2020, 14:03; editado 1 vez
Objetivo: Re: Reto 16(V3ctor) Elimina .png Repetidas
bueno como nadie presento una solución yo subí la mía a la granja.

el método que use es hacer un sha256sum al archivo, si hay otro con el mismo hash incremento el contador de ese hash, después presento la lista de los que tienen repetidos y ahí el usuario elije si eliminar.

saludos.

Objetivo: Re: Reto 16(V3ctor) Elimina .png Repetidas
v3ctor escribió:  
bueno como nadie presento una solución yo subí la mía a la granja.

el método que use es hacer un sha256sum al archivo, si hay otro con el mismo hash incremento el contador de ese hash, después presento la lista de los que tienen repetidos y ahí el usuario elije si eliminar.

saludos.


porque no lo subes asi lo podemos usar/mejorar entre todos?

Perfil MP  
Objetivo: Re: Reto 16(V3ctor) Elimina .png Repetidas
Tengo el mío casi acabado, pero creo un hash MD5 después de leer el archivo binario (es más rápido que SHA256). Al recorrer el directorio lo voy cargando en una colección que tiene por valor la ruta del archivo y por clave (que no puede haber duplicados) el hash generado anteriormente. Curiosamente, la intentar añadir duplicados a la colección, ésta lo rechaza silenciosamente, quedando la colección sólo con los ficheros que no están duplicados.

Me he quedado intentando calcular cuáles son los que la colección ha "rechazado", que son los duplicados, para moverlos a un subdirectorio y dar la oportunidad al usuario de borrarlos.

Después de perder un montón de tiempo en un algoritmo para detectar duplicados, me di cuenta de que la colección no los admite (aunque no provoca error visible) y el trabajo se simplifica muchísimo...

Cuando acabe lo subo aquí.

Saludos

Perfil MP  
Ir a la página 1, 2  Siguiente

Página 1 de 2


  
No puede crear mensajes
No puede responder temas
No puede editar sus mensajes
No puede borrar sus mensajes
No puede votar en encuestas
No puede adjuntar archivos
Puede descargar archivos
No puede publicar eventos en el calendario

   

Está utilizando la versión (Lo-Fi). Para ver la versión completa del foro, haga clic aquí.

Powered by Icy Phoenix based on phpBB
Design by DiDiDaDo

Página generada en:: 0.9392s (PHP: -91% SQL: 191%)
Consultas SQL: 48 - Debug off - GZIP Activado