大家好,我是小寒。
1. OpenCV
该库由 Intel 使用 C++ 编程语言开发,专为实时计算机视觉而设计。
安装
pip install opencv-python
案例
import cv2
# 读取图像
image = cv2.imread('tesla.png')
# 对图像进行灰度处理
gray_image = cv2.cvtColor(image, cv2.COLOR_BGR2GRAY)
cv2.imshow('Original Image', image)
cv2.imshow('Grayscale Image', gray_image)
cv2.waitKey(0)
cv2.destroyAllWindows()
输出

2. Pillow (PIL)
安装
PIL 也是一个第三方开源库,可以使用「pip install」命令安装。
案例
from PIL import Image
with Image.open("tesla.png") as im:
#显示原始图像
im.show("Original Image")
#转化为灰度图像
grayscaleImg = im.convert("L")
#显示灰度图像
grayscaleImg.show()
输出

3. Scikit Image
Scikit Images 是一个具有科学倾向的 Python 图像处理库。
它旨在使用 Numpy 和 Scipy 库处理图像。
它包括各种科学算法,例如分割、颜色空间操作、分析、形态学等。
该库是使用 Python 和 C 编程语言编写的。
它适用于所有流行的操作系统,例如 Linux、macOS 和 Windows。
安装
pip install scikit-image
例子
from skimage import io
from skimage.color import rgb2gray
# way to load car image from file
car = io.imread('tesla.png')[:,:,:3]
#convert into grayscale
grayscale = rgb2gray(car)
#show the original
io.imshow(car)
io.show()
#show the grayscale
io.imshow(grayscale)
io.show()
输出

4. NumPy
NumPy 是最基本的 Python 科学计算库。
安装
pip install numpy
例子
import numpy as np
import matplotlib.pyplot as plt
import matplotlib.image as mpimg
#load the original image
img_rgb = mpimg.imread('tesla.png')[...,:3]
#show the original image
plt.imshow(img_rgb)
plt.show()
#convert the image into grayscale
img_gray = np.dot(img_rgb,[0.299, 0.587, 0.144])
#show the grayscale image
plt.imshow(img_gray, cmap=plt.get_cmap('gray'))
plt.show()
输出

5. SciPy
与 Numpy 类似,SciPy 也是一个科学计算库。
它具有比 Numpy 更多的功能,因为它是作为 NumPy 库的扩展构建的。
安装
pip install scipy
例子
from scipy import misc,ndimage
from matplotlib import pyplot as plt
import numpy as np
img=misc.face()
#show original image
plt.imshow(img)
plt.show()
#grayscale using gaussian blur filter
grayscale=ndimage.gaussian_filter(img,sigma=2)
#show grayscale image
plt.imshow(grayscale)
plt.show()
输出

6. Mahotas
安装
pip install mahotas
例子
import mahotas
from pylab import imshow, show
#read the image
img = mahotas.imread('tesla.png')
#show original image
imshow(img)
show()
img = img[:, :, 0]
grayscale = mahotas.overlay(img)
#show grayscale image
imshow(grayscale)
show()
输出

7. SimpleITK
安装
pip install SimpleITK
例子
import SimpleITK as sitk
import matplotlib.pyplot as plt
logo = sitk.ReadImage('tesla.png')
# GetArrayViewFromImage returns an immutable numpy array view to the data.
plt.imshow(sitk.GetArrayViewFromImage(logo))
plt.show()
输出

8.Matplotlib
Matplotlib 也可以用作图像处理库,尽管它是一个数据可视化库。
一般用于绘制numpy数组数据,但也可以读取NumPy数组表示的图像数据。
安装
pip install matplotlib
例子
# importing libraries.
import matplotlib.pyplot as plt
from PIL import Image
# open image using pillow library
image = Image.open("tesla.png")
#show original image
plt.imshow(image)
plt.show()
# grayscale the image
plt.imshow(image.convert("L"), cmap='gray')
plt.show()
输出

结论
在这八个库中,使用最多的 Python 图像操作或处理库是 Pillow 和 OpenCV。
最后
—
「进群方式:加我微信,备注 “python”」

往期回顾







如果对本文有疑问可以加作者微信直接交流。进技术交流群的可以拉你进群。

文章转载自程序员学长,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。




