Categorias

As melhores ferramentas para identificar imagens duplicadas no seu disco rígido

Nas horas vagas, organizo seis sites de papéis de parede para computador. Não vou divulgar os links porque não é o objetivo desse artigo. Mas a verdade é que tenho que lidar com milhares de imagens no disco rígido e garantir que não vá publicar um papel de parede repetido no site.

Inicialmente, bem inicialmente, dava para fazer isso usando a memória. Porém, o cérebro tem um limite de capacidade e uma ferramenta para auxiliar na tarefa nunca é demais. Principalmente quando o volume de informações é muito grande: nesses casos, a velocidade de processamento de uma máquina leva vantagem.

Entretanto, você não precisa trabalhar com papéis de parede para passar pelo mesmo problema que eu passo. Você pode ser um administrador de um banco de imagens. Você pode trabalhar com o acervo fotográfico de sua empresa ou o portfólio de seu trabalho como fotógrafo. Ou pode nem mesmo trabalhar com imagens: com a disponibilidade da fotografia digital, todos nós temos agora centenas, milhares de fotos em nossos dispositivos móveis, guardadas em pastas diferentes no disco rígido, armazenadas na nuvem, renomeadas e copiadas para outros lugares e é quase certo que duplicatas existirão.

Para avaliar a melhor ferramenta para identificar imagens repetidas, escolhi quatro soluções diferentes. Produzi também quatro imagens que são literalmente duplicadas para testar a eficiência básica dos produtos. Também criei quatro imagens que foram apenas convertidas para escala de cinza, para ver se os programas conseguem classificá-las como similares. E, por último, um teste um pouco mais complexo, em que inverti quatro imagens, como se estivessem refletidas em um espelho. Fatores como velocidade de rastreio em uma pasta com mais de 12 mil arquivos e número de falsos positivos também serão levados em conta.

Thumbs Plus 9

O programa clássico da Cerious Software é minha ferramenta de gerenciamento de imagens há mais de dez anos. Embora não seja seu foco, o Thumbs Plus possui um recurso de pesquisa por imagens duplicadas no seu banco de dados, que pode ser acessado pelo atalho Ctrl+Shif+F. O usuário pode definir o grau de semelhança de 0 (são absolutamente idênticas) a 200 (são vagamente similares). Normalmente, eu uso o fator 125, para identificar imagens repetidas.

thumbs-plus-pesquisa

Nesse teste, criei um banco de dados do zero, para computar o tempo que o Thumbs Plus 9 leva para catalogar todas as imagens da pasta de 12.201 imagens. O resultado foi de 18 minutos e 22 segundos, mas é preciso levar em conta que o programa fará isso uma única vez e novas imagens podem ser acrescentadas ao banco de dados automaticamente sempre que a pasta for atualizada. Além disso, o Thumbs Plus também está utilizando esse tempo para gerar Thumbs e recuperar metadados…

Uma vez registradas todas as imagens, a busca propriamente dita por duplicatas dura somente 9 segundos. O resultado foram 344 imagens consideradas problemáticas…thumbs-plus-resultados

Há uma notória quantidade de falsos positivos, mas isso pode ser resultado do fator utilizado. Analisando pelos nomes, vejo que o programa detectou todas as imagens que eram cópias exatas e todas que eram uma versão em tons de cinza do original. Mas não identificou nenhuma das imagens espelhadas. Observando as imagens individualmente, encontrei 7 imagens duplicadas que não faziam parte do teste.

Duplicate Cleaner Pro

Essa também não é uma ferramenta focada em detecção de imagens repetidas, mas que oferece essa funcionalidade como um extra. Normalmente, o Duplicate Cleaner funciona como um programa para encontrar qualquer tipo de arquivo duplicado, analisando seus bytes, o que é uma excelente vantagem para encontrar documentos copiados pelo seu disco rígido mas não contém o tipo de análise visual que estamos procurando.

Mas a versão Pro do produto possui essa funcionalidade na aba Image Mode (a aba é desabilitada na versão gratuita do produto).

duplicate-cleaner

A configuração original é de fazer uma busca por 85% de similaridade. Para fins de teste, alterei o valor para 40% para ter o mesmo parâmetro utilizado no Thumbs Plus. E desabilitei a opção para pesquisar somente imagens com a mesma proporção. Designei a pasta onde estavam armazenadas as mais de 12 mil imagens e iniciei o escaneamento.

O programa foi consideravelmente rápido e demorou somente 14 minutos e 25 segundos para analisar tudo e encontrar… 795 grupos de duplicatas, com 3610 arquivos considerados cópias de outros. É um grande feito de agilidade, mas que pode ser explicado pela falta de geração de thumbnails das imagens. E essa falta de uma prévia das duplicatas dificulta e muito o trabalho de passar um pente fino em tantos resultados.

duplicate-cleaner-resultados

O número assombroso de falsos positivos pode ser justificado pelo valor de 40% de similaridade especificado. No uso cotidiano, certamente teria feito um ajuste menos abrangente. Felizmente, o Duplicate Cleaner Pro encontrou todas as imagens criadas para esse teste.

Resolvi então repetir o teste, usando 85% de similaridade como sugerido pelo próprio programa. Um grande ponto positivo é que a ferramenta aproveitou a análise anterior e o segundo teste foi muito mais rápido: somente 1 minuto e 25 segundos. Foram encontradas 67 duplicatas. Novamente, todas as imagens criadas para esse teste foram identificadas. Em contrapartida, das 7 imagens duplicadas que não faziam parte do teste e foram encontradas pelo Thumbs Plus, o Duplicate Cleaner Pro encontrou apenas 4.

