视网膜数字孪生:用眼科影像构建癌症血管生成研究新模型
2026/9/2 20:24:41 网站建设 项目流程

视网膜数字孪生最近在生物医学圈子里讨论得越来越多。简单说,就是把视网膜影像、血流成像和病理过程映射成一套可以在计算机里反复运行的数字模型,再用它去研究其他器官的疾病机制。这个方向里有一个很有意思的落脚点:把视网膜数字孪生当作癌症模型来用。Simon Walker-Samuel 教授的工作经常被拿出来当切入点,不是因为视网膜上会长出真正的肿瘤,而是视网膜血管生成和肿瘤血管生成在分子机制上高度重叠,数字孪生能让我们在人体可观测的窗口里做原本很难做的机制实验。

这个方向适合谁看?如果你正在做可计算生物建模、医学图像分析,或者肿瘤血管生成相关研究,想找一条“数据容易获取、机制相对清晰、又和癌症强相关”的建模路径,视网膜数字孪生是一个很值得拆的方向。最值得关注的不是模型本身多复杂,而是它能不能把“只能观察”的疾病过程变成“可以干预、可以重复、可以参数化”的虚拟实验。先把这个定位搞清楚,后面再看数据、模型和验证,思路就不会乱。

1. 为什么偏要选视网膜来研究癌症

1.1 视网膜是人体中少见的“活体透明窗口”

人体里大多数器官看不见,想观察血管生成过程,只能通过切片、活检或者间接成像。视网膜不一样,它位于眼球后部,很多区域可以通过光学成像直接看,不需要切开组织,也不需要注射大量造影剂。眼底照相、OCT、OCTA这些技术已经发展得比较成熟,能比较稳定地捕捉视网膜血管的形态、血流信号和结构分层。

这意味着你能拿到时间序列的活体数据。同一个人的同一片视网膜,可以在不同时间点反复拍。抗血管生成药物用之前、用之后、隔几周再看,血管形态和血流信号的变化都在一条时间线上。对构建数字孪生来说,这是非常难得的校准数据来源,因为你不需要只靠一堆静态样本去推测动态过程。

我过去做建模时最头疼的问题不是算法,而是没有“同一个对象随时间变化”的数据。视网膜影像天然提供了这个条件,所以把它作为模型原型,在数据层面就已经赢了不少实验体系。

1.2 肿瘤与视网膜新生血管共享关键通路

肿瘤长大到一定体积后,必须建立新的血管网络来获取氧气和营养。这个新生血管过程会调用很多经典的分子通路,比如 VEGFA/VEGFR2、PDGF、Angiopoietin 这个系统。这些通路并不是肿瘤独有的,在视网膜的许多新生血管性疾病里同样非常重要,比如糖尿病视网膜病变、湿性黄斑变性。

临床上这个关联已经很直接了。抗 VEGF 药物既可以用来抑制肿瘤血管生成,也用来治疗部分眼底新生血管疾病。这说明在这两类疾病背后,血管生成、血管通透性增加、血管异常重构这些核心事件存在共同的机制基础。

所以做视网膜数字孪生,不是拿眼科疾病生搬硬套肿瘤,而是把血管生成这个跨疾病的机制放到一个更容易观测的器官里进行研究。你可以在视网膜影像上看到血管正在长、正在渗漏、正在退化,这些动态特征在肿瘤内部几乎看不见,但在模型里可以转译成肿瘤血管生成的相关假设。

1.3 它是“疾病机制模型”,不是把癌症放进眼睛

一个常见的误解是,既然说视网膜数字孪生作为癌症模型,那是不是把肿瘤细胞种到眼睛里建模?不是。这里说的是一种“机制同源模型”:把视网膜的血管网络、血流动力学和新生血管过程,作为研究肿瘤微环境和抗血管治疗策略的替代场景。

数字孪生可以记录血管分叉角度、血管直径、血流速度、无灌注区域面积这些几何和流体参数,再在这些数据上运行细胞型题模型或连续介质模型,模拟血管生成信号如何驱动血管生长、哪些区域更容易缺氧、抗血管药物干预后血管网络如何重构。这些计算结果不直接来自肿瘤样本,但问题框架是肿瘤血管研究关心的。

