从零开始:功能超声成像(fUSI)
摘要
一篇关于功能超声成像(fUSI)的深度科普,涵盖它如何以高分辨率捕捉血流动力学脑活动、相比 fMRI 的优势,以及其在神经调控领域的潜力;由于现有工具包大多局限于 Matlab,作者还在 GitHub 上推出了全新的 Python 教程。
暂无内容
查看缓存全文
缓存时间: 2026/09/30 23:05
# 从零开始的功能性超声成像
来源:https://www.neuroai.science/p/functional-ultrasound-imaging-from
功能性超声成像(fUSI)是一种脑成像技术,刚刚开始在人体研究中得到验证。我相信很多人对*结构性*超声成像并不陌生——它利用超声波形成静态图像,就像超声检查1(https://www.neuroai.science/p/functional-ultrasound-imaging-from#footnote-1)一样。而*功能性*超声则是以极快的速度捕捉脑组织的*动态影像*,追踪由神经活动引发的血流变化所带来的细微改变。
功能超声成像的首次展示来自 Macé 等人(2011)。超声探头用于非常快速地对大鼠大脑进行成像,通过计算方法分离出快速变化的像素,从而绘制出血管分布图。(https://substackcdn.com/image/fetch/$s_!xDL6!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb3a0ef13-eded-4827-b143-a738a8afcc6c_946x586.png)功能超声成像最初由 Macé 等人(2011)演示。超声探头用于非常快速地对大鼠的大脑进行成像。一种计算方法分离出快速变化的像素,从而绘制出血管分布图。
虽然其对比度来源与功能磁共振成像(fMRI)相同,但 fUSI 的线性分辨率有可能高出十倍(体素数量达到 1000 倍),体积更小(不需要磁体!),成本更低(不需要磁体!),信噪比更高。这项技术天然地与低强度*聚焦*超声(LIFU,令人困惑的是,也可缩写为 fUS)相配——后者将能量聚焦于大脑的特定区域进行调控,是治疗神经精神疾病和神经系统疾病的一种新选择。借助造影剂或基因疗法的扩展应用,则有可能超越血流动力学响应,实现超分辨率的血管测量,甚至直接测量神经活动。虽然超声波难以穿透颅骨,但 fUSI 已在术中以及一名接受了颅骨重建手术、植入了声学透明颅骨植入物的患者身上得到验证。
去年我对 fUSI 做了深入调研,发现大量技术信息被藏在应用论文的方法部分,或者散落在关于超声成像的鸿篇巨制之中。fUSI 能捕捉到血流动力学响应,但究竟是怎么做到的?对比度的来源是什么?它测量的是血流量还是血容量?它如何应对头部运动?超声波到底是什么?
我顺着这个兔子洞一路深挖——几乎从头到尾读完了一本 800 页的教科书(https://www.sciencedirect.com/book/monograph/9780123964878/diagnostic-ultrasound-imaging-inside-out),这样你们就不用亲自动手了。我将从物理原理上拆解 fUSI 的工作机制,以及它是如何被分析的。这将为你在计算层面研究 fUSI 打下良好基础。由于许多可用于 fUSI 模拟的分析工具都锁在 Matlab 里,我在 Github 上发布了一系列 Python 教程(https://github.com/patrickmineault/fus),方便你(或你的智能体)跟着操作。读完这篇文章后,你应该能理解 fUSI 是什么、它如何工作,以及为什么它距离自身的性能天花板还很远。
*这是我今年二月在 X 上发布的一篇文章的大幅扩展版本。我对原版不太满意,于是做了第二遍修订:这版加入了新的图片和视频,更深入地探讨了物理学,并指出了 fUSI 信号处理可以改进的地方。*
功能超声成像与常规超声成像一样,使用既能发射又能接收超声波的换能器,将超声波送入组织。超声波在脑组织中基本不受阻碍地传播2(https://www.neuroai.science/p/functional-ultrasound-imaging-from#footnote-2),当遇到阻抗变化时(例如红细胞、气泡或颅骨)就会产生后向散射。通过测量这些后向散射波,我们可以在计算上重建局部的阻抗变化。重建图像的分辨率与所传输超声波的波长成正比;当在 18 MHz(临床使用的上限频率)下进行超声照射时,线性分辨率可以达到约 100 微米。
这解释了我们如何测量高分辨率的结构性图像,但*功能性*成像又该如何实现呢?当神经元放电时会消耗能量,这会引发血管舒张,并导致血液延迟流入活跃区域:这就是血流动力学响应。这些血液的性质与基线状态不同:流量更大、流速更快、氧含量不同、颜色也不同。多种脑成像技术都利用了这一事实,测量这些性质中的一项或多项变化,包括 fMRI(BOLD)和 fNIRS。fUSI 则利用了这样一个事实:运动中的红细胞会导致后向散射波前中相长和相消干涉的模式发生改变——这种超声图像中精细的纹理称为斑点(speckle)。fUSI 以极快的速度采集脑部图像——超过 1 kHz——并追踪斑点随时间的变化。图像中变化的程度与血流量和血容量有关。fUSI 测得的信号变化百分比非常高:高达 20%,而 fMRI 的 BOLD 信号只有百分之几。
布鲁克林大桥长曝光,Sarowar2222 / Pixabay(https://substackcdn.com/image/fetch/$s_!2tsA!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1ec40135-fb5b-4429-97f5-eabc45762c8e_2048x1152.png)布鲁克林大桥长曝光,Sarowar2222 /Pixabay(https://pixabay.com/videos/bridge-brooklyn-bridge-brooklyn-117954/)
这里有一个直观的类比3(https://www.neuroai.science/p/functional-ultrasound-imaging-from#footnote-3),可以帮助理解这一机制。想象一张用长曝光拍下的、高分辨率的布鲁克林大桥夜景照片。水面看起来平滑如镜。但这张照片中的运动在哪里?为了追踪运动,我们可以拍摄这个场景的高速视频,然后用标准差来衡量每个像素在一段时间窗口内的亮度变化。对得到的图像进行色彩编码后,水面的波光粼粼会呈现明亮的红色——即使忽略潮汐,实际上并没有整体的流动。你可以用这种方法量化水面的波浪起伏程度,或者测量水面对快速驶过的船只的反应。因此,视频分析可以揭示流动4(https://www.neuroai.science/p/functional-ultrasound-imaging-from#footnote-4)。
如果你对摄影和摄像有一定了解,我相信你能看出这套分析方案的缺陷。如果我提高帧率从而缩短曝光时间,信噪比不会降到不可接受的程度吗?如果我手持相机,分析结果不会被打乱吗?仅仅计算标准差,我是否丢弃了太多信息?确实,困扰基于视频的运动分析的那些问题,也会影响 fUSI。让我们看看这些问题的具体细节。
常规超声通过扫描聚焦波束、并像潜艇里的声呐一样将其扫过视野来形成图像。fUSI 则采用了另一种复用策略:它不使用聚焦波束,而是发射平面波,波前平坦,一次性对整个成像平面进行超声照射,因此单次脉冲就能生成整幅图像。多个探测器可以随后解析出后向散射的来源。重复频率受限于回波返回换能器所需的时间:对于 10 厘米的往返距离、1500 m/s 的传播速度,重复频率可达 15 kHz。在实践中,以多个角度发射的平面波会进行多次重复的相干合成,从而将有效帧率降低到可控的水平。
Screenshot 2026-09-29 at 10.17.25 PM.png(https://substackcdn.com/image/fetch/$s_!rgHi!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F51bf6ac4-8d4f-47f8-8ad0-c1a24e85e612_1359x387.png)
接下来的重建问题,就是要根据每个阵元的时间序列来推断组织中散射体的密度。要做到这一点,我们需要思考超声波如何在组织中传播,而这可以用物理学**™**来解决。从头推导流体中声波的波方程是一个有趣的练习:实际上它与推导 Navier-Stokes 方程非常相似,只是采用了不同的一组近似假设。如果假设背景介质是均匀的,你就可以解析地推导出传播方程,并可以使用傅里叶变换来模拟这些方程。
image.png(https://substackcdn.com/image/fetch/$s_!-NQE!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffeba13c5-508c-4d1e-9901-480c514e42a5_680x505.png)
要执行重建,你需要注意到:如果你在某个换能器上于时刻 t 测量到一个信号 s(t),那么信号只能来自一个很小的空间切片:这种歧义在几何上呈现为圆锥曲线。每个阵元相对于波前和组织的几何构型略有不同,通过将这些圆锥曲线进行合成,(圆锥形的)歧义便得以消解。有几种不同的方法可以做到这一点,其中比较流行的一种是延迟-求和波束成形算法(https://arxiv.org/abs/2007.11960)。对于图像中的每个像素,你计算声波从换能器传播到该点再返回所需的时间,将这些延迟应用到原始信号上,然后在图像空间中对它们求和。相长干涉揭示了散射体的位置。
image.png(https://substackcdn.com/image/fetch/$s_!_YZK!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa1b8dcee-ae63-4da9-977f-e7f5409935a3_680x563.png)
与这类问题通常的情况一样,你也可以把它转化为一个线性重建问题,你会发现在这种形式下,灵敏度矩阵 A 的条件数非常好,A'A 矩阵接近对角矩阵。DAS 波束成形算法在某种意义上是"错误"的,因为它实际上是在用信号乘以转置矩阵,而不是使用伪逆;但就重建精度而言,这种更正确的方法也没有多少额外的提升空间。总而言之,重建问题本身相当直接,尽管可能有些微妙,因为重建过程发生在复数空间中;具体细节请参阅相关的 notebook。
使用 DAS 算法对仿体进行重建。(https://substackcdn.com/image/fetch/$s_!Z4v8!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa353f1d5-778e-4232-ba04-eb078cb63c37_598x490.png)使用 DAS 算法对仿体进行重建。
一旦我们拥有了一大批快速采集的图像,就可以使用滑动窗口的标准差估计来衡量图像中精细纹理的变化,以此作为血容量的代理指标。这就是所谓的功率多普勒(Power Doppler,PD)估计。这个名称具有误导性:PD 并不测量多普勒频移,只测量图像幅度和相位的变化。它对波束方向上以及与波束*正交*方向上的运动都敏感。其计算方式是对复数重建结果求标准差。模拟和解析解都表明,PD 主要对运动散射体的数量敏感,而对它们的速度不那么敏感(细节请参阅 notebook)。
杂波滤波是功能超声成像中的关键步骤。图片来源:Rabut 等人(2024)。(https://substackcdn.com/image/fetch/$s_!0rHe!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F46baaeca-42a7-45a7-99b7-59cdafeeb412_798x361.png)杂波滤波是功能超声成像中的关键步骤。图片来源:Rabut 等人(2024)。
功率多普勒估计的一个问题是,它对不由血流动力学响应引起的全局运动相当敏感(例如布鲁克林大桥类比中手持相机的情况)。在脑成像中,一切都处于运动状态:脉搏和呼吸会移动探头和组织(记住,大脑的质地就像温热的黄油!),而被试的运动也会通过头部传导过来。经典的解决方案叫做杂波滤波(clutter filtering):它从原始图像序列入手,利用 SVD 找到时空分解中的主成分,然后将它们丢弃。
在实践中,杂波滤波经常会丢弃图像序列中 >99% 的方差。这是一个相当粗暴的工具,很可能丢弃了远超实际需要的信息。更好的方案是使用分段刚体运动估计器直接估计并抵消运动;例如,使用原本用于钙成像分析的 NoRMCorre(https://github.com/flatironinstitute/NoRMCorre?tab=readme-ov-file)在(更温和的)杂波滤波之前校正全局运动。
标准差是否是局部红细胞运动的最佳估计,也并不明确。我们可以从其他学科汲取灵感:在漫射相关光谱(diffuse correlation spectroscopy)中,它利用光的相消和相长干涉来推断样本的相关信息,散射体的运动是从信号的*自相关*函数中读取的,而不是从标准差。如果功率多普勒信号主要对散射体的数量——即脑血容量——敏感,那么自相关衰减时间则更多地与速度——即脑血流量——成正比。这可以提供一个正交的分析通道,如 Tang 等人(2020)(https://pmc.ncbi.nlm.nih.gov/articles/PMC7509671/)所展示的。
使用自相关(b2)可以估计血流速度(d),而非血容量或散射体数量。图片来源:Tang 等人(2020)。(https://substackcdn.com/image/fetch/$s_!knqV!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff9cacaf3-362a-4e94-8025-33825277fe3b_800x576.png)使用自相关(b2)可以估计血流速度(d),而不是血容量或散射体数量。图片来源:Tang 等人(2020)。
最后,可以设想完全放弃这些信号处理步骤,直接使用端到端的深度学习方法来编码图像序列进行解码。遗憾的是,这类数据几乎没有公开可用的,无法基于真实数据为 fUSI 训练一个基础模型,但模拟数据也许可以奏效:你只需要确保深度学习方法最终能够处理每秒数千帧的数据。
假设如 Rabut 等人(2024)所做的那样,我们在一个范式中测量运动皮层上方去杂波后的功率多普勒信号,在这个范式中,患者被指示以不同方式使用操纵杆来绘制图像。这类时间序列——其中的活动被认为与外部信号在时间上锁定——可以用一些与分析 fMRI 相同的方法进行有效分析。这意味着广义线性模型(GLM)、解码与编码模型、多体素模式分析(MVPA)及其所有变体。例如,我们可以使用 GLM 找到受运动意图调制的体素;我们可以使用解码器(例如逻辑回归)来判断患者尝试朝哪个方向移动操纵杆。
image.png(https://substackcdn.com/image/fetch/$s_!-MxR!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F49a73a52-cd1f-4973-800a-b057bfc78beb_1116x406.png)
一个有趣的开放性问题是:与 fMRI 相比,fUSI 额外的分辨率在解码精度上能带来多少提升。这很可能取决于所研究的变量
相似文章
Bio-MF:低延迟高保真EEG到fNIRS跨模态生成用于混合运动想象脑机接口
Bio-MF是一个一步式生成框架,用于EEG到fNIRS跨模态生成,实现混合运动想象脑机接口的低延迟高保真合成。
脑部超声成像
Aleph Neuro宣布通过颅骨超声定位显微镜首次获得活体人脑3D图像,体积分辨率比CT高100倍。该公司开源其成像流程和数据集。
基于小波图像变换和谱流匹配的功能磁共振时间序列生成用于脑疾病识别
本文提出DSFM,一种新颖的生成框架,利用小波分解和谱流匹配合成逼真的fMRI时间序列,用于脑疾病识别,解决了数据稀缺和非平稳性挑战。
全横截面人体超声断层成像
一篇描述全横截面人体超声断层成像的论文,可能展示了一种用于详细解剖可视化的新成像技术。
通过孪生自监督学习从fMRI中学习鲁棒且任务不变的功能表征
本文介绍了BrainSimSiam,一种轻量级自监督框架,利用孪生网络从仅正样本对中学习鲁棒的fMRI表征,即使在有限数据下也能在下游任务上取得强劲表现。