本方案采用基于直接线性变换校准的立体成像相机系统,用于采集三维数据 原位 拉伸状态下周围神经的位移。通过捕捉这些位移,可确定在不同拉伸程度下所诱发的应变,从而明确与拉伸相关的神经损伤阈值,推动基于拉伸机制的神经修复科学的发展。
本方案采用基于直接线性变换校准的立体成像相机系统,用于采集三维数据 原位 拉伸状态下周围神经的位移。通过捕捉这些位移,可确定在不同拉伸程度下所诱发的应变,从而明确与拉伸相关的神经损伤阈值,推动基于拉伸机制的神经修复科学的发展。
周围神经在发育、正常关节运动、损伤以及近期的手术修复过程中会经历生理性和非生理性拉伸。了解周围神经对拉伸的生物力学响应,对于理解其在不同载荷条件下的反应至关重要,从而有助于优化治疗策略和外科干预措施。本方案详细描述了通过直接线性变换法对立体成像相机系统进行校准的过程,以及对三维位移的追踪方法 原位 通过校准的立体成像相机系统捕获的视频文件三维坐标,获得拉伸过程中周围神经的组织位移。
从获得的三维坐标中,可计算拉伸状态下周围神经的神经长度、神经长度变化量以及随时间变化的应变百分比。使用立体成像相机系统可提供一种非侵入性方法,用于捕捉周围神经在拉伸过程中的三维位移。直接线性变换技术能够实现对拉伸过程中周围神经长度的三维重建,从而测量应变。目前尚无任何方法可用于研究 原位 使用通过直接线性变换校准的立体成像相机系统测量拉伸周围神经的应变。捕捉 原位 周围神经在受到拉伸时的应变不仅有助于临床医生理解神经过度拉伸所致损伤的潜在机制,还可为依赖拉伸干预的治疗策略优化提供支持。本文所述方法有望加深我们对周围神经在拉伸条件下生物力学响应的理解,从而改善神经损伤管理和康复领域的患者预后。
周围神经(PNs)在发育、生长、正常关节运动、损伤和手术过程中会受到牵拉1。周围神经具有黏弹性特性,可在日常活动中保护神经2,3,并维持其神经纤维的结构健康2。由于周围神经对机械牵拉的反应已被证实取决于神经纤维损伤类型4、邻近结缔组织的损伤情况2,4以及测试方法(如加载速率或方向)5,6,7,8,9,10,11,12,13,14,因此有必要区分周围神经在慢速和快速牵拉条件下,于生理活动范围与非生理性活动范围内的生物力学反应差异。这有助于进一步理解牵拉所致周围神经损伤的机制,并为及时且优化的干预措施提供支持1,4,15,16。目前物理治疗领域日益重视基于神经生理学与生物力学之间关系的评估与干预策略17。通过了解不同载荷条件下周围神经生物力学特性的差异,物理治疗师能够更好地调整现有的干预方案17。
现有PNs在拉伸刺激下的生物力学数据仍存在差异,这可能归因于测试设备与实验程序的不同,以及伸长数据在分析方法上的差异5,6,7,8,9,10,11,12,13,14,16此外,测量三维(3D) 原位 神经移位在现有文献中描述尚不充分。既往研究采用立体成像技术以最大限度提高对椎间关节囊组织位移三维重建的准确性。18,19直接线性变换(DLT)技术能够将两个或多个二维(2D)视图转换为三维真实世界坐标(即,以 mm 为单位)20,21,22DLT 为立体成像相机系统提供了一种高精度的标定方法,因为它能够精确重建三维位置,校正镜头畸变、相机参数和图像坐标,并允许立体成像相机系统的配置具有灵活性。20,21,22使用DLT校准的立体成像相机系统的研究通常用于步态与运动分析22,23本方案旨在提供一种详细的方法,用于确定 原位 使用DLT校准的立体成像相机系统和开源追踪软件对不同程度拉伸的PNs菌株进行应变分析22.
所有所述操作程序均经德雷塞尔大学机构动物护理和使用委员会(IACUC)批准。新生仔猪来自美国宾夕法尼亚州一家经美国农业部(USDA)批准的农场。
1. 立体成像系统设置

图1:立体成像相机系统。(A)平行式立体成像相机系统,包含两个相机(左相机和右相机),其间基线距离为63 mm。(B)立体成像相机系统及支架设置的示意图。请点击此处查看该图的放大版本。
2. 立体成像系统DLT校准——对三维控制体进行数字化处理

图2:三维控制体积及带脚踏板的数字化仪。(A)三维控制体积示意图。(B)用于数字化三维控制体积以获取(x, y, z)坐标(单位:mm)的带脚踏板数字化仪组件。缩写:3D = 三维。请点击此处查看该图的放大版本。
3. 立体成像相机系统的校准——直接线性变换系数的生成

图3:利用立体成像相机系统获取三维控制体积图像并进行直接线性变换校准的示意图。(A)将立体成像相机系统固定在支架上,并通过 USB Type-C 线缆连接至笔记本电脑。将三维控制体积置于立体成像相机系统下方 6 cm 处。(B)使用成像软件拍摄三维控制体积的图像。输出图像为来自左、右相机的合成图像。(C)利用自定义的 MATLAB 代码,将合成输出图像分离为三维控制体积的左、右单幅图像。缩写:3D = 三维。请点击此处查看该图的放大版本。

图4:生成双相机成像系统左右相机视图的直接线性变换系数的示意图。(A)运行 DLTcal5.m22,在 controls 窗口中点击 initialize,然后选择包含三维控制体积数字化后(x, y, z)坐标(单位为 mm)的 *.csv 文件。(B)选择左相机视图的校准图像,然后按照先前数字化的相同顺序选择图像上的对应点,接着点击 compute coefficients,以生成左相机视图的 DLT 系数。随后点击 Add camera,对右相机视图重复上述步骤。(C)选择右相机视图的校准图像,然后按照数字化时的相同顺序选择图像上的点,接着点击 compute coefficients,以生成右相机视图的 DLT 系数。(D)点击 Save Data 以选择保存左右相机视图 DLT 系数的目录,输入输出文件名后点击 OK,DLT 系数将被保存为 *.csv 文件。缩写:3D = 三维,DLT = 直接线性变换。请点击此处查看该图的放大版本。
4. 数据采集

图 5:周围神经拉伸数据采集的代表性示意图。(A)将立体成像相机系统固定在支架上,然后通过 USB Type-C 线缆连接至笔记本电脑。将立体成像相机系统置于周围神经上方,距离不超过 6 cm。(B)在远端将周围神经夹紧于机械装置上。使用油墨皮肤标记笔,在神经的起始点和夹持点处做标记,并沿神经长度方向额外标记两到四个点。在测试前、测试中和测试后,向周围神经喷洒生理盐水以保持其湿润。请点击此处查看该图的放大版本。
5. 数据分析——标记物轨迹追踪

图 6:建立新项目以开始三维轨迹跟踪的示意图。(A)运行 DLTdv7.m22,并点击新建项目以创建一个新项目。(B)将视频文件数量设为2。(C)选择视频1文件(即左相机视角),然后选择视频2文件(即右相机视角)。(D)由于视频文件来自经过DLT校准的立体成像相机系统,因此选择是,然后选择包含DLT系数的*.csv文件。(E)所选视频文件现已准备就绪,可进行跟踪。请点击此处查看此图的放大版本。
| 关键/点击 | 描述 |
| 左键单击 | 点击帧中某点的轨迹追踪 |
| (+) 关键点 | 缩放当前视频帧 在 围绕鼠标指针 |
| (-)关键 | 缩放当前视频帧 出 鼠标指针周围 |
| (i) 关键步骤 | 移动点 向上 |
| (j) 关键 | 移动点 左侧 |
| (k) 关键步骤 | 移动点 右侧 |
| (m) 关键 | 移动点 向下 |
表1:用于追踪点轨迹的键盘和鼠标快捷键。

图7:使用 DLTdv7.m22 在视频1和视频2中对组织标记点进行初始点放置的示意图。(A)将当前点设为1。在视频1中的插入点标记上放置点1。利用视频2中的蓝色极线,在插入点标记上放置点1。(B)将当前点设为2。在视频1中的标记点1上放置点2。利用视频2中的蓝色极线,在标记点1上放置点2。(C)将当前点设为3。在视频1中的标记点2上放置点3。利用视频2中的蓝色极线,在标记点2上放置点3。(D)将当前点设为4。在视频1中的标记点3上放置点4。利用视频2中的蓝色极线,在标记点3上放置点4。(E)将当前点设为5。在视频1中的标记点4上放置点5。利用视频2中的蓝色极线,在标记点4上放置点5。(F)将当前点设为6。在视频1中的夹具标记上放置点6。利用视频2中的蓝色极线,在夹具标记上放置点6。 请点击此处查看此图的放大版本。

图8:使用 DLTdv7.m22 追踪视频1中标记点轨迹的示意图。(A)将帧编号设为1,当前点设为1,自动追踪模式设为自动前进,自动追踪预测器设为扩展卡尔曼滤波。(B)将当前点设为1。在视频1文件中,通过逐帧左键点击,开始追踪插入标记(即点1)的位移,直至最后一帧。(C)将帧编号设为1,当前点设为2。在视频1文件中,通过逐帧左键点击,开始追踪标记点1(即点2)的位移,直至最后一帧。(D)将帧编号设为1,当前点设为3。在视频1文件中,通过逐帧左键点击,开始追踪标记点2(即点3)的位移,直至最后一帧。(E)将帧编号设为1,当前点设为4。在视频1文件中,通过逐帧左键点击,开始追踪标记点3(即点4)的位移,直至最后一帧。(F)将帧编号设为1,当前点设为5。在视频1文件中,通过逐帧左键点击,开始追踪标记点4(即点5)的位移,直至最后一帧。(G)将帧编号设为1,当前点设为6。在视频1文件中,通过逐帧左键点击,开始追踪夹具标记(即点6)的位移,直至最后一帧。 请点击此处查看该图的放大版本。

图9:使用 DLTdv7.m22 追踪视频2中标记点轨迹的示意图。(A)将帧编号设为1,当前点设为1,自动追踪模式设为自动前进,自动追踪预测器设为扩展卡尔曼滤波。(B)将当前点设为1。利用视频2文件中的蓝色极线,通过逐帧左键点击的方式,开始追踪插入标记(即点1)的位移,直至最后一帧。(C)将帧编号设为1,当前点设为2。利用视频2文件中的蓝色极线,通过逐帧左键点击的方式,开始追踪标记1(即点2)的位移,直至最后一帧。(D)将帧编号设为1,当前点设为3。利用视频2文件中的蓝色极线,通过逐帧左键点击的方式,开始追踪标记2(即点3)的位移,直至最后一帧。(E)将帧编号设为1,当前点设为4。利用视频2文件中的蓝色极线,通过逐帧左键点击的方式,开始追踪标记3(即点4)的位移,直至最后一帧。(F)将帧编号设为1,当前点设为5。利用视频2文件中的蓝色极线,通过逐帧左键点击的方式,开始追踪标记4(即点5)的位移,直至最后一帧。(G)将帧编号设为1,当前点设为6。利用视频2文件中的蓝色极线,通过逐帧左键点击的方式,开始追踪夹具标记(即点6)的位移,直至最后一帧。请点击此处查看该图的放大版本。
6. 数据分析—应变分析
(1)
(2)
(3)采用所述方法可获得多种输出文件。DLTdv7.m *_xyzpts.csv(补充文件 12)包含每个时间帧中各追踪点的(x, y, z)坐标(单位为毫米),用于进一步计算被拉伸周围神经(PN)的长度、长度变化及应变。被拉伸周围神经的代表性长度-时间、长度变化-时间及应变-时间曲线如图10所示。该被拉伸的周围神经具有一个插入标记、沿其长度分布的四个标记,以及由六个节段组成的夹具标记。通过量化被拉伸周围神经的整体和节段性应变,可更深入理解这些结构的非均质性以及各节段对整体拉伸的贡献。长度-时间曲线(图10A)和长度变化-时间曲线(图10B)用于计算应变-时间曲线(图10C)。除图表外,还导出包含图表数据(即时间、长度、长度变化和应变)的电子表格文件(补充文件 17)。

