gpt4 book ai didi

python - 无法使用 OpenCV 创建基本视频文件

转载 作者:太空宇宙 更新时间:2023-11-03 21:06:32 27 4
gpt4 key购买 nike

我正在尝试使用 OpenCV(在 Python 中)创建一个基本的视频文件。我有以下代码,它运行时没有任何错误,但我没有看到创建的输出文件。我想知道是否有人知道出了什么问题。

from cv import *
im1 = LoadImage("/home/spoll/laptop1.jpg")
im2 = LoadImage("/home/spoll/laptop2.jpg")

writer = CreateVideoWriter("/home/spoll/out", CV_FOURCC('F', 'L', 'V', '1'), 2, (im1.width, im1.height))
if writer is None:
print "Error in creating video writer"
else:
print WriteFrame(writer, im1)
print WriteFrame(writer, im2)

谢谢!

最佳答案

为什么不检查错误?如果 CreateVideoWriter() 失败,您永远不会知道。

我认为 CreateVideoWriter 正在返回 NULL。添加适当的代码以检查返回值并验证这是否属实。

如果是,问题很可能是 CV_FOURCC() 没有找到编解码器。

然后,检查其他编解码器的答案:Creating AVI files in OpenCV

我还建议您将 OpenCV 更新到最新版本(我认为是 v2.2)。

编辑:

您还缺少 CreateVideoWriter 中的最后一个参数:

#!/usr/bin/env python
import sys

from opencv.cv import *
from opencv.highgui import *

im1 = cvLoadImage("img1.jpg")
if not im1:
print "Could not load im1"

im2 = cvLoadImage("img2.jpg")
if not im2:
print "Could not load im2"

fps = 4.0
frame_size = cvGetSize(im1)
#writer = cvCreateVideoWriter("out.avi", CV_FOURCC('M', 'J', 'P', 'G'), fps, frame_size, True)
writer = cvCreateVideoWriter("out.avi", CV_FOURCC('F', 'L', 'V', '1'), fps, frame_size, True)
if not writer:
print "Error in creating video writer"
sys.exit(1)
else:
print cvWriteFrame(writer, im1)
print cvWriteFrame(writer, im2)

cvReleaseVideoWriter(writer)

我认为 OpenCV/Linux/Python 在 cvCreateVideoWriter() 方面存在问题。我会尝试与开发人员交谈,并在收到回复后在此处更新。

关于python - 无法使用 OpenCV 创建基本视频文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5781863/

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