国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

(P4)Python plt顯示和保存圖像(cv2、Image)

這篇具有很好參考價(jià)值的文章主要介紹了(P4)Python plt顯示和保存圖像(cv2、Image)。希望對(duì)大家有所幫助。如果存在錯(cuò)誤或未考慮完全的地方,請(qǐng)大家不吝賜教,您也可以點(diǎn)擊"舉報(bào)違法"按鈕提交疑問(wèn)。

Python plt顯示圖片

概述

對(duì)這篇博客內(nèi)容的最最簡(jiǎn)要的總結(jié),便于快速抓要點(diǎn)

# 顯示曲線
plt.plot(x,y)
# 顯示圖像
plt.imshow(image)
# 顯示曲線/圖片時(shí)需要的一行。本地可以顯示,服務(wù)器不太行
plt.show() 
plt.savefig('xx.png') # 保存圖片 fig.savefig('xx.png') 功能相同
# 保存圖片在本地需要寫(xiě)明圖片完整目錄,服務(wù)器中默認(rèn)保存在當(dāng)前執(zhí)行目錄

一、繪制曲線并顯示 plt.plot

以下是一張圖中包含多張小圖 的三種不同寫(xiě)法的匯總和拆解。

匯總 ?

plt.subplot(221)
plt.plot(x, y)

fig,axes=plt.subplots(2,2)
ax1=axes[0,0]
ax1.plot(x, y)

fig = plt.figure(figsize=(6, 3)) # 指定畫(huà)圖的大小
ax = fig.add_subplot(1, 2, 1)
ax.plot(x, y)

寫(xiě)法一

plt.subplot(221)
plt.plot(x, x)
plt.show()  /  %matplotlib inline # %的寫(xiě)法只在Jupyter中生效,見(jiàn)文末附錄說(shuō)明
import numpy as np  
import matplotlib.pyplot as plt  
x = np.arange(1, 101)  
#作圖1
plt.subplot(221)  
plt.plot(x, x)  
#作圖2
plt.subplot(222)  
plt.plot(x, -x)  
 #作圖3
plt.subplot(223)  
plt.plot(x, x ** 2)  
plt.grid(color='r', linestyle='--', linewidth=1, alpha=0.3)
#作圖4
plt.subplot(224)  
plt.plot(x, np.log(x))  
plt.show()  # 刪除本行,增加%matplotlib inline 也可以顯示出圖像 

plt保存圖像,python基礎(chǔ)知識(shí)積累,python

寫(xiě)法二

fig,axes=plt.subplots(2,2)
ax1=axes[0,0]
ax1.plot(x, x)
plt.show() 
import numpy as np  
import matplotlib.pyplot as plt

x = np.arange(1, 101)  
#劃分子圖
fig,axes=plt.subplots(2,2)
ax1=axes[0,0]
ax2=axes[0,1]
ax3=axes[1,0]
ax4=axes[1,1]


#作圖1
ax1.plot(x, -x)  
#作圖2
ax2.plot(x, x)
 #作圖3
ax3.plot(x, x ** 2)
ax3.grid(color='r', linestyle='--', linewidth=1,alpha=0.3)
#作圖4
ax4.plot(x, np.log(x))  
plt.show() 

plt保存圖像,python基礎(chǔ)知識(shí)積累,python

寫(xiě)法三

fig = plt.figure(figsize=(6, 3)) # 指定畫(huà)圖的大小
ax = fig.add_subplot(1, 2, 1)
ax.plot(x, y)
plt.show() 
import numpy as np
import matplotlib.pyplot as plt
# %matplotlib inline

fig = plt.figure(figsize=(6, 3))
ax = fig.add_subplot(1, 2, 1)
x = np.linspace(-5, 5, 100)
y = x**2
ax.plot(x, y, 'r-')

ax = fig.add_subplot(1, 2, 2)
x = np.linspace(-5, 5, 100)
y = x**3
ax.plot(x, y, 'r-')

plt.show() 

plt保存圖像,python基礎(chǔ)知識(shí)積累,python

二、打開(kāi)圖片并顯示 plt.imshow

已知的讀取圖片方式有兩種:cv2、Image,初略講解如下,有需要更多講解的再單獨(dú)整合。

寫(xiě)法一 cv2

參考資料
opencv 因?yàn)闅v史原因, 讀入的圖片的格式是BGRmatplotlib的圖片格式默認(rèn)是RGB格式的。所以,當(dāng)用cv2讀入圖片然后用matplotlib顯示的時(shí)候,R通道變成了B通道, B通道變成了R通道, 所以顯示會(huì)很陰間。如果想要正確顯示圖像,就需要使用cvtColor進(jìn)行顏色空間的轉(zhuǎn)換,從BGR轉(zhuǎn)換為RGB。

