好湿?好紧?好多水好爽自慰,久久久噜久噜久久综合,成人做爰A片免费看黄冈,机机对机机30分钟无遮挡

主頁 > 知識(shí)庫 > python imread函數(shù)詳解

python imread函數(shù)詳解

熱門標(biāo)簽:ai電銷機(jī)器人源碼 ai電話機(jī)器人哪里好 地圖標(biāo)注審核表 長沙高頻外呼系統(tǒng)原理是什么 百度地圖標(biāo)注沒有了 湛江智能外呼系統(tǒng)廠家 宿遷星美防封電銷卡 外呼并發(fā)線路 西藏房產(chǎn)智能外呼系統(tǒng)要多少錢

Python 中各種imread函數(shù)的區(qū)別與聯(lián)系

最近一直在用python做圖像處理相關(guān)的東西,被各種imread函數(shù)搞得很頭疼,因此今天決定將這些imread總結(jié)一下,以免以后因此犯些愚蠢的錯(cuò)誤。如果你正好也對此感到困惑可以看下這篇總結(jié)。當(dāng)然,要了解具體的細(xì)節(jié),還是應(yīng)該 read the fuck codeAPI document,但貌似python的很多模塊文檔都不是很全,所以只能多看代碼和注釋了。

先來看看常用的讀取圖片的方式:

  • PIL.Image.open
  • scipy.misc.imread
  • scipy.ndimage.imread
  • cv2.imread
  • matplotlib.image.imread
  • skimge
  • caffe.io.load_iamge

這些方法可以分為四大家族

PIL

PIL.Image.open + numpy
scipy.misc.imread
scipy.ndimage.imread

這些方法都是通過調(diào)用PIL.Image.open 讀取圖像的信息;
PIL.Image.open 不直接返回numpy對象,可以用numpy提供的函數(shù)進(jìn)行轉(zhuǎn)換,參考Image和Ndarray互相轉(zhuǎn)換;
其他模塊都直接返回numpy.ndarray對象,通道順序?yàn)镽GB,通道值得默認(rèn)范圍為0-255。

matplotlib

matplot.image.imread

從名字中可以看出這個(gè)模塊是具有matlab風(fēng)格的,直接返回numpy.ndarray格式通道順序是RGB,通道值默認(rèn)范圍0-255。

opencv

cv2.imread

使用opencv讀取圖像,直接返回numpy.ndarray 對象,通道順序?yàn)?strong>BGR ,注意是BGR,通道值默認(rèn)范圍0-255。

skimage

skimage.io.imread: 直接返回numpy.ndarray 對象,通道順序?yàn)镽GB,通道值默認(rèn)范圍0-255。
caffe.io.load_image: 沒有調(diào)用默認(rèn)的skimage.io.imread,返回值為0-1的float型數(shù)據(jù),通道順序?yàn)镽GB

關(guān)于圖像的一些說明

可以使用matplotlib的pyplot模塊的show也可以使用cv2的imshow方法,對于這些方法只要你傳入的參數(shù)是numpy.ndarray(通道值范圍0-255) 就可以正常顯示,不存在區(qū)別,這也可以看出numpy在python中的重要地位;但是cv2.imshow方法由于它針對的是cv2的imread 所以它內(nèi)部會(huì)做通道順序的變化,傳入為BGR轉(zhuǎn)換為RGB,所以你如果傳入RGB顯示的就是BGR了。廢話說完了,看代碼。

以下是測試代碼

運(yùn)行環(huán)境為windows10+python3.6

#encoding=utf8
from PIL import Image
import numpy as np
import cv2
import matplotlib.pyplot as plt # plt 用于顯示圖片
import matplotlib.image as mpimg # mpimg 用于讀取圖片
import skimage
import sys
from skimage import io 

#PIL
#相關(guān):scipy.misc.imread, scipy.ndimage.imread
#misc.imread 提供可選參數(shù)mode,但本質(zhì)上是調(diào)用PIL,具體的模式可以去看srccode或者document
#https://github.com/scipy/scipy/blob/v0.17.1/scipy/misc/pilutil.py
imagepath='test1.jpg'
im1=Image.open(imagepath)
im1=np.array(im1)#獲得numpy對象,RGB
print(type(im1))
print(im1.shape)

#2 opencv 
im2=cv2.imread(imagepath)
print(type(im2))#numpy BGR
print(im2.shape)#[width,height,3]

#3 matplotlib 類似matlab的方式
im3 = mpimg.imread(imagepath)
print(type(im3))#np.array
print(im3.shape)

#4 skimge 
#caffe.io.load_iamge()也是調(diào)用的skimage實(shí)現(xiàn)的,返回的是0-1 float型數(shù)據(jù)
im4 = io.imread(imagepath)
print(type(im4))#np.array
print(im4.shape)
#print(im4)


