gpt4 book ai didi

python - 错误: (-215:Assertion failed) !_src.empty() in function 'cv::cvtColor' in background subtrator code

转载 作者:行者123 更新时间:2023-12-03 08:07:49 25 4
gpt4 key购买 nike

我正在尝试运行此代码。一开始它可以正常运行,但是由于以下错误而卡在中间:

(-215:Assertion failed) !_src.empty() in function 'cv::cvtColor'



我尝试更改视频和路径名,但没有用。谁能解释我为什么持续收到此错误。

这是代码:-
import cv2

import numpy as np

cap = cv2.VideoCapture("E:\project vid\lena_jump.avi")

_, first_frame = cap.read()

first_gray = cv2.cvtColor(first_frame, cv2.COLOR_BGR2GRAY)

first_gray = cv2.GaussianBlur(first_gray, (5, 5), 0)

while True:


_, frame = cap.read()

gray_frame = cv2.cvtColor(frame, cv2.COLOR_BGR2GRAY)

gray_frame = cv2.GaussianBlur(gray_frame, (5, 5), 0)

difference = cv2.absdiff(first_gray, gray_frame)

_, difference = cv2.threshold(difference, 25, 255, cv2.THRESH_BINARY)

cv2.imshow("First frame", first_frame)

cv2.imshow("Frame", frame)

cv2.imshow("difference", difference)

key = cv2.waitKey(30)
if key == 27:
break
cap.release()

cv2.destroyAllWindows()

最佳答案

该行可能是cap = cv2.VideoCapture("E:\project vid\lena_jump.avi")问题。 Python将\(反斜杠)字符解释为转义字符,以便您可以在字符串中使用制表符和换行符(即\n\t)。但是,您需要路径的文字\字符。因此,必须使用原始字符串-不解释转义字符的字符串。

将行替换为cap = cv2.VideoCapture(r"E:\project vid\lena_jump.avi")
另外,您也可以使用另一个反斜杠字符来转义反斜杠字符,例如cap = cv2.VideoCapture("E:\\project vid\\lena_jump.avi")

关于python - 错误: (-215:Assertion failed) !_src.empty() in function 'cv::cvtColor' in background subtrator code,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58898735/

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