首页> 中国专利> 使用多边形的3D网格和对应纹理对图像进行编码

使用多边形的3D网格和对应纹理对图像进行编码

摘要

本文公开用于使用多边形的3D网格和对应纹理对图像进行编码的方法和系统。可得到深度信息和图像纹理信息,并且可从深度信息来计算多边形的3D网格。对应纹理可使用图像纹理信息来确定,并且多边形的3D网格和对应纹理均可使用网格帧、纹理帧、变化帧或者它们的任何组合中的至少一个来编码。

著录项

  • 公开/公告号CN104541308A

    专利类型发明专利

  • 公开/公告日2015-04-22

    原文格式PDF

  • 申请/专利权人 英特尔公司;

    申请/专利号CN201380044833.1

  • 发明设计人 S.A.克里;

    申请日2013-09-25

  • 分类号G06T17/20(20060101);G06T15/04(20060101);

  • 代理机构72001 中国专利代理(香港)有限公司;

  • 代理人杨美灵;陈岚

  • 地址 美国加利福尼亚州

  • 入库时间 2023-12-18 08:20:29

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2017-12-26

    授权

    授权

  • 2015-05-20

    实质审查的生效 IPC(主分类):G06T17/20 申请日:20130925

    实质审查的生效

  • 2015-04-22

    公开

    公开

说明书

技术领域

一般来说,本发明涉及编码。更具体来说,本发明涉及编码深度信息。

背景技术

在图像捕获期间,存在用来捕获与图像纹理信息关联的深度信息的各种技术。深度信息通常用来产生具有三维(3D)多边形网格(其定义图像中的3D对象的形状)的点云或深度图。

原始或者未压缩深度信息可由照相装置来捕获,并且然后发送给处理单元供进一步处理。深度信息可按照多种格式的任一种发送给处理单元。深度信息也可使用立体对或者多视图立体重构方法从2D图像来得出。此外,深度信息可从大量直接深度感测方法(包括结构光、飞行时间传感器和许多其它技术)来得出。

在处理之后,深度信息可按照若干格式来表示,包括但不限于3D空间中的X、Y和Z点云、2D深度图图像或者三角形或四边形的3D表面网格。用于表示深度信息的其它格式包括XML编码格式、文本格式或者图形格式(例如OpenGL)。

附图说明

图1是可按照实施例使用的计算装置的框图;

图2A是按照实施例的多边形网格;

图2B是按照实施例的施加纹理的多边形网格;

图3是示出按照实施例、用于再现3D图像的方法的过程流程图;

图4是按照实施例、M帧、T帧和C帧中存储的数据的简图;

图5是按照实施例的帧序列;

图6是示出按照实施例、用于使用网格和纹理对图像进行编码的方法的过程流程图;

图7是示出按照实施例、存储用于使用网格和对应纹理对图像进行编码的代码的有形非暂时计算机可读介质的框图;

图8是按照实施例、用于使用多边形的3D网格和对应纹理对图像进行编码的示范系统的框图;

图9是按照实施例、可实施图8的系统的小形状因数装置900的示意图;以及

图10是示出按照实施例、用于在打印装置中打印使用多边形的3D网格和对应纹理所编码的图像的方法的过程流程图。

相同标号在本公开和附图中通篇用来表示相似组件和特征。100系列中的标号表示最初见于图1的特征;200系列中的标号表示最初见于图2的特征;依此类推。

具体实施方式

如上所述,深度信息可连同关联图像纹理信息一起发送给处理单元供进一步处理。在实施例中,可使用提取深度信息的任何技术。深度信息可按照多种格式的任一种发送给处理单元。例如,结构光图案可广播到画面中,以及深度信息可通过检测图案的大小来重构,因为结构光图案随距离而变化。在其它示例中,飞行时间(TOF)传感器可用来通过测量红外光从传感器到对象并且返回的往返飞行时间来采集信息。

如上所述,深度信息也可使用立体对或者多视图立体重构方法从2D图像来得出,或者深度信息可从大量直接深度感测方法(包括结构光、飞行时间传感器和许多其它方法)来得出。但是,当前2D图像捕获系统不产生深度图。此外,深度信息没有经过标准化。缺乏发送深度信息和关联图像纹理信息的标准化方法会防止深度信息在多种应用中使用。相应地,本文所述的实施例涉及对深度信息和关联图像纹理信息进行编码。编码信息可与任何媒体CODEC格式配合使用。通过组合标准媒体CODEC格式对信息进行编码,实现真实视频图像与合成3D图形的融合。

在以下描述和权利要求书中,可使用术语“耦合”和“连接”及其派生。应当理解,这些术语并不是要作为彼此的同义词。相反,在具体实施例中,“连接”可用来表示两个或更多元件相互直接物理或电气接触。“耦合”可表示两个或更多元件直接物理或电接触。但是,“耦合”也可表示两个或更多元件不是相互直接接触,但是仍然相互配合或交互。

一些实施例可通过硬件、固件和软件其中之一或者它们的组合来实现。一些实施例还可作为机器可读介质上存储的指令来实现,所述指令可由计算平台读取和运行以执行本文所述的操作。机器可读介质可包括用于存储或传送机器、例如计算机可读形式的信息的任何机制。例如,机器可读介质可包括:只读存储器(ROM);随机存取存储器(RAM);磁盘存储介质;光存储介质;闪速存储器装置;或者电、光、声或其它形式的传播信号(例如载波、红外信号、数字信号或者传送和/或接收信号的接口)等。

一实施例是实现或示例。本说明书中提到“一实施例”、“一个实施例”、“一些实施例”、“各个实施例”或“其它实施例”表示组合这些实施例所述的特定特征、结构或特性包含在本发明的至少部分实施例但不一定是全部实施例中。出现“一实施例”、“一个实施例”或“一些实施例”的各种情况不一定都表示相同实施例。来自一实施例的元件或方面能够与另一个实施例的元件或方面相组合。

