正如标题所述,当我运行cv2.videowriter函数时,我得到'module'对象没有属性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])
答案 0 :(得分:28)
派对迟到了,但如果有人需要更新版本的opencv2,那么命令就是:
cv2.VideoWriter_fourcc(c1, c2, c3, c4)
答案 1 :(得分:16)
将cv2.CV_FOURCC('M','J','P','G')
更改为cv2.cv.CV_FOURCC('M','J','P','G')
。
答案 2 :(得分:8)
对于OpenCV 3,请执行以下操作:
cv2.VideoWriter_fourcc(*'MJPG')
信用@SiffgyF
答案 3 :(得分:6)
使用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(...)'的任何描述。
答案 4 :(得分:0)
根据经验,如果在OSX上,这对我来说在写入mp4文件时有用:
fourcc = cv2.VideoWriter_fourcc(*'MP4V')
答案 5 :(得分:0)
如果要写入Mp4文件,只需使用此编解码器即可,适用于2020 opencv4.2及更高版本
if (typeof date === 'object') {
timeZone = Session.getScriptTimeZone();//Enter your timezone here
date = Utilities.formatDate(date, timeZone, "yyyy-MM-dd");//Formats the date to a string
}
使用x264代替MP4V
答案 6 :(得分:0)
我在 opencv-python 4.2.0.32 中有同样的错误(在 macos 上) 升级到opencv-python-4.4.0.46即可解决,无需修改代码
答案 7 :(得分:-1)
我使用此代码:
fourcc = cv2.CV_FOURCC(*'XVID')