python图像处理第二课+图像处理Python
更新时间:2023-12-161. 图像的读取和显示
在使用Python进行图像处理之前,首先我们需要了解如何读取和显示图像。Python提供了许多图像处理库,其中最常用的是OpenCV库。
import cv2 # 读取图像 img = cv2.imread('image.jpg') # 显示图像 cv2.imshow('Image', img) cv2.waitKey(0) cv2.destroyAllWindows()
以上代码中,我们首先使用imread
函数来读取图像文件。然后使用imshow
函数将图像显示在窗口上。最后使用waitKey
和destroyAllWindows
函数来保持窗口的显示和关闭图像窗口。
2. 图像的灰度化处理
灰度化处理是图像处理中常用的一种方式,可以将彩色图像转换为灰度图像进行处理。
import cv2 # 读取图像 img = cv2.imread('image.jpg') # 将图像转换为灰度图像 gray_img = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY) # 显示图像 cv2.imshow('Gray Image', gray_img) cv2.waitKey(0) cv2.destroyAllWindows()
以上代码中,我们使用cvtColor
函数将彩色图像转换为灰度图像,并将结果保存在gray_img
变量中。然后使用imshow
函数显示灰度图像。
3. 图像的裁剪和缩放
在图像处理中,常常需要对图像进行裁剪和缩放操作。
import cv2 # 读取图像 img = cv2.imread('image.jpg') # 裁剪图像 crop_img = img[100:300, 200:400] # 缩放图像 scale_img = cv2.resize(img, (300, 300)) # 显示图像 cv2.imshow('Cropped Image', crop_img) cv2.imshow('Scaled Image', scale_img) cv2.waitKey(0) cv2.destroyAllWindows()
以上代码中,我们使用索引方式对图像进行裁剪,将指定区域的图像保存在crop_img
变量中。然后使用resize
函数对图像进行缩放,将图像的宽度和高度设置为300,并将结果保存在scale_img
变量中。
4. 图像的滤波处理
滤波是图像处理中常用的一种操作,可以对图像进行平滑去噪或者增强边缘等效果。
import cv2 import numpy as np # 读取图像 img = cv2.imread('image.jpg') # 高斯滤波 blur_img = cv2.GaussianBlur(img, (5, 5), 0) # 锐化滤波 kernel = np.array([[0, -1, 0], [-1, 5, -1], [0, -1, 0]]) sharpen_img = cv2.filter2D(img, -1, kernel) # 显示图像 cv2.imshow('Blurred Image', blur_img) cv2.imshow('Sharpened Image', sharpen_img) cv2.waitKey(0) cv2.destroyAllWindows()
以上代码中,我们使用GaussianBlur
函数对图像进行高斯滤波,将模糊的结果保存在blur_img
变量中。然后使用自定义的核对图像进行锐化滤波,将结果保存在sharpen_img
变量中。