基于MATLAB的医学图像配准算法仿真
Posted fpga和matlab
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了基于MATLAB的医学图像配准算法仿真相关的知识,希望对你有一定的参考价值。
目录
一、理论基础
其中h表示二维空间坐标变换,g表示灰度或辐射变换,描述因传感器类型的不同或辐射变形所引入的图像变换。配准的目的就是要找出最佳的空间和几何变换参数。
·刚体变换
如果第一幅图像中的一条直线经过变换后映射到第二幅图像上仍然为直线,并且保持平行关系,则这样的变换称为仿射变换。仿射变换可以分解为线性(矩阵)变换和平移变换。在二维空间中,点(x,y)经仿射变换到点(x',y')的变换公式为:
·仿射变换
如果第一幅图像中的一条直线经过变换后映射到第二幅图像上仍然为直线,并且保持平行关系,则这样的变换称为仿射变换。仿射变换可以分解为线性(矩阵)变换和平移变换。在二维空间中,点(x,y)经仿射变换到点(x',y')的变换公式为:
·投影变换
如果第一幅图像中的一条直线经过变换后映射到第二幅图像上仍然为直线,但平行关系基本不保持,则这样的变换称为投影变换。投影变换可用高维空间上的线性(矩阵)变换来表示。在高维空间中,点(x,y)经投影变换到点(x',y')的变换公式为:
二、案例背景
1.问题描述
医学图像配准和医学图像融合有着密切的关系,特别是对多模态图像而言,配准和融合是密不可分的。待融合的图像往往来自于不同的成像设备,它们的成像方位、角度和分辨率等因子都是不同的,所以这些图像中相应组织的位置、大小等都有差异,若事先不对融合图像进行空间上的对准,那么融合后的图像豪无意义。因此,图像配准是图像融合的先决条件,必须先进行配准变换,才能实现准确地融合。医学图像配准是医学图像处理的一项基本任务,它可以把来自不同模态或不同时间的多幅图像进行配准,然后为图像的后处理提供保证。如在医学图像融合中,需要将相对应的组织结构融合在一起,而待融合的图像往往来自于不同的成像设备,它们的成像方位、角度和分辨率等因子都是不同的,所以这些图像中相应组织的位置、大小等都有差异,必须先进行配准变换,才能实现准确地融合。
2.思路流程
图像配准就是将不同时间、不同传感器(成像设备)或不同条件下(天候、照度、摄像位置和角度等)获取的两幅或多幅图像进行匹配、叠加的过程,它已经被广泛地应用于遥感数据分析、计算机视觉、图像处理等领域。配准技术的流程如下:首先对两幅图像进行特征提取得到特征点;通过进行相似性度量找到匹配的特征点对;然后通过匹配的特征点对得到图像空间坐标变换参数:最后由坐标变换参数进行图像配准。而特征提取是配准技术中的关键,准确的特征提取为特征匹配的成功进行提供了保障。
三、部分MATLAB程序
待拼接的图像加载
image1 = double(imread('1.jpg'));[h1 w1 d1] = size(image1);
image2 = double(imread('2.jpg'));[h2 w2 d2] = size(image2);
手动获取特征点
figure; subplot(1,2,1); image(image1/255); axis image; hold on;
[X1 Y1] = ginput2(point_number);
subplot(1,2,2); image(image2/255); axis image; hold on;
[X2 Y2] = ginput2(point_number);
进行图像的配准拼接
Z = [ X2' Y2' ; Y2' -X2' ; 1 1 0 0 ; 0 0 1 1 ]';
xp = [ X1 ; Y1 ];
t = Z \\ xp;
a = t(1);
b = t(2);
tx = t(3);
ty = t(4);
T = [a b tx ; -b a ty ; 0 0 1];
%计算大小
cp = T*[ 1 1 w2 w2 ; 1 h2 1 h2 ; 1 1 1 1 ];
Xpr = min( [ cp(1,:) 0 ] ) : max( [cp(1,:) w1] );
Ypr = min( [ cp(2,:) 0 ] ) : max( [cp(2,:) h1] );
[Xp,Yp] = ndgrid(Xpr,Ypr);
[wp hp] = size(Xp);
%变化
X = T \\ [ Xp(:) Yp(:) ones(wp*hp,1) ]';
clear Ip;
xI = reshape( X(1,:),wp,hp)';
yI = reshape( X(2,:),wp,hp)';
Ip(:,:,1) = interp2(image2(:,:,1), xI, yI, '*bilinear'); % red
Ip(:,:,2) = interp2(image2(:,:,2), xI, yI, '*bilinear'); % green
Ip(:,:,3) = interp2(image2(:,:,3), xI, yI, '*bilinear'); % blue
offset = -round( [ min( [ cp(1,:) 0 ] ) min( [ cp(2,:) 0 ] ) ] );
Ip(1+offset(2):h1+offset(2),1+offset(1):w1+offset(1),:) = double(image1(1:h1,1:w1,:));
四、仿真结论分析
对测试图像,手动选择·2个特征点配准
图1 获得特征点
图2 配准以后的图像
改变特征点的位置:
图3 重新获得特征点
图4 配准以后的图像2
五、算法相关应用
目前提出的图像配准方法大多为基于灰度的配准方法和基于特征的配准方法。基于灰度的配准方法存在如下缺点:1.对图像的灰度变化比较敏感,尤其是非线性的光照变化,将大大降低算法的性能;2.计算的复杂度高;3.对目标的旋转、形变以及遮挡比较敏感。而基于特征的匹配算法可以克服基于灰度的配准方法的缺点,是实现高精度、快速有效和适用性广的配准算法的最佳选择,从而在图像配准领域得到了广泛应用。
通过对各类图像配准方法的研究,我们可以看到图像配准方法是强依赖于图像本身的。也就是说,往往不同的图像配准方法都是针对不同类型的图像的配准问题的。到目前为止,尚不存在任何一种图像配准方法能适用于各种图像配准问题。毕竟图像配准的应用领域就很广泛。面对的不同类型的图像也千差万别。因此,图像配准方法研究的两个重要的目标是:一方面提高其有效性、准确性和快速性;另一方面也力求能扩展其适用性和应用领域。本文所提出的方法也不例外。另外,对于算法的评价也是多方面的,如算法执行速度、自动化程度、配准结果的准确性等。不幸的是没有一种方法能够在各个方面都达到理想要求,这使得我们不得不在精确度、速度、人工干预等方面加以取舍。
图像配准在未来有着广泛的领用领域,除了医学图像配准之外,在VR,多媒体,图像传输,三维重建等诸多领域均有着较好的使用前景。
六、参考文献
[01]C.Studholme,D,L.G.Hill,and D Hawkes.An overlap invariant entropy measure of 3D medieal image alignment[J].Pattern Reeognition.1998,Vol.32no.1A09-01
[02]GaensT,Maes F,and Suetens P.Norigid multimodal image registration using mutual information[C].Medieal Image Computing and ComPute-Assisted Intervention-MICCAI.1998
以上是关于基于MATLAB的医学图像配准算法仿真的主要内容,如果未能解决你的问题,请参考以下文章
基于Affine-SURF-GTM的图像配准算法研究和matlab仿真
基于affine+sift特征提取的图像配准算法matlab仿真
Matlab/CV系列基于SIFT/SURF配准和小波变换图像融合Matlab仿真