opencv日记_ Python&OpenCV - 读写(read&write)视频(video)

opencv基于win7的vs2013环境配置了好几天,我放弃了,一个是笔记本64的固态系统盘带起来太吃力了,第二个vs2013c++一直不能正常运行opencv代码,应该是win7系统的环境配置问题,曲线救国,先用本身熟悉的python+pycharm入门吧。网上的资料大可能是c++的,还大都是opencv2的。晕''python

 

OpenCV读取视频, 得到视频的格式, 读取视频的每一帧, 播放控制; 使用VideoCapture类和read()函数;c++

获取视频属性(码率\尺寸)使用VideoCapture的get()方法;eclipse

"avi"是全部系统都会支持的视频格式;python2.7

OpenCV写视频, 须要指定视频的格式, 能够从原视频中获取; 使用VideoWriter类和write()函数ide

VideoWriter类写入视频时, 须要提供视频名, 格式, 码率(fps), 帧的尺寸等参数;函数

视频格式包括: spa

I420(适合处理大文件) -> .avi;.net

PIMI -> .avi;code

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

相关文章
相关标签/搜索