【核磁共振成像】观共享重建
目录
- 一、K空间关键孔技术-数据采集
- 二、BRISK技术
- 三、TRICKS技术
- 四、实时成像和滑动窗重建
- 五、心电触发电影(CINE)采集
- 六、分段心脏采集和观共享
一、K空间关键孔技术-数据采集
对于笛卡尔K空间,一个相位编码行有时称为一个K空间观。一般情况下,每帧图像的K空间数据都是完全独立的,这里说的观共享(view sharing)是一种重建方法,为了重建两帧或多帧不同的图像,一些K空间观数据被反复使用。即一些K空间观在多个数据集中共享。
成像动态过程或时变过程,比如心脏运动、FMRI任务激活、对比剂团块(bolus)注入后增强过程、关节运动或导管跟踪,都是临床研究需要的。在这样的研究中,高空间分辨或大覆盖FOV也时常需要。因此,成像动态过程通常涉及在时间分辨、空间分辨和空间覆盖之间的恰当折中。折中的方法就是部分K空间刷新,keyhole方法就是频繁刷新K空间中心的数据,这样就牺牲了空间分辨,这基于动态信息在K空间是带限的假设(即图像变化有低空间分辨),但保证了时间分辨。
观共享不是内插K空间数据,而是把选定的观从一个存储位置拷贝到另一个位置以供再用。为此,我们称用观共享重建的额外的像为中间像。
重建期间用观共享的采集实例包括keyhole、BRISK、TRICKS技术,部分K空间数据刷新的实时成像,以及 分段K空间心脏采集(FASTCARD) 等。观共享也用于重建心脏触发相位对比度检查的中间像。
在原始关键孔(keyhole)方法中,小数量观被称为keyhole观,关于K空间中心行(K=0)对称,被重复收集,以低空间分辨提供时间系列图像来监视动态过程。参考数据的高空间频率,与各个keyhole数据集结合产生完整的K空间数据集,用于重建系列的图像。
起初引进keyhole采集是为改善对比度增强成像的时间分辨率,基于对比度团注大部分信息包含在低空间频率的假设中。虽然重建的图像有 全空间分辨 的表现,动态变化数据实际上是低空间分辨keyhole采集重建的,高频信息用作解剖位置参考,而不传递任何动态信息。

(a)8个keyhole观
(b)32参考观
对于256矩阵,K空间8个相位编码行数据为一观数据
二、BRISK技术
K空间块区内插方案(block regional interpolation scheme for K-space,BRISK)是基于keyhole思想的一个延申。Keyhole基于动态信息是低K空间频率的假设,因此高频数据不刷新。这个假设有时并不真实,故需要改进。当跟踪大部分动态过程时,BRISK的高频信息也刷新,只是K空间边缘比中心数据刷新频率低。
BRISK起始用于不分段K空间采集的2D多相心脏扫描,以缩短采集时间。在传统不分段扫描中,每层面K空间一观每心跳周期采集Ncp次(心脏的相数,即R-R波之间的时间段数)。因此,对于每层面采集全K空间数据集,所需要的心跳数等于K空间行数。
BRISK可以与分段K空间采集结合,有时也叫超快(turbo)-BRISK。原始BRISK用傅里叶内插填充各心相K空间缺失的观。后来,用线性内插来提高重建速度。

靠近K空间中心段的观在各个心相都被采样(块8,9)。其他观有内向外采样频度逐渐降低,靠近边缘的段1-5和12-16每心跳周期只采样一次。一列代表一个心相的全K空间数据集。这里可称一段或一方块为一观,以矩形256为例,一观或一段有16行数据。
图中显示了 BRISK的K空间采样机制,此例中K空间被分为16段。心跳周期分为20相。阴影块代表被采样的观,白方块代表缺失的观需要用内插来填充。靠近K空间中心的观(块8和块9)在每个心相都被采样,远离K空间中心的观用低频率采样。具体说,接近K空间边缘的观(块1-5和块12-16)每心跳周期只采样一次;块6和块11采5次;块7和块10采10次。这样,每个层面扫描时间是传统扫描时间的1/4(图中阴影块数是总块数的1/4)。
除心脏成像外,超快BRISK还用于大动脉流动的定量相位对比度(速度编码)成像。
三、TRICKS技术
对比剂动力学的时间分辨成像(time resolved imaging of contrast kinetics,TRICKS)是keyhole采集一般思想和BRISK的一个变型。TRICKS通常用于提高3D对比度增强扫描的时间分辨。Kx-Ky平面被分成相等的面积,在时间上循环采样。Ky和Kz是在3D直线采样K空间中的两个相位编码方向。类似于BRISK,为K空间中央区域最频繁的采样。
在原始TRICKS中,Ky-Kz平面仅在Ky方向被划分,后来发展到Ky-Kz平面用共心椭圆来划分。通常被划分为4个区,标记为A、B、C、D,A区相应于K空间中央。对比剂注入前,K空间即被全采样,即所有的4个区所有观均被采样,得到的图像用作减法掩模。接下来,4个区按ABACADABACAD…次序采集,直到扫描结束。

