matlab验证中心切片定理

刚看到别人用matlab的程序验证中心切片定理,但是有两处不明,然后自己做了修改

clear all 
clc
I=phantom(256);%新建一个shapp_logan模型I
figure,imshow(I);%见于图1
H=imrotate(I,270);%将图像旋转270°,相当于θ=90°,
                  %使得X线以与X轴平行的方向进行投影
figure,imshow(H);%见于图2
p=sum(H,1);%进行投影
figure,plot(1:256,p);%见1
f=fft(p);
fab=f.*conj(f);
%f3=fftshift(fab);%**修改处**
figure,plot(1:256,fab);%见2
f2d=fft2(I);%此处是直接对原始图像进行二维傅立叶变换并进行验证
fab2d=f2d.*conj(f2d);
%f4=fftshift(fab2d);%**修改处**
figure,plot(fab2d(:,1));%见3

傅里叶变换后不使用fftshift,直接输出傅里叶变换后的结果,进行比较

  • 3
    点赞
  • 15
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
Matlab是一种强大的数值计算和数据可视化软件,它提供了各种统计分析工具,包括用于验证伯努利大数定理(Bernoulli's Law of Large Numbers)的函数或方法。伯努利大数定理描述了当大量独立随机事件的结果被重复测量时,平均值会越来越接近其期望值的现象。 在Matlab中,你可以使用模拟实验或者数值统计函数来演示这个定理。以下是一个简单的步骤: 1. **创建随机变量**:使用`randi(0,1,N)`生成一系列的0和1的随机数,其中N是你想要模拟的试验次数。这代表了每次实验中成功的(通常是1)或失败的(通常是0)情况。 2. **计算频率**:对每次实验中成功的次数进行累计,然后除以总试验次数,得到单次实验的成功概率近似值。 3. **重复实验**:多次运行这个过程,记录每次实验的成功概率估计,观察这些估计值的分布是否趋近于理论上的期望值(如果试验是公平的,就是成功的概率)。 4. **可视化结果**:可以使用`histogram`或`plot`等函数来绘制成功概率估计的分布图,以显示随着试验次数增加,估计值趋于稳定的趋势。 在Matlab中没有直接的内置函数来验证伯努利大数定理,但你可以自定义或利用统计包中的函数来实现这个过程。如果你需要代码示例,我可以为你提供一个简化的脚本,但请注意,具体的实现可能因Matlab版本的不同而有所差异。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值