1
resposta

[Projeto] CLASSIFICAÇÃO DE IMAGENS COM MOBILENETV2

============================================

CLASSIFICAÇÃO DE IMAGENS COM MOBILENETV2

============================================

from tensorflow.keras.applications import MobileNetV2
from tensorflow.keras.applications.mobilenet_v2 import preprocess_input, decode_predictions
import numpy as np
import cv2
from google.colab import files
from PIL import Image
import matplotlib.pyplot as plt

1. Fazer upload da imagem

uploaded = files.upload()
imagem_path = list(uploaded.keys())[0] # Pega o nome do arquivo enviado

2. Carregar a imagem usando OpenCV

imagem = cv2.imread(imagem_path)
imagem_rgb = cv2.cvtColor(imagem, cv2.COLOR_BGR2RGB)

3. Carregar o modelo MobileNetV2 pré-treinado (ImageNet)

modelo = MobileNetV2(weights="imagenet")

4. Pré-processar a imagem para o formato esperado pelo modelo

imagem_redimensionada = cv2.resize(imagem_rgb, (224, 224))
imagem_array = np.expand_dims(imagem_redimensionada, axis=0)
imagem_array = preprocess_input(imagem_array)

5. Fazer a previsão

predicoes = modelo.predict(imagem_array)

6. Decodificar a predição (top 1)

label = decode_predictions(predicoes, top=1)

classe_identificada = label[0][0][1]
confianca = label[0][0][2]

print(f"Objeto identificado: {classe_identificada} (confiança: {confianca:.2f})")

7. Exibir a imagem com o rótulo previsto

plt.imshow(imagem_rgb)
plt.axis('off')
plt.title(f"Predição: {classe_identificada} ({confianca:.2f})")
plt.show()

1 resposta

Ei! Tudo bem, Marcelo?

Seu projeto ficou muito bem estruturado! O código está claro, organizado e facilita bastante o entendimento de cada etapa.

Parabéns pela dedicação, continue nesse ritmo! E qualquer dúvida, compartilhe no fórum.

Alura Conte com o apoio da comunidade Alura na sua jornada. Abraços e bons estudos!