推薦五個常用的python圖像處理庫

1. 引言

Python目前是世界上使用最多的編程語言之一。它能夠以更少的工作量和更少的代碼行數來完成許多事情。它還可以使用很少的代碼行來方便地編輯和創建圖像。
本文重點介紹,在圖像處理領域,我們最常使用的一些Python開源庫。

2. Pillow庫

Pillow是Python中常用的圖像處理庫之一。它提供瞭許多操作圖像的函數,如調整大小、濾波操作等。這是Python中最好用的圖像處理庫之一。唯一的缺點是它已經很久沒有更新瞭。

安裝安庫的命令如下:

pip install pillow

這裡通過一個簡單的代碼片段來展示這個庫是如何工作的。讓我們使用Pillow來增加對比度,讓深色圖像變得更漂亮一些。

代碼如下:

from PIL import Image,ImageEnhance
img_original = Image.open("dark.jpg")
img_original.show("Original Image")
img = ImageEnhance.Contrast(img_original)
img.enhance(3.8).show("Image With More Contrast")

運行效果如下:

3. Numpy庫

NumPy代表Numerical Python。它是一個Python庫,可以幫助我們處理所有類型的科學計算。NumPy是在執行任何類型的數據預處理或數據科學相關任務時導入的第一個庫。此外,它還可以用來進行圖像處理操作。

使用NumPy,我們可以輕松地操縱圖像的RGB值。舉例如下:

from PIL import Image
import numpy as np
img = np.array(Image.open('0.jpg'))
img_red = img.copy()
img_red[:, :, (1, 2)] = 0
img_green = img.copy()
img_green[:, :, (0, 2)] = 0
img_blue = img.copy()
img_blue[:, :, (0, 1)] = 0
img_ORGB = np.concatenate((img,img_red, img_green, img_blue), axis=1)
img_converted = Image.fromarray(img_ORGB)
img_converted.show() ## Combine Image Contains all four images

運行結果如下:

4. Scipy庫

Scipy是Python中主要用於數學和科學計算的庫,但同時它也可以用於處理多維圖像。這是一個非常大的庫,包含許多科學計算的工具。當使用Scipy庫進行圖像處理時,隻需導入scipy.ndimage模塊即可。
安裝scipy庫的命令如下:

pip install scipy

使用該庫進行高斯模糊的樣例代碼如下:

from scipy import misc
import matplotlib.pyplot as plt
fig = plt.figure()
plt.gray() # show the filtered result in grayscale
ax1 = fig.add_subplot(121) # left side
ax2 = fig.add_subplot(122) # right side
ascent = misc.ascent()
result = gaussian_filter(ascent, sigma=5)
ax1.imshow(ascent)
ax2.imshow(result)
plt.show()

運行結果如下:

5. Opencv庫

OpenCV是最常用的一種圖像處理庫,可以方便地與網絡攝像頭、圖像和視頻進行交互。它可以執行多種實時任務,於2000年首次發佈。它因其簡單性和代碼可讀性而出名。目前,它主要用於計算機視覺任務,如人臉檢測和識別、目標檢測等。

安裝該庫的命令如下:

pip install opencv-python

使用該庫,進行crop操作的樣例如下:

import cv2
img = cv2.imread("images/test.jpg")
imgCropped = img[50:283,25:190]
shape = imgCropped.shape
print(shape[0])
imgCropped = cv2.resize(imgCropped,(shape[0]*12//10,shape[1]*2))
cv2.imshow("Image cropped",imgCropped)
cv2.imshow("Image",img)
cv2.waitKey(0)

運行結果如下:

6. Pgmagick庫

Pgmagick是Python庫中GraphicsMagick的補充,它提供瞭許多圖像處理的功能,比如調整大小、旋轉、銳化、漸變等操作。

安裝pgmagick的命令如下:

pip install pgmagick

下面是使用該庫進行縮放的樣例代碼:

from pgmagick.api import Image
img = Image('fox.png')
# scaling image up to 1.5x
img.scale((150, 100), 'fox_scaled')

上述代碼的運行結果如下:

7. 總結

本文重點介紹瞭在Python中進行圖像處理的五個常用的開源庫,這五個庫功能強大,包含各式各樣的圖像處理函數,極大地提升瞭開發效率,推薦大傢積極使用。

到此這篇關於推薦五個常用的python圖像處理庫的文章就介紹到這瞭,更多相關Python圖像處理庫內容請搜索WalkonNet以前的文章或繼續瀏覽下面的相關文章希望大傢以後多多支持WalkonNet!

推薦閱讀: