20 mil fotos, o disco cheio, e as cópias não são idênticas em bytes.

A rajada que você disparou no mar. A sua própria foto de volta do WhatsApp com 1.280 pixels. O print de uma foto que você já tinha. O RAW ao lado do JPG. Qualquer coisa que compare arquivo por byte chama esses quatro de fotos diferentes. Eles são uma só.

Elegant Photo Cleaner · fotos duplicadas e parecidas · Windows 10 e 11

Nada sai do seu PC Só Lixeira — não existe comando de exclusão permanente Nada nasce pré-selecionado
  • IMG_2841.JPG6000×40008,4 MB
  • IMG_2841 (1).JPG6000×40008,4 MB
  • WhatsApp Image 2026-03-12.jpg1280×85391 KB
  • Screenshot 2026-03-14 093311.png1170×25321,2 MB
  • IMG_2841.CR26000×400031,7 MB

Ilustração. Cinco arquivos, uma fotografia, cinco nomes, tamanhos e datas diferentes. Nenhum deles bate com o outro byte a byte.

0
fotos, nomes ou hashes que saem do seu PC
8
tipos de pilha, deduzidos da evidência — nunca estimados
15
dias de avaliação, sem cartão
3
idiomas, trocados sem reiniciar

A mesma foto. Bytes diferentes.

Um caçador de duplicados que compara hash de conteúdo acerta um caso e fica cego para outros quatro. São estes.

  • A rajada. Catorze quadros da mesma onda, disparados a dois segundos de distância. Mesma câmera, mesma tarde, e nenhum arquivo igual ao outro.
  • A volta pelo WhatsApp. Sua própria foto retorna recomprimida com 1.280 pixels e 91 KB, com nome novo e data nova.
  • O print. Você deu print numa foto que já tinha, e agora a imagem mora duas vezes no disco.
  • O RAW ao lado do JPG. Dois arquivos, um clique do obturador, e 31 MB disso é a cópia que você nunca abre.

SHA-256 a3f9c1…b70e  ·  SHA-256 71c2d8…4f19

O olho diz uma foto. O hash diz dois arquivos sem nada em comum. O Elegant Photo Cleaner também acha as cópias idênticas, por SHA-256, e trata essas como a metade fácil do problema.

Da família Elegant, e não dependente dela.

O Elegant File Explorer organiza arquivos por regras e acha duplicados byte a byte. Nenhum dos dois aplicativos exige o outro, e nada nesta página precisa do irmão instalado.

Conheça o Elegant File Explorer

Matemática, não IA.

Não existe modelo aqui dentro e não existe inferência. Existem medidas: cinco delas, todas antigas, todas conferíveis, todas rodando no seu próprio processador. O mesmo acervo varrido duas vezes dá a mesma resposta, byte a byte.

Abaixo está o que cada medida realmente faz, desenhada em vez de descrita, porque a versão honesta cabe num desenho.

Lê uma vez, o mais raso possível. stat → 64 KB de cabeça → pixels só de quem restou A pilha aparece enquanto ele ainda procura cancelar nunca perde o que já foi analisado
01
vs

dHash: qual lado é mais claro.

A foto é reduzida a uma gradezinha cinza e cada quadrado é comparado com o vizinho. Mais claro ou mais escuro, um bit. Sessenta e quatro quadrados, sessenta e quatro bits, e o que sai é uma impressão digital da forma da imagem, não dos bytes dela. Redimensione, salve de novo com 91 KB, e a impressão digital quase não se mexe. No desenho acima, dois dos sessenta e quatro bits discordam.

Não é comparação de miniaturas, e não é a cor que ele olha.

02

pHash: a forma debaixo do detalhe.

Uma segunda assinatura guarda só as frequências baixas da imagem, as massas grandes em vez do grão. É o que sobrevive a uma recompressão brutal, e é também quem diz não quando duas imagens apenas por acaso se parecem.

