首先需要import cv2
读入图像
使用 cv2.imread() 函数读入图像
第一个参数为图像路径,若不在当前工作路径需要提供完整路径
如果路径是错的,opencv不会提醒,但使用print(img)得到的是None
第二个参数告诉函数如何读取这幅图片
· cv2.IMREAD_COLOR:读入彩色图片,这是默认参数
· cv2.IMREAD_GRAYSCALE:以灰度模式读入图像,可直接写0
· cv2.IMREAD_UNCHANGED: 读入图像,并包括图像的alpha通道
import cv2
img=cv2.imread('image.jpg')
显示图像
使用cv2.imshow()函数显示图像
第一个参数是窗口的名字,第二个参数是要展示的图像名
cv2.imshow('图片',img)
或者使用cv2.namedWindow()函数先创建一个窗体,然后在窗体中展示图像
cv2.namedWindow('图片',cv2.WINDOW_NORMAL) # cv2.WINDOW_NORMAL使窗体可调大小
cv2.destroyAllWindows() # 摧毁所有窗体
# cv2.destroyWindow('图片') 摧毁特定窗体
保存图片
使用cv2.imwrite()函数来保存一个图像
第一个参数为文件名,第二个是要保存的图像
cv2.imwrite('messigray.png',img)
对于图像的基本操作
修改像素值
import cv2
import numpy as np
# 读取图片
img = cv2.imread('a.JPEG')
# 切片获取某个像素的BGR
px = img[100, 100]
print(px)
# 修改BGR
img[100, 100] = [200, 200, 200]
px = img[100, 100]
print(px)
获取图像的属性
print(img.shape) # 返回像素的一个包含行、列、通道数的元组
## (280, 450, 3)
print(img.size) # 返回像素的数目
## (378000)
print(img.dtype) # 返回图像的数据类型
## uint8