请问如何用MATLAB实现radon变换?

请问如何用MATLAB实现radon变换?,第1张

theta=0:180theta是radon变换的角度,可以自由设置,这里是从0°到180°一共181个角度,如果只求等分的60个角度的radon变换,可以改成theta=0:3:177;如果只求一个特殊角度的radon变换可以写成theta=x这里x就是希望的角度。

R = radon(I, theta)

R是存储radon变换的值,它是一个矩阵,列数是theta的个数,表示每一个角度生成一列,行数是被处理的矩阵(I)对角线的长度。

R一般用于inverse radon transform,程序如下:

I1=iradon(R,theta)

imshow(I1)

iradon命令有很多参数,具体使用方法请参考http://www.mathworks.com/access/helpdesk/help/toolbox/images/index.html?/access/helpdesk/help/toolbox/images/iradon.html&http://www.mathworks.com/cgi-bin/texis/webinator/search?pr=Whole_site&db=MSS&prox=page&rorder=750&rprox=750&rdfreq=500&rwfreq=500&rlead=250&sufs=0&order=r&whole=Whole_site&entire_flag=1&is_summary_on=1&ResultCount=10&query=inverse+radon+transform

:)

Radon 变换是平行束对图像的线积分,根据各个角度得到的一系列投影值逆radon重建得到原始图像。变换角度默认是逆时针。r=radon(im,30)得到的是一维数组,平行束与X轴夹角为30度时,距原点不同距离的投影线(平行束)上对图像的线积分。[R,Xp] = RADON(...) XP对应平行束的位置。

例子如下: :r=radon(im,30)%im是图像矩阵 解决方法如下: Radon 变换是平行束对图像的线积分,根据各个角度得到的一系列投影值逆radon重建得到原始图像。 变换角度默认是逆时针,r=radon(im,30)得到的是一维数组。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/8160750.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-14
下一篇 2023-04-14

发表评论

登录后才能评论

评论列表(0条)

保存