黄色网页视频 I 影音先锋日日狠狠久久 I 秋霞午夜毛片 I 秋霞一二三区 I 国产成人片无码视频 I 国产 精品 自在自线 I av免费观看网站 I 日本精品久久久久中文字幕5 I 91看视频 I 看全色黄大色黄女片18 I 精品不卡一区 I 亚洲最新精品 I 欧美 激情 在线 I 人妻少妇精品久久 I 国产99视频精品免费专区 I 欧美影院 I 欧美精品在欧美一区二区少妇 I av大片网站 I 国产精品黄色片 I 888久久 I 狠狠干最新 I 看看黄色一级片 I 黄色精品久久 I 三级av在线 I 69色综合 I 国产日韩欧美91 I 亚洲精品偷拍 I 激情小说亚洲图片 I 久久国产视频精品 I 国产综合精品一区二区三区 I 色婷婷国产 I 最新成人av在线 I 国产私拍精品 I 日韩成人影音 I 日日夜夜天天综合

Python中的十大圖像處理工具(小結(jié))

系統(tǒng) 2098 0

Python之成為圖像處理任務(wù)的最佳選擇,是因為這一科學(xué)編程語言日益普及,并且其自身免費提供許多最先進的圖像處理工具。本文主要介紹了一些簡單易懂最常用的Python圖像處理庫。

當今世界充滿了各種數(shù)據(jù),而圖像是其中高的重要組成部分。然而,若想其有所應(yīng)用,我們需要對這些圖像進行處理。圖像處理是分析和操縱數(shù)字圖像的過程,旨在提高其質(zhì)量或從中提取一些信息,然后將其用于某些方面。

圖像處理中的常見任務(wù)包括顯示圖像,基本操作(如裁剪、翻轉(zhuǎn)、旋轉(zhuǎn)等),圖像分割,分類和特征提取,圖像恢復(fù)和圖像識別等。 Python之成為圖像處理任務(wù)的最佳選擇,是因為這一科學(xué)編程語言日益普及,并且其自身免費提供許多最先進的圖像處理工具。

讓我們看一下用于圖像處理任務(wù)的一些常用Python庫。

1. scikit Image

scikit-image是一個基于numpy數(shù)組的開源Python包。 它實現(xiàn)了用于研究、教育和工業(yè)應(yīng)用的算法和實用程序。 即使是對于那些剛接觸Python的人,它也是一個相當簡單的庫。 此庫代碼質(zhì)量非常高并已經(jīng)過同行評審,是由一個活躍的志愿者社區(qū)編寫的。

使用說明文檔:https://scikit-image.org/docs/stable/user_guide.html

用法舉例:圖像過濾、模版匹配

可使用“skimage”來導(dǎo)入該庫。大多數(shù)功能都能在子模塊中找到。

            
import matplotlib.pyplot as plt 
%matplotlib inline 
from skimage import data,filters 
image = data.coins() 
# ... or any other NumPy array! 
edges = filters.sobel(image) 
plt.imshow(edges, cmap='gray') 
          

Python中的十大圖像處理工具(小結(jié))_第1張圖片

模版匹配(使用match_template函數(shù))

Python中的十大圖像處理工具(小結(jié))_第2張圖片

gallery上還有更多例子。

https://scikit-image.org/docs/dev/auto_examples/

2. Numpy

Numpy是Python編程的核心庫之一,支持數(shù)組結(jié)構(gòu)。 圖像本質(zhì)上是包含數(shù)據(jù)點像素的標準Numpy數(shù)組。 因此,通過使用基本的NumPy操作――例如切片、脫敏和花式索引,可以修改圖像的像素值。 可以使用skimage加載圖像并使用matplotlib顯示。

使用說明文檔:http://www.numpy.org/

用法舉例:使用Numpy來對圖像進行脫敏處理

            
import numpy as np 
from skimage import data 
import matplotlib.pyplot as plt 
%matplotlib inline 
image = data.camera() 
type(image) 
numpy.ndarray #Image is a numpy array 
mask = image < 87 
image[mask]=255 
plt.imshow(image, cmap='gray') 
          

Python中的十大圖像處理工具(小結(jié))_第3張圖片

3. Scipy

scipy是Python的另一個核心科學(xué)模塊,就像Numpy一樣,可用于基本的圖像處理和處理任務(wù)。值得一提的是,子模塊scipy.ndimage提供了在n維NumPy數(shù)組上運行的函數(shù)。 該軟件包目前包括線性和非線性濾波、二進制形態(tài)、B樣條插值和對象測量等功能。

使用說明文檔:

https://docs.scipy.org/doc/scipy/reference/tutorial/ndimage.html#correlation-and-convolution

用法舉例:使用SciPy的高斯濾波器對圖像進行模糊處理

            
from scipy import misc,ndimage 
face = misc.face() 
blurred_face = ndimage.gaussian_filter(face, sigma=3) 
very_blurred = ndimage.gaussian_filter(face, sigma=5) 
#Results 
plt.imshow(
            
              ) 
            
          

Python中的十大圖像處理工具(小結(jié))_第4張圖片

4. PIL/ Pillow

PIL (Python Imaging Library)是一個免費的Python編程語言庫,它增加了對打開、處理和保存許多不同圖像文件格式的支持。 然而,它的發(fā)展停滯不前,其最后一次更新還是在2009年。幸運的是, PIL有一個正處于積極開發(fā)階段的分支Pillow,它非常易于安裝。Pillow能在所有主要操作系統(tǒng)上運行并支持Python 3。該庫包含基本的圖像處理功能,包括點操作、使用一組內(nèi)置卷積內(nèi)核進行過濾以及顏色空間轉(zhuǎn)換。

