opencv日記_ Python&OpenCV - 讀寫(read&write)視頻(video)


opencv基於win7的vs2013環境配置了好幾天,我放棄了,一個是筆記本64的固態系統盤帶起來太吃力了,第二個vs2013c++一直不能正常運行opencv代碼,應該是win7系統的環境配置問題,曲線救國,先用自己熟悉的python+pycharm入門吧。網上的資料大多是c++的,還大都是opencv2的。暈''

 

OpenCV讀取視頻, 獲得視頻的格式, 讀取視頻的每一幀, 播放控制; 使用VideoCapture類和read()函數;

獲取視頻屬性(碼率\尺寸)使用VideoCapture的get()方法;

"avi"是所有系統都會支持的視頻格式;

OpenCV寫視頻, 需要指定視頻的格式, 可以從原視頻中獲取; 使用VideoWriter類和write()函數

VideoWriter類寫入視頻時, 需要提供視頻名, 格式, 碼率(fps), 幀的尺寸等參數;

視頻格式包括: 

I420(適合處理大文件) -> .avi;

PIMI -> .avi;

MJPG -> .avi & .mp4

THEO -> .ogv;

FLV1(flash video, 流媒體視頻) -> .flv

 

注意: 使用OpenCV, cv2的方法, 和cv2.cv.XXX的參數;

代碼如下:

[python] view plain copy print?
# -*- coding: utf-8 -*-  
  
#=================  
#File: PyOpenCV.py  
#Author: Wendy  
#Date: 2013-12-03  
#=================  
  
#eclipse, python2.7, opencv 2.4.6  
  
import cv2  
  
#獲得視頻的格式  
videoCapture = cv2.VideoCapture('oto.avi')  
  
#獲得碼率及尺寸  
fps = videoCapture.get(cv2.cv.CV_CAP_PROP_FPS)  
size = (int(videoCapture.get(cv2.cv.CV_CAP_PROP_FRAME_WIDTH)),   
        int(videoCapture.get(cv2.cv.CV_CAP_PROP_FRAME_HEIGHT)))  
  
#指定寫視頻的格式, I420-avi, MJPG-mp4  
videoWriter = cv2.VideoWriter('oto_other.mp4', cv2.cv.CV_FOURCC('M', 'J', 'P', 'G'), fps, size)  
  
#讀幀  
success, frame = videoCapture.read()  
  
while success :  
    cv2.imshow("Oto Video", frame) #顯示  
    cv2.waitKey(1000/int(fps)) #延遲  
    videoWriter.write(frame) #寫視頻幀  
    success, frame = videoCapture.read() #獲取下一幀  

 本文地址: http://blog.csdn.net/caroline_wendy/article/details/17084397


免責聲明!

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



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