Script Completo em Python - Interagindo com a IA em ChatGPT
Atividade 5 – Aula 3 do curso “Análise e Classificação de Faces: Visão Computacional com OpenCV”
Nesta etapa do curso, coloquei em prática o pré-processamento de imagens de faces, redimensionando-as para um tamanho padrão (100x100 pixels), etapa fundamental antes de treinar um classificador.
Com o apoio do ChatGPT, consegui não apenas entender o propósito da atividade, como também montar um script completo em Python com visualização das imagens antes e depois do redimensionamento.
Estou compartilhando o código completo como forma de reforçar meu aprendizado e interagir com a comunidade:
Essa interação entre o conteúdo da Alura e o apoio inteligente do ChatGPT tem sido essencial para meu progresso no aprendizado de Visão Computacional e Inteligência Artificial aplicada à área médica — meu foco principal de estudos. Fico à disposição para trocas! Quem mais está usando OpenCV ou aplicando IA na saúde?
#Alura #VisaoComputacional #OpenCV #Python #MachineLearning #Medicina #IA #ChatGPT #AprendizadoAtivo
# Salvando o código completo como um script .py para que o usuário possa postar sua solução da atividade
codigo = '''
import cv2
import os
import matplotlib.pyplot as plt
# Configurações de entrada e saída
pasta_entrada = 'imagens_originais/' # Pasta com as imagens brutas
pasta_saida = 'imagens_redimensionadas/' # Pasta onde serão salvas as imagens processadas
tamanho_alvo = (100, 100) # Tamanho desejado para todas as imagens
# Cria a pasta de saída se ainda não existir
os.makedirs(pasta_saida, exist_ok=True)
# Lista de arquivos de imagem
arquivos = [arq for arq in os.listdir(pasta_entrada) if arq.lower().endswith(('.png', '.jpg', '.jpeg'))]
# Processamento das imagens
for i, arquivo in enumerate(arquivos):
caminho_img = os.path.join(pasta_entrada, arquivo)
imagem = cv2.imread(caminho_img)
if imagem is not None:
imagem_rgb = cv2.cvtColor(imagem, cv2.COLOR_BGR2RGB) # Converte para RGB para exibir no matplotlib
imagem_redimensionada = cv2.resize(imagem_rgb, tamanho_alvo)
# Salvar imagem redimensionada
caminho_saida = os.path.join(pasta_saida, arquivo)
cv2.imwrite(caminho_saida, cv2.cvtColor(imagem_redimensionada, cv2.COLOR_RGB2BGR)) # Volta para BGR
# Visualização antes e depois (apenas para as 3 primeiras imagens)
if i < 3:
plt.figure(figsize=(8, 4))
plt.subplot(1, 2, 1)
plt.imshow(imagem_rgb)
plt.title('Original')
plt.axis('off')
plt.subplot(1, 2, 2)
plt.imshow(imagem_redimensionada)
plt.title('Redimensionada (100x100)')
plt.axis('off')
plt.suptitle(f'Imagem {arquivo}')
plt.tight_layout()
plt.show()
print(f"[OK] {arquivo} redimensionada e salva em {pasta_saida}")
else:
print(f"[ERRO] Falha ao ler {arquivo}")
# Salvar em arquivo
caminho_arquivo = "/mnt/data/atividade_redimensionar_faces_alura.py"
with open(caminho_arquivo, "w") as f:
f.write(codigo)
caminho_arquivo
Result
'/mnt/data/atividade_redimensionar_faces_alura.py'