CN108475412A - 用于可穿戴设备的图像处理器 - Google Patents

用于可穿戴设备的图像处理器 Download PDF

Info

Publication number
CN108475412A
CN108475412A CN201680074529.5A CN201680074529A CN108475412A CN 108475412 A CN108475412 A CN 108475412A CN 201680074529 A CN201680074529 A CN 201680074529A CN 108475412 A CN108475412 A CN 108475412A
Authority
CN
China
Prior art keywords
module
distortion
renderer
shape
shape function
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.)
Granted
Application number
CN201680074529.5A
Other languages
English (en)
Other versions
CN108475412B (zh
Inventor
F·尤恩
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Intel Corp
Original Assignee
Intel Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Intel Corp filed Critical Intel Corp
Publication of CN108475412A publication Critical patent/CN108475412A/zh
Application granted granted Critical
Publication of CN108475412B publication Critical patent/CN108475412B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T11/002D [Two Dimensional] image generation
    • G06T11/60Editing figures and text; Combining figures or text
    • GPHYSICS
    • G02OPTICS
    • G02BOPTICAL ELEMENTS, SYSTEMS OR APPARATUS
    • G02B27/00Optical systems or apparatus not provided for by any of the groups G02B1/00 - G02B26/00, G02B30/00
    • G02B27/01Head-up displays
    • G02B27/017Head mounted
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T3/00Geometric image transformations in the plane of the image
    • G06T3/08Projecting images onto non-planar surfaces, e.g. geodetic screens
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T5/00Image enhancement or restoration
    • G06T5/80Geometric correction
    • GPHYSICS
    • G02OPTICS
    • G02BOPTICAL ELEMENTS, SYSTEMS OR APPARATUS
    • G02B27/00Optical systems or apparatus not provided for by any of the groups G02B1/00 - G02B26/00, G02B30/00
    • G02B27/01Head-up displays
    • G02B27/017Head mounted
    • G02B2027/0178Eyeglass type

Landscapes

  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Optics & Photonics (AREA)
  • Controls And Circuits For Display Device (AREA)
  • Image Processing (AREA)
  • Geometry (AREA)
  • User Interface Of Digital Computer (AREA)

Abstract

描述了用于在不规则表面上产生图像的解决方案。从要在不规则表面上显示的图像标识图形对象。根据至少一个形状函数使对象失真以补偿不规则表面中的不规则性。对象的之前失真的实例可被添加至失真补偿图像。

Description

用于可穿戴设备的图像处理器
优先权申请
本申请要求2015年12月23日提交的第14/757,868号美国专利申请的优先权的权益,该申请通过引用整体结合于此。
技术领域
本文所描述的实施例一般涉及图像处理器,并且更具体地,涉及用于处理图形信息以供在具有可变曲率的表面上(诸如,智能眼镜显示器)显示的图像处理器。
背景技术
智能眼镜中的图形渲染系统可尝试在透镜上显示图像之前补偿透镜的曲率。没有此补偿,图像在智能眼镜上可能表现为失真。
在典型设计中,处理器(可位于智能眼镜本地或位于远程(诸如,在云中或在同伴智能电话中))执行计算密集型失真补偿。在补偿处理器位于远程的情形中,补偿处理器的输出(失真补偿图像)被发送至智能眼镜。此基于远程的处理已被重定位至同伴电话中的远程补偿处理器或别处,因为相比之下智能眼镜上的本地计算能力趋向于是有限的。尽管如此,即使对于同伴电话,对失真的补偿也不是微不足道的计算问题。
用于失真补偿的先前解决方案涉及经由线性变换(诸如,透视变换)对整个图像的直接像素内插。虽然透视变化可合理地描述线性空间,但其可能不能很好的拟合透镜的曲率,因为透镜需要对其弯曲表面的较高阶的描述。
附图说明
在附图中(这些附图不一定是按比例绘制的),类似的数字可描述在不同视图中的类似的组件。具有不同的字母后缀的相同的数字可以表示类似组件的不同实例。在附图中的图表中通过示例而非限制地图示一些实施例。
图1是例示出根据一些实施例的将图像显示至一副智能眼镜的透镜上的一般操作,以及可与智能眼镜一起工作的可任选分布式处理设备的图。
图2是例示出根据实施例的计算设备(诸如,图1中所描绘的计算设备中的一者或多者)的示例性系统架构的框图。
图3是例示出计算设备(诸如图2中描绘的计算设备)的示例性硬件和软件架构的图,其中硬件组件和软件组件之间的各种接口被示出。
图4是例示出根据一些实施例的用于渲染要在不规则表面上显示的对象的系统的框图。
图5是例示出根据一些实施例的拉格朗日父元素至不规则拉格朗日元素的变换的图。
图6和7是例示出根据一些实施例的可被离散化的拉格朗日父元素的图。
图8例示出根据一些实施例的文本对象的变换的示例。
图9是例示出根据一些实施例的使用可变形网格为要被显示的视觉对象建模的过程的图。
图10是根据一些实施例的纠正用于在具有不规则几何结构的表面上显示的图像的过程的示例的流程图。
具体实施方式
实施例的方面针对用于要在弯曲表面上显示的图像的失真补偿。虽然常规途径(诸如上文总结的那些)例如在每次刷新显示器时对图像的所有像素进行操作,但本实施例中的一些认识到这种常规蛮力途径是不必要的,因为仅一些视觉元素而非整个图像可经受更新。例如,当屏幕上时钟更新时间时,屏幕元素的剩余部分(诸如,位置、即将到来的日历约会等)保持不变。
在一些实施例中,屏幕渲染基于可变形网格来计算。相应地,视觉内容被建模为具有特定变形特性的可变性对象。在一些示例中,与每个对象相关联的变形可由表示对象的拉格朗日(Lagrange)元素的形状函数来描述。每个拉格朗日元素表示二阶非刚性表面。因此,对变形的此类建模比例如使用仿射或透视变换的线性模型更准确地拟合透镜的失真。
在相关实施例中,可变形对象被独立地更新。有利地,对象的更新避免了必须计算整个图像的更新,因此显著地减少了整体计算负荷。
图1是例示出根据一些实施例的将图像显示至一副智能眼镜100的透镜上的一般操作的图。如所描绘的,智能眼镜100包括显示投影仪102,该显示投影仪102将图像投射至透镜的内表面104上。内表面104具有包括不同曲率程度的复杂形状。图像106以失真补偿格式通过显示投影仪102被投射至透镜表面104上,如所例示的,以被用户110感知为非失真图像108。
应该注意的是,智能眼镜100可采用各种不同的形状因子,并且一般可包括各种其他组件,包括计算硬件、功率电路、用户输入和各种感测/数据捕捉设备(诸如,相机、麦克风、触摸传感器等)以及无线联网接口设备等等,下文会更详细地描述其中的一些。
智能眼镜100可包括用于经由无线链路122与同伴智能电话120通信的无线接口。例如,可支持蓝牙低能量(BLE)连接。在一些相关实施例中,智能眼镜100和同伴智能电话120可使用分布式计算技术来将某些计算操作下放至智能电话120,该智能电话120一般比智能眼镜100具有更大的计算能力和电池容量。在其他实施例中,智能眼镜100可经由无线链路132无线地连接至远程服务130,该远程服务130可以是基于云的计算模型。无线链路132可无线连接至基站,诸如Wi-Fi基站或长期演进(LTE)e-节点B(为清楚起见两者均未示出),该基站进而经由回程或因特网服务提供者的广域网(WAN)来连接至服务提供者130。
图2是例示出智能眼镜100或智能电话120(其中的每一个一般可被视为计算设备)的示例性系统架构200的框图。取决于智能眼镜100或智能电话120计算设备的形状因子和性质,并非以下描述的每个组件都可以存在。中央处理器单元(CPU)202包括一个或多个微处理器,计算设备100的整体功能在这一个或多个微处理器上被执行。CPU 202由与系统链路203电接口的硬件构成,系统链路203携带各组件之间的数据和控制信令。如所例示的,系统链路203与系统架构200的其他组件中的每一个组件类似地接口。存储器204包括工作存储器空间,并且由诸如同步动态随机存取存储器(SDRAM)之类的合适的高速存储器设备构成。在所例示的实施例中,CPU 202可使用高速接口205访问存储器204。非易失性存储器206通过使用只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、闪存或其他合适的非易失性存储技术来构造。非易失性存储器206存储由CPU 202、并且在一些情形中由一个或多个其他组件中存在的处理器执行的系统和应用软件。
外部非易失性存储器207在可用时包括诸如安全数字(SD)卡槽之类的接口,该安全数字(SD)卡槽可接受可移除存储介质以用作附加的非易失性数据存储。
显示器208包括显示器104和用于将显示器104与系统接口的电路,以及视频驱动电路和(在智能眼镜100的情形中的)显示投影设备。声音210包含用于将音频输出驱动至扬声器或耳机的电路以及用于与系统接口的电路。用户输入212包含用于与输入设备(诸如,轻击手势传感器或触摸屏输入设备)接口的电路。通信块214表示通信电路和用于将通信电路与系统接口的电路。通信块214可包括用于通过蜂窝网络(诸如根据LTE、LTE-高级、5G或全球移动通信系统(GSM)系列标准设计的网络)进行通信的无线电。同样,通信电路214可包括Wi-Fi通信无线电(根据IEEE 801.11系列标准)或蓝牙无线电电路(根据IEEE 802.15系列标准)。实时时钟216包括提供保持当前日期和时间的时钟并将时钟接口至系统的电路。
数据捕捉设备220与计算设备200集成。根据各实施例,数据捕捉设备220包括多个不同类型的感测换能器及其相关联的处理和接口电路,诸如加速度计,以及根据各实施例的相机、GPS和生物测量传感器。
与每个对应换能器相关联的处理电路可包括用于接收来自对应换能器的原始模拟信号并准备用于数字化的模拟信令的放大、缓冲、滤波或其他信号调节电路;用于执行采样、量化和数字编码,并且在一些情形中执行进一步的处理以产生表示以CPU 202可读取的形式由换能器测量的物理现象的数字信号的模拟至数字转换电路。
图3是例示出计算设备(诸如图2中描绘的计算设备)的示例性硬件和软件架构的图,其中硬件组件和软件组件之间的各种接口被示出。如HW所指示的,硬件组件在分隔线下方被表示,而由SW表示的软件组件驻留在分隔线之上。在硬件侧,处理设备302(其可包括一个或多个微处理器、数字信号处理器等,每一个具有一个或多个处理器核)与存储器管理设备304和系统互连306接口。存储器管理设备304提供正被执行的进程使用的虚拟存储器与物理存储器之间的映射。存储器管理设备304可以是中央处理单元的集成部分,该中央处理单元还包括处理设备302。
互连306包括背板(诸如存储器、数据和控制线)以及与输入/输出设备(例如专有总线、PCI、USB等)的接口。存储器308(例如,动态随机存取存储器-DRAM)和诸如闪存(例如,电可擦除只读存储器-EEPROM、NAND闪存、NOR闪存等)之类的非易失性存储器309经由存储器控制器310与存储器管理设备304和互连306接口。在一些实施例中,此架构可支持由外围设备进行的直接存储器访问(DMA)。I/O设备(包括视频和音频适配器、非易失性存储、外部外围链路(诸如USB、蓝牙等)),以及网络接口设备(诸如经由Wi-Fi或LTE系列接口进行通信的那些)被共同表示为I/O设备和联网312,该I/O设备和联网312经由对应的I/O控制器314与互连306接口。
在软件侧,预操作系统(pre-OS)环境316在初始系统启动时被执行并且负责启动操作系统的引导。Pre-OS环境316的一个传统示例是系统基本输入/输出系统(BIOS)。在当今的系统中,可实现统一可扩展固件接口(UEFI)。操作系统(OS)318提供内核,该内核控制硬件设备、管理存储器中程序的存储器访问、协调任务并促进多任务、组织要存储的数据、指派存储器空间和其他资源、将程序二进制代码加载到存储器、启动应用程序的执行而后与用户和硬件设备进行交互并且检测并响应各种定义的中断。同样,操作系统318提供设备驱动程序以及各种公共服务(诸如促进与外围设备和联网接口的那些服务),这些服务为应用程序提供抽象化,以便应用程序不需要负责处理此类公共操作的细节。操作系统318附加地提供图形用户界面(GUI),该图形用户界面(GUI)促进与显示器、声音以及触摸和动作输入设备的交互。
运行时系统320实现执行模型的部分,包括诸如在函数调用之前将参数放入栈、长期存储输入/输出(I/O)的行为以及并行执行相关行为之类的操作。运行时系统320还可执行支持服务,诸如类型检查、调试或者代码生成和优化。
库322包括为应用程序提供进一步抽象化的程序功能的集合。例如,这些包括共享库、动态链接库(DLL)。库322可集成至操作系统318、运行时系统320,或者可以是附加特征,或者甚至是远程主存的。库322定义了应用程序接口(API),应用程序324可通过该应用程序接口(API)进行各种功能调用以调用由操作系统318提供的服务。时常被称为应用的应用程序324是执行对用户有用的任务的那些程序,这些任务超过协调计算设备本身的基础可操作性的较低级系统程序所执行的任务。
如本文所描述的,示例可包括逻辑或多个组件、模块或引擎或者可在逻辑或多个组件、模块或引擎上操作,为了一致性而将这些逻辑或多个组件、模块或引擎称为模块,但应该理解这些术语可互换使用。各模块可以是通信地耦合至一个或多个处理器以实现本文中所描述的操作的硬件、软件或固件。各模块可以是硬件模块,并且如此,各模块可被认为是能够执行指定操作的有形实体且可按特定方式来配置或布置。在示例中,能以指定方式将电路(例如,内部地或者相对于诸如其他电路之类的外部实体)布置为模块。
在各示例中,模块可由一个或多个通用处理器、一个或多个专用图形处理器、一个或多个ASIC的电路或其他硬件电路形成,该电路可以是完全硬连线的,或者可由程序指令编程的,该程序指令在底层处理硬件上被执行时形成一个或多个模块。
在示例中,一个或多个计算机系统(例如,独立的客户机或服务器计算机系统)或一个或多个硬件处理器的全部或部分可由固件或软件(例如,指令、应用部分、或者应用)配置为操作用于执行所指定操作的模块。在示例中,软件可驻留在机器可读介质上。在示例中,软件在由模块的底层硬件执行时,使此硬件执行指定的操作。
因此,术语硬件模块被理解为涵盖有形实体,该有形实体是物理地构建、具体地配置(例如,硬连线)、或者临时地(例如,瞬态地)配置(例如,编程)从而以所指定的方式操作或者执行本文中所描述的任何操作的部分或全部的实体。参看图3,例如,只要包括来自HW侧的至少一个块,模块就可包括所描绘块的一个或任何组合。
考虑到其中临时配置模块的示例,这些模块中的每一个不需要在任何一个时刻进行例示。例如,在模块包括使用软件而配置的通用硬件处理器的情况下,通用硬件处理器可以在不同时间被配置为相应的不同模块。软件可相应地配置硬件处理器,例如以便在一个时间实例处构成特定的模块,并且在不同的时间实例处构成不同的模块。
图4是例示出根据一些实施例的用于渲染来自要在不规则表面上显示的图像401的对象的系统的框图。呈现器模块402配置有硬件和软件组件,并且可操作用于从图像401标识要被显示的图形对象,并且用于确定要被显示的对象是否要被新近处理以供渲染和变形,或者对象的合适的之前处理的实例是否可被重新使用。
图形401可由呈现器模块402标识为具有阿尔法通道的子画面。图像401的阿尔法通道映射出子画面对象的形状。在不存在阿尔法通道时,呈现器模块402可将图形对象标识为光栅图像并且图形对象的边界框可以是光栅图像的矩形框架。例如,光栅图像可作为背景光栅图像被添加至矩形网格渲染器406。接下来,文本对象或子画面可被传递至矩形网格渲染器406并覆盖背景光栅图像。因为图形对象(例如,子画面或文本)与图像的背景部分被分开处理,所以其可在之后的时间点由呈现器模块402重新定位或移除。
根据一些实施例,矩形网格渲染器模块406配置有硬件和软件组件,并且可操作用于在计算上表示由个体可变形元素组成的矩形网格上的对象。对象渲染器模块420配置有硬件和软件组件,并且可操作用于基于由形状函数生成器410产生的一个或多个形状函数来将以矩形网格表示的对象的正向变换应用于变形网格。
对象覆盖模块408配置有硬件和软件组件,并且可操作用于将某些之前变形的对象覆盖至由对象渲染器模块420产生的变形网格。
表面表征模块420配置有硬件和软件组件,并且可操作用于产生不规则表面(例如,表面104)的曲率和其他几何特征的表示,形状函数生成器401可从中生成一系列形状函数。
形状函数(下文会更详细地描述)通过对象所映射的网格形状的变化来实现对象变形。
投影仪驱动模块420配置有硬件和软件组件,并且可操作用于基于对象渲染器模块420和对象覆盖模块408的输出来产生表示要被显示至表面104上的变形屏幕图像的视频显示信号。
在一些实施例中,用于智能眼镜100的图形渲染被划分成对两个不同表面上的图形元素的处理:(1)规则元素的矩形网格,被称作拉格朗日父元素Km;以及(2)不规则元素的变形网格,被称作拉格朗日元素Dm。拉格朗日父元素Km是独立于眼镜100的渲染表面104的表面上的矩形渲染元素并且很好地拟合至笛卡尔坐标系。相比之下,不规则拉格朗日元素Dm取决于智能眼镜100的表面104的曲率。此划分帮助在渲染期间将视觉元素/对象的合成(即,内容)与像素插值分开。
在相关实施例中,划分创建用于图形合成的眼镜/设备独立渲染空间以便于用于图形操纵和处理的例程跨不同眼镜和可穿戴产品可以是可移植的。在附加相关实施例中,划分支持聚焦于将图形元素从规则矩形空间映射至由可变形网格表示的高阶非刚性空间的空间变换的性能优化。例如,在某些实施例中可采用单指令多数据(SIMD)性能优化。
在相关实施例中,呈现器模块402查询之前渲染的可变形对象(之前已被渲染并被高速缓存在渲染对象池404中),例如固定位置的标志。
图5是例示出根据一些实施例的拉格朗日父元素至不规则拉格朗日元素的变换的图。在示例实施例中,渲染系统中使用的基础元素是九节点拉格朗日元素,如图6中所描绘的。在此示例中,父元素Km 502是规则形状的矩形,其在失真后变成不规则变形形状Dm 504。
图6和7是例示出根据一些实施例的可被离散化的拉格朗日父元素的图。在图6中,父元素Km 502是九节点元素。图7例示出父元素Km 502的宽度和高度的重新采样(以1/15的采样间隔)的结果,产生了41像素乘41像素尺寸的画布,如702所指示的。
形状函数生成器模块410产生描述Dm 504的变形的形状函数。拉格朗日元素内的函数可通过使用形状函数从其节点值被内插。作为示例性示例,九节点拉格朗日元素(诸如,元素502)的形状函数由以下各式给出:
在以上示例等式中,变量S1和S2是父元素Km中的固有坐标。形状函数在与其相关的节点处具有统一值。其还具有以下性质:元素内任何点处的和等于统一值。
任何特定元素类型的有效性可取决于形状函数能够表示智能眼镜100的表面104的局部曲率的程度。在一些实施例中,形状函数生成器410能够表示二阶曲率因此其以高准确度给出透镜曲率的描述。
为了促进对之前渲染的视觉对象的重新使用,一些实施例使用局部敏感散列法(LSH)来减少形状函数数据的维度。例如,用于每个网格元素的形状函数可被减少至10个代表性形状函数集合中的一个。在示例中,每个代表性形状函数与从0至9的散列值相关联。
图8例示出根据一些实施例的文本对象的变换的示例。如802所指示的,具有规则形状的视觉对象(在本示例中是单词“SUNNY”)根据基于以上等式的形状函数被变换成基于对象的固有形状的,如通过所应用的变形被修改的可变形对象804。
在一些实施例中,每个可变形对象仅与一个形状函数(或实施例中的形状函数的单个散列值(利用渲染对象池404使用高速缓存技术))相关联。如果视觉对象的失真太大,则视觉对象将被分解成两个或更多个可变形对象。在本示例中,单个单词“SUNNY”可被分解成第一部分“SU”和第二部分“NNY”。在相关实施例中,如果“SUNNY”被渲染的失真程度不能由一个单个形状函数来准确表示,则此问题可通过用多个可变形对象来表示视觉对象(例如,“SUNNY”)来解决。这可通过对失真程度进行评估,并将此评估与定义的失真阈值进行比较而在计算上被确定。
图9是例示出根据一些实施例的使用可变形网格为要被显示的视觉对象建模的过程的图。如所描绘的,网格902是由多个拉格朗日父元素(被表示为Km502)组成的矩形网格。每个父元素Km502被设计成近似连续域上的函数。
在所描绘的示例实施例中,不规则元素Dm504的变形网格904被视为从具有规则父元素Km502的父元素网格变形而来。变形表示对所投射视觉对象的透镜失真的补偿。
在相关实施例中,坐标可通过使用同一形状函数从节点值内插。例如,如图9中所例示的,不规则元素Dm504内的坐标x1和x2由下式来定义:
通过采用此坐标映射函数,此实施例可唯一地标识眼镜100的透镜表面104上的坐标(x1,x2),其中与坐标(S1,S2)处的矩形父元素相对应的像素值可被放置。
在一些实施例中,可执行一次表面表征来为可变形网格902中的每个元素计算形状函数410。形状函数410可通过标识透镜表面104上的九节点定位的放置来导出。表面表征操作可在制造商工厂被执行,并且如果使用同一透镜以及同一投影仪102和投影布置(例如,相对于透镜表面104的投影仪102定位),则形状函数410对于眼镜100而言可以是通用的。
在相关实施例中,如果底层透镜曲率显著变化(例如,超过阈值),则用于不同显示位置的形状函数410是不同的。例如,如果在透镜表面104上存在用于显示屏幕的多于一个的位置,则每个位置可与对应的形状函数相关联,因为透镜不同部分的曲率可变化。
在一些实施例中,对象渲染器420配置有硬件和软件组件,并且可操作用于使用从表面表征模块412接收的形状函数410将矩形网格(例如,网格902)变换成变形网格(例如,网格904)。
表1
为了减少此操作的整体计算负荷,一些实施例当在渲染对象池404中发现匹配对象时重新使用之前渲染的可变形对象。表1表示根据实施例的渲染对象池404的示例数据库的示例。为了发现匹配对象,对渲染对象池404的查询寻找两者(形状函数散列值和感兴趣对象的描述)的匹配。
例如,参看上述表1,为了根据具有形状函数散列值6的形状函数来执行渲染文本字符串“ABC”以供显示的任务,可变形对象2、4、5被发现为匹配对象。取代再次计算变形对象ABC,呈现器模块402仅仅是从渲染对象池404取出可变形对象2、4和5,在此情形中,那些对象位于存储器地址0x3E12B35E、0x3E12B36D和0x3E12B37E处。
图10是根据一些实施例的纠正用于在具有不规则几何结构的表面上显示的图像的过程1000的示例的流程图。示例过程1000可由图4的系统执行,或由具有不同架构的系统执行。值得注意的是,过程1000是自主操作的(例如,没有用户交互的)机器实现过程,然而过程的操作可以是用户启动的或自主启动的。此外,重要的是注意过程1000是可如所描述的那样实现的实施例,此外,在各实施例中可实现过程的部分同时省略其他部分。以下附加注释和示例部分详细介绍了构想的各种组合,但不限于此。还应该注意的是,在各实施例中,某些处理操作能以与图10中所描绘的不同排序来执行。
在1002处,访问要被显示的图像数据。在各实施例中,图像显著地表征图标或文本信息。在1004处,标识特定图形对象。这些可以是字母、单词、图标、子画面、或者更一般地,具有可标识边缘或边界的对比形状。在相关实施例中,可从每个单个图像中标识多个不同对象。
在1006处,基于显示图像内的图形对象的位置,确定用于使对象失真的形状函数。此确定可经由查找操作(读取将各位置映射至对应形状函数(在表面表征操作中之前已被确定)的表)来在计算上实现。相应地,在一些实施例中,可变形对象被定义为失真补偿图形对象。可变形对象可通过将原始视觉对象放入拉格朗日父元素的框架中并经由可应用形状函数应用正向变换来从原始图形对象导出。此处理操作可在操作1012处被执行。值得注意的是,处理是资源密集的。
在相关实施例中,在启动处理以将图形对象变换成其失真版本之前,操作1008检查同一对象是否之前已通过所确定形状函数被处理过。根据判决1010,如果预处理对象不可用,则操作1012根据形状函数执行形状失真处理。否则,如果预处理对象可用,则过程分支至操作1014,其访问预处理对象,并将其添加至输出图像。
附加注释和示例:
示例1是用于在不规则表面上产生图像的系统,该系统包括:呈现器模块,该呈现器模块用于从用于在不规则表面上显示的图像标识图形对象;对象渲染器模块,该对象渲染器模块用于根据至少一个形状函数使对象失真,其中对象的失真补偿了不规则表面中的不规则性;以及对象覆盖模块,该对象覆盖模块用于将对象的之前失真的实例添加至失真补偿图像;其中呈现器模块进一步用于确定图形对象在由对象覆盖模块处理之前是否用于由对象渲染器模块处理。
在示例2中,示例1的主题任选地包括,进一步包括:计算硬件,包括处理器、数据存储以及输入/输出设施,数据存储包含指令,该指令在被执行时,使计算硬件实现呈现器模块、对象渲染器模块以及对象覆盖模块。
在示例3中,示例1-2中任一项或多项的主题任选地包括,其中呈现器模块、对象渲染器模块以及对象覆盖模块中的至少一者以硬连线逻辑来实现。
在示例4中,示例1-3中的任一项或多项的主题任选地包括,进一步包括:矩形网格渲染器模块,该矩形网格渲染器模块用于在计算上表示由个体可变形元素组成的矩形网格上的对象,其中呈现器模块用于将图形对象传递至矩形网格渲染器模块。
在示例5中,示例4的主题任选地包括,其中个体可变形元素是拉格朗日父元素。
在示例6中,示例4-5中任一项或多项的主题任选地包括,其中对象渲染器模块用于基于至少一个形状函数的应用将个体可变形元素中的至少一些变换成不规则拉格朗日元素。
在示例7中,示例1-6中的任一项或多项的主题任选地包括,进一步包括:渲染对象池,该渲染对象池包括对象的之前失真的实例的数据库,该渲染对象池响应于标识原始对象以及应用于那些原始对象的失真类型的查询。
在示例8中,示例7的主题任选地包括,其中渲染对象池用于存储与对象相关联的形状函数的散列值,那些形状函数已被应用于所述对象以使那些对象失真。
在示例9中,示例1-8中任一项或多项的主题任选地包括,其中对象渲染器模块用于将多个不同形状函数应用于图形对象,该多个不同形状函数与用于在不规则表面上显示的图形对象的多个不同定位相对应。
在示例10中,示例1-9中任一项或多项的主题任选地包括,其中对象渲染器模块用于响应于所应用失真程度超过定义阈值来将图形对象划分成多个图形对象。
在示例11中,示例1-10中任一项或多项的主题任选地包括,其中对象渲染器模块用于将形状函数应用于图形对象,该形状函数至少是二阶形状函数。
在示例12中,示例1-11中任一项或多项的主题任选地包括,其中系统进一步包括被布置成将图像投射至不规则表面上的显示投影仪。
在示例13中,示例1-12中任一项或多项的主题任选地包括,其中系统被合并为可穿戴计算设备的一部分。
在示例14中,示例1-13中任一项或多项的主题任选地包括,其中系统被合并为智能电话的一部分。
在示例15中,示例1-14中任一项或多项的主题任选地包括,其中系统可操作用于被通信耦合至远程计算设备,该远程计算设备包括被布置成将图像投射至不规则表面上的显示投影仪。
示例16是用于在不规则表面上产生图像的方法,该方法包括:由计算设备从用于在不规则表面上显示的第一图像标识图形对象;由计算设备确定用于使图形对象失真以补偿不规则显示表面中的不规则性的形状函数;由计算设备在第一失真的预处理实例不可用的情况下根据形状函数处理图形对象的第一失真;由计算设备在预处理实例可用的情况下访问第一失真的预处理实例;以及由计算设备将第一失真覆盖至输出图像以用于在不规则表面上显示。
在示例17中,示例16的主题任选地包括,其中处理第一失真包括在计算上表示由个体可变形元素组成的矩形网格上的图形对象。
在示例18中,示例17的主题任选地包括,其中个体可变形元素是拉格朗日父元素。
在示例19中,示例17-18中任一项或多项的主题任选地包括,其中处理第一失真包括基于形状函数的应用将个体可变形元素中的至少一些变换成不规则拉格朗日元素。
在示例20中,示例16-19中任一项或多项的主题任选地包括,其中形状函数至少是二阶形状函数。
在示例21中,示例16-20中的任一项或多项的主题任选地包括,进一步包括:存储对象的预处理实例的数据库,包括第一失真。
在示例22中,示例16-21中的任一项或多项的主题任选地包括,进一步包括:根据用于在不规则表面上显示的图形对象的不同附加定位来确定用于使图形对象失真的多个不同附加形状函数。
在示例23中,示例16-22中的任一项或多项的主题任选地包括,进一步包括:响应于所应用失真的程度超过定义阈值来将图形对象划分成多个图形对象。
在示例24中,示例16-23中的任一项或多项的主题任选地包括,进一步包括:将输出图像投射至不规则表面。
在示例25中,示例16-24中任一项或多项的主题任选地包括,其中方法由可穿戴设备自主执行。
在示例26中,示例16-25中任一项或多项的主题任选地包括,其中方法由智能电话执行。
示例27是包括指令的至少一种计算机可读介质,指令在计算硬件上执行时使计算硬件实现:呈现器模块,该呈现器模块用于从用于在不规则表面上显示的图像标识图形对象;对象渲染器模块,该对象渲染器模块用于根据至少一个形状函数使对象失真,其中对象的失真补偿了不规则表面中的不规则性;以及对象覆盖模块,该对象覆盖模块用于将对象的之前失真的实例添加至失真补偿图像;其中呈现器模块进一步用于确定图形对象在由对象覆盖模块处理之前是否用于由对象渲染器模块处理。
在示例28中,示例27的主题任选地包括,其中指令进一步使计算硬件实现:矩形网格渲染器模块,矩形网格渲染器模块用于在计算上表示由个体可变形元素组成的矩形网格上的对象,其中呈现器模块用于将图形对象传递至矩形网格渲染器模块。
在示例29中,示例27-28中的任一项或多项的主题任选地包括,其中个体可变形元素是拉格朗日父元素。
在示例30中,示例29的主题任选地包括,其中对象渲染器模块用于基于至少一个形状函数的应用将个体可变形元素中的至少一些变换成不规则拉格朗日元素。
在示例31中,示例27-30中的任一项或多项的主题任选地包括,其中指令进一步使计算硬件实现:渲染对象池,该渲染对象池包括对象的之前失真的实例的数据库,该渲染对象池响应于标识原始对象以及应用于那些原始对象的失真类型的查询。
在示例32中,示例31的主题任选地包括,其中渲染对象池用于存储与对象相关联的形状函数的散列值,那些形状函数已被应用于所述对象以使那些对象失真。
在示例33中,示例27-32中任一项或多项的主题任选地包括,其中对象渲染器模块用于将多个不同形状函数应用于图形对象,该多个不同形状函数与用于在不规则表面上显示的图形对象的多个不同定位相对应。
在示例34中,示例27-33中任一项或多项的主题任选地包括,其中对象渲染器模块用于响应于所应用失真程度超过定义阈值来将图形对象划分成多个图形对象。
在示例35中,示例27-34中任一项或多项的主题任选地包括,其中对象渲染器模块用于将形状函数应用于图形对象,该形状函数至少是二阶形状函数。
在示例36中,示例27-35中任一项或多项的主题任选地包括,其中至少一种计算机可读介质被合并为可穿戴计算设备的一部分。
在示例37中,示例27-36中任一项或多项的主题任选地包括,其中至少一种计算机可读介质被合并为智能电话的一部分。
示例38是用于在不规则表面上产生图像的系统,该系统包括:用于从用于在不规则表面上显示的第一图像标识图形对象的装置;用于确定用于使图形对象失真以补偿不规则显示表面中的不规则性的形状函数的装置;用于在第一失真的预处理实例不可用的情况下根据形状函数处理图形对象的第一失真的装置;用于在预处理实例可用的情况下访问第一失真的预处理实例的装置;以及用于将第一失真覆盖至输出图像以用于在不规则表面上显示的装置。
在示例39中,示例38的主题任选地包括,其中用于处理第一失真的装置包括用于在计算上表示由个体可变形元素组成的矩形网格上的图形对象的装置。
在示例40中,示例39的主题任选地包括,其中个体可变形元素是拉格朗日父元素。
在示例41中,示例39-40中任一项或多项的主题任选地包括,其中用于处理第一失真的装置包括用于基于形状函数的应用将个体可变形元素中的至少一些变换成不规则拉格朗日元素的装置。
在示例42中,示例38-41中任一项或多项的主题任选地包括,其中形状函数至少是二阶形状函数。
在示例43中,示例38-42中的任一项或多项的主题任选地包括,进一步包括:用于存储对象的预处理实例的数据库的装置,该数据库包括第一失真。
在示例44中,示例38-43中的任一项或多项的主题任选地包括,进一步包括:用于根据用于在不规则表面上显示的图形对象的不同附加定位来确定用于使图形对象失真的多个不同附加形状函数的装置。
在示例45中,示例38-44中的任一项或多项的主题任选地包括,进一步包括:用于响应于所应用失真的程度超过定义阈值来将图形对象划分成多个图形对象的装置。
在示例46中,示例38-45中的任一项或多项的主题任选地包括,进一步包括:用于将输出图像投射至不规则表面的装置。
在示例47中,示例38-46中任一项或多项的主题任选地包括,其中系统是可穿戴计算设备的一部分。
在示例48中,示例38-47中任一项或多项的主题任选地包括,其中系统是智能电话的一部分。
在示例49中,用于在不规则表面上产生图像的系统包括用于执行根据示例16-26中任一项的主题的装置。
在示例50中,至少一种计算机可读介质包含指令,该指令在计算系统上被执行时,使计算系统执行根据示例16-26中任一项的主题。
以上具体实施方式包括对附图的引用,附图形成具体实施方式的部分。附图通过图示来示出可实践的特定实施例。这些实施例在本文中也被称为“示例”。此类示例可包括除所示出或所描述的那些元件以外的元件。然而,还构想了包括所示出或所描述的元件的示例。此外,还构想了使用所示出或所描述的那些元件的任何组合或排列的示例,或参照本文中所示出或所描述的特定示例(或其一个或多个方面),或参照本文中所示出或所描述的其他示例(或其一个或多个方面)。
在此文档中引用的出版物、专利和专利文档通过引用被整体结合在本文中,就好像通过引用单独地被结合那样。在本文档与通引用结合在的那些文档之间不一致的用法的情况下,所结合的(诸)引用文档中的用法是对此文档的用法的补充;对于不可调和的不一致性,此文档中的用法占主导。
在此文档中,如在专利文档中常见的那样,使用术语“一(a或an)”以包括一个或多于一个,这独立于“至少一个”或“一个或多个”的任何其他实例或用法。在此文档中,使用术语或摂来指非排他性的或摂,使得除非另外指示,“A或B”包括“A但非B”、“B但非A”、以及“A和B”。在所附权利要求书中,术语“包括(including)”和“其中(in which)”被用作相应的术语“包括(comprising)”和“其中(wherein)”的普通英语等价词。此外,在所附权利要求书中,术语“包括”和“包含”是开放式的,也就是说,在权利要求中除此类术语之后列举的那些元件之外的元件的系统、设备、制品或过程仍被视为落在那项权利要求的范围内。此外,在所附权利要求书中,术语“第一”、“第二”和“第三”等仅被用作标记,并且不旨在表明对它们的对象的数字顺序。
以上描述旨在是说明性的,而非限制性的。例如,可结合其他实施例来使用以上所描述的示例(或者其一个或多个方面)。诸如,本领域普通技术人员中的一个可通过回顾以上描述来使用其他实施例。摘要允许读者快速地确定本技术公开的性质。提交该摘要应当理解,该摘要将不用于限制或解释权利要求的范围或含义。此外,在以上具体实施方式中,各种特征可共同成组以使本公开流畅。然而,权利要求可以不陈述本文中所公开的每一特征,因为实施例可以表征所述特征的子集。此外,实施例可以包括比特定示例中所公开的特征更少的特征。因此,所附权利要求书由此被结合到具体实施方式中,一项权利要求作为单独的实施例而独立存在。本文中公开的实施例的范围应当参照所附权利要求书以及此类权利要求所赋予权利的等价方案的完整范围来确定。

Claims (26)

1.一种用于在不规则表面上产生图像的系统,所述系统包括:
呈现器模块,所述呈现器模块用于从用于在所述不规则表面上显示的图像标识图形对象;
对象渲染器模块,所述对象渲染器模块用于根据至少一个形状函数使对象失真,其中所述对象的失真补偿了所述不规则表面中的不规则性;以及
对象覆盖模块,所述对象覆盖模块用于将对象的之前失真的实例添加至失真补偿图像;
其中所述呈现器模块进一步用于确定所述图形对象在由所述对象覆盖模块处理之前是否用于由所述对象渲染器模块处理。
2.如权利要求1所述的系统,其特征在于,进一步包括:
计算硬件,包括处理器、数据存储以及输入/输出设施,数据存储包含指令,所述指令在被执行时,使所述计算硬件实现所述呈现器模块、所述对象渲染器模块以及所述对象覆盖模块。
3.如权利要求1所述的系统,其特征在于,所述呈现器模块、所述对象渲染器模块以及所述对象覆盖模块中的至少一者以硬连线逻辑来实现。
4.如权利要求1所述的系统,其特征在于,进一步包括:
矩形网格渲染器模块,所述矩形网格渲染器模块用于在计算上表示由个体可变形元素组成的矩形网格上的对象,其中所述呈现器模块用于将所述图形对象传递至所述矩形网格渲染器模块。
5.如权利要求4所述的系统,其特征在于,所述个体可变形元素是拉格朗日父元素。
6.如权利要求4所述的系统,其特征在于,所述对象渲染器模块用于基于至少一个形状函数的应用将所述个体可变形元素中的至少一些变换成不规则拉格朗日元素。
7.如权利要求1所述的系统,其特征在于,进一步包括:
渲染对象池,所述渲染对象池包括对象的之前失真的实例的数据库,所述渲染对象池响应于标识原始对象以及应用于那些原始对象的失真类型的查询。
8.如权利要求7所述的系统,其特征在于,所述渲染对象池用于存储与对象相关联的形状函数的散列值,所述形状函数已被应用于所述对象以使那些对象失真。
9.如权利要求1所述的系统,其特征在于,所述对象渲染器模块用于将多个不同形状函数应用于所述图形对象,所述多个不同形状函数与用于在所述不规则表面上显示的所述图形对象的多个不同定位相对应。
10.如权利要求1所述的系统,其特征在于,所述对象渲染器模块用于响应于所应用失真程度超过定义阈值来将所述图形对象划分成多个图形对象。
11.如权利要求1所述的系统,其特征在于,所述对象渲染器模块用于将形状函数应用于所述图形对象,所述形状函数至少是二阶形状函数。
12.如权利要求1所述的系统,其特征在于,所述系统进一步包括被布置成将所述图像投射至所述不规则表面上的显示投影仪。
13.如权利要求1所述的系统,其特征在于,所述系统被合并为可穿戴计算设备的一部分。
14.如权利要求1所述的系统,其特征在于,所述系统被合并为智能电话的一部分。
15.如权利要求1所述的系统,其特征在于,所述系统可操作用于被通信耦合至远程计算设备,所述远程计算设备包括被布置成将所述图像投射至所述不规则表面上的显示投影仪。
16.一种用于在不规则表面上产生图像的方法,所述方法包括:
由计算设备从用于在所述不规则表面上显示的第一图像标识图形对象;
由计算设备确定用于使所述图形对象失真以补偿所述不规则显示表面中的不规则性的形状函数;
由计算设备在第一失真的预处理实例不可用的情况下根据所述形状函数处理所述图形对象的所述第一失真;
由计算设备在所述预处理实例可用的情况下访问所述第一失真的预处理实例;以及
由计算设备将所述第一失真覆盖至输出图像以用于在所述不规则表面上显示。
17.如权利要求16所述的方法,其特征在于,处理所述第一失真包括在计算上表示由个体可变形元素组成的矩形网格上的所述图形对象。
18.如权利要求17所述的方法,其特征在于,所述个体可变形元素是拉格朗日父元素。
19.如权利要求17所述的方法,其特征在于,处理所述第一失真包括基于所述形状函数的应用将所述个体可变形元素中的至少一些变换成不规则拉格朗日元素。
20.如权利要求16所述的方法,其特征在于,形状函数至少是二阶形状函数。
21.如权利要求16所述的方法,其特征在于,进一步包括:
存储对象的预处理实例的数据库,包括所述第一失真。
22.如权利要求16所述的方法,其特征在于,进一步包括:
根据用于在所述不规则表面上显示的所述图形对象的不同附加定位来确定用于使所述图形对象失真的多个不同附加形状函数。
23.如权利要求16所述的方法,其特征在于,进一步包括:
响应于所应用失真的程度超过定义阈值来将所述图形对象划分成多个图形对象。
24.如权利要求16所述的方法,其特征在于,进一步包括:
将所述输出图像投射至所述不规则表面。
25.一种用于在不规则表面上产生图像的系统,所述系统包括用于执行如权利要求16-24中任一项所述的方法的装置。
26.包括指令的至少一种计算机可读介质,所述指令在计算系统上被执行时,使所述计算系统执行如权利要求16-24中任一项所述的方法。
CN201680074529.5A 2015-12-23 2016-11-10 用于可穿戴设备的图像处理器 Active CN108475412B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US14/757,868 US9881405B2 (en) 2015-12-23 2015-12-23 Image processor for producing an image on an irregular surface in a wearable device
US14/757,868 2015-12-23
PCT/US2016/061376 WO2017112121A1 (en) 2015-12-23 2016-11-10 Image processor for wearable device

Publications (2)

Publication Number Publication Date
CN108475412A true CN108475412A (zh) 2018-08-31
CN108475412B CN108475412B (zh) 2023-10-03

Family

ID=59088442

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201680074529.5A Active CN108475412B (zh) 2015-12-23 2016-11-10 用于可穿戴设备的图像处理器

Country Status (4)

Country Link
US (1) US9881405B2 (zh)
CN (1) CN108475412B (zh)
DE (1) DE112016006020T5 (zh)
WO (1) WO2017112121A1 (zh)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9881405B2 (en) 2015-12-23 2018-01-30 Intel Corporation Image processor for producing an image on an irregular surface in a wearable device
US11457193B2 (en) 2019-04-12 2022-09-27 Intel Corporation Pre-stitching tuning automation for panoramic VR applications
US11512952B1 (en) * 2021-06-30 2022-11-29 Microsoft Technology Licensing, Llc Enhanced detection of sensor misalignments by coordinating sensors utilizing multiple sensing modalities

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102918548A (zh) * 2010-06-08 2013-02-06 国际商业机器公司 校正扫描书籍中的页面卷曲
US20140204083A1 (en) * 2013-01-23 2014-07-24 Brent Thomson Systems and methods for real-time distortion processing
US20150153164A1 (en) * 2012-07-15 2015-06-04 8Tree, Llc Portable three-dimensional metrology with data displayed on the measured surface

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7663640B2 (en) 2003-07-02 2010-02-16 The Trustees Of Columbia University In The City Of New York Methods and systems for compensating an image projected onto a surface having spatially varying photometric properties
US7901095B2 (en) 2009-03-27 2011-03-08 Seiko Epson Corporation Resolution scalable view projection
US9131219B2 (en) 2012-12-18 2015-09-08 Institut National D'optique Method and apparatus for triangulation-based 3D optical profilometry
US9557813B2 (en) 2013-06-28 2017-01-31 Tactus Technology, Inc. Method for reducing perceived optical distortion
US9064309B2 (en) 2013-10-29 2015-06-23 Google Inc. Automatic rectification of distortions in images
US9881405B2 (en) 2015-12-23 2018-01-30 Intel Corporation Image processor for producing an image on an irregular surface in a wearable device

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102918548A (zh) * 2010-06-08 2013-02-06 国际商业机器公司 校正扫描书籍中的页面卷曲
US20150153164A1 (en) * 2012-07-15 2015-06-04 8Tree, Llc Portable three-dimensional metrology with data displayed on the measured surface
US20140204083A1 (en) * 2013-01-23 2014-07-24 Brent Thomson Systems and methods for real-time distortion processing

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
杨凯等: "基于失真敏感性的可见光遥感图像压缩补偿", 《中国空间科学技术》 *

Also Published As

Publication number Publication date
DE112016006020T5 (de) 2018-09-27
US20170186199A1 (en) 2017-06-29
CN108475412B (zh) 2023-10-03
WO2017112121A1 (en) 2017-06-29
US9881405B2 (en) 2018-01-30

Similar Documents

Publication Publication Date Title
JP6411505B2 (ja) 全焦点画像を生成するための方法および装置
CN107402733B (zh) 用于合成图形数据的电子设备及其方法
CN112685069A (zh) 机器学习模型的实时更新
EP2958035A1 (en) Simulation system, simulation device, and product description assistance method
RU2011108115A (ru) Устройство обработки информации, способ обновления карты, программа и система обработки информации
US20130243351A1 (en) Methods and Apparatus for Interfacing Panoramic Image Stitching with Post-Processors
KR20170077670A (ko) 컨텐츠를 제어하기 위한 방법 및 그 전자 장치
CN105917290A (zh) 帧率控制方法及其电子装置
CN108475412A (zh) 用于可穿戴设备的图像处理器
US20160065943A1 (en) Method for displaying images and electronic device thereof
CN111275824A (zh) 用于交互式增强现实的表面重建
US20230036366A1 (en) Image attribute classification method, apparatus, electronic device, medium and program product
CN113312135B (zh) 一种列表展示方法、装置、计算机设备及存储介质
CN117151973A (zh) 特效模板生成方法、装置、电子设备及存储介质
EP3157002A1 (en) Electronic device and method for transforming text to speech utilizing super-clustered common acoustic data set for multi-lingual/speaker
US10846061B2 (en) Development environment for real-time application development
US11676089B2 (en) Techniques for obtaining solutions to black-box optimization problems
CN114092642B (zh) 一种三维户型模型生成方法、装置及设备
KR20160103444A (ko) 이미지 처리 방법과 이를 지원하는 전자 장치
JP2007240848A (ja) 表示プログラム、データ構造及び表示装置
CN111324787B (zh) 区块链浏览器中区块链数据的展现方法和装置
JP7296941B2 (ja) 医療画像の表示
CN107817969B (zh) 一种程序生成方法、装置及计算机系统
US20220327757A1 (en) Method and apparatus for generating dynamic video of character, electronic device and storage medium
US11669234B2 (en) Method for processing aerial view, electronic device, and storage medium

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
GR01 Patent grant
GR01 Patent grant