https://m.toutiao.com/is/A8BT3Qx/?= Python有许多库可以用来处理图像,其中最常用的是Pillow和OpenCV。以下是使用这两个库的基本图像处理示例: ## 使用Pillow库 Pillow是一个Python Imaging Library(PIL)的分支,它提供了许多图像处理功能,例如打开和保存图像文件,调整大小,裁剪,旋转,合并图像等。 以下是一个基本的Pillow图像处理示例: ``` from PIL import Image # 打开图像文件 image = Image.open('example.jpg') # 显示图像 image.show() # 调整图像大小 resized_image = image.resize((300, 300)) # 保存图像 resized_image.save('resized_image.jpg') # 裁剪图像 cropped_image = image.crop((100, 100, 400, 400)) # 旋转图像 rotated_image = image.rotate(90) # 合并图像 image1 = Image.open('example1.jpg') image2 = Image.open('example2.jpg') merged_image = Image.merge('RGB', (image1, image2)) # 显示处理后的图像 resized_image.show() cropped_image.show() rotated_image.show() merged_image.show() ``` 此示例打开名为`example.jpg`的图像文件,显示图像并进行调整大小,裁剪,旋转和合并。然后它将处理后的图像保存到文件并显示它们。 ## 使用OpenCV库 OpenCV是一个功能强大的计算机视觉库,它提供了许多图像处理和计算机视觉功能,例如图像过滤,边缘检测,图像分割,特征提取等。 以下是一个基本的OpenCV图像处理示例: ``` import cv2 # 读取图像文件 image = cv2.imread('example.jpg') # 显示图像 cv2.imshow('image', image) cv2.waitKey(0) cv2.destroyAllWindows() # 调整图像大小 resized_image = cv2.resize(image, (300, 300)) # 保存图像 cv2.imwrite('resized_image.jpg', resized_image) # 裁剪图像 cropped_image = image[100:400, 100:400] # 旋转图像 (rows, cols) = image.shape[:2] M = cv2.getRotationMatrix2D((cols/2, rows/2), 90, 1) rotated_image = cv2.warpAffine(image, M, (cols, rows)) # 显示处理后的图像 cv2.imshow('resized_image', resized_image) cv2.imshow('cropped_image', cropped_image) cv2.imshow('rotated_image', rotated_image) cv2.waitKey(0) cv2.destroyAllWindows() ``` 此示例使用OpenCV读取名为`example.jpg`的图像文件,显示图像并进行调整大小,裁剪和旋转。然后它将处理后的图像保存到文件并显示它们。 需要注意的是,OpenCV读取的图像格式为BGR,而不是常见的RGB格式。在进行任何处理之前,需要将图像从BGR格式转换为RGB格式。 最后记得点赞评论哦! |
|
来自: 山峰云绕 > 《Python代码知识游戏黑客编程与英语》