CN117837162A - 低功率的动态捕获参数处理 - Google Patents
低功率的动态捕获参数处理 Download PDFInfo
- Publication number
- CN117837162A CN117837162A CN202280056211.XA CN202280056211A CN117837162A CN 117837162 A CN117837162 A CN 117837162A CN 202280056211 A CN202280056211 A CN 202280056211A CN 117837162 A CN117837162 A CN 117837162A
- Authority
- CN
- China
- Prior art keywords
- image
- resolution
- processing
- computing device
- processed image
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000012545 processing Methods 0.000 title claims abstract description 198
- 238000000034 method Methods 0.000 claims abstract description 65
- 238000003672 processing method Methods 0.000 claims description 10
- 230000004044 response Effects 0.000 claims description 9
- 230000015654 memory Effects 0.000 description 38
- 239000011521 glass Substances 0.000 description 33
- 238000004891 communication Methods 0.000 description 31
- 238000012015 optical character recognition Methods 0.000 description 21
- 238000011143 downstream manufacturing Methods 0.000 description 13
- 230000003287 optical effect Effects 0.000 description 13
- 238000004422 calculation algorithm Methods 0.000 description 12
- 230000008569 process Effects 0.000 description 10
- 238000004590 computer program Methods 0.000 description 9
- 238000011156 evaluation Methods 0.000 description 9
- 230000004438 eyesight Effects 0.000 description 8
- 230000003993 interaction Effects 0.000 description 8
- 230000033001 locomotion Effects 0.000 description 7
- 230000009471 action Effects 0.000 description 6
- 239000004984 smart glass Substances 0.000 description 6
- 230000003190 augmentative effect Effects 0.000 description 5
- 230000008901 benefit Effects 0.000 description 4
- 238000005286 illumination Methods 0.000 description 4
- 230000001960 triggered effect Effects 0.000 description 4
- 230000001413 cellular effect Effects 0.000 description 3
- 230000006870 function Effects 0.000 description 3
- 238000010191 image analysis Methods 0.000 description 3
- 238000012986 modification Methods 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- 230000000007 visual effect Effects 0.000 description 3
- 238000004458 analytical method Methods 0.000 description 2
- 238000013528 artificial neural network Methods 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 2
- 238000006243 chemical reaction Methods 0.000 description 2
- 238000012937 correction Methods 0.000 description 2
- 230000008878 coupling Effects 0.000 description 2
- 238000010168 coupling process Methods 0.000 description 2
- 238000005859 coupling reaction Methods 0.000 description 2
- 238000013461 design Methods 0.000 description 2
- 238000001514 detection method Methods 0.000 description 2
- 239000004973 liquid crystal related substance Substances 0.000 description 2
- 238000010801 machine learning Methods 0.000 description 2
- 239000004065 semiconductor Substances 0.000 description 2
- 230000001133 acceleration Effects 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 230000015556 catabolic process Effects 0.000 description 1
- 230000001276 controlling effect Effects 0.000 description 1
- 230000007812 deficiency Effects 0.000 description 1
- 238000006731 degradation reaction Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000005265 energy consumption Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000001815 facial effect Effects 0.000 description 1
- 235000013305 food Nutrition 0.000 description 1
- 238000003384 imaging method Methods 0.000 description 1
- 239000003550 marker Substances 0.000 description 1
- 239000000463 material Substances 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 238000009877 rendering Methods 0.000 description 1
- 230000000284 resting effect Effects 0.000 description 1
- 230000001953 sensory effect Effects 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 238000010129 solution processing Methods 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 239000000758 substrate Substances 0.000 description 1
- 230000001502 supplementing effect Effects 0.000 description 1
- 239000010409 thin film Substances 0.000 description 1
- 230000004304 visual acuity Effects 0.000 description 1
Landscapes
- Image Analysis (AREA)
- Studio Devices (AREA)
Abstract
在一个总体方面,一种方法能够包括:使用图像传感器以第一分辨率捕获第一原始图像;使用图像信号处理器将第一原始图像转换为数字处理图像;以及基于处理条件分析数字处理图像的至少一部分。该方法能够包括确定第一分辨率不满足处理条件;以及以大于第一分辨率的第二分辨率触发在图像传感器处捕获第二原始图像。
Description
相关申请的交叉引用
本申请是2022年8月11日提交的美国申请No.17/819,154和美国专利申请No.17/819,170的继续申请并要求其优先权,本申请要求2021年8月12日提交的美国临时申请No.63/260,206和美国临时申请No.63/260,207的权益,所有这些申请的公开内容通过引用整体并入本文。
本申请还要求2021年8月12日提交的美国临时申请No.63/260,206以及2021年8月12日提交的美国临时申请No.63/260,207的优先权,其公开内容通过引用整体并入本文。
技术领域
本说明书总体上涉及用于处理图像内容的方法、设备和算法。
背景技术
计算机视觉技术使得计算机能够分析和提取来自图像的信息。这种计算机视觉技术对于处理和功耗可能是昂贵的。随着对移动计算设备上的性能和功耗的平衡的需求持续增长,设备制造商的任务是配置设备以平衡图像劣化与设备性能,以避免超出移动计算设备的限制。
发明内容
一个或多个计算机的系统能够被配置为借助于具有安装在系统上的软件、固件、硬件或它们的组合来执行特定操作或动作,软件、固件、硬件或它们的组合在操作中使或使得系统执行动作。一个或多个计算机程序能够被配置为借助于包括在由数据处理装置执行时使装置执行动作的指令来执行特定操作或动作。
本公开描述了用于执行图像处理的系统和方法,该图像处理可以使得计算设备(例如,可穿戴计算设备)能够高效地执行(例如,实施)计算机视觉任务。本文中描述的系统和方法能够减少(例如,最小化)在执行计算机视觉和图像分析任务时所使用的图像数据量以减少特定硬件和/或设备资源(例如,存储器、处理器、网络带宽等)的使用。将计算设备(例如,头戴式设备(HMD)、增强现实(AR)智能眼镜)配置用于减少的资源使用能够提供这样的优点:允许这样的设备在设备的板上(onboard)实施相对低功率的计算任务并且将复杂和/或高功率处理卸载(例如,推送)到配套设备(例如,服务器、与计算设备连接的移动设备、其他计算机等)上。例如,能够在计算设备(例如,HMD)处执行光学字符辨识(OCR)的可行性的初始评估,并且当确定能够以期望的捕获参数(例如,足够的分辨率)捕获图像以执行OCR时,能够将图像发送到配套设备(例如,无线地发送)用于附加的(例如,更详细的、更密集的)OCR处理。
在至少一个总体方面,图像处理方法能够包括使用图像传感器以第一分辨率捕获第一原始图像,使用图像信号处理器将第一原始图像转换为数字处理图像,以及基于处理条件分析数字处理图像的至少一部分。该方法能够包括确定第一分辨率不满足处理条件,以及触发在图像传感器处的以大于第一分辨率的第二分辨率的第二原始图像的捕获。该方法能够包括以下的任何组合。
在另一总体方面中,一种非暂时性机器可读有形介质存储由一或多个处理器读取并执行以执行图像处理方法的指令,其中该方法能够包括使用图像传感器以第一分辨率捕获第一原始图像,使用图像信号处理器将所述第一原始图像转换为数字处理图像,以及基于处理条件分析数字处理图像的至少一部分。该方法能够包括确定第一分辨率不满足处理条件,以及触发在图像传感器处的以大于第一分辨率的第二分辨率的第二原始图像的捕获。该方法能够包括以下的任何组合。
在又一个总体方面中,一种系统能够包括处理器和通信地耦合到处理器并且在其中存储有多个指令的存储器设备,该多个指令在由处理器执行时使处理器:使用图像传感器以第一分辨率捕获第一原始图像,使用图像信号处理器将第一原始图像转换为数字处理图像,以及基于处理条件来分析数字处理图像的至少一部分。能够使处理器确定第一分辨率不满足处理条件,并且触发在图像传感器处的以大于第一分辨率的第二分辨率第二原始图像的捕获。
上述方面的每一个能够包括以下的任何组合。在一些实施方式中,数字处理图像的至少一部分包括文本字符。在一些实施方式中,数字处理图像的至少一部分包括真实世界对象。在一些实施方式中,处理条件是每字符像素、高度和面积条件中的至少一个。在一些实施方案中,用于捕获第一原始图像的第一分辨率对应于在图像传感器处定义的仓(bin)。在一些实施方式中,第一分辨率是默认分辨率,第二分辨率是基于查找表中的条目来定义的。在一些实施方式中,数字处理图像是在计算设备处捕获的第一数字处理图像。该方法还能够包括:将第二原始图像转换为第二数字处理图像;确定第二分辨率满足处理条件;以及响应于确定第二分辨率满足处理条件,将第二数字处理图像传送到计算设备的配套(companion)设备以供进一步处理。
附图说明
图1是根据贯穿本公开描述的实施方式的用于使用有限的计算和/或功率资源来生成和处理图像内容的计算设备的示例。
图2图示了根据贯穿本公开描述的实施方式的用于在计算设备上执行图像处理的系统。
图3A至图3C图示了在各种场景中可以在HMD显示器内查看的具有印刷单词的标志。
图4A和4B图示了根据贯穿本公开描述的实施方式的可穿戴计算设备的示例。
图5是图示与本文中描述的实施方式相关的方法的流程图。
图6图示了可以与本文描述的技术一起使用的计算机设备和移动计算机设备的示例。
各个附图中相同的附图标记指示相同的元件。
具体实施方式
本公开描述了用于执行图像处理的系统和方法,该图像处理可以使得计算设备(例如,可穿戴计算设备)能够高效地执行(例如,实施)计算机视觉任务。例如,本文中描述的系统和方法可以利用处理器、传感器、神经网络和/或图像分析算法来辨识图像中的文本、符号和/或对象和/或从图像提取信息。在一些实施方式中,本文中描述的系统和方法能够在以减少的计算模式和/或减少的电功率模式操作时执行这样的任务。例如,本文中描述的系统和方法能够减少(例如,最小化)在执行计算机视觉和图像分析任务时所使用的图像数据量以减少特定硬件和/或设备资源(例如,存储器、处理器、网络带宽等)的使用。
将计算设备(例如,头戴式设备(HMD)、增强现实(AR)智能眼镜)配置用于减少的资源使用能够提供这样的优点:允许这样的设备在设备的板上实施相对低功率的计算任务并且将复杂和/或高功率处理卸载(例如,推送)到配套设备(例如,服务器、与计算设备连接的移动设备、其他计算机等)上。
例如,能够在计算设备(例如,HMD)处执行光学字符辨识(OCR)的可行性的初始评估,并且当确定能够以期望的捕获参数(例如,足够的分辨率)捕获图像以执行OCR时,能够将图像发送到配套设备(例如,无线地发送)用于附加的(例如,更详细的、更密集的)OCR处理。
作为另一示例,能够在计算设备处执行用于执行OCR的早期阶段(例如,诸如文本辨识的OCR管线的早期阶段)的一个或多个捕获参数(例如,分辨率、每字符的像素数量)。当确定能够利用期望的捕获参数捕获图像以执行OCR时,能够将图像发送(例如,无线发送)到配套设备以进行详细的OCR处理。在一些实施方式中,能够在计算设备处执行详细的OCR处理(或其他处理),并且本文中描述的技术能够帮助在至少一些(例如,在任一个)下游处理期间节省能量。
在一些实施方式中,图像的初始低功率处理能够被用于确定用于捕获图像的目标捕获参数(例如,最小分辨率、裁剪到感兴趣区域(ROI)),该目标捕获参数可以被发送到另一设备以进行更高功率和/或更复杂的处理。能够基于一个或多个处理条件来确定特定捕获参数。用于确定目标捕获参数的初始处理能够被称为捕获参数选择处理阶段,并且稍后的处理能够被称为下游图像处理阶段。
作为具体示例,能够以第一捕获参数捕获图像的至少一部分,并且能够在捕获参数选择处理阶段处基于要在稍后的处理阶段处理的处理条件来做出第一捕获参数不满足条件(例如,不够高)的确定。处理条件能够是用于确定在稍后的处理阶段(例如,下游处理)的处理是否能够以期望的方式执行的条件。响应于确定第一解决方案的不足,能够以第二捕获参数捕获图像的部分,并且能够基于处理条件确定第二捕获参数足以在稍后的处理阶段被处理。下游图像处理阶段能够是例如与光学字符辨识有关的处理。
作为另一具体实例,能够以第一捕获参数捕获图像的至少一部分,并且能够在捕获参数选择处理阶段基于要在稍后的处理阶段处理的处理条件而作出第一捕获参数满足条件(例如,足够高)的确定。响应于足够的确定,能够在下游图像处理阶段(例如,与光学字符辨识有关的处理)处理图像的该部分。
在一些实施方式中,捕获参数选择处理能够基于使用单独的感兴趣区域选择技术确定的特定感兴趣区域。例如,代替分析整个图像,能够在图像数据中识别感兴趣区域(ROI),并且能够在计算设备的板上分析那些区域中的一个或多个。减少要分析的信息量同时仍然保持准确的结果可以允许在计算设备上执行复杂的图像处理任务,而没有分析整个图像的资源负担。在一些实施方式中,本文中描述的系统和方法可以被配置为在设备上被执行以确保这样的设备可以执行高效的图像处理任务,同时减少计算负载和/或电功率。例如,本文中描述的系统和方法可以使得设备能够在利用特定技术来减少功率、存储器和/或处理消耗的同时执行对象检测任务、光学字符辨识(OCR)任务和/或其他图像处理任务。
在一些实施方式中,本文中描述的系统和方法可以确保在没有来自其他资源和/或设备的辅助的情况下,可以在设备上执行复杂的图像处理计算。例如,常规系统可以请求来自其他可通信地耦合的移动设备、服务器和/或设备外系统的帮助以执行计算繁重的图像处理任务。本文中描述的系统和方法提供了生成图像的部分的优点,可以由具有比服务器更少的计算能力的设备来对该图像的部分进行操作,例如,同时仍然提供完全和准确的图像处理能力。
本文中描述的系统和方法可以使计算设备能够使用利用低功耗和/或低处理消耗的机器学习智能(例如,神经网络、算法等)来实施计算机视觉任务,诸如对象检测、移动跟踪、面部辨识、OCR任务等。
图1是根据贯穿本公开描述的实施方式的用于使用有限的计算和/或功率资源来生成和处理图像内容的计算设备100(例如,HMD)的示例。在该示例中,计算设备100被描绘为AR智能眼镜的形式。然而,任何形状因素可以被替代并与本文中所描述的系统和方法组合。在一些实施方式中,计算设备100包括片上系统(SOC)架构(未示出),与一个或多个传感器、低功率岛处理器、高功率岛处理器、核心处理器、编码器等中的任何一个或全部组合。
在操作中,计算设备100(也能够被称为设备)可以使用例如相机、图像传感器等来捕获场景102的图像。设备100可以由用户104穿戴和操作。场景102可以包括物理内容以及增强现实(AR)内容。从通过设备100的视图的角度示出了场景102。在一些实施方式中,计算设备100可以与配套设备106(例如,移动计算设备)可通信地耦合。
在一些实施方式中,计算设备100可以被触发以响应于从场景102识别图像内容的请求而开始实时图像处理(例如,实时图像和/或字符辨识)。在非限制性示例中,计算设备100可以被触发以响应于识别与由包括在设备100中的传感器捕获的光学数据相关联的图像内容的请求而开始实时图像处理。该请求可以来自穿戴设备100的用户(例如,用户104)。
在操作中,计算设备100可以包括捕获参数选择处理阶段100-1。在捕获参数选择处理阶段100-1的图像的初始低功率处理能够被用于确定用于捕获场景102的期望用于进一步处理(或用于触发进一步处理)的至少一部分的图像的目标捕获参数(例如,最小分辨率、裁剪到感兴趣区域(ROI))。在捕获参数选择处理阶段100-1确定的目标捕获参数能够被用于捕获能够被发送到配套设备106以用于下游图像处理阶段100-2内的更高功率和/或更复杂处理的一个或多个附加图像。尽管下游图像处理阶段100-2被图示为在配套设备106中,但是能够在计算设备100处执行下游图像处理阶段100-2的任何处理。
用于捕获场景102的至少一部分的图像的目标捕获参数能够基于捕获参数选择处理阶段100-1的一个或多个处理条件101来确定。目标捕获参数能够是针对在下游图像处理阶段100-2处理图像而(基于处理条件)优化的捕获参数。具体地,能够基于(例如,收敛于)满足处理条件101中的一个或多个来选择目标捕获参数。
在一些实施方式中,能够基于用于捕获内容的初始捕获参数来选择目标捕获参数。在一些实施方式中,目标捕获参数能够与初始捕获参数相同,或者能够被识别为与初始捕获参数相同。在一些实施方式中,除了初始捕获参数之外,还能够测试(例如,针对一个或多个处理条件考虑)多个中间捕获参数,直到识别(例如,收敛于)目标捕获参数。如果中间捕获参数满足一个或多个处理条件101,则中间捕获参数中的至少一个能够被识别为目标捕获参数。
在一些实施方式中,用于由捕获参数选择处理阶段100-1处理的内容能够针对感兴趣区域130。在一些实施方式中,能够与目标捕获参数处理一起或之后选择感兴趣区域(例如,通过裁剪而细化的感兴趣区域)。在一些实施方式中,能够在捕获参数选择处理阶段100-1的任何元件(例如,图像传感器、图像信号处理器、设备上处理等)处选择或处理感兴趣区域。
作为具体示例,能够使用表示第一分辨率(低分辨率、低分辨率水平)的初始捕获参数在第一图像中捕获场景102内的文本。捕获参数选择处理阶段100-1能够确定第一图像内的文本不满足处理条件101(例如,文本中的字符低于每字符像素阈值(例如,每个字符的像素高度))。因为基于由捕获参数选择处理阶段100-1对第一图像(例如,文本)的分析不满足处理条件101,所以能够使用表示第二分辨率(较高分辨率、高分辨率水平)的中间捕获参数来捕获场景内的文本的第二图像。如果捕获参数选择处理阶段100-1确定第二图像内的文本满足处理条件101(例如,文本中的字符满足或超过每字符像素阈值),则能够将捕获的文本的第二图像发送到配套设备以用于在下游图像处理阶段100-2内进行处理(例如,OCR处理)。
在一些实施方案中,能够同时或几乎同时以不同捕获参数捕获多个图像。能够执行关于多个图像中的第一图像是否将满足一个或多个处理条件101的评估。多个图像中的第一图像能够是使用较少的处理资源的图像(例如,使用多个图像的最少处理资源)。如果多个图像中的第一个满足一个或多个处理条件101,则可能不需要对多个图像中的其他图像的进一步评估。如果多个图像中的第一图像不满足一个或多个处理条件101,则能够执行关于多个图像中的第二图像是否将满足一个或多个处理条件101的评估。多个图像中的第二图像能够是使用比多个图像中的第一图像更多(例如,递增地更多)的处理资源的图像。能够执行对多个图像的这样的处理,直到多个图像中的一个被识别为在使用最少数量的处理资源(来自多个图像)的同时满足一个或多个处理条件101。
图2图示了根据贯穿本公开描述的实施方式的用于在计算设备100上执行图像处理的系统200。在一些实施方式中,在计算设备100上执行图像处理。在一些实施方式中,图像处理在一个或多个设备之间共享。例如,图像处理可以部分地在计算设备100上完成,并且部分地在配套设备202(例如,诸如移动计算设备106)和/或服务器计算设备204上完成。在一些实施方式中,对计算设备100执行图像处理,并且将来自这样的处理的输出提供给配套设备202和/或服务器计算设备204。
图2图示了包括在计算设备100中的捕获参数选择处理阶段100-1的实施方式。尽管未示出,但是下游图像处理阶段100-2能够被包括在配套设备202中。在该实施方式中,捕获参数选择处理阶段100-1包括图像传感器216、图像信号处理器224和参数选择处理器227。
图像信号处理器224能够被配置为将由图像传感器216捕获的原始图像(例如,原始图像、模拟图像)转换成能够由参数选择处理器227处理的数字处理图像格式。例如,原始图像能够是没有用于进一步图像处理的一些信息的未压缩图像。图像信号处理器224能够将原始图像处理成能够由下游处理(诸如参数选择处理器227)进一步处理的数字格式。图像信号处理器224能够执行例如降噪、自动白平衡和颜色校正、颜色插值、伽马校正等,以产生数字处理图像。在一些实施方式中,图像信号处理器224能够是传感器系统214的一部分。为了简化讨论,通常将从描述中省略由图像传感器216产生的图像到由图像信号处理器224产生的数字表示的转换,即使这样的转换发生在下游处理(例如,由参数选择处理器227处理)之前。因此,由下游组件的处理通常在由图像信号处理器224的数字处理之后执行,即使在本文中的描述内没有提及。
将在与OCR过程相关联的分辨率(例如,分辨率捕获参数221、分辨率条件222、分辨率选择算法223)的上下文中讨论图2中所示的实施方式,以集中讨论并说明本说明书中的原理。不同于或除了分辨率之外的不同类型的捕获参数、条件和/或过程能够结合至少图2中的实施方式来使用。例如,本文中描述的技术能够被应用于对真实世界对象的任何类型的处理(例如,计算机视觉、机器学习),真实世界对象诸如但不限于条形码、产品、标志、店面、地标、植物、食物、面部、手(例如,指点或持有)、对象(例如,汽车、建筑物、自行车、书籍、人等)、特征点跟踪等。
图像传感器216、图像信号处理器224和参数选择处理器227能够用作捕获参数选择处理阶段100-1内的管线。尽可能早地在管线中减少或最小化图像分辨率,以减少或最小化能量消耗。例如,能够在图像传感器216处捕获最小分辨率图像,使得能够减小或最小化在任何下游处理(例如,图像信号处理224、参数选择处理器227、通信模块252、配套设备202)的处理。以较高分辨率在图像传感器216处捕获图像能够导致在下游处理处的增加的功率使用、增加的时延(例如,传输时延)等。
如上所述,捕获参数选择处理阶段100-1能够被用于确定用于捕获场景102的期望用于进一步处理(并且用于功率节省)的至少一部分的图像的目标分辨率捕获参数。在捕获参数选择处理阶段100-1确定的目标分辨率捕获参数能够被用于捕获一个或多个附加图像,该一个或多个附加图像能够被发送到配套设备202以用于下游图像处理阶段内的更高功率和/或更复杂的OCR处理。
分辨率捕获参数221能够表示能够由例如图像传感器216用来捕获图像的参数。尽管未示出,但是不同类型的分辨率捕获参数(例如,初始分辨率捕获参数、中间分辨率捕获参数和目标分辨率捕获参数)中的每一个能够由分辨率捕获参数221表示或通常被称为分辨率捕获参数221。例如,初始或默认分辨率捕获参数能够被称为分辨率捕获参数221。分辨率捕获参数221能够表示例如不同的值或分辨率水平。
捕获参数选择处理阶段100-1能够被配置成使用图像传感器216使用一个或多个初始捕获参数开始捕获图像,并且能够调整和/或定义附加分辨率捕获参数(例如,一个或多个中间捕捉参数),直到确定一个或多个目标分辨率捕捉参数以供进一步处理。在一些实施方式中,初始捕获参数能够被识别为目标分辨率捕获参数。
例如,图像传感器216能够被配置为使用初始分辨率捕获参数(例如,默认分辨率捕获参数,以第一分辨率)捕获图像。参数选择处理器227能够被配置为通过分析图像中的内容的至少一部分来确定由参数选择处理器227捕获的内容是否具有足够的分辨率用于进一步处理。分辨率的足够能够基于一个或多个分辨率处理条件222来确定。具体地,如果图像中的内容满足分辨率处理条件222中的一个或多个(例如,如果分辨率足够用于进一步处理),则参数选择处理器227将初始分辨率捕获参数识别为用于使用图像传感器216捕获图像内容的目标分辨率捕获参数。
作为另一示例,图像传感器216能够被配置为使用初始分辨率捕获参数(例如,以第一分辨率)捕获图像。参数选择处理器227能够被配置为通过分析图像中的内容的至少一部分来确定由参数选择处理器227捕获的内容是否具有足够的分辨率用于进一步处理。如果分辨率不足够进行进一步处理,则参数选择处理器227识别中间分辨率捕获参数。
在基于一个或多个分辨率处理条件222确定初始分辨率捕获参数不适合于由图像传感器216捕获图像之后,进行下游处理。分辨率选择算法223能够被用于确定一个或多个中间分辨率捕获参数,直到识别目标分辨率捕获参数。分辨率算法223能够基于分辨率捕获参数的预定集合。分辨率算法223能够基于分辨率捕获参数的预定顺序。分辨率算法223能够基于识别将导致最小处理的分辨率捕获参数。
分辨率选择算法223能够是或者能够基于例如在初始分辨率捕获参数之后识别分辨率捕获参数顺序的查找表(LUT)。换句话说,能够使用查找表来确定不同的捕获参数(例如,捕获参数水平)。查找表能够被用于快速确定期望的分辨率捕获参数(或其他类型的捕获参数)。
例如,查找表能够包括初始分辨率捕获参数(例如,默认分辨率捕获参数)。如果基于初始分辨率捕获参数捕获的第一图像对于进一步处理(例如,下游处理)不可接受,则能够基于在查找表内识别的中间分辨率捕获参数来捕获第二图像。如果基于中间分辨率捕获参数捕获的第二图像对于进一步处理是可接受的,则能够执行进一步处理(并且中间分辨率捕获参数能够是最终分辨率捕获参数)。如果基于中间分辨率捕获参数捕获的第二图像对于进一步处理(例如,下游处理)不可接受,则能够基于在查找表内识别的又一中间分辨率捕获参数来捕获第三图像。如上所述,处理能够以迭代方式进行,直到识别最终分辨率捕获参数。能够识别除了分辨率捕获参数之外的其他参数。
在一些实施方式中,分辨率选择算法223可以基于各种算法和/或等式。
计算设备100包括传感器系统214。传感器系统214包括被配置为检测和/或获得图像数据的图像传感器216。在一些实施方式中,传感器系统214包括多个图像传感器216。如图所示,传感器系统214包括一个或多个图像传感器216。图像传感器216可以捕获和记录图像(例如,像素、帧和/或图像的部分)和视频。
在一些实施方案中,能够通过图像传感器216的预定义(例如,预编程的)的装仓(binning)(例如,像素的装仓)来定义图像传感器216的分辨率(例如,分辨率水平)。例如,图像传感器216的增加数量的像素的装仓能够导致降低的分辨率或分辨率水平。增加数量的像素的装仓能够导致增加的分辨率或分辨率水平。
作为处理条件的类型(例如,处理条件101)的每像素阈值的满足能够取决于许多因素,包括距离和真实世界图像元素大小(例如,实际字体大小)。本文中描述的技术能够被应用于任何类型的图像或图像元素,但是为了方便起见,将关于字体讨论本文中描述的技术。
例如,具有相对大的字体但远离图像传感器216的字符的捕获的图像(例如,原始图像)仍可以满足每像素阈值,因为相对大的字体大小可以从远离图像传感器216的相对大的距离分辨。这样的示例在图3A中示出。
如图3A所示,可以在距离D1处的HMD显示器310(例如,具有像素大小P1×P2的显示窗口)内查看其上打印有单词“the”的标志350-1(例如,真实世界标志)。与HMD(未示出)的面向外的图像传感器(例如,图2中所示的图像传感器216)相关联的视场320可以在HMD显示器310内产生图像(例如,原始图像)。在该示例中,符号上的词“the”的大小在距离D1处相对较大,因此HMD显示器310内的词的大小也相对较大。来自单词“the”的字母“t”的多个像素Q1中的大小(例如,在该示例中的高度)可以大于阈值(例如,足够大),使得下游过程(例如,图1中所示的下游图像处理阶段100-2)中的进一步处理可以以期望的方式执行。
返回参考图2,作为另一示例,具有相对小的字体并且远离图像传感器216的字符的捕获的图像(例如,原始图像)可能不满足每像素阈值,因为相对小的尺寸可能无法从远离图像传感器216的相对大的距离分辨。图3B中示出了作为图3A的变型的这样的示例。
如图3B所示,可以在距离D1(与图3A中相同的距离)处的HMD显示器310(例如,具有像素大小P1×P2的显示窗口)内查看其上打印有单词“the”的标志350-2(例如,真实世界标志)。与HMD(未示出)的面向外的图像传感器相关联的视场320可以在HMD显示器310内产生图像(例如,原始图像)。在该示例中,符号上的词“the”的大小在距离D1处相对较小,因此HMD显示器310内的词的大小也相对较小。来自单词“the”的字母“t”的像素Q2的数量中的大小可以小于阈值,使得下游过程(例如,图1中所示的下游图像处理阶段100-2)中的进一步处理可能不以期望的方式执行。在这种情况下,可以增加捕获分辨率,使得能够增加字“the”的像素数量,使得可以以期望的方式执行下游过程(例如,图1所示的下游图像处理阶段100-2)中的进一步处理。
在一些实施方式中,能够几乎同时捕获或捕获低分辨率图像(例如,原始图像)和高分辨率图像。能够执行关于低分辨率图像是否满足处理条件(例如,每像素阈值)的评估。如果低分辨率图像满足处理条件,则可以不执行高分辨率的处理或者可以排除高分辨率图像的处理。如果低分辨率图像不满足处理条件,则能够执行关于高分辨率图像是否满足处理条件(例如,每像素阈值)的评估。如果高分辨率图像满足处理条件,则高分辨率图像可以被用于(或可以触发)进一步处理。如果高分辨率图像不满足处理条件,则可以捕获更高分辨率的图像,并且可以执行关于更高分辨率的图像是否满足处理条件(例如,每像素阈值)的评估。
在一些实施方式中,处理能够以高处理水平开始。例如,在一些实施方式中,能够几乎同时捕获或捕获低分辨率图像(例如,原始图像)和高分辨率图像(例如,原始图像)。能够执行关于高分辨率图像是否满足处理条件(例如,每像素阈值)的评估。如果高分辨率图像满足处理条件,则可以不执行低分辨率的处理或者可以排除低分辨率图像的处理。
在一些实施方式中,处理能够以高处理水平开始,然后降低直到满足期望的条件。例如,在一些实施方式中,能够几乎同时捕获或捕获低分辨率图像和高分辨率图像。能够执行关于高分辨率图像是否满足处理条件(例如,每像素阈值)的评估。如果高分辨率图像满足处理条件,则还能够执行关于低分辨率图像是否满足处理条件(例如,每像素阈值)的评估。如果低分辨率图像满足处理条件,则低分辨率图像可以被用于(在高分辨率图像上)(或可以触发)进一步处理。能够捕获和评估图像,直到捕获可以导致最小进一步处理(如基于处理条件确定的)的分辨率。
作为另一示例,由具有相对较小字体但靠近图像传感器216的字符捕获的图像(例如,原始图像)可以满足每像素阈值,即使字体较小,因为字符能够从相对较短的距离解析。图3C中示出了作为图3B的变型的这样的示例。
如图3C所示,可以在HMD显示器310(例如,具有像素大小P1×P2的显示窗口)内在距离D2(其小于图3A和图3B中的距离D1)查看其上打印有单词“the”的标志350-3(例如,真实世界标志)。与HMD(未示出)的面向外的图像传感器相关联的视场320可以在HMD显示器310内产生图像(例如,原始图像)。在该示例中,符号上的词“the”的大小在距离D2处相对较大,因此HMD显示器310内的词的大小也相对较大。来自单词“the”的字母“t”的多个像素Q3中的大小(例如,在该示例中是高度)可以大于阈值(例如,足够大),使得下游过程(例如,图1中所示的下游图像处理阶段100-2)中的进一步处理可以以期望的方式执行。
根据上述示例,每像素阈值能够是用于在许多情况下确定适当的捕获分辨率的强大工具。每像素阈值能够是能够在没有关于例如字体大小(例如,真实世界字体大小)和/或距离的信息的情况下确定的单个度量。
在一些实施方式中,能够基于文本信息的脚本或语言来确定每像素阈值。在一些实施方式中,一个或多个处理条件101能够基于系统的角度分辨率或视觉敏锐度。角分辨率能够基于捕获图像(例如,原始图像)的图像传感器(例如,相机)的视场。在一些实施方式中,一个或多个处理条件101能够基于锐度、对比度、准确度、识别字符的置信度等。
在一些实施方式中,图像传感器216是红绿蓝(RGB)相机。在一些示例中,图像传感器216包括脉冲激光传感器(例如,LiDAR传感器)和/或深度相机。例如,图像传感器216可以是被配置为检测和传递用于制作由图像帧226表示的图像的信息的相机。图像传感器216能够捕获和记录图像和视频两者。
在操作中,图像传感器216被配置为在设备100被激活时连续地或周期性地获得(例如,捕获)图像数据(例如,光学传感器数据)。在一些实施方式中,图像传感器216被配置为作为常开传感器操作。在一些实施方案中,可响应于检测对象或感兴趣区域而激活成像传感器216。
在一些实施方式中,计算设备100包括一个或多个计算设备,其中设备中的至少一个是能够穿戴在人的皮肤上或附近的显示设备。在一些示例中,计算设备100是或包括一个或多个计算设备组件。在一些实施方式中,计算设备100可以包括头戴式显示器(HMD)设备,诸如光学头戴式显示器(OHMD)设备、透明平视显示器(HUD)设备、虚拟现实(VR)设备、AR设备或其他设备,诸如具有传感器、显示器和计算能力的护目镜或头戴式耳机。在一些实施方式中,计算设备100包括AR眼镜(例如,智能眼镜)。AR眼镜表示以一副眼镜的形状设计的光学头戴式显示设备。在一些实施方式中,计算设备100是或包括智能手表。在一些实施方式中,计算设备100是或包括一件珠宝。在一些实施方式中,计算设备100是或包括环形控制器设备或其他可穿戴控制器。在一些实施方式中,计算设备100是或包括耳塞/耳机或智能耳塞/耳机。
如图2所示,系统200包括可通信地耦合到配套设备202和可选地服务器计算设备204的计算设备100。在一些实施方式中,可通信耦合可以经由网络206发生。在一些实施方式中,可通信耦合可以直接发生在计算设备100、配套设备202和/或服务器计算设备204之间。
计算设备100包括一个或多个处理器208,其可以被形成在被配置为执行一个或多个机器可执行指令或软件、固件或其组合的基板中。处理器208能够是基于半导体的并且可以包括能够执行数字逻辑的半导体材料。处理器208可以包括CPU、GPU和/或DSP,仅举几个示例。
计算设备100还能够包括一个或多个存储器设备210。存储器设备210可以包括存储呈能够由处理器208读取及/或执行的格式的信息的任何类型的存储设备。存储器设备210可以存储应用程序和模块,该应用程序和模块在由处理器208执行时执行某些操作。在一些示例中,应用和模块可以被存储在外部存储设备中并且被加载到存储器设备210中。存储器210可以包括或访问缓冲区212,例如,以存储和检索设备100的图像内容和/或音频内容。
传感器系统214还可以包括惯性运动单元(IMU)传感器218。IMU传感器218可以检测计算设备100的运动、移动和/或加速度。IMU传感器218可以包括各种不同类型的传感器,诸如例如加速度计、陀螺仪、磁力计和其他此类传感器。
在一些实施方式中,传感器系统214还可以包括被配置为检测由计算设备100接收的音频的音频传感器220。传感器系统214可以包括其他类型的传感器,诸如光传感器、距离和/或接近度传感器、诸如电容传感器的接触传感器、定时器和/或其他传感器和/或传感器的不同组合。传感器系统214可以被用于获得与计算设备100的位置和/或定向相关联的信息。
计算设备100还可以包括被配置为经由无线信号与其他计算设备通信的一个或多个天线242。例如,计算设备100可以接收一个或多个无线信号并且使用无线信号来与其他设备(诸如配套设备202和/或服务器计算设备204)或天线242范围内的其他设备进行通信。无线信号可以经由无线连接(诸如短程连接(例如,蓝牙连接或近场通信(NFC)连接)或互联网连接(例如,Wi-Fi或移动网络))来触发。
计算设备100包括显示器244。显示器244可以包括液晶显示器(LCD)、发光二极管(LED)显示器、有机发光显示器(OLED)、电泳显示器(EPD)或采用LED光源的微投影显示器。在一些示例中,显示器244被投影到用户的视场上。在一些示例中,在AR眼镜的情况下,显示器244可以提供透明或半透明显示器,使得佩戴AR眼镜的用户能够查看由显示器244提供的图像,还能够查看位于投影图像后面的AR眼镜的视场中的信息。
计算设备100还包括控制系统246,控制系统246包括各种控制系统设备以促进计算设备100的操作。控制系统246可以利用可操作地耦合到计算设备100的组件的处理器208和/或传感器系统214。
计算设备100还包括UI渲染器250。UI渲染器250可以与显示器244一起工作,以向计算设备100的用户描绘用户界面对象或其他内容。例如,UI渲染器250可以接收由设备100捕获的图像以在显示器244上生成和渲染附加用户界面内容。
计算设备100还包括通信模块252。通信模块252可以使计算设备100能够与设备100的范围内的另一计算设备通信以交换信息。例如,计算设备100可以可操作地耦合到另一计算设备,以促进经由例如有线连接、经由例如Wi-Fi或蓝牙的无线连接或其他类型的连接的通信。
在一些实施方式中,计算设备100被配置为通过网络206与服务器计算设备204和/或配套设备202通信。服务器计算设备204可以表示采取多个不同设备的形式的一个或多个计算设备,例如标准服务器、这样的服务器组或机架服务器系统。在一些实施方式中,服务器计算设备204是单个系统共享组件,诸如处理器和存储器。网络206可以包括互联网和/或其他类型的数据网络,诸如局域网(LAN)、广域网(WAN)、蜂窝网络、卫星网络或其他类型的数据网络。网络206还可以包括被配置为在网络206内接收和/或传送数据的任何数量的计算设备(例如,计算机、服务器、路由器、网络交换机等)。
图4A和图4B图示了根据贯穿本公开描述的实施方式的AR可穿戴计算设备的示例的各种视图。图4A是根据贯穿本公开描述的实施方式的可穿戴计算设备的示例的前视图。在该示例中,可穿戴计算设备是一副AR眼镜400A(例如,图1中的可穿戴计算设备100)。通常,AR眼镜400A可以包括系统200的任何或所有组件。AR眼镜400A还可以被指示为智能眼镜,其表示以一副眼镜的形状设计的光学头戴式显示设备。例如,智能眼镜是在佩戴者通过眼镜观看的内容旁边添加信息(例如,投射显示器)的眼镜。
尽管AR眼镜400A被示出为本文中描述的可穿戴计算设备,但是其他类型的可穿戴计算设备也是可能的。例如,可穿戴计算设备可以包括头戴式显示器(HMD)设备,诸如光学头戴式显示器(OHMD)设备、透明平视显示器(HUD)设备、增强现实(AR)设备或其他设备,诸如具有传感器、显示器和计算能力的护目镜或头戴式耳机。在一些示例中,可穿戴计算设备可以是手表、移动设备、一件珠宝、环形控制器或其他可穿戴控制器。
如图4A所示,AR眼镜400A包括框架402,其中显示设备404耦合在框架402中(或框架402的玻璃部分中)。AR眼镜400A还包括音频输出设备406、照明设备408、感测系统410、控制系统412、至少一个处理器414和相机416。
显示设备404可以包括透视近眼显示器,诸如使用鸟浴(birdbath)或波导光学器件的显示器。例如,这种光学设计可以将来自显示源的光投射到充当以45度角安置的分束器的远程提示器玻璃的一部分上。分束器可以允许反射和透射值,其允许来自显示源的光被部分地反射,同时剩余的光透射通过。这样的光学设计可以允许用户看到在由显示器生成的数字图像(例如,UI元素、虚拟内容等)旁边的世界中的物理项目两者。在一些实施方式中,波导光学器件可以被用于描绘AR眼镜400A的显示设备404上的内容。
音频输出设备406(例如,一个或多个扬声器)可以耦合到框架402。感测系统410可以包括各种感测设备,并且控制系统412包括各种控制系统设备以促进AR眼镜400A的操作。控制系统412可以包括可操作地耦合到控制系统412的部件的处理器414。
相机416可以能够捕获静止和/或移动的图像。在一些实施方式中,相机416可以是深度相机,其能够收集与来自相机416的外部对象的距离相关的数据。在一些实施方式中,相机416可以是点跟踪相机,其能够例如检测和跟随外部设备上的一个或多个光学标记,诸如例如屏幕上的输入设备或手指上的光学标记。在一些实施方式中,AR眼镜400A可以包括照明设备408,照明设备408可以例如利用相机416选择性地操作,以用于检测相机416的视场中的对象(例如,虚拟和物理)。照明设备408可以例如利用相机416选择性地操作,以用于检测相机416的视场中的对象。
AR眼镜400A可以包括与处理器414和控制系统412通信的通信模块(例如,通信模块252)。通信模块可以提供容纳在AR眼镜400A内的设备之间的通信以及与外部设备(诸如例如,控制器、移动设备、服务器和/或其他计算设备)的通信。通信模块可以使得AR眼镜400A能够与另一计算设备通信以交换信息,并且认证AR眼镜400A或环境中的其他可识别元件的范围内的其他设备。例如,AR眼镜400A可以可操作地耦合到另一计算设备,以促进经由例如有线连接、经由例如Wi-Fi或蓝牙的无线连接或其他类型的连接的通信。
图4B是根据贯穿本公开描述的实施方式的AR眼镜400A的后视图400B。AR眼镜400B可以是图1的可穿戴计算设备100的示例。AR眼镜400B是在佩戴者通过眼镜观看的内容的旁边添加信息(例如,投影显示器420)的眼镜。在一些实施方式中,代替投影信息,显示器420是透镜内微型显示器。在一些实施方式中,AR眼镜400B(例如,眼镜或眼镜(spectacles))是视觉辅助件,包括安装在框架402中的透镜422(例如,玻璃或硬塑料透镜),其将透镜保持在人的眼睛前方,通常利用鼻上的桥424,以及搁置在耳朵上的弓形件426(例如,镜腿或镜腿件)。
图5是图示与本文中描述的实施方式相关的方法的流程图。该方法能够在至少图1和图2中所示的捕获参数选择处理阶段100-1内执行。
该方法能够包括使用图像传感器以第一分辨率捕获第一原始图像(框510)。能够使用例如图2所示的图像传感器216来捕获第一图像。第一分辨率能够被包括在图2所示的分辨率捕获参数221内。
该方法能够包括使用图像信号处理器将第一原始图像转换为数字处理图像(框520)。图像信号处理器能够是例如图2所示的图像信号处理器224。
该方法能够包括基于处理条件分析数字处理图像的至少一部分(框530)。该分析能够在例如图2所示的参数选择处理器227处执行。处理条件能够包括例如图1所示的处理条件101。处理条件的具体示例被示为图1所示的解决处理条件222。
该方法能够包括确定第一分辨率不满足处理条件(框540)。该确定能够在例如图2所示的参数选择处理器227处执行。该确定能够基于图2所示的分辨率选择算法223。
该方法能够包括触发在图像传感器处的以大于第一分辨率的第二分辨率的第二原始图像的捕获(框550)。能够使用例如图2所示的图像传感器216来捕获第二图像。第二分辨率能够被包括在图2所示的分辨率捕获参数221内。
图6图示了可以与本文描述的技术一起使用(例如,以实现客户端计算设备100、服务器计算设备204和/或移动设备202)的计算机设备1000和移动计算机设备1050的示例。计算设备1000包括处理器1002、存储器1004、存储设备1006、连接到存储器1004和高速扩展端口1010的高速接口1008、以及连接到低速总线1014和存储设备1006的低速接口1012。组件1002、1004、1006、1008、1010和1012中的每一个使用各种总线互连,并且可以安装在公共母板上或酌情以其他方式安装。处理器1002能够处理用于在计算设备1000内执行的指令,包括存储在存储器1004中或存储设备1006上的指令,以在外部输入/输出设备(诸如耦合到高速接口1008的显示器1016)上显示GUI的图形信息。在其他实施方式中,可以酌情使用多个处理器和/或多个总线以及多个存储器和存储器类型。此外,可以连接多个计算设备1000,其中每个设备提供必要操作的部分(例如,作为服务器组、刀片服务器组或多处理器系统)。
存储器1004存储计算设备1000内的信息。在一个实施方式中,存储器1004是易失性存储器单元或多个易失性存储器单元。在另一实施方式中,存储器1004是非易失性存储器单元。存储器1004还可以是另一种形式的计算机可读介质,诸如磁盘或光盘。
存储设备1006能够为计算设备1000提供大容量存储。在一个实施方式中,存储设备1006可以是或包含计算机可读介质,诸如软盘设备、硬盘设备、光盘设备、或磁带设备、闪存或其他类似的固态存储器设备、或设备阵列,包括存储区域网络或其他配置中的设备。计算机程序产品能够有形地体现在信息载体中。计算机程序产品还可以包含指令,该指令在被执行时执行一种或多种方法,诸如上述那些方法。信息载体是计算机或机器可读介质,诸如存储器1004、存储设备1006或处理器1002上的存储器。
高速控制器1008管理用于计算设备1000的带宽密集型操作,而低速控制器1012管理较低带宽密集型操作。这种功能分配仅是示例。在一个实施方式中,高速控制器1008耦合到存储器1004、显示器1016(例如,通过图形处理器或加速器)和高速扩展端口1010,高速扩展端口1010可以接受各种扩展卡(未示出)。在该实施方式中,低速控制器1012耦合到存储设备1006和低速扩展端口1014。可以包括各种通信端口(例如,USB、蓝牙、以太网、无线以太网)的低速扩展端口可以例如通过网络适配器耦合到一个或多个输入/输出设备,诸如键盘、定点设备、扫描仪或诸如交换机或路由器的网络设备。
计算设备1000可以以多种不同的形式实现,如图所示。例如,它可以被实现为标准服务器1020,或者在这样的服务器组中被实现多次。它也可以被实现为机架服务器系统1024的一部分。另外,其可以在诸如膝上型计算机1022的个人计算机中实现。替代地,来自计算设备1000的组件可以与诸如设备1050的移动设备(未示出)中的其他组件组合。这样的设备中的每一个可以包含计算设备1000、1050中的一个或多个,并且整个系统可以由彼此通信的多个计算设备1000、1050组成。
计算设备1050包括处理器1052、存储器1064、诸如显示器1054的输入/输出设备、通信接口1066和收发机1068以及其他组件。设备1050还可以被提供有存储设备,诸如微驱动器或其他设备,以提供附加存储。组件1050、1052、1064、1054、1066和1068中的每一个使用各种总线互连,并且组件中的若干组件可以安装在公共主板上或酌情以其他方式安装。
处理器1052能够执行计算设备1050内的指令,包括存储在存储器1064中的指令。处理器可以被实现为包括单独的和多个模拟和数字处理器的芯片集。例如,处理器可以提供设备1050的其他组件的协调,诸如用户接口的控制、由设备1050运行的应用以及由设备1050的无线通信。
处理器1052可以通过耦合到显示器1054的控制接口1058和显示接口1056与用户通信。显示器1054可以是例如TFT LCD(薄膜晶体管液晶显示器)和LED(发光二极管)或OLED(有机发光二极管)显示器或其他适当的显示技术。显示接口1056可以包括用于驱动显示器1054向用户呈现图形和其他信息的适当电路。控制接口1058可以从用户接收命令并转换它们以提交给处理器1052。另外,可以提供与处理器1052通信的外部接口1062,以便实现设备1050与其他设备的近区域通信。例如,在一些实施方式中,外部接口1062可以提供有线通信,或者在其他实施方式中用于无线通信,并且还可以使用多个接口。
存储器1064存储计算设备1050内的信息。存储器1064能够被实现为计算机可读介质或介质、易失性存储器单元或多个易失性存储器单元或非易失性存储器单元或多个非易失性存储器单元中的一个或多个。扩展存储器1074还可以通过扩展接口1072被提供和连接到设备1050,扩展接口1072可以包括例如SIMM(单列直插式存储器模块)卡接口。这样的扩展存储器1074可以为设备1050提供额外的存储空间,或者还可以存储用于设备1050的应用或其他信息。具体地,扩展存储器1074可以包括用于执行或补充上述过程的指令,并且还可以包括安全信息。因此,例如,扩展存储器1074可以被提供作为设备1050的安全模块,并且可以被编程有允许设备1050的安全使用的指令。另外,安全应用可以经由SIMM卡连同附加信息一起提供,诸如以非侵入方式将标识信息放置在SIMM卡上。
存储器可以包括例如闪存和/或NVRAM存储器,如下所述。在一个实施方式中,计算机程序产品被有形地体现在信息载体中。计算机程序产品包含指令,该指令在被执行时执行一种或多种方法,诸如上述那些方法。信息载体是可以例如通过收发器1068或外部接口1062接收的计算机或机器可读介质,诸如存储器1064、扩展存储器1074或处理器1052上的存储器。
设备1050可以通过通信接口1066无线地通信,通信接口1066可以在必要时包括数字信号处理电路。通信接口1066可以提供各种模式或协议下的通信,诸如GSM语音呼叫、SMS、EMS或MMS消息接发、CDMA、TDMA、PDC、WCDMA、CDMA2000或GPRS等。这种通信可以例如通过射频收发器1068发生。另外,短程通信可发生,诸如使用蓝牙、Wi-Fi或其他此类收发器(未示出)。另外,GPS(全球定位系统)接收器模块1070可以向设备1050提供附加的导航相关和位置相关的无线数据,设备1050可以由在设备1050上运行的应用酌情使用。
设备1050还可以使用音频编解码器1060可听地通信,音频编解码器1060可以从用户接收口头信息并将其转换成可用的数字信息。音频编解码器1060同样可以诸如通过扬声器(例如,在设备1050的听筒中)为用户生成可听声音。这样的声音可以包括来自语音电话呼叫的声音,可以包括记录的声音(例如,语音消息、音乐文件等),并且还可以包括由在设备1050上操作的应用生成的声音。
计算设备1050可以以多种不同的形式实现,如图所示。例如,它可以被实现为蜂窝电话1080。它还可以被实现为智能电话1082、个人数字助理或其他类似移动设备的一部分。
这里描述的系统和技术的各种实施方式可以在数字电子电路、集成电路、专门设计的ASIC(专用集成电路)、计算机硬件、固件、软件和/或其组合中实现。这些各种实施方式能够包括在可编程系统上可执行和/或可解释的一个或多个计算机程序中的实施方式,该可编程系统包括至少一个可编程处理器,该可编程处理器可以是特殊的或通用的,被耦合以从存储系统接收数据和指令,并且向存储系统、至少一个输入设备和至少一个输出设备传送数据和指令。
这些计算机程序(也称为程序、软件、软件应用或代码)包括用于可编程处理器的机器指令,并且能够以高级过程和/或面向对象的编程语言和/或汇编/机器语言来实现。如本文中使用的,术语“机器可读介质”、“计算机可读介质”是指用于向可编程处理器提供机器指令和/或数据的任何计算机程序产品、装置和/或设备(例如,磁盘、光盘、存储器、可编程逻辑器件(PLD)),包括接收机器指令作为机器可读信号的机器可读介质。术语“机器可读信号”是指用于向可编程处理器提供机器指令和/或数据的任何信号。
为了提供与用户的交互,这里描述的系统和技术能够在具有用于向用户显示信息的显示设备(LED(发光二极管)或OLED(有机LED)或LCD(液晶显示器)监视器/屏幕)和用户能够通过其向计算机提供输入的键盘和定点设备(例如,鼠标或轨迹球)的计算机上实现。其他类型的设备也能够被用于提供与用户的交互;例如,提供给用户的反馈能够是任何形式的感觉反馈(例如,视觉反馈、听觉反馈或触觉反馈);并且能够以任何形式接收来自用户的输入,包括声学、语音或触觉输入。
这里描述的系统和技术能够在计算系统中实现,该计算系统包括后端组件(例如,作为数据服务器),或者包括中间件组件(例如,应用服务器),或者包括前端组件(例如,具有图形用户界面或Web浏览器的客户端计算机,用户能够通过该图形用户界面或Web浏览器与这里描述的系统和技术的实施方式进行交互),或者这种后端组件、中间件组件或前端组件的任何组合。系统的组件能够通过任何形式或介质的数字数据通信(例如,通信网络)互连。通信网络的示例包括局域网(“LAN”)、广域网(“WAN”)和互联网。
计算系统能够包括客户端和服务器。客户端和服务器通常彼此远离并且通常通过通信网络进行交互。客户端和服务器的关系由于在相应的计算机上运行并且彼此具有客户端-服务器关系的计算机程序而产生。
在一些实施方案中,图中所描绘的计算设备能够包括与AR头戴式设备/HMD设备1090接口连接以产生用于观看物理空间内的插入内容的扩增环境的传感器。例如,包括在图中描绘的计算设备1050或其他计算设备上的一个或多个传感器可以向AR头戴式设备1090提供输入,或者通常向AR空间提供输入。传感器可以包括但不限于触摸屏、加速度计、陀螺仪、压力传感器、生物识别传感器、温度传感器、湿度传感器和环境光传感器。计算设备1050能够使用传感器来确定计算设备在AR空间中的绝对位置和/或检测到的旋转,其然后能够被用作到AR空间的输入。例如,计算设备1050可以被并入到AR空间中作为虚拟对象,诸如控制器、激光指示器、键盘、武器等。当并入AR空间中时由用户定位计算设备/虚拟对象能够允许用户定位计算设备以便在AR空间中以某些方式查看虚拟对象。
在一些实施方式中,包括在计算设备1050上或连接到计算设备1050的一个或多个输入设备能够被用作到AR空间的输入。输入设备能够包括但不限于触摸屏、键盘、一个或多个按钮、触控板、触摸板、指向设备、鼠标、轨迹球、操纵杆、相机、麦克风、具有输入功能的耳机或耳塞、游戏控制器或其他可连接输入设备。当计算设备被并入到AR空间中时与包括在计算设备1050上的输入设备交互的用户能够引起特定动作在AR空间中发生。
在一些实施方式中,计算设备1050的触摸屏能够被渲染为AR空间中的触摸板。用户能够与计算设备1050的触摸屏交互。例如,交互在AR头戴式设备1090中被渲染作为AR空间中的渲染触摸板上的移动。渲染的移动可以控制AR空间中的虚拟对象。
在一些实施方式中,包括在计算设备1050上的一个或多个输出设备能够向AR空间中的AR头戴式设备1090的用户提供输出和/或反馈。输出和反馈能够是视觉的、战术的或音频的。输出和/或反馈能够包括但不限于振动、打开和关闭或闪烁和/或闪烁一个或多个灯或闪光灯、发出警报、播放铃声、播放歌曲和播放音频文件。输出设备能够包括但不限于振动马达、振动线圈、压电装置、静电设备、发光二极管(LED)、闪光灯和扬声器。
在一些实施方式中,计算设备1050可以表现为计算机生成的3D环境中的另一对象。由用户与计算设备1050的交互(例如,旋转、摇动、触摸触摸屏、跨触摸屏滑动手指)能够被解释为与AR空间中的对象的交互。在AR空间中的激光指示器的示例中,计算设备1050在计算机生成的3D环境中表现为虚拟激光指示器。当用户操纵计算设备1050时,AR空间中的用户看到激光指示器的移动。用户在计算设备1050上或AR头戴式设备1090上的AR环境中接收来自与计算设备1050的交互的反馈。用户与计算设备的交互可以被转换为与在AR环境中针对可控设备生成的用户界面的交互。
在一些实施方式中,计算设备1050可以包括触摸屏。例如,用户能够与触摸屏交互以与可控设备的用户界面交互。例如,触摸屏可以包括用户界面元素,诸如能够控制可控设备的属性的滑块。
计算设备1000旨在表示各种形式的数字计算机和设备,包括但不限于膝上型计算机、台式机、工作站、个人数字助理、服务器、刀片服务器、大型机和其他适当的计算机。计算设备1050旨在表示各种形式的移动设备,诸如个人数字助理、蜂窝电话、智能电话和其他类似的计算设备。这里所示的组件、它们的连接和关系以及它们的功能意味着仅仅是示例,并且不意味着限制本文档中描述和/或要求保护的主题的实施方式。
已经描述了多个实施例。然而,应当理解,在不脱离本说明书的精神和范围的情况下,可以进行各种修改。
另外,附图中描绘的逻辑流程不需要所示的特定顺序或顺序次序来实现期望的结果。另外,可以提供其他步骤,或者可以从所描述的流程中消除步骤,并且可以向所描述的系统添加或从所描述的系统移除其他组件。因此,其他实施例在所附权利要求的范围内。
除以上描述之外,还可以向用户提供控件,该控件允许用户做出关于本文中描述的系统、程序或特征是否以及何时可以使得能够收集用户信息(例如,关于用户的社交网络的信息、社交动作、或活动、职业、用户的偏好或用户的当前位置的信息)以及用户是否从服务器被发送内容或通信的选择。另外,可以在存储或使用某些数据之前以一种或多种方式处理某些数据,使得个人可识别信息被移除。例如,可以处理用户的身份,使得不能针对用户确定个人可识别信息,或者可以概括用户的地理位置,其中获得位置信息(诸如城市、邮政编码或州级),使得无法确定用户的特定位置。因此,用户可以控制关于用户收集什么信息、如何使用该信息以及向用户提供什么信息。
虽然已经如本文中所描述图示了所描述的实施方式的某些特征,但是本领域技术人员现在将想到许多修改、替换、改变和等同物。因此,应当理解,所附权利要求旨在覆盖落入实施方式的范围内的所有这样的修改和改变。应当理解,它们仅作为示例而非限制地呈现,并且可以进行形式和细节的各种改变。除了互斥的组合之外,本文中描述的装置和/或方法的任何部分可以以任何组合组合。本文中描述的实施方式可以包括所描述的不同实施方式的功能、组件和/或特征的各种组合和/或子组合。
Claims (21)
1.一种图像处理方法,包括:
使用图像传感器以第一分辨率捕获第一原始图像;
使用图像信号处理器将所述第一原始图像转换为数字处理图像;
基于处理条件,分析所述数字处理图像的至少一部分;
确定所述第一分辨率不满足所述处理条件;以及
触发在所述图像传感器处的以大于所述第一分辨率的第二分辨率的第二原始图像的捕获。
2.根据权利要求1所述的图像处理方法,其中,所述数字处理图像的所述至少一部分包括文本字符。
3.根据权利要求1或2所述的图像处理方法,其中,所述数字处理图像的所述至少一部分包括真实世界对象。
4.根据权利要求1至3中任一项所述的图像处理方法,其中,所述处理条件是每字符像素、高度或面积条件中的至少一个。
5.根据权利要求1至4中任一项所述的图像处理方法,其中,用于捕获所述第一原始图像的所述第一分辨率对应于在所述图像传感器处定义的仓。
6.根据权利要求1至4中任一项所述的图像处理方法,其中,所述第一分辨率是默认分辨率,所述第二分辨率是基于查找表中的条目来定义的。
7.根据权利要求1至6中任一项所述的图像处理方法,其中,所述数字处理图像是在计算设备处捕获的第一数字处理图像,
所述方法还包括:
将所述第二原始图像转换为第二数字处理图像;
确定所述第二分辨率满足所述处理条件;以及
响应于确定所述第二分辨率满足所述处理条件,将所述第二数字处理图像传送到所述计算设备的配套设备以供进一步处理。
8.一种存储指令的非暂时性机器可读有形介质,所述指令由一个或多个处理器读取和执行以执行图像处理方法,所述方法包括:
使用图像传感器以第一分辨率捕获第一原始图像;
使用图像信号处理器将所述第一原始图像转换为数字处理图像;
基于处理条件,分析所述数字处理图像的至少一部分;
确定所述第一分辨率不满足所述处理条件;以及
触发在所述图像传感器处的以大于所述第一分辨率的第二分辨率的第二原始图像的捕获。
9.根据权利要求8所述的方法,其中,所述数字处理图像的所述至少一部分包括文本字符。
10.根据权利要求8或9所述的方法,其中,所述数字处理图像的所述至少一部分包括真实世界对象。
11.根据权利要求8至10中任一项所述的方法,其中,所述处理条件是每字符像素、高度或面积条件中的至少一个。
12.根据权利要求8至11中任一项所述的方法,其中,用于捕获所述第一原始图像的所述第一分辨率对应于在所述图像传感器处定义的仓。
13.根据权利要求8至11中任一项所述的方法,其中,所述第一分辨率是默认分辨率,所述第二分辨率是基于查找表中的条目来定义的。
14.根据权利要求8至13中任一项所述的方法,其中,所述数字处理图像是在计算设备处捕获的第一数字处理图像,
所述方法还包括:
将所述第二原始图像转换为第二数字处理图像;
确定所述第二分辨率满足所述处理条件;以及
响应于确定所述第二分辨率满足所述处理条件,将所述第二数字处理图像传送到所述计算设备的配套设备以供进一步处理。
15.一种系统,包括:
处理器;以及
存储器设备,所述存储器设备通信地耦合到所述处理器并且其中存储有多个指令,所述多个指令在由所述处理器执行时使所述处理器:
使用图像传感器以第一分辨率捕获第一原始图像;
使用图像信号处理器将所述第一原始图像转换为数字处理图像;
基于处理条件,分析所述数字处理图像的至少一部分;
确定所述第一分辨率不满足所述处理条件;以及
触发在所述图像传感器处的以大于所述第一分辨率的第二分辨率的第二原始图像的捕获。
16.根据权利要求15所述的系统,其中,所述数字处理图像的所述至少一部分包括文本字符。
17.根据权利要求15或16所述的系统,其中,所述数字处理图像的所述至少一部分包括真实世界对象。
18.根据权利要求15至17中任一项所述的系统,其中,所述处理条件是每字符像素、高度或面积条件中的至少一个。
19.根据权利要求15至18中任一项所述的系统,其中,用于捕获所述第一原始图像的所述第一分辨率对应于在所述图像传感器处定义的仓。
20.根据权利要求15至18中任一项所述的系统,其中,所述第一分辨率是默认分辨率,所述第二分辨率是基于查找表中的条目来定义的。
21.根据权利要求15至20中任一项所述的系统,其中,所述数字处理图像是在计算设备处捕获的第一数字处理图像,
其中所述存储器设备还存储指令,所述指令在由所述处理器执行时使所述处理器:
将所述第二原始图像转换为第二数字处理图像;
确定所述第二分辨率满足所述处理条件;以及
响应于确定所述第二分辨率满足所述处理条件,将所述第二数字处理图像传送到所述计算设备的配套设备以供进一步处理。
Applications Claiming Priority (6)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US63/260,207 | 2021-08-12 | ||
US63/260,206 | 2021-08-12 | ||
US17/819,170 US20230049339A1 (en) | 2021-08-12 | 2022-08-11 | Low power machine learning using real-time captured regions of interest |
US17/819,170 | 2022-08-11 | ||
US17/819,154 | 2022-08-11 | ||
PCT/US2022/074915 WO2023019249A1 (en) | 2021-08-12 | 2022-08-12 | Dynamic capture parameter processing for low power |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117837162A true CN117837162A (zh) | 2024-04-05 |
Family
ID=90504458
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202280056211.XA Pending CN117837162A (zh) | 2021-08-12 | 2022-08-12 | 低功率的动态捕获参数处理 |
CN202280056182.7A Pending CN117837157A (zh) | 2021-08-12 | 2022-08-12 | 使用实时捕获的感兴趣区域的低功率机器学习 |
Family Applications After (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202280056182.7A Pending CN117837157A (zh) | 2021-08-12 | 2022-08-12 | 使用实时捕获的感兴趣区域的低功率机器学习 |
Country Status (1)
Country | Link |
---|---|
CN (2) | CN117837162A (zh) |
-
2022
- 2022-08-12 CN CN202280056211.XA patent/CN117837162A/zh active Pending
- 2022-08-12 CN CN202280056182.7A patent/CN117837157A/zh active Pending
Also Published As
Publication number | Publication date |
---|---|
CN117837157A (zh) | 2024-04-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9279983B1 (en) | Image cropping | |
US20230051671A1 (en) | Dynamic capture parameter processing for low power | |
US20230110964A1 (en) | Object selection based on eye tracking in wearable device | |
US11592907B2 (en) | Gesture-triggered augmented-reality | |
JP7400721B2 (ja) | 情報処理装置、情報処理方法及びプログラム | |
US20230259199A1 (en) | Selection of real-world objects using a wearable device | |
US20240135926A1 (en) | Voice-controlled settings and navigation | |
US11558711B2 (en) | Precision 6-DoF tracking for wearable devices | |
US11682045B2 (en) | Augmented reality advertisements on objects | |
US20220375172A1 (en) | Contextual visual and voice search from electronic eyewear device | |
US11796801B2 (en) | Reducing light leakage via external gaze detection | |
US20210405747A1 (en) | Power management for display systems | |
CN117837162A (zh) | 低功率的动态捕获参数处理 | |
US20230360264A1 (en) | Identifying a position of a controllable device using a wearable device | |
KR20240046552A (ko) | 저전력을 위한 동적 캡처 파라미터 프로세싱 | |
JP2024534769A (ja) | 実時間捕獲された関心領域を使用した低電力機械学習 | |
US20230377215A1 (en) | Adaptive color mapping based on behind-display content measured by world-view camera | |
US20240267632A1 (en) | Adaptive algorithm for power efficient eye tracking | |
US20240080547A1 (en) | Energy reduction in always-on intelligent sensing for wearable devices | |
WO2024191436A1 (en) | Extended reality headset with shared ocular region sensor | |
WO2024025595A1 (en) | High dynamic range (hdr) photography with split compute on a wearable device | |
JP2022102681A (ja) | 眼鏡型デバイス、プログラム、及び制御方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |