opencv视频图像识别方法 opencv保存视频格式


opencv视频图像识别方法 opencv保存视频格式

文章插图
OpenCV 是计算机视觉中经典的专用库,其支持多语言、跨平台,功能强大 。OpenCV-Python为OpenCV提供了Python接口,使得使用者在Python中能够调用C/C++,在保证易读性和运行效率的前提下,实现所需的功能 。
一、安装安装方法有多种,老猿机器上无C++环境,因此直接使用pip安装,OpenCV-Python模块名为opencv-python(在windows下大小写不敏感,其他操作系统没验证),具体安装命令如下:
pip install -i https://pypi.tuna.tsinghua.edu.cn/simple opencv-python
二、加载OpenCV导入OpenCV 模块指令很简单:
import cv2 as cv
大多数OpenCV 的函数都在cv2模块内,cv2并不是版本2.X的意思,而是因为这个版本是在原cv版本的基础上采用了面向对象编程的方式重新实现,提供了更好的API接口 。
三、读取图像文件3.1、语法:imread(filename,mode)3.2、参数说明filename:图像文件名,不同操作系统支撑的文件类型不一样,但都支持bmp图像文件,另外可能还包括jpeg、png、tiff等格式文件mode:文件读入模式,常用有三种取值cv.IMREAD_COLOR: 对应值为1,加载彩色图像 。任何图像的透明度都会被忽视 。它是默认标志 。cv.IMREAD_GRAYSCALE:对应值为0,以灰度模式加载图cv.IMREAD_UNCHANGED:对应值为-1,加载图像,包括alpha通道;注意:除了这三个常用取值,还可以有多个取值,相关取值及含义如下:
3.3 返回值说明imread返回一个BGR格式的图像对象,其类型为一个numpy数组 。
3.4、案例img = cv2.imread(r’F:screenpicredflower.jpg’)
注意:图片文件名不能是中文名,否则识别会报错或不能读入;imread会去除图像的alpha通道信息四、显示图像4.1、调用语法:imshow(title,img)4.2、参数说明:title:图像显示窗窗口标题和名字img:opencv图像对象imread读入的函数使用imshow即可显示,显示可以给显示窗设定标题,这个标题也是显示窗口的名字,标题不同的imshow会显示不同窗口 。标题为一个英文字符串,相同标题的窗口就是同一个窗口 。对于窗口,OpenCV提供鼠标及键盘事件处理机制 。
imshow的窗口可以通过destroyWindow和destroyAllWindows进行关闭,前者要带窗口的标题,后者是关闭所有由当前程序创建的窗口 。
4.3、案例img = cv2.imread(r’F:screenpicredflower.jpg’)
cv2.imshow(‘img’,img)
五、VideoCapture读取摄像头、图像文件、或视频流VideoCapture既支持从视频文件(.avi , .mpg格式)读取,也支持直接从摄像机(比如电脑自带摄像头)中读取 。要想获取视频需要先创建一个VideoCapture对象,VideoCapture对象的创建方式有以下三种:
调用语法:VideoCapture(int deviceIndex,int apiPreference = CAP_ANY ):打开摄像头捕获视频 。deviceIndex为摄像头序列号,打开缺省摄像头传0,apiPreference 为VideoCapture API后端标识符,老猿没有仔细研究,用缺省值即可
VideoCapture(filename,int apiPreference = CAP_ANY):打开filename指定的文件
更多VideoCapture的内容请参考《opencv学习—VideoCapture 类基础知识》 。
下面的代码打开缺省摄像头捕获视频,并将捕获内容显示为窗口视频,并写入视频文件中保存,按q终止退出:
import cv2
def captureVideoFromCamera():
cap = cv2.VideoCapture(0,cv2.CAP_DSHOW)
WIDTH = 1920
HEIGHT = 1920
FILENAME = r’f:videomyvideo.avi’
FPS = 24
cap.set(cv2.CAP_PROP_FPS, 24)
# 建议使用XVID编码,图像质量和文件大小比较都兼顾的方案
fourcc = cv2.VideoWriter_fourcc(*’XVID’)
out = cv2.VideoWriter(FILENAME, fourcc=fourcc, fps=FPS,frameSize=(WIDTH,HEIGHT))


以上关于本文的内容,仅作参考!温馨提示:如遇健康、疾病相关的问题,请您及时就医或请专业人士给予相关指导!

「四川龙网」www.sichuanlong.com小编还为您精选了以下内容,希望对您有所帮助: