python數(shù)字圖像處理skimage讀取顯示與保存圖片
引言
skimage提供了io模塊,顧名思義,這個(gè)模塊是用來圖片輸入輸出操作的。為了方便練習(xí),也提供一個(gè)data模塊,里面嵌套了一些示例圖片,我們可以直接使用。
引入skimage模塊可用:
from skimage import io
一、從外部讀取圖片并顯示
讀取單張彩色rgb圖片,使用skimage.io.imread(fname)函數(shù),帶一個(gè)參數(shù),表示需要讀取的文件路徑。顯示圖片使用skimage.io.imshow(arr)函數(shù),帶一個(gè)參數(shù),表示需要顯示的arr數(shù)組(讀取的圖片以numpy數(shù)組形式計(jì)算)。
from skimage import io
img=io.imread('d:/dog.jpg')
io.imshow(img)
讀取單張灰度圖片,使用skimage.io.imread(fname,as_grey=True)函數(shù),第一個(gè)參數(shù)為圖片路徑,第二個(gè)參數(shù)為as_grey, bool型值,默認(rèn)為False
from skimage import io
img=io.imread('d:/dog.jpg',as_grey=True)
io.imshow(img)
二、程序自帶圖片
skimage程序自帶了一些示例圖片,如果我們不想從外部讀取圖片,就可以直接使用這些示例圖片:
astronaut | 宇航員圖片 | coffee | 一杯咖啡圖片 | lena | lena美女圖片 |
camera | 拿相機(jī)的人圖片 | coins | 硬幣圖片 | moon | 月亮圖片 |
checkerboard | 棋盤圖片 | horse | 馬圖片 | page | 書頁(yè)圖片 |
chelsea | 小貓圖片 | hubble_deep_field | 星空?qǐng)D片 | text | 文字圖片 |
clock | 時(shí)鐘圖片 | immunohistochemistry | 結(jié)腸圖片 |
|
顯示這些圖片可用如下代碼,不帶任何參數(shù)
from skimage import io,data img=data.lena() io.imshow(img)

圖片名對(duì)應(yīng)的就是函數(shù)名,如camera圖片對(duì)應(yīng)的函數(shù)名為camera(). 這些示例圖片存放在skimage的安裝目錄下面,路徑名稱為data_dir,我們可以將這個(gè)路徑打印出來看看:
from skimage import data_dir print(data_dir)
顯示為:D:\Anaconda3\lib\site-packages\skimage\data
也就是說,下面兩行讀取圖片的代碼效果是一樣的:
from skimage import data_dir,data,io img1=data.lena() #讀取lean圖片 img2=io.imread(data_dir+'/lena.png') #讀取lena圖片
三、保存圖片
使用io模塊的imsave(fname,arr)函數(shù)來實(shí)現(xiàn)。第一個(gè)參數(shù)表示保存的路徑和名稱,第二個(gè)參數(shù)表示需要保存的數(shù)組變量。
from skimage import io,data
img=data.chelsea()
io.imshow(img)
io.imsave('d:/cat.jpg',img)保存圖片的同時(shí)也起到了轉(zhuǎn)換格式的作用。如果讀取時(shí)圖片格式為jpg圖片,保存為png格式,則將圖片從jpg圖片轉(zhuǎn)換為png圖片并保存。
四、圖片信息
如果我們想知道一些圖片信息,可以在spyder編輯器的右上角顯示:

也可以直接以程序方式打印輸出
from skimage import io,data img=data.chelsea() io.imshow(img) print(type(img)) #顯示類型 print(img.shape) #顯示尺寸 print(img.shape[0]) #圖片寬度 print(img.shape[1]) #圖片高度 print(img.shape[2]) #圖片通道數(shù) print(img.size) #顯示總像素個(gè)數(shù) print(img.max()) #最大像素值 print(img.min()) #最小像素值 print(img.mean()) #像素平均值
結(jié)果輸出:
<class 'numpy.ndarray'>
(300, 451, 3)
300
451
3
405900
231
0
115.305141661

以上就是python數(shù)字圖像處理skimage讀取顯示與保存圖片的詳細(xì)內(nèi)容,更多關(guān)于python skimage讀取顯示保存圖片的資料請(qǐng)關(guān)注腳本之家其它相關(guān)文章!
相關(guān)文章
Python中LSTM回歸神經(jīng)網(wǎng)絡(luò)時(shí)間序列預(yù)測(cè)詳情
這篇文章主要介紹了Python中LSTM回歸神經(jīng)網(wǎng)絡(luò)時(shí)間序列預(yù)測(cè)詳情,文章圍繞主題展開詳細(xì)的內(nèi)容介紹,具有一定的參考價(jià)值,需要的朋友可以參考一下2022-07-07
Python常用列表數(shù)據(jù)結(jié)構(gòu)小結(jié)
這篇文章主要介紹了Python常用列表數(shù)據(jù)結(jié)構(gòu)小結(jié),很有參考借鑒價(jià)值,需要的朋友可以參考下2014-08-08
十行Python代碼實(shí)現(xiàn)文字識(shí)別功能
這篇文章主要和大家分享如何調(diào)用百度的接口實(shí)現(xiàn)圖片的文字識(shí)別。整體是用Python實(shí)現(xiàn),所需要使用的第三方庫(kù)包括aip、PIL、keyboard、pyinstaller,需要的可以參考一下2022-05-05
利用Python實(shí)現(xiàn)自動(dòng)生成小學(xué)生計(jì)算題
過年期間發(fā)現(xiàn)小外甥已經(jīng)上小學(xué)了,我姐說老師今天給他們布置了寒假作業(yè):每天堅(jiān)持做乘法和加減法混合運(yùn)算。這我必須幫幫忙,用Python寫了一段自動(dòng)生成小學(xué)生計(jì)算題的代碼,希望外甥不要太感謝我2023-02-02
Python+Pygame實(shí)戰(zhàn)之詩(shī)詞填空游戲的實(shí)現(xiàn)
成語(yǔ)接龍大家都玩過,但詩(shī)詞填空大家玩過嗎?把成語(yǔ)接龍變成填空題。難度可上漲了不止一個(gè)檔次呢!本文就來用Python和Pygame實(shí)現(xiàn)詩(shī)詞填空游戲,需要的可以參考一下2022-12-12
Django使用paginator插件實(shí)現(xiàn)翻頁(yè)功能的實(shí)例
今天小編就為大家分享一篇關(guān)于Django使用paginator插件實(shí)現(xiàn)翻頁(yè)功能的實(shí)例,小編覺得內(nèi)容挺不錯(cuò)的,現(xiàn)在分享給大家,具有很好的參考價(jià)值,需要的朋友一起跟隨小編來看看吧2018-10-10
單鏈表反轉(zhuǎn)python實(shí)現(xiàn)代碼示例
這篇文章主要介紹了單鏈表反轉(zhuǎn)python實(shí)現(xiàn),分享了相關(guān)代碼示例,小編覺得還是挺不錯(cuò)的,具有一定借鑒價(jià)值,需要的朋友可以參考下2018-02-02

