自动化成像显微镜系统

作者:Jason Neudorf 和 Steven A. Garan

衰老研究中心 (ARC) 正在开发一种自动化成像显微镜系统 (AIMS),使研究人员能够从一系列显微镜载玻片中查看组织区域的三维细胞组织。AIMS 采用计算机控制的显微镜,可以沿 X 轴和 Y 轴移动显微镜载玻片,从而可以等量增量移动视野。显微镜还具有自动对焦机制。CCD 相机一次捕获一个视野的图像。使用 400 倍放大倍率,典型的载玻片包含 25,000 个视野;其中大约 7000 个视野包含感兴趣的内容。通过使用数千个单独捕获的图像,该系统能够重建整个载玻片的高分辨率图像。

AIMS 分析数千张图像中的每一张,并识别和存储指示识别的每个细胞的以下属性:每个所需细胞类型的 X、Y 和 Z 坐标、细胞中每种染色的量、细胞中每种染色的类型、细胞中每种染色的颜色以及细胞的类型。

当 AIMS 处理了组织块的多个层时,该系统将能够重建该块中细胞的三维图。在涉及两组动物的实验中,研究人员希望比较这两组动物的组织,AIMS 将能够比较三维结构以及细胞计数。

实施

该系统具有两个非常不同的功能:采集和分析。当我们设计系统时,我们同时从两端入手,尝试分析从其他来源捕获的图像,然后处理我们自己的数据。因为我们希望该系统被生物学研究人员使用,而不是 UNIX 大师,所以一个像样的用户界面是主要目标之一。我们选择 Tcl/Tk 是因为它易于开发 GUI。易于修改的原型非常有用。各种用 C 编写的命令(但带有 Tcl/Tk 界面)用于控制物理设备。

在物理上,该系统由光学显微镜、CCD 相机和连接到并行端口的三个步进电机组成。步进电机在计算机控制下在载物台上移动显微镜载玻片;基本上,我们有一个 60,000bpi 的扫描仪。

步进电机