關(guān)鍵代碼

image = cv2.imread(image_path)
image = cv2.cvtColor(image, cv2.COLOR_BGR2RGB)
fig, ax = plt.subplots(1,2)
ax[0].imshow(image)
cv2.imwrite("1.jpg",image) # 保存圖片

舉例

import cv2
import matplotlib.pyplot as plt
image_path = r"C:\\Users\\shmily\\Desktop\\file1.jpg"
image = cv2.imread(image_path)
h, w, _ = image.shape
image_size = 448
img = cv2.resize(image, dsize=(image_size, image_size), interpolation=cv2.INTER_LINEAR)
h1, w1, _ = img.shape
print(h,w,h1,w1)

fig, ax = plt.subplots(1,2)
image = cv2.cvtColor(image, cv2.COLOR_BGR2RGB) 	# 改變顯示的顏色
img = cv2.cvtColor(img, cv2.COLOR_BGR2RGB) 
ax[0].imshow(image) # ,cmp='gray')
ax[1].imshow(img)
plt.show()

不進(jìn)行 cv2.cvtColor 的結(jié)果

plt保存圖像,python基礎(chǔ)知識(shí)積累,python

進(jìn)行了顏色轉(zhuǎn)變的結(jié)果
plt保存圖像,python基礎(chǔ)知識(shí)積累,python

寫(xiě)法二 Image

關(guān)鍵代碼

img = np.array(Image.open(img_path)) 
plt.figure()
plt.imshow(img)

舉例

from PIL import Image
import numpy as np
import matplotlib.pyplot as plt
img_path = r"C:\\Users\\shmily\\Desktop\\file1.jpg"
img = np.array(Image.open(img_path)) 
plt.figure()
plt.imshow(img)
plt.show()

附錄

1、%matplotlib inline 說(shuō)明

plt保存圖像,python基礎(chǔ)知識(shí)積累,python

2、隨手補(bǔ)充內(nèi)容

隱藏坐標(biāo)系文章來(lái)源地址http://www.zghlxwxcb.cn/news/detail-820468.html

plt.axis('off')