03
Conservador dHash ≤ 6 E pHash ≤ 8 raio 4

Distância de Hamming, e a palavra E.

Duas assinaturas são comparadas contando os bits que diferem. Um par só vira aresta de semelhança quando as duas concordam, dHash e pHash juntas, nunca uma ou outra. Essa palavrinha é o que mantém um documento escaneado legível: duas páginas diferentes do mesmo documento ficam a dois bits uma da outra só no dHash, e uma regra frouxa colaria as duas.

Não existe número livre para digitar, e não existe nada mais permissivo que o degrau mais largo. O motor recusa por escrito.

04

Variância do Laplaciano: qual quadro é o nítido.

Dentro de uma pilha que já existe, o aplicativo mede com que brusquidão a luz muda em cada quadro. Um quadro tremido produz um número baixo; um quadro firme, um número alto. É assim que os catorze quadros da mesma onda podem ser postos em ordem de nitidez sem ninguém apertar os olhos.

Ele não sai caçando fotos tremidas por conta própria. Uma foto tremida sozinha não tem par, então nunca entra num plano.

05
EXIF câmera · NIKON Z 6 captura · 14:02:07,12 quadro seguinte · +1,8 s

EXIF: mesma câmera, dois segundos depois.

Rajada não se acha olhando pixel. Acha-se no registro da própria câmera: mesma câmera, capturas a no máximo dois segundos de distância e a pilha inteira dentro de trinta segundos. É uma aresta de tempo, não de imagem, e a janela é a mesma nos três degraus de semelhança.

Estes números são do motor. A tela nunca mostra um score para você: ela mostra uma frase. E o resultado é determinístico: o mesmo acervo dá sempre o mesmo resultado, byte a byte, em qualquer máquina.

100%
girada 90°, 180° ou espelhada
≥ 99%
recomprimida ou redimensionada
≥ 95%
com borda acrescentada
80 → 100%
fotos muito chapadas: céu, parede, documento

São pisos, não médias: o pior valor observado, medido no degrau Conservador, que é o padrão e o mais duro dos três. São números de recall no corpus semeado do próprio motor, remontado em seis sementes independentes. Não são precisão, não são o seu acervo e não somam num número único. Fotos muito chapadas chegam a 100% a partir do degrau Normal.

Oito tipos de pilha. O rótulo nunca mente.

O tipo é deduzido das arestas de evidência dentro da pilha, nunca estimado por semelhança. Toda pilha tem no mínimo dois arquivos distintos, então um atalho ou um hardlink apontando para o mesmo arquivo nunca vira pilha. Sete deles nomeiam por que duas fotos estão juntas; o oitavo, Tremidas, é uma lente — ele ordena por nitidez dentro de uma pilha que já existe por outro motivo.

Tela das pilhas do Elegant Photo Cleaner: uma grade de pilhas, cada cartão com o rótulo Idênticas, Parecidas, Recomprimida, Rajada, Prints ou RAW + JPG, quantas fotos tem e quanto espaço libera Tela das pilhas do Elegant Photo Cleaner: uma grade de pilhas, cada cartão com o rótulo Idênticas, Parecidas, Recomprimida, Rajada, Prints ou RAW + JPG, quantas fotos tem e quanto espaço libera
A tela das pilhas. Cada cartão traz o tipo, quantas fotos guarda e quanto libera. Nada ali nasce selecionado, e a faixa do topo é uma classe de que o motor desconfia e sobre a qual ele se recusa a propor qualquer coisa.
01

Idênticas

Os mesmos bytes, com SHA-256 igual em todos os membros da pilha. Nomes, pastas e datas diferentes, um arquivo só. É o único tipo que ganha selo de sugestão.

SHA-256
02

Parecidas

A mesma imagem depois de redimensionar, recomprimir, girar ou espelhar. dHash e pHash têm de concordar, e a aresta carrega qual das oito simetrias foi aplicada.

