python read()读取图片_使用read()从VideoCapture对象获取图像

我正在逐帧读取视频,使用:

vc = cv2.VideoCapture('test.avi')

稍后,我将使用以下方法检查是否已读取frame:if vc.isOpened():

rval,frame = vc.read()

else:

rval = False

现在的问题是,如果我尝试使用以下代码将这个frame转换为numpy数组:PILImage = Image.fromstring("L",cv.GetSize(frame),frame.tostring())

NumPyArray = np.array(PILImage)

我有个错误说:

CvArr argument 'arr' must be IplImage, CvMat or CvMatND. Use fromarray() to convert numpy arrays to CvMat or cvMatND

从VideoCapture::read的文档中,我发现它返回两个东西[retVal,Image]。如何仅获取Image部分以及如何将其转换为Numpy数组?

进一步信息:

基本上,这样做的目的是,我试图编写一个程序,它允许我通过按空格键遍历视频的每一帧,并从任何帧中选择一个特定区域,然后将其保存为jpg。代码如下:from ITMS import ITMS

import cv2

from cv2 import cv

import numpy as np

import matplotlib.pyplot as plt

i

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值