并非本文所述和所示的所有组件、特征、结构、特性等都需要包含在具体实施例中。例如,如果本说明书陈述组件、特征、结构或特性“可”、“可能”或者“能够”被包含,则不要求包含那个特定组件、特征、结构或特性。如果本说明书或权利要求书提到“一”或“一个”元件,则并不表示只有一个这种元件。如果本说明书或权利要求书提到“一个附加”元件,则不排除存在一个以上这种附加元件的情况。

要注意,虽然一些实施例参照具体实现来描述,但是按照一些实施例,其它实现是可能的。另外,附图所示和/或本文所述的电路元件或其它特征的布置和/或顺序无需按照所示和所述的特定方式来设置。按照一些实施例,许多其它布置是可能的。

在附图所示的各系统中,一些情况下的元件各可具有相同的参考标号或者不同的参考标号,以暗示所表示的元件可能是不同的和/或相似的。但是,元件可以足够灵活,以便具有不同实现,并且与本文所示或所述的系统的部分或全部配合工作。附图所示的各种元件可以是相同或不同的。哪一个称作第一元件和哪一个称作第二元件是任意的。

图1是可按照实施例使用的计算装置100的框图。计算装置100可以是例如膝上型计算机、台式计算机、平板计算机、移动装置或服务器等等。计算装置100可包括中央处理单元(CPU)102(其配置成运行所存储指令)以及存储器装置104(其存储由CPU 102可执行的指令)。CPU可经过总线106耦合到存储器装置104。另外,CPU 102能够是单核处理器、多核处理器、计算集群或者任何数量的其它配置。此外,计算装置100可包括一个以上CPU 102。由CPU 102运行的指令可用来使用多边形的3D网格和对应纹理对图像进行编码。

计算装置100还可包括图形处理单元(GPU)108。如所示,CPU 102可经过总线106耦合到GPU 108。GPU 108可配置成执行计算装置100中的任何数量的图形操作。例如,GPU 108可配置成再现或操纵图形图像、图形帧、视频等,以便向计算装置100的用户显示。在一些实施例中,GPU 108包括多个图形引擎(未示出),其中各图形引擎配置成执行特定图形任务或者运行特定类型的工作负荷。

存储器装置104能够包括随机存取存储器(RAM)、只读存储器(ROM)、闪速存储器或者任何其它适当存储器系统。例如,存储器装置104可包括动态随机存取存储器(DRAM)。存储器装置104可包括装置驱动器110,其配置成运行用于对深度信息进行编码的指令。装置驱动器110可以是软件、应用程序、应用代码等。

计算装置100包括图像捕获机构112。在实施例中,图像捕获机构112是照相装置、立体照相装置、红外传感器等。图像捕获机构112用来捕获深度信息和图像纹理信息。相应地,计算装置100还包括一个或多个传感器114。在示例中,传感器114可以是深度传感器,其用来捕获与图像纹理信息关联的深度信息。传感器114也可以是用来捕获图像纹理信息的图像传感器。此外,图像传感器可以是电荷耦合器件(CCD)图像传感器、互补金属氧化物半导体(CMOS)图像传感器、芯片上系统(SOC)图像传感器、具有光敏薄膜晶体管的图像传感器或者它们的任何组合。装置驱动器110可按照当前存在或者将来开发的任何标准化媒体CODEC、使用3D网格以及来自图像纹理信息的对应纹理对深度信息进行编码。

CPU 102可经过总线106连接到输入/输出(I/O)装置接口116,其配置成将计算装置100连接到一个或多个I/O装置118。I/O装置118可包括例如键盘和指针装置,其中指针装置可包括触摸板或触摸屏等等。I/O装置118可以是计算装置100的内置组件,或者可以是外部连接到计算装置100的装置。

CPU 102也可经过总线106链接到显示器接口120,其配置成将计算装置100连接到显示装置122。显示装置122可包括显示屏幕,其是计算装置100的内置组件。显示装置122还可包括计算机监视器、电视机或投影仪等等,其外部连接到计算装置100。

计算装置还包括存储装置124。存储装置124是物理存储器,例如硬盘驱动器、光驱动器、拇指盘驱动器、驱动器阵列或者它们的任何组合。存储装置124还可包括远程存储驱动器。存储装置124包括任何数量的应用126,其配置成运行于计算装置100。应用126可用来组合媒体和图形,包括用于立体显示器的3D立体照相装置图像和3D图形。

在示例中,应用126可用来对深度信息和图像纹理信息进行编码。此外,在示例中,应用126可将真实视频图像与合成3D计算机生成图像相组合。可通过对媒体流或文件进行编码,然后对媒体流或文件进行解码供再现,来处理组合的媒体流或文件。此外,应用126可用来使用顶点和纹理单元在标准图形流水线中对媒体进行解码。此外,应用126可用来在运行时将“化身”引入真实视频画面中。如本文所使用的“化身”可以是合成人类图像。在实施例中,其它3D对象可代入3D视频中。在实施例中,光源可实时地添加到媒体流中。可改变光源的各个方面,包括但不限于照明的位置、颜色和距离。相应地,编码网格和对应纹理可采用合成图像的添加、照明、遮蔽、对象置换、化身引入或者它们的任何组合中的至少一个来改变。

计算装置100还可包括网络接口控制器(NIC)128,其可配置成经过总线106将计算装置100连接到网络130。网络130可以是广域网(WAN)、局域网(LAN)或因特网等等。

