Python 视频捕获和pyqt
我使用这个库来捕获网络摄像头。但我不明白它是如何将视频流发送到Python 视频捕获和pyqt,python,pyqt,webcam,qpixmap,Python,Pyqt,Webcam,Qpixmap,我使用这个库来捕获网络摄像头。但我不明白它是如何将视频流发送到qpixmap的。如果您查看该库的文档,您会发现它非常简短 有两种方法,我可以告诉你,你可以把你的图像到Qt 最佳方式-直接进入QImage getImage()声明它将返回一个PIL图像。如果您使用的是最新版本的PIL,那么它有一个名为ImageQt的模块,可以获取PIL图像对象并返回QImage。从这里可以将其转换为QPixmap: from PyQt4 import QtCore, QtGui from VideoCapture
qpixmap
的。如果您查看该库的文档,您会发现它非常简短
有两种方法,我可以告诉你,你可以把你的图像到Qt
最佳方式-直接进入QImage
getImage()
声明它将返回一个PIL图像。如果您使用的是最新版本的PIL,那么它有一个名为ImageQt的模块,可以获取PIL图像对象并返回QImage。从这里可以将其转换为QPixmap:
from PyQt4 import QtCore, QtGui
from VideoCapture import Device
from PIL import Image, ImageQt
app = QtGui.QApplication([])
cam = Device()
# this is a PIL image
pilImage = cam.getImage()
# this is a QImage
qImage = ImageQt.ImageQt(pilImage)
# this is a QPixmap
qPixmap = QtGui.QPixmap.fromImage(q)
另一种方式-先写入磁盘
如果您遵循本模块网站上提供的示例,它们将向您展示如何使用saveSnapshot()
将映像保存到磁盘。与第一种方法相比,这种方法不太可取,因为您必须进行磁盘i/o,但我仍然要提到它。然后,您可以将其作为QPixmap读入Qt应用程序:
cam = Device()
cam.saveSnapshot('image.jpg')
qPixmap = QtGui.QPixmap('image.jpg')
做第一种方法。它更快更高效