欠采样dMRI图像矩阵的低秩稀疏分解
数据采样时,采用笛卡尔欠采样方式对空间编码数据进行随机采样,确定欠采样率,对式子3-4中的参数λ1和λ2进行选择,L+S 方法能更有效地去除动态图像中的运动伪影调节参数 λ1和 λ2能够调节优化模型中低秩成分和稀疏成分的权重,改变 λ1和 λ2取值会造成低秩矩阵和稀疏矩阵之间信息的混杂,从而影响低秩矩阵和稀疏矩阵的重建结果。但是由于我们关注的是动态磁共振图像的整体,而不是单独的动态前景或静态背景,改变 λ1和 λ2取值不会造成整体信息的丢失,因此重建算法对 λ1和 λ2的取值要求不严格。(当 λ1和 λ2取值改变较小时不会对重建图像质量造成明显的影响,但是当 λ1和 λ2取值变化较大时,会使重建图像的质量明显下降。)
共三个图像:分别是心脏灌注图像、心脏影像、腹部动态图像
- 对心脏灌注图像进行低秩稀疏分解(Example1)
- 加载欠采样数据
- 输入观测采样信号(即输入观测矩阵kdata)
- 重建信号,其中所用到的算法是L+S重建(即函数[L,S] = lps_ist(param))
- L+S重建
- 输入参数
欠采样K空间编码算子(参数E)、稀疏变换算子(参数T)、奇异值阙值(参数λL)、稀疏值阙值(参数λS);
- 迭代循环
奇异值软阈值提取低秩成分;软阈值提取稀疏成分;
当(Lk+Sk-(Lk-1+Sk-1))的范数<参数tol*(Lk-1+Sk-1的范数)停止迭代;
- 输出L、S的值。
算法流程步骤
Example1 图像低秩稀疏处理流程
心脏灌注图像低秩稀疏处理
Example1 L+S重建算法流程图
L+S重建流程图
程序部分
部分程序代码用法
- Function
用来定义函数,一般一个函数放在一个.m文件里。
假设定义比如最简单的一个函数如y=a+b。
例:function y=myfunction(a,b)
y=a+b;
保存为一个m文件myfunction.m,调用方式如下。
num=myfunction(3,4);
这样就可以由函数中的y=a+b得到num的值是3+4=7。
- Reshape
b=reshape(a,m,n)与reshape(a,[m,n])
把矩阵a以列为单位,拆分,形成一个一列的向量,在间隔新的矩阵的行数,选值,形成新的要求的矩阵。若对向量b进行reshape也可还原成原矩阵b的结构。
- zeros(m,n)
生成m×n全零阵
- [U,S,V]=svd(A)
参数说明:A:要进行SVD分解的矩阵,且A不必为方阵。
概括地说,U、S、V返回SVD的分解的结果;
U:A的奇异向量组成的矩阵,AA’的正交单位特征向量组成U。
S:对角矩阵,对角元素是A的奇异值,非负且按降序排列。
V:A的奇异向量组成的矩阵,A’A的正交单位特征向量组成V
- Diag
X = diag(v,k)
v为向量,X为矩阵
以向量v的元素作为矩阵X的第k条对角线元素,当k=0时,v为X的主对角线;当k>0时,v为上方第k条对角线;当k<0时,v为下方第k条对角线。
例:
>> v=[1 2 3];
>> x=diag(v,-1)
x =
0 0 0 0
1 0 0 0
0 2 0 0
0 0 3 0
v=diag(X,k)
X为矩阵,v为向量
取矩阵X的第K条对角线元素为向量v
例:
>> aa=randn(3,3)
aa =
-1.3282 -1.7925 0.4092
-0.3803 0.5858 -0.4684
-0.9560 0.7356 0.8292
>> diag(aa)
ans =
-1.3282
0.5858
0.8292
>> diag(aa,1)
ans =
-1.7925
-0.4684
>> diag(aa,2)
ans =
0.4092
(6) Abs
数值的绝对值和复数的幅值
基本用法:y=abs(x)函数对数组元素进行绝对值处理的函数。
函数的定义域包括复数。
对于复数x=a+b*i,有abs(x)=a2+b2。
(7) Isnan
判断数组中的元素是否为无穷大
tf=isnan(A):返回一个与A相同维数的数组,若A的元素为NaN(非数值),在对应位置上返回逻辑1(真),否则返回逻辑0(假)。对虚数z,如果z的实部或虚部都是NaN,那么isnan函数返回逻辑1,如果实部和虚部都是inf,则返回逻辑0。
(8) TempFFT
实现三个维度的时间FFT变换
调用子程序
主程序调用此函数[L,S] = lps_ist(param),此函数的定义位于 lps_ist.m 文件中,,通过修改文件名可以实现直接被调用.m文件。
其功能即是实现欠采样数据的L+S重建,在实验流程图中有很详细的介绍。
程序实现
所给参考代码所处的图像如下:
心脏灌注图像
心脏影像
欠采样dMRI图像矩阵的低秩稀疏分解相关推荐
- 图像降噪算法——低秩聚类:WNNM算法
图像降噪算法--低秩聚类:WNNM算法 图像降噪算法--低秩聚类:WNNM算法 1. 基本原理 2. matlab代码 3. 结论 图像降噪算法--低秩聚类:WNNM算法 同样是为了完善自己知识版图的 ...
- MATLAB可视化实战系列(四十二)-图像特征提取-使用低秩 SVD 进行图像压缩实例
使用低秩 SVD 的图像压缩 以下是我为大家准备的几个精品专栏,喜欢的小伙伴可自行订阅,你的支持就是我不断更新的动力哟! MATLAB-30天带你从入门到精通 MATLAB深入理解高级教程(附源码) ...
- 矩阵低秩张量分解_TKDE 2020 | CTRR:组稀疏约束的紧凑张量环回归
论文标题:Smooth Compact Tensor Ring Regression论文作者:Jiani Liu, Ce Zhu, Yipeng Liu论文链接:https://ieeexplore. ...
- MicroNet: 低秩近似分解卷积以及超强激活函数,碾压MobileNet | 2020新文分析
论文提出应对极低计算量场景的轻量级网络MicroNet,包含两个核心思路Micro-Factorized convolution和Dynamic Shift-Max,Micro-Factorized ...
- 矩阵低秩张量分解_【线性代数】张量-张量的计算
本来吧,觉得张量这个东西稍微混一混假装知道个大概就行了.昨天拿到角动量那一章的讲义以后我发现事情并没有那么简单--总而言之,欠下的东西早晚要还的--碎碎念到此结束,进入正题.张量专题初步计划是分三个板 ...
- matlab矩阵的低秩分解,低秩分解的matlab代码看不懂,分解的两个矩阵在哪呀??...
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 有四个文件:demo.m function [] = demo() %This routine demonstrates an example of us ...
- 【图像重建】基于matlab字典学习KSVD图像低秩重建【含Matlab源码 1762期】
⛄一.低秩稀疏图像重建简介 1 矩阵的低秩稀疏分解理论 从数学上讲, 矩阵的秩反应了矩阵的固有属性, 矩阵的低秩性是指矩阵的秩相对于矩阵的行数和列数而言很小.低秩矩阵稀疏分解模型是将已知矩阵M (M∈ ...
- 低秩矩阵的应用--背景建模
背景建模是从拍摄的视频中分离出背景和前景. 由于背景的视频基本是不变的,所以如果把每帧当做一个矩阵的一列那么,矩阵是低秩的,所以低秩矩阵的恢复来恢复出背景. 今天主要完成了,在自己的数据库让进行背景和 ...
- 推荐系统之---如何理解低秩矩阵?
1.说明 在推荐系统中有有一种推荐方式:LFM,也叫隐因子分解.这中推荐方式在Netflix公司的百万美金大赛中可以说是大放异彩.但是在这里面涉及到一个假设.假设评分矩阵是低秩的(Low rank). ...
- 机器学习——低秩矩阵分解中低秩的意义、矩阵填补、交叉验证
在研读论文<Matrix completion by deep matrix factorization>时,遇到了一些不明白的知识点,花费了大量时间在网上查阅相关资料,终于找到了能够让自 ...
最新文章
- java隐藏控件_Android控件的显示和隐藏
- 私藏的7个实用工具,干货多到爆炸!
- 不同的二叉搜索树-战胜100%的Java用户
- 进阶阿里架构师:算法、编程语言、数据库、架构设计!书单推荐!
- formdata 接受参数中带有class 对象_浅析JAVA中的反射机制及对Servlet的优化
- Merkle Tree与区块链
- HTML DOM教程 18-HTML DOM Body 对象
- linux操作系统实用教程课后答案,Linux操作系统案例教程课后习题答案
- Mybatis源码分析(一) | 如何调试Mybatis源码
- 汽车自动驾驶技术与产品研发仿真测试软件—panosim(一)
- 笔记本计算机并行口什么开启,笔记本连接电脑台式机的方法
- 职场泥潭,这样的IT公司绝对不宜久留
- ORB-SLAM3论文翻译
- docker配置加速器的几种方案
- RHCE-ansible第二次实验,通过ansible远程yum安装
- 因机构系统维护服务暂不可用_因合作方系统维护,暂时无法使用是什么意思?...
- python迅雷远程下载页面_迅雷远程下载 linux
- JAVA通过COM接口操作PPT
- The King’s Ups and Downs HDU - 4489(计数+dp)
- 我不怕未知的困难,我只怕身边没有你
热门文章
- 西门子软件测试教程 博客,西门子视频教程合集
- visio指向插图任意位置和任意改变箭头形状
- biopython有什么用_Biopython介绍
- ubuntu下鼠标右键新建文档
- java中int与byte相互转换
- 实现了一个跨平台的 YUV 文件图片查看器
- 软件项目开发成本经常用到的估算方法
- jsmind 线条_jsmind/2.options.md at master · hizzgdev/jsmind · GitHub
- Halcon颜色分类-阈值分区法
- 看懂Oracle的执行计划