matlab irandon函数,在路上●我的年青●悠忽两年
在路上●我的年青●悠忽两年
题记:悠忽两年,今天又到了我的生日,离开校园几近五年,大学毕业也快八年。偶然的机会帮着师弟分析一个问题,仔细整理后,发现用到的都是大学阶段所学。蓦然发觉,这些东西装入大脑十年有余,却不曾倒出来过。特发此文,回忆那些再也回不去的时光,想念我的老师、同学,缅怀青春!
MATLAB RADON及其相关函数分析
摘要:MATLAB Phantom函数产生的Shepp-Logan模型,和人脑结构相似,是医学影像学中用于CT图像仿真重建领域的经典模型。本文首先详细分析Shepp-Logan模型的结构,然后介绍对该模型数据求取Radon变换的两种方法。Radon变换后的数据求取Iradon变换,需要对数据预处理,预处理中用到滤波和卷积函数,第二节对其详述。模型数据的Fanbeam和IFanbeam变换,重要的是平行射线转扇形射线、以及扇形射线转平行射线的转换,而转换的过程就是插值,第三节详述常用的分段三次立方插值和三次样条插值方法。通篇都是分析,没有创新,涉及到的M文件有phantom,radon,iradon,fft,ifft,conv,pchip,spline。其中快速傅里叶变换实现频域滤波的物理意义,以及时域卷积的物理意义,并没有解释清楚,需要继续探讨。
关键字:Phantom函数C实现;Iradon函数C实现;离散傅里叶变换;离散卷积;埃尔米特插值时一阶导数求法;三次样条插值时非扭结条件;三对角矩阵的追赶法
1 投影变换
1.1 Radon变换
实际就是求取物体的截面(与接收器平行的那个截面),在平行射线穿透下的投影值。本节先分析图像仿真重建用到的Shepp-Logan模型,然后介绍模型生成的数据,求取Randon变换的两种方法。
1.1.1 MATLAB phantom 函数
MATLAB phantom 函数用于产生头骨幻影数据,该数据是一个N*N的矩阵,N默认是256,可以用来验证randon和irandon、以及其他二维的图像重建算法的数值准确度。phantom函数产生的Shepp-Logan模型,和人脑结构相似,是医学影像学中最先用于CT图像重建仿真领域的经典模型,实际处理中为了视觉观察上的方便,一般选取修正的Shepp-Logan模型。phantom产生的图像,如图1-1所示,其中(a)图是模型,(b)图是二维灰度图像,(c)图是模拟的人脑结构模型。
(a)
(b)
(c)
图1-1 (a) 头骨幻影模型;(b) 头骨幻影灰度图像; (c) Shepp-Logan模拟的人脑模型
phantom函数产生的图像,有10个椭圆组成(圆是椭圆的一种特殊情况),如图1-1(a)中的a,b,c,d … i,j,每个椭圆有6个特征数据,默认的数据如表1-1所示[1]。其中灰度值范围是[0 1],图像显示时对应[0 255],表示椭圆内部都是这个值,重复的地方要叠加,密度值的叠加就是灰度值;x轴和y轴的坐标范围都是从[-1 1];旋转角度是度数,不是弧度。另外要注意的是,图1-1(a)倾斜的椭圆c和d,它们两个是由中心在坐标原点的椭圆,旋转一定角度,然后再将旋转后的椭圆,沿着x轴和y轴平移得来的,即先旋转后平移。
根据表1-1,结合图1-1(a),则图1-1(b)中的灰度图像,灰度取值有6种情况,分别是0, 0.1, 0.2, 0.3, 0.4, 1。椭圆a外面的、以及椭圆c和d内部的都是0,椭圆d与椭圆e相交的地方、椭圆d与椭圆f相交的地方都是0.1,椭圆b内部其它地方是0.2,椭圆e、f、g、h、i、j内部的都是0.3,椭圆e和f相交的地方是0.4,椭圆a和b相交的地方是1。
表1-1 修正的Shepp-Logan模型中椭圆特征数据
(a)
(b)
图1-2 (a) 生成头骨幻影模型的MATLAB代码;(b) 生成头骨幻影数据的C代码
matlab irandon函数,在路上●我的年青●悠忽两年相关推荐
- matlab meshc函数_MATLAB函数库大全(收藏版)
转发朋友圈获30赞,截图发送至公众号对话框,即可获该文章的PDF版本方便阅读. 目录 1 常用命令 表1.1 管理用命令 表1.2管理变量与工作空间用命令 表1.3文件与操作系统处理命令 表1.4窗口 ...
- matlab matlabpool,Matlab matlabpool函数undefined
我尝试使用matlab并行计算功能. 我先输入"版本"来检查,如果我已经安装了并行计算工具箱,它确实Matlab matlabpool函数undefined >> ve ...
- MATLAB常用函数, 常见问题
MATLAB常用函数 1.常用取整函数 round(x):四舍五入函数 floor(x) : 向下取整, 即 floor(1.2)=1, floor(1.8) = 1 ceil(x) : 向上取整, ...
- matlab doc函数,matlab常用函数.doc
matlab常用函数.doc MatLab 常用函数 1. 特殊变量与常数 ans 计算结果的变量名 computer 确定运行的计算机 eps 浮点相对精度 Inf 无穷大 I 虚数单位 name ...
- matlab中imresize函数的用法,为何 MATLAB imresize 函数和 OpenCV resize 函数结果不同
为何 MATLAB imresize 函数和 OpenCV resize 函数结果不同?今年 4 月,我在依照 MATLAB 代码自己写一个卷积神经网络 C++ 实现的过程中,就发现了这个问题,不过那 ...
- matlab 数学库,matlab数学函数库
(n) 求 n 的阶乘 如何用 matlab 配方 没有发现 matlab 有这一命令,不过我们可以调用 maple 的命令,调用方法如下: 首先加载 maple 中的 student 函数库,加载. ...
- matlab freqz函数使用
Matlab freqz函数使用 (2012-10-22 13:42:03) 转载▼ 标签: 杂谈 freqz函数计算线性系统的频率响应,包括幅频响应和相频响应,基本输入为线性系统的AMMA模型系数向 ...
- Matlab参考函数
附录1 常用命令 附录1.1 管理用命令 函数名 功能描述 函数名 功能描述 addpath 增加一条搜索路径 rmpath 删除一条搜索路径 demo 运行Matlab演示程序 type 列出.M文 ...
- matlab rbf函数_基于径向基函数(RBF)的无网格伪谱法与程序实现(2)——微分矩阵...
参考资料 Gregory E. Fasshauer. Meshfree Approximation Methods with MATLAB. P.387 P401 数值实现 Matlab 2019a ...
- Matlab自定义函数的几种方法
Matlab自定义函数的几种方法_czw-CSDN博客_matlab自定义函数 Matlab 定义函数的几种方法_海底小星星的博客-CSDN博客_matlab定义函数
最新文章
- Android网络连接异常处理方案
- 单例模式(单一实例)
- DOA——ESPRIT算法
- WolframAlpha 的使用
- Springboot后台管理(CRUD)
- JavaScript高级之ECMASript 7、8 、9 、10 新特性
- 以社会工程学助力网络安全
- 1.1.29 加入项目符号后换行文字未对齐
- Android【报错】android.content.ActivityNotFoundException:activity in yourAndroidManifest.?
- 数字通信的调制方式 ASK FSK PSK QAM
- 前端Vue+后端Django实现微信登录
- 如何解决MathPage.wll文件找不到问题
- 大冰--寻人启事--one
- xshell双击无反应
- 职业生涯手记——序章
- java post 405 错误
- GitLab分支介绍
- 点乘a*b和叉乘aXb
- 快应用的用法和常见问题解答(上)
- 百度CEO李彦宏为何这么拼
热门文章
- CSDN 博客添加无水印图片的方法
- Unity HDR (高动态范围 )
- MySQL启动报错: Failed to start LSB start and stop MySQL
- 曾在国内外5家大厂做数据库工程师,这是他给出的5大数据库趋势预测
- IE浏览器卡死的问题
- Oracle 设置数据库时区
- 长期不使用计算机会损坏吗,电脑长时间存放不用会不会影响硬件寿命
- 酷狗音乐解析API,支持搜索、歌单、单曲、专辑、MV解析、多音质切换、图片大小切换
- office修复找不到msi_安装Office2007,总是提示找不到OfficeMUI.msi
- EXCEL-日常技巧整理-2-单元格拆分后原数据填充