dHash E pHash
03

Recomprimidas

A mesma imagem em outra escala ou peso: proporção compatível, dimensão ou tamanho diferentes. O original de 8 MB e a cópia de 91 KB do mensageiro.

proporção + tamanho
04

Rajada

Quadros da mesma câmera, a no máximo dois segundos de distância, com a pilha inteira dentro de trinta segundos. Achada no registro EXIF, não nos pixels.

EXIF, até 2 s
05

Prints

Um print de tela que contém uma foto que você já tem. Só existe quando a moldura uniforme em volta da imagem pode ser medida e recortada.

caixa de conteúdo
06

Tremidas

Uma lente, não uma caçada. Dentro de uma pilha que já existe por outro motivo, ele mostra qual quadro é o tremido, medido por nitidez. Nunca sai procurando fotos tremidas por conta própria.

nitidez, dentro da pilha
07

RAW + JPG

O RAW e o revelado do mesmo clique, verificados par a par. A prova forte é o conjunto de acompanhantes, mesma pasta e mesmo nome-base; a fraca é mesma câmera com capturas coladas.

verificado par a par
08

Vídeos

Dois de três quadros-chave, amostrados a 10%, 50% e 90%, dentro do limiar, mais duração com um segundo de tolerância. A relação é conferida par a par e nunca encadeada.

nasce desligado

A análise de RAW e a de vídeo nascem desligadas, e o custo do vídeo é dito em voz alta antes de você ligar. Uma pilha de que o motor desconfia, como milhares de prints quase iguais, é mostrada e explicada, e não propõe absolutamente nada.

Porta do Elegant Photo Cleaner: as pastas do acervo com selos de SSD, HD e Nuvem, o cartão O que entra na análise com RAW e vídeo desligados, e a contagem de fotos analisadas Porta do Elegant Photo Cleaner: as pastas do acervo com selos de SSD, HD e Nuvem, o cartão O que entra na análise com RAW e vídeo desligados, e a contagem de fotos analisadas
A porta. As pastas que você escolheu, com o que está em SSD, em HD ou na nuvem. RAW e vídeo chegam desligados, com o custo do vídeo escrito ao lado da chave — e o que não pôde ser aberto é contado em voz alta, em vez de passar por "não achei nada".

Ele diz por quê, em palavras.

Quando duas fotos caem na mesma pilha, o aplicativo não te entrega um percentual para interpretar. Ele te entrega o motivo.

“A mesma foto, girada.” É toda a explicação que o aplicativo dá, e ela basta. Não existe score de 0 a 100 em lugar nenhum do produto, e a ausência dele é uma decisão, não um recurso que faltou.
a mesma foto, espelhada a mesma foto, girada a mesma foto, girada para o outro lado a mesma foto, girada e espelhada

O comparador é onde você decide.

  • Zoom sincronizado. A mesma região em todas as fotos da pilha, que é o que faz um original 6000×4000 e uma cópia 1280×853 mostrarem o mesmo cílio.
  • Lupa 1:1 sob o cursor, mais a ficha honesta de cada arquivo: dimensões, bytes, data de captura, câmera, nitidez medida, caminho completo.
  • O clique pina o arquivo que fica. Ele nunca marca vítima. Nada no motor vence um pino que você colocou.
  • Não existe aresta direta entre duas fotos? Então ele mostra o caminho inteiro entre elas, salto a salto, em vez de afirmar um parentesco que não consegue desenhar.
IMG_2841.JPG 6000 × 4000 · 8,4 MB · 12/03/2026 14:02 NIKON Z 6 · nitidez 812 D:\Fotos\2026\Março\IMG_2841.JPG

Ilustração da ficha do arquivo. As oito simetrias do quadrado estão cobertas: 90°, 180°, 270° e os espelhos. Uma foto tirada 7° torta é outro problema, e está nos limites conhecidos.

