openCV for python的使用
一、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 """
运行结果:(可以看出有保存按钮和窗口大小调整按钮)
(二)