m0_63002604 2022-05-16 20:18 采纳率: 75%
浏览 3679
已结题

opencv无法读取视频cpp:182: error: (-215:Assertion failed) !_src.empty()

问题遇到的现象和发生背景

读取视频时报错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'

问题相关代码,请勿粘贴截图

代码如下:
import cv2
import cvzone

cap = cv2.VideoCapture('Videos/vid(1).mp4')

while True:
success, img = cap.read()
cv2.imshow("Image", img)
cv2.waitKey(1)

运行结果及报错内容

报错: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'

我的解答思路和尝试过的方法

搜了一下说是路径有中文的问题,但是看了一下并没有中文啊?
我是直接把文件夹放在项目里面的,看教学视频里能正常读取但是我这里就报错了

img

我想要达到的结果

请问如何才能正确读取

  • 写回答

2条回答 默认 最新

  • 勿子杳 2022-05-16 20:30
    关注

    报错是因为视频里的所有帧都遍历显示完了,导致 img=None。修改如下:

    
    import cv2
    # import cvzone
    
    cap = cv2.VideoCapture('Videos/vid(1).mp4')
    
    while True:
        success, img = cap.read()
        if img is None:
            break
        cv2.imshow("Image", img)
        cv2.waitKey(1)
    
    cv2.waitKey(0)
    
    评论

报告相同问题?

问题事件

  • 已结题 (查看结题原因) 5月19日
  • 赞助了问题酬金5元 5月18日
  • 创建了问题 5月16日

悬赏问题

  • ¥15 树莓派与pix飞控通信
  • ¥15 自动转发微信群信息到另外一个微信群
  • ¥15 outlook无法配置成功
  • ¥30 这是哪个作者做的宝宝起名网站
  • ¥60 版本过低apk如何修改可以兼容新的安卓系统
  • ¥25 由IPR导致的DRIVER_POWER_STATE_FAILURE蓝屏
  • ¥50 有数据,怎么建立模型求影响全要素生产率的因素
  • ¥50 有数据,怎么用matlab求全要素生产率
  • ¥15 TI的insta-spin例程
  • ¥15 完成下列问题完成下列问题