Comparador do Elegant Photo Cleaner: três cópias da mesma foto lado a lado com zoom sincronizado, cada uma com a ficha do arquivo — dimensões, peso, data de captura, câmera, nitidez e caminho completo — e o motivo de estar na pilha Comparador do Elegant Photo Cleaner: três cópias da mesma foto lado a lado com zoom sincronizado, cada uma com a ficha do arquivo — dimensões, peso, data de captura, câmera, nitidez e caminho completo — e o motivo de estar na pilha
O comparador. O zoom é o mesmo em todas as fotos, e é isso que faz um original de 6.000×4.000 e uma cópia de 1.280×853 mostrarem a mesma região. Cada ficha diz por que está ali, e clicar fixa a que fica.

Nada sai sem você.

O controle de semelhança tem exatamente três degraus. Ele muda o que você vê. Ele nunca muda o que é proposto.

Conservador6 · 8 · raio 4

O padrão, e o mais duro. Menos pares na tela, e foi aqui que os pisos medidos lá em cima foram tirados.

Normal8 · 10 · raio 6

O degrau do meio. Fotos chapadas, como céu, parede ou página escaneada, são alcançadas por inteiro a partir daqui.

Amplo12 · 14 · raio 8

O mais largo que o motor vai. Qualquer coisa mais permissiva é uma recusa escrita no código, com nome.

Tela do plano do Elegant Photo Cleaner: revisão por classe de evidência, cada classe com suas pilhas, fotos e gigabytes, o aviso de que fotos sincronizadas com a nuvem também saem do celular, e o botão que manda tudo para a Lixeira Tela do plano do Elegant Photo Cleaner: revisão por classe de evidência, cada classe com suas pilhas, fotos e gigabytes, o aviso de que fotos sincronizadas com a nuvem também saem do celular, e o botão que manda tudo para a Lixeira
O plano, classe por classe. Um punhado de cartões em vez de milhares de confirmações — cada um com suas pilhas, suas fotos e seus gigabytes, a frase que diz quem sobrevive, e uma saída só: a Lixeira do Windows.

As lentes mudam o que você . Nenhuma delas propõe exclusão.

O único verbo destrutivo deste aplicativo é a Lixeira.

Exclusão permanente não existe aqui. Nem como opção escondida, nem como caixinha para marcar, nem como ajuste que veio desligado de fábrica.

É estrutural. Não existe no aplicativo nenhum caminho que apague uma foto sua de vez: as únicas chamadas de exclusão que existem nos fontes tocam o log do próprio aplicativo e os arquivos de configuração dele. O aplicativo não tem como ganhar novos verbos de exclusão nem conexão com a internet: esses limites fazem parte de como ele é construído, não de uma configuração e sockets.

  1. 1
    Um plano, revisado e aprovado.

    Nada se move antes de o plano estar na tela, revisado classe por classe e aprovado. Não existe função nenhuma no aplicativo que recicle um caminho por conta própria.

  2. 2
    A intenção é gravada antes.

    Um diário write-ahead registra o que vai acontecer antes de qualquer arquivo se mover. Sem diário, nada se move. Mover sem rede é apagar.

  3. 3
    Os bytes são conferidos de novo.

    Imediatamente antes de reciclar, ele relê o SHA-256 e o carimbo da vítima e do sobrevivente. Qualquer divergência derruba a pilha inteira com motivo nomeado, e “não consegui olhar” nunca é gravado como “olhei e não achei”.

  4. 4
    Para a Lixeira, com a marca de desfazer.

    Os acompanhantes viajam com o arquivo a que pertencem: o .MOV do Live Photo, o .XMP do RAW.

  5. 5
    O sobrevivente é aberto.

    Terminada a faxina, o aplicativo confere que a foto que ficou existe e realmente decodifica. Se ela não abrir, o lote inteiro volta da Lixeira e a tela diz isso.

  6. 6
    Desfazer, inclusive amanhã.

    Se você fechou a janela, a oferta está esperando na próxima vez que abrir o aplicativo, e os acompanhantes voltam juntos.

