宽场视网膜图像采集系统和方法
【专利摘要】一种用于生成宽场视网膜图像的方法、系统或装置。系统实施例包括照相机,其可以是智能电话照相机和相关联的光学元件以采集单独的视网膜图像的数字视频流并且将单独的视网膜图像的视频流存储在与所述照相机相关联的存储器中。然后,所述系统或方法实施以下步骤:处理每个视网膜图像并且在眼睛检查期间将所选择的视网膜图像实时组合为全景。
【专利说明】
宽场视网膜图像采集系统和方法
[0001] 版权声明
[0002] 本专利文档的公开内容的一部分包含受版权保护的材料。版权所有人不反对任何 人对专利文档或专利公开的拓制,只要其出现在专利商标局专利文件或记录中即可,但是 其它形式无论在任何情况下都保留所有版权。
技术领域
[0003] 本公开大体设及用于采集宽场视网膜图像的方法、系统、装置和计算机软件。
【背景技术】
[0004] 采集宽场视网膜图像传统上是非常具挑战性的过程。由于人类眼睛的基本解剖结 构,对视网膜成像要求利用通过患者的瞳孔投影照明的外部光源对视网膜的照明,同时同 时地通过相同瞳孔采集视网膜图像,同时避免或最小化来自光源的眩光。
[0005] 瞳孔扩张技术能够创建大得多的瞳孔开口 W用于检查目的。即使如此,对于甚至 具有瞳孔扩张的视网膜成像也需要非常精确的对齐。从角膜的前面定位成像系统的距离是 特别关键的,因为太远或太近将导致来自光源的角膜眩光。因此,由于由桌面系统所提供的 精确的对齐和增强的稳定性,固定的桌面视网膜成像系统一般比操作手持式视网膜照相机 容易得多。
[0006] 桌面视网膜成像系统昂贵并且难W移动。因此,桌面系统不是非常适合于使用在 场、远程临床或缺乏专用眼科设备的多用途检查临床中。因此,各种公司和教育机构已经开 始开发和进行利用能够实现视网膜图像采集的简单和廉价的智能电话附件的临床试验。运 些附件范围从保持智能电话前面的眼膜透镜的简单支架到将适于照明视网膜的光源非常 接近地放置到智能电话照相机透镜的小装置W实现使用照相机的现有光学元件采集视网 膜图像。
[0007] 不同于传统的视网膜成像系统,利用具有该性质的智能电话附件采集的视网膜图 像可W出现在智能电话图像传感器上的任何地方,并且视网膜图像的可用部分的位置可W 在视网膜检查期间在图像传感器上连续地四处移动,因为基于智能电话的成像系统通常是 手持式的。另外,视网膜成像系统的视场大大地影响运些系统的易用性。具体而言,具有较 窄视野的照相机系统相较于较宽视场的照相机系统在对齐位置和工作距离方面固有地要 求更低的精度。因此,手持式照相机系统(包括基于智能电话的系统)一般比提供腮托W在 检查期间保持患者的头部不会移动的固定桌面系统具有窄得多的视场。遗憾的是,对于医 学状况的视网膜筛查需要比典型的手持式照相机或基于智能电话的系统能够容易地提供 的宽得多的视场。
[000引在某些实例中,全景图像准备的使用可W补救并且固有地使视场变窄。传统视网 膜图像全景构建要求照相机操作者采集眼睛的各种区域的多个静止镜头并且运行后图像 采集过程,其中,操作者手动地选择其认为可W由设计用于构建图像全景的软件适当地拼 接在一起的图像。因此,全景准备通常在患者检查之后执行。该过程具有数个问题,其中主 要一个在于,照相机操作者可w查明其已经采集的图像对于全景的构建而言是不足够的直 到在患者的检查已经完成并且其已经对下一个患者工作之后。
[0009] 本文所公开的实施例设及克服上文所指出的问题中的一个或多个。
【发明内容】
[0010] 各种实施例提供用于采集、处理、生成和利用眼睛结构(特别是视网膜)的宽场图 像的装置、系统和技术。
[0011] 某些实施例包括一种用于生成宽场视网膜图像的方法、系统或装置。系统实施例 包括照相机,其可W是智能电话照相机和相关联的光学元件W采集单独的视网膜图像的数 字视频流并且将单独的视网膜图像的视频流存储在与所述照相机相关联的存储器中。然 后,所述系统或方法实施W下步骤:处理每个视网膜图像并且在眼睛检查期间将所选择的 视网膜图像实时组合为全景。
[0012] 实施例包括一种用于生成宽场视网膜图像的方法、系统或装置,其包括照相机,可 W是智能电话照相机和相关联的光学元件W采集单独的视网膜图像的数字视频流并且将 单独的视网膜图像的视频流存储在与所述照相机相关联的存储器中。然后,所述系统或方 法可W包括或实施W下步骤:小型化单独的视网膜图像,对所述小型化的图像执行边缘检 测W产生二进制图像并且标识所述二进制图像中的感兴趣点。另外,所述系统或方法可W 包括W下步骤:确定所述二进制图像中的感兴趣点的相对位置,利用根据多个小型化的单 独的二进制图像所确定的感兴趣点的相对位置填充数据结构,W及将多个小型化的单独的 视网膜图像中间的相对感兴趣点位置信息进行比较W确定多个小型化的单独的视网膜图 像中间的重叠的图像对齐。然后,可W根据所确定的重叠的图像对齐将对应于所选择的小 型化的单独的视网膜图像的全分辨率视网膜图像组合为全景。
[0013] 在某些实施例中,所述系统或方法还可W执行W下步骤:确定其中定位有单独的 图像的照相机的传感器上的位置,确定单独的图像中的感兴趣区域并且裁剪所述单独的图 像W保存所述感兴趣区域。另外,所述系统或方法可W测量所述小型化的图像的一个或多 个图像属性;并且基于所述小型化的图像的所测量的图像属性丢弃不适合的图像。在一些 实施例中,所述系统或方法可W确定小型化的视网膜图像是否比示出重叠的视网膜结构的 另一小型化的视网膜图像具有更高的质量并且丢弃较低质量图像。
[0014] 在视频采集终止之前,所述系统或方法可W测量经组合的全分辨率视网膜图像的 视场并且基于所指定的视场的实现终止所述过程。
[0015] 本文所公开的实施例描述了其中可非常高的帖速率实时分析来自视频流的 连续的一系列单独帖所提取的多个子图像W构建在已经针对图像全景实现预定义视场之 后自主地完成的图像全景的方法。此外,当图像帖已经被确定为比来自眼睛的相同区域的 先前采集的图像帖具有更好的质量时,新图像帖保留在全景中并且丢弃原始帖。
[0016] -种适于实施所述方法的装置包括具有照相机光学元件和连接到现有的低成本 手持式检眼镜的电子器件的智能电话。基于智能电话的方法廉价、便携并且功能全面。然 而,所公开的方法还可W大大地增强从低成本手持设备到高成本桌面单元的各种各样的专 用或专业视网膜成像系统的总体易用性。
[0017] 所公开的系统和方法利用数个算法简化技术。因此,所描述的系统和方法W非常 低的计算要求实现实时处理并且因此适于由智能电话部署。
[0018] 在不脱离本发明的范围的情况下,可W对所讨论的实施例做出各种修改和添加。 例如,虽然上文所描述的实施例是指特定特征,但是本发明的范围还包括具有不同特征组 合的实施例和不包括所有所述上文所描述的特征的实施例。
【附图说明】
[0019] 通过参考说明书和附图的剩余部分实现进一步理解特定实施例的性质和优点,其 中,相同附图标记用于指代相同组件。在一些实例中,子标签与附图标记相关联W表示多个 相同组件之一。在没有对现有子标签进行说明的情况下参照附图标记时,其旨在指代所有 运样的多个相同组件。
[0020] 图1是如本文所公开的方法的一般示意性流程图。
[0021 ]图2是所公开的系统实施例的框图。
[0022] 图3是包含感兴趣区域(R0I)和辅助数据的未裁剪的全帖图像。
[0023] 图4是通过执行自适应阔值从图2的全帖图像准备的二进制图像。
[0024] 图5是从图2的全帖图像准备的经裁剪的图像。
[0025] 图6是通过基于所确定的R0I执行自适应阔值和裁剪从图2的全帖图像准备的经裁 剪的二进制图像。
[0026] 图7是原始图像帖和为创建二进制图像而进行边缘检测处理之后的帖的图像比 较。
[0027] 图8是感兴趣点检测之前和之后图3的二进制图像的图像比较。
[0028] 图9是示出重叠的感兴趣点的两个图像帖(出于方便表示为全分辨率图像)的图像 比较。
[0029] 图10是根据本文所公开的方法创建的代表性宽场视网膜拼接。
[0030] 图11是根据所选择的实施例描述示例性计算机架构的框图。
【具体实施方式】
[0031] 虽然上文已经概括了某些实施例的各种方面和特征,但是W下详细描述更详细地 图示了几个示例性实施例W使得本领域的技术人员能够实践运样的实施例。所描述的示例 出于说明性目的提供并且不旨在限制本发明的范围。
[0032] 在W下描述中,出于解释的目的,阐述很多特定细节是为了提供对所描述的实施 例的透彻理解。然而,对于本领域的技术人员而言显而易见的是,可W在没有运些特定细节 的其中一些的情况下实践本发明的其他实施例。在其他实例中,W框图形式示出了某些结 构和设备。本文描述了数个实施例,并且虽然针对不同实施例描述了各种特征,但是应当理 解,关于一个实施例所描述的特征也可W与其他实施例合并。然而,同样地,任何所描述的 实施例的单个特征或多个特征不应当认为是对本发明的每个实施例来说都是必需的,因为 本发明的其他实施例可W省略运样的特征。
[0033] 除非另外指示,在本文中用于表达数量、尺寸等所使用的所有数字应当理解为在 所有实例中通过术语"大约"修饰。在该应用中,除非另外特别规定,否则单数的使用包括复 数,并且除非另外指示,否则术语"和"和"或"的使用意指"和/或"。而且,术语"包括 (including)" W及其他形式(诸如"包括(includesΓ和"包括(included)")的使用应当认 为是非排他性的。而且,除非另外明确规定,否则诸如"元件"或"组件"等术语涵盖包括一个 单元的元件和组件二者和包括超过一个单元的元件和组件。
[0034] -个实施例是利用本文所公开的所选择的装置实施例所实现的图像采集和处理 方法100。在图2中示意性地图示了代表性装置实施例。方法和装置可用于采集和处理具有 比可W在单个图像帖中由成像光学元件和电子器件直接提供的更宽的视场的复合或拼接 视网膜图像。在某些检查或诊断情况中需要宽场视网膜图像。例如,在某些实例中,某些疾 病(诸如糖尿病视网膜病变)可W通过检查受检者视网膜的周边(其是常规视网膜成像系统 的视场外的区域)在最早阶段检测。所公开的系统和方法可W供人类或动物患者使用。所得 的图像可用于诊断疾病、验证视网膜健康、准备视网膜健康状态的每日记录,用于与后续图 像的未来比较和其他目的,或者用于经由受检者的血管视网膜模式的生物识别。
[0035] 诸如图2中所图示的某些装置或系统实施例可W包括具有内置照相机和照明功能 性的智能电话。因此,系统200可W包括智能电话202、智能电话照相机透镜204、图像采集忍 片和相关联的电子器件206和照明源208。系统还包括补充光学元件210,其可W直接附接到 智能电话照相机透镜204和照明源208的区域中的智能电话202。下文详细描述了系统的某 些其他元件。
[0036] 虽然所公开的方法适于利用基于智能电话的系统200实现,但是图像采集和处理 技术也同样适于供专用检眼镜系统、专用检眼镜照相机或其他专用或半专用视网膜成像系 统使用。
[0037] 本文所公开的一个实施例是采集和处理创建适合的宽场视网膜拼接图所需要的 分量图像的方法。可W结合提供用于受检者视网膜上的智能电话照相机光学元件204的适 当的聚焦的补充透镜210使用智能电话202的图像采集光学元件206实现图1中所图示的方 法100。图像采集为一系列视频帖。因此,术语图像和帖在本文中可交换地用于定义包括视 频流的单独的子图像。宽场视网膜图像的采集中的初始步骤是利用系统采集受检者视网膜 的合理良好聚焦的视频流,如本文所述(步骤102)。视网膜视频流可W包括可W存储在系统 存储器212中的任何数目的图像或帖,或者在某些实例中,图像是可W存储在外侧存储器中 的视频流的帖。
[0038] 系统的操作者关于受检者视网膜旋转或枢转照相机和光学元件,其在某些实例中 可W是智能电话202和补充透镜210,同时采集、存储和处理视频流,如下文所描述的。因此, 受检者视网膜的整个可视部分巧Ij尽可能地给定解剖和光学约束的程度)作为所采集的视 频流内的至少一个或多个帖的受检者。示出在物理上和光学上可能的与受检者视网膜一样 多的视频流的采集进行直到系统存储器充满或更可能直到过程自动地终止,如下文所描述 的。在某些实施例中,在检查期间从照相机视频流实时分析和处理单独的帖。操作者W任何 特定顺序采集视网膜表面的各种区域的视频不是重要的。如下文所详细描述的,对系统和 方法进行优化,用于从W任何顺序采集的子图像或帖准备宽场拼接。
[0039] 当正实时采集视频流时,系统和方法的一个实施例小型化每个采集的图像帖,使 得系统和方法能够对较低分辨率的图像执行进一步的图像处理步骤W大大地增强整个过 程的计算效率(步骤104)。虽然是对小型化的图像执行图像处理步骤,但是原始的较高分辨 率图像数据仍保留在存储器中,运样在其他步骤期间就不会丢失分辨率,包括但不限于图 像全景的构建。针对小型化步骤所利用的特定算法不是关键的,因为为了观看目的,系统和 方法将不小型化图像帖,而是简单地对图像帖进行边缘检测和其他处理步骤,如下文所描 述的。简单的4x4像素平均执行得非常好,出于描述的目的,并且在基于智能电话的系统中, 理想的是在智能电话的GPU(图形处理器)214上执行该步骤,因为基本上GPU 214是处理器 而不是大部分智能电话的CPU 216。
[0040] 在所选择的实施例中,下一图像处理步骤是确定相对较窄的场视网膜图像定位在 图像传感器上何处(步骤106)。例如,图3是代表性的未裁剪的全传感器图像。图3的有用的 视网膜图像数据明显覆盖小于整个图像帖。如下文所描述的,确定图像传感器上的视网膜 图像的位置有利于确定可被用于自动地仅裁剪掉每个图像的有用部分的感兴趣区域(R0I) (步骤108-110)。确定R0I的过程中的第一步是对根据原始源图像创建二进制图像的步骤 102中所获得的原始图像执行自适应阔值。例如,参见图4的二进制全帖图像。当对于图像的 每个部分可W存在不同的照明水平时,自适应阔值技术对于图像阔值来说是理想的,因为 其自适应阔值技术对于图像的每个小区域利用不同的阔值。
[0041] 在应用自适应阔值技术之后,在确定图像的R0I中的下一子步骤是执行粗网格捜 索,其中,检查预先确定的大小的圆形区域内的像素的子样本W确定具有最高血管密度的 区域存在于源图像内何处(如图4中所图示的,利用黑像素示出二进制图像的血管区域)。可 W通过检查参考圆形区域内的点偏移的随机子样本的点偏移阵列检查预先确定大小的圆 形区域内的像素的子样本。出于性能原因,应当在软件初始化期间而不是每次检查新帖时 选择大小参数。
[0042] 可W利用W下或类似代码确定具有最高血管密度的区域。在某些实施例中,函数 (Set numSamplePoints)可W设定到将包括R0I的圆形实际视网膜图像区域内的总像素数 的10%左右。较低的百分比可用于改进计算性能。
[0043]
[0044] 在构建待检查的点偏移阵列之后,可W使用W下或类似代码捜索整个图像W找到 对应于具有最高血管密度的区域的具有最高像素密度的圆形区域的位置和包含视网膜图 像的成像忍片的部分。
[0045]
[0046]
[0047] 通过完成前述和类似例程,BestCente;rXLocat ion和BestCente巧Location示出包 含最高密度的血管的圆形区域的位置,并且bes地it化t包含在自适应阔值步骤中被标记为 黑色的经采样的像素的数目。当bes地it化t(或类似参数)超过针对图像内的血管的水平的 预先确定的值时,处理可W继续。具体而言,前述或类似例程适于确定每个单独图像的R0I, 并且图像可被裁剪W保存R0I并且删除额外的数据。例如,图5是被裁剪为仅包括所确定的 R0I的图3的全帖图像,如上文所描述的。图6是在应用自适应阔值和裁剪之后的对应的二进 制图像。
[0048] 当每个小型化的图像准备并且裁剪为R0I之后,系统和方法将测量R0I内的图像属 性(诸如聚焦质量、平均红色、绿色和蓝色值和每个单独颜色层的标准偏差、照明均匀度和 角膜眩光)W验证所有所测量的图像属性均落在可接受的范围内(步骤112)。平均值和标准 偏差二者均使用传统方法计算,焦点计算可经由检查和求和每个单独像素值实现W确定其 与最近相邻像素之间的差的绝对值。虽然该简单化焦点分析方法执行得非常好,出于描述 的目的,但是针对焦点测量还可W实施更复杂的方法(诸如经由FFT的焦点分析)。出于性能 原因,针对图像属性计算检查小型化的图像中的像素的子集。在图像帖分析期间通过利用 垂直地和水平地超过一个像素的步进大小实施该子集检查。通常,可W通过检查10-20%的 图像像素获得运些图像属性的统计上有意义的收集。如果任何所测量的属性均未落在可接 受性的预定义范围内,则丢弃图像帖并且不对当前帖执行其他处理步骤。图像属性的该分 析针对丢弃假图像运行得非常好,诸如检查室或患者面部的照片,其将是模糊的,因为视网 膜成像是在接近无限焦点处完成的。
[0049] 然后,系统和方法将对每个单独的视频帖执行实时边缘检测W创建每个视网膜图 像的血管的二进制表示(步骤114)。有数个边缘检测算法非常适于该步骤,诸如Sobel、 Roberts、Prewitt和化nny边缘检测算法。由于其抑制噪声和检测归因于从图像的一部分到 另一个的对比度差异的各种各样的边缘的固有能力,因而化nny边缘检测算法特别适合于 对视网膜图像执行边缘检测。可W使用数个不同的设置参数化化nny边缘检测算法W控制 阔值上限和下限W及针对执行实际边缘检测之前的预处理的模糊大小。必须优化运些参数 W产生最大化的经检测的视网膜血管同时最小化由源图像帖中的其他数字噪声所创建的 模糊边缘的检测的二进制图像。
[0050] 虽然所有适合的边缘检测技术可W运行在传统智能电话CPU 116上,但是由于GPU 大规模的执行矢量处理的并行处理的能力,因而运些过程特别适合于在存在于所有现代智 能电话上的现代GPU(图形处理单元)114上实施。取决于用于部署的硬件,基于GPU的边缘检 测通常比在通常在业界领先的智能电话上找到的传统CPU上严格地执行类似算法快二十到 六十倍。
[0051] 将原始裁剪图像帖与在前述处理步骤之后通过很好地参数化的边缘检测算法所 生成的二进制输出进行比较将与图3的图像类似。
[0052] 由于相对较高的帖速率(至少十帖每秒)在针对筛查目的的典型的视网膜检查期 间是符合需要的,因而需要创建概要信息,其可被用于迅速地分析每个视频帖,W在不执行 各种对齐处的帖的计算密集图像适配分析的情况下相对于先前所采集的图像帖确定帖包 含视网膜图像的什么部分。所公开的系统和方法通过将血管分支和弯曲标识为感兴趣点 (P0I)来利用血管分支和弯曲,所述感兴趣点从一个图像帖到另一个具有示出共同图像特 征的重叠的区域的给定的两个图像帖将是共同的(步骤116)。存在数个"角检测"和"特征检 巧r算法非常适合于供所公开的方法和系统使用,但是化i-Tomasi角检测算法执行得特别 好。
[0053] 化i-Tomas i角检测算法应用于来自步骤114中所执行的边缘检测的输出图像。对 二进制图像执行特征检测比可W通常由对来自原始源视频帖的原始图像运行特征检测算 法执行产生可靠得多的特征检测。虽然本文所描述的技术可W处理丢失的感兴趣特征和感 兴趣特征的假检测,但是重要的是,调谐特征提取(Shi-Tomasi)算法的模糊大小、灵敏度和 阔值W最大化所检测的特征的检测,运在采集包含重叠的图像帖时从一个帖到下一个将是 共同的,同时最小化由数字图像中的其他噪声所创建的假的所检测的特征的检测。出于步 骤114中说明的相同原因,步骤116还特别适合于基于GPU 114的算法的实施。来自该处理步 骤的所检测的角存储在xPts[巧日yPts[]阵列中,使得其可W由后续处理步骤利用。
[0054] 图8的图像示出了在步骤116中对二进制图像执行化i-Tomasi角检测之后来自典 型的视网膜图像的所检测的特征。
[0055] 处理步骤112-116的结果产生示出表示所选择的感兴趣特征的视网膜血管和(X, Y)坐标阵列的二进制图像。图像处理中的下一步是填充数据结构,其包含每个传入图像帖 的概要信息W及针对非小型化的帖的原始RGB图像字节(步骤118)。数据结构可W具有包含 相对POI位置信息的任何适合的类型。数据结构的生成和填充可W利用任何适合的软件或 代码完成。下文包括适于完成前述步骤的代表性代码。重要的是,注意W下代码(和包含在 本公开中的代码的所有实例)高度简化并且仅构成代表性、非排他性代码样本。可W利用任 何适合的代码或数据结构实现所公开的方法。
[0化6]
[0057] Ξ维阵列"pointRelativity"需要更详细的解释,因为该阵列是实现与其他图像 帖的快速比较W查看可能的图像特征重叠的概要帖信息的主要元素,如下文所描述的。当 将阵列与针对其他图像帖所计算的阵列相比较时,该阵列唯一地被设计为实现极其迅速的 比较(具有允许误差),而不需要任何计算密集的操作。
[005引初始地,pointRelativity阵列可W调零W针对当前图像帖上的处理对其进行准 备。为了完成调零,系统和方法可W使用W下样本、代表性代码或提供类似功能性的代码:
[0061]对于源帖内的某些或每个所检测的点而言,系统和方法可W然后计算图像帖中从 该点到每个其他所检测的点的相对距离和角。因为可W利用从一个图像帖到另一个的某种 水平的方差和误差检测所检测的点,所W方法优选地将每个点之间的距离和从一个点到下 一个的角通过预定义数目的像素和角进行圆整,并且利用结果填充pointRelativity阵列 (步骤118)。
[0062] 可W使用W下代表性代码或类似例程执行步骤118:
[0063]
[0064]
[0065] W下示例可W被认为图示如何填充pointRelativity阵列并且可W如何利用该信 息。如果方法将像素距离圆整到最近的5个像素,并且从一个点到下一个的相对角圆整到最 近的10度,那么:
[0066] if pointRelativity[4][50][2]=5,
[0067] 则指示在250个像素(针对距离圆整的50巧个像素)的圆整距离处、在二十度(针对 圆整的2*10度)的圆整角处存在5个像素。
[0068] 在前述处理步骤之后,点概要信息现在W实现从一个图像帖到另一个的极其快速 的比较(具有圆整误差)的格式存储,运示出所有所检测的点与在点之间的距离和从一个点 到另一个的相对角运两个方面与图像帖中的所有其他所检测的点如何相关。即使当在不必 执行示出点之间的更复杂的角关系的计算密集的Ξ角几何法的情况下对照相机相对于患 者的眼睛的角做出微小改变时,方法对角测量执行圆整的事实也允许所选择的算法适当地 运行。
[0069] 示例 1:
[0070] 为了图示pointRelativity阵列可W被用于迅速地找到在不同的位置处取得的相 同视网膜的两个图像之间的共同性的区域,图9示出了包含与重叠区域内的共同感兴趣点 重叠的区域的两个视网膜图像。为了保持事情相当简单,在图5中所图示的两个样本值图像 帖中的每一个已经标识仅四个感兴趣点。实际上,在每个帖种可能存在更多标记的点。
[0071] 帖#1点到点距离像素为单位):
[0072]
[0073]
[0089] 因为方法是将圆整距离和圆整角用作表示点的关系的属性,所W方法可W用圆整 距离除W距离圆整因子并且将圆整旋转角度除W旋转圆整因子W便减少针对 pointRelativity阵列的存储器要求。使用圆整距离和圆整角的一个益处是大大地减少了 距离或角落在一个帖中的圆整角或距离附近的可能性并且出于后续帖的圆整目的使其落 在另一侧。
[0090] 如上文所制成的表,对于帖#1而言,点1与点2之间的圆整距离是66个像素(圆整到 最近的22个像素)。方法可W取该距离,并且将其除W22个像素的距离圆整因子W得到针对 从帖#1中的点1和点2的距离的3的距离指数值。
[OOW] 对于帖#1而言,点1与点2之间的圆整角是60度(圆整到最近的10度)。方法可W取 该距离,并且将其除W10度的角圆整因子W得到针对帖#1中的点1与点2之间的角的6的角 指数值。因此,帖1中的点1与点2之间的关系可W在pointRelativity阵列中表示如下:
[0092] pointRelativity[1][3][6]=pointRelativity[1][3][6]+1;
[0093] 前述表明帖1具有其中的感兴趣点,其是60度(60/10)的相对角处的远离另一点 (66/22 = 3)的66个像素。
[0094] -旦已经W运种方式处理每个帖中的所有点,则确定两个帖是否可能包含相同特 征是极其快速和高效的。
[00%]在针对图像帖执行边缘检测、特征提取和计算点概要信息之后,方法将然后将图 像帖与所有其他当前所存储的图像帖进行比较W便确定当前图像帖是否表示视网膜的新 成像的区域或者是否已经对视网膜的相同相对区域采集其他图像(步骤120)。如果图像帖 表示视网膜的新成像的区域或者如果其被确定为比现有帖具有更好的质量,则将其添加到 图像全景(步骤122)。
[0096]由于对点概要信息做出清理结构和预圆整,因而该受检者帖与所有当前保持图像 帖的比较可W利用相当简单的代码(例如下文所概述的代码)非常迅速地执行,其包括将当
[0097] 前帖与仍然驻留在存储器中的另一先前采集的帖相比较。必须完成该类型或类似比较w将 图像与所有先前保留的图像相比较:
[009引
[0099] 虽然W上算法对于找到两个图像帖之间的可能的对齐点工作良好,但是可W使用 增强找到可W经由对pointRelativity数据结构的前述或类似相对简单的分析丢失的对齐 点的可能性的技术期望pointRelativity数据结构的更复杂的分析。
[0100] 在执行W上或类似代码之后,方法可W检查由likelyFramelPT[]和 likelyFrame2PT[]所表示的(x,y)坐标W确定可被用于将两个帖结合在一起W产生示出比 两个单独的图像帖更大的视场的更大的图像的可能的偏移。
[0101 ]例如,如果LikelyFramelPT[ 1 ] = (200,100)并且Likely化ame2PT[ 1 ] = (200, 300),则方法确定如果图像#2垂直地向上偏移200个像素(300-100),则可能的图像适配存 在。方法可W通过由上文所列出的代码(或提供类似功能性的代码)找到的所有可能的对齐 迭代并且计算作为具有最高的计算的图像相关性统计的最佳可能匹配。如果最佳图像相关 性得分超过预定义值,则源帖中的所有像素添加到全景,除非如包含相同图像像素的步骤 112中所确定的较高图像质量的先前帖已经添加到全景。
[0102]最后的图像处理步骤包括通过从中屯、点W圆形方式向外扩大对图像全景的视场 的测量(步骤124)。如果所采集的视场超过操作者定义或硬编码的值,那么照相机或智能电 话由过程控制W自动地完成呈现已经计算的图像全景。如果目标视场尚未实现,那么方法 将控制照相机或智能电话上方式继续处理传入的帖。
[0103] 通过基于所选择的图像参数自动地确定ROI、裁剪、预量化所有传入视频帖,并且 利用所有先前所保留的图像帖确定可能的对齐(或共同性),方法能够采集满足针对质量的 预定义要求的一组图像帖并且计算每个帖之间的相对偏移W使软件自主地终止图像采集 并且给用户呈现诸如图10中所示的相对宽角的视网膜全景。
[0104] 如上所述,一个装置实施例200包括智能电话202,其具有GPU 214、CPU 216、存储 器212和提供用于实施所描述的方法的其他架构。备选实施例可W包括与任何类型的计算 机通信的专用眼科照相机或成像设备,所述计算机可W包括配置为实施前述方法的软件。
[0105] 图11是图示示例性计算机架构的框图。图11提供了可W执行由各种其他实施例所 提供的方法的计算机系统1100的一个实施例的示意性图示,如本文所描述的。应当注意,图 11仅旨在提供各种组件的一般化图示,其中的一个或多个或没有可W酌情利用的。因此,图 11宽广地图示了可W如何W相对分离或相对更集成的方式实现单独的系统元件。
[0106] 示出了计算机系统1100,其包括可W经由总线1105电气连接或可W其它方式视情 况通信的硬件元件。硬件元件可W包括一个或多个处理器1110,包括但不限于一个或多个 通用处理器,或一个或多个专用处理器诸如数字信号处理忍片、图形加速处理器等等;一个 或多个输入设备1115,其可W包括但不限于鼠标、键盘等等;和一个或多个输出设备1120, 其可W包括但不限于显示设备、打印机等等。
[0107] 计算机系统1100还可W包括一个或多个存储设备1125或与其通信。一个或多个存 储设备1125可W包括但不限于本地和/或网络可访问存储或者可W包括但不限于磁盘驱动 器、驱动器阵列、光学存储设备、固态存储设备。固态存储设备可W包括但不限于随机存取 存储器("RAM")或只读存储器("ROM")中的一个或多个,其可W是可编程的、可闪速更新的 等等。运样的存储设备可配置为实现任何适当的数据存储,包括但不限于各种文件系统、数 据库结构等等。
[0108] 计算机系统1100还可W包括通信子系统1130,其可W包括但不限于调制解调器、 网卡(无线或有线)、红外通信设备、无线通信设备或忍片集等等。无线通信设备可W包括但 不限于Bluetooth?设备、802.11设备、WiFi设备、WiMax设备、WWAN设备、蜂窝通信设施等等。
[0109] 通信子系统1130可W许可数据与网络、其他计算机系统、本文所描述的任何其他 设备或网络、系统和设备的任何组合交换。根据一些实施例,网络可W包括局域网("LAN"), 包括但不限于光纤网、W太网、Token-Ring?网等等;广域网("WAN");无线广域网("WWAN"); 虚拟网络,诸如虚拟私有网络("VPN");因特网;内联网;外联网;公共交换电话网络 ("PSTN");红外网络;无线网,包括但不限于在IE邸802.11协议簇、Bluetooth?协议或任何 其他无线协议中的任一个下运行的网络;或运些或其他网络的任何组合。在许多实施例中, 计算机系统1100还将包括工作存储器1135,其可W包括RAM或ROM设备,如上文所描述的。
[0110] 计算机系统1100还可W包括示出为当前定位在工作存储器1135内的软件元件,包 括操作系统1140、设备驱动程序、可执行库或其他代码。软件元件可W包括一个或多个应用 程序1145,其可W包括由各种实施例所提供的计算机程序或可W被设计为实现由其他实施 例所提供的方法和/或配置系统,如本文所描述的。仅作为示例,关于上文所描述的方法所 描述的一个或多个流程可实施为由计算机或由计算机内的处理器可执行的代码或指令。在 一方面中,运样的代码或指令可用于对通用计算机或其他设备进行配置或适配W执行根据 所描述的方法的一个或多个操作。
[0111] 运些指令或代码集可W编码和/或存储在非暂态计算机可读存储介质(诸如上文 所描述的存储设备1125)上。在一些情况下,存储介质可W包含在计算机系统(诸如系统 1100)内。在其他实施例中,存储介质可W与计算机系统一一即可移除介质(诸如压缩磁盘 等等)分离。在一些实施例中,可W在安装包中提供存储介质,使得存储介质可用于利用存 储在其上的指令/代码对通用计算机进行编程、配置和/或适配。运些指令可W采取由计算 机系统1100可执行的可执行代码的形式或可W采取源或可安装代码的形式。基于编译、安 装或编译和安装二者,计算机系统1100上的源或可安装代码可W采取可执行代码的形式。 可W使用任何各种一般可用的编译器、安装程序、压缩/解压缩实用程序等等执行编译或安 装。
[0112] 对于本领域的技术人员而言将明显的是,可W根据特定要求做出大量的变型。例 如,还可W使用定制硬件一一诸如可编程逻辑控制器、现场可编程口阵列、专用集成电路等 等。在一些情况下,特定元件可W在硬件、软件(包括便携式软件,诸如小应用程序等等)或 二者中实施。进一步,可W采用诸如网络输入/输出设备的其他计算设备的连接。
[0113] 如上文所提到的,在一个方面中,一些实施例可W采用计算机系统(诸如计算机系 统1100)执行根据本发明的各种实施例的方法。根据一组实施例,响应于处理器1100执行一 个或多个指令的一个或多个序列,可W通过计算机系统1100执行运样的方法的流程中的一 些或全部。一个或多个指令并入可W包含在工作存储器1135中的操作系统1140或其他代码 中,诸如应用程序1145。可W将运样的指令从另一计算机可读介质(诸如存储设备1125中的 一个或多个)读取到工作存储器1135中。仅作为示例,执行包含在工作存储器1135中的指令 的序列可W使一个或多个处理器1110执行本文所描述的方法的一个或多个流程。
[0114] 如本文所使用的术语"机器可读介质"和"计算机可读介质"是指参与提供使机器 W特定方式运行的数据的任何介质。在使用计算机系统1100实施的实施例中,各种计算机 可读介质可用于将指令或代码提供给一个或多个处理器1110用于执行、可用于存储和/或 运载运样的指令/代码(诸如信号)或二者。在许多实现方案中,计算机可读介质是非暂态、 物理或有形存储介质。运样的介质可W采取许多形式,包括但不限于非易失性媒体、易失性 媒体和传输媒体。非易失性媒体包括例如光盘、磁盘或二者,诸如存储设备1125。易失性媒 体包括但不限于动态存储器,诸如工作存储器1135。传输媒体包括但不限于同轴电缆、铜线 和光纤,包括包含总线1105的接线W及通信子系统1130的各种组件或通信子系统1130通过 其提供与其他设备的通信的媒体。因此,传输媒体还可W采取波的形式,包括但不限于无线 电、声波或光波,诸如在无线电波和红外数据通信期间所生成的那些。
[0115] 物理或有形计算机可读媒体的常见形式包括例如软盘(floppy disk)、软盘 (flexible disk)、硬盘、磁带或任何其他磁性介质;CD-R0M、DVD-R0M或任何其他光学介质; 打孔卡、纸带或具有孔图案的任何其他物理介质;341、?1?01、6?1?01、。1^\5护6?1?01或任何其 他存储器忍片或卡盘;载波;或计算机可W从其读取指令或代码的任何其他介质。
[0116] 虽然已经关于示例性实施例描述某些特征和方面,但是本领域的技术人员将认识 到,很多修改是可能的。例如,本文所描述的方法和过程可W使用硬件组件、软件组件和/或 其任何组合实现。而且,虽然可W关于特定结构和/或功能组件描述本文所描述的各种方法 和过程W便于描述,但是由各种实施例所提供的方法不限于任何特定结构和/或功能架构 而是相反可W在任何适合的硬件、固件和/或软件配置上实施。类似地,虽然某种实施例归 属于某些系统组件,但是除非上下文另外指示,否则该功能性可w分布在根据数个实施例 的各种其他系统组件中间。
[0117]而且,虽然W特定顺序描述本文所描述的方法和过程的流程W便于描述,但是除 非上下文另外指示,否则可W根据各种实施例重新排序、添加和/或省略各种流程。而且,关 于一个方法或过程所描述的流程可W合并在其他所描述的方法或过程内;同样地,根据特 定结构架构和/或关于一个系统所描述的系统组件可W组织在备选结构架构中和/或合并 在在其他所描述的系统内。因此,虽然在有或没有某些特征的情况下描述各种实施例W便 于描述和图示那些实施例的示例性方面,但是除非上下文另外指示,否则可W从其他所描 述的实施例中间替代、添加和/或消减关于特定实施例本文所描述的各种组件和/或特征。 因此,虽然上文描述了数个示例性实施例,但是将理解到,本发明旨在覆盖W下权利要求的 范围内的所有修改和等价方案。
【主权项】
1. 一种生成宽场视网膜图像的方法,包括: 控制照相机以采集单独的视网膜图像的视频流; 将单独的视网膜图像的视频流存储在与照相机相关联的存储器中; 小型化单独的视网膜图像; 对小型化的图像执行边缘检测以产生二进制图像; 标识^进制图像中的感兴趣点; 确定二进制图像中的感兴趣点的相对位置; 利用根据多个小型化的单独的视网膜图像所确定的感兴趣点的相对位置填充数据结 构; 将多个小型化的单独的视网膜图像中间的相对感兴趣点位置信息进行比较以确定所 述多个小型化的单独的视网膜图像中间的重叠的图像对齐; 根据所确定的重叠的图像对齐将对应于小型化的单独的视网膜图像的全分辨率视网 膜图像组合为全景。2. 根据权利要求1所述的方法,还包括: 确定单独图像位于的照相机的传感器上的位置; 确定所述单独图像中的感兴趣区域;以及 裁剪所述单独图像保存感兴趣区域。3. 根据权利要求2所述的方法,还包括: 测量小型化的图像的一个或多个图像属性;以及 基于小型化的图像的所测量的图像属性,丢弃不适合的图像。4. 根据权利要求3所述的方法,还包括: 确定小型化的视网膜图像是否比示出重叠的视网膜结构的另一小型化的视网膜图像 具有更尚的质量;以及 丢弃较低质量图像。5. 根据权利要求1所述的方法,还包括: 测量组合的全分辨率视网膜图像的视场;以及 基于实现指定的视场终止过程。6. 根据权利要求5所述的方法,其中,所有的步骤在眼睛检查期间完成。7. -种视网膜成像系统,包括: 智能电话,其包括照相机透镜,以及照明源,以及成像芯片和成像电子器件; 补充光学元件,其配置为与智能电话透镜配对并且提供用于在智能电话成像芯片上的 视网膜的图像的聚焦; 以及智能电话内的一个或多个处理器; 一个或多个非暂态计算机可读媒体,其定位在智能电话内,智能电话具有已经在其上 存储的包括指令集的软件,所述指令集当由一个或多个处理器执行时使系统执行一个或多 个功能,所述指令集包括: 控制智能电话以利用智能电话照相机透镜、照明源、成像芯片和成像电子器件采集单 独的视网膜图像的视频流的指令; 将单独的视网膜图像的视频流存储在存储器中的指令; 小型化单独的视网膜图像的指令; 对小型化的图像执行边缘检测以产生二进制图像的指令; 标识所述二进制图像中的感兴趣点的指令; 确定所述二进制图像中的感兴趣点的相对位置的指令; 利用根据多个小型化的单独的视网膜图像所确定的感兴趣点的相对位置填充数据结 构的指令; 将多个小型化的单独的视网膜图像中间相对感兴趣点位置信息进行比较以确定所述 多个小型化的单独的视网膜图像中间的重叠的图像对齐的指令; 根据所确定的重叠的图像对齐将对应于小型化的单独的视网膜图像的全分辨率视网 膜图像组合为全景的指令。8. 根据权利要求7所述的系统,其中,所述指令集还包括: 确定单独图像位于的智能电话的成像芯片上的位置的指令; 确定所述单独图像中的感兴趣区域的指令;以及 裁剪所述单独图像以保存感兴趣区域的指令。9. 根据权利要求8所述的系统,其中,所述指令集还包括: 测量小型化的图像的一个或多个图像属性的指令;以及 基于小型化的图像的所测量的图像属性丢弃不适合的图像的指令。10. 根据权利要求9所述的系统,其中,所述指令集还包括: 确定小型化的视网膜图像是否比示出重叠的视网膜结构的另一小型化的视网膜图像 具有更尚质量的指令;以及 丢弃较低质量图像的指令。11. 根据权利要求7所述的系统,其中,所述指令集还包括: 测量组合的全分辨率视网膜图像的视场的指令;以及 基于实现指定的视场终止过程的指令。12. 根据权利要求11所述的系统,其中,所述指令集还使所有指令在眼睛检查期间完 成。13. -种视网膜成像系统,包括: 检眼镜; 数字成像设备,其包含在所述检眼镜内或附接到所述检眼镜内; 以及一个或多个处理器,其与所述数字成像设备数字通信; 一个或多个非暂态计算机可读媒体,其与所述一个或多个处理器数字通信,处理器具 有存储其上的包括指令集的软件,当所述指令集由所述一个或多个处理器执行时使所述系 统执行一个或多个功能,所述指令集包括: 采集单独的视网膜图像的视频流的指令; 将单独的视网膜图像的视频流存储在存储器中的指令; 小型化单独的视网膜图像的指令; 对小型化的图像执行边缘检测以产生二进制图像的指令; 标识所述二进制图像中的感兴趣点的指令; 确定所述二进制图像中的感兴趣点的相对位置的指令; 利用根据多个小型化的单独的视网膜图像所确定的感兴趣点的相对位置填充数据结 构的指令; 将多个小型化的单独的视网膜图像中间的相对感兴趣点位置信息进行比较以确定所 述多个小型化的单独的视网膜图像中间的重叠的图像对齐的指令; 根据所确定的重叠的图像对齐将对应于小型化的单独的视网膜图像的全分辨率视网 膜图像组合为全景的指令。14. 根据权利要求13所述的系统,其中,所述指令集还包括: 确定单独图像位于的智能电话的成像芯片上的位置的指令; 确定所述单独图像中的感兴趣区域的指令;以及 裁剪所述单独图像以保存所述感兴趣区域的指令。15. 根据权利要求14所述的系统,其中,所述指令集还包括: 测量小型化的图像的一个或多个图像属性的指令;以及 基于小型化的图像的所测量的图像属性丢弃不适合的图像的指令。16. 根据权利要求15所述的系统,其中,所述指令集还包括: 确定小型化的视网膜图像是否比示出重叠的视网膜结构的另一小型化的视网膜图像 具有更尚质量的指令;以及 丢弃较低质量图像的指令。17. 根据权利要求13所述的系统,其中,所述指令集还包括: 测量组合的全分辨率视网膜图像的视场的指令;以及 基于实现指定的视场终止过程的指令。18. 根据权利要求17所述的系统,其中,所述指令集还使所有指令在眼睛检查期间完 成。
【文档编号】H04N5/232GK105934193SQ201480070114
【公开日】2016年9月7日
【申请日】2014年12月23日
【发明人】D·亨里克森
【申请人】Rsbv有限责任公司