17

正如标题所述,当我运行 cv2.videowriter 函数时,我得到“模块”对象没有属性 CV_FOURCC。

代码:

# Creates a video file from webcam stream
import cv2

Create test window
cv2.namedWindow("cam_out", cv2.CV_WINDOW_AUTOSIZE)

# Create vid cap object
vid = cv2.VideoCapture(1)


# Create video writer object
vidwrite = cv2.VideoWriter(['testvideo', cv2.CV_FOURCC('M','J','P','G'), 25, 
               (640,480),True])
4

8 回答 8

34

派对有点晚了,但如果有人需要更新版本的 opencv2,那么命令是:

cv2.VideoWriter_fourcc(c1, c2, c3, c4)
于 2014-02-19T01:22:14.417 回答
17

更改cv2.CV_FOURCC('M','J','P','G')cv2.cv.CV_FOURCC('M','J','P','G')

于 2013-04-04T15:06:43.343 回答
11

对于 OpenCV 3,请执行以下操作:

cv2.VideoWriter_fourcc(*'MJPG')

信用@SiffgyF

于 2016-09-23T08:38:45.907 回答
8

使用 OpenCV 3:

# Create video writer object
vidwrite = cv2.VideoWriter('testvideo.avi', cv2.VideoWriter_fourcc(*'XVID'), 25, 
           (640,480),True)

您可以在“opencv_install_dir\sources\doc\py_tutorials\py_gui\py_video_display\py_video_display.markdown”找到示例

ps:我在官方文档中找不到任何带有 'cv2.VideoWriter_fourcc(...)' 的描述。

于 2017-01-27T20:31:59.933 回答
2

根据经验,如果在 OSX 上,这对我来说在写入 mp4 文件时有用:

fourcc = cv2.VideoWriter_fourcc(*'MP4V')

于 2018-03-03T20:53:51.010 回答
1

如果您想写入 Mp4 文件,只需使用此编解码器,它适用于 2020 opencv4.2 及以上

fourcc = cv2.VideoWriter_fourcc(*'X264')
video_writer = cv2.VideoWriter('outeringe.mp4', fourcc, 20, (640, 480))

使用 x264 代替 MP4V

于 2020-03-19T12:54:48.943 回答
0

我在 opencv-python 4.2.0.32 升级到 opencv-python-4.4.0.46 时遇到同样的错误(在 macos 上)解决它,无需更改任何代码

于 2020-12-21T21:07:04.213 回答
-1

我使用这段代码:

fourcc = cv2.CV_FOURCC(*'XVID')
于 2016-12-20T12:12:07.467 回答