理解了这一点,后续所有步骤都围绕同一个目标展开:从视网膜里提取可计算的“血管生成表型”,把它变成一个模拟癌症血管机制的实验平台。

2. 视网膜数字孪生的核心组件:数据、结构和动态

2.1 数据层:多模态成像决定模型上限

数字孪生不是凭空建出来的,它能还原多少真实信息,首先取决于数据层。视网膜数字孪生最常用的数据来自眼底影像、OCT 结构影像和 OCTA 血管成像。眼底影像能看到大范围视网膜表面和主要血管;OCT 能看各层组织结构;OCTA 能检测血流信号,从而重建无造影剂条件下的血管网络。

我们做数据整理时,一般会同时收集同一个对象的多种影像模态,因为它们提供的信息互补:一套数据给几何结构,一套给血流动态,一套给组织分层。单模态数据也能起步,但模型边界会很窄,例如只有血管图没有血流信号,就只能做形态分析,很难模拟血流剪切力对血管内皮的影响。

这里需要客观评估设备条件。不同设备的分辨率、扫描范围、分层算法差异很大,有的能识别浅层毛细血管,有的只对较粗血管敏感。把设备参数和采集协议记清楚,比一上来追求高分辨率更重要,因为数字孪生模型的后续参数校准都要回溯到数据是怎么来的。

2.2 结构层:血管网络重建和几何参数化

拿到影像后,第一件事是把血管结构从背景中分离出来,形成一张可以计算的血管网络图。这个环节通常包含图像增强、去噪、血管分割、骨架提取和分支拓扑分析。

血管分割不是一次就能做好的,中间需要人工校正,尤其是毛细血管和低血流信号区域。分割完成后,把血管网络转成图结构,记录血管段、分叉节点、血管直径、弯曲度、分支长度这些几何信息。这些几何特征不能只当视觉结果看,它们是模型仿真的网格输入和边界条件。

我之前遇到的一种典型情况是:模型算出来的血流分布和预期差很远,排查到最后发现是分割阶段把两根相邻血管连成了一根,拓扑错一截,下游仿真全部跟着错。所以结构层必须做质量控制,不能直接拿未校正的分割结果喂给模型。

2.3 动态层:血流、氧输送和可观测生理指标

数字孪生比普通三维模型高级的地方,在于它有动态信息。视网膜影像里能提取的动态信息包括血流速度、血流密度、灌注区域边界、血管直径随时间的变化等。这些信息可以帮助构建血流动力学模型,估算血管阻力、剪切力、灌注压和氧供给的变化。

动态数据也提供了时间上的校准锚点。比如在药物干预后,某些血管段收缩或消失,某些区域血流恢复,这些变化可以用作模型参数调整的目标。模型不是预测一个固定形态,而是要预测“在什么干预条件下,血管网络如何随时间变化”。

动态层最麻烦的是时间分辨率。影像采集间隔可能很长,有的是几天,有的是几个月,而血管生成的分子过程发生在小时到天的尺度。建模时需要考虑时间尺度差异,不能把稀疏的观测点当成连续过程直接拟合。

2.4 机制层:把观测映射为可计算的疾病过程

结构层和动态层提供的是“发生了什么”,机制层则要解释“为什么会这样”。机制层通常以数学模型为基础,比如用连续介质方程描述血管生成因子浓度梯度,用细胞型题模型描述内皮细胞对的迁移、增殖和血管芽生成,用药理模型描述抗血管药物浓度和作用时间。

视网膜数字孪生中的机制层并不需要把所有分子通路都做进去,更多是选择与血管生成、血管通透性、血流调节直接相关的少数关键通路。通路选得太多,校准参数成倍增加,模型会变成很难收敛的“大杂烩”。我一般建议从一条核心通路开始,把机制层做到能解释主要观测现象就停,然后再扩展。

下面的表格可以帮助理解这个研究方向上的四层结构:

层级核心输入主要输出建模难点
数据层眼底影像、OCT、OCTA预处理后的图像和血流信号模态对齐、噪声处理
结构层分割后的血管图中心线、血管直径、拓扑网络毛细血管分割、拓扑错误
动态层时间序列影像和血流数据血流速度、灌注变化时间分辨率不足
机制层几何血管网络 + 动态参数虚拟干预结果、疾病进展预测参数过多、校准不收敛

这个拆分方式可以帮助刚接触的人快速判断:自己的输入到底在哪个层面,下一步要补哪个层面的信息。

3. 一版可落地的建模工作流:从影像到数字孪生原型

下面给出的是通用工作流,不是某个实验室的标准流程。实际落地时,要根据你的数据、设备和研究目标做取舍。这套流程的核心思路是从小到大,先跑通最小闭环,再逐步增加复杂度。

3.1 第一步:把生物学问题压缩成可量化目标

开始建模之前,先写清楚要回答什么问题。比如“抗血管生成药物如何改变视网膜血管网络密度”就是一个很具体的问题,它对应一个可量化的输出:血管密度的变化曲线。如果只看方法,很容易卡在无限丰富的细节里。

建议把目标写成一句话,并且规定好输入和输出。输入可以是某一种干预条件下的一组参数,输出可以是一个数值、一条曲线或一张血管网络图。目标不明确时,不要急着下载图像、跑模型,那样只会更快地陷入混乱。

3.2 第二步:准备数据并统一空间坐标系

影像数据必须先经过质量筛选和标注检查。先剔除模糊、运动伪影严重、信号截断的图像,剩余数据再进入流程。多模态数据需要配准,让同一个血管结构在不同模态图像中处在同一个坐标系下,否则后面合并信息会出现错位。

空间分辨率也要统一。不同设备输出的像素尺寸可能不同,建模前需要将图像重采样到统一尺度,并记录实际物理尺寸。另一个容易被忽略的点是视盘遮挡区域和扫描边缘,这些区域的血管信号通常不可靠,宁可删除也不要让它干扰建模。

如果多个时间点都要建模,还需要保证每次扫描的位置、方向尽量一致。这可以借助眼底血管特征点做配准,必要时做手动微调。数据准备阶段通常占用整个项目一半以上的时间,这是正常的。

3.3 第三步:血管分割与拓扑参数提取

血管分割可以先用公开分割模型或通用图像分割流程处理,再人工检查。重点检查三个区域:细小毛细血管、低血流信号区域、血管交叉处。分割后的二值图需要提取血管中心线,并用节点和边来描述拓扑结构。

拓扑参数包括:

  • 血管段数量
  • 分支点数量
  • 血管平均直径和直径分布
  • 血管弯曲度
  • 不同区域血管密度

提取完这些参数后,可以结合血流信号给每条血管段标注相对流速等级。这一步不需要做到完全精确,但要能稳定地反映相对差异,比如某段血流信号明显低于相邻段,这个信息对后续模型非常有用。

3.4 第四步:选择模型类型:血流动力学还是细胞型题

模型类型取决于研究问题。如果想研究血管网络对血流分配的影响,优先考虑血流动力学模型,基于血管网络的网格和压力边界条件求解流量分布。这类模型的优势是计算相对稳定,适合研究血管几何和阻力变化。如果想研究血管生成过程本身,也就是血管芽怎么长、分支怎么形成,那需要细胞型题模型或者基于反应扩散方程的连续模型。

视网膜数字孪生往往需要把两种模型结合起来:用血流模型计算血管网络内的剪切力和氧输送,再用细胞型题模型描述缺氧刺激下的血管芽分支。组合模型的复杂程度会明显上升,建议先在单一模型类型上验证完整流程,再添加耦合机制。

我开始做这类项目时,会选择血流动力学模型做主体,因为它在定性和定量上都容易和影像数据对照。细胞型题模型虽然更灵活,但参数空间更大,很难一步校准好。

3.5 第五步:参数初始化、校准和灵敏度分析

模型参数不能全部用默认值。关键参数包括血管直径、入口和出口血压、血液黏度、组织氧消耗速率、血管生成因子的产生与降解速率、药物浓度作用曲线等。这些参数有些可以查文献,有些只能通过模型校准得到。

校准的思路是让模型输出尽可能接近一组独立观测数据。比如用第一周影像建立初始血管网络,用第二周的影像作为校准目标,调节参数,使模型预测的血管密度变化与实际变化尽量接近。校准完成后,还要做灵敏度分析,看哪些参数对输出影响最大、哪些参数几乎没有影响。影响小的参数可以先固定,把有限的算力放在关键参数上。

