一区二区三区在线-一区二区三区亚洲视频-一区二区三区亚洲-一区二区三区午夜-一区二区三区四区在线视频-一区二区三区四区在线免费观看

腳本之家,腳本語言編程技術及教程分享平臺!
分類導航

Python|VBS|Ruby|Lua|perl|VBA|Golang|PowerShell|Erlang|autoit|Dos|bat|

服務器之家 - 腳本之家 - Python - Python中讀取圖片的6種方式

Python中讀取圖片的6種方式

2020-11-05 00:06AI入門學習小伍哥 Python

Python進行圖片處理,第一步就是讀取圖片,這里給大家整理了6種圖片的讀取方式,并將讀取的圖片裝換成numpy.ndarray()格式。

Python進行圖片處理,第一步就是讀取圖片,這里給大家整理了6種圖片的讀取方式,并將讀取的圖片裝換成numpy.ndarray()格式。首先需要準備一張照片,假如你有女朋友的話,可以用女朋友的,沒有的話,那還學啥Python,趕緊找對象去吧!

 

一、OpenCV讀取圖片

OpenCV讀取的圖片,直接就是numpy.ndarray格式,無需轉換

import cv2 

img_cv   = cv2.imread(dirpath)#讀取數據 

print("img_cv:",img_cv.shape) 

img_cv: (1856, 2736, 3) 

print("img_cv:",type(img_cv)) 

img_cv: <class 'numpy.ndarray'> 

#看下讀取的數據怎么樣 

img_cv 

array([[[  0,   3,   0], 

        [ 11,  20,  17], 

        ..., 

        [  5,  23,  16]], 

       [[  0,   2,   0], 

        ..., 

        [  5,  23,  16]]] 

二、PIL讀取圖片

PIL讀取的圖片并不是直接的numpy.ndarray格式,需要進行轉換

from PIL import Image 

import numpy as np 

 

img_PIL = Image.open(dirpath)#讀取數據 

 

print("img_PIL:",img_PIL) 

img_PIL: <PIL.JpegImagePlugin.JpegImageFile image mode=RGB size=2736x1856 at 0x2202A8FC108> 

 

print("img_PIL:",type(img_PIL)) 

img_PIL: <class 'PIL.JpegImagePlugin.JpegImageFile'> 

 

#將圖片轉換成np.ndarray格式 

img_PIL = np.array(img_PIL) 

print("img_PIL:",img_PIL.shape) 

img_PIL: (1856, 2736, 3) 

print("img_PIL:",type(img_PIL)) 

img_PIL: <class 'numpy.ndarray 

三、keras讀取圖片

keras深度學習的框架,里面也是內置了讀取圖片的模塊,該模塊讀取的也不是數組格式,需要進行轉換。

from keras.preprocessing.image import array_to_img, img_to_array 

 

load_imgload_imgimg_keras = load_img(dirpath)#讀取數據 

 

print("img_keras:",img_keras) 

img_keras: <PIL.JpegImagePlugin.JpegImageFile image mode=RGB size=2736x1856 at 0x2201D184BC8> 

 

print("img_keras:",type(img_keras)) 

img_keras: <class 'PIL.JpegImagePlugin.JpegImageFile'> 

 

#使用keras里的img_to_array() 

img_keras = img_to_array(img_keras) 

print("img_keras:",img_keras.shape) 

img_keras: (1856, 2736, 3) 

print("img_keras:",type(img_keras)) 

img_keras: <class 'numpy.ndarray'> 

 

#可以使用使用np.array()進行轉換 

mg_kerasnp.array(img_keras) 

四、skimage讀取圖片

scikit-image是基于scipy的一款圖像處理包,它將圖片作為numpy數組進行處理,讀取的數據正好是numpy.ndarray格式。

import skimage.io as io 

img_io = io.imread(dirpath)#讀取數據 

 

print("img_io :",img_io .shape) 

img_io : (1856, 2736, 3) 

 

print("img_io :",type(img_io )) 

img_io : <class 'numpy.ndarray' 

五、matplotlib.image讀取圖片

利用matplotlib.image讀取的圖片,直接就生成了數組格式

import matplotlib.image as mpig

img_mpig = mpig.imread(dirpath)#讀取數據 

 

print("img_mpig :",img_mpig .shape) 

img_mpig : (1856, 2736, 3) 

 

print("img_mpig :",type(img_mpig )) 

img_mpig : <class 'numpy.ndarray' 

六、matplotlib.pyplot讀取圖片

利用matplotlib.pyplot讀取的圖片,同樣也是直接就生成了數組格式

import matplotlib.pyplot as plt 

img_plt = plt.imread(dirpath) 

print("img_plt :",img_plt .shape) 

img5: (1856, 2736, 3) 

print("img_plt :",type(img_plt )) 

img5: <class 'numpy.ndarray'> 

七、顯示讀取的圖片

同樣,使用matplotlib 包可以打印出來讀取的照片,要打印上述案例中讀取的照片,只需要下面兩行代碼就行了。

plt.imshow(img_plt , cmap=plt.cm.binary) 

plt.show() 

Python中讀取圖片的6種方式

圖片三通道的,打印其中一個通道

plt.imshow(img_plt[:,:,1] , cmap=plt.cm.binary) 

plt.show() 

Python中讀取圖片的6種方式

當然,我們可以隨便構造一個數組,可以顯示出來

digit  =  [[135,26,33,12],[14,27,43,190],[120,124,134,205]] 

plt.imshow(digit, cmap=plt.cm.binary) 

plt.show() 

Python中讀取圖片的6種方式

延伸 · 閱讀

精彩推薦
主站蜘蛛池模板: 俄罗斯伦理片 | 亚洲精品有码在线观看 | 天天干夜夜拍 | 九九精品国产 | 国产第一草草影院 | 韩国www | 日韩精品一区二区三区中文在线 | 大象视频污 | 欧美一区二区免费 | 免费我看视频在线观看 | 天天做天天爽天天谢 | 美女禁区视频无遮挡免费看 | 91对白在线 | 日本免费看 | 桃色导航 | 5g影院天天5g爽天天看 | 99久久精品国产综合一区 | 欧美在线国产 | 双性肉文高h | 第一次破女视频国产一级 | 猫扑俩性 | 成人国产第一区在线观看 | 青春草在线观看精品免费视频 | 久久无码AV亚洲精品色午夜麻豆 | 欧美日韩精品一区二区三区高清视频 | 精品无人区麻豆乱码1区2 | 国产伦精品一区二区三区免费迷 | japanese在线看 | 国产1广场舞丰满老女偷 | 欧美成人日韩 | 日本性生活大片 | 91赵邦贺| 国产裸舞福利资源在线视频 | 三极片在线观看 | 亚洲福利电影一区二区? | 亚洲狠狠婷婷综合久久蜜桃 | 成人久久18免费网站入口 | 日韩在线观看免费 | 日韩在线观看一区二区不卡视频 | 秀婷程仪公欲息肉婷在线观看 | 久久久免费热线精品频 |