图10:拉伸周围神经的应变-时间、长度变化-时间及长度-时间代表性曲线图。(A)整条神经(即节段1)以及相邻标记之间所有节段(即节段2-6)的长度-时间曲线图。(B)整条神经(即节段1)以及相邻标记之间所有节段(即节段2-6)的长度变化-时间曲线图。(C)整条神经(即节段1)以及相邻标记之间所有节段(即节段2-6)的应变-时间曲线图。请点击此处查看该图的放大版本。
其余三个 DLTdv7.m 输出文件(补充文件 11、补充文件 13 和 补充文件 14)以及输出项目(补充文件 15)可用于重新加载项目,以便在需要重新追踪标记点轨迹时使用。
补充图 S1:三维(3D)控制体的输出图像。 使用平行立体成像相机系统和成像软件系统,经直接线性变换校准后获取的三维(3D)控制体输出图像。请点击此处下载该文件。
补充图 S2:三维(3D)控制体的左视图。用于直接线性变换校准的三维(3D)控制体的左视图。请点击此处下载该文件。
补充图 S3:三维(3D)控制体的右视图。用于直接线性变换校准的三维(3D)控制体的右视图。请点击此处下载该文件。
补充图 S4:长度-时间输出图。(A-F)每个时间段内各片段的长度-时间输出图。请点击此处下载该文件。
补充图 S5:长度-时间输出图的变化。(A-F)每个时间段内各节段的长度-时间输出图变化。请点击此处下载该文件。
补充图 S6:应变-时间输出图。(A-F)每个时间段内各节段的长度-时间输出图。 请点击此处下载该文件。
补充文件 1:自定义 MATLAB 代码 crop_left_right_stereoimage.m。 用于将输出图像分割为左图像和右图像的自定义 MATLAB 代码。 请点击此处下载该文件。
补充文件 2:DLTcal5.m22。 用于获取平行立体成像相机系统直接线性变换系数的开源 MATLAB 代码。请点击此处下载该文件。
补充文件3:三维(3D)控制体积数字化点。 电子表格文件(3D Control Volume_Digitized Pts.csv),包含三维控制体积表面上各点的数字化坐标(x, y, z),单位为毫米。请点击此处下载该文件。
补充文件4:DLTcal5.m输出的电子表格文件,包含三维(3D)控制体点的(x, y)像素坐标。 输出的电子表格文件(cal01_JOVE_test_xypts.csv),其中包含使用DLTcal5.m22计算得到的三维(3D)控制体点的(x, y)像素坐标。请点击此处下载该文件。
补充文件5:DLTcal5.m输出的电子表格文件,包含11个直接线性变换(DLT)系数。 输出的电子表格文件(cal01_JOVE_test_DLTcoefs.csv),其中包含使用DLTcal5.m22获得的立体成像相机系统左、右相机视角的11个DLT系数。请点击此处下载该文件。
补充文件 6:自定义 MATLAB 代码 crop_left_right_stereovideo.m。 用于将输出的视频文件分割为两个视频文件,即左相机和右相机视频文件的自定义 MATLAB 代码。请点击此处下载该文件。
补充文件 7:拉伸的周围神经输出视频文件。 拉伸的周围神经输出视频文件(nerve3_105-Nov-2021video.avi),包含左、右摄像头视图的合并视频文件。请点击此处下载该文件。
补充文件 8:拉伸状态下外周神经的左摄像头视角视频文件(即视频 1)。 用于通过 DLTdv7.m22 追踪标记点轨迹的外周神经拉伸过程左摄像头视角视频文件(nerve3_105-Nov-2021video_left.avi)。请点击此处下载该文件。
补充文件9:拉伸状态下外周神经的右侧相机视角视频文件(即视频2)。 用于通过DLTdv.7.m22追踪标记点轨迹的外周神经右侧相机视角视频文件(nerve3_105-Nov-2021video_right.avi)。请点击此处下载该文件。
补充文件 10:DLTdv7.m22。 开源 MATLAB 代码,用于追踪通过使用直接线性变换校准的立体成像相机系统获取的视频文件中的标记点轨迹。请点击此处下载该文件。
补充文件 11:DLTdv7.m 输出文件 *_xypts.csv。 第一个 DLTdv7.m 输出文件是 *_xypts.csv(例如 nerve3_105-Nov-2021videoanalyzed_cal09.30_trial1_xypts.csv),其中包含每个时间帧中每个追踪点的像素坐标 (x1, y1)、(x2, y2) 等。请点击此处下载该文件。
补充文件 12:DLTdv7.m 输出文件 *_xyzpts.csv。 第二个 DLTdv7.m 输出文件为 *_xyzpts.csv(例如 nerve3_105-Nov-2021videoanalyzed_cal09.30_trial1_xyzpts.csv),其中包含每一帧时间中每个被追踪点的实际世界坐标(单位为毫米),即 (x1, y1, z1)、(x2, y2, z2) 等。请点击此处下载该文件。
补充文件 13:DLTdv7.m 输出文件 *_xyzres.csv。 第三个 DLTdv7.m 输出文件为 *_xyzres.csv(例如 nerve3_105-Nov-2021videoanalyzed_cal09.30_trial1_xyzres.csv),其中包含每个时间帧中每个被追踪点的 DLT 残差值。请点击此处下载该文件。
补充文件 14:DLTdv7.m 输出文件 *_offset.csv。 第一个 DLTdv7.m 输出文件为 *_offset.csv(nerve3_105-Nov-2021videoanalyzed_cal09.30_trial1_offsets.csv),其中包含每个时间帧中每个被追踪点的视频 1 和视频 2 的偏移量。请点击此处下载该文件。
补充文件 15:DLTdv7.m 项目输出文件 *_dvProject.mat。 DLTdv7.m 项目输出文件(nerve3_105-Nov-2021videoanalyzed_cal09.30_trial1_dvProject.mat)包含视频文件路径、所有界面设置、所有点击标记点的轨迹以及校准信息,便于在需要时重新加载项目并进行修改。请点击此处下载该文件。
补充文件 16:自定义 MATLAB 代码 PercentStrain_3D.m。 用于计算在每个时间点相邻标记之间被拉伸神经的长度、长度变化及应变百分比的自定义 MATLAB 代码。请点击此处下载该文件。
补充文件 17:PrecentStrain_3D.m 输出文件 *_3Dstrain.xls。 输出文件 *_3Dstrain.xls(例如 nerve3_105-Nov-2021_3Dstrain.xls),其中包含每个时间帧中每个追踪点的时间、长度、长度变化及应变数据。请点击此处下载该文件。
由于牵拉损伤导致的周围神经(PNs)生物力学特性研究结果存在差异,这种差异可归因于测试方法的不同,例如测试设备和伸长分析方法5,6,7,8,9,10,11,12,13,14,16,24。本方案提供了详细的描述,利用经过直接线性变换(DLT)校准的立体成像相机系统,捕捉周围神经在牵拉过程中三维(3D)组织位移的方法。为实现可靠的应变分析方法,必须遵循以下关键步骤:第一,3D控制体积必须至少包含30个点;第二,必须使用带脚踏板的数字化仪和DLTcal5.m22程序,以相同方向对3D控制体积的点进行数字化处理;第三,在拍摄3D控制体积图像时,立体成像相机系统应置于被记录对象最大高度位置(即本研究中为6 cm);第四,操作者必须明确左、右相机视图的对应关系;最后,必须先在视频1(即左相机视图)上完成标记点轨迹追踪,然后在视频2(即右相机视图)上完成追踪。
必须下载 MATLAB 2019A 或更新版本,并安装附加组件:图像采集工具箱(Image Acquisition Toolbox)、计算机视觉工具箱(Computer Vision Toolbox)、图像处理工具箱(Image Processing Toolbox)、曲线拟合工具箱(Curve Fitting Toolbox)、统计与机器学习工具箱(Statistics and Machine Learning Toolbox)以及金融分析工具箱(Financial Analysis Toolbox)。
DLT 是一种多功能方法,可用于相机标定、三维重建、目标跟踪和运动分析20,22,23,25,26。此外,DLT 为相机标定提供了一种稳健且精确的方法,因为它能够精确估计相机参数,包括内参(即焦距)和外参(即旋转、平移)20,22。以往的研究已采用基于 DLT 标定的立体成像相机系统来研究人类23或动物模型22的运动与步态分析。本文所述方法可方便地应用于任何研究周围神经(PN)在拉伸损伤下的生物力学响应的研究中。本实验方案提供了开源的以及自行编写的定制 MATLAB 代码,分别用于标定立体成像相机系统,并追踪拉伸过程中 PN 的三维组织位移。
综上所述,经直接线性变换(DLT)校准的立体成像相机系统可提供一种更全面的方法,用于测定周围神经(PNs)在拉伸作用下的应变。本研究旨在建立一种利用立体成像相机和DLT技术测量拉伸状态下周围神经原位应变(in-situ strain)的方法。该方法的建立将有助于量化拉伸过程中周围神经的三维应变。已有研究表明,拉伸导致的周围神经损伤会引发最大应变、持续性变形、区域应变差异以及特定部位的断裂,凸显了理解周围神经对拉伸生物力学响应的重要性9,27,28。此外,研究还证实,周围神经在遭受拉伸损伤时会发生结构改变28,29。明确周围神经耐受这些变化的阈值至关重要,因为这有助于揭示拉伸状态下周围神经的韧性与完整性28,29。因此,全面量化周围神经拉伸损伤的程度,将有助于未来研究关联结构变化与功能缺损,从而更深入地理解与周围神经拉伸相关的损伤机制。本研究是深入认识周围神经损伤生物力学的关键第一步,有望帮助临床医生优化治疗与康复方案,提升患者生活质量,并减轻周围神经损伤带来的痛苦。此外,本研究提供的详细实验方案及补充文件可整合至现有的生物力学教学模块中,增强学生对DLT技术的学习与掌握30。
作者声明无利益冲突。
本研究获得了美国国立卫生研究院尤妮斯·肯尼迪·施莱佛国家儿童健康与人类发展研究所的资助,资助编号为 R15HD093024 和 R01HD104910A,以及美国国家科学基金会职业奖编号 1752513。
| 姓名 | 公司 | 目录编号 | 评论 |
|---|---|---|---|
| 透明亚克力有机玻璃方板 | W W Grainger Inc | BULKPSACR9 | 构建三维控制体积 |
| 立体成像相机系统 - ZED Mini 立体相机 | StereoLabs Inc. | N/A | N/A |
| 成像软件 - ZED SDK | StereoLabs Inc. | N/A | N/A |
| 维护软件 - CUDA 12 | StereoLabs Inc. | N/A | 下载以运行 ZED SDK |
| 相机支架 - 带杆铸铁三角支撑架 | Telrose VWR Choice | 76293-346 | N/A |
| MicroScribe G2 数字化仪(含浸入式脚踏板) | SUMMIT Technology Group | N/A | N/A |
| 编程软件 - MATLAB | Mathworks | N/A | 版本 2019A 或更新版本 |
| DLTcal5.m | Hedrick 实验室 | N/A | 开源 |
| DLTdv7.m | Hedrick 实验室 | N/A | 开源 |
申请许可以重复使用本 JoVE 文章的文本或图表
申请许可