Solucionado (ver solução)
Solucionado
(ver solução)
1
resposta

[Projeto] Identificando objetos com MobileNetV2

# =========================================
# PASSO 1: CARREGAR E PREPARAR A IMAGEM
# =========================================

from google.colab import files
from tensorflow.keras.utils import load_img, img_to_array
import numpy as np
import matplotlib.pyplot as plt

uploaded = files.upload()

# Pega o nome do primeiro arquivo enviado
image_path = list(uploaded.keys())[0]

# Carrega a imagem já redimensionando para 224x224
img = load_img(image_path, target_size=(224, 224))

# Mostra a imagem
plt.imshow(img)
plt.axis("off")
plt.title("Imagem carregada")
plt.show()

# Converte a imagem para array
img_array = img_to_array(img)

# Adiciona a dimensão do batch: (1, 224, 224, 3)
img_array = np.expand_dims(img_array, axis=0)


# =========================================
# PASSO 2: CARREGAR O MODELO PRÉ-TREINADO
# =========================================

from tensorflow.keras.applications import MobileNetV2

model = MobileNetV2(weights="imagenet")


# =========================================
# PASSO 3: PRÉ-PROCESSAMENTO DA IMAGEM
# =========================================

from tensorflow.keras.applications.mobilenet_v2 import preprocess_input

img_preprocessed = preprocess_input(img_array)

print("Formato da imagem após pré-processamento:", img_preprocessed.shape)
print("Pré-processamento concluído com sucesso.")
# =========================================
# PASSO 4: FAZER A PREVISÃO
# =========================================

from tensorflow.keras.applications.mobilenet_v2 import decode_predictions

# Fazer previsão
predictions = model.predict(img_preprocessed)

# Decodificar resultados (top 3)
decoded = decode_predictions(predictions, top=1)[0]

# Exibir resultados
print("Resultados da classificação:\n")

for i, (codigo, nome, prob) in enumerate(decoded):
    print(f"{i+1}. {nome} ({prob*100:.2f}%)")
1 resposta
solução!

Olá, Cássio! Como vai?

Parabéns pela resolução da atividade!

Observei que você explorou o pré-processamento de imagens com Keras para preparar os dados em Python, utilizou muito bem o modelo pré-treinado MobileNetV2 para realizar previsões de classificação e ainda compreendeu a importância da decodificação das saídas para interpretar os resultados de forma clara e acessível.

Continue postando as suas soluções, com certeza isso ajudará outros estudantes e tem grande relevância para o fórum.

Sugestão de conteúdo para você mergulhar ainda mais no tema:

Alguns materiais podem estar em inglês, mas é possível compreendê-los usando o recurso de tradução de páginas do próprio navegador.

Fico à disposição! E se precisar, conte sempre com o apoio do fórum.

Abraço e bons estudos!

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