(a)沿第一个相位编码轴Ky进行分割,Kx和Kz分别为频率和层面编码;
(b)用同心椭圆等分二维面积(KyKz),Ky和Kz分别为相位和层面编码
四、实时成像和滑动窗重建
在实时成像中,滑动窗重建应用比较普遍。设采集一观的时间是TR,等N*TR后方可完成第二组观的采集,建一个完全新的像。而通过滑动窗重建,每TR间隔后就可以建一个刷新的图像。除非图像变化,不考虑噪声时所有像是相同的。这类采集的目的就是探测物体内的变化,比如运动。如果有恒定的线性运动,用观共享重建的某些像见会有突然的过渡。
与静止器官不同,心脏总是在周期性跳动。不妨把心跳周期分为Ncp个时间段,每个段代表心脏跳动的一个状态(心相)。要对一个心脏层面完成一个心跳周期的图像采集,就需要采集Ncp个K平面数据,这需要很多个心跳周期才能完成
因此需要对每个心相成像,对每个心相都需要采集一个K平面数据。
五、心电触发电影(CINE)采集
虽然一个心相K平面上各行数据是在不同心跳周期采集的,但由于R波触发的同步作用,各行数据近似是在心脏周期内同一个时间点采集的(即电影成像)。
如果有心率不齐,可在图像重建之前用ECG的时间信息进行内插,可以帮助对准K平面上所有行数据集到同一个时间点,此技术称为电影成像。
为减少CINE的总成像时间,可以分段采集,即在各个心相一次R波触发采多个K空间行
ECG(Electrocardiogram),(又称EKG,an abbreviation from the German “Elektro-kardiographie”)是一个实验(test),用于记录引发心跳的电信号序列的时间节点和强度,ECG记录的是引发心脏跳动的电脉冲序列。


(a)电影(CINE)方式,(b)分段K空间方式,每段4观
六、分段心脏采集和观共享
为了 缩短总扫描时间,就得减少完成整个K空间数据采集所需要的ECG触发次数。该方法 把R-R间隔分段为若干相(phase)对应于K空间段,并在各个心相采集多K空间行。
在各段采集的K空间行数称为每段观数(vps)。虽然分段缩短了总扫描时间vps倍,但作为代价时间分辨率降低了同样倍数。因为在一个心相各行数据并不是在同一个时间点采集的,因而有可能引起图像模糊。
观共享普遍用于重建分段心电触发采集,通过用滑动窗重建在任两相之间高到(vps-1)个中间相可被重建。重建的中间相通过提供更平滑变化的电影显示,提高了表现或有效的时间分辨率。然而,真实的时间分辨率是采集一个K空间段的时间:vps*TR。
观共享不提高真实的时间分辨率,因为它不增加任何新的K空间数据,而是重复使用现有数据一次或多次。
在分段K空间采集中,相应于K空间中心的观通常安排在同一观中。例如,设每段有2观,总共8观,这段或许安排为(2,3),(4,5),(6,7)和(8,1)。如果有心率不齐,置K空间中心在同一观内可降低伪影。多相心电触发成像可用好几种方式采集。其一称为分段心脏采集或FASTCARD采集。
虽然上述讨论聚焦在单层面采集,延申到多层面是可能的。为了观察心脏总体形态,心电触发多层面交错采集是可行的。

