python3讀取圖像並可視化的方法(PIL/Pillow、opencv/cv2)


原圖:

 

 

使用TensorFlow做圖像處理的時候,會對圖像進行一些可視化的操作。下面,就來列舉一些我知道的圖像讀取並可視化的方法。

1. Pillow模塊

1.1 Pillow模塊的前生

Pillow就是python2中的 PIL 模塊。PIL模塊(Python Imaging Library)是Python的一個強大方便的圖像處理庫,不過只支持到 Python2.7。

Pillow是PIL的一個派生分支,但如今已發展為比PIL本身更具活力的Python圖像處理庫。

1.2 Pillow模塊的安裝

pillow的安裝也分兩種,第一種通過 CMD命令行模式直接 pip。不過我在安裝的時候出了錯,大概是網絡原因。於是我用pycharm直接進行安裝,沒有出現問題

CMD安裝命令:pip install Pillow

1.3 使用Pillow模塊進行可視化

1.3.1 導入Pillow模塊:

import PIL
或者
from PIL import Image

如果寫 import Pillow 就會報錯“ModuleNotFoundError: No module named 'Pillow'”,這可能是因為Pillow是從PIL派生出來的原因吧。

1.3.2 Image.open(img_path).convert()

convert()
convert()是圖像實例對象的一個方法,接受一個 mode 參數,用以指定一種色彩模式
1 ------------------(1位像素,黑白,每字節一個像素存儲)
L ------------------(8位像素,黑白)
P ------------------(8位像素,使用調色板映射到任何其他模式)
RGB------------------(3x8位像素,真彩色)
RGBA------------------(4x8位像素,帶透明度掩模的真彩色)
CMYK--------------------(4x8位像素,分色)
YCbCr--------------------(3x8位像素,彩色視頻格式)
I-----------------------(32位有符號整數像素)
F------------------------(32位浮點像素)

 

1.3.3 代碼,直接105, 106兩行代碼就夠了:

 

 效果:

 

 

 默認用畫圖工具打開。

如果將convert() 參數改為 '1',效果如下:

 

 剩下的參數不再一一使用。

2. cv2模塊讀取圖像,matplotlib可視化展示

2.1 cv2模塊的安裝

pip install opencv-python

如果無法安裝或安裝后出現問題,可以試試pycharm或在官網下載安裝包進行手動安裝。

2.2 matplotlib為Python自帶,無需安裝

2.3 代碼:

 

 結果如下:

 

 圖像為什么跟原始圖像的色彩不一樣,或者說像是顏色被翻轉了似的,因為cv2與matplotlib的顯示模式不一致,opencv讀取的彩色圖像是BGR格式,Matplotlib顯示彩色圖像是RGB格式。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM