- 时间:2020/2/29 0.04
- 对python环境下 OpenCV2 库的基础功能进行测试
- 功能包括:打开图片,显示,保存,键盘操作,摄像头获取显示,在图片上进行一系列绘图操作
- 测试代码:
"""
OpenCV2基础测试
"""
import cv2
import numpy as np
from matplotlib import pyplot as plt
#显示一张图片
"""
#读取图片方式 彩色&&灰度
cv2.IMREAD_COLOR 1
cv2.IMREAD_GRAYSCALE 0
"""
img = cv2.imread('23.png',cv2.IMREAD_GRAYSCALE)#打开图片
#用opencv2显示
cv2.imshow('image',img)
#用matplotlib显示
plt.imshow(img,cmap= 'gray',interpolation= 'bicubic')
#隐藏坐标轴刻度
plt.xticks([])
plt.yticks([])
plt.show()
key = cv2.waitKey(0)
if key == 27:
cv2.destroyWindow('image') #关闭固定名称的窗口
elif key == ord('s'):
cv2.imwrite('23_huidu.png',img)#保存图片
cv2.destroyAllWindows() #关闭所有窗口
#绘制功能
img = np.zeros((512,512,3),np.uint8)#新建画布
cv2.line(img,(0,0),(511,511),(255,0,0),1)#划线
cv2.circle(img,(50,50),30,(0,255,0),2)#画圆
cv2.rectangle(img,(100,100),(150,150),(0,0,255),3)#画框框
cv2.ellipse(img,(256,256),(60,30),0,0,360,255,4)#画椭圆
cv2.ellipse(img,(256,256),(30,60),0,0,360,255,4)
font = cv2.FONT_HERSHEY_COMPLEX
cv2.putText(img,'liuzewen',(10,400),font,2,(255,255,255),2)#在图片上显示字符
font = cv2.FONT_HERSHEY_PLAIN
cv2.putText(img,'liuzewen',(300,100),font,4,(255,255,255),2)#
cv2.imshow("img",img)
key = cv2.waitKey(0)
cv2.destroyAllWindows()
#读取笔记本摄像头图像,参数为摄像头地址
cap = cv2.VideoCapture(0)
while(cap.isOpened()):
ret,frame = cap.read()
gray = cv2.cvtColor(frame,cv2.COLOR_BGR2GRAY)
cv2.imshow('frame',gray)
if cv2.waitKey() == ord('q'):
break
cap.release()
cv2.destroyAllWindows()