技术领域
[0003] 本公开总体上涉及发育评估,例如使用眼睛跟踪装置来评估患者的发育障碍。
相关背景技术
[0004] 在美国,发育障碍如自闭症谱系障碍(ASD)影响近14%的儿童。诸如ASD的状况的诊断方法在客观评估工具和治疗提供者的经验方面变化很大。在一些情况下,“最佳实践”工具的使用对病症提供相当差的敏感性和特异性,尤其是对学步儿童或其他年轻患者。发育残疾的晚期诊断降低了治疗的有效性并且经常导致较差的结果。此外,治疗提供者(例如,儿科医生或其他医学专业人员)常常缺乏适当的工具来客观地测量这些状况的进展,尤其是在患者生命的非常早期。
具体实施方式
[0112] 本公开描述了用于使用响应于向患者显示特定预定视觉刺激(例如,一个或多个视频)而生成的眼睛跟踪数据来检测和评估患者的发育、认知、社交或智力能力或残疾(包括自闭症谱系障碍(ASD))的系统、装置和方法。
[0113] 为了提供对本文描述的系统、装置和方法的全面理解,将描述某些说明性实施例。应当理解,如果这些数据没有指示障碍的测量,则可以提供规范发育的典型程度的测量,提供典型发育的可变性的指示。此外,下面概述的所有组件和其他特征可以以任何合适的方式彼此组合,并且可以适配和应用于医疗诊断之外的系统。例如,本公开的交互式视觉刺激用作治疗工具。此外,所收集的数据可以产生患者优先关注的某些类型的视觉刺激的测量。
这种偏好的测量在医学诊断和治疗领域中具有应用和不具有应用,包括例如广告或对与视觉刺激偏好相关的数据感兴趣的其他行业。
[0114] 示例环境和系统
[0115] 图1是根据本公开的一个或多个实施例的用于通过眼睛跟踪评估发育障碍的示例性环境100的框图。环境100包括云服务器110和经由网络102通信的多个计算系统120‑1、…、120‑n(统称为计算系统120或单独称为计算系统120)。云服务器110可以向多个用户(例如,治疗提供者)提供发育障碍评估或诊断服务。治疗提供者可以使用对应计算系统120来方便且可靠地从新生儿到老年人在任何年龄的会话(例如,与收集数据相关联的程序)中为患者收集数据,以下描述的示例性实施例特别适用于学步儿童或其他年轻患者。在会话中收集的数据(或会话数据)可以包括响应于向患者显示特定的预定视觉刺激(例如,一个或多个视频)而生成的眼睛跟踪数据。计算系统120可以安全地将会话数据发送到云服务器
110,并且云服务器110可以存储、处理和分析会话数据,用于诊断患者的ASD或其他认知、发育、社交或智力能力或残疾,并且以高度安全、鲁棒、快速和准确的方式向治疗提供者提供诊断结果或报告,如下面进一步详细讨论的。
[0116] 治疗提供者可以是单个保健组织,包括但不限于自闭症中心、保健机构、专家、医师或临床研究。医疗保健组织可以向患者提供发育评估和诊断、临床护理和/或治疗服务。如图1所示,患者(例如婴儿或儿童)可以由护理者(例如父母)带到保健机构。操作者(例如,专科医生、内科医生、医疗助理、技师或保健机构中的其他医疗专业人员)可以使用计算系统120来在他或她观看描绘常见社交交互(例如,二元或三元交互)的视觉刺激(例如,动态视觉刺激,诸如电影)时收集患者的例如非侵入性的眼睛跟踪数据。出于数据收集的目的而显示给患者的刺激对于患者可以(例如基于患者的年龄和状况)是特定的。刺激可以是任何合适的视觉图像(静态或动态),包括电影或视频,以及静止图像或任何其他视觉刺激。应当理解,电影或视频仅作为示例被引用,并且任何这样的讨论也适用于其他形式的视觉刺激。
[0117] 在一些实施例中,如图1所示,计算系统120包括至少两个分离的计算装置130和140,例如操作者侧计算装置140和至少一个患者侧计算装置130。可选地,两个计算装置130和140可以无线连接,例如经由无线连接131来无线连接,而无需物理连接。无线连接131可以通过蜂窝网络、无线网络、蓝牙、近场通信(NFC)或其他标准无线网络协议。在一些实施例中,患者侧计算装置130被配置为例如当无线连接131发生故障时,通过诸如通用串行总线(USB)的有线连接来连接到操作者侧计算装置140。
[0118] 在一些情况下,所述两个计算装置130和140通过经由网络102与云服务器110分别通信而彼此通信,云服务器110进而提供操作者侧计算装置140与患者侧计算装置130之间的通信。例如,如结合图4A‑4B中的进一步细节所讨论的,操作者可以例如通过基于网络的操作者应用登录在云服务器110上运行的网络门户以用于装置管理、患者管理和数据管理。操作者可以使用操作者侧计算装置140(例如,平板电脑)与例如在同一医疗设施中的多个患者侧便携式装置130通信,用于在多个会话中的多个患者的眼睛跟踪数据获取,这可以大大简化计算系统120,降低系统成本,提高工作效率,并且减少操作者的工作量。
[0119] 计算装置130、140可以包括任何适当类型的装置,诸如平板计算装置、照相机、手持计算机、便携式装置、移动装置、个人数字助理(PDA)、蜂窝电话、网络装置、智能手机、增强型通用分组无线服务(EGPRS)移动电话,或这些数据处理装置或其他数据处理装置中的任何两个或更多个的任何适当组合。作为示例,图12示出了可被实现为计算装置130或140的计算装置的架构。
[0120] 计算装置130或计算装置140中的至少一个可以是便携式装置,例如平板装置。在一些情况下,计算装置130、140都是便携式的并且彼此无线连接。这样,计算系统120可以更容易地移动和重新定位,并且使得操作者更灵活地选择他或她相对于患者的位置。例如,(携带操作者侧计算装置140的)操作者没有物理地拴系到患者侧计算装置130,在设置和数据收集期间可以容易地将他或她自己定位在最佳位置(例如,远离患者的直接视场)。此外,护理者(例如,父母)可以在更合适的位置并以更舒适的方式携带患者(例如,学步儿童或其他儿童),这可以使患者更多地参与所播放的视觉刺激,用于有效且准确的眼睛跟踪数据获取。患者侧计算装置130可以(例如,可调节地)由护理者携带或布置在患者和护理者前面。
[0121] 如图1所示,患者侧计算装置130包括用于向患者显示或呈现视觉刺激的屏幕132(例如,显示屏)。患者侧计算装置130还可以包括眼睛跟踪装置134或与眼睛跟踪装置134集成在同一外壳136中。在一些实施例中,与眼睛跟踪装置134集成在一起的患者侧计算装置130可以被称为眼睛跟踪控制台或眼睛跟踪系统。
[0122] 眼睛跟踪装置134可以经由有线连接(例如,使用USB电缆或电线或使用电引脚)连接到患者侧计算装置130。在一些情况下,眼睛跟踪装置134被配置为经由无线连接(例如,蓝牙或NFC)连接到患者侧计算装置130。眼睛跟踪装置134可以被布置在相对于屏幕132和/或患者的适当位置,其中眼睛跟踪装置134可以在观看视觉刺激的同时获得患者的眼睛运动,同时还最小化来自患者视场的视觉干扰。
[0123] 如图1所示,眼睛跟踪装置134可以包括布置在屏幕132的底部之下的一个或多个眼睛跟踪单元(或传感器)135。一个或多个眼睛跟踪单元135可以布置在屏幕132的一个或多个侧面上、屏幕132的顶部上和/或屏幕132周围。一个或多个眼睛跟踪单元135可以在与屏幕132的外围相邻的位置处机械地安装到患者侧计算装置130。例如,患者侧计算装置130可以包括屏幕132和屏幕保持器结构,该屏幕保持器结构将眼睛跟踪装置134相对于屏幕132保持在固定的预定位置。在一些实施例中,眼睛跟踪装置134包括第一眼睛跟踪单元和第二眼睛跟踪单元,第一眼睛跟踪单元被配置为获得或收集患者的左眼的眼睛运动,第二眼睛跟踪单元被配置为获得或收集患者的右眼的眼睛运动。眼睛跟踪装置134还可以包括被配置为获得患者眼睛的位置的第三眼睛跟踪单元或被配置为获得患者的眼睛图像的图像获取单元(例如,相机)。
[0124] 眼睛跟踪单元包括传感器,该传感器可以检测人的存在并实时跟踪他/她正在看什么或测量人正在看哪里或眼睛如何对刺激做出反应。传感器可以将人的眼睛运动转换成包含诸如瞳孔位置、每只眼睛的凝视向量和/或凝视点的信息的数据流。在一些实施例中,眼睛跟踪单元包括相机(例如,红外敏感相机)、照明源(例如,红外光(IR)照明)和用于数据收集和/或处理的算法。眼睛跟踪单元可以被配置为跟踪瞳孔或角膜影像或反射(CR)。该算法可以被配置用于瞳孔中心和/或角膜检测和/或伪影抑制。
[0125] 由于在使用眼睛跟踪单元来收集参与者(例如,患者)的眼睛跟踪数据之前,眼睛尺寸、中央凹位置和可适应每个个体的一般生理学可能存在变化,因此可以首先校准眼睛跟踪单元。在校准中,眼睛的物理位置在算法上与参与者正在注视(例如,凝视)的空间中的点相关联。凝视位置可以是参与者感知的函数。在一些实施例中,校准涉及参与者在视场中查看固定的已知校准目标(例如,点)。校准可以包括单个对中目标,或2、5、9或甚至13个目标。该算法可以为每个目标创建眼睛位置(负CR)和凝视位置之间的数学变换,然后创建覆盖整个校准区域的矩阵,例如在每个目标之间进行插值。所使用的目标越多,整个视场上的精度就越高和越均匀。校准区域定义眼睛跟踪单元范围的最高精度部分,如果眼睛以大于所使用的目标的角度移动,则精度下降。
[0126] 在一些实施例中,眼睛跟踪单元能够例如通过创建眼睛的模型并被动地测量每个个体的特征来执行自校准。也可以在没有参与者主动合作的情况下通过基于内容对凝视位置进行假设来完成校准,有效地将校准目标“隐藏”在其他视觉信息中。在一些实施例中,如果可以例如使用医学前庭眼反射(VOR)系统或疲劳监测系统从原始瞳孔位置获取有用数据,则不对眼睛跟踪单元执行校准。
[0127] 在一些情况下,例如可以通过显示新的目标并测量所计算的凝视的精度,来进行验证以测量校准的成功。校准精度的公差可以取决于眼睛跟踪单元的应用。例如,在0.25和0.5度的视角之间的误差可以被认为是可接受的。对于一些应用,超过1度被视为失败的校准,需要另一次尝试。参与者可以在第二次或第三次尝试中改进。始终具有高验证误差的参与者可能具有妨碍其参与实验的视觉或生理问题。验证结果可以用视角度表示并以图形显示。
[0128] 如图2A所示,患者侧计算装置130可以包括被配置为检索或接收由眼睛跟踪装置134收集的原始眼睛跟踪数据的眼睛跟踪应用(或软件)。患者侧计算装置130可以基于原始眼睛跟踪数据生成会话数据,例如,将原始眼睛跟踪数据与相关联的信息(时间戳信息)存储在数据文件中(例如,以.tsv格式、.idf格式或任何合适的格式),如图5(b)所示。会话数据还可以包括在另一数据文件(例如,以.tsv格式或任何合适的格式)中播放或呈现的视觉刺激的信息,如图5(a)所示。该信息可以包括所播放的每个视觉刺激的时间戳信息。
[0129] 在一些实施例中,患者侧计算装置130存储被分组以对应于特定年龄组和/或状况组的患者的多个预定视觉刺激(例如,电影或视频文件)。例如,预定视觉刺激的第一列表可以被配置用于第一年龄范围(例如,5至16个月大)内的患者的ASD评估,预定视觉刺激的第二列表可以被配置用于不同于第一年龄范围的第二年龄范围(例如,16至30个月大)内的患者的ASD评估。在一些实施例中,操作者可以使用操作者侧计算装置140来基于特定患者的信息控制向特定患者播放预定视觉刺激列表。在一些实施例中,操作者应用在患者选择时向眼睛跟踪应用发送年龄信息,眼睛跟踪应用然后基于年龄信息动态地选择适当的预设播放列表,而无需操作者干预或选择。在一些实施例中,预定视觉刺激的数量也可以存储在操作者侧计算装置140中。
[0130] 测试方法取决于患者是清醒的且查看患者侧计算装置130的屏幕132。在校准以及数据收集程序期间,通过患者侧计算装置130向患者呈现预定的电影和/或其他视觉刺激。这些电影和/或其他视觉刺激可以包括进行手/脸/身体运动的人或动画演员。如结合图5中的进一步细节所讨论的,在数据收集周期期间,计算系统120可以周期性地向患者示出校准或注视目标(其可以是动画的)。这些数据稍后可用于验证准确性。
[0131] 向患者显示的视觉刺激(例如,电影或视频场景)可以取决于患者的年龄。也就是说,视觉刺激可以是年龄特定的。在一些实施例中,处理会话数据包括测量患者观看演员的眼睛、嘴或身体或其他预定感兴趣区域所花费的注视时间量,以及患者观看视频中的背景区域所花费的时间量。经由患者侧计算装置130的屏幕132向患者示出的视频场景可以描绘社交互动的场景(例如,演员直接观看相机、试图例如参与观看患者,或正在播放的儿童的场景)。在一些实施例中,视频场景可以包括其他合适的刺激,包括例如动画和优先观看任务。关于视频中的特定空间位置的注视时间的测量可以涉及患者的社会和/或认知发育水平。例如,年龄在12‑15个月之间的儿童由于其语言发育的发育阶段而表现出增加的嘴注视,并且在眼睛和嘴注视之间交替。作为另一示例,患者相对于视频中的演员的眼睛随时间的视觉注视的下降可以是患者中ASD或另一发育状况的指示。(在所显示的电影期间以及在多个观看会话期间或与具有基本上相同的年龄和/或状况的患者的历史数据相比较)可以执行对患者的观看模式的分析,用于诊断和监视包括ASD的发育、认知、社交或智力能力或残疾。
[0132] 操作者侧计算装置140被配置为运行操作者应用(或软件)。在一些实施例中,操作者应用被安装并运行在操作者侧计算装置140中。在一些实施例中,操作者应用在云服务器110上运行,操作者可以登录网络门户以通过呈现在操作者侧计算装置140上的用户界面与操作者应用交互,如结合图4A‑4J中的进一步细节所讨论的。操作者应用可以被配置为监督或控制患者侧计算装置130中的眼睛跟踪应用或软件的步骤,例如,选择和播放患者的特定视觉刺激并且收集原始眼睛跟踪数据。在一些实施例中,操作者应用经由软件开发包(SDK)与眼睛跟踪软件对接。在一些实施例中,患者侧计算装置130与操作者侧计算装置140之间的通信或操作者应用与眼睛跟踪应用之间的通信可以使用WebSocket通信来完成。
WebSocket通信允许两个装置之间的双向通信。该双向通信允许操作者控制患者侧计算装置130,同时从患者侧计算装置130接收信息。可以使用称为WebSocket Secure(WSS)的WebSocket的安全实现来完成WebSocket通信。如上所述,患者侧计算装置130和操作者侧计算装置140之间的通信(例如,操作者应用和眼睛跟踪应用之间的通信)可以通过云服务器
110。例如,操作者可以使用操作者侧计算装置140来登录在云服务器110上运行的网络门户并且与患者侧计算装置130建立无线连接以用于患者的眼睛跟踪数据获取。
[0133] 操作者应用可以另外用于执行其他功能,例如向操作者呈现界面,该界面示出患者的姓名、出生日期等,与向患者示出的刺激(例如电影)有关的信息等。操作者还可以使用操作者侧计算装置140来登录云服务器110的网络门户以用于装置管理、患者管理和数据管理。在一些实施例中,操作者应用在云服务器110上运行,并且由操作者使用操作者侧计算装置通过网络门户来控制。操作者可以仅用最少的训练来操作计算系统120。
[0134] 如在图3、4A‑4J和5中进一步详细讨论的,计算系统120可以被配置用于会话数据获取。在一些实施例中,通过在操作者侧计算装置140和患者侧计算装置130之间建立连接来初始化会话。在将患者的信息输入到在操作者侧计算装置140上运行的操作者应用(例如,定制软件)中之后,操作者应用可以控制在患者侧计算装置130上运行的眼睛跟踪应用以选择年龄特定的刺激并且指示患者的操作者或护理者将患者侧计算装置130以适当的取向和/或位置定位在患者前方。操作者可以使用操作者侧计算装置140来控制操作者应用和/或眼睛跟踪应用或软件,以(a)针对患者校准眼睛跟踪装置134,(b)验证校准是准确的,以及(c)在他或她观看会话中的动态视频或其他视觉刺激时,从患者收集眼睛跟踪数据,例如从响应于预定电影或其他视觉刺激而移动他或她的眼睛的患者收集眼睛跟踪数据。在会话结束之后,眼睛跟踪数据和与刺激相关的信息(例如,由患者观看的刺激列表)都可以作为会话数据存储在两个单独的数据文件中。然后,会话数据可以例如由患者侧计算装置130自动地例如经由网络102传送到云服务器110中的安全数据库。数据库可以远离计算系统120,并且被配置为容纳和聚集从多个计算系统120收集的数据。
[0135] 网络102可包括连接任何数量的移动计算装置、固定计算装置和服务器系统的大型计算机网络,诸如局域网(LAN)、广域网(WAN)、因特网、蜂窝网络或其组合。计算系统120中的计算装置130、140中的每一个可以通过网络102与云服务器110通信。
[0136] 在一些实施例中,可以使用超文本传输安全协议(HTTP)来完成本地计算装置130、140与云服务器110之间的通信。HTTP遵循请求和响应模型,其中客户端(例如,通过浏览器或桌面应用)向服务器发送请求并且服务器发送响应。从服务器发送的响应可以包含各种类型的信息,例如文档、结构化数据或认证信息。HTTP通信可以使用称为超文本传输安全协议(HTTPS)的HTTP的安全实现来完成。通过HTTPS传递的信息被加密以保护信息的隐私和完整性。
[0137] 云服务器110可以是在云环境中托管的计算系统。云服务器110可以包括一个或多个计算装置和一个或多个机器可读储存库或数据库。在一些实施例中,云服务器110可以是云计算系统,该云计算系统包括本地或分布式网络中的一个或多个服务器计算机,每个服务器计算机具有一个或多个处理核。云服务器110可以在并行处理或对等基础设施中或在具有一个或多个处理器的单个装置上实现。作为示例,图11是可被实现为云服务器110的云计算系统的架构。
[0138] 如图1所示,云服务器110包括云平台112和数据管道系统114。如结合图2A‑2G中的进一步细节所讨论的,云平台112可以被配置为提供网络门户,存储与治疗提供者或租户相关联的应用数据,以及存储例如原始眼睛跟踪数据、经处理的数据、分析和/或诊断结果的数据。数据管道系统114被配置为执行数据处理和数据分析。
[0139] 在一些实施例中,如结合图6和7A‑7B中的进一步细节所讨论的,云服务器110被配置为自动接收、处理和分析来自多个计算系统的会话数据。此外,云服务器可以并行地处理和分析来自大量计算系统的多个会话的会话数据,这可以极大地提高会话处理速度并在短时间内(例如在24小时窗口内)提供诊断结果。例如,由云服务器110(例如,由云平台112)接收会话数据可以启动自动软件(例如,由数据管道系统114)实现的处理和分析过程。在该过程中,可以将患者的个体数据与眼睛跟踪数据的模型进行比较,所述眼睛跟踪数据是先前基于具有基本上相同的年龄、背景和/或状况的患者的历史眼睛跟踪数据生成的。比较的结果可以是神经发育障碍的诊断,包括但不限于ASD,患者的发育/认知功能的测量和/或治疗计划的处方建议。可替代地或另外地,针对给定患者在多个会话(以及在预定时间段)内比较和/或回顾所收集的数据,以识别视觉注视的潜在变化(例如,视觉注视的下降)。这些结果可以压缩成诊断报告,供患者的医生使用。在一些实施例中,一旦诊断结果准备就绪,云服务器110就可以将诊断结果传送到操作者侧计算装置140,并且可以在操作者侧计算装置140的用户界面上呈现诊断结果,例如,如结合图8A‑8C中的进一步细节所讨论的。
[0140] 在一些实施例中,大量的模型数据(包括与相似年龄、相似背景和/或相似情况的患者相关的数据)可以与患者的经处理的会话数据一起使用,以例如使用经由统计模型、算法、诸如机器学习或人工神经网络模型的人工智能(AI)模型的比较或推断生成患者的诊断结果,这可以大大提高诊断结果的准确性。
[0141] 环境100包括对应于图1所示的环境100的三个部分(例如,用于数据获取的计算系统120、云平台112和数据管道系统114)的三个主要步骤。如在图2A‑2G中进一步详细讨论的,这三个部分可以被配置在一起以可靠地收集患者的数据,并且有效地处理和分析所收集的数据以诊断ASD或其他认知、发育、社交或智力能力或残疾。
[0142] 图2A是根据本公开的一个或多个实施例的用于通过眼睛跟踪评估发育障碍的示例性系统200的框图。系统200可以在图1的环境100中实现。根据数据处理的三个步骤,系统200包括三个子系统:数据获取子系统210、平台子系统220和数据管道子系统230。每个子系统可以由对应硬件和软件项组成。
[0143] 数据获取子系统210被配置为收集患者的眼睛跟踪数据。数据获取子系统210可以是图1的计算系统120。如图2A所示,数据获取子系统210包括运行眼睛跟踪应用214的眼睛跟踪控制台212和运行操作者应用216的操作者侧计算装置(例如,图1的140)。在一些实施例中,操作者应用216部署在操作者侧计算装置中。在一些实施例中,操作者应用216部署在平台子系统220中,并且操作者可以使用操作者侧计算装置通过网络门户222登录平台子系统220以在平台子系统220上运行操作者应用216。在平台子系统220中部署操作者应用216可以避免在一个或多个操作者侧计算装置中部署操作者应用216,这可以减少操作者侧计算装置的软件和硬件要求,并且使得能够方便地维护或更新操作者应用216,例如,无需维护或更新一个或多个操作者侧计算装置中的每一个上的操作者信息216。
[0144] 眼睛跟踪控制台212可以是包括图1的患者侧计算装置130(例如,平板电脑)和眼睛跟踪装置134的集成装置。如上所述,数据获取子系统210可以包括存储在眼睛跟踪控制台212中并且可选地存储在操作者侧计算装置中的多个电影文件218。电影文件218可以是针对不同年龄和/或不同状况的患者的预定的特定年龄的视觉刺激。
[0145] 如图1所述,平台子系统220和数据管道子系统230可以被包括在诸如云服务器(例如,图1的云服务器110)的网络连接服务器中,并且在由云提供者(例如,Microsoft Azure)提供的集中式云托管环境中实现。在一些实施例中,平台子系统220被配置用于云托管环境的资源的管理和编排。平台子系统220可以是图1的云平台112。如图2A所示,平台子系统220包括网络门户222、存储应用数据的数据库224和数据库226。
[0146] 网络门户222可以是基于网络的界面。通过网络门户222,操作者(例如,医疗专业人员)可以例如使用操作者侧计算装置登录到平台子系统220中以管理(查看和/或查询)存储在数据库224中的应用数据224和/或数据库226中的数据。例如,网络门户222允许操作者查看诊断结果。可以基于诊断结果提供预先编写的动作过程(例如,寻求进一步的评估)。
[0147] 作为数据库224的示例,图2D示出了存储不同类型文档的数据库240。数据库240可以是诸如Azure Cosmos DB的NoSQL数据库。不同类型的文档可以作为应用数据存储在数据库240中。与关系数据库不同,NoSQL数据库在文档之间不具有强关系。图2D中的虚线表示文档之间嵌入的参考和信息。
[0148] 在一些实施例中,数据库240存储用于治疗提供者(或租户)的对应应用数据。治疗提供者可以是保健组织,其包括但不限于自闭症中心、保健机构、专家、医师或临床研究。组织在结构、患者数量和寿命方面可能会有不同。如图2D所示,对应应用数据可以包括组织文档242、用户文档244、装置文档246、患者文档248、会话文档250和历史文档252。用户可以是与保健组织相关联的操作者,例如,医疗助理、专家、医师或任何其他医疗专业人员。
[0149] 组织文档242包含组织的设置和定制。用户文档244含有标识符信息以及用户的角色和权限。用户角色指示用户是与不同安全级别或许可相关联的管理员还是操作者。装置文档246包含与组织相关联的每个眼睛跟踪控制台(例如,图2A的212)的标识符信息。患者文档248包含关于患者的信息,例如被当作用于发育评估的患者的婴儿或儿童的信息。会话文档250包含与会话相关的信息,该会话可以包括会话标识符(会话ID)、对患者的引用、对执行会话的用户的引用、对眼睛跟踪数据的指针,以及数据处理和分析的结果。历史文档252可用于维护文档变化的版本历史。该文档反映了其父文档的结构,并包括附加审核信息。在一些实施例中,数据库224允许基于URL的查询(例如,对于具有管理角色的那些)跨多个变量进行查询。例如,变量可以包括患者/装置/会话、不良事件等。
[0150] 在一些实施例中,包括平台子系统220和数据管道子系统230的云服务器可以在集中式云环境中实现,这可以提供更多的灵活性来扩展云服务器的能力。例如,云服务器可以利用多租户架构来向治疗提供者提供基于软件即服务(SaaS)订阅的诊断服务。在多租户架构中,治疗提供者在各种地理位置上共享单个版本的软件。多租户架构中的术语“租户”描述了系统的单个治疗提供者。云服务器的资源可基于租户的总数和预期的平均工作负载(例如,在给定时间点有多少租户访问云服务器)来动态地管理。云服务器可以采用诸如自动缩放的水平缩放技术来处理资源工作负载中的尖峰。
[0151] 在共享应用的多租户架构中,隔离它们的租户数据并防止其他租户访问它们的租户数据是重要的。这被称为隔离。有3种不同的隔离策略可以实现:共享数据库、每个租户的数据库和每个租户的应用。在共享数据库策略中,租户共享应用的单个实例,并且所有数据被存储在单个数据库中。在每个租户的数据库策略中,例如图2E的图(a)中所示的策略260,租户共享应用层262中的应用的单个实例,但是具有它们自己的数据库264(例如图2A的数据库224或图2D的240)。在每个租户的应用策略中,例如图2E的图(b)中所示的策略270,每个租户在相应应用层272和其自己的数据库274(例如图2A的数据库224或图2D的240)中获得其自己的应用实例。云服务器可以将数据库/租户策略260或应用/租户策略270部署到治疗提供者。
[0152] 继续参考图2A,数据库226被配置为存储原始眼睛跟踪数据或会话数据、处理后的会话数据、分析结果和/或诊断结果或报告。数据库226可以是存储平台(例如,Azure Blob),并且可以与以任何合适的编程语言(例如,Python,Matlab)编写的工具配对,从而允许对数据库226的基于URL的界面和查询。另外,数据库226可以与用于将数据从数据获取子系统210传送到数据库226以及从数据库226传送到数据管道子系统230的编程语言(例如,Python、Matlab)兼容。例如,在患者侧计算装置(例如,图1的130)位于医疗设施处的情况下,在该设施处进行数据收集,并且在数据库226和患者侧计算装置之间传送数据。数据库226可以是安全的、HIPAA兼容的,并且由冗余备份系统保护。
[0153] 在一些实施例中,平台子系统220被配置为启用一个或多个操作,这些操作包括(a)新患者信息的摄取,(b)原始数据文件(例如,包括眼睛跟踪数据)的存储,(c)在数据收集装置(例如,图2A的眼睛跟踪控制台212)、数据处理计算机和数据库之间的文件的自动和安全传送,(d)出于评估装置利用率和其他数据质量测量的目的而对数据进行制表和查询,以及(e)医师对处理结果的访问。操作(a)到(c)中的一个或多个可以由平台子系统220中的上载功能模块221来执行。
[0154] 继续参考图2A,数据管道子系统230被配置为处理和分析患者眼睛跟踪数据以及产生诊断结果。在一些实施例中,数据管道子系统230包括数据处理模块232、数据分析模块234和模型数据236。如下面在图7A‑7B中进一步详细讨论的,数据处理模块232被配置为处理包括眼睛跟踪数据的会话数据以获得经处理的会话数据,并且数据分析模块234被配置为使用模型数据236分析经处理的会话数据以生成诊断结果。
[0155] 在一些实施例中,系统200包括用于装置和子系统的界面。界面可以是子系统间的。例如,系统200还可以包括数据获取子系统210到云平台子系统220之间的界面,以及从云平台子系统220到数据管道子系统230的界面。界面可以是子系统内的。例如,系统200可以包括眼睛跟踪控制台硬件(例如,平板电脑和眼睛跟踪装置)与眼睛跟踪应用软件之间的界面。
[0156] 图2B示出了根据本公开的一个或多个实施例的在图2A的系统200中处理单个会话数据的示例。如上所述,在数据收集会话完成之后,眼睛跟踪控制台212可以自动地将会话的会话数据传送到平台子系统220。会话数据可以包括两个文件:一个包含原始眼睛跟踪数据(例如,凝视位置坐标、眨眼数据、瞳孔尺寸数据或其组合),而另一个包含与刺激相关的信息(例如,患者观看的那些电影的列表或播放列表)。通过在平台子系统220中实现的上载功能模块221,会话数据可被存储在数据库226中并被存储到数据库224中的应用数据中。然后,所存储的会话数据自动地从平台子系统220传送到数据管道子系统230用于数据处理和分析,而无需人为干预。例如,以任何合适的编程语言(例如Python、Matlab)编写的软件脚本可用于将原始的、未经处理的数据文件从数据库226传送到数据管道子系统230用于处理。会话数据首先由数据处理模块232处理,然后由数据分析模块234分析,数据分析模块234产生关于患者的诊断信息。
[0157] 在一些实施例中,生成三个文件,一个包含经处理的眼睛跟踪数据,一个包含眼睛跟踪统计的概要,以及一个包含诊断信息。包含诊断信息的文件可以被上载到数据库224,以在应用数据中与患者相关联,如图2D所示。然后可以将这三个文件上载到数据库226用于存储。在一些情况下,将经处理的眼睛跟踪数据制表到会话表中。可以从经处理的概要文件中读取眼睛跟踪信息的概要(例如,注视样本/电影等),并将其制表在数据库226中以供后续查询。然后可以在数据库226中计算概要值(例如,注视/电影百分比等)。
[0158] 图2C示出了根据本公开的一个或多个实施例的在图2A的系统200中并行处理多个会话数据的示例。如图2C所示,多个眼睛跟踪控制台212a、212b可以向平台子系统220发送多个会话的会话数据213a、213b、213c(统称为会话数据213或单独称为会话数据213)。在数据管道子系统200中,数据处理模块232和数据分析模块234可以用适当的编程语言(例如Python)编写,其使得能够将数据处理模块232和数据分析模块234部署在容器231a、231b、231c(统称为容器231或单独称为容器231)中。每个会话可以使用其自己的数据处理和分析的实例来处理。容器的使用允许在会话数据从数据获取子系统210上载时进行数据处理和分析,这可使得会话在短时间内例如在24小时窗口内返回。
[0159] 如结合图7A‑7B中的进一步细节所讨论的,云服务器可以并行地处理和分析来自大量计算系统的多个会话的会话数据。首先,云服务器可以为每个会话部署相应容器(例如231),并且相应容器可以包括对应数据处理模块232和对应数据分析模块234。这样,一旦会话的会话数据(例如,213)被对应眼睛跟踪控制台212上载,该会话的会话数据就可以使用其自己的容器(例如,具有其自己的数据处理和数据分析实例的231)来处理和分析。第二,当例如使用云服务器中的大多数处理单元(或核)在对应容器中处理多个会话的会话数据时,可以例如使用云服务器中剩余的或少数处理单元将用于分析处理后的会话数据的模型数据并行地预加载到对应容器中。第三,可以例如使用云服务器中的总数量的处理单元在对应容器中并行地分析所有经处理的会话数据和加载的模型数据。以多种方式并行化的使用可以极大地提高会话数据处理和分析的速度,并且在短时间内,例如在24小时窗口内提供快速的诊断结果。例如,一旦诊断结果可用,云服务器可以将诊断结果发送到对应操作者侧计算装置(例如,图1的140),然后可以在操作者应用216的结果界面中显示诊断结果。并行化还可以使云服务器的资源利用效率更高,从而进一步提高系统性能。
[0160] 图2F示出了根据本公开的一个或多个实施例的用于图2A的系统200的数据备份的示例性配置280。配置280可以实现对治疗提供者的服务的高可用性,使得不管云服务器的一个或多个特定区域(例如,平台子系统220和数据管道子系统230)中发生任何中断,治疗提供者都可以访问他们的服务。
[0161] 高可用性是指不管云服务提供者是否遭受中断,治疗提供者访问其服务的能力。可通过在不同的物理位置中复制资源来实现可用性。本文实现的云服务器可以由云服务提供商提供,该云服务提供商可以提供具有高可用性内置或可配置的高可用性的软件即服务(PAAS)资源。在云环境中托管的资源可以使用高可用性服务级别协议或通过使用地理冗余而具有高可用性。
[0162] 图2F示出了通过地理冗余的高可用性的示例。如图2F(a)所示,云服务器的资源可以被托管在具有网络门户222a的第一数据中心282中。在第二数据中心284中复制资源。当第一数据中心282正常工作时,治疗提供者流量被引导到第一数据中心282,第二数据中心284是镜像。然而,如图2F(b)所示,当第一数据中心282下降时,治疗提供者流量被重定向到运行复制的网络门户222b的第二数据中心284中的复制资源。切换过程可以是无缝的,并且治疗提供者可能不知道到复制数据中心中的不同资源的切换。
[0163] 图2G示出了系统200(例如平台子系统220和数据管道子系统230)的示例性数据备份。存储应用数据的数据库224和存储原始的和经处理的眼睛跟踪数据以及分析或诊断结果的数据库226可以存储在多个数据中心中。平台子系统220中的网络门户222、数据管道子系统230中的数据处理模块232和数据分析模块234,以及可选地操作者应用216(在平台子系统220上运行)可以包括在活动数据中心282中,并且可以在备份数据中心284中复制。
[0164] 用于会话数据获取的示例过程
[0165] 图3是根据本公开的一个或多个实施例的用于会话数据获取的示例性过程300的流程图。过程300可以由例如图1的计算系统120或图2A的数据获取子系统210的系统执行。该系统包括操作者侧计算装置(例如,图1的140)和与相关联的眼睛跟踪装置(例如,图1的
134)集成的一个或多个患者侧计算装置(例如,图1的130)。操作者侧计算装置和一个或多个患者侧计算装置中的每一个可以经由网络(例如,图1的网络102)与基于网络的服务器或云服务器(例如,图1的云服务器110或图2A‑2G中描述的云服务器)通信。该系统可以与治疗提供者相关联,例如向患者提供发育障碍评估和/或治疗服务。云服务器可以与服务提供商相关联,用于向治疗提供商提供服务,例如数据处理、分析和诊断结果。为了说明,图4A‑4J示出了根据本公开的一个或多个实施例的在会话数据获取期间(例如,在图3的过程300中)呈现在操作者侧计算装置(a)和患者侧计算装置(b)上的一系列说明性显示屏幕。
[0166] 在步骤302,例如通过在操作者侧计算装置和患者侧计算装置之间建立连接或通信来发起会话。在一些实施例中,两个计算装置130和140可以无线连接,例如经由无线连接,而无需物理连接。无线连接可以通过蜂窝网络、无线网络、蓝牙、近场通信(NFC)或其他标准无线网络协议。在一些情况下,患者侧计算装置还可以被配置为例如当无线连接失败时,通过诸如通用串行总线(USB)的有线连接来连接到操作者侧计算装置。
[0167] 在一些实施例中,操作者侧计算装置和患者侧计算装置之间的连接由与云服务器通信的两个计算装置建立,云服务器进而提供操作者侧计算装置和患者侧计算装置之间的通信。例如,如图4A所示,操作者(例如,医疗助理、医疗专业人员或治疗提供者的任何其他代表)可以登录在云服务器上运行的网络门户(例如,图2A的222),用于装置管理、患者管理和数据管理。操作者可以具有对应用户角色和许可,例如,如图2D中所讨论的。图4A的图(a)示出了在操作者使用操作者侧计算装置登录网络门户之后在操作者侧计算装置的显示屏上呈现的用户界面(UI)。UI可以是运行在云服务器或操作者侧计算装置上的操作者应用(例如,图2A的216)的用户界面。
[0168] 如图4A的图(a)所示,UI包括显示按钮“主页”、“患者”、“装置”和“用户”的菜单。通过点击按钮,可以在UI中呈现对应信息(例如,患者信息、装置信息或用户信息)。例如,当点击按钮“装置”时,UI显示可由操作者控制的患者侧计算装置(例如装置1、装置2、装置3、装置4、装置5)的名称列表。如果患者侧计算装置连接到云服务器,例如装置4、装置5,则可以在患者侧计算装置的名称附近呈现指示,例如示出“连接”的字符串。操作者可以选择名称中的一个,例如装置4,以将对应患者侧计算装置与操作者侧计算装置连接。一旦选择了名称,UI就显示要输入用于连接对应患者侧计算装置的访问码的请求,如图4B的图(a)所示。
[0169] 图4A的图(b)示出了在患者侧计算装置(例如,装置4)的屏幕(例如,图1的132)上呈现的用户界面。例如,可以在操作者打开并登录患者侧计算装置之后呈现UI。UI可以示出按钮“开始”,其可例如由操作者点击以开始会话。在点击按钮“开始”之后,患者侧计算装置连接到云服务器,例如连接到网络门户。云服务器可以基于患者侧计算装置的标识符将患者侧计算装置与操作者相关联,例如,如图2D所示。一旦患者侧计算装置成功地连接到云服务器,在患者侧计算装置上呈现的UI可以显示由网络门户生成的用于与操作者侧计算装置连接的访问码(例如,“5678”)的信息,如图4B的图(b)所示。操作者可以从呈现在患者侧计算装置上的UI获得访问码,并将其输入呈现在操作者侧计算装置上的UI,然后将访问码提交给网络门户。在网络门户确认操作者侧计算装置中输入的访问码与患者侧计算装置的访问码生成器匹配之后,网络门户可以在操作者侧计算装置和患者侧计算装置之间建立无线连接。
[0170] 一旦建立了操作者侧计算装置和患者侧计算装置(例如,装置4)之间的连接,就可以在操作者侧计算装置的UI上显示连接信息,例如,“连接到装置4”,例如,如图4C的图(a)所示。同时,UI可以示出用于开始在患者侧计算装置的屏幕上向患者显示视觉信息(例如电影)的按钮。患者的护理者(例如父母)可以带着(或携带)患者观看呈现在患者侧计算装置的屏幕上的电影。
[0171] 在步骤304,脱敏例如通过操作者点击操作者侧计算装置的UI上的按钮“开始电影”而开始,这可以使得在患者侧计算装置的屏幕上向患者显示视觉脱敏信息(例如电影),如图4C的图(b)所示。
[0172] 在显示脱敏电影期间,通常不记录数据。相反,显示电影是为了获得患者的注意力。电影可以反射性地引起患者的外来暗示,而不需要操作者的语言调解或指示。例如,操作者不需要给出查看患者侧计算装置的屏幕的指令,因为电影本身获得了患者的注意力。
[0173] 当脱敏电影显示在患者侧计算装置的屏幕上时,如图4D的图(b)所示,操作者可以通过操作者侧计算装置的UI选择患者的患者信息,如图4D的图(a)所示。操作者可以从与云服务器中的操作者相关联的现有患者列表中选择患者,例如,如图2D所示,或为新患者创建患者简档。在确认患者之后,该过程开始通过在操作者侧计算装置的UI上显示设置信息来相对于患者设置眼睛跟踪装置(或患者侧计算装置),如图4E的图(a)所示。操作者还可以在操作者侧计算装置的UI上选择“暂停电影”或“跳过电影”。
[0174] 在设置期间,脱敏电影可以保持在患者侧计算装置的屏幕上播放,如图4E的图(b)和图4F的图(b)所示。如图4F的图(a)所示,在操作者侧计算装置的UI上,例如通过文本或图形示出眼睛跟踪装置与患者眼睛之间的相对位置。相对位置可以通过使用包括在眼睛跟踪装置中或邻近眼睛跟踪装置的图像获取装置(例如,照相机)获得患者眼睛的图像数据来确定。在一些实施例中,在操作者点击操作者侧计算装置的UI中的按钮“开始设置”之后,如图4E的图(a)所示,运行在云服务器上的操作者应用可以向患者侧计算装置发送命令以使用图像获取装置来获得患者眼睛的图像。然后,患者侧计算装置可以将所获得的图像发送到云服务器,并且操作者应用可以处理该图像以确定眼睛跟踪装置与患者眼睛之间的相对位置。相对位置可以包括眼睛跟踪装置和患者眼睛之间的距离,眼睛的中心和眼睛跟踪装置的视场(或检测区域)的中心之间的水平和/或垂直偏差。基于该相对位置,操作者应用可以在操作者侧计算装置的UI上显示用于调整眼睛跟踪装置的位置的指令,例如“向下移动控制台”,如图4F的图(a)所示。一旦患者的眼睛和眼睛跟踪装置的相对位置是可接受的,操作者可以例如通过点击UI中用于“确认设置”的按钮来确认设置。在一些实施例中,响应于确定患者眼睛和眼睛跟踪装置的相对位置小于预定阈值(例如,水平/垂直偏差小于0.1cm),操作者应用可以确定完成设置并向操作者显示指示。
[0175] 在步骤306,用眼睛跟踪装置校准患者。在完成设置之后,操作者应用可以在操作者侧计算装置的UI上呈现“开始校准”的按钮,如图4G的图(a)所示。在一些实施例中,校准涉及患者在视场中查看一个或多个固定的、已知的校准目标(例如,点或图标)。校准或注视目标反射性地捕捉患者的注意力并使得朝向已知目标位置的眼扫视和注视在已知目标位置上。目标可靠地引起对有限位置的注视;例如,径向对称的目标跨越小于0.5度的视角。其他示例包括同心图案、形状或收缩刺激,即使初始尺寸较大,其也可靠地引起对固定目标位置的固定。
[0176] 例如,一旦操作者点击按钮以开始校准,就可以在患者侧计算装置的屏幕上的预定位置(或目标位置)(例如,中心、左上角或右下角)处顺序地呈现多个校准目标,例如,如图4G的图(b)所示。当在患者侧计算装置的屏幕上呈现多个校准目标时,例如响应于从操作者应用接收命令,可以启动眼睛跟踪装置以获得患者的眼睛跟踪校准数据。眼睛跟踪应用(例如,图2A的214)可以在患者侧计算装置上运行以收集患者的眼睛跟踪校准数据。
[0177] 在一些实施例中,患者侧计算装置(例如,眼睛跟踪应用)被配置为确定校准目标的对应视觉注视的位置,然后将所确定的患者的对应视觉注视的位置与呈现校准目标的预定位置进行比较。基于比较的结果,眼睛跟踪应用可以确定校准目标是否被校准。如果患者的对应视觉注视的位置与校准目标的预定位置之间的距离在预定阈值内,则眼睛跟踪应用可以确定患者的对应视觉注视与校准目标的预定位置相匹配,或校准目标被校准。如果该距离大于或等于预定阈值,则眼睛跟踪应用可以确定患者的对应视觉注视与预定位置不匹配,或校准目标未通过校准。
[0178] 在一些实施例中,患者侧计算装置将关于所获得的患者的眼睛跟踪校准数据和/或预定位置的信息发送到操作者侧计算装置或云服务器,操作者应用可以确定患者的对应视觉注视的位置,并且将确定位置与多个预定位置进行比较,和/或基于比较的结果来确定校准目标是否被校准。
[0179] 在一些实施例中,第一校准目标可以首先呈现在屏幕的中心,并且校准可以继续,其中四个以上的校准目标沿着旋转方向呈现在屏幕的每个角。操作者应用可警告操作者校准的活动状态(例如,校准点1、校准点2、校准点3或校准完成4/5目标)。在每个校准目标之间,脱敏电影在显示新的校准目标之前播放一段设定的时间。在确定校准目标未能被校准并移动到下一个校准目标之前,每个校准目标可以循环设定次数。如果校准目标未通过校准,则可以在示出所有剩余校准目标并尝试凝视收集之后重新尝试校准目标。
[0180] 在步骤308,校准已验证。例如,通过显示新的目标并测量所计算的凝视的精度,可以执行验证以测量校准的成功。与校准步骤306的校准目标(例如,5)相比,该验证可以示出较少数量的校准目标(例如,3)。可以在显示两个相邻校准目标之间播放脱敏电影。
[0181] 在一些实施例中,基于患者的对应视觉注视的确定位置与呈现校准目标的预定位置之间的比较结果,具有不同成功水平(例如,校准或验证的校准目标的数量)的初始验证可以自动地指示操作者(1)用患者重新校准眼睛跟踪装置,(2)重新验证那些不能被验证的校准目标,或(3)接受校准并在步骤310继续数据收集。
[0182] 在一些实施例中,操作者可以具有决定是否接受校准的判断。如图4H所示,在操作者侧计算装置的显示屏幕上,校准目标与在患者的对应视觉注视的确定位置处的患者的对应视觉注视的表示(例如,点)同时呈现在多个预定位置处。UI还可显示“接受确认”的第一按钮和“重新校准”的第二按钮。操作者可以查看多个校准目标和患者的对应视觉注视的表示之间的匹配,并且确定是(通过点击第一按钮)接受验证还是(通过点击第二按钮)将患者相对于眼睛跟踪装置重新校准。
[0183] 在步骤310,通过在患者侧计算装置的屏幕上向患者呈现预定视觉刺激(例如,刺激电影)的播放列表,例如在校准已验证或操作者接受验证之后,收集患者的眼睛跟踪数据。如图5(a)所示,预定视觉刺激列表可以包括例如基于患者的年龄和/或状况的患者特定的多个社交刺激视频(例如,0075PEER、0076PEER、0079PEER)。在每个社交刺激视频之间或在呈现每个社交刺激视频之前,可以显示对中视频(例如,对中刺激视频(centerstim video)),用于对患者的凝视进行简单地对中。在一些实施例中,如图5(a)所示,在数据收集步骤中,例如在显示对中视频之间执行校准检查(例如,类似于步骤306)。例如,校准检查可以包括示出五个校准目标,用于校准检查左上的CCTL,用于校准检查右上的CCTR,用于校准检查左下的CCBL,用于校准检查中心‑中心的CCCC,用于校准检查右下的CCBR。与校准检查相关的数据可以用于事后处理,例如用于重新校准眼睛跟踪数据和/或用于确定校准精度。
[0184] 在特定示例中,步骤310处的数据收集序列可以如下:
[0185] 1.对中刺激
[0186] 2.刺激电影
[0187] 3.对中刺激
[0188] 4.刺激电影或校准检查(例如,显示5个校准目标,例如在2到4个刺激电影之间随机播放)
[0189] 5.重复步骤1‑4直到预定激励电影的播放列表完成
[0190] 在一些实施例中,如图4I所示,操作者侧计算装置上的UI示出了用于“开始收集”的按钮。在操作者点击“开始收集”的按钮之后,预定视觉刺激的播放列表可以根据预定序列顺序地呈现在患者侧计算装置的屏幕上。在操作者侧计算装置的屏幕上,如图4I所示,UI可以以文本示出运行播放列表的状态(例如,播放电影:对中刺激)或显示与患者侧计算装置的屏幕上呈现的内容相同的内容(例如,显示对中刺激视频)。
[0191] 在一些实施例中,如图4J所示,UI可以示出已被播放或正被播放的视频的运行播放列表,例如对中刺激、PEER1234、对中刺激、PEER5678。UI还可以显示正在患者侧计算装置的屏幕上呈现的视频。UI还可以显示指示在预定刺激电影的播放列表中已经播放的刺激电影的百分比的进度条。UI还可以显示用于操作者跳过电影的按钮。
[0192] 在一些实施例中,所收集的眼睛跟踪数据(例如,图8A的812)的校准精度可以例如经由反射性地捕捉注意力并使得朝向已知目标位置的眼扫视和注视的视觉刺激的呈现来评估。目标可靠地引起对有限位置的注视;例如,径向对称的目标跨越小于0.5度的视角。其他示例包括同心图案、形状或收缩刺激,即使初始尺寸较大,其也可靠地引起对固定目标位置的固定。这种刺激可以在具有头部约束的数据收集下进行测试,以确保它们在理想的测试环境下可靠地引起注视;然后可以将它们的使用扩展为包括非头部限制的数据收集。
[0193] 在一些实施例中,所收集的眼睛跟踪数据的准确性的数值评估可以包括以下步骤:(1)向所述视觉显示单元的小区域呈现可靠地引起注视的注视目标;(2)在整个目标呈现中记录眼睛跟踪数据;(3)在收集到的眼睛跟踪数据中识别注视;(4)计算注视位置坐标与目标位置坐标之差;以及(5)将所计算的注视位置坐标与目标位置坐标之间的差异存储为针对少至一个目标或针对尽可能多的目标(例如,五个或九个但可以更多)的向量数据(方向和量值)。在一些实施例中,可以例如通过应用空间变换来将注视位置坐标与实际目标位置坐标对准,通过包括但不限于(a)三线性插值,(b)重心坐标中的线性插值,(c)仿射变换和(d)分段多项式变换的方法来执行重新校准或后处理步骤。
[0194] 一旦预定视觉刺激的播放列表被完全播放,则会话结束。患者侧计算装置可以基于由眼睛跟踪装置收集的原始眼睛跟踪数据来生成会话数据,例如,将原始眼睛跟踪数据与相关联的信息(时间戳信息)存储在数据文件中(例如,以.tsv格式、.idf格式或任何合适的格式),如图5(b)所示。原始眼睛跟踪数据可以包括在不同时间戳处的多个眼睛跟踪参数的值。眼睛跟踪参数可以包括左眼、右眼、左瞳孔和/或右瞳孔的凝视坐标信息。
[0195] 会话数据还可以包括在另一数据文件(例如,以.tsv格式或任何合适的格式)中播放或呈现的视觉刺激的信息,如图5(a)所示。该信息可以包括所播放的每个视觉刺激的时间戳信息和名称。视觉刺激的时间戳信息可以与眼睛跟踪数据的时间戳信息相关联,使得可以基于这两个数据文件中的时间戳信息来单独地确定每个视觉刺激(和/或校准检查)的眼睛跟踪数据。
[0196] 在步骤312,会话数据被发送到云服务器。一旦由患者侧计算装置生成会话数据,患者侧计算装置就可以将会话数据发送到云服务器。如图2A‑2G中所讨论的以及图6、7A‑7B和8中所讨论的,云服务器可以首先将会话数据存储在集中式数据库(例如,图2A‑2B的数据库226)中,然后处理会话数据,分析经处理的数据,并生成患者的诊断结果,该诊断结果可以由操作者或医学专业人员访问或查看。
[0197] 示例数据处理和分析
[0198] 图6是根据本公开的一个或多个实施例的用于由云服务器(例如,图1的云服务器110或图2A‑2G中描述的云服务器)管理会话数据(例如,数据处理和分析)的示例性过程600的流程图。图7A‑7B示出了根据本公开的一个或多个实施例的用于通过云服务器比图6更详细地管理会话数据的示例性过程700的流程图。
[0199] 在步骤702,一旦会话完成,对应患者侧计算装置(例如,图1的130)或眼睛跟踪控制台(例如,图2A‑2G的212)例如通过网络门户将会话的会话数据发送到云服务器的云平台。云平台可以是图1的平台112或图2A‑2G的平台子系统220。响应于接收会话数据,云服务器的云平台将会话数据存储在云平台中的数据库(例如,图2A‑2G的数据库226)中。然后,云平台自动地将会话数据传送到数据管道系统(例如,图1的114或图2A‑2G的230)用于数据处理和分析。
[0200] 在步骤704,将用于会话的会话数据的文件指针添加到处理队列(步骤704)。所有已完成会话的会话数据根据处理队列等待处理。一旦会话的会话数据被上载并存储在云服务器中,对应文件指针就可以被分配给该会话的会话数据并被添加到处理队列中。文件指针可以是相应会话的会话数据的标识符。可以基于所述文件指针从所述云平台中的数据库中检索所述相应会话的会话数据。
[0201] 在步骤706,例如基于可以实现会话并行化的自动缩放技术,为每个会话的会话数据创建相应容器。例如,响应于将用于新会话的文件指针添加到处理队列中,可以为新会话创建新容器。每个容器(例如,图2C的231)可以具有其自己的数据处理模块和数据分析模块的实例,例如,如图2C所示。
[0202] 在每个容器中,例如由图2A‑2G的数据处理模块232对对应会话的会话数据执行步骤708到714。注意,可以并行地对多个容器中的多个会话的会话数据执行步骤708到714。
[0203] 在步骤708(对应于图6的步骤602),使用对应文件指针从云平台中的数据库获得会话数据。如上所述,会话数据可以包括两个文件:眼睛跟踪数据文件(例如,如图5(b)所示)和播放列表文件(例如,如图5(a)所示)。
[0204] 参考图6,步骤602可以对应于步骤708。在步骤604,准备会话数据以用于处理。步骤604可以包括如图7的步骤710至714中所述的一个或多个步骤。
[0205] 步骤604可以包括将眼跟踪数据文件中的眼跟踪数据链接到播放列表文件中播放的电影。在一些实施例中,如图7A所示,在步骤710,例如基于这两个文件中的时间戳信息,将眼睛跟踪数据分解成单独的运行。每次运行可以对应于播放对应电影(例如,对中目标(centering target)、预定视觉刺激,或一个或多个校准目标)。例如,对应于由两个相邻电影的时间戳定义的范围内的时间戳的眼睛跟踪数据被包括在一个运行中。在步骤712,基于这两个文件中的时间戳信息,将每次运行中的眼睛跟踪数据链接到播放列表中的对应电影。在一些实施例中,眼睛跟踪数据不被分解为单独的运行,而是作为具有链接到播放列表中的对应电影的数据样本的连续流来处理。
[0206] 在步骤714,眼睛跟踪数据被重新校准以解决漂移或偏差。在一些实施例中,在呈现播放列表期间在校准步骤中收集的眼睛跟踪数据(例如,如图5的图(a)中所示)可用于校准或对准在不同轮次中播放各个电影期间收集的眼睛跟踪数据。例如,利用来自与示出附加校准目标的时间相邻的时间的数据,校正凝视位置中的任何差异。一些较大的差异可能从后续分析中排除某些数据。
[0207] 在步骤606,处理所准备的会话数据。在一些实施例中,数据处理模块从所准备的会话数据中提取相关信息,例如患者的视觉注视和/或对电影中感兴趣的对象或区域的视觉注视。在一些实施例中,数据被重新采样以解决样本之间的任何时间变化。可以使用任何适当的内插和/或平滑技术来重新采样数据。可以将数据从所收集的眼睛跟踪数据的指定原始分辨率和/或坐标系转换为用于分析的适当分辨率和/或坐标系。例如,可以以比所呈现的刺激的分辨率(例如,重新缩放至640×480像素)更高的分辨率(例如,1024×768像素)收集原始数据。在一些实施例中,数据处理模块可以自动识别基本的眼球运动事件(不希望的注视、眼扫视、眨眼、屏幕外或丢失的数据等),并且可以自动识别对象(以不希望的方式)注视、眼扫视、眨眼的时间,或对象不观看屏幕的时间。数据处理模块可以针对如由眼睛跟踪装置输出的凝视位置估计中的像差进行调整。
[0208] 在一些实施例中,如图7B的步骤716所示,在多个会话容器中并行地处理患者的多个会话的会话数据,并将患者的对应模型数据预加载到多个会话容器中。在一些示例中,使用云服务器中的大多数处理单元(例如,N个处理核)在多个会话容器中处理多个会话的会话数据,而使用云服务器中的少数处理单元(例如,M个处理核)将对应模型数据并行地预加载到多个会话容器中。处理单元或核可以是中央处理单元(CPU)。并行化可以避免等待上载模型数据的附加时间。
[0209] 云服务器可以将模型数据预先存储在数据库中,例如图2A‑2G的226。模型数据可以包括患者(例如,婴儿、学步儿童或儿童)在不同水平的社交、认知或发育功能中凝视位置显著差异的大量实例的数据。患者的对应模型数据可包括与类似年龄、类似背景和/或类似状况的患者相关的数据,其可与患者的经处理的会话数据一起使用以产生患者的诊断结果。可以例如基于患者的年龄、患者的背景和/或患者的状况从数据库中识别和检索患者的对应模型数据。处理600的步骤608(在该步骤经处理的数据被准备用于分析)可以包括在多个会话容器中获得经处理的数据并且在多个会话容器中预加载对应模型数据。
[0210] 在步骤610,分析经处理的数据以生成分析结果。在一些实施例中,对于会话,将经处理的数据与对应会话容器中的对应模型数据进行比较以获得比较结果。在一些实施例中,数据分析模块使用经处理的数据和对应模型数据,例如使用经由统计模型、算法、人工智能(AI)模型(例如机器学习或人工神经网络模型)的比较或推断来产生结果。在一些实施例中,如图7B的步骤718所示,在多个会话容器中,使用总数量的处理单元(例如,N+M个核)来并行地分析经处理的会话数据和预加载的模型数据。
[0211] 在一些实施例中,将经处理的会话数据与对应数据模型进行比较以确定发育、认知、社交或精神状况的水平。然后将所产生的分数与预定的截止值或其他值进行比较,以确定患者的ASD的诊断以及状况的严重程度。在某些其他实施例中,在预定时间段内(例如,在跨越几个月的多个疗程内)分析患者的凝视点数据(例如,视觉注视数据)以识别视觉注视的下降、增加或其他显著变化(例如,最初对应于典型发育儿童的凝视点数据改变为对应于表现ASD的儿童的凝视点数据的更不稳定的凝视点数据,或响应于靶向治疗变得更类似于典型发育儿童的凝视点数据)。
[0212] 在步骤720(对应于步骤612),计算结果的概要。如上所述,分析的结果可用于确定至少一个指数的分数,所述指数例如社交残疾指数、语言能力指数、非语言能力指数、社交适应指数和/或社会交往指数。基于评分与至少一个预定截止值的比较,可以计算患者的ASD诊断以及状况的严重程度。例如,如图8A所示,基于所分析的结果和/或任何其他合适的信息(例如,来自对患者的其他相关分析),在‑50(社交残疾)至50(社交能力)的范围内示出6.12的社交残疾指数评分,并且指示不涉及社交残疾;在0至100的范围内显示了85.89的语言能力指数评分,并且指示高于平均语言能力;在0至100的范围内显示了85.89的非语言能力指数评分,并表明高于平均非语言能力。此外,还可以基于所分析的数据来计算非ASD的诊断。
[0213] 在一些实施例中,结果的概要包括覆盖在来自社会相关时刻的电影胶片上的个人的眼睛跟踪数据(例如,凝视点数据)的可视化,允许临床医生和父母更好地理解患者如何视觉地关注社会信息。例如,在步骤610,可以将患者具有可用数据的电影胶片与已经预先确定的电影胶片列表进行交叉参考,以利用关于诊断状态(包括症状严重性)的信息来引出眼睛凝视行为。可视化还可以包括来自典型发育儿童的聚集的参考数据的可视化,例如,在诸如年龄、性别等的患者属性上匹配。这些可视化可以是并排的,使得临床医生和/或父母可以将个体患者数据与参考数据进行比较,查看凝视模式如何对准或发散。这些可视化可包括解释电影内容、眼睛凝视图案等的注释。
[0214] 在一些实施例中,结果的概要包括将覆盖在来自社会相关时刻的电影胶片上的患者眼睛跟踪数据可视化的动画。例如,网络门户可以包含仪表板,该仪表板允许临床医生观看显示在患者身上的刺激电影,其眼睛凝视数据重叠。仪表板可以是可配置的,以允许用户选择显现哪些电影,以及是否显现获得关于社交残疾指数、语言能力指数、非语言指数或在报告中计算的任何其他指数的信息的帧。
[0215] 继续参考图7B,在步骤722,数据管道子系统将结果输出返回到网络门户,例如,如图2B所示。在一些实施例中,所述结果输出包括三个文件:一个包含经处理的眼睛跟踪数据,一个包含眼睛跟踪统计的概要,并且一个包含诊断信息(例如,结果的概要)。然后可以将这三个文件上载到数据库(例如,图2A‑2G的226)用于存储。在一些情况下,将经处理的眼睛跟踪数据制表到会话表中。可以从经处理的概要文件中读取眼睛跟踪信息的概要(例如,注视样本/电影等),并将其制表在数据库中以供后续查询。然后可以在数据库内计算概要值(例如,注视/电影百分比等)。
[0216] 在步骤724,将结果输出与患者信息重新连接以生成患者的诊断报告或结果。例如,可以将包含诊断信息的文件上载到应用数据数据库(例如,图2A‑2G的224),以在应用数据中与患者相关联,例如,如图2D所示。诊断报告或结果可以以任何合适的方式呈现给与应用数据数据库中的患者相关联的用户(操作者或医学专业人员,诸如医师)或与患者相关联的护理者。
[0217] 在一些实施例中,一旦生成了患者的诊断报告或结果,就可以通知用户(例如,通过电子邮件或消息)登录以通过网络门户查看诊断报告或结果。诊断报告或结果可以呈现在用户界面上,例如,如图8A或图8B‑8C所示。在一些实施例中,一旦生成了针对患者的诊断报告或结果,就可以将诊断报告或结果发送到操作者侧计算装置以呈现给用户。诊断报告或结果也可以在安全电子邮件或消息中发送给操作者。诊断报告或结果可以存储在应用数据数据库(例如,图2A‑2G的224)和/或数据库(例如,图2A‑2G的226)中。
[0218] 图8A示出了根据本公开的一个或多个实施例的显示包括基于眼睛跟踪数据的至少一个指数值的诊断报告或结果的示例性结果界面800。结果界面800示出了患者信息802、请求医师/机构信息804、患者侧计算装置806的装置ID、处理日期807(指示获得用于经处理的会话数据的时间)、报告发布日期808。
[0219] 结果界面800还示出了包括校准精度812、眼球运动函数814和数据收集概要816的收集信息810。校准精度812和眼球运动函数814可以用图形表示。数据收集概要816可以包括观看的视频数、排除的视频数、数据收集的持续时间、观看视频花费的时间、不观看花费的时间、校准精度、眼球运动测量或质量控制测量中的至少一个。
[0220] 结果界面800还示出了神经发育测试结果820,其可以包括诊断结果822(例如,ASD或非ASD)、社交残疾指数信息824、语言能力指数信息826和非语言能力指数信息828。结果界面800可以用对应描述图形地显示这些指数信息824、826、828。
[0221] 图8B‑8C示出了显示关于以下情况的开发评估的基于性能的测量的另一示例结果界面850:根据本公开的一个或多个实施例,图8B中的非言语交际和手势(Nonverbal Communication and Gestures)(A)以及联合注意和相互凝视(Joint Attention&Mutual Gaze)(B),图8C中的面部影响(Facial Affect)(C)以及指向和社交监视(Pointing and Social Monitoring)(D)。
[0222] 结果界面850示出了儿童个人弱点和技能发育机会的基于性能的措施。经由眼睛跟踪的神经发育评估测量儿童如何与在自然环境背景(左栏852,展示为来自测试视频的静止帧)内连续出现的社会和非社会线索交往。关于这些上下文,标准参考测量提供了非ASD的、预期年龄的视觉参与的客观量化(中间列854示出为伪彩色格式的密度分布,中间列856示出为覆盖在对应静止帧上的色阶褪色)。预期年龄的参考测量可用于测量和可视化患者比较,揭示个体强度、弱点和技能构建的机会(右栏858,显示为覆盖圆形孔径的示例患者数据,其包含由每个患者观察的视频部分,例如,每个孔径跨越患者视场的中心~5.2度)。患有ASD的个体患者表现为不注视(A)言语和非言语交互和手势(860);(B)联合注意和相互凝视暗示(870);(C)动态面部效果(880);以及(D)联合注意和社交监控(890)的实例。如图8B‑8C所示,具有ASD的儿童表现为与感兴趣的玩具(1、3、5、7)接触;颜色和对比度线索(2、6、
8);对象(10、11、12);与社会背景不直接相关的背景元素(4、9、13);以及反复出现的视觉特征(14、15、16、17、18)。静止帧右下角的经过时间突出了社交互动的快速变化的性质:在大约12分钟的观看时间内,呈现了数百种语言和非语言交际线索,每种线索引起预期年龄的参与模式,并为患者行为的客观、定量比较提供对应机会。
[0223] 示例过程
[0224] 图9是根据本公开的一个或多个实施例的用于会话数据获取的示例性过程900的流程图。过程900可以由系统执行,例如图1的计算系统120或图2A‑2G的数据获取子系统210。过程900可以类似于图3的过程300,并且可以参考图4A到4J来描述。
[0225] 该系统包括操作者侧计算装置(例如,图1的140)和与相关联的眼睛跟踪装置(例如,图1的134)集成的一个或多个患者侧计算装置(例如,图1的130)。操作者侧计算装置或患者侧计算装置中的至少一个可以是便携式装置。操作者侧计算装置和一个或多个患者侧计算装置中的每一个可以经由网络(例如,图1的网络102)与基于网络的服务器或云服务器(例如,图1的云服务器110或图2A‑2G中描述的云服务器)通信。该系统可以与治疗提供者相关联,例如向患者提供发育障碍评估和/或治疗服务。云服务器可以与服务提供商相关联,用于向治疗提供商提供服务,例如数据处理、分析和诊断结果。过程900可以包括多个步骤,其中一些步骤是由操作者侧计算装置执行的,其中一些步骤是由患者侧计算装置和/或眼睛跟踪装置执行的,并且其中一些步骤是由操作者侧计算装置和患者侧计算装置的组合来执行的。
[0226] 在步骤902,通过建立与操作者侧计算装置和患者侧计算装置的通信来启动患者的会话。在一些实施例中,建立通信包括在操作者侧计算装置和患者侧计算装置之间建立无线连接,例如图1的无线连接131。
[0227] 在一些实施例中,在操作者侧计算装置和患者侧计算装置之间建立无线连接包括:由操作者侧计算装置访问网络连接服务器处的网络门户(例如,图2A‑2G的222),并且响应于在网络门户中接收到对患者侧计算装置的选择,将操作者侧计算装置无线连接到患者侧计算装置。
[0228] 在一些实施例中,在操作者侧计算装置和患者侧计算装置之间建立无线连接包括,例如,如图4B所示,由患者侧计算装置在患者侧计算装置的屏幕上显示连接信息,并且响应于由操作者侧计算装置接收到连接信息的输入,在操作者侧计算装置和患者侧计算装置之间建立无线连接。
[0229] 在一些实施例中,过程900还包括:在建立通信之后,在患者侧计算装置的屏幕上向患者显示视觉脱敏信息,例如,如图4C所示。眼睛跟踪装置可以被配置为在显示视觉脱敏信息时不收集患者的眼睛跟踪数据。
[0230] 在一些实施例中,过程900还包括:在显示视觉脱敏信息的同时,由操作者侧计算装置访问网络连接服务器处的网络门户以建立用于患者的会话,例如,如图4D和4E所示。在一些情况下,建立会话包括在患者列表中选择患者或在网络连接服务器上为患者创建简档中的一个。
[0231] 在一些实施例中,过程900还包括:确定眼睛跟踪装置与患者的至少一只眼睛之间的相对位置,并且在操作者侧计算装置的用户界面上显示调整眼睛跟踪装置的位置或患者的位置的指令,例如,如图4F所示。在一些情况下,过程900还包括:响应于确定患者的至少一只眼睛的相对位置在眼睛跟踪装置的检测区域中的预定位置,确定患者与眼睛跟踪装置对准。
[0232] 在步骤904,通过在患者侧计算装置的屏幕上向患者显示一个或多个校准目标,相对于眼睛跟踪装置校准患者,例如,如图4G所示。一个或多个校准目标中的每一个可以顺序地呈现在患者侧计算装置的屏幕的对应预定位置处,同时使用眼睛跟踪装置获得患者的眼睛跟踪校准数据。过程900可以包括:针对所述一个或多个校准目标中的每一个,处理所获得的所述患者的眼睛跟踪校准数据,以确定针对所述校准目标的所述患者的对应视觉注视的位置;将患者的对应视觉注视的位置与呈现校准目标的对应预定位置进行比较;以及基于所述比较的结果确定所述校准目标是否相对于所述眼睛跟踪装置被校准。
[0233] 在一些实施例中,相对于所述眼睛跟踪装置校准所述患者还包括:响应于确定所述患者的对应视觉注视的位置与所述对应预定位置之间的偏差小于或等于预定阈值,确定所述校准目标被校准并且显示下一个校准目标,或响应于确定所述偏差大于所述预定阈值,确定所述校准目标未能被校准,重新显示所述校准目标以用于校准。
[0234] 在一些实施例中,过程900还包括:在相对于所述眼睛跟踪装置校准所述患者之后,利用一个或多个新的校准目标来验证校准。类似于步骤904中描述的校准,验证校准包括:在所述患者侧计算装置的屏幕的对应预定位置处顺序地呈现所述一个或多个新的校准目标中的每一个,同时使用所述眼睛跟踪装置获得所述患者的眼睛跟踪校准数据;以及处理所获得的患者的眼睛跟踪校准数据以确定针对所述一个或多个新的校准目标中的每一个的患者的对应视觉注视的位置。
[0235] 在一些实施例中,例如,如图4H所示,验证校准包括:在所述操作者侧计算装置的用户界面上同时呈现在一个或多个对应预定位置处的所述一个或多个新的校准目标以及在所确定的一个或多个位置处的所述患者的一个或多个对应视觉注视的表示;以及响应于接收到验证所述校准的结果的指示,确定所述校准已验证,或响应于接收到所述校准结果无效的指示,开始相对于所述所述眼睛跟踪装置重新校准所述患者。
[0236] 在一些实施例中,验证校准包括:基于所述患者的对应视觉注视的位置和对应预定位置确定各自通过校准的新的校准目标的数量;以及如果所述数量或相关百分比大于或等于预定阈值,则确定所述校准是已验证,或如果所述数量或相关百分比小于预定阈值,则确定校准无效并开始相对于眼睛跟踪装置重新校准患者。
[0237] 在步骤906,在确定校准已验证之后,在患者侧计算装置的屏幕上向患者顺序地呈现预定视觉刺激列表,同时使用眼睛跟踪装置收集患者的眼睛跟踪数据。
[0238] 在一些实施例中,例如,如图4I、4J或5所示,在呈现预定视觉刺激列表中的每一个之前,可以在患者侧计算装置的屏幕上向患者呈现对中目标,用于对中患者的凝视。
[0239] 在一些实施例中,例如,如图5所示,在呈现预定视觉刺激的播放列表中的两个相邻视觉刺激之间执行患者对眼睛跟踪装置的校准。在执行校准时收集的眼睛跟踪数据可以用于校准患者的眼睛跟踪数据或用于由网络连接服务器确定校准精度中的至少一个。
[0240] 在一些实施例中,例如,如图4J所示,过程900还包括:在该操作者侧计算装置的用户界面上呈现以下各项中的至少一项:进度指示符,其在呈现所述预定视觉刺激播放列表期间保持更新;已经呈现或正在呈现的视觉刺激的信息;要呈现的视觉刺激的信息;用户界面元素,其用于跳过预定视觉刺激播放列表中的视觉刺激。
[0241] 在步骤908,患者侧计算装置将会话的会话数据发送到网络连接服务器,会话数据包括在会话中收集的患者的眼睛跟踪数据。该患者侧计算装置可以响应于以下各项中的一项自动地将该会话的会话数据发送到该网络连接服务器:确定在屏幕上呈现预定视觉刺激的播放列表的完成,或例如通过网络连接服务器上的网络门户从操作者侧计算装置接收会话的完成指示。
[0242] 在一些实施例中,会话数据包括与所呈现的预定视觉刺激的播放列表相关的信息,该信息可以包括所呈现的预定视觉刺激的名称以及呈现预定视觉刺激时的相关时间戳,例如,如图5的图(a)所示。会话数据如图5的图(b)所示,当生成或收集眼睛跟踪数据时,会话数据可以包括眼睛跟踪数据和相关时间戳。在一些实施例中,发送会话数据包括发送存储患者的眼睛跟踪数据的第一文件和存储与所呈现的预定视觉刺激列表相关的信息的第二文件。
[0243] 图10是根据本公开的一个或多个实施例的用于数据处理和分析的示例性过程1000的流程图。过程1000可以由可以是云环境中的云服务器的网络连接服务器来执行,例如图1的云服务器110或图2A‑2G中描述的云服务器。例如,网络服务器可以包括平台,例如图1的112或图2A‑2G的220,以及数据管道系统,例如图1的114或图2A‑2G的230。该平台可以包括网络门户(例如,图2A‑2G的222)、应用数据数据库(例如,图2A‑2G的224)和数据库(例如,图2A‑2G的226)。数据管道系统可以包括一个或多个数据处理模块(例如,图2A‑2G的
232)和一个或多个数据分析模块(例如,图2A‑2G的234)。过程1000可以类似于图6的过程
600或图7A‑7B的过程700。
[0244] 在步骤1002,接收多个会话的会话数据,例如,如图2B所示,并且每个会话的会话数据包括会话中对应患者的眼睛跟踪数据。在步骤1004,多个会话的会话数据被并行处理以生成多个会话的经处理的会话数据。在步骤1006,对于多个会话中的每个会话,基于对应参考数据来分析会话的经处理的会话数据,以生成会话中的对应患者的评估结果。
[0245] 在一些实施例中,方法1000还包括:与处理所述多个会话的会话数据并行地加载用于所述多个会话的对应参考数据。
[0246] 在一些实施例中,网络连接服务器包括多个处理核。并行地处理多个会话的会话数据可以包括,例如,如图7B的步骤716所示,使用第一多个处理核来并行地处理多个会话的会话数据,并且使用不同的第二多个处理核来加载多个会话的对应参考数据。第一多个处理核的数量可以大于第二多个处理核的数量。在一些实施例中,基于所加载的多个会话的对应参考数据来分析多个会话的经处理的会话数据可以包括,例如,如图7B的步骤718所示,使用包括第一多个处理核和第二多个处理核的多个处理核。
[0247] 在一些实施例中,基于所加载的所述多个会话的对应参考数据来分析所述多个会话的经处理的会话数据包括以下中的至少一个:将所述会话的经处理的会话数据与对应参考数据进行比较,使用所述对应参考数据从所述经处理的会话数据推断对应患者的评估结果,或使用统计模型、机器学习模型或人工智能(AI)模型中的至少一个。
[0248] 在一些实施例中,对应参考数据包括具有与所述对应患者基本相同的年龄或状况的患者的历史眼睛跟踪数据或结果。在一些实施例中,方法1000包括:基于所述对应患者的先前会话数据来生成所述评估结果。
[0249] 在一些实施例中,对于多个会话中的每个会话,为该会话分配相应容器,例如,如图2C或7A所示。过程1000可包括:在相应容器中,处理会话的会话数据并基于对应模型数据来分析会话的经处理的会话数据,以生成会话中的对应患者的评估结果。
[0250] 在一些实施例中,当在所述会话中收集所述眼睛跟踪数据时,所述眼睛跟踪数据与呈现给所述患者的预定视觉刺激列表相关联,并且所述会话数据包括与所述会话中的所述预定视觉刺激列表相关联的信息。
[0251] 在一些实施例中,过程1000还包括,例如,如图7A所示,在相应容器中,基于与预定视觉刺激列表相关联的信息将眼睛跟踪数据分解成多个部分,眼睛跟踪数据的每个部分与相应预定视觉刺激或对应校准中的一个相关联。
[0252] 在一些实施例中,处理所述会话的会话数据包括基于相应预定视觉刺激的信息来处理与所述相应预定视觉刺激相关联的所述眼睛跟踪数据的部分。在一些实施例中,方法1000还包括:在相应容器中,基于与对应校准相关联的眼睛跟踪数据的至少一部分,重新校准与相应预定视觉刺激相关联的眼睛跟踪数据的部分。
[0253] 在一些实施例中,方法1000还包括:在相应容器中,使用与对应校准相关联的眼睛跟踪数据的至少一部分和在对应校准中呈现多个校准目标的多个预定位置来确定校准精度。
[0254] 在一些实施例中,接收所述多个会话的会话数据包括:例如,如图2C所示,通过网络门户从与对应实体相关联的多个计算装置接收多个会话的会话数据。
[0255] 在一些实施例中,过程1000还包括,例如,如图7A所示,响应于接收到会话的会话数据,将用于会话的会话数据的文件指针添加到要处理的处理队列中。过程100还可以包括:使用用于所述会话的文件指针将所述会话的会话数据存储在数据库中;以及使用所述会话的所述文件指针从所述数据库检索所述会话的所述会话数据。
[0256] 在一些实施例中,方法1000还包括:对于每个实体,将来自与该实体相关联的一个或多个计算装置的会话数据存储在应用数据数据库中的相应储存库中,例如,如图2E所示。相应储存库可以与一个或多个其他储存库隔离,并且不可由一个或多个其他实体访问。应用数据数据库可以是NoSQL数据库。
[0257] 在一些实施例中,用于实体的相应储存库包括例如如图2D所示的以下各项中的至少一项:该实体的信息,与该实体相关联的一个或多个操作者或操作者侧计算装置的信息,与该实体相关联的一个或多个患者侧计算装置的信息,在该实体中进行的一个或多个会话的信息,与该实体相关联的一个或多个患者的信息,或相应储存库的历史信息。
[0258] 在一些实施例中,方法1000还包括:例如,如图2F所示,基于访问网络连接服务器的计算装置的数量来动态地调整网络连接服务器的资源。过程1000还可以包括:将第一数据中心的数据复制到第二数据中心;以及响应于确定第一数据中心不可访问,自动地将流量引导到第二数据中心。
[0259] 在一些实施例中,第一数据中心和第二数据中心中的每一个包括操作者侧计算装置可访问的网络门户,操作者应用或用于数据处理和数据分析的应用层的至少一个实例,例如,如图2G所示。所述过程可还包括:在多个数据中心中存储相同数据。所述数据可以包括:实体的应用数据和与眼睛跟踪数据相关联的信息。
[0260] 在一些实施例中,方法1000还包括:将所生成的评估结果与该会话中的对应患者相关联,并且生成对应患者的评估报告,例如,如图7B的步骤724所示。
[0261] 在一些实施例中,方法1000还包括:输出评估结果或评估报告以呈现在操作者侧计算装置的用户界面,例如通过网络门户。
[0262] 在一些实施例中,例如,如图8A所示。所述评估报告包括以下中的至少一个:对应患者的信息,执行对应患者的会话的实体的信息,会话中校准精度的信息,会话数据收集的信息,或对应患者的评估结果。在一些实施例中,评估结果指示所述对应患者具有发育、认知、社交或智力残疾或能力的可能性。例如,评估结果表明对应患者具有奥斯汀谱障碍(ASD)或非ASD的可能性。在一些实施例中,评估结果包括社交残疾指数、语言能力指数和非语言能力中的一个或多个中的每一个的相应分数,例如,如图8A所示。
[0263] 在一些实施例中,对应患者具有在5个月至7岁的范围内的年龄,包括在5个月至43个月或48个月的范围内的年龄,在16个月至30个月的范围内的年龄,在18个月至36个月的范围内的年龄,在16个月至48个月的范围内的年龄,或在16个月至7岁的范围内的年龄。
[0264] 示例云计算系统架构
[0265] 图11是根据本公开的一个或多个实施例的云计算系统(例如,参考图1描述的云服务器110或参考图2A‑2G描述的云服务器)的示例性架构1100。其他架构也是可能的,包括具有更多或更少组件的架构。在一些实现方式中,架构1100包括一个或多个处理器1102(例如,双核 处理器)、一个或多个网络界面1106、一个或多个存储装置1104(例如,硬盘、光盘、闪存)以及一个或多个计算机可读介质1108(例如,硬盘、光盘、闪存等)。这些组件可在一个或多个通信信道1110(例如,总线)上交换通信和数据,所述通信信道1110可利用各种硬件和软件来促进组件之间的数据和控制信号的传送。
[0266] 术语“计算机可读介质”是指参与向处理器1102提供指令以供执行的任何介质,包括但不限于非易失性介质(例如光盘或磁盘)、易失性介质(例如存储器)和发送介质。发送介质包括但不限于同轴电缆、铜线和光纤。
[0267] 计算机可读介质1108可以进一步包括用于操作系统(例如,Mac 服务器、NT服务器、Linux服务器)的指令1112、用于网络通信模块的指令1114、数据处理指令1116,以及界面指令1118。
[0268] 操作系统可以是多用户、多处理、多任务、多线程、实时等。操作系统执行基本任务,包括但不限于:识别来自装置1102、1104、1106和1108的输入并向其提供输出;跟踪和管理计算机可读介质1108(例如,存储器或存储装置)上的文件和目录;控制外围装置;以及管理一个或多个通信信道1110上的流量。网络通信模块包括用于建立和维护网络连接(例如,TM用于实现诸如TCP/IP、HTTP等通信协议的软件)以及用于使用例如Apache Kafka 来创建分布式流平台的各种组件。数据处理指令1116包括用于实现服务器端操作的服务器端或后端软件,如参考图1所述。界面指令1118包括用于实现向用户侧计算装置和服务侧计算装置发送数据和从用户侧计算装置和服务侧计算装置接收数据的网络服务器和/或门户的软件。
[0269] 架构1100可以由云计算系统来实现,并且可以被包括在任何计算机装置中,包括本地或分布式网络中的一个或多个服务器计算机,每个服务器计算机具有一个或多个处理核。架构1100可以在并行处理或对等基础设施中或在具有一个或多个处理器的单个装置上实现。软件可以包括多个软件组件或可以是单个代码主体。
[0270] 示例计算装置
[0271] 图12示出了根据本公开的一个或多个实施例的计算装置的架构。现在参考图12,示出了装置1200的示意图。装置1200包括处理器1204、存储器1206、存储组件1208、输入界面1210、输出界面1212、通信接口1214和总线1202。在一些实施例中,装置1200对应于图1的患者侧计算装置130或操作者侧计算装置140中的至少一个。
[0272] 总线1202包括允许装置1200的组件之间通信的组件。在一些实施例中,处理器1204以硬件、软件或硬件和软件的组合来实现。在一些实例中,处理器1204包括处理器(例如,中央处理单元(CPU)、图形处理单元(GPU)、加速处理单元(APU)和/或类似物)、麦克风、数字信号处理器(DSP)和/或可经编程以执行至少一个功能的任何处理组件(例如,现场可编程门阵列(FPGA)、专用集成电路(ASIC)和/或类似物)。存储器1206包括随机存取存储器(RAM)、只读存储器(ROM)和/或存储供处理器1204使用的数据和/或指令的另一类型的动态和/或静态存储装置(例如,闪存、磁存储器、光存储器等)。
[0273] 存储组件1208存储与装置1200的操作和使用相关的数据和/或软件。在一些示例中,存储组件1208包括硬盘(例如,磁盘、光盘、磁光盘、固态盘等)、压缩盘(CD)、数字多功能盘(DVD)、软盘、盒式磁带、磁带、CD‑ROM、RAM、PROM、EPROM、FLASH‑EPROM、NV‑RAM和/或其他类型的计算机可读介质,以及对应驱动器。
[0274] 输入界面1210包括允许装置1200例如经由用户输入来接收信息的组件(例如,触摸屏显示器、键盘、小键盘、鼠标、按钮、开关、麦克风、相机等)。附加地或替代地,在一些实施例中,输入界面1210包括感测信息的传感器(例如,全球定位系统(GPS)接收器、加速度计、陀螺仪、致动器等)。输出界面1212包括提供来自装置1200的输出信息的组件(例如,显示器、扬声器、一个或多个发光二极管(LED)等)。
[0275] 在一些实施例中,通信接口1214包括允许装置1200经由有线连接、无线连接或有线和无线连接的组合与其他装置通信的类似收发机的组件(例如,收发机、单独的接收机和发射机等)。在一些示例中,通信接口1214允许装置1200从另一装置接收信息和/或向另一装置提供信息。在一些示例中,通信接口1214包括以太网接口、光接口、同轴接口、红外接口、射频(RF)接口、通用串行总线(USB)接口、 接口、蜂窝网络接口等。
[0276] 在一些实施例中,装置1200执行本文描述的一个或多个过程。装置1200基于处理器1204执行由计算机可读介质(诸如存储器1206和/或存储组件1208)存储的软件指令来执行这些过程。计算机可读介质(例如,非暂时性计算机可读介质)在本文中被定义为非暂时性存储器装置。非暂时性存储装置包括位于单个物理存储装置内的存储空间或分布在多个物理存储装置上的存储空间。
[0277] 在一些实施例中,软件指令经由通信接口1214从另一计算机可读介质或从另一装置读入存储器1206和/或存储组件1208。当被执行时,存储在存储器1206和/或存储组件1208中的软件指令使处理器1204执行这里描述的一个或多个过程。另外地或可选地,使用硬连线电路来代替软件指令或与软件指令组合,以执行本文所述的一个或多个过程。因此,这里描述的实施例不限于硬件电路和软件的任何特定组合,除非另有明确说明。
[0278] 存储器1206和/或存储组件1208包括数据存储器或至少一个数据结构(例如,数据库等)。装置1200能够从存储器1206或存储组件1208中的数据存储装置或至少一个数据结构接收信息、将信息存储在其中、向其传送信息,或搜索存储在其中的信息。在一些示例中,信息包括网络数据、输入数据、输出数据或其任何组合。
[0279] 在一些实施例中,装置1200被配置为执行存储在存储器1206和/或另一装置(例如,与装置1200相同或相似的另一装置)的存储器中的软件指令。如这里所使用的,术语“模块”指的是存储在存储器1206中和/或另一装置的存储器中的至少一条指令,当由处理器1204和/或由另一装置(例如,与装置1200相同或类似的另一装置)的处理器执行时,使得装置1200(例如,装置1200的至少一个组件)执行这里描述的一个或多个过程。在一些实施例中,模块以软件、固件、硬件等实现。
[0280] 图12所示的组件的数量和布置是作为示例提供的。在一些实施例中,装置1200可以包括附加组件、更少的组件、不同的组件,或与图12所示的组件不同地布置的组件。附加地或替换地,装置1200的一组组件(例如,一个或多个组件)可以执行被描述为由装置1200的另一组件或另一组组件执行的一个或多个功能。
[0281] 所公开的和其他示例可以被实现为一个或多个计算机程序产品,例如,在计算机可读介质上编码的计算机程序指令的一个或多个模块,用于由数据处理装置执行或控制数据处理设备的操作。计算机可读介质可以是机器可读存储装置、机器可读存储基板、存储装置或它们中的一个或多个的组合。术语“数据处理设备”包括用于处理数据的所有设备、装置和机器,例如包括可编程处理器、计算机或多个处理器或计算机。除了硬件之外,该设备还可以包括为所讨论的计算机程序创建执行环境的代码,例如,构成处理器固件、协议栈、数据库管理系统、操作系统或它们中的一个或多个的组合的代码。
[0282] 系统可以包括用于处理数据的所有设备、装置和机器,例如包括可编程处理器、计算机或多个处理器或计算机。除了硬件之外,系统还可以包括为所讨论的计算机程序创建执行环境的代码,例如,构成处理器固件、协议栈、数据库管理系统、操作系统或它们中的一个或多个的组合的代码。
[0283] 计算机程序(也称为程序、软件、软件应用、脚本或代码)可以以任何形式的编程语言来编写,包括编译或解释语言,并且其可以以任何形式来部署,包括作为独立程序或作为模块、组件、子例程或适用于计算环境中的其他单元。计算机程序不必对应于文件系统中的文件。程序可以存储在保存其他程序或数据的文件的一部分中(例如,存储在标记语言文档中的一个或多个脚本),存储在专用于所讨论的程序的单个文件中,或存储在多个协同文件中(例如,存储一个或多个模块、子程序或代码部分的文件)。可以部署计算机程序以在位于一个站点或分布在多个站点并通过通信网络互连的一个计算机或多个计算机上执行。
[0284] 本文中描述的过程和逻辑流程可以由执行一个或多个计算机程序以执行本文中描述的功能的一个或多个可编程处理器来执行。处理和逻辑流程也可以由专用逻辑电路执行,并且设备也可以实现为专用逻辑电路,例如FPGA(现场可编程门阵列)或ASIC(专用集成电路)。
[0285] 例如,适于执行计算机程序的处理器包括通用和专用微处理器,以及任何类型的数字计算机的任何一个或多个处理器。通常,处理器将从只读存储器或随机存取存储器或两者接收指令和数据。计算机的基本元素可以包括用于执行指令的处理器和用于存储指令和数据的一个或多个存储器装置。通常,计算机还可以包括用于存储数据的一个或多个大容量存储装置,例如磁盘、磁光盘或光盘,或者可操作地耦合到用于存储数据的一个或多个大容量存储装置,以从用于存储数据的一个或多个大容量存储装置接收数据或向用于存储数据的一个或多个大容量存储装置传送数据或两者。然而,计算机不必具有这样的装置。适合于存储计算机程序指令和数据的计算机可读介质可以包括所有形式的非易失性存储器、介质和存储装置,包括例如半导体存储器装置,例如EPROM、EEPROM和闪存装置;磁盘。处理器和存储器可由专用逻辑电路补充或并入专用逻辑电路中。
[0286] 虽然本文可能描述了许多细节,但这些细节不应被解释为对所要求保护的发明的范围或可能要求保护的范围的限制,而是作为对特定实施例的特定特征的描述。本文中在单独实施例的上下文中描述的某些特征也可以在单个实施例中组合实现。相反,在单个实施例的上下文中描述的各种特征也可以在多个实施例中单独地或以任何合适的子组合来实现。此外,尽管特征可以被描述为以某些组合起作用并且甚至初始地如此要求保护,但是在一些情况下,来自要求保护的组合的一个或多个特征可以从该组合中去除,并且要求保护的组合可以涉及子组合或子组合的变化。类似地,虽然以特定次序在附图中描绘操作,但不应将其理解为需要以所示特定次序或以连续次序执行此类操作,或执行所有所说明的操作以实现所需结果。
[0287] 前述内容仅说明本公开的原理,且所述系统、装置及方法可由所述实施例以外的实施例实践,所述实施例是出于说明而非限制的目的而呈现。尽管这里的实施例和特征被具体地描述用于收集和分析患者的眼跟踪数据以评估、筛选、监测或诊断自闭症谱系障碍(ASD),但是应当理解,该系统、装置和方法也可以应用于其他发育、认知、社交或智力能力或残疾,以及其他病症,包括但不限于语言障碍、智力残疾、存在或不存在已知遗传障碍的发育残疾,以及注意力缺陷多动障碍(ADHD)、注意力缺陷障碍(ADD)、创伤后应激障碍(PTSD)、头部创伤、震荡、运动损伤和痴呆。应当理解,如果这些数据没有指示障碍的测量,则可以提供规范发育的典型程度的测量,提供典型发育的可变性的指示。此外,本文概述的所有组件和其他特征可以以任何合适的方式彼此组合,并且可以适用于和应用于医学诊断之外的系统。例如,本公开的交互式视觉刺激用作治疗工具。此外,所收集的数据可以产生患者优先关注的某些类型的视觉刺激的测量。这种偏好的测量在医学诊断和治疗领域中具有应用和不具有应用,包括例如广告或其中与视觉刺激偏好相关的数据是感兴趣的其他行业。
[0288] 已经描述了许多实现方式。然而,应了解,可在不脱离本文所描述的技术和装置的精神和范围的情况下做出各种修改。例如,上面讨论的相位扰动或变化方法可以在衍射结构中实现,以去除干扰图案中的高频伪像或中频伪像。在每个实现方式中示出的特征可以独立使用或彼此组合使用。附加特征和变化也可以包括在实现方式中。因此,其他实现方式在以下权利要求的范围内。