(
映维网Nweon
2024年09月04日
)当前的AR/VR头显依然存在各种问题,长时间使用可能会导致眼睛疲劳,干燥或发红。
针对这个问题,
索尼
在一篇专利申请中提出了一种“眼睛疲劳检测器模块”,并在用户使用头显期间监视用户的眼疲劳指标。然后,可以根据相关指标来执行各种操作,例如调整游戏内容的渲染属性以减少用户的眼睛疲劳。
索尼指出,对于内容的不同渲染属性,每个用户可以有不同的容忍度或敏感度级别。所以,眼疲劳指标属于用户特定,并可根据每个用户对内容的不同渲染属性的容忍度/灵敏度级别进行识别。另外,游戏内容的渲染属性的调整量取决于用户的容忍度或敏感度水平。
在一个实施例中,调整量可能进一步由用户的视觉特征驱动。调整后的内容显示为包括具有减少用户眼睛疲劳的渲染属性的内容。
图1示出了一个简化框图,其中可穿戴设备可以在用户使用头显时监视和捕获用户的眼疲劳指标。眼疲劳指标用于定义眼疲劳和用户所经历的眼疲劳水平。根据用户的眼睛疲劳程度,系统可以调整内容的特性渲染属性。
然后使用计算的眼疲劳度量来识别与眼疲劳和眼疲劳水平相对应的动作,并将动作转发给游戏应用。动作由游戏解释,以识别与用户所经历的眼睛疲劳和眼睛疲劳水平相对应的特定渲染属性。
作为对接收动作的响应,游戏应用可以通过执行特定调整操作。调整后的内容转发到头显以呈现给用户。其中,调整后的内容有助于减少用户的眼睛疲劳。
各传感器采集的用于检测用户眼疲劳和眼疲劳水平的眼疲劳指标,直接转发至眼疲劳检测引擎进行进一步处理。
图2A示出,眼疲劳检测器引擎230通过在游戏的游戏逻辑300内嵌入眼疲劳检测器引擎230而在应用级定义。在替代实施例中,眼疲劳检测器是一个独立的软件程序或与其他软件程序一起包含的软件程序,并被配置为与游戏的游戏逻辑300交互。
如图所示,使用各种传感器和图像捕获设备,并通过捕获用户眼睛特征和其他面部特征的变化来收集与眼疲劳指标相关的数据。传感器捕获的数据大致可分为直接眼疲劳指标220和间接眼疲劳指标222。
在一个实施例中,直接眼疲劳指标220是由传感器观察和捕获的眼睛和面部特征,而间接眼疲劳指标222是从直接眼疲劳指标220推导出来。例如,直接眼疲劳指标220可以与眨眼模式、瞳孔大小、眼睛形状、眼睛位置、眼睛运动、运动方向等有关。间接眼疲劳指标222可由直接眼疲劳指标220计算得出,如斜视程度、眼干程度、发红系数等。
眼疲劳检测器使用从传感器和/或直接眼疲劳指标220收集的直接眼疲劳指标220和间接眼疲劳指标222来计算眼疲劳指标234。当用户与游戏内容的当前部分交互时,眼疲劳检测器可以使用眼疲劳人工智能模型来计算用户的眼疲劳度量234。
将计算的眼疲劳度量234转发给游戏逻辑300中可用的游戏动作设置逻辑236,以解释所述眼疲劳度量234,识别所述游戏内容的当前渲染部分的渲染属性,识别所述游戏内容的后续部分的渲染属性,识别所述后续部分中已知导致用户眼睛疲劳的渲染属性的特定属性,并执行包含在动作240中的命令,以调整游戏内容的后续部分的渲染属性的特定命令。
当从当前呈现部分识别的眼疲劳检测器高于预定义的水平并且因此需要在内容的后续部分中进行调整时,识别渲染属性的特定属性以进行调整。
图2B示出一种替代实施例,而与图2A所示的实施例之间的区别在于,图2B所示的眼疲劳检测器引擎230是计算机操作系统的一部分,而在图2A所示的实施例中,眼疲劳检测器引擎230是游戏逻辑300的一部分。
图3示出的实施例用于处理由各种传感器收集的眼疲劳指示器,并计算用用户的眼疲劳度量234的眼疲劳检测器引擎230的各种组件。
眼疲劳检测器引擎230包括多个组件。机器学习引擎用于构建和训练眼疲劳人工智能模型以计算眼疲劳度量234。然后,将眼疲劳度量234转发到动作设置逻辑,以确定要采取的适当动作240以调整内容。
在一个实施例中,当用户与内容交互时,激活设置在用户物理环境中的各种传感器和图像捕获设备,以捕获用户的直接眼疲劳指标220。直接眼疲劳指标220通过评估在用户与内容交互时眼睛图像中捕获的眼睛特征的变化来确定。
通过将用户与内容交互时捕获的图像中的眼睛特征与用于建立用户基线水平的图像进行比较来评估变化,其中用户的基线水平基于用户未佩戴头显且未与任何内容交互时捕获的用户眼睛特征和其他面部特征的图像。在备选实施例中,基线水平作为输入由用户提供或通过其他方式或从其他来源获得。
直接眼疲劳指标220用于推导间接眼疲劳指标222。传感器捕获的直接眼疲劳指示器220可以包括用户眼睛形状的变化。从用户眼睛形状的变化可以判断用户是眯着眼睛、闭着眼睛还是睁大眼睛。例如,用户眯着眼睛可能意味着内容显示得太亮,或者距离用户难以理解。传感器捕获的图像在头显或计算机进行处理,以确定直接和间接眼疲劳指标222。
通过眼疲劳特征解析引擎230a解析所述直接和间接眼疲劳指标222,以识别其中所包含的不同类型的眼疲劳指标,以及所述眼疲劳指标的细节(。使用眼疲劳特征分类器引擎230b对解析后的眼疲劳指标数据进行分类。将分类的眼疲劳数据作为输入转发到机器学习引擎231以进行进一步处理。
机器学习引擎231使用各种分类器引擎提供的输入并处理这入。例如,机器学习引擎231可以评估在每个眼睛特征中检测到的变化,并确定变化的程度和这种变化持续的时间程度。基于评估,机器学习引擎231可以确定特定眼睛特征的变化是否应该视为导致用户眼睛疲劳的潜在促成因素。
在一个实施例中,传感器捕获观察到的特征,如眼睛的形状、瞳孔的大小、眨眼频率、瞳孔的位置、眼睛的运动、运动速度、注视方向、发红因子等。机器学习引擎231评估随时间捕获的观察特征的图像,以检测各自观察到的特征变化,即眼睛疲劳指标。
基于评估,机器学习引擎231确定一个或多个眼疲劳指标是导致用户眼疲劳的潜在因素。例如,如果瞳孔的大小增加了至少预定义的量,并且这种增加持续了至少预定义的时间段,或者当用户与内容交互时,瞳孔大小随时间变化,瞳孔大小的增加可以是引起用户眼睛疲劳的潜在促成因素。
作为分析在用户与内容交互时在用户中观察到的眼睛特征的变化的一部分,机器学习引擎231可以对在用户中观察到的眼睛特征的变化执行进一步的验证。例如,机器学习引擎231可以使用其他用户提供的反应来确定在检测到的眼睛特征的变化是否在其他用户中检测到。
上述示例说明了单个眼睛疲劳指示器和某个渲染属性之间的简单关联。然而,可能有多个眼睛疲劳指示器会受到用于渲染游戏内容的一个或多个呈现属性的影响。
为了更好地了解每个渲染属性对眼疲劳指标的影响,机器学习引擎231构建并训练眼疲劳AI模型232。AI模型232是使用媒体内容的渲染属性以及各种传感器捕获的用户的眼睛和其他面部特征来构建和训练。
例如,使用媒体内容的属性和用户的可观察特征以及其他面部特征来定义标准矩阵。其中矩阵的每个元素由涉及一个或多个眼睛疲劳指示器的标准定义。
除了内容的可观察特征和属性外,每个标准同时可以定义为时间的函数,以便考虑交互时间对用户的可观察特征的影响。用于定义每个标准的时间因素不仅考虑了交互时间对用户可观察到的眼睛和面部特征的影响,而且考虑了特定渲染属性在部分内容中生效的时间。
机器学习引擎231使用权重分配引擎233为每个标准中包括的每个眼睛特征分配权重,其中分配的权重与在每个标准中包括的各自眼睛特征中观察到的变化对引起用户眼睛疲劳的影响程度相对应。
在一个实施例中,权重分配引擎为每个眼睛特征分配不同的权重。在其他实施例中,权重分配引擎为与相应的眼疲劳指示器相关联的用户两个或多个眼睛特征分配相同的权重。
随着越来越多捕获可观察特征的传感器数据收集,AI模型232可以得到改进以包含捕获的传感器数据。机器学习引擎231使用经过训练的AI模型232来识别与用户表示的特定眼睛特征集相对应的输出,以及用于为用户呈现内容的当前部分的渲染属性类型。
在标准中未包含呈现属性的情况下,机器学习引擎231分析从标准/标准中包含的眼睛特征识别的眼疲劳指标,并检查当前内容以确定用于呈现当前内容的相关呈现属性。从AI模型232识别的输出由机器学习引擎231转发到动作设置逻辑。
转发到动作设置逻辑的输出包括触发指示器设置的标准。动作240包括提供以特定方式调整内容的命令。指定的动作之一是暂停游戏,以便用户可以从内容中休息一下。
所以,机器学习引擎231通过监测眼睛特征的变化,并检查与用户眼睛特征的变化相对应的游戏内容情景中的变化来计算眼睛疲劳度量234。计算的眼疲劳度量234对于用户是特定的,因为计算考虑了用户的视觉特征和灵敏度。
在一个实施例中,向用户的头显提供内容的游戏可以是动作游戏,其中游戏的后续部分可以根据游戏的当前状态和用户在游戏的当前部分中提供的输入来动态确定。
在这种情况下,机器学习引擎231可以通过分析游戏状态和用户的输入,并通过查询游戏的游戏逻辑300,来预测游戏的后续部分。一旦确定,通过查询游戏的游戏逻辑300来检查预测将在游戏中出现的后续部分,以确定用于渲染后续部分的渲染属性。
对于后续部分中包含的游戏内容,机器学习引擎231预测用户在与后续部分交互期间可能显示的眼疲劳指标。机器学习引擎231为游戏内容的后续部分计算眼疲劳指标234,并使用计算的眼疲劳指标234来识别需要采取的适当动作240,以帮助用户在不经历眼疲劳和
晕动症
的情况下与游戏内容交互。
需要注意的是,眼疲劳指标可以随时间变化并且从一个用户到另一个用户不同。眼疲劳检测器引擎230通过校准可为每个用户识别的每个眼疲劳指示器的基线水平来计算每个用户的眼疲劳度量234。
图4A-4C说明了单个眼睛疲劳指示器随时间变化。图4A显示了通过追踪和评估用户在与游戏内容交互时瞳孔大小随时间的变化。
如图所示,随着时间的推移,用户的瞳孔大小可能没有太大变化。检查输入数据的各种特征和属性将表明,游戏内容的渲染属性并没有随着时间的推移而急剧变化。
图4B显示了另一个示例。如图所示,在用户与游戏内容的交互过程中,瞳孔大小在短时间内出现了明显的变化,。在检查游戏内容的呈现属性后,可以观察到瞳孔大小的短暂尖峰与游戏内容中发生的明亮闪光相关。
图4C显示了另一个示例,。如图所示,瞳孔的大小随着时间的推移而稳步增加。通过检查输入数据的各种特征和属性,可以看到瞳孔大小的稳定增长不是由于游戏内容的渲染属性的任何剧烈变化。经过进一步的研究,可以确定这种稳定的增长是由于用户与游戏内容互动的时间延长。在这个例子中,观察到使用者瞳孔大小的变化是瞳孔大小在一段时间内缓慢而稳定地增加。
图5A和5B说明了用户在与游戏的游戏内容交互时,眼疲劳指示器的变化。例如,图5A表示这样一种场景:在游戏玩法开始时,用户的眼睛并没有表现出太多的红色,但随着用户继续参与游戏玩法,红色因子会稳步增加。
当红色因子超过预定义的阈值水平时,将识别并触发动作240。
如图5B所示,在对用户眼睛的监控过程中,当检测到发红系数的增加达到或超过预定义阈值时,由眼疲劳检测器引擎230的动作设置逻辑识别动作240并将其传输到游戏中。动作240可以是暂停游戏,以便用户从游戏中休息一下。
如图5B中暂停点1所示。当用户想要继续游戏玩法时,眼疲劳检测器引擎230识别并启动从暂停点开始游戏玩法的第二动作。应该注意的是,识别的动作可以根据在用户身上观察到的眼睛疲劳指标和图s中所示的场景而变化。
相关专利
:
Sony Patent | Using eye-tracking / eye metrics to detect vr eye-strain-levels, then using adaptive rendering to lower levels of eye-strain
名为“Using eye-tracking / eye metrics to detect vr eye-strain-levels, then using adaptive rendering to lower levels of eye-strain”的索尼专利申请最初在2023年2月提交,并在日前由美国专利商标局公布。