Onde não existe Lixeira, o aplicativo não finge que existe. Em cartão de memória, pendrive ou disco de rede, esses itens saem do plano antes de o Windows ser chamado, contados e pesados na tela. Se mesmo assim o Windows remover direto, o diário grava “exclusão permanente” em vez de “reciclado”, e nenhum desfazer é oferecido, porque não poderia ser cumprido. Desfazer também depende de os arquivos ainda estarem na Lixeira: se você a esvaziou, não existe verbo que traga de volta.

Completo sozinho. Com o irmão instalado, ele conta o que dá para somar.

Integração é bônus, nunca pedágio. O que não está de fato disponível na sua máquina não aparece: sem botão morto e sem aviso explicando o que está faltando.

Mostrar no Explorer.

A foto que você guardou abre já selecionada na pasta dela, dentro do Elegant File Explorer.

Organizar as chegadas futuras.

O aplicativo escreve uma regra para as fotos que chegarem daqui em diante e entrega para o irmão. A regra chega desligada, para você ler primeiro.

Virar decisões em etiquetas não existe.

O verbo falta do outro lado, então o botão falta deste lado. Quando existir, será contado como os outros.

Conheça o Elegant File Explorer

Um preço, uma vez.

US$ 9,99US$ 12,99preço de lançamento
  • 15 dias de avaliação no seu PC, sem cartão e sem conta.
  • Compra única. Sem assinatura e sem renovação.
  • Nada sai do seu PC. Nenhuma foto, nenhum nome de arquivo, nenhum hash.
  • Três idiomas desde o primeiro dia, trocados sem reiniciar.
  • Claro, escuro ou automático, cruzado com clássico ou moderno. Quatro combinações, todas ao vivo.
  • Windows 10 versão 1809 ou superior, e Windows 11. 64 bits.

O Elegant Photo Cleaner está na Microsoft Store. O preço de lançamento vale por tempo limitado.

Limites conhecidos.

Dizer custa menos que esconder, e todos estes são consequência de decisões que tomaríamos de novo.

  • Fotos muito chapadas são o caso difícil. Céu, parede lisa, praia, documento escaneado. No degrau Conservador o motor reencontra cerca de 80% desses pares, e 100% a partir do Normal. Afrouxar a regra em vez disso colaria duas páginas diferentes do mesmo documento, então a resposta é o degrau, não uma regra mais frouxa.
  • As pilhas de vídeo não sobrevivem à reabertura. As pilhas de fotos são pintadas de volta quando você abre o aplicativo. As de vídeo são reconstruídas a cada sessão, então precisam de uma nova varredura. A alternativa era fazer toda foto do acervo carregar três campos que só vídeo usa.
  • Fora do alcance da comparação por imagem: recorte real, panorâmica cortada, colagem, foto tirada de uma tela, rotação arbitrária como 7° e moldura decorativa que não é uniforme. Só as oito simetrias do quadrado estão cobertas.
  • HEIC, RAW, WebP e vídeo dependem de extensões do Windows. O aplicativo sonda os codecs antes da análise pesada e diz o nome da extensão que resolve. O que não pôde ser lido é contado na tela e não pode ser vítima nem sobrevivente, porque “não consegui olhar” é a resposta errada mais cara que um produto de faxina pode dar.
  • Fotos que só existem na nuvem são indexadas, não abertas. Abrir uma significa baixar o arquivo inteiro, então a análise é ligada pasta por pasta, com os bytes ditos em voz alta antes. Apagar dentro de uma pasta sincronizada também apaga no celular, e isso exige um reconhecimento a mais.
  • Fotos com sidecar ficam de fora por padrão. Um .xmp, .aae ou .json ao lado do arquivo, ou um RAW cujo par tem um, é bloqueado como classe nomeada. Você pode liberar essa classe com um gesto explícito, e aí existe o caso de borda em que o sidecar de uma vítima byte-idêntica fica órfão.
  • Ele não varre o computador sozinho. Você declara as pastas, e raiz de volume inteiro é recusada. Pastas de rede não são sondadas, porque uma sondagem de rede pode congelar por dezenas de segundos, e o modo headless recusa raiz de rede de saída.
  • Uma rajada com uma panorâmica no meio pode virar duas ou três pilhas em vez de uma. É o preço do aperto que impede fotos sem parentesco de serem encadeadas numa pilha gigante, e pagaríamos de novo.
  • O pacote é de 64 bits. Numa máquina ARM ele roda por emulação. Não existe versão para macOS nem para Linux.

