Ошибка в коде Python3.8.3

Есть код(недописанный):

from imutils.video import VideoStream, FPS
import numpy as np 
import argparse
import time
import cv2

ap = argparse.ArgumentParser()

ap.add_argument("-p", "--prototxt", required=True, 
    help="path to Caffe 'deploy' prototxt file")

ap.add_argument("-m", "--model", required=True, 
    help="path to Caffe pre-trained model")

ap.add_argument("-c", "--confidence", type=float, 
    default=0.2,
    help="minimum probability to filter weak detections")

args = vars(ap.parse_args)

CLASSES = ["background", "aeroplane", "bicycle", 
    "bird", "boat","bottle", "bus", "car", "cat", 
    "chair", "cow", "diningtable","dog", "horse", 
    "motorbike", "person", "pottedplant", "sheep",
    "sofa", "train", "tvmonitor"]

COLORS = np.random.uniform(0, 255, size=(len(CLASSES), 3))

print("[INFO] loading model...")
net = cv2.dnn.readNetFromCaffe(args["prototxt"], args["model"])
print("[INFO] starting video stream...")
vs = VideoStream(scr=0).start()
time.sleep(2.0)
fps = FPS().start()

Запускаю, ошибка:

Traceback (most recent call last):
  File "C:\Users\andre\Desktop\Object Detection\real_time_object_detectiob.py", line 30, in <module>

    net = cv2.dnn.readNetFromCaffe(args["prototxt"], args["model"])
KeyError: 'prototxt'

Что делать?


Ответы (1 шт):

Автор решения: CrazyElf

Вот эта строчка странная:

args = vars(ap.parse_args)

parse_args - это функция, её надо бы вызвать:

args = vars(ap.parse_args())
                         ^^

И может ей надо какие аргументы при вызове передать, тут я уже не в курсе.

→ Ссылка