Free Duplicate Photo Finder

Essa ferramenta tem de cara duas vantagens sobre as opções anteriores: é totalmente dedicada ao serviço de reconhecimento de imagens duplicadas e é gratuita. Sua interface é muito simples, mas agradável. As vantagens terminam por aí… Ele não permite configurar o nível de similaridade que você está procurando (embora haja um ajuste para filtrar somente casos de 100% de semelhança). Seu objetivo é escanear tudo que tem em uma pasta e informar o grau de familiaridade entre cada grupo de imagem.

duplicate-photo-finder

Infelizmente, ele consome um bocado de processamento se comparado às demais soluções. Não monitorei o uso de CPU nas outras ferramentas, mas no caso do Free Duplicate Photo Finder, a lentidão geral da máquina chamou minha atenção e constatei o consumo de 40-50% do processamento na tarefa de análise da pasta de 12 mil papéis de parede. Em configurações de um único núcleo, isso pode ser um obstáculo.

Apesar do consumo de CPU, a análise toda demorou longos 29 minutos e 41 segundos. Ainda bem que uma janela abriu para me informar da conclusão, porque eu já estava em outra atividade. O programa acabou encontrando 811 duplicatas, segundo seus critérios internos.

Ele não chega a apresentar uma visão global prévia de cada imagem, mas os pares são apresentados com visualização automaticamente quando você seleciona:

duplicate-photo-finder-resultdos

O Free Duplicate Photo Finder conseguiu identificar todas as cópias idênticas criadas para o teste e todas as cópias em preto e branco. Mas falhou em reconhecer as imagens espelhadas. Seu algoritmo de detecção é curioso: detectou uma semelhança entre duas imagens de tanques de guerra distintos, assim como apontou um parentesco entre duas imagens diferentes do mesmo jogo de corrida a partir do ângulo da cena e das tonalidades. Mas, em contrapartida, traz uns falsos positivos inacreditáveis:

duplicate-photo-finder-estranho

Das 7 imagens que não faziam parte do teste e foram detectadas pelo Thumbs Plus, a ferramenta conseguiu encontrar 5, embora eu tenha desistido de avaliar os resultados abaixo de 20% de similaridade.

Infelizmente, ao contrário das demais soluções o Free Duplicate Photo Finder não salva os resultados. Se você acrescentar novas imagens na pasta e quiser procurar duplicatas no futuro, terá que passar por todo o longo processo novamente.

VisiPics

De longe, o mais feio do pacote, com uma interface que lembra os programas dos anos 90. Sem atualização desde 2013, o gratuito VisiPics acaba surpreendendo em vários quesitos. Assim como o Free Duplicate Photo Finder, ele é dedicado à tarefa de detectar imagens duplicadas mas traz uma grande série de configurações para satisfazer os mais exigentes.

visipics

O programa permite filtrar o nível de similaridade, mas eu cometi o erro de deixar na configuração padrão Basic. O resultado da primeira análise garantiu ao VisiPics uma pontuação aceitável na categoria velocidade: 16 minutos e 33 segundos. Porém, ele encontrou apenas 6 imagens duplicadas: as 4 cópias idênticas criadas para o teste, uma das 7 imagens iguais que não faziam parte do teste e um falso positivo. Falhou em encontrar todas as outras similares, inclusive aquelas em escala de cinza e as espelhadas.

visipics-resultados-01

O VisiPics permite salvar os resultados e salvar a informação dos falsos positivos ou imagens que você deseja ignorar no futuro. O processo não é automático, depende da ação do usuário. A ferramenta gera um arquivo .vsp (VisiPics Project), que você pode arquivar junto com seus backups, por exemplo.

Aproveitei esse recurso para realizar um segundo teste, desta vez com o filtro no valor Loose, que detecta imagens similares com mais diferenças.  Levou 1 minuto e 52 segundos adicionais e encontrou 384 duplicatas. Encontrou duas imagens que não haviam aparecido em teste algum até agora (!), 6 das 7 imagens similares que não faziam parte do teste, duas imagens em escala de cinza (isso provavelmente porque as imagens originais já eram bastante escuras) e nenhuma das espelhadas.

Conclusão

Não existe a ferramenta ideal.

Se você já usa o Thumbs Plus como gerenciador de imagens, não custa adotar seu método de identificação de duplicatas. Mas, se você depende profissionalmente disso, um bom conselho seria complementar seus resultados com uma segunda ferramenta, como o VisiPics. Em contrapartida, o recurso do Duplicate Cleaner Pro de encontrar imagens espelhadas pode valer o investimento, além de sua velocidade superior. E ele ainda conta com outros recursos para localizar arquivos que não são imagens e que estejam duplicados no seu HD.

Por outro lado, se o orçamento é apertado e você precisa de uma ferramenta para essa tarefa, a recomendação é o VisiPics configurado para Loose no filtro. Até porque a outra alternativa gratuita deixa a desejar…

O Free Duplicate Photo Finder seria perfeito se fosse possível configurar o nível mínimo de similaridade que se deve começar a busca. O fato de ele apresentar até imagens com muita diferença no seu relatório deve ser a explicação para ele levar quase o dobro do tempo da solução mais rápida e ainda consumir tanto processamento. Sua interface é a mais prática de usar, mas sua incapacidade de salvar os resultados acaba tirando a ferramenta da minha lista de recomendações.