Chinaunix首页 | 论坛 | 博客
  • 博客访问: 74556
  • 博文数量: 35
  • 博客积分: 0
  • 博客等级: 民兵
  • 技术积分: 12
  • 用 户 组: 普通用户
  • 注册时间: 2015-03-26 20:17
文章分类
文章存档

2015年(35)

我的朋友

分类:

2015-03-26 20:22:23

很多mri的软件都可以将dicom的图像转化为analyze75格式的图像,即一组二维的图像转化为一个三维的图像文件。很少看到反过来转化的。最近刚好有这样的一个需求,简单琢磨了一下,记下来。用的是matlab
%读取analyze75的函数是 analyze75info和analyze75read 其中fpath是analyze75文件的路径,即hdr文件的路径。
Info = analyze75info(fpath);
Img = analyze75read(Info);
%得到三维图像的大小
[m_height,m_width,m_Thick]=size(Img);
%写入dicom 文件,其中ff为指定的文件夹
    for i=1 : m_Thick
        ff1=[ff,int2str(i)];
        ff1=[ff1,'.dcm'];
          pp=Img1(1:m_height,1:m_width,i);
          %imshow(pp);
          dicomwrite(pp,ff1);
    end
%以上是横断面的图像,如果需要冠状面和矢状面的图像,可以用shiftdim将Img三维矩阵转化一下来完成,如下:
Img2=shiftdim(Img,1);    %冠状面
Img3=shiftdim(Img,2);    %矢状面
阅读(1474) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~