欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Python編程圖形庫之Pillow使用方法講解

 更新時間:2018年12月28日 11:47:13   作者:liumiaocn  
今天小編就為大家分享一篇關(guān)于Python編程圖形庫之Pillow使用方法講解,小編覺得內(nèi)容挺不錯的,現(xiàn)在分享給大家,具有很好的參考價值,需要的朋友一起跟隨小編來看看吧

PIL vs Pillow

PIL: Python Imaging Library,是python的圖像處理庫。由于PIL不兼容setuptools,再加上更新緩慢等因素,Alex Clark等一些社區(qū)好心人還是希望能夠繼續(xù)支持PIL,所以fork了PIL,這就是Pillow的緣起。

Pillow的目標(biāo)

推動和促進PIL的發(fā)展是Pillow的目標(biāo),主要通過如下的方式來進行

  • 結(jié)合Travis CI和AppVeyor進行持續(xù)集成測試
  • 活用github進行開發(fā)
  • 結(jié)合Python Package Index進行例行發(fā)布

其實可以看出,所做的改善就是在CI和CD,改善用戶感知,定期/快速地與使用者進行溝通和交流,是pillow獲得好感的一個重要因素。

安裝

安裝可以通過pip,只需要執(zhí)行pip install pillow即可

liumiaocn:~ liumiao$ pip install pillow
Collecting pillow
 Downloading https://files.pythonhosted.org/packages/df/aa/a25f211a4686f363d8ca5a1752c43a8f42459e70af13e20713d3e636f0af/Pillow-5.1.0-cp27-cp27m-macosx_10_6_intel.macosx_10_9_intel.macosx_10_9_x86_64.macosx_10_10_intel.macosx_10_10_x86_64.whl (3.6MB)
  100% |████████████████████████████████| 3.6MB 157kB/s 
Installing collected packages: pillow
Successfully installed pillow-5.1.0
liumiaocn:~ liumiao$

安裝確認

liumiaocn:~ liumiao$ pip show pillow
Name: Pillow
Version: 5.1.0
Summary: Python Imaging Library (Fork)
Home-page: https://python-pillow.org
Author: Alex Clark (Fork Author)
Author-email: aclark@aclark.net
License: Standard PIL License
Location: /usr/local/lib/python2.7/site-packages
Requires: 
Required-by: 
liumiaocn:~ liumiao$ 

使用

圖形庫有很多實用的功能,這里列舉幾個進行簡單演示。

ImageGrab.grab()

使用這個方法可以實現(xiàn)抓屏:

liumiaocn:tmp liumiao$ cat grab.python 
#!/usr/local/bin/python
from PIL import ImageGrab
#get current screen copy
image = ImageGrab.grab()
#display image size
print("Current screen shot size :",image.size)
#display image mode
print("Screen shot picture mode :", image.mode)
#save picture to /tmp/screen-grab-1.bmp
image.save('/tmp/screen-grab-1.bmp')
#show picture
image.show()
liumiaocn:tmp liumiao$

因為代碼中使用了image.show()進行了顯示,執(zhí)行之后可以直接看到顯示,同時也能確認到/tmp下所生成的文件

liumiaocn:tmp liumiao$ python grab.python 
('Current screen shot size :', (2880, 1800))
('Screen shot picture mode :', 'RGBA')
liumiaocn:tmp liumiao$ ls -l /tmp/screen-grab-1.bmp
-rw-r--r-- 1 liumiao wheel 20736054 Jun 23 05:41 /tmp/screen-grab-1.bmp
liumiaocn:tmp liumiao$

濾鏡

PIL中的ImageFilter支持近十種濾鏡, 比如對剛剛抓取的圖片使用CONTOUR濾鏡

liumiaocn:tmp liumiao$ cat filter-contour.py 
#!/usr/local/bin/python
from PIL import ImageFilter, Image
src_image = Image.open('/tmp/screen-grab-1.bmp')
print("begin to filter the pic")
dst_image = src_image.filter(ImageFilter.CONTOUR)
print("picture through filter")
dst_image.show()
liumiaocn:tmp liumiao$

執(zhí)行之后可以得到如下圖片

旋轉(zhuǎn)

