一、读取图像
在Python中,可以使用cv2.imread函数来读取图像。该函数的语法如下:
img = cv2.imread(filename, flags)
其中,filename是要读取的图像文件的路径和名称,flags是读取图像的标志,用于指定读取图像的颜色类型和是否读取透明通道等信息。常用的标志包括:
cv2.IMREAD_COLOR:读取彩色图像,忽略透明通道(默认值)。
cv2.IMREAD_GRAYSCALE:读取灰度图像。
cv2.IMREAD_UNCHANGED:读取彩色图像,包括透明通道。
例如,要读取一张名为“image.jpg”的彩色图像,可以使用以下代码:
import cv2
# 读取图像
img = cv2.imread("image.jpg", cv2.IMREAD_COLOR)
这将把image.jpg文件读入一个名为“img”的NumPy数组中,该数组包含了图像的像素值。
二、显示图像
在Python中,可以使用cv2.imshow函数来显示图像。该函数的语法如下:
cv2.imshow(winname, mat)
其中,winname是窗口的名称,mat是要显示的图像。例如,要显示上面读取的图像,可以使用以下代码:
import cv2
# 读取图像
img = cv2.imread("image.jpg", cv2.IMREAD_COLOR)
# 显示图像
cv2.imshow("image", img)
cv2.waitKey(0)
cv2.destroyAllWindows()
这将在一个名为“image”的窗口中显示读取的图像。cv2.waitKey(0)函数用于等待用户按下任意键关闭窗口,cv2.destroyAllWindows()函数用于销毁所有创建的窗口。
三、保存图像
在Python中,可以使用cv2.imwrite函数来保存图像。该函数的语法如下:
cv2.imwrite(filename, img, params)
其中,filename是要保存的图像文件的路径和名称,img是要保存的图像,params是保存图像的参数,用于指定保存图像的质量、压缩比等信息。常用的参数包括:
cv2.IMWRITE_JPEG_QUALITY:指定保存JPEG图像的质量,取值范围为0-100,默认值为95。
cv2.IMWRITE_PNG_COMPRESSION:指定保存PNG图像的压缩比,取值范围为0-9,默认值为6。
例如,要将一张名为output.jpg的彩色图像保存为JPEG格式,可以使用以下代码:
import cv2
# 读取图像
img = cv2.imread("image.jpg", cv2.IMREAD_COLOR)
# 处理图像
# ...
# 保存图像
cv2.imwrite("output.jpg", img, [cv2.IMWRITE_JPEG_QUALITY, 90])
这将把处理后的图像保存为一张名为output.jpg的JPEG格式图像,并将质量设置为90,在实际操作过程中,质量也可不设置。
需要注意的是,在读取、显示和保存图像时,要确保文件路径和名称正确,否则会导致读取、显示或保存失败。此外,在使用cv2.imread函数读取图像时,如果读取失败,将返回一个空的NumPy数组,需要注意检查读取结果的有效性。
觉得有用的话,请为我点个赞吧!