python-opencv-視頻的簡單合成——連續圖片合成視頻


OpenCV中使用VideoWriter對象來寫入視頻對象

import cv2
#獲取一張圖片的寬高作為視頻的寬高
image=cv2.imread('./aa/img5.jpg')
cv2.imshow("new window", image)   #顯示圖片
image_info=image.shape
height=image_info[0]
width=image_info[1]
size=(height,width)
print(size)
fps=30
fourcc=cv2.VideoWriter_fourcc(*"mp4v")
video = cv2.VideoWriter('ss.mp4', cv2.VideoWriter_fourcc(*"mp4v"), fps, (width,height)) #創建視頻流對象-格式一

#video = cv2.VideoWriter('ss.mp4', cv2.VideoWriter_fourcc('m', 'p', '4', 'v'), fps, (width,height)) #創建視頻流對象-格式二

"""
參數1 即將保存的文件路徑
參數2 VideoWriter_fourcc為視頻編解碼器
    fourcc意為四字符代碼(Four-Character Codes),顧名思義,該編碼由四個字符組成,下面是VideoWriter_fourcc對象一些常用的參數,注意:字符順序不能弄混
    cv2.VideoWriter_fourcc('I', '4', '2', '0'),該參數是YUV編碼類型,文件名后綴為.avi 
    cv2.VideoWriter_fourcc('P', 'I', 'M', 'I'),該參數是MPEG-1編碼類型,文件名后綴為.avi 
    cv2.VideoWriter_fourcc('X', 'V', 'I', 'D'),該參數是MPEG-4編碼類型,文件名后綴為.avi 
    cv2.VideoWriter_fourcc('T', 'H', 'E', 'O'),該參數是Ogg Vorbis,文件名后綴為.ogv 
    cv2.VideoWriter_fourcc('F', 'L', 'V', '1'),該參數是Flash視頻,文件名后綴為.flv
    cv2.VideoWriter_fourcc('m', 'p', '4', 'v')    文件名后綴為.mp4
參數3 為幀播放速率
參數4 (width,height)為視頻幀大小

"""
for i in range(1,60):
    file_name = './aa/img' + str(i) + '.jpg'
    image=cv2.imread(file_name)
    video.write(image)  # 向視頻文件寫入一幀--只有圖像,沒有聲音
cv2.waitKey()

 

視頻編碼器:指的時能夠對數字視頻進行壓縮和解壓縮的程序或設備。目前常見的視頻編碼器有H.26X系列(目前最流行的是H.264和H.265)和MPEG系列(目前最流行的是MPEG-4第十部分,即H.264)。

 

 

 

 

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM