APP铺子

游戏攻略

iradon函数原理(iradon变换)

栏目:游戏攻略 日期: 作者:admin 阅读:

在MATLAB中,有专门的radon()函数和iradon()函数来实现Radon变换的算法,这也是图像重建过程中必不可少的算法。

(1)在MATLAB图像处理工具箱中提供了radon()函数用于计算指定方向上图像的投影,该函数的调用格式如下:

R = radon(I, theta):计算图像I在矢量theta指定方向上的radon变换;

[R,xp] = radon(...):R的各行返回theta中各方向上的radon变换,xp表示theta方向对应的坐标值。图像I的中心,即floor((size(I)+1)/2),为新坐标轴的中心。

(2)在MATLAB图像处理工具箱中提供了iradon()函数用于实现Radon逆变换,完成图像重建,该函数的调用格式如下:

I = iradon(R, theta):R是投影矩阵;theta可以是一个包含所有扫描角度的向量,且每两个相邻角度等间隔;使用的投影越多,所获得的图像越接近原图像,失真越小;

I = iradon(P, theta, interp, filter, frequency_scaling, output_size):interp是插值函数;filter是滤波函数,通过加窗消去投影过程中产生的高频噪声;frequency_scaling是一个标量值,取值范围[0,1],通过缩放滤波函数的频率修改滤波函数;output_size是一个标量,用来规定重建图像的行数和列数;

[I,H] = iradon(...):H的返回值为滤波器的频率响应。

interp是插值函数,有以下几种差值方式可以选择:

「三十三」MATLAB图像变换之Radon变换(R变换)——投影重建图像

filter是滤波函数,有以下几种滤波器可以选择:

‘Ram-Lak’:频带有限的斜坡函数滤波器,是MATLAB默认的滤波器,对投影中的噪声敏感(R-L滤波函数和S-L滤波函数);

‘Shepp-Logan’:sinc函数*R-L函数。

‘Cosine’:cosine函数*R-L函数 。

‘Hamming’:Hamming函数*R-L函数 。

‘Hann’:hann函数*R-L函数 。

‘None’:没有滤波。

下面通过具体实例来说明Radon变换的含义和操作方法:

代码:

「三十三」MATLAB图像变换之Radon变换(R变换)——投影重建图像

Demo1

「三十三」MATLAB图像变换之Radon变换(R变换)——投影重建图像

「三十三」MATLAB图像变换之Radon变换(R变换)——投影重建图像

Demo2

显示效果:

「三十三」MATLAB图像变换之Radon变换(R变换)——投影重建图像

Demon1.投影——即线积分

「三十三」MATLAB图像变换之Radon变换(R变换)——投影重建图像

Demo1.上述黑白图像的Rando变换

「三十三」MATLAB图像变换之Radon变换(R变换)——投影重建图像

Demo1

可以看出,图像的生成是以(theta,xp)构建一个平面坐标,然后R矩阵中的数据作为该平面各对应点的高度,这样就构成一个三维矩阵,从而显示为上述的Radon变换图像。

「三十三」MATLAB图像变换之Radon变换(R变换)——投影重建图像

Demo2_figure1

「三十三」MATLAB图像变换之Radon变换(R变换)——投影重建图像

Demo2_figure2

「三十三」MATLAB图像变换之Radon变换(R变换)——投影重建图像

Demo2_figure3

可以看到,在角度是0度、30多度、90多度和140多度的位置,有明显的亮点,说明该角度的投影——即垂直于该角度的线积分,值比较大。所以,可以猜测投影方向上存在直线段。例如在90度时,其投影方向为水平方向,有大量的白点,说明原图像中存在大量水平的直线段。我们从原图像可以看到,确实存在较多的水平直线段,其重建图像也表明了这一点。

简单来说,就是Radon变换和我上一篇文章提到的Hough一样,都可以作为检测图像中直线段的方法。

「三十三」MATLAB图像变换之Radon变换(R变换)——投影重建图像

Demo2_figure4

「三十三」MATLAB图像变换之Radon变换(R变换)——投影重建图像

Demo2_figure5

「三十三」MATLAB图像变换之Radon变换(R变换)——投影重建图像

Demo2_figure6

从上面可以看出,确实是投影图像越多,其重建图像失真越小。当投影角度间隔为1度或2度时,重建图像失真较小;而当影角度间隔为5度或10度时,重建图像失真较大,图像信息丢失严重。

「十」MATLAB语言之程序性能优化

「二十九」MATLAB数字图像运算之块操作

「三十二」MATLAB图像变换之Hough变换——寻找图像中的直线段

相关资讯

  • iradon函数原理(iradon变换)

    在MATLAB中,有专门的radon()函数和iradon()函数来实现Radon变换的算法,这也是图像重建过程中必不可少的算法。(1)在MATLAB图像处理工具箱中提供了radon()函数用于计算
  • lol放逐之刃出装顺序(lol放逐之刃攻略)

    LOL:放逐之刃对线蛮族之王就该这么出装,看懂的瑞雯随便打按照我对这两位英雄的了解来讲,并不存在什么英雄克制,可能在对线期蛮王对瑞雯有一些压制,但是只是对于新手瑞
  • moon wcg冠军(moon wcg成绩)

    魔兽争霸:WCG三冠失败,INFI遭Moon零封,无缘四强2020WCG,如果INFI能卫冕成功,那么他将成为魔兽争霸3第一人。截止2019年,一共有三名选手获得2个WCG冠军,他们是SKY、Grubby
  • nba2k10键盘操作技巧(nba2k10如何操作)

    《NBA2K22》作为该系列的最新作品,于9月份如期上线。那么《NBA2K22》如的操作都是使用哪些键,也是玩家把握这款游戏需知的。键盘操作传球:空格键击地传球:数字键盘1高