python - cv2.VideoWriter : Asks for a tuple as Size argument, 然后拒绝它

标签 python video-processing opencv

我正在使用 OpenCV 4.0 和 Python 3.7 创建延时视频。

在构造 VideoWriter 对象时,文档表示 Size 参数应该是一个元组。

当我给它一个元组时,它拒绝它。当我尝试用其他东西替换它时,它不会接受它,因为它说参数不是元组。

当 Size 不是元组时:

out = cv2.VideoWriter('project.avi', 1482049860, 30, height, width)
SystemError: new style getargs format but argument is not a tuple

当我将 Size 更改为元组时:

out = cv2.VideoWriter('project.avi', 1482049860, 30, (height, width))
TypeError: must be real number, not tuple

我只想创建一个简单的 cv2.VideoWriter 对象。

最佳答案

我试图使用以下方法从上传的视频中获取高度和宽度:

width = cap.get(cv2.CAP_PROP_FRAME_WIDTH)
height = cap.get(cv2.CAP_PROP_FRAME_HEIGHT)

我把它改为:

width = int(cap.get(cv2.CAP_PROP_FRAME_WIDTH))
height = int(cap.get(cv2.CAP_PROP_FRAME_HEIGHT))

现在我没有收到该错误。它整体上还不能工作,但是那个特定的错误已经不存在了。

关于python - cv2.VideoWriter : Asks for a tuple as Size argument, 然后拒绝它,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56370802/

相关文章:

MATLAB:VideoReader 错误检查

python - AWS Lambda + Python - 没有名为 pkg_resources 的模块

python - Swifter:向量化函数和非向量化函数有什么区别?

c - 在 linux 中使用 mediainfo 获取所有可能的视频文件数据(使用 C)

video - 在 ffmpeg 中去隔行

python - OpenCV-Python createMergeDebevec 返回一个 Inf 数组

python - 如何在python服务器中保存视频的<httpfile>

c++ - OpenCV并从OutputArrays或(Mat)读取数据

python - GAE - 使用 urlfetch 将图像从 BlobStore 发布到外部服务器

python - 在文件中写入了一些变量名,需要使用 python 将其替换为新生成的随机值?