zoukankan      html  css  js  c++  java
  • 全国大学生数学建模竞赛广东省分赛 A题 CT系统参数标定及成像 方法总结

    问题一:由Beer-Lambert 定律,可以得到 X 光穿过物体前后光子数与物体厚度的关系 (正相关),以及观察两份附件中的信息,可知接收信息大致与 射线穿过的像素点个数(遮挡物厚度)成正相关关系 ;
    又由特殊点的位置(光线射过椭圆长轴物体所接受的信息最多,射过椭圆短轴时接收的信息最少),可知长轴和短轴的交点即为椭圆中心。

    问题二:使用 MATLAB iradon 函数,采用直接反投影法对吸收信息数据进行转换,得到 CT 重建图像,但存在伪影问题。 因此本文改进算法,选取R-L 滤波函数,使用滤波反投影法得到降低噪声的 CT 重建图像以及吸收率矩阵。通过对附件 的点进行坐标变换,寻找十点在吸收率分布矩阵中的位置,继而找到 10 个位置的吸收率。

    问题三:首先, 使用直接反投影法进行 CT 图像的初步重建,伪影问题仍存在。 进一步, 选取 R-L 滤波函数, 先对附件 的吸收信息数据进行卷积滤波计算,降低数据可能存在的噪声。进一步,将经滤波处理后的数据通过傅里叶变换和 Radon 变换,求得反投影数据,最终得到 CT 重建图像。 利用问题二中经变换后的十点的坐标信息,求得各位置对应的吸收率。

    问题四: 由问题一标定的参数该模板所确定的 CT 系统相关量存在一定精度误差,经分析误差可能来源于以下几个方面:
    1) 探测器与旋转轴之间存在一定夹角,经考虑此误差对全局的影响较大且不容易通过优化算法消除;
    2) 观察图 2 模板的理论尺寸图和附件一吸收率信息,两者存在相当误差,即用于标定的均匀介质模板与实际吸收率出入较大,经 MATLAB 将附件一数据与椭圆及小圆方程拟合,误差为 5.82%
    (3) 附件一提供的吸收率不够精确,即像素点分得不够细,在做投影还原时总会模糊;
    (4) 第 EUBI 列数据不是刚好对应位置①和位置②,理论与实际总存在一些偏差。 

    5.4.2 误差改进方法
    根据上述分析,通过改变模板形状、大小等可以一定程度上减轻误差。
    首先,从模型一运用的求解方法来看, 探测单元间距我们是通过小圆直径和椭圆长轴确定,但由于 射线若被探测到数值一定是与标定模板相交,则 射线组实际被遮挡的宽度总大于显示在附件二中非零单元格的数量;在标定模板上增加小正圆的数量,增大寻找到被遮挡 射线条数最多的点的机会,可以一定程度上使探测单元间距更加准确;

    我们计算旋转中心时,用了两种方法:方法一仅用了附件二少数数据,对结果的精确度影响较大;方法二通过函数拟合出小圆圆心的轨迹,然而小圆圆心对应在附件二上的数值并不容易被确定,可考虑在增加小正圆数量的基础上,使每个小圆直径的大小不尽相同,但服从一定数量规律以克服上述误差。

    经过以上思考,我们作出了改进后的模板图如图 20 改进模板图。
    其中, 图中标定模板皆为正圆,正方形托盘仍为 100mm*100m;各圆尺寸及
    信息如下:
    圆 O 半径为 32mm,吸收率为 1;
    圆 P 半径为 8mm, 经过 O 点;
    圆 Q 半径为 2mm,与圆 O 相切,圆 P 和圆 Q 皆为圆 O 上被挖去的部分;
    圆 R 半径为 4mm 距边缘均为 4mm, 吸收率为 1.

  • 相关阅读:
    IIS部署Asp.Net Core 项目运行时报错,处理程序“aspNetCore”在其模块列表中有一个错误模块“AspNetCoreModuleV2"
    Linux Mysql5.7.22安装
    Nginx初体验
    asp.net core Csc任务不支持SharedCompilationId参数,请确认改参数存在于此任务中,并且是可设置的公共实例属性
    【Node.js 】Express框架
    【Node.js】 初体验
    Mongodb 配置
    【C#】Windows服务守护并发送邮件通知
    新建【Git】仓库后给使用者授权
    Git提交修改的代码出现提交不上去
  • 原文地址:https://www.cnblogs.com/flippedkiki/p/9138930.html
Copyright © 2011-2022 走看看