1
resposta

TypeError: Invalid shape (3, 281, 500) for image data

Resolvido! Quando executa o "dado = dado.permute(1, 2, 0)" mais de uma vez, ele vai permutando e por isso da o erro. Basta permutar apenas uma vez e depois colocar a "#" para nao executar mais essa linha de código!

Nessa célula está dando erro e não consigo identificar o porque:

fig, axs = plt.subplots(2,1, figsize=(10, 10))
# dado = dado.permute(1, 2, 0)

axs[0].imshow(dado)
axs[1].imshow(rotulo[0], cmap='gray')
---------------------------------------------------------------------------

Erro:
---------------------------------------------------------------------------
TypeError                                 Traceback (most recent call last)
<ipython-input-22-02f005918434> in <cell line: 4>()
      2 # dado = dado.permute(1, 2, 0)
      3 
----> 4 axs[0].imshow(dado)
      5 axs[1].imshow(rotulo[0], cmap='gray')

2 frames
/usr/local/lib/python3.10/dist-packages/matplotlib/image.py in set_data(self, A)
    708         if not (self._A.ndim == 2
    709                 or self._A.ndim == 3 and self._A.shape[-1] in [3, 4]):
--> 710             raise TypeError("Invalid shape {} for image data"
    711                             .format(self._A.shape))
    712 

TypeError: Invalid shape (3, 281, 500) for image data
1 resposta

Olá, Nycolas, tudo bem?

Desculpe a demora em obter um retorno.

Fico feliz que tenha encontrado a solução do problema e por compartilhar aqui no fórum, isso poderá ajudar outros alunos.

Continue praticando as atividades para consolidar os conhecimentos adquiridos!

Caso surja alguma dúvida, fico à disposição.

Abraços e até mais!