在一些实施例中,应用126能够将多边形的编码3D网格和对应纹理发送给打印引擎132,其能够将多边形的编码3D网格和对应纹理发送给打印装置134。打印装置134能够包括打印机、传真机和其它打印装置,其能够使用打印对象模块136来打印多边形的编码3D网格和对应纹理。结合图10更详细论述打印对象模块。在实施例中,打印引擎132可通过网络130将数据发送给打印装置134。

图1的框图不是要表示计算装置100将包含图1所示的所有组件。此外,计算装置100可包括图1未示出的任何数量的附加组件,这取决于具体实现的细节。

当对二维(2D)视频进行编码时,运动估计搜索可对每帧执行,以便确定每帧的运动向量。如本文所使用的“帧”是视频流中的帧的时间序列之一,其中可对时间序列以一定间隔捕获每帧。例如,帧可以以每秒30帧、每秒60帧或者以无论什么帧率来显示,并且需要样本间隔。帧率能够通过视频流的编码格式来指定。当播放视频流时,每帧在显示器上呈现短时间周期。运动估计是一种技术,其中分析帧序列中的对象的移动,以得到表示帧之间的对象的所估计运动的向量。通过运动估计,编码媒体文件包括帧中在没有包括该帧的其它部分的情况下移动的部分,由此节省媒体文件中的空间并且节省媒体文件的解码期间的处理时间。帧可分为宏块,以及运动向量表示帧之间的宏块的位置的变化。宏块通常是像素块。例如,宏块可能是16×8像素的大小。

2D运动估计搜索通常涉及执行每帧的运动向量的粗略搜索,以确定帧中的各宏块的所估计运动向量。初始估计运动向量可通过以更细粒度级执行附加搜索来细化。例如,宏块可以以从粗略到精细粒度级的各种分辨率来搜索,以便确定运动向量。其它运动估计搜索技术可包括但不限于在搜索运动向量时改变宏块的大小。

一旦运动向量和宏块类型通过对2D帧的运动估计搜索已经确定,比特率控制则可应用于每帧,以便创建满足目标2D视频流的编码格式的帧大小的帧。各种视频压缩格式将所述比特率用于视频流,以及比特率是当播放视频时存在的每秒比特数。视频编码格式包括但不限于H.264、MPEG-4和VC-1。帧可按照如下方式来确定大小:使得每帧比特数与目标视频流的编码格式的比特率一致。编码器可对2D媒体流再次执行运动估计,以便在比特率控制已经应用于每帧之后确定帧的更精细运动向量和宏块类型。一旦确定了新运动向量和宏块类型,2D帧则可按照目标视频压缩格式编码到最终压缩视频流中。

2D帧可编码为帧内编码帧(I帧)、预测图像帧(P帧)或双向预测图像帧(B帧)。当帧使用I帧来编码时,每个单独帧在编码中完全指定。因此,I帧传送整个图像纹理信息而无需使用来自先前帧的数据。每个I帧能够被看作是媒体编码的完全静态图像。当帧使用P帧来编码时,当前帧与前一帧之间的变化经过编码。图像的未改变像素没有经过编码,以及该帧在被编码时依靠来自先前帧的一些图像纹理信息。当帧使用B帧来编码时,与前一帧和后一帧相比时在每帧中发生的变化经过编码。视频流的帧可称作图像组(GOP)。每个GOP能够包含I帧、P帧和B帧的各种组合。此外,视频压缩格式可指定帧序列,以便遵照那种格式。相应地,在对视频流进行编码时,所产生的GOP可包括按照各种组合的I帧、P帧和B帧。

I帧、P帧和B帧的各种组合没有包括与图像关联的任何深度信息。相应地,I帧、P帧和B帧没有用来对立体图像纹理信息进行编码。在实施例中,提供对深度和立体图像纹理信息进行编码的标准化方法,其一般包括3D深度信息和关联图像纹理信息。可从飞行时间传感器、立体照相装置、径向图像等,来得到立体图像纹理信息。按照实施例,3D深度信息和关联图像纹理信息可使用3D多边形网格和对应纹理信息来编码。

图2A是按照实施例的多边形网格。多边形网格包括顶点、线条、边沿和面,其用来定义3D对象的形状。为了便于描述,本文所述的技术使用三角形网格来描述。但是,按照本技术,可使用任何类型的网格。例如,网格可以是四边形网格或三角形网格。此外,按照实施例,也可使用备选深度格式。例如,由于网格由3D空间中的点组成,所以深度信息也可被认为是3D点云。此外,网格可编码为2D阵列中的深度图,其中阵列值表示每个点的深度。

三角形网格200包括多个控制点、例如控制点204。控制点是三角形网格200中的位置,其包括诸如颜色、法线向量和纹理坐标之类的对应信息。纹理坐标可用来将控制点链接到纹理信息、例如纹理图。纹理信息将细节、颜色或图像纹理信息添加到三角形网格200。

图2B是按照实施例、具有所施加纹理的多边形网格。三角形网格200示出当纹理206已经应用于与图200所示三角形网格相似的说明性三角形网格时的人脸的形式。虽然在再现3D图像的上下文中描述了三角形网格200和对应纹理206,但是2D图像也可使用本技术来再现。在任何情况下,使用多边形网格和对应纹理来再现图像可使用图形流水线组合标准图形或媒体编码格式(例如OpenGL、DirectX、H.264、MPEG-4和VC-1)来实现。

图3是示出按照实施例、用于再现3D图像的方法的过程流程图300。在框302,深度信息和纹理信息使用图像捕获机构来得到。图像捕获机构可包括但不限于立体照相装置、飞行时间传感器、深度传感器、结构光照相装置、从标准2D图像帧的运动的深度的多视图重构或者径向图像。

