Home › Fóruns › Fórum Reconhecimento de Faces e de Objetos com Python e Dlib › Não está funcionando a etapa de detector de imagem na hora de visualizar
Marcado: +(Detecção+de+objetos)
- Este tópico contém 5 respostas, 2 vozes e foi atualizado pela última vez 2 anos, 1 mês atrás por
Léo Silva.
- AutorPosts
- 23 de janeiro de 2023 às 15:31 #3906423 de janeiro de 2023 às 15:32 #39065
Por que está acontecendo esse erro de não as imagens? O código é o mesmo e todas as bibliotecas colocadas corretamente.
23 de janeiro de 2023 às 17:31 #39066Vocês podem transcrever o código de vocês para o colab? Irá resolver a situação mais rápido aqui.
import os
import dlib
import cv2
import globprint(dlib.test_simple_object_detector(“recursos/teste_relogios.xml”, “recursos/detector_relogios.svm”))
detectorRelogio = dlib.simple_object_detector(“recursos/detector_relogios.svm”)
for imagem in glob.glob(os.path.join(“relogios_teste”, “*.jpg”)):
img = cv2.imread(imagem)
objetosDetectados = detectorRelogio(img)
for d in objetosDetectados:
e, t, d, b = (int(d.left()), int(d.top()), int(d.right()), int(d.bottom()))
cv2.rectangle(img, (e,t), (d, b), (0,0,255), 2)cv2.imshow(“Detector de relógios”, img)
cv2.waitKey(0)cv2.destroyAllWindows()
23 de janeiro de 2023 às 18:32 #39067UFPA, Boa tarde. Já faz um bom tempo que não lido com estes códigos e o meu ambiente de teste tem que ser refeito em parte para tentar reproduzir seu erro. Aparentemente o código está Ok. Peguei o código abaixo do curso. Você pode obter este código também donde fez o download dos fontes deste curso.
Só não tenho certeza que isso vai resolver seu problema. Quando fizemos o curso, algum tempo atrás, recordo que às vezes ocorria esse erro e era devido a algum path errado ou instalação das bibliotecas. Verifique novamente todo o ambiente.
Tente também dar um print em algumas variáveis, por exemplo print(img.shape) ou print(e,t,d,b) .
Espero que tenha ajudado.
import os
import dlib
import cv2
import globprint(dlib.test_simple_object_detector(“recursos/teste_relogios.xml”, “recursos/detector_relogios.svm”))
detectorRelogio = dlib.simple_object_detector(“recursos/detector_relogios.svm”)
for imagem in glob.glob(os.path.join(“relogios_teste”, “*.jpg”)):
img = cv2.imread(imagem)
objetosDetectados = detectorRelogio(img)
for d in objetosDetectados:
e, t, d, b = (int(d.left()), int(d.top()), int(d.right()), int(d.bottom()))
cv2.rectangle(img, (e,t), (d, b), (0,0,255), 2)cv2.imshow(“Detector de relógios”, img)
cv2.waitKey(0)cv2.destroyAllWindows()
23 de janeiro de 2023 às 18:36 #39068Em tempo, quando é submetido este formulário, a identação do código fonte se perde. Obtenha o fonte do local onde você fez download dos fontes do curso.
23 de janeiro de 2023 às 20:47 #39070UFPA, Boa noite. Como nao consegui restaurar meu ambiente de teste deste curso de forma correta e rapida, passei para o Colab e fiz um pequeno teste, que se encontra no link abaixo no Dropbox. Provavelmente seu erro deve ser de path. Verifique o fonte no link abaixo.
Desculpe por nao ser um codigo elegante, pois foi um teste bem rapido.
https://www.dropbox.com/s/fvpsbkjgu88ri0f/deteccao_relogio_teste_colab.py?dl=0
Por via das duvidas, segue abaixo o mesmo codigo mas nao identado
<hr />
import os
import dlib
import cv2
import glob
from google.colab.patches import cv2_imshow # cv2.imshow() no ColabROOT_DIR = r”/content/Curso Dlib-Udemy/” # coloque seu diretorio raiz aqui…
print(dlib.test_simple_object_detector(ROOT_DIR + “recursos/teste_relogios.xml”, ROOT_DIR + “recursos/detector_relogios.svm”))
detectorRelogio = dlib.simple_object_detector(ROOT_DIR + “recursos/detector_relogios.svm”)
for imagem in glob.glob(os.path.join(ROOT_DIR + “relogios_teste”, “*.jpg”)):
print(imagem)
img = cv2.imread(imagem)
objetosDetectados = detectorRelogio(img)
for d in objetosDetectados:
e, t, d, b = (int(d.left()), int(d.top()), int(d.right()), int(d.bottom()))
print(e,t,d,b)
cv2.rectangle(img, (e,t), (d, b), (0,0,255), 2)cv2_imshow(img)
cv2.waitKey(0)cv2.destroyAllWindows()
- AutorPosts
- Você deve fazer login para responder a este tópico.