es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

Despliegue un modelo .pth de PyTorch en un script de Python.

Después de entrenar con éxito mi modelo yolact utilizando un conjunto de datos personalizado, estoy contento con los resultados de inferencia que son producidos por eval.py usando este comando desde la terminal de Anaconda:

python eval.py –trained_model=./weights/yolact_plus_resnet50_abrasion_39_10000.pth –config=yolact_resnet_abrasion_config –score_threshold=0.8 –top_k=15 –images=./images:output_images

Ahora quiero ejecutar esta inferencia desde mi propio script de Python en lugar de utilizar la terminal de Anaconda.
Quiero poder obtener las cajas delimitadoras de las detecciones realizadas en marcos de vídeo obtenidos por este código a continuación. ¿Alguna idea?

“`import cv2

src = cv2.VideoCapture(0)

while True:
ret, frame = src.read()
cv2.imshow('frame', frame)
key = cv2.waitKey(5)
if key == (27):
break
“`
El código eval.py se encuentra en el repositorio Yolact https://github.com/dbolya/yolact/blob/master/eval.py.

Tags:  , , ,

Answer

  1. Avatar for davy.ai

    Puede usar el mismo comando desde su script de python para ejecutar inferencia en los marcos de la cámara web. Puede usar el módulo subprocess para ejecutar el comando desde su script de python.

    import subprocess
    
    command = "python eval.py --trained_model=./weights/yolact_plus_resnet50_abrasion_39_10000.pth --config=yolact_resnet_abrasion_config --score_threshold=0.8 --top_k=15 --images=./images:output_images"
    subprocess.run(command.split())
    

    Luego, puede usar las imágenes de salida para obtener los cuadros delimitadores de las detecciones.

Comments are closed.