在框304,照相装置和媒体流水线用来处理3D深度信息和关联图像纹理信息。在实施例中,照相装置和媒体流水线用来产生3D多边形网格和关联图像纹理信息。网格帧(M帧)可从多边形网格来生成。M帧可捕获与视频流的帧关联的多边形网格信息。M帧可包括控制点和关联纹理坐标等等。3D网格运动估计器可用来检测控制点的坐标的变化。控制点是网格、例如三角形网格200(图2)中的位置,其包括诸如颜色、法线向量和纹理坐标之类的对应信息。通过运动估计,可得到向量,其表示帧之间的控制点的所估计运动。

纹理帧(T帧)可从关联图像纹理信息(其使用照相装置和媒体流水线来产生)来生成。T帧包括纹理坐标以及与视频流的帧关联的诸如细节、颜色或图像纹理信息之类的纹理信息。按照各个实施例,纹理是图像的一部分,其可成形为三角形、四边形或其它多边形形状。控制点可定义图像的顶点或者多边形的位置。3D纹理运动估计器可用来检测纹理信息的变化、例如照明或颜色的变化。通过运动估计,可得到向量,其表示帧之间的纹理信息的所估计运动,其中运动包含在限制纹理的单独多边形中。由此,多边形中改变的纹理经过编码,而无需对未改变纹理进行编码,因为它们尚未改变。通过运动估计,可得到纹理信息,其表示帧之间的纹理的所估计运动或变化。

当3D网格运动估计器或3D纹理运动估计器所检测的变化处于预定范围之内时,可生成变化帧(C帧)。C帧可称作部分M帧或部分T帧。在实施例中,如果表示两个帧之间的控制点的所估计运动的运动向量逐个坐标有少许偏移,则两个帧之间的变化可存储在C帧中。另外,在实施例中,如果在两个帧之间已经移动的控制点的百分比处于预定范围之内,则两个帧之间的变化可存储在C帧中。表示两个帧之间的纹理的所估计运动或变化的运动向量可按照类似方式来分析,以便确定C帧是否能够用来存储改变纹理信息。用来指定生成M帧、T帧还是C帧的预定范围可基于CODEC或视频编码格式或者装置或网络的性能能力的要求来确定,从而允许运动估计和编码对系统的功率和性能目标以及能力来调谐。此外,预定范围可基于预期图像质量、对所产生视频流的大小的限制、计算装置的存储容量或者网络带宽来确定。

在框306,对于3D视频流的每帧,对M帧、T帧或C帧进行编码。视频流可包括M帧、T帧和C帧的各种组合。如上所述,经过编码的每帧的类型可取决于3D视频流中发生的运动。

在框308,图形流水线可用来将编码3D流与框310的合成图形对象相组合,其中合成图形按照诸如OpenGL或DirectX之类的标准图形格式来组成。图形流水线可以是当前可用或者将来开发的任何图形流水线。例如,图形流水线可用来将编码3D视频流与合成3D计算机生成图像相组合。另外,图形流水线可用来将光源添加到编码3D视频流。在框312,在显示器上呈现组合视频流。

图4是按照实施例、M帧、T帧和C帧中存储的数据的简图。示出M帧402,其描述M帧中包含的信息。完全指定的M帧402可包括与多边形网格相关的任何信息。如本文所使用的“所指定”表示对每种类型的帧所存储的信息。在实施例中,M帧402包括参考编号。参考编号可标识M帧402以及它在帧序列中的顺序。M帧402还可包括对应T帧(其包括M帧402的纹理信息)的参考编号。在实施例中,M帧402可使用纹理坐标来引用其对应T帧。

M帧402还可包括与帧类型有关的信息。如果M帧402是整个帧,则该帧包括帧的完整网格信息。如果M帧402是部分帧,则该帧是C帧,并且包括当前帧与前一帧之间的改变网格信息。随M帧402还包括的是M帧的格式。M帧402可包括2D或3D控制点,这取决于所编码的视频流的类型。

多边形网格的形状也可通过M帧402来指定。任何多边形形状可用于网格。例如,每个多边形网格可具有三个控制点,从而使所产生网格成为三角形网格。在其它示例中,多边形网格可具有四个控制点,从而使所产生网格成为四边形网格。在实施例中,可使用其它多边形网格。M帧402也可指定控制点的结构网格阵列、网格阵列中的控制点的步幅以及控制点的计数。对应索引阵列也可采用M帧402来指定。

T帧404可包括与M帧402相似的参考编号。参考编号可应用于T帧404本身。T帧404还可包括对应M帧(其包括T帧的网格信息)的参考编号。在实施例中,T帧404可使用纹理坐标来引用其对应M帧。T帧404还可包括与帧类型有关的信息。如果T帧404是整个帧,则该帧包括帧的完整纹理信息。如果T帧404是部分帧,则该帧包括当前帧与前一帧之间的改变纹理信息,并且是C帧。另外,T帧可包括与纹理有关的任何信息。

T帧404也可指定图像压缩、图像范围和T帧所指定的图像纹理信息的图像格式。图像压缩可使用行程长度编码(RLE),以便实现C帧的无损编码。使用RLE压缩,当数据行程发生时,数据行程可作为单个数据值来存储,与重复数据值的字符串相反。另外,其它有损压缩格式可用来压缩C帧中的图像纹理信息。图像广度可用来指定T帧404所编码的图像的大小。图像格式可指定图像格式的类型,例如36位RGB格式或者24位RGB格式。虽然压缩使用T帧来描述,但是在实施例,压缩可用于T帧、M帧或C帧。

C帧406可定义为部分M帧或部分T帧或者它们的任何组合。相应地,C帧406可包括新的或者改变的控制点(若它是部分M帧)。C帧406还可包括新的或者改变的纹理(若它是部分T帧)。此外,C帧可包含新的或改变的控制点或者新的或改变的纹理的任何组合。

