佳木斯湛栽影视文化发展公司

主頁 > 知識庫 > python讀取并顯示圖片的三種方法(opencv、matplotlib、PIL庫)

python讀取并顯示圖片的三種方法(opencv、matplotlib、PIL庫)

熱門標(biāo)簽:Win7旗艦版 客戶服務(wù) 語音系統(tǒng) 電話運(yùn)營中心 百度AI接口 呼叫中心市場需求 企業(yè)做大做強(qiáng) 硅谷的囚徒呼叫中心

前言

在進(jìn)行圖像處理時,經(jīng)常會用到讀取圖片并顯示出來這樣的操作,所以本文總結(jié)了python中讀取并顯示圖片的3種方式,分別基于opencv、matplotlib、PIL庫實(shí)現(xiàn),并給出了示例代碼,介紹如下。

OpenCV

OpenCV是一個基于BSD許可(開源)發(fā)行的跨平臺計(jì)算機(jī)視覺和機(jī)器學(xué)習(xí)軟件庫,可以運(yùn)行在Linux、Windows、Android和Mac OS操作系統(tǒng)上。 它輕量級而且高效——由一系列 C 函數(shù)和少量 C++ 類構(gòu)成,同時提供了Python、Ruby、MATLAB等語言的接口,實(shí)現(xiàn)了圖像處理和計(jì)算機(jī)視覺方面的很多通用算法。

import matplotlib.pyplot as plt # plt 用于顯示圖片
import cv2

#opencv的顏色通道順序?yàn)閇B,G,R],而matplotlib顏色通道順序?yàn)閇R,G,B],所以需要調(diào)換一下通道位置
img1 = cv2.imread('./Lena.png')[:,:,(2,1,0)] # 讀取和代碼處于同一目錄下的 lena.png
img2 = cv2.imread('./Lena.png')[:,:,(2,1,0)]

#結(jié)果展示
plt.rcParams['font.sans-serif'] = ['SimHei']  # 中文亂碼
plt.subplot(121)
#imshow()對圖像進(jìn)行處理,畫出圖像,show()進(jìn)行圖像顯示
plt.imshow(img1)

plt.title('圖像1')
#不顯示坐標(biāo)軸
plt.axis('off')

#子圖2
plt.subplot(122)
plt.imshow(img2)
plt.title('圖像2')
plt.axis('off')

# #設(shè)置子圖默認(rèn)的間距
plt.tight_layout()
#顯示圖像
plt.show()

Matplotlib

Matplotlib 是 Python 的繪圖庫。 它可與 NumPy 一起使用,提供了一種有效的 MatLab 開源替代方案。 它也可以和圖形工具包一起使用,如 PyQt 和 wxPython。

import matplotlib.pyplot as plt # plt 用于顯示圖片
import matplotlib.image as mpimg # mpimg 用于讀取圖片

img1 = mpimg.imread('./Lena.png') # 讀取和代碼處于同一目錄下的 lena.png
img2=mpimg.imread('./Lena.png')

#結(jié)果展示
plt.rcParams['font.sans-serif'] = ['SimHei']  # 中文亂碼
plt.subplot(121)
#imshow()對圖像進(jìn)行處理,畫出圖像,show()進(jìn)行圖像顯示
plt.imshow(img1)

plt.title('圖像1')
#不顯示坐標(biāo)軸
plt.axis('off')

#子圖2
plt.subplot(122)
plt.imshow(img2)
plt.title('圖像2')
plt.axis('off')

# #設(shè)置子圖默認(rèn)的間距
plt.tight_layout()
#顯示圖像
plt.show()

PIL

PIL(Python Image Library)是python的第三方圖像處理庫,但是由于其強(qiáng)大的功能與眾多的使用人數(shù),幾乎已經(jīng)被認(rèn)為是python官方圖像處理庫了。。。

PIL可以做很多和圖像處理相關(guān)的事情:

  • 圖像歸檔(Image Archives)。
  • 圖像展示(Image Display)。
  • 圖像處理(Image Processing)。
import matplotlib.pyplot as plt # plt 用于顯示圖片
from PIL import Image

img1 = Image.open('./Lena.png')
img2 = Image.open('./Lena.png')

#結(jié)果展示
plt.rcParams['font.sans-serif'] = ['SimHei']  # 中文亂碼
plt.subplot(121)
plt.imshow(img1)
plt.title('圖像1')
#不顯示坐標(biāo)軸
plt.axis('off')

#子圖2
plt.subplot(122)
plt.imshow(img2)
plt.title('圖像2')
plt.axis('off')

# #設(shè)置子圖默認(rèn)的間距
plt.tight_layout()
#顯示圖像
plt.show()

運(yùn)行結(jié)果

總結(jié)

到此這篇關(guān)于python讀取并顯示圖片的三種方法的文章就介紹到這了,更多相關(guān)python讀取顯示圖片內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

您可能感興趣的文章:
  • Python matplotlib實(shí)用繪圖技巧匯總
  • python使用matplotlib顯示圖像失真的解決方案
  • 基于python的matplotlib制作雙Y軸圖
  • 用Python的繪圖庫(matplotlib)繪制小波能量譜
  • python matplotlib繪圖實(shí)現(xiàn)刪除重復(fù)冗余圖例的操作
  • Python基礎(chǔ)之畫圖神器matplotlib
  • python 如何在 Matplotlib 中繪制垂直線
  • 利用Python matplotlib繪制風(fēng)能玫瑰圖
  • python 繪圖模塊matplotlib的使用簡介
  • python之 matplotlib和pandas繪圖教程
  • python matplotlib工具欄源碼探析二之添加、刪除內(nèi)置工具項(xiàng)的案例
  • Python繪圖庫Matplotlib的基本用法

標(biāo)簽:喀什 安康 海南 長沙 山西 山西 濟(jì)南 崇左

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《python讀取并顯示圖片的三種方法(opencv、matplotlib、PIL庫)》,本文關(guān)鍵詞  ;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請?zhí)峁┫嚓P(guān)信息告之我們,我們將及時溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。
  • 相關(guān)文章
  • 收縮
    • 微信客服
    • 微信二維碼
    • 電話咨詢

    • 400-1100-266
    阆中市| 武川县| 福泉市| 峨边| 阳曲县| 聂拉木县| 常德市| 潞西市| 金阳县| 商水县| 长兴县| 宁安市| 云南省| 繁峙县| 稻城县| 云林县| 那坡县| 辽阳市| 五常市| 黄陵县| 合山市| 新营市| 柳州市| 赤城县| 灵川县| 大厂| 黑山县| 祁阳县| 法库县| 九江县| 文登市| 梁河县| 大厂| 霸州市| 贡觉县| 岚皋县| 余庆县| 江源县| 昌平区| 大荔县| 南木林县|