# cv2.imshow('test',im4)
# cv2.waitKey()
#統(tǒng)一使用plt進(jìn)行顯示,不管是plt還是cv2.imshow,在python中只認(rèn)numpy.array,但是由于cv2.imread 的圖片是BGR,cv2.imshow 時(shí)相應(yīng)的換通道顯示
plt.subplot(221)
plt.title('PIL read')
plt.imshow(im1)
plt.subplot(222)
plt.title('opencv read')
plt.imshow(im2)
plt.subplot(223)
plt.title('matplotlib read')
plt.imshow(im3)
plt.subplot(224)
plt.title('skimage read')
plt.imshow(im4)
#plt.axis('off') # 不顯示坐標(biāo)軸
plt.show()

##################################### cmd output################################
# class 'numpy.ndarray'>
# (851, 1279, 3)
# class 'numpy.ndarray'>
# (851, 1279, 3)
# class 'numpy.ndarray'>
# (851, 1279, 3)
# class 'numpy.ndarray'>
# (851, 1279, 3)

測試結(jié)果

總結(jié)

雖然python中沒有顯示的數(shù)據(jù)類型聲明,但是在編程的過程中自己必須得清楚數(shù)據(jù)類型是什么,否則就有可能犯一些愚蠢的錯(cuò)誤。

到此這篇關(guān)于python imread函數(shù)詳解的文章就介紹到這了,更多相關(guān)python imread函數(shù)內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

您可能感興趣的文章:
  • Python入門教程2. 字符串基本操作【運(yùn)算、格式化輸出、常用函數(shù)】
  • Python中使用pprint函數(shù)進(jìn)行格式化輸出的教程
  • python中re.findall函數(shù)實(shí)例用法
  • Python函數(shù)基礎(chǔ)
  • Python torch.flatten()函數(shù)案例詳解
  • Python之基礎(chǔ)函數(shù)案例詳解
  • Python 函數(shù)簡單易理解版
  • python機(jī)器學(xué)習(xí)高數(shù)篇之函數(shù)極限與導(dǎo)數(shù)
  • python中super()函數(shù)的理解與基本使用
  • Python如何使用print()函數(shù)輸出格式化字符串
  • python中map()函數(shù)使用方法詳解
  • python之多種方式傳遞函數(shù)方法案例講解
  • Python類的高級函數(shù)詳解
  • 10個(gè)有用的Python字符串函數(shù)小結(jié)
  • 關(guān)于Python OS模塊常用文件/目錄函數(shù)詳解
  • python用函數(shù)創(chuàng)造字典的實(shí)例講解
  • Python常見的函數(shù)及格式化輸出

標(biāo)簽:普洱 海南 南平 林芝 漯河 盤錦 大同 寧夏

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《python imread函數(shù)詳解》,本文關(guān)鍵詞  python,imread,函數(shù),詳解,python,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請?zhí)峁┫嚓P(guān)信息告之我們,我們將及時(shí)溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《python imread函數(shù)詳解》相關(guān)的同類信息!
  • 本頁收集關(guān)于python imread函數(shù)詳解的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章
    主站蜘蛛池模板: 性生活一级大片| 丝袜 制服 有码 超碰 97| 帅气体育生gary网站mv宏翔| 一个人免费观看www| 精品国产日韩亚洲一区二区在线| 小丹慢慢张开双腿淑芬视频| 成**人50岁一级毛片不卡| 白丝美女被啪羞羞粉色视频| 啊?用力?嗯?轻一点雷安| 久久久久久精品免费免费阿潘迪| 成人三级在线观看| 日批免费看| 国产精品久久久久久爽歪歪屁屁| 91在线无码精品秘?入口麻| 韩国情事伦理片观看地址| 久青草免费视频手机在线观看| 床伴小说| 好紧?好硬?好硬?爽田| 亚洲精品久久久无码AⅤ片恋情 | 传媒果冻传媒在线观看| 三年大片观看免费大全| 男男XXOO做爰猛烈gi| 绫清竹疯狂迎合娇吟h文| 6∧嗯~啊~轻一点????麻豆| 国产91一区二区在线| 男女性色大片免费网站| 黄色一级大片视频| 小奴男跪趴撅打屁股打烂| 色鬼艳女理伦片在线播放| 欧美美足美脚一区二区| 久久亚洲国产精品五月天| 强行挺进赵丽颖的后臀小说| 和黑帮大佬的365天第二部电影无删减| 欧美 国产 亚洲 另类 动漫| 三级经典在线观看| free japan porn xxx| 男人强撕开奶罩揉吮在线视频| 色AV在线香蕉国产亚洲| 好大好深受不了了快进来| 我和大佬365天的第二季| 2022国产麻豆剧果冻传媒入口|