簡體   English   中英

Opencv 保存空視頻 Python

[英]Opencv saving empty video Python

我在從相機錄制視頻時遇到問題。 我正在使用 python 和 opencv 來這樣做。 我有 QImage 格式的圖像,我將它們轉換為 numpy 數組,以便在攝像頭視頻捕獲時顯示到 stream(使用 opencv 的 VideoCapture),一切正常。 當我嘗試錄制視頻並將其保存在文件夾中時(使用 opencv 的 VideoWriter_fourcc),我沒有收到任何錯誤,但我得到了一個空視頻。 我做了很多搜索來找到問題,但我找不到。 這是我用來錄制視頻的代碼:

import cv2

fourcc = cv2.VideoWriter_fourcc('M','J','P','G')  
#img is a numpy array  
videoWriter = cv2.VideoWriter('video.avi', fourcc, 20,  (img.shape[0],img.shape[1]))
while True:
    videoWriter.write(img)
videoWriter.release()

我嘗試更改幀速率、幀大小、視頻的擴展名和編解碼器的代碼,但沒有任何效果。 我好絕望。 我感謝我能得到的所有幫助和建議。 謝謝

問題是您在將寬度和高度傳遞給 VideoWriter 時混淆了它們。

VideoWriter (width, height)作為frameSize參數。

請注意width = img.shape[1]height = img.shape[0]

給 VideoWriter 一個 1920x1080 的幀來寫入,同時在構造函數中承諾 1080x1920 的幀,將會失敗,但不會提示。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM