笔记:python中存储16bit和32bit图像的方法。
说明:主要是利用scipy库和pillow库,比较其中的不同。
''' 测试16bit和32bit图像的python存储方法 ''' import numpy as np import scipy.misc from PIL import Image # 用已有的8bit和16bit图作存储测试 path16 = 'D:\Py_exercise\lena16.tif' path8 = 'D:\Py_exercise\lena8.tif' tif16 = scipy.misc.imread(path16) #<class 'numpy.uint16'> tif8 = scipy.misc.imread(path8) #<class 'numpy.uint8'> print(np.shape(tif16),type(tif16[0,0])) print(np.shape(tif8),type(tif8[0,0])) print() save16 = 'D:\Py_exercise\lena16_save.tif' save8 = 'D:\Py_exercise\lena8_save.tif' scipy.misc.imsave(save16, tif16) #--> 8bit scipy.misc.imsave(save8, tif8) #--> 8bit # Create a mat which is 64 bit float nrows = 512 ncols = 512 np.random.seed(12345) y = np.random.randn(nrows, ncols)*65535 #<class 'numpy.float64'> print(type(y[0,0])) print() # Convert y to 16 bit unsigned integers z16 = (y.astype(np.uint16)) #<class 'numpy.uint16'> print(type(z16[0,0])) print() # 用产生的随机矩阵作存储测试 save16 = 'D:\Py_exercise\lena16_save1.tif' scipy.misc.imsave(save16, z16) #--> 8bit im = Image.frombytes('I;16', (ncols,nrows), y.tostring()) im.save('D:\Py_exercise\lena16_save21.tif') #--> 16bit im = Image.fromarray(y) im.save('D:\Py_exercise\lena16_save22.tif') #--> 32bit im = Image.fromarray(z16) im.save('D:\Py_exercise\lena16_save23.tif') #--> 16bit # 归一化后的np.float64仍然存成了uint8 zNorm = (z16-np.min(z16))/(np.max(z16)-np.min(z16)) #<class 'numpy.float64'> print(type(zNorm[0,0])) save16 = 'D:\Py_exercise\lena16_save11.tif' scipy.misc.imsave(save16, zNorm) #--> 8bit # 归一化后的np.float64直接转8bit或16bit都会超出阈值,要*255或*65535 # 如果没有astype的位数设置,会直接存成32bit zImg = (zNorm*65535).astype(np.uint16) im = Image.fromarray(zImg) im.save('D:\Py_exercise\lena16_save31.tif') #--> 16bit im = Image.fromarray(zNorm) im.save('D:\Py_exercise\lena16_save32.tif') #--> 32bit(0~1)
以上这篇python存储16bit和32bit图像的实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持。
华山资源网 Design By www.eoogi.com
广告合作:本站广告合作请联系QQ:858582 申请时备注:广告合作(否则不回)
免责声明:本站资源来自互联网收集,仅供用于学习和交流,请遵循相关法律法规,本站一切资源不代表本站立场,如有侵权、后门、不妥请联系本站删除!
免责声明:本站资源来自互联网收集,仅供用于学习和交流,请遵循相关法律法规,本站一切资源不代表本站立场,如有侵权、后门、不妥请联系本站删除!
华山资源网 Design By www.eoogi.com
暂无评论...
《魔兽世界》大逃杀!60人新游玩模式《强袭风暴》3月21日上线
暴雪近日发布了《魔兽世界》10.2.6 更新内容,新游玩模式《强袭风暴》即将于3月21 日在亚服上线,届时玩家将前往阿拉希高地展开一场 60 人大逃杀对战。
艾泽拉斯的冒险者已经征服了艾泽拉斯的大地及遥远的彼岸。他们在对抗世界上最致命的敌人时展现出过人的手腕,并且成功阻止终结宇宙等级的威胁。当他们在为即将于《魔兽世界》资料片《地心之战》中来袭的萨拉塔斯势力做战斗准备时,他们还需要在熟悉的阿拉希高地面对一个全新的敌人──那就是彼此。在《巨龙崛起》10.2.6 更新的《强袭风暴》中,玩家将会进入一个全新的海盗主题大逃杀式限时活动,其中包含极高的风险和史诗级的奖励。
《强袭风暴》不是普通的战场,作为一个独立于主游戏之外的活动,玩家可以用大逃杀的风格来体验《魔兽世界》,不分职业、不分装备(除了你在赛局中捡到的),光是技巧和战略的强弱之分就能决定出谁才是能坚持到最后的赢家。本次活动将会开放单人和双人模式,玩家在加入海盗主题的预赛大厅区域前,可以从强袭风暴角色画面新增好友。游玩游戏将可以累计名望轨迹,《巨龙崛起》和《魔兽世界:巫妖王之怒 经典版》的玩家都可以获得奖励。
更新日志
2024年09月22日
2024年09月22日
- 魔兽世界地心之战武器战用什么饰品 地心之战武器战饰品推荐
- 仙境传说新启航一区是哪个区 仙境传说一区服务器介绍
- 叶倩文2014《影视金曲》LPCD45【WAV+CUE】
- 张国荣1996-哥哥的前半生[华星]2CD[WAV]
- 银霞.1981-《泥泞中的小花·期待》台湾复刻版[WAV+CUE]
- PS掌机游玩《宇宙机器人》体验测试 玩家:这游戏就得用便携模式玩!
- 《黑神话:悟空》角色游戏内形象与86版西游记对比:这版本太经典了
- 《尘白禁区》凯茜娅泳装视频:碧海之中摇曳的少女们
- 林珊如.1997-神秘的感觉【鸿谷唱片】【WAV+CUE】
- 群星.1991-8大巨星展魅力【新丽声】【WAV+CUE】
- 群星.2021-流金岁月电视剧原声带【仁溪音乐】【FLAC分轨】
- 魔兽世界地心之战踏风武僧用什么饰品 地心之战踏风武僧饰品推荐
- 仙境传说新启航新手职业怎么选 仙境传说新手职业推荐
- 魔兽世界地心之战酒仙武僧用什么饰品 地心之战酒仙武僧饰品推荐
- 王菲.2001-《菲经典DSD》引进版[WAV+CUE]