OpenCV简介
OpenCV是一个开源的计算机视觉库,1999年由英特尔的Gary Bradski启动。
开发OpenCV的目的:为计算机视觉提供通用接口
英特尔是硬件厂商,那为什么要提供开源软件OpenCV呢?
这是因为用户要使用OpenCV视觉库,对处理器的要求就提升了,用户就需要购买更快的处理器,这就增加了英特尔产品的销量和收入。
OpenCV的库是由C和C++语言编写的,涵盖了计算机视觉领域内的500多个函数。
1 使用环境
建议pycharm+Python3.6(建议直接安装anaconda)+OpenCV4.2(4版本均可)
2 图像处理的基本操作
2.1 图像读取
import cv2 as cv
file_path = "dog.jpg"
img = cv.imread(filename=file_path, flags=-1)
print(img)
img: 读取到的图像,如果未读取到则返回“None”
flags: 读取标记,控制读取文件的类型,有13种选择,常用的选择如下:
-1:保持原格式不变,也可以用cv.IMREAD_UNCHANGED代替-1
0:单通道灰度图像,也可以用cv.IMREAD_GRAYSCALE代替0
1:三通道BGR图像,也可以用cv.IMREAD_COLOR代替1,该值是默认值
2.1 显示图像
在这里插入代码片
2.2 保存图像
3 常见OpenCV贡献库
OpenCV主库:我们通常安装的OpenCV库就是主库
OpenCV贡献库:opencv_contrib
OpenCV贡献库中含有很多的扩展模块,常用的如下:
bioinspired:生物视觉模块
datasets:数据集读取模块
dnn:深度神经网络模块
face:人脸识别模块
matlab:MATLAB接口模块
stereo:双目立体匹配模块
text:视觉文本匹配模块
tracking:基于视觉的目标跟踪模块
ximgpro:图像处理扩展模块
xobjdetect:增强2D目标检测模块
xphoto:计算摄影扩展模块