opencv_python学习笔记三

Opencv中的GUI特性

使用matplotlib绘制图像

Matplotlibpython中的一个绘制库

使用pycharm编写测试程序

# -*- coding: utf-8 -*-
# @Time : 2016/11/10 14:45
# @Author : Retacn
# @Site :
# @File : matplotib.py
# @Software: PyCharm

import numpy as np
import cv2
from matplotlib import pyplot as plt

#读取图像
img=cv2.imread('test.jpg',0)
plt.imshow(img,cmap='gray',interpolation='bicubic')
plt.xticks([]),plt.yticks([])
plt.show()

视频

读取视频文件,显示视频,保存视频文件

从摄像头获取并显示视频

所用到的函数

Cv2.VideoCapture()

Cv2.VdeoWrite()

用摄像头捕获视频

# -*- coding: utf-8 -*-
# @Time : 2016/11/10 14:58
# @Author : Retacn
# @Site :
# @File : videoCapture.py
# @Software: PyCharm

# 从摄像头捕捉视频

import numpy as np
import cv2

#使用默认的内置设像头
cap = cv2.VideoCapture(0)

while (True):
#检查是否初始化成功,不成功就调用cap.open()
#cap.isOpened()

# 一帧一帧的捕获图像
#ret返回布尔值,检查帧是否读取正确
ret, frame = cap.read()

#读取视频的一些信息参数,
for i in range(0, 18 ,1):
print(cap.get(i))

# 修改一帧数据
gray = cv2.cvtColor(frame, cv2.COLOR_BGR2GRAY)


# 显示返回的一帧图像
cv2.imshow('frame', gray)
#按下q键退出程序
if cv2.waitKey(1) & 0xFF == ord('q'):
break

# 所有操作完成,后释放资源
cap.release()
cv2.destroyAllWindows()

可以看到控制台输出的视频信息

-1.0

-1.0

-1.0

640.0

480.0

0.0

844715353.0

-1.0

-1.0

-1.0

0.0

50.0

50.0

0.0

64.0

-6.0

-1.0

17.0

从文件中播放视频

直接修改上面的程序

将cap = cv2.VideoCapture(0)改为文件名

#播放视频文件
cap = cv2.VideoCapture('output.avi')

将摄像头捕获文件保存为视频文件

#!/usr/bin/env python
# -*- coding: utf-8 -*-
# @Time : 2016/11/10 15:57
# @Author : Retacn
# @Site :
# @File : fileVideoCapture.py
# @Software: PyCharm

#保存视频文件
import numpy as np
import cv2

#捕获视频信息
cap=cv2.VideoCapture(0)
#设置视频的编码格式
#DIVX XVID MJPG X264 WMV1 WMV2
#格式:
#cv2.VideoWriter_fourcc('M','J','P','G')
#或是cv2.VideoWriter_fourcc(*'MJPG')
fourcc=cv2.VideoWriter_fourcc(*'XVID')
#将捕获的信息保存为视频文件
#沿水平方向旋转每一帧
out=cv2.VideoWriter('output.avi',fourcc,20.0,(640,480))

while(cap.isOpened()):
ret,frame=cap.read()
if ret==True:
frame=cv2.flip(frame,0)

out.write(frame)

#显示一帧
cv2.imshow('frame',frame)

#按下q键退出
if cv2.waitKey(1)& 0xFF ==ord('q'):
break
else
:
break

#释放资源
cap.release()
out.release()
cv2.destroyAllWindows()

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值