2
respostas

Erro ao executar bloco da aula

Olá!

Quando executo o código, estou encontrando o seguinte erro:

ValueError Traceback (most recent call last)

in () 11 if arquivo.endswith('.png'): 12 orb_descritor = get_descritores(os.path.join(caminho, arquivo)) ---> 13 descritores = np.append(descritores, orb_descritor, axis=0) 14 15 img_representacao = PacoteDePalavras()

<array_function internals> in append(args, *kwargs)

/usr/local/lib/python3.6/dist-packages/numpy/lib/function_base.py in append(arr, values, axis) 4691 values = ravel(values) 4692 axis = arr.ndim-1 -> 4693 return concatenate((arr, values), axis=axis) 4694 4695

<array_function internals> in concatenate(args, *kwargs)

ValueError: could not broadcast input array from shape (512,32) into shape (512)

Tentei achar o motivo do erro mas não consegui, poderia me ajudar?

DICIONARIO_NOME = 'dicionario.csv'
dados_treinamento = ['aula1/Treinamento/positivos/','aula/Treinamento/negativos/' ]

#Criaremos rotina de criação do dicionário de palavras vistuais

descritores = np.empty((0,32), dtype = np.uint8)

for caminho in dados_treinamento:
  for raiz, diretorios, arquivos in os.walk(caminho):
    for arquivo in arquivos:
      if arquivo.endswith('.png'):
        orb_descritor = get_descritores(os.path.join(caminho, arquivo))
        descritores = np.append(descritores, orb_descritor, axis=0)

img_representacao = PacoteDePalavras()
img_representacao.gerar_dicionario(descritores)
img_representacao.salvar_dicionario('aula1/', DICIONARIO_NOME)

2 respostas

Encontrei o problema, era um teste que havia colocado no retorno da função "get_descritores". Tópico resolvido.

Oii Ewerton, tudo bem contigo?

Desculpa a demora em te dar um retorno, fico feliz que compartilhou conosco a resolução do seu problema! O erro que estava ocorrendo era em relação ao tamanho do seu array, ele esperava um tamanho bidimensional e estava recebendo apenas um valor de uma dimensão apenas.

Obrigada por compartilhar conosco o problema e como resolveu ele, tenho certeza de que ajudou mais alunos e alunas!

Bons estudos ^^

Quer mergulhar em tecnologia e aprendizagem?

Receba a newsletter que o nosso CEO escreve pessoalmente, com insights do mercado de trabalho, ciência e desenvolvimento de software