3、空间分辨率:调制传递函数(MTF)原理、线对测试卡法、边缘法测量MTF、影响空间分辨率的因素

3.1 空间分辨率——成像系统的「视力表」

空间分辨率,说白了就是成像系统能分辨两个相邻物体的能力。

我经常跟刚入行的同事打比方:这就像你去配眼镜,验光师让你看视力表。能看清第几行,就代表你的「空间分辨率」有多高。成像系统也一样,它也有自己的「视力表」。

在医学成像里,空间分辨率直接决定了你能不能看清病灶的边界。比如一个微小的钙化点,或者一根细小的血管。分辨率不够,这些细节就糊成一团了。

嗯,这里要注意:空间分辨率不是越高越好。它跟噪声、对比度、剂量(如果是X射线)都有关系。我见过不少工程师一味追求高分辨率,结果图像噪声大得没法看。这是个典型的坑。

3.2 调制传递函数(MTF)原理

MTF,全称是Modulation Transfer Function。它是描述成像系统空间分辨率最科学、最完整的工具。

你想想看,一个点经过成像系统后,会变成一个模糊的斑(这叫点扩散函数,PSF)。MTF就是PSF在频域里的表现。它告诉你:系统对不同空间频率的「对比度传递能力」是怎样的。

具体来说:

  • 低频部分:代表大物体的信息,MTF值通常接近1(传递得好)
  • 高频部分:代表小细节的信息,MTF值逐渐下降
  • 截止频率:MTF降到0的频率点,系统完全无法分辨

我个人习惯用MTF曲线来评估一台新设备的性能。曲线下的面积越大,说明系统整体成像质量越好。

核心公式:

MTF(f) = |OTF(f)| = |FT{PSF(x)}|

其中OTF是光学传递函数,FT是傅里叶变换,PSF是点扩散函数。

实际工作中,我们很少直接测PSF。因为理想点源太难做了。所以有了下面两种工程方法。

3.3 线对测试卡法

这是最直观的方法。我最早接触MTF就是从线对卡开始的。

线对测试卡上印着不同频率的明暗条纹。从低频到高频,一组一组排列。你把测试卡放在成像视野里,拍一张图像,然后看能分辨到第几组。

具体步骤:

  1. 放置线对测试卡,确保与探测器平面平行
  2. 设置标准曝光条件(我建议至少拍3次取平均)
  3. 在图像上找到能清晰分辨的最后一组线对
  4. 记录对应的空间频率(单位:lp/mm)

举个例子:

线对组号 空间频率 (lp/mm) 肉眼分辨情况
1 0.5 清晰
2 1.0 清晰
3 2.0 勉强
4 3.0 模糊

这种方法简单粗暴,但有个问题:它依赖观察者的主观判断。不同人看同一张图,结果可能差一档。我曾经在验收时遇到过这种情况——厂家说能看清3.0 lp/mm,我这边工程师说只能到2.0。最后用边缘法做了定量分析才解决争议。

避坑指南:

我曾经吃过一次亏:测试卡没放正,稍微歪了一点,结果高频线对全糊了。后来我养成了习惯——每次放测试卡都用水平仪校准,确保±0.5度以内。

3.4 边缘法测量MTF

边缘法是目前最主流的MTF测量方法。它用一块边缘锐利的挡板(通常是钨钢或铅板),放在成像视野里,拍一张图像。

原理其实不复杂:

  1. 获取边缘图像(理想边缘是一个阶跃函数)
  2. 提取边缘扩散函数(ESF)
  3. 对ESF求导,得到线扩散函数(LSF)
  4. 对LSF做傅里叶变换,取模,得到MTF

代码实现(Python示例):

import numpy as np
from scipy import ndimage, fft

def edge_to_mtf(edge_image, pixel_size_mm):
    # 1. 提取边缘位置
    edge_row = np.mean(edge_image, axis=0)
    
    # 2. 计算ESF
    esf = edge_row / np.max(edge_row)
    
    # 3. 求导得到LSF
    lsf = np.gradient(esf)
    
    # 4. 傅里叶变换
    mtf_raw = np.abs(fft.fft(lsf))
    mtf = mtf_raw[:len(mtf_raw)//2]
    mtf = mtf / mtf[0]  # 归一化
    
    # 5. 计算频率轴
    nyquist = 1 / (2 * pixel_size_mm)
    freq = np.linspace(0, nyquist, len(mtf))
    
    return freq, mtf

边缘法的好处是:客观、可重复、能给出完整的MTF曲线。我参与过的几个大型设备验收项目,都是用这个方法做最终判定。

注意事项:

  • 边缘挡板必须足够厚,确保X射线完全吸收
  • 边缘要尽量与探测器像素矩阵对齐(我一般控制在1度以内)
  • 至少采集5个不同位置的边缘数据取平均
  • 注意避开探测器坏点区域

3.5 影响空间分辨率的因素

做了这么多年成像系统,我总结出几个关键因素:

  • 探测器像素尺寸:像素越小,理论分辨率越高。但像素太小会降低信噪比。
  • 焦点尺寸:X射线管焦点越大,几何模糊越严重。我见过一台老设备,焦点0.6mm,分辨率怎么也上不去。
  • 散射:散射光子会降低对比度,间接影响分辨率。加滤线栅能改善,但会增加剂量。
  • 重建算法:在CT里,重建核的选择直接影响MTF。锐利核分辨率高但噪声大,平滑核反之。
  • 患者运动:呼吸、心跳、甚至微小的抖动都会导致运动模糊。这其实是临床中最难控制的因素。

你想想看,这些因素往往是相互制约的。提高分辨率,可能牺牲噪声或剂量。所以实际工作中,我们要根据临床需求做权衡。

我的经验:

做系统校准时,我一般先测MTF,再测噪声功率谱(NPS)。两个放在一起看,才能全面评价系统性能。单看MTF容易「偏科」。

3.6 知识体系总览

下面这张图概括了本章的核心逻辑:

空间分辨率评估 MTF原理 线对测试卡法 边缘法测量MTF 核心概念 • 点扩散函数(PSF) • 线扩散函数(LSF) • 光学传递函数(OTF) • 截止频率 操作流程 1. 放置线对测试卡 2. 设置曝光条件 3. 肉眼判读 4. 记录极限频率 计算步骤 1. 提取边缘图像 2. 计算ESF 3. 求导得LSF 4. FFT得MTF 影响因素:像素尺寸 | 焦点尺寸 | 散射 | 重建算法 | 患者运动

这张图把本章的知识点串起来了。从MTF原理出发,引出两种测量方法,最后落到影响因素上。做系统评估时,我习惯按这个逻辑走一遍,基本不会漏掉关键点。


公众号:蓝海资料掘金营,微信deep3321