[英]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.