观共享用于重建额外中间心相。在第一个R-R间隔K空间行1-4被重复采集;第二个R-R间隔K空间行5-8被采集,依次进行,直到数据矩阵被完全填满。在任意两个心相之间观共享重建允许高到(vps-1)个中间心相被重建。
相关文章:
【核磁共振成像】观共享重建
目录 一、K空间关键孔技术-数据采集二、BRISK技术三、TRICKS技术四、实时成像和滑动窗重建五、心电触发电影(CINE)采集六、分段心脏采集和观共享 一、K空间关键孔技术-数据采集 对于笛卡尔K空间,一个相位编码行有时称为一个K空间观。一般情况下,每帧图像…...
〔020〕Stable Diffusion 之 骨骼姿势 篇
✨ 目录 🎈 姿势检测 / OpenPose🎈 姿势检测 OpenPose 参数介绍🎈 姿势检测 OpenPose 基本使用🎈 深度库 / Depth Lib🎈 深度库 Depth Lib 参数介绍🎈 3D姿势检测 / 3D Openpose Editor🎈 3D姿势检测 3D Openpose Editor 参数介绍🎈 3D姿势检测 3D Openpose Ed…...
使用Python进行Base64编码和解码
假设您有一个想要通过网络传输的二进制图像文件。您很惊讶对方没有正确接收该文件 - 该文件只是包含奇怪的字符! 嗯,您似乎试图以原始位和字节格式发送文件,而所使用的媒体是为流文本而设计的。 避免此类问题的解决方法是什么?答…...
MongoDB的数据恢复与备份
MongoDB的数据恢复与备份 在MongoDB中,备份和恢复数据是一项关键任务,可以确保数据的安全性并防止意外数据丢失。本文将介绍MongoDB的数据恢复与备份原理并提供相关的编程代码和配置。 1. 数据备份原理 MongoDB提供了多种备份数据…...
Java之SpringCloud Alibaba【五】【微服务 Sentinel整合openfeign进行降级】
一、Sentinel整合openfeign 1、复制一下order-openfeign项目(创建order-openfeign-sentinel) 然后在stock-nacos当中编写对应的接口 RequestMapping("/reduct2")public String reduct2(){int a 1/0;System.out.println("扣减库存"…...
电脑前置耳机没声音怎么办
有很多小伙伴反映在将自己的耳机连接到主机前面时没有声音,这是怎么回事呢,遇到这种情况应该怎么解决呢,下面小编就给大家详细介绍一下电脑前置耳机没声音的解决方法,有需要的小伙伴可以来看一看电脑前面耳机没声音。 解决方法&a…...
package.json 详解
文章目录 package.json1. name2. version3. description4. homepage5. bugs6. license7. author, contributors8. funding9. files10. main11. module12. browser13. bin14. man15. directories15.1 directories.bin15.2 directories.man 16. repository17. scripts18. config1…...
springboot配置ym管理各种日记(log)
1:yml配置mybatis_plus默认日记框架 mybatis-plus:#这个作用是扫描xml文件生效可以和mapper接口文件使用,#如果不加这个,就无法使用xml里面的sql语句#启动类加了MapperScan是扫描指定包下mapper接口生效,如果不用MapperScan可以在每一个mapp…...
你知道Vue 3.0中Treeshaking特性吗?
介绍 Vue 3.0引入了Tree-shaking特性,旨在优化构建过程并减小最终生成的代码大小。Tree-shaking是一种在构建时移除未使用代码的技术,通过分析模块的依赖关系,将没有被引用的部分从最终的打包文件中排除掉。这可以大大减少应用的体积&#x…...
TP6 开启关闭debug
config 不起作用,还得来这里改: 或者单个方法里加: $this->app->debug(true); //临时错误调试...
Linux centos7 bash编程(break和continue)
在学习shell知识时,简单编程要从格式入手。 首先学习好单行注释和多行注释。 先学习简单整数的打印输出,主要学习echo命令,学习选项-e -n的使用。 下面的练习是常用的两个分支跳转程序:break和continue。 #!/bin/bash # 这是单…...
【论文精读AAAI_2022】MobileFaceSwap: A Lightweight Framework for Video Face Swapping
【论文精读AAAI_2022】MobileFaceSwap: A Lightweight Framework for Video Face Swapping 一、前言AbstractIntroductionRelated WorkFace swapping.Dynamic neural networks.Knowledge distillation.MethodNetwork ArchitectureTraining ObjectivesExperimentsQualitative Re…...
rust中使用sqlite 之 rusqlite使用
名称版本rusqlite0.29.0impl From<&rusqlite::Row<_>> for Person {fn from(r: &rusqlite...
Linux系统Ubuntu配置Docker详细流程
本文介绍在Linux操作系统Ubuntu的18.04及以上版本中,配置开源容器化平台和工具集Docker的详细方法;其中,我们以配置Docker平台的核心组件之一——Docker Engine为例来详细介绍。 首先,大家需要明确,我们常说的Docker&a…...
能直接运营的发接任务平台小程序搭建开发演示
有个项目估计做过互联网的小伙伴都听说过——发接任务平台。 基本每年都有发接任务平台关站,但又有新的平台出来,往复循环,无比热闹。这在互联网圈不常见,互联网项目很多都是风头过去了就结束了,但发接任务年年似乎都…...
React原理 - React Reconciliation-上
目录 扩展学习资料 React Reconciliation Stack Reconciler【15版本、栈协调】 Stack Reconciler-事务性 事务性带来的弊端: 扩展学习资料 名称 链接 备注 官方文档 Reconciliation – React 英文 stack reconciler Implementation Notes – React 英文…...
MySQL 主从复制与读写分离
1、什么是读写分离? 读写分离,基本的原理是让主数据库处理事务性增、改、删操作(INSERT、UPDATE、DELETE),而从数据库处理SELECT查询操作。数据库复制被用来把事务性操作导致的变更同步到集群中的从数据库。 2、为什么…...
Linux环境基础开发工具
xshellssh xshell--充当客户端,提供远程登录服务 yum 背景知识 在Linux下安装软件, 一个通常的办法是下载到程序的源代码, 并进行编译, 得到可执行程序. 但是这样太麻烦了, 于是有些人把一些常用的软件提前编译好, 做成软件包(可以理解成windows上的安装程序)放…...
uni-app+uView实现点击查看大图片的效果
<u-button text"月落" click"imgPreview()"></u-button> //注意:参数urls 是预览图片的链接地址,是个数组 imgPreview() {uni.previewImage({indicator: "none",loop: false,urls: [],}) },参数说…...
Sulfo-CY3 azide在细胞标记与成像中的应用-星戈瑞
Sulfo-CY3azide作为荧光探针在细胞标记与成像中应用,它可以用于实现对细胞内特定分子或细胞结构的标记,从而实现对细胞的可视化和实时成像。以下是Sulfo-CY3azide在细胞标记与成像中的应用: 1.细胞膜标记:Sulfo-CY3azide可以与细…...
多模态2025:技术路线“神仙打架”,视频生成冲上云霄
文|魏琳华 编|王一粟 一场大会,聚集了中国多模态大模型的“半壁江山”。 智源大会2025为期两天的论坛中,汇集了学界、创业公司和大厂等三方的热门选手,关于多模态的集中讨论达到了前所未有的热度。其中,…...
Unity3D中Gfx.WaitForPresent优化方案
前言 在Unity中,Gfx.WaitForPresent占用CPU过高通常表示主线程在等待GPU完成渲染(即CPU被阻塞),这表明存在GPU瓶颈或垂直同步/帧率设置问题。以下是系统的优化方案: 对惹,这里有一个游戏开发交流小组&…...
鸿蒙(HarmonyOS5)实现跳一跳小游戏
下面我将介绍如何使用鸿蒙的ArkUI框架,实现一个简单的跳一跳小游戏。 1. 项目结构 src/main/ets/ ├── MainAbility │ ├── pages │ │ ├── Index.ets // 主页面 │ │ └── GamePage.ets // 游戏页面 │ └── model │ …...
【UE5 C++】通过文件对话框获取选择文件的路径
目录 效果 步骤 源码 效果 步骤 1. 在“xxx.Build.cs”中添加需要使用的模块 ,这里主要使用“DesktopPlatform”模块 2. 添加后闭UE编辑器,右键点击 .uproject 文件,选择 "Generate Visual Studio project files",重…...
Xcode 16 集成 cocoapods 报错
基于 Xcode 16 新建工程项目,集成 cocoapods 执行 pod init 报错 ### Error RuntimeError - PBXGroup attempted to initialize an object with unknown ISA PBXFileSystemSynchronizedRootGroup from attributes: {"isa">"PBXFileSystemSynchro…...
shell脚本质数判断
shell脚本质数判断 shell输入一个正整数,判断是否为质数(素数)shell求1-100内的质数shell求给定数组输出其中的质数 shell输入一个正整数,判断是否为质数(素数) 思路: 1:1 2:1 2 3:1 2 3 4:1 2 3 4 5:1 2 3 4 5-------> 3:2 4:2 3 5:2 3…...
VSCode 使用CMake 构建 Qt 5 窗口程序
首先,目录结构如下图: 运行效果: cmake -B build cmake --build build 运行: windeployqt.exe F:\testQt5\build\Debug\app.exe main.cpp #include "mainwindow.h"#include <QAppli...
用 FFmpeg 实现 RTMP 推流直播
RTMP(Real-Time Messaging Protocol) 是直播行业中常用的传输协议。 一般来说,直播服务商会给你: ✅ 一个 RTMP 推流地址(你推视频上去) ✅ 一个 HLS 或 FLV 拉流地址(观众观看用)…...
解决MybatisPlus使用Druid1.2.11连接池查询PG数据库报Merge sql error的一种办法
目录 前言 一、问题重现 1、环境说明 2、重现步骤 3、错误信息 二、关于LATERAL 1、Lateral作用场景 2、在四至场景中使用 三、问题解决之道 1、源码追踪 2、关闭sql合并 3、改写处理SQL 四、总结 前言 在博客:【写在创作纪念日】基于SpringBoot和PostG…...
视觉slam--框架
视觉里程计的框架 传感器 VO--front end VO的缺点 后端--back end 后端对什么数据进行优化 利用什么数据进行优化的 后端是怎么进行优化的 回环检测 建图 建图是指构建地图的过程。 构建的地图是点云地图还是什么信息的地图? 建图并没有一个固定的形式和算法…...