步进电机由达林顿对晶体管驱动(有关步进电机控制的讨论,请参阅 http://www.doc.ic.ac.uk/~ih/doc/stepper/)。这允许进行很好的控制,但代价是苛刻的时序要求。在 Linux 内核中,我们可以找到每三到八毫秒驱动的软盘。根据经验,考虑到我们电机上的负载,我们有时可以每秒移动两次以上。我们将它们连接到并行端口。并行端口有八条数据线和四条控制线,可用于输出。这足以控制三个步进电机,每个电机四个控制。如果我们需要更多电机,我们将不得不使用不同类型的控制器。图 1 显示了显微镜观察对焦机构。图 2 显示了驱动电机的电路。它使用两个 ULN2003A 芯片,并由备用计算机电源供电。

Automated Imaging Microscope System

图 1. 显微镜

我们需要进行大量的移动,因此速度非常重要。使用 nanosleep 似乎是最简单的,如果不是最好的选择。与实时优先级相结合,这会导致电机以良好的平稳嗡嗡声移动。另一种选择,使用 2048KHz 的实时时钟,不允许对速度进行如此精确的控制。这种方法的主要问题是 nanosleep 处理其延迟的方式。忙等待会阻止任何其他任务运行。RTLinux 似乎是一个更好的解决方案,尽管我们尚未对此进行调查。较旧的 usleep 调用是一个糟糕的选择,因为它具有 10 毫秒的粒度。

Automated Imaging Microscope System

图 2. 驱动电机的电路

最大的问题是找出电机移动的速度。步进电机能够移动的速度取决于施加在其上的负载,而该负载因载物台中的摩擦而异。在一个位置起作用的速度可能在另一个位置根本不起作用。经验实验似乎是必要的。

我们可以三维移动。我们不仅可以查看整个载玻片,还可以改变焦点。一个临时解决方案似乎有效——上下移动,并选择细节最多的图像。我们假设细节最多的图像是最清晰的。从技术上讲,“细节”是基于“忙碌”函数。对于每个像素,找到其每个相邻像素之间的强度差异,然后对这些差异的绝对值求和。

帧采集器

由于该项目在 Linux 2.2 之前启动,Linux 2.2 内核中内置了帧采集器,因此我们正在使用 Matrox meteor 帧采集器,该采集器在 www.gnofn.org/~marksu/meteorman.html 上提供支持。驱动程序附带的 mvid 程序是一个有用的起点。我们将其与 Tcl/Tk 集成。这使我们能够进行快照、通过我们的网络以可变的帧速率和大小查看实时视频,并通过直接访问帧缓冲区内存来获得诸如“有多暗?”或“有多少细节?”之类的测量值。

实时视频对于手动对焦以检查自动对焦是否正常工作、设置扫描边界以及当然只是开玩笑地拍摄员工照片非常有用。“meteor”驱动程序会在新图像可用时发送信号。如果我们准备好了,我们将使用 XPutImageXSync 发送图像。如果之前的图像尚未完成,我们将完全忽略该帧。

分析

虽然形状很重要,但大小和颜色更易于用作启发式方法。我们拍摄单张图像,然后使用滑块选择我们认为是细胞的颜色。如果它足够大并且颜色正确,那么它一定是细胞。这不是一种非常复杂的技术;它与“阈值化”相比并没有太大的改进,“阈值化”是指任何足够暗的东西都被计数。

目前,我们使用 Tcl/Tk 来选择允许的 RGB 颜色范围。将来,在 HSV 颜色空间中选择区域可能很有用。

该算法的简单性意味着可以“即时”计数细胞;在扫描期间,对每个视野执行该算法。边界上的细胞会被多次计数,但我们知道边界在哪里,可以忽略它们。

理论上,完全可以在没有任何计算机的情况下完成这项工作。技术人员可以一次查看每个载玻片的 0.2 毫米,并计算他看到的每个细胞。查看 2 毫米 x 2 毫米的部分,对于典型的鼠标下丘脑覆盖的 100 多个视野,这将需要大量的工作。疲劳可能会引入偏差。当完全清醒时,很容易以一种方式计算给定的边缘情况,而当疲劳时则以另一种方式计算——但人们擅长图像处理,计算机则不然。人们在疲劳时会犯错误;计算机总是犯错误。尽管如此,即使绝对数字有偏差,我们希望相对数字仍然会显示有用的差异。

用户界面扫描仪
Automated Imaging Microscope System

图 3. 载玻片概览

目前有两个物理“扫描仪”的界面:一个用于抓取整个载玻片的概览(参见图 3),分辨率为每英寸 25 位(即,显微镜的物镜一次移动 1 毫米,并保存该点的平均颜色),另一个用于抓取载玻片上的指定区域。在第二种情况下,由于目录列表速度较慢(如果存在 2000 个文件,ls 会花费相当长的时间),因此为扫描的每列创建一个目录。图 4 显示了用于扫描矩形区域的界面。用户可以使用光标键移动载玻片,然后选择边界。

Automated Imaging Microscope System

图 4. 扫描界面

计划中的一项改进是仅扫描我们认为可能包含有用内容的区域。如果位置 (x,y)、(x+1mm,y)、(x,y+1mm)、(x+1mm,y+1mm) 都是空白的,则忽略 (x+0.5mm, y+0.5mm) 是合理的(考虑到我们样本的大小)。

最佳的改进是仅存储实际包含有用内容的区域。在我们的例子中,我们只对下丘脑感兴趣。附近有一个空白区域,可以自动识别;如果是这样,我们可以丢弃数千帧不太重要的数据。

将整个载玻片存储为 JPEG 或 TIFF 等标准图像格式会很好,但由于某种原因,对于 24 位/像素的 12,5000x50,000 像素图像来说,处理起来很困难(每个图像 18GB 似乎有点过分)。使用 JPEG 单独存储每个帧,每个帧使用 10-50KB;详细的帧更多,空白的帧更少。如果只保存具有有用细节的图像,则应低于 650MB/载玻片,在这种情况下,每个载玻片都可以存储在 CD-ROM 上。

平移器/缩放器

鉴于非标准格式,我们将需要一种查看载玻片上各个片段的方法。多分辨率显示工具使用载玻片的预处理图像来创建马赛克,该马赛克同时显示多个帧。通过以多种分辨率保存每个帧,我们不需要解压缩数百个 JPEG 图像,而只是丢弃 9999/10000 的细节。

Automated Imaging Microscope System

图 5

使用此工具,我们可以缩小以查看整个载玻片,放大以查看单个样本的特定区域,然后查看特定的视野。图 5 是一个载玻片一部分的马赛克。

改进将允许与计数算法集成。通过在感兴趣区域周围绘制边框,可以显示该区域中细胞的计数和密度。

当同一组织样本的连续切片以已知的顺序放置时,可以将这些连续切片合并以形成原始组织的单个三维图像。样本中的变形可能会造成一些困难,但标准的特征识别技术应该能够弥补。

可以进一步改进。对于约 25 微米大小的细胞,4 微米切片跨越多个细胞。通过用不同的因子染色连续切片,可以确定关于每个细胞的几个不同事实。

自动化成像显微镜系统 (AIMS) 将由我在加州大学伯克利分校的同事 Lee R. McCook 使用。他将使用该系统比较正常小鼠和热量限制小鼠下丘脑中的 3-D 细胞密度。我已经将他的博士学位论文提案下载到衰老研究中心的网站 www.arclab.org/linux/leephd.html

最终想法

ARC 在北美有两个研究机构:第一个位于加利福尼亚州伯克利,第二个位于加拿大安大略省滑铁卢。衰老研究中心的近期目标是进行实验,以阐明导致衰老过程发生的潜在机制,并开发工具,帮助研究人员更好地理解为什么人类和其他生物体会经历这个过程。我们的长期目标是利用在这个主题上积累的信息,并开发干预程序,以显着减缓衰老过程。生物体的衰老是一个非常复杂且多方面的过程,涵盖了生物学中的许多学科,如神经内分泌学、组织学、遗传学、酶学、生物化学、分子生物学等等。目前,期刊和书籍中约有 100GB 的信息与衰老过程有关,并且每天都有越来越多的信息添加到这个知识体系中。我们正在开发的工具之一将允许研究人员通过计算机使用图形和交互式方法查看大量数据,以便以更易于理解和连贯的方式表示这些信息。

另一个主要工具是本文的重点:自动化成像显微镜系统,用于加州大学伯克利分校的一项实验。它将用于研究热量剥夺对神经组织的影响。热量减少饮食的小鼠通常寿命更长,这可能是基于下丘脑的变化。

Automated Imaging Microscope System
Jason Neudorf (jcjneudo@calum.csclub.uwaterloo.ca) 从 Commodore PET 计算机开始接触计算机,并且很高兴黑客精神在 Linux 社区中继续存在。他最近毕业于滑铁卢大学,获得 M.Math 学位。

Steven A. Garan 于 1994 年创立了衰老研究中心 (http://www.arclab.org/),并在计算机领域工作了 22 年。Steven 曾使用过从 TRS 80 到 IBM 360/75 到 HP3000 到 Linux/Intel PC 的各种机器,并在加拿大、英国、意大利和美国工作过。在他工作过的所有系统中,Linux 必须是他迄今为止见过的最灵活和最强大的环境。

加载 Disqus 评论