技术文章及通讯

加速发展新的单分子定位和跟踪技术

作者:Maged F. Serag,阿卜杜拉国王科技大学


单分子定位和跟踪(SMLT)是一种描述单个分子运动的技术,已有30多年的历史。通过测量扩散系数并将分子运动表征为随机的、定向的或受约束的,科学家可以研究活细胞中的亚细胞动力学,包括病毒感染、基因转录和细胞表面受体的行为。

尽管SMLT的历史相对较长,应用也很多,但它有几个缺点。例如,它不能告诉我们分子的形状和大小,也不能告诉我们这些形状和大小如何随时间变化。此外,SMLT效率较低,有时由于分子的失焦运动导致统计误差而无法工作。

我在阿卜杜拉国王科技大学(KAUST)的研究小组开发了一种测量单分子扩散的方法,不存在这些限制。而不是从分子轨迹的空间和时间成分来量化扩散,就像传统的SMLT,我们的MATLAB®基于的方法通过分析分子在空间中所占的累积面积(CA)随时间的增加来量化扩散(图1)。通过比较传统SMLT技术计算的扩散系数的统计分布和新的CA方法计算的扩散系数的统计分布,我们用MATLAB验证了我们的方法。CA方法优于传统的SMLT方法,可重复测量我们测试的DNA分子的扩散动力学。

KAUST_fig1_w.jpg
图1。荧光纳米球在0.48秒内(上)和荧光染色DNA在0.4秒内(下)所占据的累积面积增加。

我们工作的核心-图像处理和对显微镜图像进行拟合和数学计算-是使用MATLAB完成的。MATLAB提供了三个关键优势,使其非常适合我们的研究。首先,它很容易学。尽管我的专业背景是药剂学,而不是编程,但我对MATLAB的掌握程度足以让我在短短一个月内完成这项研究。我要用6倍的时间才能掌握类似的语言,比如c++或Java®.其次,KAUST拥有学术人员总数(TAH)许可证,这使得KAUST的研究人员可以轻松地在校园的任何地方访问MATLAB及其附加工具箱中的大量功能和函数。第三,SMLT和CA方法计算量大,一次实验需要数十万个高斯拟合。并行计算工具箱™和MATLAB并行服务器™使我能够加速这些方法,并缩短多个实验的处理时间,从几天到几个小时(参见侧栏).

创建模拟粒子、纳米球和DNA分子的图像序列

SMLT和CA方法都涉及分析一系列图像帧,通常从显微镜捕获,每个帧中都有一个或几个分子可见。我们应用CA方法来描述粒子的运动,并在三种不同的情况下计算扩散系数。第一种方法使用模拟数据创建图像序列。第二组和第三组使用我们实验室定制的宽视场epifluorescence显微镜获得的图像序列。

我们设计了第一个场景来验证CA方法。在MATLAB中,我们使用1.0、1.5和2.0微米2/秒的预定扩散系数在2D空间中生成粒子的随机行走轨迹。对于随机行走的每一步,我们使用粒子的x和y位置来定义图像序列中单帧中5像素交叉的中心(图2)。然后我们使用CA方法计算模拟粒子的扩散系数,并验证了结果(分别为1.10,1.51和1.98 micrometers2/sec)与我们的预定值一致。

KAUST_fig2_w.jpg
图2。模拟二维扩散轨迹的累积面积。在0秒时,模拟粒子处于其原始位置,由一个5像素的十字表示。

在第二种和第三种情况下,我们追踪了直径约0.2微米的黄色荧光聚合物纳米球和不同长度和拓扑形式的双链DNA分子。我们以每6.4毫秒1帧的速度捕获纳米球和分子的图像。我们使用SMLT和CA方法处理这些图像。

实现CA方法

在MATLAB中,我们开发了一种算法来实现CA方法(图3)。使用通过模拟生成或在实验室捕获的数千个512 x 512像素帧的序列,该算法首先调用Image Processing Toolbox™函数,根据初始阈值去除背景。该算法通过使用曲线拟合工具箱™用高斯函数拟合帧中所有像素强度的频率分布来计算该阈值。

在从帧中去除噪声像素后,算法逐渐增加背景阈值,直到只剩下5个像素,定义该帧中分子所占据的空间面积。

当序列中的所有帧处理完毕后,算法将它们叠加,得到分子在每一帧中所占据的累积面积,然后减去相邻帧的累积面积,得到累积面积差值,用于计算扩散系数。

KAUST_fig3_w
图3。CA方法的步骤顺序,包括背景减除、噪声去除、叠加、累积面积差计算、扩散系数计算。

用并行和分布式计算加速进程

由于一个实验需要大约20万个高斯配件,我们很快发现在单个处理器上运行实验花费的时间太长,不太实际。为了缩短处理时间,我们使用并行计算工具箱在多核工作站上执行计算。使用四核的实验需要大约3个小时,而使用16核的实验只需45到50分钟。

当然,我们经常需要运行许多模拟和实验来获得有效的统计结果。为了进一步加快进程,我们开始使用MATLAB并行服务器在KAUST的IT研究计算集群上一次运行512个核上的作业。这些集群为用户提供了超过10000个内核。使用这个设置,我们可以在15分钟内完成一组在多核机器上花费24小时的实验。

可视化和解释结果

我们目前正在解释模拟和实验的结果。在MATLAB中,我们将实验结果可视化,以便更好地了解ca方法与SMLT相比的表现。

为了在相同的实验数据上与传统的SMLT方法进行比较,我们在MATLAB中实现了SMLT。我们的SMLT算法在每一帧像素上应用二维高斯拟合来确定分子质心的位置。在对每一帧重复这一过程后,该算法将跨帧的质心连接起来以创建一个轨迹,然后对轨迹进行均方位移分析以表征分子的运动(图4)。

KAUST_fig4_w.jpg
图4。单个荧光纳米球在溶液中的随机运动。使用SMLT和MATLAB跟踪粒子的运动。

我们使用MATLAB中实现的动态时间扭曲(DTW)技术来测量SMLT和ca方法结果之间的相似性和差异。早期的结果表明,ca方法除了能够为科学家提供分子大小和构象变化频率的信息外,还具有较小的统计误差。

在研究计算集群上运行MATLAB

作者:Matthijs van Waveren, KAUST IT研究计算

MATLAB并行服务器使KAUST的研究人员能够在由该大学IT研究计算小组维护和管理的计算机集群上运行计算密集型的MATLAB程序。

为了让研究人员更容易地使用集群,我们的小组与MathWorks合作®为MATLAB开发一个高性能计算(HPC)附加组件。研究人员可以在MATLAB环境中使用这个插件在数百名工人身上执行他们的脚本。该插件负责将数据文件和脚本传输到集群,运行作业,然后将结果传输回研究人员的MATLAB环境。

HPC附加组件使研究人员更容易将集群用于他们的MATLAB工作。因此,对集群时间的需求急剧增加。为了满足这一需求,我们使用OpenStack和一套Linux构建了一个虚拟集群®工作站。然后,我们更新了HPC附加组件,以便用户可以在原来的集群或新的虚拟集群上运行作业。虽然虚拟集群的速度不如原来的集群,但对于那些不希望在高需求期间等待工作被安排到原来集群上的研究人员来说,虚拟集群是可用的。

作者希望感谢MathWorks的Raymond Norris和Amine El Helou在开发HPC附加组件时提供的帮助

作者简介

Maged Serag博士是KAUST的博士后研究员。他正在研究新的单分子荧光成像技术,以同时可视化DNA的扩散和构象动力学。Serag博士拥有日本名古屋大学(Nagoya University)化学和生物技术博士学位。

Matthijs van Waveren博士是KAUST的研究应用专家,在IT领域拥有超过20年的经验,曾担任软件工程师、研究员、超级计算机顾问和营销协调员。

发布2016年- 92970v00

查看相关功能的文章

查看相关行业的文章