这里用到了两个处理TIFF图片的库:libtiff 和 tifffile

libtiff里面的TIFF提供了读取TIFF图片的功能,但是如果使用它提供的示例代码保存3D TIFF则会乱码(TIFF文件乱码)。因此又尝试了tifffile,保存成功。

代码如下:

# coding: utf-8
import os
import numpy as np
from libtiff import TIFF
import tifffilevolume = []
Files_Path = './volume' #把你的所有图片放在py文件同目录下的volume文件夹
imgList = os.listdir(Files_Path) #读取文件目录下的所有文件名
imgList.sort(key=lambda x: int(x.split('.')[0]))  # 按照数字顺序排列图片,图片名示例:1.tif, 2.tif, 3.tif, 4.tif, 5.tif ...
for count in range(0, len(imgList)):tif = TIFF.open(Files_Path + '/' + imgList[count], mode='r')tif = np.array(list(tif.iter_images()))if tif.shape[0] == 1:tif = tif.squeeze(0)else:assert tif.shape[0] == 1volume.append(tif)
volume = np.array(volume)
print('Read success.')
tifffile.imsave(Files_Path + '.tif', volume)

经过测试,我发现volume文件夹里面的图片数量需要在5个以上(包含5个),否则输出的并不是3D TIFF。或许有大佬有兴趣扒一下底层代码。

我上传了程序和5张2D TIFF图片可供测试,解压运行即可:

链接:https://pan.baidu.com/s/1Z_1BBpOl8ssbxbcZyQUd1w 
        提取码:wrtb

Python将多张2D TIFF图片转为一个3D TIFF文件相关推荐

  1. 多张连续帧图片转为视频,万能转换工具!(Ubuntu系统下亲测有效!)

    大家好,我是AI菌.前几天,有小伙伴私信问我,怎样可以将多张连续的图片转为一个视频.作为程序员界暖男的我,怎么会坐视不管呢?今天我就来分享一个简单的方法,来解决连续帧转视频的问题! 一.安装menco ...

  2. 如何把微信中的多个图片转为一个pdf文件?

    如何把微信中的多个图片转为一个pdf文件? 1.  用360安全浏览器打开相关微信的连接. 2 浏览相关微信的图片,直至所有的微信图片都能看见 3 点击鼠标右键,点击"全屏查看" ...

  3. python实现多张多格式图片转PDF并打包成exe

    目录 主要思路 转PDF初始代码 转PDF最终代码 GUI界面设计代码 打包成可执行文件 完整代码 附录 主要思路 从文件夹中读取图片数据,然后将他们保存为PDF格式. 转PDF初始代码 不长,大概1 ...

  4. Python 批量将raw数据或图片一一存成.npy文件

    深度学习神经网络训练读入的都是numpy数组,一般直接读取图片在做预处理送入模型训练时很浪费时间的,我们可以提前将数据转成.npy格式的文件,并且数据的预处理也可以在这里完成.那么,将预处理好的数据直 ...

  5. python读取tiff影像_python+tifffile之tiff文件读写方式

    背景 使用python操作一批同样分辨率的图片,合并为tiff格式的文件. 由于opencv主要用于读取单帧的tiff文件,对多帧的文件支持并不好. 通过搜索发现了两个比较有用的包:TiffCaptu ...

  6. 为什么要将图片转为base64格式

    图片的 base64 编码就是可以将一副图片数据编码成一串字符串,使用该字符串代替图像地址; 1. 提升性能: 网页上的每一个图片,都是需要消耗一个 http 请求下载而来的, 图片的下载始终都要向服 ...

  7. 【好用的办公软件】万彩办公大师教程丨TIFF图片合并分割工具

    关于万彩办公大师的TIFF图片合并分割工具 TIFF图片合并分割工具,能将tiff文件的多个图片分割成单页的bmp/jpg/png/tif/gif图片格式,反过来也能把bmp/jpg/png/tif/ ...

  8. python合并txt文本_Python实现将目录中TXT合并成一个大TXT文件的方法

    本文实例讲述了Python实现将目录中TXT合并成一个大TXT文件的方法.分享给大家供大家参考.具体如下: 在网上下了一个dota的英雄攻略,TXT格式,每个英雄一个文件,看得疼,就写了一个小东西,合 ...

  9. JavaScript实现图片旋转构成3D圆环代码

    代码简介: 很炫的图片展示特效,由一组图片构成一个3D的圆环状,并自动旋转,鼠标放到某一图片上会自动停止,JavaScript 的功能真够强大,你是不是后悔没有学好JS呢? 代码内容: View Co ...

最新文章

  1. 你现在还在使用刷脸支付吗?不,刷手支付已来!!!不侵犯隐私、秒速支付...
  2. mysql sql模式_MySQL SQL模式特点汇总
  3. 集合上二元关系性质判定的实现(python实现)
  4. 服务器内存傲腾基本参数信息,服务器加傲腾内存
  5. mybatis执行批量更新batch update 的方法(oracle,mysql)
  6. SDL教程4——在VS2010中设置SDL扩展库
  7. NeHe OpenGL教程 第四十五课:顶点缓存
  8. 支持向量机的基本原理
  9. 渗透测试教程(基础篇)-2
  10. 怎么删除win10系统的AdobeFlash
  11. PPT视频教程哪里下载?
  12. 能同时模拟键盘及鼠标的神器--51单片机可控制
  13. unity3d用sever还是php,unity3d教程
  14. svm和k-最近邻_使用K最近邻的电影推荐和评级预测
  15. Python LeetCode(13.罗马数字转整数)
  16. 在使用 bitvise SSH client时,进行隧道S2C端口映射时,远程主机外网不能访问问题。
  17. IOST节点计划全面升级: 全球寻找1000位IOST合伙人
  18. ArcGIS编辑绘制图斑又慢又难?这些高效的处理技巧你值得拥有!
  19. 乐视网CEO梁军:现在就是缺钱 正在重新学习做生意 2017年09月20日01:18 新京报 37 微博 微信 QQ空间 添加喜爱 乐视网CEO梁军。 新京报记者 吴江 摄乐视网CEO梁军。 新京
  20. Android商城开发系列

热门文章

  1. 基于android的网上点餐系统设计,基于Android的点餐系统设计与实现
  2. 在国内发展,有IPMP证书有用吗?
  3. 故宫景点功课11:后三宫区(下)
  4. CatfishCMS任意命令执行导致getshell
  5. html5 canvas 扫雷游戏
  6. 【Vue源码解读】万行源码详细解读
  7. 刀剑无双服务器显示404,刀剑无双
  8. 3年Java后端开发面试题总结
  9. Python 网络爬虫基础知识及体验
  10. Scikit-learn学习系列 | 4. sklearn特征降维方法汇总(方差过滤,卡方,F过滤,互信息,嵌入法)