使用說明文檔:https://pillow.readthedocs.io/en/3.1.x/index.html

用法舉例:使用ImageFilter增強Pillow中的圖像

            
from PIL import Image, ImageFilter 
#Read image 
im = Image.open( 'image.jpg' ) 
#Display image 
im.show() 
from PIL import ImageEnhance 
enh = ImageEnhance.Contrast(im) 
enh.enhance(1.8).show("30% more contrast") 
          

Python中的十大圖像處理工具(小結(jié))_第5張圖片

5. OpenCV-Python

OpenCV( 開源計算機視覺庫,Open Source Computer Vision Library)是計算機視覺應(yīng)用中使用最廣泛的庫之一。OpenCV-Python是OpenCV的python API。 OpenCV-Python不僅速度快(因為后臺由用C / C ++編寫的代碼組成),也易于編碼和部署(由于前端的Python包裝器)。 這使其成為執(zhí)行計算密集型計算機視覺程序的絕佳選擇。

使用說明文檔:https://github.com/abidrahmank/OpenCV2-Python-Tutorials

用法舉例:使用Pyramids創(chuàng)建一個名為'Orapple'的新水果的功能

Python中的十大圖像處理工具(小結(jié))_第6張圖片

6. SimpleCV

SimpleCV也是用于構(gòu)建計算機視覺應(yīng)用程序的開源框架。 通過它可以訪問如OpenCV等高性能的計算機視覺庫,而無需首先了解位深度、文件格式或色彩空間等。學(xué)習(xí)難度遠遠小于OpenCV,并且正如他們的標語所說,“ 它使計算機視覺變得簡單 ”。支持SimpleCV的一些觀點是:

即使是初學(xué)者也可以編寫簡單的機器視覺測試

攝像機、視頻文件、圖像和視頻流都可以交互操作

使用說明文檔:https://simplecv.readthedocs.io/en/latest/

用法舉例

Python中的十大圖像處理工具(小結(jié))_第7張圖片

7. Mahotas

Mahotas是另一個用于Python的計算機視覺和圖像處理庫。 它包含傳統(tǒng)的圖像處理功能(如濾波和形態(tài)學(xué)操作)以及用于特征計算的更現(xiàn)代的計算機視覺功能(包括興趣點檢測和局部描述符)。 該接口使用Python,適用于快速開發(fā),但算法是用C ++實現(xiàn)的,并且針對速度進行了優(yōu)化。Mahotas庫運行很快,它的代碼很簡單,(對其它庫的)依賴性也很小。 建議閱讀他們的官方文檔以了解更多內(nèi)容。

使用說明文檔:

https://mahotas.readthedocs.io/en/latest/install.html

用法舉例

Mahotas庫使用簡單的代碼來完成工作。 對于“ 尋找Wally ”的問題,Mahotas完成的得很好,而且代碼量非常小。

Python中的十大圖像處理工具(小結(jié))_第8張圖片

Python中的十大圖像處理工具(小結(jié))_第9張圖片

8. SimpleITK

ITK(Insight Segmentation and Registration Toolkit)是一個開源的跨平臺系統(tǒng),為開發(fā)人員提供了一整套用于圖像分析的軟件工具。 其中, SimpleITK是一個建立在ITK之上的簡化層,旨在促進其在快速原型設(shè)計、教育以及腳本語言中的使用。SimpleITK是一個包含大量組件的圖像分析工具包,支持一般的過濾操作、圖像分割和配準。 SimpleITK本身是用C++編寫的,但可用于包括Python在內(nèi)的大量編程語言。

使用說明文檔:https://github.com/hhatto/pgmagick

這里有大量說明了如何使用SimpleITK進行教育和研究活動的Jupyter notebook。notebook中演示了如何使用SimpleITK進行使用Python和R編程語言的交互式圖像分析。

用法舉例:

下面的動畫是使用SimpleITK和Python創(chuàng)建的可視化的嚴格CT / MR配準過程。

Python中的十大圖像處理工具(小結(jié))_第10張圖片

9. pgmagick

pgmagick是GraphicsMagick庫基于Python的包裝器。GraphicsMagick 圖像處理系統(tǒng)有時被稱為圖像處理的瑞士軍刀。它提供了強大而高效的工具和庫集合,支持超過88種主要格式圖像的讀取、寫入和操作,包括DPX,GIF,JPEG,JPEG-2000,PNG,PDF,PNM和TIFF等重要格式。

使用說明文檔:https://github.com/hhatto/pgmagick

用法舉例:圖片縮放、邊緣提取

Python中的十大圖像處理工具(小結(jié))_第11張圖片

圖片縮放

Python中的十大圖像處理工具(小結(jié))_第12張圖片

邊緣提取

10. Pycairo

Pycairo是圖形庫cairo的一組python綁定。 Cairo是一個用于繪制矢量圖形的2D圖形庫。 矢量圖形很有趣,因為它們在調(diào)整大小或進行變換時不會降低清晰度。Pycairo庫可以從Python調(diào)用cairo命令。

使用說明文檔:https://github.com/pygobject/pycairo

用法:Pycairo可以繪制線條、基本形狀和徑向漸變

Python中的十大圖像處理工具(小結(jié))_第13張圖片

以上就是一些免費的優(yōu)秀圖像處理Python庫。有些很知名,你可能已經(jīng)知道或者用過,有些可能對你來說還是新的。那正好現(xiàn)在就上手操作一下,試一試吧。希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。


更多文章、技術(shù)交流、商務(wù)合作、聯(lián)系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號聯(lián)系: 360901061

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對您有幫助就好】

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長會非常 感謝您的哦!!!

發(fā)表我的評論
最新評論 總共0條評論