【问题标题】:Output video with same settings as input video python OpenCV与输入视频 python OpenCV 具有相同设置的输出视频
【发布时间】:2023-01-02 16:40:37
【问题描述】:
我读了一段视频来检测物体并生成一段视频,该视频稍后将用作原始视频的单调 alpha 通道。
我得到当前的输入视频:
cap = cv2.VideoCapture('file.mp4')
从这里您应该创建一个 VideoWriter 来输出编辑后的帧,其效果如下:
out = cv2.VideoWriter('output.mp4',fourcc, 20.0, (640,480))
但是有没有办法直接告诉作者只复制初始视频格式和配置?
【问题讨论】:
标签:
python
opencv
video
video-processing
【解决方案1】:
我没有对此进行测试,但从here 看来,您可以在视频捕获上使用get 方法从视频捕获中获取各种属性。使用它,您可以从初始流中获取属性并将它们设置在您的编写器中。
从文档中,您需要的标识符是:
CV_CAP_PROP_FPS => 帧速率。
CV_CAP_PROP_FRAME_WIDTH => 宽度。
CV_CAP_PROP_FRAME_HEIGHT => 身高,
CV_CAP_PROP_FOURCC => 编解码器代码
据我所知,您可以将它用作 cap.get(CV_CAP_PROP_FRAME_WIDTH) 并为每个属性执行此操作。
您可以使用以下方法将字符 fourcc 转换为 int
cv.VideoWriter.fourcc(c1, c2, c3, c4 )