您好!我想请问您,用dicomread这个函数读取多帧dicom图像这个函数究竟应该怎么用啊?拜托了!
发布网友
发布时间:2022-05-10 17:09
我来回答
共1个回答
热心网友
时间:2022-05-10 18:38
使用方法:
X = dicomread(filename)
通过数字影像和通信标准文件的文件名读取图像数据。对于单帧灰度图像,X是一个MxN的矩阵;对于单帧真彩图像,X是一个MxNx3的矩阵。对于多帧图像X是个四维矩阵。
X = dicomread(info)
从DICOM元数据结构信息中读取图像数据。结构信息由dicominfo函数给出
Matlab中文论坛
[X,map] = dicomread(...)
返回图像X以及图像表map,如果X是灰度图像或是真彩图像,map为空矩阵。
[X,map,alpha] = dicomread(...)
返回图像X、图像表map、以及为X生成的一个alpha通道矩阵,如果像素不透明,alpha的值为0,否则他们按行储存到map。 Matlab中文论坛
[X,map,alpha,overlays] = dicomread(...)
返回图像X、图像表map、为X生成的一个alpha通道矩阵、以及与DICOM文件重叠区域。每块重叠区域是与X等宽等高的1位黑白图像。如果出现多重覆盖,覆盖区域为一个4 维德多帧图像。如果没有重叠区域overlays为空。
book.iLoveMatlab.cn
[...] = dicomread(filename, 'frames', v)
只读取图像中在向量v中指明的帧,v必须是整形的。默认值为“all”
应用举例:
利用dicomread函数获得数据矩阵X、颜色表map,需要用到montage函数
[X, map] = dicomread('US-PAL-8-10x-echo.dcm');
montage(X, map, 'Size', [2 5]); Matlab中文论坛追问v要求是列向量吗,是指定从第几帧到第几帧,还是指定从哪个文件名到那个文件名呢?前面的filename如果输入的是文件夹名就会出现错误,说该文件不存在,那应该输入什么呢?