如果模型始终无法匹配观测数据,先不要继续调参,回到数据检查:是不是分割错误、是不是时间点不匹配、是不是模型结构本身缺少了某个关键机制。

3.6 第六步:验证和输出指标

模型建完不等于能用。至少要用留出的一部分时间点数据做验证,不能用校准数据来宣称模型准确。常见验证指标包括血管密度相对误差、分支点位置重合率、无灌注面积变化趋势、血流速度分布对比等。

一个比较稳妥的做法是先做单次预测。把模型在 t1 时间的状态初始化,运行到 t2、t3,看预测结果和真实影像之间的差距。如果预测趋势和真实一致,方向就没问题。如果趋势相反,大概率是机制层少了某个关键驱动因素,优先补机制而不是继续调参数。

输出结果需要给出可视化图和定量表,特别要标注模型输入参数和边界条件,方便别人复现。

4. 在癌症研究里能替代什么、不能替代什么

4.1 能做的:虚拟实验、参数扫描和机制假设检验

视网膜数字孪生的最大价值之一是虚拟实验。你可以把抗血管生成药物浓度设成不同档位,在数字模型上重复运行几十次,观察血管网络密度、分支形态和灌注变化,而这些实验不需要额外做一次动物实验。

参数扫描也能用来探索机制。比如想知道“血管通透性增加”和“血管生成因子浓度升高”哪个对无灌注区域扩大影响更大,可以在模型中分别调整参数,量化各自的贡献。这种归属性实验在真实组织中很难做,因为无法同时控制所有变量。

还可以设计机制假设检验。如果某条抑制血管生成的通路被阻断,预测血管分支密度会如何变化,再用新的影像数据验证。这样数字孪生就不仅是数据拟合工具,而是一个能生成假说、推动实验设计的虚拟平台。

4.2 不能做的:分子突变、免疫微环境和组织特异性

视网膜和肿瘤虽然共享血管生成机制,但毕竟不是同一个器官系统,更不是同一种癌症亚型。肿瘤驱动基因突变、免疫细胞浸润、成纤维细胞活化、肿瘤细胞与内皮细胞之间的复杂互动,视网膜数字孪生很难完整还原。它可以研究血管生成这个子系统,但不能替代患者肿瘤类器官、基因工程小鼠或者从体内取样得到的病理数据。

视网膜组织的细胞组成、细胞外基质硬度、血流供应方式和肿瘤组织差异明显。在视网膜模型上得到的最优给药策略,不能直接外推到所有癌症类型上,除非已经通过专门的数据验证了与目标肿瘤模型的等价性。

这个边界非常重要。如果一个研究者把视网膜数字孪生当成万能抗癌模型,说明他还没有理解模型要解决的具体问题是什么。它更适合作为早期机制筛选平台,而不是最终疗效判断工具。

4.3 模型边界:从同源性到等价性之间还有距离

同源性不等于等价性。视网膜和肿瘤血管生成共享一部分分子通路,但通路的激活条件、空间时间组织方式和微环境反馈逻辑不同。数字孪生在这里体现的是一种“关键机制层面的同构”。

要缩小这个距离,需要做外部验证。比如在实验中培养的内皮细胞血管生成模型,或者肿瘤切片血管网络数据,与视网膜数字孪生的计算结果进行对照。只有在多个尺度上得到一致趋势,才能把结论推广到癌症研究场景。

实际项目中,我比较推荐把视网膜数字孪生定位成“血管生成研究的高通量测试床”,而不是“肿瘤患者的数字化替身”。定位越清楚,后续验证设计越容易,报告也越好写。

5. 从踩坑经验里整理出的排查顺序

5.1 先看图像分割,再看模型参数

很多看似模型的问题,追到源头其实出在分割。血管连接错误、断点、噪声导致的假分支,都会让拓扑参数扭曲,进而影响后续仿真。模型跑出来的血流分布和影像对不上时,第一件要做的是把分割结果和原始影像叠在一张图里看,而不是去调节黏度或血压参数。

我曾经遇到过模拟结果在一个区域反复出现高剪切力,排查很久才发现是该处两条血管在分割时被错误连接成一条短回路,导致流量分配异常。所以在写结论前,先确认结构输入是正确的。

5.2 分不清“仿真不收敛”和“生物学参数错了”

