gpt4 book ai didi

python - cv2需要很长时间才能更新框架

转载 作者:行者123 更新时间:2023-12-02 17:58:15 32 4
gpt4 key购买 nike

我对python,opencv和raspberry pi非常陌生
我想从2 usb网络摄像头流式传输视频,并使用haarcascade来检测汽车(玩具车)。
我不知道我在做什么错,我通过使用pyimagesearch教程安装了opencv,请帮助我

import RPi.GPIO as GPIO
import time
import cv2
import numpy as np
import imutils
import sign
import subprocess

cascade_src = 'cars.xml'
car_cascade = cv2.CascadeClassifier(cascade_src)

ip_cam=[cv2.VideoCapture(0),cv2.VideoCapture(1)]

try:
while True:
detected = [0,0]

for ip in range(len(ip_cam)):

ret,img=ip_cam[ip].read()
img=imutils.resize(img,width=300)
gray = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY)
cars = car_cascade.detectMultiScale(gray, 1.1, 1)

for (x,y,w,h) in cars:
cv2.rectangle(img,(x,y),(x+w,y+h),(0,0,255),2)
cv2.imshow(str(ip), img)
b=str(len(cars))
a= int(b)
detected[ip]=a
n,s=detected

print("------------------------------------------------")

#print ("North: %d South: %d East: %d West: %d"%(n,s,e,w))
print ("North: %d South: %d "%(n,s))

if n>=2:

print ("North More Traffic")
sign.north()


elif s>=2:
print ("South More Traffic")
sign.south()



else:
#red()
sign.normal()
print ("no traffic")

if cv2.waitKey(33) == 27:
break

except KeyboardInterrupt:
cv2.destroyAllWindows()

最佳答案

您的代码没有错,但是正如Adrian自己在blogpost上指出的那样,在树莓派上执行这些操作将很慢。
建议在PC或笔记本电脑上进行处理,然后将结果发送回pi,或者如果需要在pi上进行处理,则不仅可以将图像宽度调整为300宽度,还可以将其调整为甚至更小比例,请查看文档here或仅使用以下代码:

dim = (width, height)
resized = cv2.resize(img, dim, interpolation = cv2.INTER_AREA)
我想尝试不同的宽度和高度,直到速度足够好为止。

关于python - cv2需要很长时间才能更新框架,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/64192028/

32 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com