图5是按照实施例的帧序列500。帧序列500包括两个M帧402、两个T帧404和若干C帧406。如上所述,M帧402和T帧404可完全指定视频流中的网格和纹理信息。后续C帧406可指定网格、纹理信息的变化或者它们的任何组合。如果帧序列中的下一帧的变化不在预定范围之内或者高于阈值,则网格或纹理信息可分别使用M帧或T帧来完全指定。如果帧序列中的下一帧的变化不在预定范围之内或者低于阈值,则变化可使用C帧来指定。预定范围或阈值可基于预期图像质量、对所产生3D视频流的大小的限制、计算装置的存储容量或者网络带宽来确定。

图6是示出按照实施例、用于使用网格和纹理对图像进行编码的方法600的过程流程图。在各个实施例中,方法600用来提供深度信息和关联图像纹理信息的标准化编码。在一些实施例中,方法600可运行于计算装置、例如计算装置100。

在框602,得到深度信息和图像纹理信息。深度信息和图像纹理信息可使用图像捕获机构来得到或采集。在实施例中,可使用任何图像捕获机构。图像捕获机构可包括但不限于立体照相装置、飞行时间传感器、深度传感器、结构光照相装置、径向图像、经计算以创建多视图立体重构的图像的2D照相装置时间序列或者它们的任何组合。在实施例中,深度信息和图像纹理信息可由没有处理单元或存储装置的装置来得到。

在框604,多边形的3D网格从深度信息来计算。虽然描述多边形的一个网格,但是深度信息可用来计算每帧的多个网格。在实施例中,多边形的3D网格可以是三角形网格、四边形网格、3D点云、2D深度图阵列、XML编码格式、文本格式、图形格式(例如OpenGL)、任何其它适当格式或者它们的任何组合。在框606,与网格对应的纹理可使用图像纹理信息来确定。在实施例中,对应纹理包括细节、颜色和对应于网格的其它图像纹理信息。

在框608,多边形的3D网格和对应纹理使用网格帧、纹理帧、变化帧或者它们的任何组合中的至少一个来编码。在实施例中,网格帧、纹理帧、变化帧或者其组合中的至少一个可基于CODEC格式、任何视频传输格式或者它们的任何组合的要求来编码或生成。此外,预定范围可用来确定要编码的帧的类型。预定范围可基于预期图像质量、对所产生3D视频流的大小的限制、计算装置的存储容量、性能或者网络带宽来确定。

图6的过程流程图不是要表示方法600的框按照任何特定顺序来运行或者所有框均要包含在每一种情况中。此外,任何数量的附加框可包含在方法600中,这取决于具体实现的细节。另外,虽然本文所述的方法包括照相装置或图像捕获机构,但是网格和对应纹理可使用任何电子装置来编码。

图7是示出按照实施例、存储用于使用网格和对应纹理对图像进行编码的代码的有形非暂时计算机可读介质700的框图。有形非暂时计算机可读介质700可由处理器702通过计算机总线704来访问。此外,有形非暂时计算机可读介质700可包括配置成指导处理器702执行本文所述方法的代码。

本文所述的各种软件组件可存储在有形非暂时计算机可读介质700上,如图7所示。例如,图像捕获模块706可配置成得到深度信息和图像纹理信息。网格模块708可配置成从深度信息来计算多边形的3D网格。纹理模块710可配置成使用图像纹理信息来确定对应纹理。此外,编码模块712可配置成使用网格帧、纹理帧、变化帧或者它们的任何组合中的至少一个来对多边形的3D网格和对应纹理进行编码。

图7的框图不是要表示有形非暂时计算机可读介质700将包含图7所示的所有组件。此外,有形非暂时计算机可读介质700可包括图7未示出的任何数量的附加组件,这取决于具体实现的细节。

图8是按照实施例、用于使用多边形的3D网格和对应纹理对图像进行编码的示范系统800的框图。相似编号的项目如针对图1所述。在一些实施例中,系统800是媒体系统。另外,系统800可组合到个人计算机(PC)、膝上型计算机、超膝上型计算机、平板、触摸板、便携计算机、手持计算机、掌上计算机、个人数字助理(PDA)、蜂窝电话、组合蜂窝电话/PDA、电视机、智能装置(例如智能电话、智能平板或者智能电视机)、移动因特网装置(MID)、消息传递装置、数据通信装置等中。

在各个实施例中,系统800包括耦合到显示器804的平台802。平台802可从诸如(一个或多个)内容服务装置806或者(一个或多个)内容传递装置808之类的内容装置或者其它类似内容源来接收内容。包括一个或多个导航特征的导航控制器810可用来与例如平台802和/或显示器804进行交互。下面更详细描述这些组件的每个。

平台802可包括芯片组812、中央处理单元(CPU)102、存储器装置104、存储装置124、图形子系统814、应用126和无线电816的任何组合。芯片组812可提供CPU 102、存储器装置104、存储装置124、图形子系统814、应用126和无线电814之间的相互通信。例如,芯片组812可包括存储适配器(未示出),其能够提供与存储装置124的相互通信。

CPU 102可实现为复杂指令集计算机(CISC)或简化指令集计算机(RISC)处理器、x86指令集兼容处理器、多核心或者任何其它微处理器或中央处理单元(CPU)。在一些实施例中,CPU 102包括(一个或多个)双核处理器、(一个或多个)双核移动处理器等。

存储器装置104可实现为易失性存储器装置,例如但不限于随机存取存储器(RAM)、动态随机存取存储器(DRAM)或静态RAM(SRAM)。存储装置124可实现为非易失性存储装置,例如但不限于磁盘驱动器、光盘驱动器、磁带驱动器、内部存储装置、附连存储装置、闪速存储器、电池备用SDRAM(同步DRAM)和/或网络可访问存储装置。在一些实施例中,例如,存储装置124包括在包括多个硬盘驱动器时增加有价值数字媒体的存储性能增强保护的技术。

