Como classificar GIFs animados de GIFs não animados?

6

Eu tenho uma pasta com muitas imagens e quero classificar GIFs animados de GIFs não animados e mover os GIFs animados para uma nova pasta. Tentei com software como XnView e XnViewMp para Windows, mas eles não têm essa opção [ link ]. Também tentei isso: Como dividir uma pasta de GIFs em itens animados e estáticos , mas o Comando Image Magic é apenas para uma imagem e há muitos arquivos para fazer isso um por um.

    
por Ventolinmono 14.04.2015 / 04:24

3 respostas

3

ExifTool é simplesmente incrível e imensamente poderoso:

exiftool -if "$FrameCount > 0" -directory=Animated *.gif
    
por 15.04.2015 / 04:12
4

Para filtrar os GIFs animados, você precisa procurar por arquivos GIF com mais de um quadro. Cada frame começa com um bloco "Graphics Control Extension" com a assinatura hexadecimal 21 F9 04 . Portanto, você precisa procurar arquivos .gif com duas ou mais ocorrências dessa assinatura. Estes devem ser tipicamente GIFs animados.

Essa abordagem geral deve funcionar com qualquer ferramenta que suporte algum tipo de pesquisa binária junto com curingas. Isso também significa que muitas ferramentas com suporte a expressões regulares devem encontrar arquivos gif animados com esta expressão:

\x00\x21\xf9\x04.*\x00\x21\xf9\x04
  • Primeiro, experimentei meu gerenciador de arquivos favorito Total Commander , mas infelizmente o mecanismo regex fornecido não suporta pesquisa em várias linhas e não funciona.
  • Canivete de arquivo suíço (sfk): encontre todos os GIFs animados na unidade C:
    sfk xfind -firsthit -pat "/\x21\xf9\x04[4 bytes]\x00**\x21\xf9\x04/" -dir c:\ -file .gif | findstr ":file"
  • O FreeCommander suporta o regex acima em sua caixa de diálogo "Pesquisar arquivos" (modo avançado)
  • O PowerGREP também encontra animações GIFs com as opções "Pesquisar em arquivos binários" e "Pontos emparelha novas linhas"
  • Grep para Windows : grep -Pl "(?s)\x00\x21\xf9\x04.*\x00\x21\xf9\x04" *.gif
por 14.04.2015 / 12:59
0

Isso pode ser diferente do que você está procurando, mas funciona de maneira simples: use um visualizador de imagens como o FastStone Image Viewer disponível em (eu uso a versão portátil):

link

Crie uma pasta para as imagens gif de movimento.

Observe as imagens gif no visualizador para diferenciar facilmente entre gifs de movimento e sem movimento. Ao percorrer as imagens com o visualizador, selecione as imagens gif no Windows File Explorer usando Shift + Clique direito para cada gif de movimento.

Quando terminar de selecionar todas as imagens gif de movimento, use Ctrl + X para cortar, em seguida, vá até a sua pasta motion gif e use Ctrl + V para colá-las na pasta.

É isso, embora seja um bom momento para se livrar de algumas imagens obsoletas.

MarkinID

    
por 14.04.2015 / 23:55