准备这一两个月看看以前的书,另外学习下视频方面的东西(CV方面)。之前学过几天QT/PyQt,于是用PyQt结合OpenCV,做了一个小程序。具有播放并保存摄像头捕获组成的视频,以及播放本地视频文件两个小功能。界面很简单,没图没真相 。代码就100多行,很容易看懂。最后感叹下OpenCV和python的强大,噢,还有QT/PyQt。。#! /usr/bin/env python #coding=utf-8 from PyQt4.QtCore import * from PyQt4.QtGui import * import sys import opencv from PIL import Image #this is important for capturing/displaying images from opencv import highgui from opencv import cv import time MPEG1VIDEO = 0x314D4950 camera = highgui.cvCreateCameraCapture(0)#找摄像头,一般填0-99都可以 class MainWindow(QWidget): def __init__(self, parent = None): QWidget.__init__(self) self.resize(550, 550) self.setWindowTitle("vedio control") self.status = 0 #0 is init status;1 is play video; 2 is capture video self.image = QImage()
def PlayVideo(self): im = highgui.cvQueryFrame(self.playcapture) im = opencv.adaptors.Ipl2PIL(im) im = im.convert("RGB").tostring("jpeg", "RGB") self.image.loadFromData(QByteArray(im)) self.piclabel.setPixmap(QPixmap.fromImage(self.image))