图形子系统814可执行诸如静止或视频之类的图像的处理供显示。例如,图形子系统814可包括图形处理单元(GPU),例如GPU 108或视觉处理单元(VPU)。模拟或数字接口可用来在通信上耦合图形子系统814和显示器804。例如,接口可以是高清晰度多媒体接口、DisplayPort、无线HDMI和/或符合无线HD的技术中的任一个。图形子系统814可集成到CPU 102或芯片组812中。备选地,图形子系统814可以是通信上耦合到芯片组812的独立卡。

本文所述的图形和/或视频处理技术可通过各种硬件架构来实现。例如,图形和/或视频功能性可集成在芯片组812中。备选地,可使用分立图形和/或视频处理器。作为又一个实施例,图形和/或视频功能可通过包括多核处理器的通用处理器来实现。在另一实施例中,功能可在消费电子装置中实现。

无线电816可包括一个或多个无线电,其能够使用各种适当的无线通信技术来传送和接收信号。这类技术可涉及跨一个或多个无线网络的通信。示范无线网络包括无线局域网(WLAN)、无线个人区域网络(WPAN)、无线城域网(WMAN)、蜂窝网络、卫星网络等。在跨这类网络的通信中,无线电816可按照任何版本的一个或多个适用标准进行操作。

显示器804可包括任何电视机类型监视器或显示器。例如,显示器804可包括计算机显示屏幕、触摸屏显示器、视频监视器、电视机等。显示器804可以是数字和/或模拟的。在一些实施例中,显示器804是全息显示器。另外,显示器804可以是可接收视觉投影的透明表面。这类投影可传送各种形式的信息、图像、对象等。例如,这类投影可以是移动增强现实(MAR)应用的视觉覆盖。在一个或多个应用126的控制下,平台802可在显示器804上显示用户界面818。

(一个或多个)内容服务装置806可由任何国家、国际或独立服务来托管,并且因而可以是平台802经由例如因特网可访问的。(一个或多个)内容服务装置806可耦合到平台802和/或显示器804。平台802和/或(一个或多个)内容服务装置806可耦合到网络130,以便向/从网络130传递(例如发送和/或接收)媒体信息。(一个或多个)内容传递装置808还可耦合到平台802和/或显示器804。

(一个或多个)内容服务装置806可包括有线电视盒、个人计算机、网络、电话或者能够传递数字信息的因特网使能装置。另外,(一个或多个)内容服务装置806可包括能够经由网络130或者直接在内容提供商与平台802或显示器804之间单向或双向传递内容的任何其它类似装置。将会理解,可经由网络130向/从系统800中的组件的任一个和内容提供商单向和/或双向传递内容。内容的示例可包括任何媒体信息,其中包括例如视频、音乐、医疗和游戏信息等。

(一个或多个)内容服务装置806可接收内容,例如包括媒体信息的有线电视节目、数字信息或其它内容。内容提供商的示例可包括任何有线或卫星电视或无线电或者因特网内容提供商等等。

在一些实施例中,平台802从包括一个或多个导航特征的导航控制器810接收控制信号。例如,导航控制器810的导航特征可用来与用户界面818进行交互。导航控制器810可以是指针装置,其可以是允许用户将空间(例如连续并且多维的)数据输入计算机中的计算机硬件组件(特别是人性化界面装置)。诸如图形用户界面(GUI)之类的许多系统以及电视机和监视器允许用户使用形体姿态来控制并且将数据提供给计算机或电视机。形体姿态包括但不限于脸部表情、脸部移动,各种肢体的移动,身体移动、人体语言或者它们的任何组合。这类形体姿态能够被识别并且转化为命令或指令。

通过移动显示器804上显示的指针、光标、聚焦环或者其它视觉指示符,可在显示器804上复制仿效导航控制器810的导航特征的移动。例如,在应用126的控制下,位于导航控制器810上的导航特征可映射到用户界面818上显示的虚拟导航特征。在一些实施例中,导航控制器810可以不是独立组件,而是可集成到平台802和/或显示器804中。

系统800可包括驱动器(未示出),其包括例如在被启用时使用户能够例如通过在初始引导之后触摸按钮来立即接通和关断平台802的技术。程序逻辑可允许平台802在平台“关断”时,将内容流播到媒体适配器或者(一个或多个)其它内容服务装置806或者(一个或多个)内容传递装置808。另外,例如,芯片组812可包括对5.1环绕声音频和/或高清晰度7.1环绕声音频的硬件和/或软件支持。驱动器可包括集成图形平台的图形驱动器。在一些实施例中,图形驱动器包括外设部件互连高速(PCIe)图形卡。

在各个实施例中,可集成系统800中所示组件的任一个或多个。例如,可集成平台802和(一个或多个)内容服务装置806;可集成平台802和(一个或多个)内容传递装置808;或者可集成平台802、(一个或多个)内容服务装置806和(一个或多个)内容传递装置808。在一些实施例中,平台802和显示器804是集成单元。例如,可集成显示器804和(一个或多个)内容服务装置806,或者可集成显示器804和(一个或多个)内容传递装置808。

系统800可实现为无线系统或者有线系统。当实现为无线系统时,系统800可包括适合于通过无线共享介质(例如一个或多个天线、发射器、接收器、收发器、放大器、滤波器、控制逻辑等)进行通信的组件和接口。无线共享介质的一个示例包括无线谱的部分,例如RF谱。当实现为有线系统时,系统800可包括适合于通过有线通信介质(例如输入/输出(I/O)适配器、将I/O适配器与对应有线通信介质连接的物理连接器、网络接口卡(NIC)、磁盘控制器、视频控制器、音频控制器等)进行通信的组件和接口。有线通信介质的示例可包括电线、电缆、金属引线、印刷电路板(PCB)、底板、交换结构、半导体材料、双绞线、同轴电缆、光纤等。

