radon变换的介绍
两维情况下radon变换大致可以这样理解:一个平面内沿不同的直线(直线与原点的距离为d,方向角为α)对f(x,y)做线积分,得到的像F(d,α)就是函数f的Radon变换。也就是说,平面(d,α)的每个点的像函数值对应了原始函数的某个线积分值。一个更直观的理解是,假设你的手指被一个很强的平行光源透射,你迎着光源看到的手指图像就是手指的光衰减系数的三维Radon变换(小小的推广)在给定方向(两个角坐标)的时候的值。
[create_time]2016-05-26 23:01:53[/create_time]2016-06-08 11:49:06[finished_time]1[reply_count]2[alue_good]昼月美品频界3007[uname]https://himg.bdimg.com/sys/portrait/item/wise.1.a8800ee7.jzazOzMQE74qvFIWn9qAtA.jpg?time=9805&tieba_portrait_time=9805[avatar]超过58用户采纳过TA的回答[slogan]这个人很懒,什么都没留下![intro]1092[view_count]radon变换的定义
下图显示了在指定的旋转角度的单一投影。间距为1个像素的平行光穿过图像,则radon变换计算穿过图像长度上的积分,即式中旋转角度为θ的平行束投影f(x,y) 在垂直方向的线积分是f(X,Y)投影到X轴;在水平方向的积分是f(X,Y)投影到Y轴。可以沿任意角度θ计算投影,下图说明了Radon变换沿角度θ的几何形状。
[create_time]2016-05-26 23:01:53[/create_time]2016-06-08 11:49:06[finished_time]2[reply_count]3[alue_good]冰附瘤3[uname]https://himg.bdimg.com/sys/portrait/item/wise.1.ed655194.tV9APdSNgKhmhvd2zchiPA.jpg?time=3689&tieba_portrait_time=3689[avatar][slogan]这个人很懒,什么都没留下![intro]796[view_count]radon变换的应用
一个最简单而直接的应用就是拿来检测图像里面含有的直线成分,很显然地,任何直线都会导致Radon像在该直线对应(d,α)处的极值。具体的CT断层影像重建算法当中其实没怎么用到Radon变换,或者说Radon变换仅仅只有一点点理论上的意义。原因是:CT机做扫描:球管发出X-ray,经过人体,被吸收一部分,进入检测器队列(球管是旋转的,检测器呈扇形分布,很老的和很新的除外,老式的ct做平行扫描,效率低,很新式的什么多层螺旋扫描,我也不知道咋回事)显然检测器读数就是人体的x-ray吸收系数(是空间的函数)对相应路径的线积分,所以这样转一圈下来再把所有的检测器读数值按照(d,α)的方式排列一下就算完成了某个被检测截面的Radon变换了,这个过程是人体和X-rayscaner一起完成的,显然不干软件什么事。接下来,照理说是要靠计算机把获得的数据做一个逆Radon变换,就能得到被检测截面的X-ray吸收系数的分布图像了。CT的图像其实就是一个吸收系数的图,类似的B超或者声纳之类的图像是大致是一个弹性模量的图(反射声波)...但是接下来这里有一个问题就是Radon变换是不是可逆,google了下是可逆的,我的理解:1)有另外一种求逆方法,就是解代数方程,简化地说可以大致设想把整个截面离散网格化,每个格子对应一个吸收系数,把每根扫描积分路径经过的格子按照权重(显然透心凉和擦点皮对吸收的贡献不同)作累加,令他们等于相应Radon值(积分变成了加权累加而已)显然设计好的话,这个方程组肯定是有解的(不过运算量会很庞大,比如一个512X512的网格...)2)工程师不问这么无聊不切实际的问题,所以以前学的时候就压根没想到。3)最重要的原因,是下面要说的求逆问题,竟然变成了二维的fourier逆变换。所以忘掉Radon变换吧。有这样一个事实:把某个角度坐标alfa对应的一“条”Radon值(一系列检测器的读数,也实际上就是原始截面吸收系数在方向为alfa+-Pi/2直线簇上的线积分值)作一个fourier变换,得到的就是整个原始被检测截面(吸收系数)的二维fourier像在某条直线上的值(这条直线经过频域的原点并且方向为alfa)如果把所有角度的Radon值作一维Fourier变换,然后按照合适的角度(alfa)经过原点把这些一维fourier像值放在频域平面上,就得到了整个二维fourier像!!!这个其实直观上很容易想象其合理性,还是以手指头为例(不考虑它指向的方向)对着光源看,从左至右,透光率不同产生明暗的变化,亮暗本身是沿前后方向的积分结果决定,但是相邻的亮暗变化却反应了整个手指截面的从左至右这个方向上的频域信息,看到的细节越多,频域的高频分量越多(与前后方向的细节毫无关系,因为被radon积分掉了)。以上关于CT其实是过分简化的描述,只能提供一个大致的原理。实际情况会有些不同,首先检测器读数是有限空间的,这就是相当于理想的投影函数乘了一个窗函数(某段区间内为一,其他地方为零的函数),在频域内窗函数会“扩散”所以他们频域做卷积的结果是频域的扩展。也可以说成是,对于非周期函数(包括周期不为无穷大)的fourier级数在边界的间断处只能是平均收敛,“平均”的结果就是在光滑的地方拟合的很好,在间断点处发生振荡。工程中管这个叫做吉布斯(Gibbs)效应,它告诉我们:用有限项级数的和去表示一个函数,随着项数的增加,振荡发生的位置会越来越接近间断点,但是它的摆幅不变(写到这忽然觉得它的名字似乎翻译成“挤不死”更贴切)另外,检测器只能读出空间上分立的数值,所谓的取样过程就是投影函数乘一个迪拉克函数组成的序列(假设周期为L)而迪拉克序列变换到频域仍然是一个迪拉克序列,只是周期变成了1/L。投影和取样序列相乘在频域就是卷积,出来的结果就是具有了周期频谱,显然可用的只能是原点(DC)所在的一个周期内的数据。当L越来越小的时候,频谱周期越来越大,空间分辨率越来越高。当L为有限的时候,分辨率如果用频率来表示的话,从原点(“直流”分量)开始算,由于周期性缘故显然最高到1/2L处。设想一间黑屋子,唯一的光源是一个可调节频率的频闪光源,一台电风扇。假定光源闪烁频率为w,显然理论上能够检测到的风扇转速u将允许加上任意整数个w。比方说,每秒亮一下,你看到了风扇转动了1/4圈,那么你可以认为风扇每秒转动1/4圈,但也可以是5/4圈(多转了一圈,有何不可?),9/4圈...也可以是(反着转)-3/4圈,-7/4圈...原因就是前面说的,用一个脉冲序列(光源频闪)去做取样,必然会得到周期性的频谱。接下来,当光源的闪烁频率和风扇的转速(用转/秒来表述)相等的时候,你将看到风扇是停止的,当光源频率高于风扇转速的两倍时,你才能看到风扇正常的转动,如果光源频率介于风扇转速一倍和两倍之间,那你会看到风扇倒着转了。这里的情况被称为频谱混叠。此类现象生活中常遇到。另外,函数变换本身还带来了坐标平移一类的问题。实际当中用的最多的是一种叫做滤波反投影的算法来实现断层重建,说穿了关键就针对以上一些问题设计合理的滤波器。另外值得一提的是,这里用到的数学大概一百年前就有了,但是随着计算机技术的进步,具体实现的时候,出现过不同的版本。譬如说,70年代的商业运行的CT(256X256),带一台长得像电冰箱般的“卷积器(convolver)”,顾名思义,它的滤波器实现大概是用DSP做卷积的(离散的卷积就是一系列的移位连乘连加)。而现代,随着硬件技能的突飞猛进,FFT不成问题了,这个交给CPU在频域内作乘法就能搞定。退一步说,我甚至怀疑,那个形体巨大的Convolver做卷积的性能恐怕未必能赶上我正在码字的电脑。此刻,它正在运行音乐播放软件foorbar,同时一起运行的还有一堆插件(也可看作卷积器),比如老式电子管音色,教堂混响,耳机模拟现场音效之类的...
[create_time]2016-05-26 23:01:53[/create_time]2016-06-08 11:49:05[finished_time]1[reply_count]4[alue_good]买春枫va[uname]https://himg.bdimg.com/sys/portrait/item/wise.1.84c8b259.8K7M3WZj91UsNrcTukljmw.jpg?time=3632&tieba_portrait_time=3632[avatar]超过72用户采纳过TA的回答[slogan]这个人很懒,什么都没留下![intro]214[view_count]不理解matlab中hough变换和randon变换到底怎么用
I = imread('circuit.tif');
BW = edge(imrotate(I,50,'crop'),'canny');
[H,T,R] = hough(BW);
P = houghpeaks(H,2);
imshow(H,[],'XData',T,'YData',R,'InitialMagnification','fit');
xlabel('\theta'), ylabel('\rho');
axis on, axis normal, hold on;
plot(T(P(:,2)),R(P(:,1)),'s','color','white');
matlab自带的程序。
当然,根据不同图片,要适当修改里面的参数。
[create_time]2016-10-07 10:00:58[/create_time]2015-02-16 16:03:20[finished_time]1[reply_count]0[alue_good]受司大人[uname]https://himg.bdimg.com/sys/portrait/item/public.1.2fa87fce.sfC9BZWmijMjkP2QlDbFhQ.jpg[avatar]知道合伙人影视综艺行家[slogan]毕业于浙江广厦,有一定的电脑专业基础和两年工作经验,读过相关书籍多本[intro]588[view_count]
如何理解radon变换
两维情况下radon变换大致可以这样理解:一个平面内沿不同的直线(直线与原点的距离为d,方向角为α)对f(x,y)做线积分,得到的像F(d,α)就是函数f的Radon变换。也就是说,平面(d,α)的每个点的像函数值对应了原始函数的某个线积分值。一个更直观的理解是,假设你的手指被一个很强的平行光源透射,你迎着光源看到的手指图像就是手指的光衰减系数的三维Radon变换(小小的推广)在给定方向(两个角坐标)的时候的值。
[create_time]2017-09-22 08:19:31[/create_time]2017-09-22 10:43:38[finished_time]1[reply_count]3[alue_good]爵帝倵士leo[uname]https://himg.bdimg.com/sys/portrait/item/wise.1.1296322b.1JbsuDYn-aKEmpQ-epCC2g.jpg?time=6573&tieba_portrait_time=6573[avatar]TA获得超过5.5万个赞[slogan]这个人很懒,什么都没留下![intro]1894[view_count]
matlab中radon函数是怎样写的
r=radon(im,30);%im是图像矩阵解决方法如下:Radon 变换是平行束对图像的线积分,根据各个角度得到的一系列投影值逆radon重建得到原始图像。变换角度默认是逆时针,r=radon(im,30);得到的是一维数组。平行束与X轴夹角为30度时,距原点不同距离的投影线(平行束)上对图像的线积分。[R,Xp] = RADON(...) XP对应平行束的位置。Radon变换的本质是将原来的函数做了一个空间转换,即,将原来的XY平面内的点映射到AB平面上,那么原来在XY平面上的一条直线的所有的点在AB平面上都位于同一点。记录AB平面上的点的积累厚度,便可知XY平面上的线的存在性。这便是大家所公认的Radon变换的实质所在。在一个平面内沿与原点的距离为d,方向角为θ的直线对原函数f(x,y)做线积分,得到的像函数F(d,θ)就是函数f的Radon变换。这是二维的情况。简单来说,Radon变换就是求投影(projection)的理论方法。应用于CT中。
[create_time]2018-04-25 01:53:15[/create_time]2016-03-28 18:43:55[finished_time]2[reply_count]5[alue_good]子清尘[uname]https://himg.bdimg.com/sys/portrait/item/wise.1.2ae8e557.H3bscC5NdAibOFw69tvQFg.jpg?time=5478&tieba_portrait_time=5478[avatar]TA获得超过6001个赞[slogan]这个人很懒,什么都没留下![intro]3905[view_count]纸上层析的基本原理和操作方法是 什么
(1)纸上层析的基本原理---是一种分离方法!不同物质在纸上展开速度不同而分离!
(2)纸上层析的操作方法
A.干滤纸下端用铅笔画一条线,在中间点上要分离的物质溶液
B.水槽中放展开剂
C.将滤纸上端夹住,下端浸入水槽
D.静置
[create_time]2007-12-05 23:30:47[/create_time]2007-12-06 15:53:53[finished_time]1[reply_count]7[alue_good]TQS1945[uname]https://himg.bdimg.com/sys/portrait/item/wise.1.ffb19bb5.Cb_P_xHFCtRnLcVL2xDhuw.jpg?time=2891&tieba_portrait_time=2891[avatar]TA获得超过3.5万个赞[slogan]这个人很懒,什么都没留下![intro]2182[view_count]
哪位大神知道laplace变换和逆laplace变换的C++/C的算法么,小弟急求啊....希望大神不吝赐教啊...
拉普拉斯c语言程序
double uniform(double a,double b,signed int seed)
{
double t;
seed=2045*seed+1;
seed=seed-(seed/1048576)*1048576;
t=(seed)/1048576.0;
t=a+(b-a)*t;
return(t);
}
/*******************************************************************
* 拉普拉斯随机分布
* beta--拉普拉斯分布的参数
* seed--随机数种子
*******************************************************************/
double laplace(double beta,signed int seed)
{
double u1,u2,x;
u1=uniform(0.,1.,seed);
u2=uniform(0.,1.,seed);
if(u1<=0.5)
x=-beta*log(1.-u2);
else
x=beta*log(u2);
return(x);
}
[create_time]2011-12-02 17:01:59[/create_time]2011-12-09 14:58:50[finished_time]1[reply_count]0[alue_good]匿名用户[uname]https://iknow-base.cdn.bcebos.com/yt/bdsp/icon/anonymous.png?x-bce-process=image/quality,q_80[avatar][slogan]这个人很懒,什么都没留下![intro]1293[view_count]
请问如何用MATLAB实现radon变换?
theta=0:180 theta是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
:)
[create_time]2008-10-14 21:14:56[/create_time]2008-10-24 11:11:58[finished_time]2[reply_count]21[alue_good]佐能娜娜[uname]https://himg.bdimg.com/sys/portrait/item/wise.1.c9d92153.NNTSrXYMSpEjteszF2L-Wg.jpg?time=2908&tieba_portrait_time=2908[avatar]TA获得超过411个赞[slogan]这个人很懒,什么都没留下![intro]12975[view_count]
层析成像技术
地震层析成像技术自20世纪70年代问世以来,在许多领域得到广泛的研究。从地震勘探来看,地震层析成像按其反演的岩石物性参数可分为两大类:一类波速层析成像,是利用地震波的传播时间反演地震波传播速度的波速层析成像;另一类衰减系数层析成像,则是利用地震波振幅的幅值和脉冲的宽度反演地震波衰减系数的衰减系数层析成像。由于地震波的速度与介质的各种物理性质有关,而地震波的传播时间又较容易观测,因此,利用地震波的传播时间求取地震波传播速度的波速层析成像方法得到了广泛的研究。在石油、天然气勘探中,地震波射线的分布近似于垂向的居多。这种近于垂向的射线分布在地震层析成像方法中对波速的横向不均匀性最敏感,最适于检测目标区内波速的横向变化。含油气层系内,波速的横向变化是圈定含油面积,制定油田开发方案的一项不可缺少的数据,因此,对目的层进行横向预测是一项十分重要的研究内容。反射地震层析成像技术不仅应用在油气勘探方面,而且在工程物探方面也有着广泛的应用。在黄河小浪底水利枢纽工程中,为研究该区域岩层构造发育情况,在地下厂房区进行了两组跨孔地震层析成像研究工作,取得了很好的地质效果(杨国宪,1993)。图5-36是LSQR(最小二乘的QR迭代法)算法的成像图,图5-37是层析成像结果与钻孔柱状图合并后的综合成果图。图5-36 层析成像速度图(据杨国宪,1993)1—孔号;2—速度等值线(m/s);3—低速区界线图5-37 层析成像成果图(据杨国宪,1993)1—孔号;2—速度等值线(m/s);3—低速区界线;4—钻孔柱状图的地层分界线小结本章详细介绍弹性介质和地震波的基本概念,①理想弹性介质和黏弹性介质、各向同性介质和各向异性介质模型、均匀介质、层状介质和连续介质、单相介质和双相介质;②体波(纵波、横波)、面波(瑞利面波和勒夫面波)。简要介绍影响地震波传播速度的主要因素。重点掌握折射波法和反射波法时距曲线及地震勘探中的数据采集和资料处理。复习思考题1.什么是理想弹性介质和黏弹性介质?在地震勘探中,实际的固体是哪一种介质?2.弹性介质中地震波的类型有哪些?试简述其特点。3.影响地震波传播速度的主要因素有哪些?4.地震波的震源有哪些?5.反射波法观测系统有哪些?6.折射波法观测系统有哪些?7.叙述地震勘探中的层速度、平均速度、射线平均速度、均方根速度、等效速度等概念。8.叙述垂直地震剖面法的特点。9.简述地震波层析成像技术的方法原理,应用条件和主要优缺点?
[create_time]2020-01-18 03:16:18[/create_time]2020-02-02 03:14:12[finished_time]1[reply_count]0[alue_good]中地数媒[uname]https://iknow-pic.cdn.bcebos.com/38dbb6fd5266d0166fb0c0519b2bd40735fa3519?x-bce-process=image/resize,m_lfit,w_900,h_1200,limit_1/quality,q_85[avatar]技术研发知识服务融合发展。[slogan]中地数媒(北京)科技文化有限责任公司奉行创新高效、以人为本的企业文化,坚持内容融合技术,创新驱动发展的经营方针,以高端培训、技术研发和知识服务为发展方向,旨在完成出版转型、媒体融合的重要使命[intro]561[view_count]