推薦:10個Python影像處理工具
概述了一些常用的Python庫,它們提供了一種簡單直觀的影像轉換方法。
介紹
在我們今天的世界中有很多的資料,而影像是這些資料中的重要組成部分。但是,要使用這些影像,需要對它們進行處理。因此,影像處理是分析和操縱數字影像的過程,主要目的是提高數字影像的質量或從中提取一些資訊,然後可以將其用於某種用途。
影像處理中常見的任務包括顯示影像,基本操作,如裁剪、翻轉、旋轉等、影像分割、分類和特徵提取、影像恢復和影像識別。 Python成為這種影像處理任務的合適選擇。這是因為它作為一種科學程式語言日益普及,並且在其生態系統中免費提供許多最先進的影像處理工具。
讓我們看一下用於影像處理任務的一些常用Python庫。
1.scikit-image
scikit-image是一個開源Python包,適用於numpy陣列。它實現了用於研究、教育和行業應用的演算法和實用程式。即使對於那些剛接觸Python生態系統的人,它也是一個相當簡單直接的庫。
資源
有很多例子和實際用例都有很好的都已經文件化了。 User Guide — skimage v0.15.0 docs
用法
該包作為skimage匯入,大多數功能都在子模組中找到。skimage的一些例子包括:
影像過濾
使用match_template函式進行模板匹配
您可以在相簿中找到更多示例。
2.Numpy
Numpy是Python程式設計的核心庫之一,併為陣列提供支援。影像本質上是包含資料點畫素的標準Numpy陣列。因此,通過使用基本的NumPy操作,例如切片、遮蔽和花式索引,我們可以修改影像的畫素值。可以使用skimage載入影像並使用matplotlib顯示影像。
資源
Numpy的官方文件頁面提供了完整的資源和文件列表。 NumPy — NumPy NumPy — NumPy
用法
使用Numpy來遮蔽影像。
3.Scipy
scipy是Python的另一個核心科學模組,如Numpy,可用於基本的影像處理和處理任務。特別是,子模組scipy.ndimage提供了在n維NumPy陣列上執行的函式。該軟體包目前包括線性和非線性濾波、二進位制形態、B樣條插值和物件測量等功能。
資源
有關scipy.ndimage包提供的完整功能列表,請參閱此處的文件。 NumPy — NumPy 使用SciPy進行模糊使用高斯濾波器:
4.PIL / Pillow
PIL(Python Imaging Library)是一個免費的Python程式語言庫,它增加了對開啟、操作和儲存許多不同影像檔案格式的支援。然而,它的發展停滯不前,最後一次釋出是在2009年。幸運的是,Pillow是一個積極開發的PIL分支,更易於安裝;在所有主要作業系統上執行並支援Python 3。該庫包含基本的影像處理功能,包括點操作,使用一組內建卷積核心進行過濾以及顏色空間轉換。
資源
該文件包含安裝說明以及涵蓋庫的每個模組的示例。
用法
使用ImageFilter增強Pillow中的影像:
5.OpenCV-Python
OpenCV(開源計算機視覺庫)是計算機視覺應用中使用最廣泛的庫之一。 OpenCV-Python是OpenCV的python API。 OpenCV-Python不僅速度快,因為後臺由用C / C ++編寫的程式碼組成,而且易於編碼和部署(由於前端的Python包裝器)。這使其成為執行計算密集型計算機視覺程式的絕佳選擇。
資源
OpenCV2-Python-指南使您可以輕鬆開始使用OpenCV-Python。
用法
下面是一個示例,展示了OpenCV-Python在使用金字塔建立一個名為“Orapple”的新水果的影像混合中的功能。
6.SimpleCV
SimpleCV也是一個用於構建計算機視覺應用程式的開源框架。有了它,您可以訪問幾個高效能的計算機視覺庫,如OpenCV,無需首先了解位深度、檔案格式、色彩空間等。學習曲線遠遠小於OpenCV,並且正如他們的標語所說,“計算機視覺變得容易”。一些贊成SimpleCV的觀點是:
- 即使是初學者也可以編寫簡單的機器視覺測試
- 攝像機、視訊檔案、影像和視訊流都可以互操作
資源
官方文件很容易理解,並有大量的示例和用例可供遵循。
用法
7.Mahotas
Mahotas是另一個用於Python的計算機視覺和影像處理庫。它包含傳統的影像處理功能,如過濾和形態學操作,以及用於特徵計算的更現代的計算機視覺功能,包括興趣點檢測和區域性描述符。該介面使用Python,適用於快速開發,但演算法是用C ++實現的,並且針對速度進行了調整。 Mahotas庫速度快,程式碼簡潔,依賴性最小。可以在這閱讀它們的官方文章 「連結」
資源
該文件包含安裝說明,示例甚至一些教程,以幫助您輕鬆地開始使用mahotas。
用法
Mahotas庫依賴於使用簡單的程式碼來完成工作。對於“尋找Wally”的問題,Mahotas做得很好,而且程式碼也很簡單。下面是原始碼。 Finding Wally — mahotas 1.4.3+git documentation
8.SimpleITK
ITK或Insight Segmentation and Registration Toolkit是一個開源的跨平臺系統,為開發人員提供了一整套用於影像分析的軟體工具。其中,SimpleITK是一個建立在ITK之上的簡化層,旨在促進其在快速原型、教育、解釋語言中的使用。 SimpleITK是一個影像分析工具包,具有大量元件,支援一般過濾操作、影像分割和註冊。 SimpleITK本身是用C ++編寫的,但可用於包括Python在內的大量程式語言。
資源
已經提供了大量的Jupyter筆記本,說明了如何使用SimpleITK進行教育和研究活動。筆記本演示瞭如何使用SimpleITK進行使用Python和R程式語言的互動式影像分析。
用法
下面的動畫是使用SimpleITK和Python建立的嚴格CT / MR註冊過程的視覺化。在這裡閱讀原始碼。 Finding Wally — mahotas 1.4.3+git documentation
9.pgmagick
pgmagick是GraphicsMagick庫的基於Python的包裝器。 GraphicsMagick影像處理系統有時被稱為影像處理的瑞士軍 刀。它提供了強大而高效的工具和庫集合,支援以超過88種主要格式讀取、寫入和操作影像,包括DPX,GIF,JPEG,JPEG-2000,PNG,PDF,PNM和TIFF等重要格式。
資源
有一個專門用於PgMagick的Github儲存庫,其中有安裝和要求的說明。還有關於該主題的詳細使用者指南。
用法
使用pgmagick執行的影像操作活動很少:
影像縮放:
邊緣提取:
10.Pycairo
Pycairo是一組用於圖形庫cairo的python繫結。 Cairo是一個用於繪製向量圖形的2D圖形庫。向量圖形很有趣,因為它們在調整大小或變換時不會失去清晰度。 Pycairo是一組用於cairo的繫結,可用於從Python呼叫cairo命令。
資源
Pycairo GitHub儲存庫是一個很好的資源,有關於安裝和使用的詳細說明。還有一個入門指南,其中有一個關於Pycairo的簡要教程。
用法
Pycairo繪製線條、基本形狀和徑向漸梯度
結論
這些是Python中一些有用且免費提供的影像處理庫。有些是眾所周知的,有些可能對你來說是新的。嘗試一下以瞭解更多關於它們的資訊。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/31509949/viewspace-2645850/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- python常用的影像處理工具有哪些?工具推薦!Python
- [Python影像處理] 三十.影像量化及取樣處理萬字詳細總結(推薦)Python
- 推薦6個高效的語言處理Python庫Python
- 10個常用的Python影像處理工具,非常全了!Python
- 10個常用的Python影像處理工具,建議收藏!Python
- Python影像處理丨5種影像處理特效Python特效
- Python 影像處理 OpenCV (6):影像的閾值處理PythonOpenCV
- Python 影像處理 OpenCV (7):影像平滑(濾波)處理PythonOpenCV
- 十個Python常用的影像處理工具Python
- Python影像處理庫——PILPython
- Python 影像處理 OpenCV (15):影像輪廓PythonOpenCV
- 推薦一個工具
- Python 影像處理 OpenCV (10):影像處理形態學之頂帽運算與黑帽運算PythonOpenCV
- Python用什麼工具好?Python工具推薦!Python
- Python 影像處理 OpenCV (16):影像直方圖PythonOpenCV直方圖
- Python 影像處理 OpenCV (14):影像金字塔PythonOpenCV
- 【推薦】7個超好用的Python開發工具!Python
- 10 個 推薦的 Python 程式碼習慣Python
- 【號外】6個最好用的Python影像處理庫!Python
- Python介面開發工具哪個好用?常用工具推薦!Python
- Python 影像處理 OpenCV (3):影像屬性、影像感興趣 ROI 區域及通道處理PythonOpenCV
- Python 影像處理 OpenCV (1):入門PythonOpenCV
- python 包之 Pillow 影像處理教程Python
- 專業的模型後處理軟體推薦:SimLab Composer 10模型
- 併發處理規則最佳推薦
- 影像處理--影像特效特效
- 10個新手必備的網路安全工具推薦!
- Python 影像處理 OpenCV (2):畫素處理與 Numpy 操作以及 Matplotlib 顯示影像PythonOpenCV
- 推薦一個清單工具
- 推薦幾個好用的工具
- Python用什麼工具好?Python開發工具推薦!Python
- Python 影像處理 OpenCV (5):影像的幾何變換PythonOpenCV
- webgl 影像處理2---影像畫素處理Web
- 8個主流且實用的Python開發工具推薦!Python
- 【推薦】10個好用的Python整合開發環境!Python開發環境
- 工具 | Windows10 軟體推薦Windows
- 五款Python影像處理工具!Python入門分享!Python
- 工具推薦|2020年最值得推薦的10款UI動效設計工具UI