平台802可建立一个或多个逻辑或物理信道以传递信息。信息可包括媒体信息和控制信息。媒体信息可表示预计送往用户的内容的任何数据。内容的示例可包括例如来自语音转换的数据、视频会议、流播视频、电子邮件(电子邮件)消息、语音邮件消息、字母数字符号、图形、图像、视频、文本等。来自语音转换的数据可以是例如话音信息、静寂周期、背景噪声、舒适噪声、信号音等。控制信息可表示预计用于自动化系统的命令、指令或控制字的任何数据。例如,控制信息可用于通过系统路由媒体信息,或者指示节点以预定方式处理媒体信息。但是,实施例并不局限于图8所示或所述的元件或上下文。

图9是按照实施例、可实施图8的系统800的小形状因数装置900的示意图。相似编号的项目如针对图8所述。在一些实施例中,例如,装置900实现为具有无线能力的移动计算装置。例如,移动计算装置可指具有处理系统和移动电源或电力供应、例如一个或多个电池的任何装置。

如上所述,移动计算装置的示例可包括个人计算机(PC)、膝上型计算机、超膝上型计算机、平板、触摸板、便携计算机、手持计算机、掌上计算机、个人数字助理(PDA)、蜂窝电话、组合蜂窝电话/PDA、电视机、智能装置(例如智能电话、智能平板或者智能电视机)、移动因特网装置(MID)、消息传递装置、数据通信装置等。

移动计算装置的示例还可包括设置成供人佩戴的计算机,例如手腕计算机、手指计算机、指环计算机、眼镜计算机、皮带夹计算机、臂章计算机、靴式计算机、服饰计算机或者任何其它适当类型的可佩戴计算机。例如,移动计算装置可实现为智能电话,其能够运行计算机应用以及进行语音通信和/或数据通信。虽然作为举例可采用实现为智能电话的移动计算装置来描述一些实施例,但是可理解,其它实施例也可使用其它无线移动计算装置来实现。

如图9所示,装置900可包括壳体902、显示器904、输入/输出(I/O)装置906和天线908。装置900还可包括导航特征910。显示器904可包括适合于移动计算装置、用于显示信息的任何适当显示单元。I/O装置906可包括用于将信息输入移动计算装置中的任何适当I/O装置。例如,I/O装置906可包括字母数字键盘、数字键盘、触摸板、输入按键、按钮、开关、摇臂开关、话筒、扬声器、语音识别装置和软件等。信息也可通过话筒输入到装置900中。这种信息可由语音识别装置来数字化。

在实施例中,图像捕获机构可以是照相装置,其使用按照移动工业处理器接口(MIPI)照相装置串行接口(CSI)联盟的规范所开发的接口来与主处理器进行接口。例如,照相装置串行接口可以是MIPI CSI-1接口、MIPI CSI-2接口或者MIPI CSI-3接口。相应地,照相装置串行接口可以是当前开发或者将来开发的任何照相装置串行接口。在实施例中,照相装置串行接口可包括数据传输接口,其是采用数据和时钟信号的单向差分串行接口。此外,与主处理器的照相装置接口也可以是当前开发或者将来开发的任何照相装置并行接口(CPI)。

在实施例中,图像捕获机构可以是移动计算装置的组件。例如,按照MIPI CSI联盟标准所开发的照相装置可以是与图1的计算装置100、图8的系统800、图9的装置900或者它们的任何组合中的至少一个或多个相集成的图像捕获机构。图像捕获机构可包括各种传感器,例如深度传感器、图像传感器、红外传感器、X射线光子计数传感器或者它们的任何组合。图像传感器可包括电荷耦合器件(CCD)图像传感器、互补金属氧化物半导体(CMOS)图像传感器、芯片上系统(SOC)图像传感器、具有光敏薄膜晶体管的图像传感器或者它们的任何组合。

图10是示出按照实施例、用于在打印装置中打印使用多边形的3D网格和对应纹理所编码的图像的方法的过程流程图1000。方法1000可采用打印装置、例如图1的打印装置134来实现。打印装置134可包括打印对象模块136。

在框1002,打印对象模块136能够检测使用多边形的3D网格和对应纹理所编码的图像。在框1004,打印对象模块136能够采用合成图像的添加、照明、遮蔽、对象置换、化身引入或者它们的任何组合中的至少一个来改变编码网格和对应纹理。

在一些实施例中,用户能够采用打印装置134来查看使用多边形的3D网格和对应纹理所编码的图像,并且然后采用合成图像的添加、照明、遮蔽、对象置换、化身引入或者它们的任何组合中的至少一个来改变图像。

在框1006,打印对象模块136能够打印使用多边形的3D网格和对应纹理所编码的图像。在一些实施例中,打印对象模块136也可创建图像的多个视图,并且打印使用多边形的3D网格和对应纹理所编码的图像。例如,图像可通过图像的颜色或者图像的查看角来改变。

图10的过程流程图不是要表示方法1000的步骤按照任何特定顺序来运行或者方法1000的所有步骤均要包含在每一种情况中。此外,任何数量的添加步骤可包含在方法300、方法400、方法600或者它们的任何组合中,这取决于特定应用。例如,打印装置134可向用户呈现3D图像。另外,打印对象模块136也可存储使用多边形的3D网格和对应纹理所编码的图像。

示例1

本文描述一种用于使用3D网格和对应纹理对图像进行编码的方法。该方法包括得到深度信息和图像纹理信息。多边形的3D网格可从深度信息来计算。对应纹理可使用图像纹理信息来确定。另外,3D网格和对应纹理可使用网格帧、纹理帧、变化帧或者它们的任何组合中的至少一个来编码。