使用rotate即可對圖片進行旋轉(zhuǎn)操作:

liumiaocn:tmp liumiao$ cat rotate.py 
#!/usr/local/bin/python
from PIL import Image
src_image = Image.open('/tmp/screen-grab-1.bmp')
print("begin to rotate the pic")
dst_image = src_image.rotate(90)
print("picture after rotating")
dst_image.show()
liumiaocn:tmp liumiao$

執(zhí)行之后,即可確認

Pillow功能非常之多,而且使用也很方便,比如resize對尺寸進行調(diào)節(jié),還可以添加文字等等常見的圖形處理操作,這里就不再一一介紹,具體的需要可以參看如下鏈接進行了解:https://pypi.org/project/Pillow/

總結(jié)

以上就是這篇文章的全部內(nèi)容了,希望本文的內(nèi)容對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,謝謝大家對腳本之家的支持。如果你想了解更多相關(guān)內(nèi)容請查看下面相關(guān)鏈接

相關(guān)文章

  • Python3實現(xiàn)發(fā)送郵件和發(fā)送短信驗證碼功能

    Python3實現(xiàn)發(fā)送郵件和發(fā)送短信驗證碼功能

    這篇文章主要介紹了Python3實現(xiàn)發(fā)送郵件和發(fā)送短信驗證碼功能,本文通過實例代碼給大家介紹的非常詳細,具有一定的參考借鑒價值,需要的朋友可以參考下
    2020-01-01
  • python基礎(chǔ)中的文件對象詳解

    python基礎(chǔ)中的文件對象詳解

    這篇文章主要為大家介紹了python基礎(chǔ)中的文件對象,具有一定的參考價值,感興趣的小伙伴們可以參考一下,希望能夠給你帶來幫助
    2022-01-01
  • Python中迭代器的創(chuàng)建與使用詳解

    Python中迭代器的創(chuàng)建與使用詳解

    Python中的迭代器是一個對象,用于迭代可迭代對象,如列表,元組,字典和集合,這篇文章主要為大家介紹了Python中迭代器的創(chuàng)建與使用,需要的可以參考下
    2023-08-08
  • 在Python中執(zhí)行異常處理的基本步驟

    在Python中執(zhí)行異常處理的基本步驟

    異常處理是編寫健壯、可靠和易于調(diào)試的Python代碼中不可或缺的一部分,下面這篇文章主要給大家介紹了關(guān)于在Python中執(zhí)行異常處理的基本步驟,需要的朋友可以參考下
    2024-08-08
  • python自動化測試selenium定位frame及iframe示例

    python自動化測試selenium定位frame及iframe示例

    這篇文章主要為大家介紹了python自動化測試selenium定位frame及iframe示例的示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助
    2021-11-11
  • 詳解python3 + Scrapy爬蟲學(xué)習(xí)之創(chuàng)建項目

    詳解python3 + Scrapy爬蟲學(xué)習(xí)之創(chuàng)建項目

    這篇文章主要介紹了python3 Scrapy爬蟲創(chuàng)建項目,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-04-04
  • python中count函數(shù)簡單用法

    python中count函數(shù)簡單用法

    在本篇文章里小編給大家整理的是一篇關(guān)于python中count函數(shù)簡單用法以及相關(guān)實例,需要的朋友們學(xué)習(xí)下。
    2020-01-01
  • python具名元組(namedtuple)的具體使用

    python具名元組(namedtuple)的具體使用

    本文主要介紹了python具名元組(namedtuple)的具體使用,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2023-03-03
  • Pycharm學(xué)習(xí)教程(4) Python解釋器的相關(guān)配置

    Pycharm學(xué)習(xí)教程(4) Python解釋器的相關(guān)配置

    這篇文章主要為大家詳細介紹了最全的Pycharm學(xué)習(xí)教程第四篇,Python解釋器配置,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2017-05-05
  • 對于Python中線程問題的簡單講解

    對于Python中線程問題的簡單講解

    這篇文章主要介紹了對于Python中線程問題的簡單講解,線程一直是Python編程當(dāng)中的熱點問題,而本文沒有涉及GIL線程鎖方面的內(nèi)容,需要的朋友可以參考下
    2015-04-04

最新評論