在使用cv2读取视频文件的时候遇到这样的报错

在使用cv2读取视频文件的时候遇到这样的报错
请问如何修改代码

img

import numpy as np
import cv2 as cv

cap = cv.VideoCapture(r"source.mov")
while cap.isOpened():
    ret, frame = cap.read()
    # 如果正确读取帧,ret为True
    # if not ret:
    #     print("Can't receive frame (stream end?). Exiting ...")
    #     break
    gray = cv.cvtColor(frame, cv.COLOR_BGR2GRAY)
    cv.imshow('frame', gray)
    if cv.waitKey(1) & 0xFF == ord('q'):
        break
print('视频读完!')
cap.release()
cv.destroyAllWindows()

报错:
Traceback (most recent call last):
File "D:/My_Codes/Workgroup/python/FACE/CV2_test/视频入门.py", line 64, in
gray = cv.cvtColor(frame, cv.COLOR_BGR2GRAY)
cv2.error: OpenCV(4.5.5) D:\a\opencv-python\opencv-python\opencv\modules\imgproc\src\color.cpp:182: error: (-215:Assertion failed) !_src.empty() in function 'cv::cvtColor'

错误提示,frame 是空值;
你先不要颜色空间转换,直接显示看看。

望采纳!