到了這里,關(guān)于(P4)Python plt顯示和保存圖像(cv2、Image)的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來(lái)自互聯(lián)網(wǎng)用戶投稿,該文觀點(diǎn)僅代表作者本人,不代表本站立場(chǎng)。本站僅提供信息存儲(chǔ)空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請(qǐng)注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實(shí)不符,請(qǐng)點(diǎn)擊違法舉報(bào)進(jìn)行投訴反饋,一經(jīng)查實(shí),立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

  • Python使用CV2庫(kù)捕獲、播放和保存攝像頭視頻

    Python使用CV2庫(kù)捕獲、播放和保存攝像頭視頻

    關(guān)于cv2庫(kù)的安裝和使用基礎(chǔ)可參見(jiàn)https://blog.csdn.net/cnds123/article/details/126547307 特別提示:CV2指的是OpenCV2(Open Source Computer Vision Library),安裝的時(shí)候是 opencv_python,但在導(dǎo)入的時(shí)候采用 import cv2。 學(xué)習(xí)本文需要你的計(jì)算機(jī)有攝像頭,筆記本一般內(nèi)置有攝像頭,若是臺(tái)式機(jī)可以連

    2024年02月03日
    瀏覽(20)
  • cv2讀取視頻-并保存圖像或視頻

    @TOC cv2讀取視頻的一般流程 獲取視頻 cap = cv2.VideoCapture() 判斷獲取的視頻是否成功,成功讀取視頻對(duì)象則返回True。 cap.isOpened() 按幀讀取 ret, frame = cap.read() 展示圖像 cv2.waitKey(1) 讀取本地文件視頻并展示

    2024年02月11日
    瀏覽(21)
  • opencv(4): cv2.imwrite()圖像的保存

    語(yǔ)法格式:retval = cv2.imwrite(filename, image [, paras]) 參數(shù)說(shuō)明: filename :代表文件名的字符串。文件名必須包含圖像格式,例如.jpg,.png等。 image :圖像數(shù)據(jù)矩陣 paras: 不同編碼格式的參數(shù),可選項(xiàng) cv2.CV_IMWRITE_JPEG_QUALITY :設(shè)置 .jpeg/.jpg 格式的圖片質(zhì)量,取值為 0-100(默認(rèn)值 95)

    2024年02月01日
    瀏覽(101)
  • opencv視頻截取每一幀并保存為圖片python代碼CV2實(shí)現(xiàn)練習(xí)

    當(dāng)涉及到視頻處理時(shí),Python中的OpenCV庫(kù)提供了強(qiáng)大的功能,可以方便地從視頻中截取每一幀并將其保存為圖片。這是一個(gè)很有趣的練習(xí),可以讓你更深入地了解圖像處理和多媒體操作。 使用OpenCV庫(kù),你可以輕松地讀取視頻文件,并在循環(huán)中逐幀讀取視頻的每一幀。隨后,你可

    2024年02月12日
    瀏覽(31)
  • cv2問(wèn)題:AttributeError: ‘NoneType‘ object has no attribute ‘shape‘及CV2顯示、保存圖片

    輸出: 原因: 圖片路徑中存在中文,改成英文就ok了。 注意: img.shape 的返回值是(像素h, 像素w, 圖片通道數(shù))格式的元組。 補(bǔ)充: 1.讀取圖片 參數(shù)解析: 2.顯示圖片 cv2.imshow()函數(shù)在一個(gè)窗口中顯示圖片,窗口自適應(yīng)圖片的大小 參數(shù): 注意: 因?yàn)槲覀兊某绦蚴琼樞驁?zhí)行,

    2024年02月14日
    瀏覽(29)
  • Python OpenCV 圖像縮放:使用 cv2.resize() 方法

    圖像縮放是計(jì)算機(jī)視覺(jué)和圖像處理中常用的操作之一。OpenCV 是一個(gè)強(qiáng)大的計(jì)算機(jī)視覺(jué)庫(kù),提供了許多圖像處理功能。在 Python 中使用 OpenCV 進(jìn)行圖像縮放非常簡(jiǎn)單,可以使用 cv2.resize() 方法來(lái)實(shí)現(xiàn)。 cv2.resize() 方法可以根據(jù)指定的尺寸調(diào)整圖像的大小。它可以縮小圖像,也可以

    2024年02月02日
    瀏覽(98)
  • opencv-python[cv2]讀取中文路徑圖像

    opencv-python[cv2]讀取中文路徑圖像

    隨著AI人工智能的不斷發(fā)展,圖像處理這門(mén)技術(shù)也越來(lái)越重要,很多學(xué)校本科都開(kāi)啟了圖像處理這門(mén)課程,學(xué)習(xí)圖像處理開(kāi)發(fā),自然就繞不開(kāi)opencv-python[ cv2 ]這個(gè)由intel主導(dǎo)的開(kāi)源庫(kù)。 cv2 是指OpenCV的Python接口庫(kù)。 OpenCV (Open Source Computer Vision Library)是一個(gè)開(kāi)源的計(jì)算機(jī)視覺(jué)庫(kù)

    2024年02月06日
    瀏覽(41)
  • 【Python/Opencv】圖像權(quán)重加法函數(shù):cv2.addWeighted()詳解

    【Python/Opencv】圖像權(quán)重加法函數(shù):cv2.addWeighted()詳解

    在OpenCV圖像加法cv2.add函數(shù)詳解詳細(xì)介紹了圖像的加法運(yùn)算。 除了這種加法外,OpenCV還提供了帶權(quán)重的加法,即兩副圖像的像素通道值相加時(shí)各自按一定的權(quán)重比例取值來(lái)相加。 假設(shè)有2個(gè)圖像矩陣src1和src2,在兩個(gè)圖像融合時(shí),各自的權(quán)重分別為alpha和beta,則二者融合后的目

    2024年02月15日
    瀏覽(164)
  • 【Python小技巧】更換python版本解決了plt.show()不顯示圖像的問(wèn)題

    【Python小技巧】更換python版本解決了plt.show()不顯示圖像的問(wèn)題

    提示:文章寫(xiě)完后,目錄可以自動(dòng)生成,如何生成可參考右邊的幫助文檔 運(yùn)行完,什么圖也沒(méi)渲染出來(lái),python運(yùn)行卻結(jié)束了。你是不是也碰到過(guò)類(lèi)似df.plot() 不顯示圖形的問(wèn)題? 使用matplotlib時(shí)經(jīng)常發(fā)生plt.show()之后不顯示圖像的情況,查網(wǎng)上說(shuō),在代碼中添加以下2行代碼即可

    2024年02月08日
    瀏覽(19)
  • opencv-python3 | cv2.findContours()檢測(cè)圖像中物體輪廓

    opencv-python3 | cv2.findContours()檢測(cè)圖像中物體輪廓

    輪廓可以簡(jiǎn)單地理解為連接所有連續(xù)點(diǎn)(沿物體邊界)的曲線,這些點(diǎn)通常具有相同的顏色或強(qiáng)度。 輪廓在圖像分析中具有重要意義,是物體形狀分析和對(duì)象檢測(cè)和識(shí)別的有用工具,是理解圖像語(yǔ)義信息的重要依據(jù)。 通常,為了提高物體輪廓檢測(cè)的準(zhǔn)確率,首先要將彩色圖

    2024年02月05日
    瀏覽(33)

覺(jué)得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請(qǐng)作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包