1
resposta

[Dúvida] Imagem e normalização

Quando carrego a imagem utilizando:

plt.imshow(X_train[0])

A imagem vem com tons diferentes da escala de cinza. Então, acrescentei cmap='Greys' para ficarigual o do vídeo.

Antes de normalizar, fiz o comando monstrado em aula:

plt.colorbar()

Como resultado, me veio a escala abaixo ao invés de 0 à 250:

primeira imagem do arrayPorque isso acontece?

No meu treino anterior a loss ja estava bem baixa, com val_loss: 06021, mas gostaria de fazer igual ao video para abaixar ainda mais.

Estou utilizando o VSCode e o conda como interpretador, não o colab como está no vídeo. Mas acho que essa nao deve ser a causa.

1 resposta

Olá Estudante! Tudo bem com você?

O que está acontecendo é que a imagem já foi normalizada antes de você exibi-la com o plt.imshow(). Quando você normaliza a imagem, os valores dos pixels são convertidos para a faixa de 0 a 1, em vez de 0 a 255. Isso é comum em muitos modelos de aprendizado de máquina, pois ajuda a melhorar a convergência durante o treinamento. Para verificar se a imagem foi normalizada, você pode imprimir alguns valores do array X_train[0] antes de exibi-la:


print(X_train[0])

Se os valores estiverem entre 0 e 1, então a imagem já está normalizada. Caso contrário, se você deseja ver a imagem na escala original de 0 a 255, você precisará multiplicar os valores por 255 antes de exibi-la:


plt.imshow(X_train[0] * 255, cmap='Greys')

plt.colorbar()

Espero ter ajudado. Conte com o apoio do Fórum na sua jornada. Fico à disposição. Abraços e bons estudos!

Caso este post tenha lhe ajudado, por favor, marcar como solucionado