模型不收敛时,一般先看数值稳定性。时间步长太大、网格质量差、边界条件设置不合理,都会导致迭代发散。换更小的时间步长、优化网格,通常能解决。

但如果数值已经收敛,预测结果仍然完全脱离观测范围,那就要怀疑生物学参数或模型结构。比如血管生成因子降解速率设置过低,会导致模拟血管过度生成,数值上很稳定,但生物学上不现实。这里需要逻辑判断,不能只盯着残差曲线。

5.3 警惕高复杂度、低可解释性:模型复杂不等于准确

增加模型细节会让结果看起来更丰富,但参数越多,校准难度越大,结果也越难解释。一个能准确预测血管密度的简单模型,比装了十几个参数但每个参数都无法验证的复杂模型更有价值。

做数字孪生时,应该建立一个“最小机制集”原则:把能够解释核心现象最少的机制保留下来,其余机制留给后续扩展。每加一个机制,就要问一下:没有它,模型还能解释这个现象吗?如果不能,再考虑加进去。

5.4 验证时要区分拟合、预测和泛化

模型在校准数据上表现很好,不意味着在新时间点上也表现很好。必须把校准和验证数据分开,并且尽量使用不同病情阶段的数据来测试泛化能力。如果模型能预测一个未参与校准的时间点,可以说它有基本的预测性;如果模型只能在训练集上复现历史,那只是拟合。

对数字孪生来说,泛化能力尤其重要。因为模型的目标是模拟新的干预条件和新的时间序列,如果泛化能力不足,用起来就和“高级插值工具”没区别。

6. 没有现成设备和数据时,怎么从零开始

6.1 先建立最小数据集:不是越多越好

如果你没有眼科影像设备,没有医院合作,也可以从公开数据集或实验室已有数据开始。但不要一上来就把几个数据集全部混在一起,模型格式不一致会导致预处理崩溃。

先选一小部分图像质量高、时间序列完整、包含病变和随访信息的影像作为最小有效数据集。一张高质量的 OCTA 图像,配合一个时间点的血管标注,足够跑通分割、拓扑提取和简单血流仿真。模型跑通后,再逐步扩充数据量。

6.2 用开源工具做图像预处理和血管增强

许多医学图像处理工具可以完成图像输入、去噪、血管增强和基础分割。不要急着重新发明算法,先用现成工具链把数据流程跑通。需要关注的模块包括视网膜图像中心裁剪、对比度归一化、血管分割模型和骨架提取。

实际使用时要确认工具的输入格式是否匹配,比如某些预处理流程只接受灰度图,需要先做颜色通道转换。每个步骤都要记录参数,否则后期无法复现。

6.3 先用简单模型跑通机制,再换复杂参数

最开始可以不用流体仿真软件,也不必一开始就做三维模型。可以用简化的二维血管网络图,把血管当作管路,设置入口流量、出口压力,计算各血管段流量分布和可能的缺氧区域。这个简化模型已经能解释很多问题,也能帮你发现自己缺少哪些关键数据。

等到简单模型稳定了,再考虑更精细的三维血管网格、氧输运模型或者细胞型题模型。复杂模型的意义是在简单模型解释不了的场景中发挥价值,而不是在第一版就做出来显示实力。

6.4 和临床或实验团队建立闭环协作

数字孪生研究很难在单一人群手里完成。做算法和建模的人需要临床团队提供影像采集质量、设备参数、随访资料;临床团队需要建模团队提供可量化的评估指标和预测结果。合作双方最好从项目一开始就确定好数据字段、时间点定义和输出格式。

哪怕你只是一个人做,也要给自己建立一条“数据—模型—验证—新数据”的闭环。每一步留出检查节点,不要等到模型建完才回头看数据是否对得上。这样做的好处是,任何一步出问题,定位范围都小得多。

踩过几次之后我发现,很多问题不是模型算法不够先进,而是前置数据和环节没有处理干净。视网膜数字孪生作为癌症研究的实验模型,最大的优势是数据可见、机制清晰、跨疾病共享通路清晰;最大的陷阱则是把建模这件事想象成一个只靠算法就能完成的纯计算任务。先把生物学问题定准确,再按最小闭环搭建数字孪生雏形,这条路会比一开始追求大而全更稳当地走通。

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询