您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 公司方案 > Radon变换说明及matlab例子
Radon变换:又称为HoughTransform(数字图像处理课程里学过——数字图像处理课件3-P37)考虑b=ax+y,将原来的XY平面内的点映射到AB平面上。则原来在XY平面上的一条直线的所有的点,在AB平面上都位于同一个点。通过记录下AB平面上的点的积累厚度,可反知XY面上的一条线的存在。在新平面下得到相应的点积累的峰值,可得出原平面的显著的线集。例如:XY平面上的一个直线y=2x-3;变换-3=-2x+y;其中:a=-2,b=-3若有两个点在XY平面:(0,-3),(2,1),此两点都过直线,则可知有AB平面上,此两点在(-2,-3)AB平面上。一种更好的表示方法是用和来代替ab。即:xcos+ysin=以图像的中心为极坐标原点,直线X`即为新的投影坐标,为角度。我们所要求的原坐标上的一条直线,是一条垂直于上图X`的一条直线,而非X`本身。如下例:functionradontestI=zeros(200,200);%I(100:170,100:170)=1;A=eye(100,100);I(101:200,1:100)=A;figure,imshow(I);title('orginalimage');orginalimagetheta=0:180;[R,xp]=radon(I,theta);%R是点的数量多少%xp是R对应的坐标位置,即为X`,另一解释为直线跟原点间距离%0-180代表0到180度%此变换是以图像的中心点为原点的变换figure,imagesc(theta,xp,R);title('R_thetaX');xlabel('theta(degree)');ylabel('X\prime');colormap(hot);colorbar;即所求=45度,X`=-75左右。意思是在原XY坐标下的45度的直线X`上,距离原点75的位置有条与X`垂直的直线。此直线真正的45+90=135度,右移-75/sin45=100的距离。(6)由(6)式可见,f(x)的Radon变换是f(x)沿不同θ方向的投影;而f(x)的脊波变换看作是先对f(x)进行Radon变换,然后沿着每个积分方向做一维小波变换的结果,即:(7)正因为脊波变换在Radon域上对各个方向进行一维小波变换,将图像的线奇异性转换为点奇异性,充分利用小波变换对点奇异性的良好表示特性来得到具有线奇异性图像的稀疏表示。脊波逆变换可以通过沿每一方向做一维小波逆变换,然后进行Radon逆变换得到。然而Randon变换的离散化是一个比较复杂的问题,在众多的离散化算法中,有些存在大量的冗余,有些虽然克服了大的冗余度,但是得到其所对应的逆变换又比较困难。其中有限Radon变换FRAT(FiniteRadonTransform)[6][7]是其中比较好的离散化算法之一。有限Radon变换是有限大小的二维离散图像实现Radon变换的离散化方法。一个N×N(N要求是一个素数)大小的图像f(i,j),其中{0,1,2…,N-1}。它的有限Radon变换FRAT定义为:(8)其中,是满足斜率k和截距l的直线上的所有象素点的集合,定义如下:,当k∈{0,1,2…,N-1},当(9)由式(8)(9)可知,有限Radon变换是满足要求的直线上的图像象素点灰度值的累加和。一个N×N大小的图像经有限Radon变换后,将得到(N+1)×N大小的矩阵,它有N+1个斜率方向,每个方向上有N个系数。有限Radon变换的逆变换可以通过有限逆投影变换FBP(FiniteBackProjection)来得到:(10)其中Pij指的是所有通过点(i,j)的直线的斜率k和截距l的集合,即:……(11)为了获得更好的能量集中性,由式(8)和(10)所定义的有限Radon变换(FRAT)和反变换FBP要求变换的图像均值为零[8],对于均值不为零的图像可以在变换前先减去均值,以保证变换前的图像均值为零;反变换回来后再加上图像均值即可恢复原图像。
本文标题:Radon变换说明及matlab例子
链接地址:https://www.777doc.com/doc-2854847 .html