图片是一个numpy的ndarray数组,并且是三维的,对图片的操作就是对数组的操作
图片的基本构成:
>>> img
array([[[88, 85, 24],
[88, 85, 24],
[88, 85, 24],
...,
[83, 81, 23],
[83, 81, 23],
[83, 81, 23]],
[[88, 85, 24],
[88, 85, 24],
[88, 85, 24],
...,
[83, 81, 23],
[83, 81, 23],
[83, 81, 23]],
[[88, 85, 24],
[88, 85, 24],
[88, 85, 24],
...,
[83, 81, 23],
[83, 81, 23],
[83, 81, 23]],
...,
[[98, 92, 27],
[98, 92, 27],
[98, 92, 27],
...,
[87, 83, 24],
[87, 83, 24],
[87, 83, 24]],
[[98, 92, 27],
[98, 92, 27],
[98, 92, 27],
...,
[87, 83, 24],
[87, 83, 24],
[87, 83, 24]],
[[98, 92, 27],
[98, 92, 27],
[98, 92, 27],
...,
[87, 83, 24],
[87, 83, 24],
[87, 83, 24]]], dtype=uint8)
>>> import cv2
>>> img_path = 'Tom.jpg'
>>> img = cv2.imread(img_path,0)
imread()函数
第一个参数指定图片的路径
第二个参数指定图片读取的方式,有1、0、-1三种取值
1:cv2.IMREAD_COLOR,默认值,读入彩色图片,忽略透明度
0:cv2.IMREAD_GRAYSCALE,以灰度模式读取图片
-1:cv2.IMREAD_UNCHANGED,读入彩色图片,并保持透明度信息
#图片是一个numpy的ndarray数组,并且是三维的
>>> type(img)
<class 'numpy.ndarray'>
>>> img.ndim
3
#图片的像素,也可以理解为图片的大小尺寸(高300,宽382),300行382列3原色,行和列索引从0开始
>>> img.shape
(300, 382, 3)
#第一行第一列的像素点的三原色
>>> img[0,0]
array([88, 85, 24], dtype=uint8)
图片的基本信息
#导入库
>>> import cv2
#设置图片的路径
>>> img_path = 'Tom.jpg'
#传入图片的路径
>>> img = cv2.imread(filename = img_path)
#显示图片,winname为显示窗口的名称,mat为图片(这里窗口是灰色的,没有显示图片)
>>> cv2.imshow(winname="Tom",mat=img)
#显示等待(这里显示图片)
>>> cv2.waitKey()
#按任意键可关闭图片
>>> cv2.destroyAllWindows()
图像调色