欢迎访问宙启技术站
智能推送

Python图像处理函数手册:OpenCV库和PIL库

发布时间:2023-06-08 02:16:51

Python是一个广泛用于图像处理的编程语言,因为它具有处理和操作数学和科学数据的能力。Python图像处理扩展的两个重要库是OpenCV(Open Source Computer Vision Library)库和PIL(Python Imaging Library)库。这些库包含许多可用于处理、操作和传输图像的函数。在这个手册中,我们将介绍常用的一些OpenCV和PIL图像处理函数和它们的用途。

1. OpenCV库中的常用函数:

1.1 cv2.imread()函数

cv2.imread()函数用于读取图像文件。它需要两个参数, 个是图像文件名,第二个是一个整数,表示图像应该以什么方式读入。该函数返回一个numpy数组,表示读取的图像数据。

import cv2

img = cv2.imread('example.jpg', cv2.IMREAD_COLOR)

1.2 cv2.imshow()函数

cv2.imshow()函数用于在窗口中显示图像。它需要两个参数, 个是窗口的名称,第二个是要显示的图像。该函数没有返回值。

import cv2

img = cv2.imread('example.jpg', cv2.IMREAD_COLOR)
cv2.imshow('image', img)
cv2.waitKey(0)
cv2.destroyAllWindows()

1.3 cv2.cvtColor()函数

cv2.cvtColor()函数用于将一个图像从一种颜色空间转换为另一种颜色空间。它需要两个参数, 个是要转换的图像,第二个是要转换成的颜色空间。这个函数返回一个转换后的图像。

import cv2

img = cv2.imread('example.jpg', cv2.IMREAD_COLOR)
gray = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY)

1.4 cv2.resize()函数

cv2.resize()函数用于调整图像的大小。它需要两个参数, 个是要调整大小的图像,第二个是一个元组,表示要调整的大小。这个函数返回一个调整大小后的图像。

import cv2

img = cv2.imread('example.jpg', cv2.IMREAD_COLOR)
resized = cv2.resize(img, (500, 500))

1.5 cv2.imwrite()函数

cv2.imwrite()函数用于将一个图像写入到磁盘。它需要两个参数, 个是写入的文件名,第二个是要写入的图像。该函数没有返回值。

import cv2

img = cv2.imread('example.jpg', cv2.IMREAD_COLOR)
cv2.imwrite('new_example.jpg', img)

2. PIL库中的常用函数:

2.1 Image.open()函数

Image.open()函数用于打开一个图像文件。它需要一个参数,表示要打开的文件名。该函数返回一个Image对象,表示读取的图像数据。

from PIL import Image

img = Image.open('example.jpg')

2.2 Image.show()函数

Image.show()函数用于在图像查看器中显示一个图像。该函数没有参数和返回值。

from PIL import Image

img = Image.open('example.jpg')
img.show()

2.3 Image.convert()函数

Image.convert()函数用于将一个图像从一种模式转换为另一种模式。它需要一个参数,表示要转换成的模式。该函数返回一个转换后的图像。

from PIL import Image

img = Image.open('example.jpg')
gray = img.convert('L')

2.4 Image.resize()函数

Image.resize()函数用于调整图像的大小。它需要一个元组表示要调整的大小。该函数返回一个调整大小后的图像。

from PIL import Image

img = Image.open('example.jpg')
resized = img.resize((500, 500))

2.5 Image.save()函数

Image.save()函数用于将一个图像写入到磁盘。它需要一个参数,表示写入的文件名。该函数没有返回值。

from PIL import Image

img = Image.open('example.jpg')
img.save('new_example.jpg')

总结

OpenCV和PIL是Python中用于图像处理的两个重要库。它们都提供了许多函数,可以帮助我们处理、操作和传输图像。在本手册中,我们介绍了一些常用的OpenCV和PIL函数和它们的应用。如果您想进行更多的图像处理,您可以查阅OpenCV和PIL的详细文档。