numpy与Image互转以及它们的size不同,还有关于plt

 相互转化:

from PIL import Image  
import numpy as np
im = Image.open("/home/lw/a.jpg")
im.show() 
img = np.array(im)      # image类 转 numpy
img = img[:,:,0]        #第1通道
im=Image.fromarray(img) # numpy 转 image类
im.show() 

转载https://blog.csdn.net/liuweizj12/article/details/80221537

 size不同:可以看到numpy类型都是hxw,而PIL的是wxh

另外我们可以看到scipy.misc和matplotlib.pyplot读取图片得到的数据类型是一样的。

from PIL import Image
import scipy.misc
import numpy as np
import matplotlib.pyplot as plt

a=scipy.misc.imread('/home/zzp/Test/a3.jpg')
scipy.misc.imshow(a)
print('a.shape='+str(a.shape),type(a))
b=Image.open('/home/zzp/Test/a3.jpg')
b.show()
print('b.size='+str(b.size),'b.width='+str(b.width),'b.height='+str(b.height),type(b),b.mode,b.format)
c=np.array(b)
print('c.shape='+str(c.shape),type(c))
img = plt.imread('/home/zzp/Test/a3.jpg')
plt.imshow(img)
plt.show()
print('img.shape'+str(img.shape),type(img))
# 输出如下
'''
a.shape=(375, 500, 3) <class 'numpy.ndarray'>
b.size=(500, 375) b.width=500 b.height=375 <class 'PIL.JpegImagePlugin.JpegImageFile'> RGB JPEG
c.shape=(375, 500, 3) <class 'numpy.ndarray'>
img.shape(375, 500, 3) <class 'numpy.ndarray'>
'''

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值