matlab显示tiff为全白_Matlab读写TIFF图像
为什么要写本文
科研图像处理中,尤其是涉及生物成像,图像数据格式基本是TIFF。天天打交道的小伙计,自然要深入了解一下啦。
Tiff是什么
Tiff是一种图像文件格式,和jpeg,png等等是一家人吧。Tiff好就好在它是多平台兼容,信息可以无压缩。关于tiff更多的信息可以戳下面这个链接获得。
一个豆知识:Tiff是tagged image file format的缩写。
如何在MATLAB中保存
实际上在Matlab里使用imwrite( )是可以保存单张tiff图像的,但在磕盐中经常要处理一个stack的图像,所以imwrite( )就无法满足啦。
不过Matlab里提供了LibTIFF库的MATLAB入口:Tiff( )。如果想要获得更详细的信息,自行 doc tiff就可以啦。下面只摘取与保存图像相关的。
1. 创建TIFF文件,设置文件访问格式
MATLAB函数:obj = Tiff(filename, mode)obj就是创建的Tiff对象
filename是文件名,要带上格式后缀吼,比如filename = ‘img.tiff’
mode是文件访问类型,默认是‘r’读,保存文件的话这里要修改。对于单张图像,改成 'w' 就好啦,如果是多张的话,改成 'a' 。文件格式说明
t = Tiff('img.tiff','w') %创建TIFF文件
2. 设置图像标记
创建文件后,在写入数据前,要先设置以下标记:ImageWidth:图像宽度
ImageLength:图像长度
BitsPerSample:比特数/一个像素样本。磕盐中常用的三种叭,8位,16位,32位。
SamplePerPixel:像素样本数/一个像素
PlanarConfiguration:存储配置。chunky是连续存储每个像素的分量值,seperate是分开存储每个通道。在磕盐中处理的大多数为单通道灰度图像,这个设置都可。
Photometric:图像数据颜色空间。有好多种可以选,具体可以doc看看。磕盐处理的灰度图像,一般选'MinIsBlack',即像素值为0时是黑色的。
SampleFormat:像素样本格式。uint8和uint16时选择'UInt',32位single时选'IEEEFP'(IEEE浮点数据)
Compression:磕盐中当然选无压缩啦
t.setTag('ImageLength', size(img,1));
t.setTag('ImageWidth', size(img,2));
t.setTag('Photometric', Tiff.Photometric.MinIsBlack); %图像数据的颜色空间
t.setTag('BitsPerSample', dtype); %数据位数
t.setTag('SamplesPerPixel', 1);
t.setTag('PlanarConfiguration', Tiff.PlanarConfiguration.Chunky);
t.setTag('Compression',Tiff.Compression.None); %无压缩
t.setTag('SampleFormat',sf); %像素样本格式
3. 把数据写入文件
写就完事惹
t.write(img);
t.close; %写完把文件关了
如何在MATLAB中读取
直接用imread( )的话只能读一张,读多张的话需要一波自行操作,写个循环反复读取拼接。
tiffInfo = imfinfo(filename); %返回图像结构,每张图像有一个元素
tiffStack = imread(filename, 1);
for idx = 2 : size(tiffInfo, 1)
tiffTemp = imread(filename, idx);
tiffStack = cat(3 , tiffStack, tiffTemp);
end
源码
让我捯饬一下塞到github仓库叭,有空了更新
matlab显示tiff为全白_Matlab读写TIFF图像相关推荐
- MATLAB,画一个全白的图
只用生成一个全白的图就OK 在这里插入代码片 clear all; cm = 0.01; um = 1e-6; nm = 1e-9; mm = 1e-3; lambda = 638.8*nm;Pitc ...
- matlab显示tiff为全白_请教Matlab图片如何转换成TIFF
我用Matlab(Version7.2, R2006a)生成了一些contour的figure,都粘贴到了word中,我想知道现在如何把word中的这些figure转成对应TIFF图片文件? 而且我还 ...
- latex 插入图片后不显示 图片是全白
图片是esp格式,保存方式与格式都正确 我遇到的是从excel的画图转存esp,它其实有一圈"白边",用ps把他白边去掉,保存esp格式就ok了
- matlab中imshow函数输出图像全白全黑问题
imshow 显示图像全白 在matlab中,为了保证精度,经过了运算的图像矩阵A其数据类型会从unit8型变成double型.imshow()显示图像时对double型是认为在0-1范围内,即大于1 ...
- matlab显示的图片,手动保存时四周有白边
matlab显示的图片,或者用matlab画出来的图片,手动保存时四周有白边. girl = imread('girl.jpg'); imshow(girl); 用File-Save或者Save As ...
- 超简单PictureSelector使用,从相册中选取多张图片并显示再列表中,微信样式,解决相册全白问题,可以拖拽删除并排序
PictureSelector原项目地址 相册全白是因为在初始化的过程中缺少了一样设置 .loadImageEngine(GlideEngine.createGlideEngine()) 想要微信那样 ...
- MATLAB app designer 自动全屏显示
MATLAB app designer 自动全屏显示 两步完成: 单击UIfigure 更改position([0,0,1920,1080],其中(0,0)表示窗口左上角的起始位置在屏幕的左上角,(1 ...
- matlab计算一组数的函数值_matlab中怎么求一组数据概率最大的数
好象直接使用就可以了,第一次出现就包含了定义 顺便把些命令弄给你看下 matlab命令 matlab commands and functions list A a abs 绝对值.模.字符的ASCI ...
- imshow与显示图像时的全白问题
参考文档: https://zhidao.baidu.com/question/506147511.html http://blog.csdn.net/watkinsong/article/detai ...
- MATLAB实现实时录音,语音采集与读写用matlab实现录音以及语谱图的绘制.pdf
<语音信号处理>仿真作业 院 系 电气与电子工程学院 专业班级 姓 名 学 号 指导教师 2020 年 3 月 作业题目:语音采集与读写 一.目的 (1)了解matlab 采集语音信号的原 ...
最新文章
- TensorFlow创建DeepDream网络
- QT的QMessageBox类的使用
- 面向对象——案例练习(3)判断两个立方体是否相等
- scala学习 之 及 基本和高级用法(二)
- 打开方式中选择默认方式无反映_「Windows」得看,更改文件的默认应用,告别“打开方式”...
- mac 查看指定端口情况 并杀死该进程
- javascript 西瓜一期 02 编程语言与标记语言的区别
- 访问受限 诺基亚禁止Navifirm获取固件(图)
- 理解并取证:IPv6与IPv4在报文结构上的区别
- matlab 数字基带,基于MATLAB的数字基带传输的 FIR滤波器的设计
- 数据解读 | 川菜出圈只靠辣?你太小瞧川菜了
- 薅羊毛算副业吗?薅羊毛到底是怎么赚钱的?
- r语言把两个折线图图像放到一个图里_OpenCV计算机视觉学习(10)——图像变换(傅里叶变换,高通滤波,低通滤波)...
- matlab dx dy dt,dx/dt=y,dy/dt=-sinx,求大神帮忙编一个MATL? 爱问知识人
- 【UV打印机】理光喷头组合说明(16H)
- 管理学原理试题及答案
- 简易记账开发笔记之GridLayout
- 如何知道自己计算机的IP,怎么知道自己电脑的ip地址,手把手教你查询电脑ip地址...
- java基础十一---Socket
- table doesn‘t exist
热门文章
- 【爬虫实战】7基础Python网络爬虫——淘宝商品比价定向爬虫(MOOC学习笔记)
- python修改屏幕分辨率_Python 脚本中不同平台显示器分辨率的坐标转换
- 程序员如何保护自己的颈椎?颈椎操
- Intel CPU 微架构的演进与发展
- Pisces的属性配置文件加载
- Arcgis进行人口密度计算
- Excel文件减肥修复终极办法----解决Excel文件打开慢的问题
- 双显示器 启动黑屏 黑苹果_黑苹果开机加载黑屏
- 【百战GAN】SRGAN人脸低分辨率老照片修复代码实战
- 2tb的硬盘容量在计算机中识别的容量为,硬盘容量限制又来了,用2T以上硬盘的要注意了...