Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/flash/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 如何在使用cv2.VideoCapture()时降低CPU利用率_Python_Python 3.x_Opencv_Video Capture_Cv2 - Fatal编程技术网

Python 如何在使用cv2.VideoCapture()时降低CPU利用率

Python 如何在使用cv2.VideoCapture()时降低CPU利用率,python,python-3.x,opencv,video-capture,cv2,Python,Python 3.x,Opencv,Video Capture,Cv2,使用ret、video=cv2.VideoCapture()和video.read()函数从cc摄像机获取帧时,使用率很低,但与摄像机连接时没有错误。但是如果它不能从相机捕获帧,CPU利用率将增加到最大值,直到函数返回错误。返回错误需要20-30秒。从理论上讲,在我们没有收到任何返回之前,CPU必须处于近乎空闲的状态。但这里发生了什么?有人能帮我整理一下吗 detect_object(live_view_url): try: video = cv2.VideoCapture(live_v

使用ret、video=cv2.VideoCapture()和video.read()函数从cc摄像机获取帧时,使用率很低,但与摄像机连接时没有错误。但是如果它不能从相机捕获帧,CPU利用率将增加到最大值,直到函数返回错误。返回错误需要20-30秒。从理论上讲,在我们没有收到任何返回之前,CPU必须处于近乎空闲的状态。但这里发生了什么?有人能帮我整理一下吗

detect_object(live_view_url):
try:
    video = cv2.VideoCapture(live_view_url)
    ret, frame = video.read()
except:
    print("Camera Error!")
    exit()

你能展示你的一些代码吗?live\u view\u url是任何IP摄像头的rtsp链接。仅当网络延迟或从相机捕获的帧导致延迟时,问题才存在。当延迟发生时,使用率将达到最大值CV2。视频捕获是不同捕获接口的唯一前端。你知道使用什么后端吗?您可以手动设置它,例如ffmpeg:video=cv2.VideoCapture(live\u view\u url,cv::CAP\u ffmpeg)在Python2和Python3上执行相同的操作吗?您可以在终端中打开python并运行video=cv2.VideoCapture(live\u view\u url)如果挂起,则表明url有问题,或者网络摄像头/ip摄像头通过该url输出的格式有问题