网格帧可包括来自诸如立体照相装置、飞行时间传感器、深度传感器、结构光照相装置、径向图像、经计算以创建多视图立体重构的图像的2D照相装置时间序列或者它们的任何组合之类的图像捕获机构的深度信息。纹理帧包括纹理坐标、纹理信息、图像纹理信息或者它们的任何组合中的至少一个。此外,变化帧包括部分网格帧信息、部分纹理帧信息或者它们的任何组合。该方法还可包括将编码的多边形的3D网格和对应纹理与3D合成图形对象相组合,并且再现组合的多边形的3D网格、对应纹理和3D合成图形对象。另外,多边形的编码3D网格和对应纹理可采用合成图像的添加、照明、遮蔽、对象置换、化身引入或者它们的任何组合中的至少一个来改变。编码网格和对应纹理也可按照任何CODEC格式、任何视频传输格式或者它们的任何组合来标准化。

示例2

本文描述一种计算装置。计算装置包括配置成运行所存储指令的中央处理单元(CPU)以及存储指令的存储装置。存储装置包括处理器可执行代码,其在由CPU运行时配置成采集深度信息和图像纹理信息。多边形的3D网格可从深度信息来计算。对应纹理可从图像纹理信息来确定,并且可生成编码视频流,其经由网格帧、纹理帧、变化帧或者它们的任何组合中的至少一个来指定3D网格和对应纹理。

3D网格帧可包括来自诸如立体照相装置、飞行时间传感器、深度传感器、结构光照相装置、径向图像、经计算以创建多视图立体重构的图像的2D照相装置时间序列或者它们的任何组合之类的图像捕获机构的深度信息。纹理帧可包括纹理坐标、纹理信息、图像纹理信息或者它们的任何组合中的至少一个。此外,变化帧可包括部分网格帧信息、部分纹理帧信息或者它们的任何组合。另外,中央处理单元或图形处理单元可将编码视频流与3D合成图形对象相组合,并且再现编码视频流和3D合成图形对象的组合。中央处理单元或图形处理单元也可采用合成图像的添加、照明、遮蔽、对象置换、化身引入或者它们的任何组合中的至少一个来改变编码视频流。此外,编码视频流可按照任何CODEC格式、任何视频传输格式或者它们的任何组合来标准化。计算装置还可包括无线电和显示器,无线电和显示器在通信上至少耦合到中央处理单元。

示例3

本文描述其中存储了指令的至少一个非暂时机器可读介质。响应运行于计算装置,指令使计算装置得到深度信息和图像纹理信息。多边形的3D网格可从深度信息来计算,并且对应纹理可使用图像纹理信息来确定。3D网格和对应纹理可使用网格帧、纹理帧、变化帧或者它们的任何组合中的至少一个来编码。

网格帧可包括来自诸如立体照相装置、飞行时间传感器、深度传感器、结构光照相装置、径向图像、经计算以创建多视图立体重构的图像的2D照相装置时间序列或者它们的任何组合之类的图像捕获机构的深度信息。纹理帧包括纹理坐标、纹理信息、图像纹理信息或者它们的任何组合中的至少一个。此外,变化帧包括部分网格帧信息、部分纹理帧信息或者它们的任何组合。指令还可包括将编码的多边形的3D网格和对应纹理与3D合成图形对象相组合,并且再现组合的多边形的3D网格和对应纹理与3D合成图形对象。另外,多边形的编码3D网格和对应纹理可采用合成图像的添加、照明、遮蔽、对象置换、化身引入或者它们的任何组合中的至少一个来改变。编码网格和对应纹理也可按照任何CODEC格式、任何视频传输格式或者它们的任何组合来标准化。

示例4

本文描述一种计算装置。该计算装置包括主处理器,其配置成运行所存储指令,其中主处理器使用照相装置串行接口与图像捕获机构进行接口。主处理器配置成采集深度信息和图像纹理信息。主处理器还配置成从深度信息来计算多边形的3D网格。此外,主处理器配置成从图像纹理信息来确定对应纹理,并且生成编码视频流,其经由网格帧、纹理帧、变化帧或者它们的任何组合中的至少一个来指定多边形的3D网格和对应纹理。照相装置串行接口包括数据传输接口,其是采用数据和时钟信号的单向差分串行接口。图像捕获机构还可包括深度传感器、图像传感器、红外传感器、X射线光子计数传感器、电荷耦合器件(CCD)图像传感器、互补金属氧化物半导体(CMOS)图像传感器、芯片上系统(SOC)图像传感器、具有光敏薄膜晶体管的图像传感器或者它们的任何组合。

示例5

本文描述一种在打印装置中打印使用多边形的3D网格和对应纹理所编码的图像的打印装置。该打印装置包括打印对象模块,其配置成检测使用多边形的3D网格和对应纹理所编码的图像,并且采用合成图像的添加、照明、遮蔽、对象置换、化身引入或者它们的任何组合中的至少一个来改变图像。打印对象模块也可打印使用多边形的3D网格和对应纹理所编码的图像。此外,打印对象模块能够打印图像的多个视图。

要理解,上述示例中的具体细节可在一个或多个实施例中的任何位置使用。例如,上述计算装置的所有可选特征也可针对本文所述的方法或计算机可读介质的任一个来实现。此外,虽然本文中可使用流程图和/或状态图来描述实施例,但是,本发明并不局限于那些简图或者本文中的对应描述。例如,流程无需经过每个所示的框或状态,或者按照与本文所示和所述完全相同的顺序。

本发明并不局限于本文所示的具体细节。实际上,获益于本公开的本领域的技术人员会理解,在本发明的范围内可对以上描述和附图进行其它许多变更。相应地,以下包含对本发明的任何修正的权利要求书定义本发明的范围。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号