文章目录
本文会告诉大家一些图像处理的基础,包括图像的基本表示方法,图像处理的基础操作,图像运算。色彩空间转换会放到图像处理基础(二)里单独讲。
这里选下面这张图片来为下面的操作进行演示。
图像的读取与属性信息
读取
使用cv2.imread(filename[, flags])来读取图片。
注意事项:读取的图片名称不能为中文
参数filename是包括了后缀在内的图片路径加名字
flags为读取标记,可以为原图,也可以为灰度等等
属性信息
imread()读取完事是一堆数组,所以可以直接拿到他们的属性信息。
shape为图像行数,列数,色彩通道数,size是像素点的个数,dtype为图片的数据格式。
示例
import cv2
import numpy as np
import matplotlib.pyplot as plt
result = cv2.imread('./Ying.jpg')#读取
print("shape",result.shape,'\nsize',result.size,'\ndtype',result.dtype)
\n是换行符
shape (715, 464, 3)
size 995280
dtype uint8
plt.imshow(result)
gray = cv2.cvtColor(result,cv2.COLOR_BGR2GRAY)
ret,thresh1 = cv2.threshold(gray,127,255,cv2.THRESH_BINARY)
ret,thresh2 = cv2.threshold(gray,127,255,cv2.THRESH_BINARY_INV)
ret,thresh3 = cv2.threshold(gray,127,255,cv2.THRESH_TRUNC)
ret,thresh4 = cv2.threshold(gray,127,255,cv2.THRESH_TOZERO)
ret,thresh5 = cv2.threshold(gray,127,255,cv2.THRESH_TOZERO_INV)
titles = ['gray','BINARY','BINARY_INV','TRUNC','TOZERO','TOZERO_INV']
images = [gray,thresh1,thresh2,thresh3,thresh4,thresh5]
for i in