Alexsandro Felix

Fotos e Dados: Analise EXIF com Python!

volkswagen beetle on cobblestone street in old town

Photo by Chris Luengas on Pexels.com

E aí, galera apaixonada por fotografia e dados? Recentemente, recebi uma mensagem irada de um leitor do nosso blog, que curtiu o artigo “Análise de Metadados EXIF com Python: Extraia Ouro das Suas Fotos!” e pediu mais dicas sobre como explorar o EXIF. Pois bem, meu amigo, esse post é pra você e pra todo mundo que quer virar detetive dos cliques! Vamos usar Python para descobrir padrões nas suas fotos — sejam de jogos de futebol épicos ou treinos suados — e mergulhar fundo nos metadados EXIF. Bora extrair mais ouro dessa mina?

O que é EXIF, afinal?

EXIF (Exchangeable Image File Format) é tipo o diário secreto das suas fotos: guarda data, hora, local (se tiver GPS), modelo da câmera, ISO, abertura e velocidade do obturador. Nosso leitor quer saber mais, então imagine: e se você descobrir em que horário suas fotos esportivas ficam mais iradas? Ou qual configuração turbina seus cliques? Python vai te transformar no Sherlock Holmes da fotografia!

Mãos à obra: o que você precisa

pip install Pillow
pip install pandas matplotlib

Passo a passo: destrinchando o EXIF

Atendendo ao pedido do nosso leitor, aqui vai um script simples e poderoso para analisar metadados EXIF e caçar padrões. Vamos lá?

  1. Carregue suas fotos – Crie uma pasta (ex.: “fos_esportivas”) e jogue seus JPGs ou PNGs lá. O script vai fuçar tudo!
  2. Código mágico em Python – copie e cole isso num arquivo (ex.: analise_exif.py):
from PIL import Image
import pandas as pd
import matplotlib.pyplot as plt
import os

# Pasta com suas fotos
pasta = "fotos_esportivas"
dados = []

# Ler cada foto na pasta
for arquivo in os.listdir(pasta):
    if arquivo.endswith((".jpg", ".jpeg", ".png")):
        caminho = os.path.join(pasta, arquivo)
        try:
            img = Image.open(caminho)
            exif = img._getexif()
            if exif:
                # Extrair data, hora e outras infos
                data_hora = exif.get(36867)  # Tag EXIF para "DateTimeOriginal"
                camera = exif.get(272)       # Tag para modelo da câmera
                if data_hora and camera:
                    dados.append({"Arquivo": arquivo, "DataHora": data_hora, "Camera": camera})
        except:
            print(f"Ops, {arquivo} não tem EXIF ou deu erro! Calma, acontece!")

# Criar um DataFrame com os dados
df = pd.DataFrame(dados)
print("Olha só o que encontramos, leitor curioso:")
print(df)

# Extrair só a hora da data
df["Hora"] = pd.to_datetime(df["DataHora"]).dt.hour

# Gráfico: fotos por hora do dia
plt.figure(figsize=(10, 6))
df["Hora"].value_counts().sort_index().plot(kind="bar", color="skyblue")
plt.title("Quando Você Tira Suas Fotos? (Por Hora)")
plt.xlabel("Hora do Dia")
plt.ylabel("Número de Fotos")
plt.savefig("fotos_por_hora.png")
plt.show()

O que esse código faz?

Teste e divirta-se!

Salve o script, jogue suas fotos na pasta e rode com:

python analise_exif.py

Se der erro, relaxa! Algumas fotos (culpa do WhatsApp ou editores) perdem o EXIF. Tente outras!

O que você pode descobrir?

E agora, mestre dos cliques e dados?

Obrigado ao nosso leitor por pedir mais sobre EXIF e nos inspirar! Agora é com você: rode o script, explore os padrões e vire o ninja da análise de dados na fotografia. Quer mais? Pesquise “EXIF tags” no Google e adicione ao código! Poste seu gráfico no Instagram, marque o blog e mostre o que achou.

Deixe nos comentários: qual padrão você descobriu nas suas fotos? E se gostou, compartilhe com os amigos fotógrafos e programadores. Leitor, esse foi pra você — espero que curta!

Sair da versão mobile