一、openCV简介
OpenCV是一个开源的跨平台计算机视觉库。它轻量级而且高效——由一系列 C 函数和少量C++类构成,同时提供了Python、Ruby、MATLAB等语言的接口,实现了图像处理和计算机视觉方面的很多通用算法。
简言之,通过openCV可实现计算机图像、视频的编辑。广泛应用于图像识别、运动跟踪、机器视觉等领域。
二、Ubuntu16.04下的安装
直接使用pip安装
pip3 install opencv-python
或者使用国内镜像安装
pip3 install opencv-python -i https://pypi.douban.com/simple
三、测试脚本
# File: testopencv.py
# Author: ranxf
# Created on 2019.08.22 02:00 (first release)
# Copyright (C) 2019 XinZhouRuiShi. All rights reserved.
# please use python3.x
# -*- coding: UTF-8 -*-
import cv2 # 导入模块,opencv的Python模块叫cv2
img = cv2.imread('Aaron_Peirsol_0001.jpg') # 读取当前目录下的图像Aaron_Peirsol_0001.jpg
cv2.namedWindow("Face image") # 创建窗口并显示图像类型
cv2.imshow("Face image", img)
cv2.waitKey(0) # 等待事件触发,参数0表示永久等待
cv2.destroyAllWindows() # 释放窗口
若没有提示no module错误,则表示安装成功
四、opencv for Python3 使用笔记
(一)图像简单的读取,显示,存储
# File: opencvDemo1.py
# Author: ranxf
# Created on 2019.02.22 02:00 (first release)
# Copyright (C) 2019 XinZhouRuiShi. All rights reserved.
# please use python3.x
# -*- coding: UTF-8 -*-
"""
openCV学习使用,图片简单的读取,显示,存储
"""
import cv2
# from matplotlib import pyplot as plt
import matplotlib.pyplot as plt
# 图片的读取
face1 = cv2.imread('Aaron_Peirsol_0001.jpg', 0) # 读取灰度图像
# 图像的显示方法一
# cv2.imshow("Face image", face1)
# cv2.waitKey()
# cv2.destroyAllWindows()
# 图像的显示方法二
plt.imshow(face1, 'gray') # 注意该行参数与cv2.imshow()中参数的不同之处,后面参数必须对顶显示的是什么图像
plt.xlabel([]),plt.ylabel([]) # 隐藏坐标线
plt.show()
"""
代码解析:
1、图像的读取:
cv2.imread(‘图像名称’,’可选参数’)
可选参数决定读入图像的模式:
0:读入的为灰度图像(即使图像为彩色的)
1:读入的图像为彩色的(默认);
注意的是:即使图像在工作空间不存在,这个函数也不会报错,只不过读入的结果为none。
2、图像的显示方法一
opencv自带函数显示,一般显示一个图像;
cv2.imshow("Face image", face1)第一个参数是名字,第二个时要显示的图;
要图像停留,结合下面两句一起使用
cv2.waitKey(0)
cv2.destroyAllWindows()
3、图像显示方法二
opencv自带函数不能调整图像大小和保存图像,要想保存和调整大小,可以使用第三方库matplotlib库包中pyplot子包显示;
Matplotlib 是 Python 的绘图库。
首先要导入pyplot:
from matplotlib import pyplot as plt
也可以这样导入:import matplotlib.pyplot as plt (我常用这种)
4、在Linux中安装matplotlib
apt install python3-matplotlib
"""
运行结果:(可以看出有保存按钮和窗口大小调整按钮)
(二)