Perguntas frequentes.

Ele acha fotos que não são idênticas em bytes?

Acha, e é para isso que ele existe. Cada foto ganha duas assinaturas, dHash e pHash, e um par só é chamado de parecido quando as duas concordam. É assim que a mesma imagem é reencontrada depois de voltar do WhatsApp com 1.280 pixels, depois de girada, espelhada ou redimensionada. As cópias byte a byte também são achadas, por SHA-256, e são as únicas que ganham selo de sugestão.

Ele usa inteligência artificial?

Não. Não há modelo e não há inferência. Ele mede: dHash, pHash, distância de Hamming, variância do Laplaciano para nitidez e o registro EXIF da própria câmera para as rajadas. O mesmo acervo dá sempre o mesmo resultado.

Ele pode apagar uma foto sozinho?

Não. Nada nasce marcado, o plano é revisado classe por classe e aprovado por você, e o único verbo destrutivo do aplicativo é mandar o arquivo para a Lixeira do Windows. Exclusão permanente não existe aqui, nem como opção escondida.

Minhas fotos saem do computador?

Nenhuma foto, nenhum nome de arquivo e nenhum hash sai da sua máquina. O aplicativo não tem nenhuma função de conexão à internet. A única conexão que existe é a verificação de licença e da avaliação de 15 dias na Microsoft Store, feita pela API do próprio Windows, e ela é fail-open: se a Store não responder, o acesso que você já tinha continua.

Dá para desfazer uma faxina?

Dá, de dentro do aplicativo, inclusive na próxima abertura se você fechou a janela. Os acompanhantes vão juntos e voltam juntos: o .MOV do Live Photo, o .XMP do RAW. Desfazer depende de os arquivos ainda estarem na Lixeira do Windows. Se você esvaziou a Lixeira, não existe verbo que traga de volta, e o aplicativo diz isso em vez de fingir.

E fotos de iPhone, arquivos RAW e vídeos?

HEIC, RAW, WebP e vídeo dependem da extensão de codec correspondente do Windows. O aplicativo sonda os codecs antes da análise pesada e diz o nome da extensão que resolve, e o que não pôde ser lido é contado na tela e não pode ser vítima nem sobrevivente. RAW e vídeo nascem desligados, e as pilhas de vídeo são reconstruídas a cada sessão.

Preciso do Elegant File Explorer?

Não. O Elegant Photo Cleaner é completo sozinho. Se o irmão estiver instalado, o aplicativo conta o que realmente ficou disponível na sua máquina e mostra só isso. O que não está disponível simplesmente não aparece: sem botão morto e sem aviso.

Tem assinatura?

Não. Compra única, sem assinatura e sem renovação, com 15 dias de avaliação no seu PC, sem cartão e sem conta.

As cópias não são idênticas. É exatamente por isso que elas ainda estão aí.

O Elegant Photo Cleaner acha a mesma foto entre nomes, tamanhos e datas diferentes, mostra a evidência em palavras e não manda nada para lugar nenhum sem você.

Disponível na Microsoft Store. Windows 10 versão 1809 ou superior, e Windows 11.