没有合适的资源?快使用搜索试试~ 我知道了~
SoftwareX 9(2019)73原始软件出版物OpenQSEI:一个准静态弹性成像Danny Smyla,Sven Bossuyta,刘东b,c,d,a英国谢菲尔德大学土木与结构工程系b中国科学技术大学(USTC)中国科学院微尺度磁共振重点实验室和近代物理系c中国科技大学合肥微尺度物理科学国家实验室d中国科学技术大学量子信息与量子物理协同创新中心ar t i cl e i nf o文章历史记录:接收日期:2018年2月28收到修订版,2018年10月26日接受,2019年保留字:弹 性 成 像 逆 问 题医学成像结构健康监测a b st ra ct准静态弹性成像(QSEI)的目的是利用测量的位移场计算重建弹性模量的不均匀分布。QSEI是一种在医学成像中用于定位组织异常的成熟成像模式。最近,QSEI在结构健康监测和材料表征的应用中显示出了希望。尽管QSEI在多个领域的使用越来越多,但完全可执行的开源软件包并不容易获得。为了解决这个问题,OpenQSEI使用MATLAB平台开发,并在在线社区环境中共享,以持续改进算法在本文中,我们描述了QSEI的数学背景,并通过示例演示了OpenQSEI的基本功能©2019作者由爱思唯尔公司出版这是CC BY-NC-ND下的开放获取文章许可证(http://creativecommons.org/licenses/by-nc-nd/4.0/)。代码元数据当前代码版本v3用于此代码版本的代码/存储库的永久链接https://github.com/ElsevierSoftwareX/SOFTX_2018_14法律代码许可证MIT使用git的代码版本控制系统使用MATLAB的软件代码语言、工具和服务编译要求、操作环境依赖性MATLAB 2017 b或Octave 4.2.1以及Mac OS X、Linux或Windows(如果可用)开发人员文档/手册问题支持电子邮件danny. aalto.fi1. 动机、意义和背景准静态弹性成像(QSEI)是一种用于医学成像的成熟成像模式[1QSEI的潜在应用包括动脉硬化[15]或组织异常的医学成像,例如乳腺癌[3]。QSEI的一些工程应用包括分布式或局部损伤的检测[9]和未知弹性参数的表征[14]。由于QSEI应用的多样性,研究人员在开发QSEI算法方面取得了重大进展。例如,最近的改进包括*通讯作者。电子邮件地址:danny. gmail.com(D. Smyl),dong2016@ustc.edu.cn(D.Liu).https://doi.org/10.1016/j.softx.2019.01.004使用基于梯度的方法加速[4],包括非线性材料模型[1,2]以及机器学习的实现[10]。尽管有这些发展,完全可执行的开源QSEI软件目前还不可用。为了解决这个问题,我们开发了一个开源的MATLAB可执行QSEI平台:OpenQSEI。在下文中,我们将提供QSEI/OpenQSEI的数学背景,并简要讨论数学功能及其软件集成的先决条件。QSEI的目的是利用测量的位移场μm和计算逆方法重建弹性模量E这种逆问题的观测模型具有以下形式:um=U(E)+e( 1)其中,e是假定的高斯分布噪声,U(E)是使用离散化数值方法求解的正演模型(2352-7110/©2019作者。由Elsevier B. V.发布。这是CC BY-NC-ND许可证下的开放获取文章(http://creativecommons.org/licenses/by-nc-nd/4.0/)。可在ScienceDirect上获得目录列表SoftwareX期刊主页:www.elsevier.com/locate/softx=EE∥·∥==+−k−1eℓe74年D。Smyl,S. Bossuyt和D. Liu / SoftwareX 9(2019)73本文采用FEM在医疗环境中,通常通过(i)使用超声跟踪散斑的位移或(ii)使用来自通过核磁共振成像获得的测量磁场的相位信息来提供μm在结构应用中,可以使用数字图像相关或离散测量(如应变计或引伸计)获得μm。对于任何应用领域,具有模拟具有附加噪声的μm的能力是测试声发射性能的极好方法,这通常使用前向模型来完成基于Eq. 在等式(1)中,我们可以将约束和正则化的最小二乘(LS)解写为:L2和加权平滑度),1(iii)估计的优化起始点(最佳齐次估计),使用二次多项式障碍函数的约束,计算的雅可比,和线搜索优化过程中使用的和(iv)determi- nation的梯度和海森相关的先验模型和约束。一个概述基本软件体系结构的流程图在图中突出显示。1.一、2.2. 软件功能OpenQSEI的主要软件功能旨在解决前向问题,提供适当的先验模型,并优化阿贾尔格minLEE U{Le(um−U(E))<$2+pE(E)}(2)求解QSEI逆问题。对于正演平面弹性问题,该软件包配备了一个有限元制度,FMDL。FMDL其中pE(E)是选择的正则化泛函,LTLe=C−1使用分段线性三角形元素,利用用户输入的几何图形,采用MATLAB Delaunay其中,Ce是观测噪声协方差矩阵,EL和EU是用户定义的约束,并表示欧几里德范数。由于逆问题的不适定性质,包括正则化项,这意味着标准LS方法可能产生非唯一解。选择适当的正则化函数(先验模型)对于获得精确的重建是重要的例如,在存在尖锐特征的情况下,全变差(TV)正则化可能是最合适的;然而,在E相对平滑的情况下,平滑度促进正则化(L2和加权)可能提供最佳结果[16]。为了解决反问题,使用迭代约束高斯该制度配备了线搜索算法,以确定步长sk,其中θk是当前估计,θ是LS更新。这种方法需要在每次迭代k处的雅可比矩阵JU(E),其使用扰动方法计算选择一阶或二阶中心差分。在代码的未来版本中,将纳入其他优化方法,如全牛顿法、拟高斯法、梯度下降法、原始对偶内点法等。对于首次发布的版本,选择GN方法是因为其可快速最小化成本函数,并可耐受使用扰动计算J时的不准确性所导致的误差[4]。这项工作的总体目标是:(a)开发一个用户友好的软件包,其中数学被浓缩成易于执行和可读的MATLAB函数,(b)在在线社区环境中共享软件,以持续改进算法。基于本文概述的数学和目标(a),我们设计了OpenQSEI,使其具有以下基本的MATLAB函数用于每个数学功能。正演模型/数据模拟:弹性问题(平面应力)的网格划分、夹杂物生成和有限元解。先前的模型:L2平滑,加权平滑和TV. 约束优化:成本函数(参见当量(2))、用于约束的障碍函数、梯度/Hessian的生成以及线搜索。此外,还包括绘图和可视化功能。2. 软件描述2.1. 软件概述OpenQSEI旨在允许用户轻松访问不同的先验模型和优化功能,以便使用实验或模拟位移成像弹性模量通过网格进行三角测量。提供了使用加权平滑和TV的先验模型通过实现函数WeightedSmoothnessPrior或getTVMat。对于WeightedSmoothnessPrior,用户可以输入空间相关长度和E的预测范围。当采用getTVMat时,用户可以针对他/她的特定物理特性定制TV稳定参数β和加权参数α。问题. 另一方面,L2先验简单地生成为单位矩阵I的倍数,即λI。因此,在优化机制期间仅需要标量λ的用户输入和I为了解决逆问题,主MATLAB文件OpenQSEI包含shell LS-GN迭代优化机制,调用必要的优化功能。在初始化所有所需参数(例如网格划分、通过BestHomogeneousE进行的初始猜测、先验矩阵等)之后执行优化方案的优化,运行直到残差k−k−1低于某个用 户 定 义 的 容 差 ( tol ) 包 括 通过cost-fun、linesign_uniform和gradshessians迭代更新成本函数、步长和适当的梯度/Hessians。在整个优化过程中,用户将使用有用的数据进行更新,包括成本函数的最小化、步长计算和数据不匹配。优化图的代表性片段如图所示。2后的四个迭代使用L2先验。3. 示例-独角兽在下面,我们提供一个例子,在拉伸板中的独角兽形弹性夹杂用户界面完全包含在主MATLAB文件OpenQSEI.m中。对于该练习,预加载边界条件、外力和叠加到网格上的独角兽图像(通过将独角兽图像的灰度像素强度内插到三角测量上并相对于最大弹性模量值进行归一化)分别包含在文件cond.mat、force.mat和Eunicorn.mat网格划分和边界条件数据见表1。一旦用户打开了文件 , 他 / 她 必 须 将 目 录 更 改 为 计 算 系 统 上 在 此 初 步 之 后 ,OpenQSEI是完全可操作的,用户可以选择先验模型和约束的选择,并执行代码。在本例中,我们使用所有三个先验模型(TV,加权)重建了uni corn的真实图像,并将1.0%的噪声标准差添加到模拟位移场领域的为此,OpenQSEI环境包括基本的用于(i)数据模拟和正演模型的FEM实现的函数(ii)三种常用的先验模型(TV,1关于TV、L2和加权平滑正则化技术的全面描述,我们请读者参考[16- 18 ]。≤≤=-≤k−1ℓD. Smyl,S. Bossuyt和D. Liu / SoftwareX 9(2019)73-7675Fig. 1. OpenQSEI架构和主要功能的概述。注意,在函数costfun和PertubedJ中,需要对正演模型FMDL进行评估。图二、 在OpenQSEI的优化部分期间生成的图,(a)成本函数Uk(k)的最小化,(b)测量的u m和模拟的位移场U(E)的数据不匹配,以及(c)使用linesignal_uniform的线搜索的可视化。表1说明性示例中使用的FEM网格的总结请注意,(i)x和y分别指水平和垂直方向,(ii)节点编号由SimulateData函数自动提供的网格化输出给出。节点(#)元素(#)固定度,x(node#s)固定度,y(node#s)作用力,x(node#s)作用力,y(无单位力/节点)4418001–211-21,421421–4412.75平滑和L2正则化)。我们注意到,没有尝试优化正则化参数;然而,用户可以自行决定这样做。选择的约束条件为EL 0E E
下载后可阅读完整内容,剩余1页未读,立即下载
cpongm
- 粉丝: 5
- 资源: 2万+
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- C++标准程序库:权威指南
- Java解惑:奇数判断误区与改进方法
- C++编程必读:20种设计模式详解与实战
- LM3S8962微控制器数据手册
- 51单片机C语言实战教程:从入门到精通
- Spring3.0权威指南:JavaEE6实战
- Win32多线程程序设计详解
- Lucene2.9.1开发全攻略:从环境配置到索引创建
- 内存虚拟硬盘技术:提升电脑速度的秘密武器
- Java操作数据库:保存与显示图片到数据库及页面
- ISO14001:2004环境管理体系要求详解
- ShopExV4.8二次开发详解
- 企业形象与产品推广一站式网站建设技术方案揭秘
- Shopex二次开发:触发器与控制器重定向技术详解
- FPGA开发实战指南:创新设计与进阶技巧
- ShopExV4.8二次开发入门:解决升级问题与功能扩展
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功