返回

Python图像库图片读写的八种方式

人工智能

在Python中,图像库是我们进行图像处理的基本工具。常用的Python图像库有OpenCV、PIL、Pillow、scikit-image、scipy、imageio、matplotlib和PyQt5等。

一、OpenCV

OpenCV是一个开源的计算机视觉库,它包含了许多图像处理和计算机视觉的函数。OpenCV的优势在于它支持多种图像格式,并且提供了丰富的图像处理算法。

1. 读取图像

import cv2

# 读取图像
img = cv2.imread('image.jpg')

# 显示图像
cv2.imshow('Image', img)
cv2.waitKey(0)
cv2.destroyAllWindows()

2. 写入图像

import cv2

# 读取图像
img = cv2.imread('image.jpg')

# 写入图像
cv2.imwrite('image_copy.jpg', img)

二、PIL

PIL(Python Imaging Library)是一个开源的图像处理库,它提供了多种图像处理函数,如裁剪、缩放、旋转、转换格式等。PIL的优势在于它支持多种图像格式,并且提供了丰富的图像处理算法。

1. 读取图像

from PIL import Image

# 读取图像
img = Image.open('image.jpg')

# 显示图像
img.show()

2. 写入图像

from PIL import Image

# 读取图像
img = Image.open('image.jpg')

# 写入图像
img.save('image_copy.jpg')

三、Pillow

Pillow是PIL的一个分支,它对PIL进行了许多改进,如增加了对更多图像格式的支持,并且提供了更多的图像处理函数。Pillow的优势在于它支持多种图像格式,并且提供了丰富的图像处理算法。

1. 读取图像

from PIL import Image

# 读取图像
img = Image.open('image.jpg')

# 显示图像
img.show()

2. 写入图像

from PIL import Image

# 读取图像
img = Image.open('image.jpg')

# 写入图像
img.save('image_copy.jpg')

四、scikit-image

scikit-image是一个开源的图像处理库,它提供了许多图像处理函数,如裁剪、缩放、旋转、转换格式等。scikit-image的优势在于它支持多种图像格式,并且提供了丰富的图像处理算法。

1. 读取图像

from skimage import io

# 读取图像
img = io.imread('image.jpg')

# 显示图像
io.imshow(img)

2. 写入图像

from skimage import io

# 读取图像
img = io.imread('image.jpg')

# 写入图像
io.imsave('image_copy.jpg', img)

五、scipy

scipy是一个开源的科学计算库,它提供了许多图像处理函数,如裁剪、缩放、旋转、转换格式等。scipy的优势在于它支持多种图像格式,并且提供了丰富的图像处理算法。

1. 读取图像

from scipy import ndimage

# 读取图像
img = ndimage.imread('image.jpg')

# 显示图像
plt.imshow(img)

2. 写入图像

from scipy import ndimage

# 读取图像
img = ndimage.imread('image.jpg')

# 写入图像
ndimage.imsave('image_copy.jpg', img)

六、imageio

imageio是一个开源的图像处理库,它提供了许多图像处理函数,如裁剪、缩放、旋转、转换格式等。imageio的优势在于它支持多种图像格式,并且提供了丰富的图像处理算法。

1. 读取图像

import imageio

# 读取图像
img = imageio.imread('image.jpg')

# 显示图像
imageio.imshow(img)

2. 写入图像

import imageio

# 读取图像
img = imageio.imread('image.jpg')

# 写入图像
imageio.imwrite('image_copy.jpg', img)

七、matplotlib

matplotlib是一个开源的绘图库,它提供了许多图像处理函数,如裁剪、缩放、旋转、转换格式等。matplotlib的优势在于它可以轻松地将图像绘制到各种图形中。

1. 读取图像

import matplotlib.pyplot as plt

# 读取图像
img = plt.imread('image.jpg')

# 显示图像
plt.imshow(img)
plt.show()

2. 写入图像

import matplotlib.pyplot as plt

# 读取图像
img = plt.imread('image.jpg')

# 写入图像
plt.imsave('image_copy.jpg', img)

八、PyQt5

PyQt5是一个开源的图形用户界面库,它提供了许多图像处理函数,如裁剪、缩放、旋转、转换格式等。PyQt5的优势在于它可以轻松地将图像嵌入到各种图形用户界面中。

1. 读取图像

from PyQt5.QtGui import QImage

# 读取图像
img = QImage('image.jpg')

# 显示图像
img.save('image_copy.jpg')

2. 写入图像

from PyQt5.QtGui import QImage

# 读取图像
img = QImage('image.jpg')

# 写入图像
img.save('image_copy.jpg')