opencv对图片的基本操作

图片是一个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()

图像调色


最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容