anaconda https://www.anaconda.com/download/
OpenCV拥有丰富的常用图像处理函数库
主要应用领域有计算机视觉领域:如物体识别、图像分割、人脸识别、动作识别及运动追踪
安装模块
pip install opencv-python
pip install opencv-contrib-python
一、cv2的基本方法和属性
import cv2 as cv
import numpy as np
from matplotlib import pyplot as plt
%matplotlib inline # 不用使用plt.show()就可以直接在页面展示出来
cv.imread(文件名,属性)
读入图像 - - - 属性值有IMREAD_COLOR
(读入彩色)和IMERAD_GRAYSCALE
(读入灰度图像)
文件名中不能有中文,会报错 - - - 将图片以array格式读出来 - - - 0~255,0最暗,255最亮 - - - 彩色是三维数组,灰度是二维数组
cv.imread('youling.png')
cv.imshow(窗口名,图像文件)
显示图像 - - - 彩色图像是BGR格式
,使用matplotlib显示时需要转换为RGB格式
cv.waitKey()
等待时间 - - - 毫秒级,0表示任意键终止
键盘绑定函数,参数=0(或<0的数):一直显示窗口直到在键盘上按下一个键为止,并`返回按键对应的ASCII值``;参数>0:设置显示的时间单位为毫秒,超过这个指定的时间则返回-1
cv.destroyAllWindows(窗口名)
删除建立的窗口
cv.namedWindow(窗口名,属性)
创建一个窗口 - - - 属性值有WINDOW_AUTOSIZE
(根据图像的尺寸自动创建),WINDOW_NORMAL
(窗口大小可调整) - - - eg:cv.namedWindow(‘img’,cv.WINDOW_NORMAL)
img = cv.imread('youling.png',cv.IMREAD_COLOR)
cv.imshow('img',img)
cv.waitKey(0)
cv.destroyAllWindows()
cv.imwrite(filename, imgdata)
保存图像
cv.imwrite('asd.jpg',img)
# True # 将img保存为名为asd.jpg的图片
img.shape
图像的尺寸
彩色图片的返回值是(高, 宽, 3) - - - 灰度图片是(高, 宽)
img.shape
# (864, 1392, 3) # 高 宽 3代表BGR
img.size
图像的大小
img.size
# 3608064 # 图片的高×宽×3 864*1392*3=3608064
可以通过k=cv.waitKey(0)
关闭图片或保存
img = cv.imread('youling.png',cv.IMREAD_COLOR)
cv.imshow('img',img)
k = cv.waitKey(0)
if k == 27: # 如果按的是Esc键,退出
cv.destroyAllWindows()
elif k == ord('s'): # 按s键保存图片
cv.imwrite('img.jpg',img)
cv.destroyAllWindows()
将文字输入到照片中
cv.putText(图片名,文字,坐标,字体,字体大小,字体颜色,字体粗细)
字体的坐标是文字左下角的位置
字体可以选cv.FONT_HERSHEY_COMPLEX,cv.FONT_HERSHEY_COMPLEX_SMALL,cv.FONT_HERSHEY_DUPLEX,cv.FONT_HERSHEY_PLAIN等等
cv.putText(img,'hello world',(200,500),cv.FONT_HERSHEY_SIMPLEX