2维图像或视频到3维立体图像或视频的实时自动转换的制作方法

文档序号:9221969阅读:555来源:国知局
2维图像或视频到3维立体图像或视频的实时自动转换的制作方法
【专利说明】2维图像或视频到3维立体图像或视频的实时自动转换
【背景技术】
[0001] 在3维(3D)成像中,可将2维(2D)图像或视频帧转换成3D立体图像或视频以呈 现给用户。可将3D立体图像或视频(通常是左图像或视频和右图像或视频)呈现给可从 这些图像中体验3D效果的用户。随着在电视、监视器、智能电话和平板设备上的各种3D立 体显示的最新发展和商业化,对立体3D内容的需求在增长。2D到3D的转换技术为内容制 作商并同样为消费者高度追求,以将现有2D图像和视频转换为3D,以获得更生动的视觉化 和娱乐。
[0002] -般而言,可以有三种主要类别的2D到3D的转换技术:手动的、半自动的和自动 的。手动过程通常涉及人类操作者和艺术家检查图像或视频序列的每一个帧并为那些图像 或帧分配深度值。这样的过程就人工成本和处理时间而言是昂贵的。半自动技术通常利用 诸如计算机软件或硬件设备的自动化元件,在可指导或更正操作的人类操作者的辅助下创 建3D图像。这样的过程比手动过程较不昂贵并更快,但仍通常不适于电影和广播工作室等 以外的应用。与在转换过程期间要求人为干预的手动或半自动技术不同,自动转换可提供 仅依赖于用于2D到3D转换的硬件和/或软件的简单而高效的过程。
[0003] 由于存在对2D图像和视频到3D图像和视频的自动、实时转换的广泛需求,因此使 转换更准确及可靠可以是受期望的。
【附图说明】
[0004] 在所附附图中,通过示例的方式而非限制的方式示出本文所述的素材。为了图示 的简明和清晰起见,图中示出的元件不一定是按比例绘制的。例如,为了清晰,可以将一些 元件的尺度相对于其它元件放大。而且,在认为合适的地方,在多个图之间重复了参考标号 以指示相对应的或类似的元件。在附图中:
[0005] 图1是用于将2维(2D)图像转换成3维(3D)立体图形的示例系统的说明性图;
[0006] 图2是用于确定单个像素的锐度值的示例技术的说明性图;
[0007] 图3是用于对锐度值的基于区域的取样的示例技术的说明性图;
[0008] 图4是用于缩放锐度值的示例技术的说明性图;
[0009] 图5是用于将2维(2D)图像转换成3维(3D)立体图像的示例系统的说明性图;
[0010] 图6是用于将2维(2D)图像转换成3维(3D)立体图像的示例系统的说明性图; [0011] 图7是用于将2维(2D)图像转换成3维(3D)立体图像的示例系统的说明性图;
[0012] 图8是用于将2维(2D)图像转换成3维(3D)立体图像的示例系统的说明性图;
[0013] 图9是解说用于将2维(2D)图像转换成3维(3D)立体图像的示例过程的流程 图;
[0014] 图10是用于将2维(2D)图像转换成3维(3D)立体图像的示例系统的说明性图;
[0015] 图11是示例系统的说明性图;以及
[0016] 图12是全部根据本公开的至少一些实现来安排的示例设备的说明性图。
【具体实施方式】
[0017] 现在参考所附附图描述一个或多个实施例或实现。尽管讨论了特定配置和安排, 但应当理解,这样做仅是出于说明性目的。相关领域的技术人员将意识到,可以采用其它配 置和安排而不背离本描述的精神和范围。对于相关领域的技术人员显而易见的是,本文所 描述的技术和/或安排也可以在本文所描述的那些之外的各种其它系统和应用中采用。
[0018] 尽管以下描述阐述了可以表现在诸如片上系统(SoC)架构之类的架构中的各种 实现,但本文所描述的技术和/或安排的实现不限于特定架构和/或计算系统,并可由出于 类似目的的任何架构和/或计算系统来实现。例如,采用例如多个集成电路(1C)芯片和/ 或封装的各种架构和/或诸如机顶盒、智能电话等的各种计算设备和/或消费电子(CE)设 备可以实现本文所描述的技术和/或安排。而且,尽管以下描述可以阐述诸如逻辑实现、系 统组件的类型和相互关系、逻辑分区/集成选择等的众多具体细节,但没有此类具体细节 也可以实践所要求保护的主题。在其它实例中,可以不详细示出诸如例如控制结构和完整 的软件指令序列之类的一些素材,以便不使本文所公开的素材含糊。
[0019] 本文所公开的素材可以在硬件、固件、软件或其任何组合中实现。此处所公开的素 材也可以实现为存储在机器可读介质上的指令,该指令可以由一个或多个处理器读取并执 行。机器可读介质可以包括用于以可由机器(例如,计算设备)读取的形式存储或传输信 息的任何介质和/或机制。例如,机器可读介质可以包括:只读存储器(ROM);随机存取存 储器(RAM);磁盘存储介质;光存储介质;闪存设备;电、光、声或其它形式的传播信号(例 如,载波、红外信号、数字信号等)及其它。
[0020] 说明书中对"一个实现"、"实现"、"示例实现"等的引用指示所描述的实现可以包 括特定特征、结构或特性,但是,每一个实现可以不必包括该特定特征、结构,或特征。此外, 此类短语不一定指同一实现。而且,当结合实现来描述特定特征、结构或特性时,不管是否 在本文中明确描述,结合其它实现来实现这样的特征、结构或特性被认为是在本领域技术 人员的知识范围内。
[0021] 以下描述了关于2维图像或视频到3维立体图形或视频的实时自动化转换的系 统、装置、制品和方法。
[0022] 如上所述,3D图像或视频可使用手动、半自动或自动技术从2D图像或视频中生 成。手动和半自动过程在人工劳力和处理时间方面可能是相对昂贵的,使得它们可能仅适 于其中图像或视频可在呈现给用户之前被转换的实现。
[0023] 如以下进一步描述的那样,可自动地以及实时地将2D图像或视频转换成3D立体 图像或视频。例如,可确定2D输入图像的单个像素的锐度值。例如,锐度值可以基于YUV 或YCbCr颜色空间中的Y值或R/G/B值的合并。在一些示例中,锐度值可基于像素周围的 3X3窗口中的垂直和水平锐度而确定。基于锐度值,能以不同的分辨率来执行两个基于区 域的取样以生成两组样本锐度值。例如,不同的分辨率可通过在两个取样中使用不同的区 域尺寸来提供。以不同的分辨率执行取样可提供全局图案(例如,对于较大的区域)和更 精细的细节(例如,对于较小的区域)的提取。可缩放(即,经修改已增强3D效果)每一 个基于区域的取样的样本锐度值并使其平滑(例如,通过应用平均过滤器)。经缩放和平滑 的锐度值可用来内插在取样期间丢失的像素位置,使得每一个基于区域的取样都可达到输 入图像的全分辨率。可合并每一个取样的经内插的锐度值以生成深度映射(map)。
[0024] 通过将深度映射转换成视差(disparity)值映射并使用该视差值映射来生成左 侧和右侧3D立体图像,可使用深度映射和输入图像来生成左侧和右侧3D立体图像。或者, 可通过执行深度对比的垂直和/或水平增强、重影减少、以及时域过滤(如果图像是视频 帧)来进一步处理深度映射。然后,可使用此类经增强的深度映射以便如所讨论的那样来 生成左侧和右侧3D立体图像。一般而言,可将该进一步处理中的任何部分或全部应用于深 度映射,或完全不应用该进一步处理。
[0025] 这样的技术可提供2D图像或视频到3D立体图像或视频的自动和实时的转换。例 如,可将得到的3D立体图像或视频呈现给用户。
[0026] 图1是根据本公开的至少一些实现而安排的用于将2维(2D)图像转换成3维(3D) 立体图像的示例系统1〇〇的说明性图。如所示的那样,系统1〇〇可包括具有锐度测量模块 115的基于锐度的深度映射模块110、取样模块120、取样模块125、缩放模块130、缩放模块 135、平滑模块140、平滑模块145、内插模块150、内插模块155和/或合并模块160。在各 种实现中,可将系统100配置为将2D图像转换成3D立体图像,并且具体而言确定2D输入 图像105的深度映射170。如以下进一步讨论的那样,可经由各种软件和/或硬件实现来采 用系统100。如以下也进一步讨论的那样,系统100可包括为了清晰起见未在图1中示出的 附加模块。在各种实现中,所示的模块可经由下文中进一步讨论但未在图1中示出的中央 处理单元或图形处理单元来实现。而且,在一些示例中,系统100可包括未在图1中示出的 附加项。例如,系统100可包括射频型(RF)收发机、显示器、天线、扬声器、话筒、加速度计、 存储器、路由器、网络接口逻辑等。
[0027] 如所讨论的那样,系统100可供将2D图像转换成3D立体图像,并且具体而言,系 统100可基于2D输入图像105来提供深度映射170。如所示的那样,可在基于锐度的深度 映射模块110处接收2D图像105。一般而言,2D图像105可包括任何适合的图像数据(诸 如例如,图像文件或视频帧)且2D图像105可包括任何数量的单个像素。可在系统100处 接收来自外部设备的2D图像105,或者可从系统100的另一个模块(例如,从系统100的存 储器存储)接收2D图像105。
[0028] 如所示的那样,锐度测量模块115可确定锐度值117,该锐度值可被发送到取样模 块120和取样模块125。锐度值117可基于2D图像105的单个像素的单独的像素值。例 如,可基于2D图像105的单个像素的亮度Y值(例如,如果2D图像105被表示在YUV颜色 空间或者YCbCr颜色空间中)或者2D图像105的单个像素的R/G/B值(例如,如果2D图 像被表示在R/G/B颜色空间中)来确定示例锐度值117。当使用R/G/B或其他多通道颜色 空间时,可确定独立的测量(例如,针对每一个通道的测量)并将它们合并为使用例如MAX 操作(即,确定这些独立测量的最大值的操作)或AVG操作(S卩,确定这些独立测量的平均 的操作)的单个测量。
[0029] -般而言,可通过任何适合的方式确定锐度值117。图2是根据本公开的至少一些 实现而安排的用于确定单个像素的锐度值的示例技术的说明性图。如图2中所示,对于单 个像素210(标记为像素"e"),可考虑像素窗口 215。如所示的那样,像素窗口 215可以是 例如3X3像素窗口并可包括相邻像素220(标记为"a"- "d"和"f"_ "i")。一般而言, 像素窗口 215可以是任何尺寸且所述的计算可以扩展到更大的像素窗口。为了确定像素的 锐度值,可确定垂直锐度值和水平锐度值。垂直锐度值可确定为像素b(即,像素e上面的 像素)的像素值和像素e的像素值之间的绝对值差与像素h(S卩,像素e下面的像素)的像 素值和像素e的像素值之间的绝对值差之间的绝对值差。水平锐度值可确定为像素d(即, 像素e左边的像素)的像素值和像素e的像素值之间的绝对值差与像素f(即,像素e右边 的像素)的像素值和像素e的像素值之间的绝对值差之间的绝对值差。然后可以基于垂直 锐度和水平锐度,将单个像素e的锐度确定为例如它们的最大值或他们的平均值。像素e 的锐度的此类确定如下以方程式(1)_(3)示出:
[0030] 垂直 _ 锐度(e) =ABS(ABS(b-e)-ABS(h-e)) (1)
[0031] 水平 _ 锐度(e) =ABS(ABS(d-e)-ABS(f-e)) (2)
[0032] 锐度(e) =MAX(垂直_锐度,水平_锐度)或者 (3)
[0033] AVG(垂直_锐度,水平_锐度)
[0034] 其中垂直_锐度可以是垂直的锐度,ABS可以是确定给定值的绝对值的操作,b、e、 h、d和f可表示在所述像素位置处的像素值,水平_锐度可以是水平的锐度,MAX可以是确 定给定值的最大值的操作,且AVG可以是确定给定值的平均值的操作。
[0035] 如所讨论的那样,在一些示例中,可考虑较大的像素窗口 215,且在这样的示例中, 垂直和/或水平锐度测量也可被扩展。而且,在一些示例中,确定锐度值117时可考虑对角 线锐度测量(即,像素a与i和/或c与g的类似绝对值差)。
[0036] 返回到图1,可将锐度值117发送到取样模块120和取样模块125。如下面进一步 讨论的那样,取样模块120、缩放模块130、平滑模块140和内插模块150可执行与取样模块 125、缩放模块135、平滑模块145和内插模块155类似的操作,但以不同的分辨率执行。不 同的分辨率可供例如基于区域的取样。来自这样的处理的结果可在合并模块160处合并以 生成深度映射170。这样的不同分辨率可通过例如对不同的区域尺寸取样或者以锐度值的 不同缩小因子对相同的区域尺寸取样而实现。
[0037] 在使用了不同的区域尺寸的示例中,可使用任何尺寸或形状的区域。图3是根据 本公开的至少一些实现而安排的对锐度值的基于区域的取样的示例技术的说明性图。如所 示的那样,可将锐度值117 (为了呈现的清晰起见,一般示为空白图像)划分成例如子区域 305和子区域310。如所示那样,子区域305和310可以是不同尺寸的。一般而言,子区域 305和310可以各自包括可覆盖所有的锐度值117的不重叠的子区域。而且,如图3中所 示,子区域305和310可以是任何适合的形状,诸如例如,矩形或正方形。子区域305和310 的尺寸和/或形状基于2D输入图像105和/或锐度值117的特性(诸如例如,2D输入图像 105和/或锐度值117的尺寸或分辨率)可以是固定的或者可适的。
[0038] 返回到图1,取样模块120可执行锐度值117的基于区域的取样以确定样本锐度值 122,且取样模块125可执行锐度值117的基于区域的取样(例如,与由取样模块120所取 样的相同的锐度值)以确定样本锐度值127。如所讨论的那样,一般而言,取样模块120和 125可例如经由以不同的区域尺寸取样或经由使用不同的缩小因子取样来以不同的分辨率 执行基于区域的取样。而且,在使用了不同的区域尺寸的示例中,取样值可对每一个子区域 提供单个值。例如,对于子区域,单个值可以是区域中的最大锐度值(即,该单个值可以是 MAX(鲁),其中鲁表示相关区域中的所有锐度值)。在其他示例中,可以使用区域的平均锐 度值。在任何情况下,基于区域的取样可提供可降低后续操作的数量(并由此提高效率) 和/或可提供对锐度值的更平滑的表示的对锐度值117的取样。如所示的那样,系统100 可包括取样模块120和取样模块125。在其他示例中,可使用单个取样模块来生成样本锐度 值122和样本锐度值127二者。
[0039] 如所示的那样,可将样本锐度值122发送到缩放模块130且可将样本锐度值127 发送到缩放模块135。缩放模块130可缩放样本锐度值122以生成经缩放的锐度值132。 缩放模块135可缩放样本锐度值122以生成经缩放的锐度值137。对样本锐度值的缩放可 修改样本锐度值以增强3D效果,并可使用各种技术来执行对样本锐度值的缩放。例如,可 使用预定的映射函数或可执行对样本锐度值的自适应性分析来确定映射函数。在一些示例 中,可使用分段的线性映射,如图4中所示。
[0040] 图4是根据本公开的至少一些实现而安排的用于缩放锐度值的示例技术的说明 性图。如图4中所示,可沿x轴示出样本锐度值,且可沿y轴示出经缩放的样本锐度值。如 所示的那样,分段的线性映射可包括段410、420、430和440,其每一个都可提供该分段的线 性映射的直线段。如所示的那样,分段的线性映射可提供小样本锐度值的较大缩放(例如, 如由段410的大斜率提供的),而可将较大样本锐度值缩放较小的量(例如,如由段440的 小斜率提供的)。此类分段的线性映射可提供较不锐利(例如,模糊并且通常是背景)区域 和较锐利(例如,通常是前景)区域之间的深度间隙的增长,同时减小较不锐利和较锐利区 域内的深度间隙。图4的示例可示为以下的方程式(4):
[0041] if(sharp_in<16)sharp_out= 4*sharp_in+0 ; (4)
[0042] elseif(sharp_in<64)sharp_out= 2*sharp_in+32 ;
[0043] elseif(sharp_in<128)sharp_out=l/2*sharp_in+128 ;
[0044] elsesharp_out=l/4*sharp_in+160 ;
[0045] 其中sharp_in(锐度_输入)可以是样本锐度值,sharp_out(锐度_输出)可以 是经缩放的样本锐度值。由方程式(4)示出的关系可由如方程式(5)中所示的四个参数三 元组表示:
[0046] {阈值,比例,偏移} = {16,4,0} (5)
[0047] {64, 2,32}
[0048] {128,1/2,128}
[0049] {256,1/4,160}
[0050] 其中"阈值"可以是缩放因子按其改变的阈值,"比例"可以是缩放因子,且"偏移" 可以是有关段的偏移。以上阈值、比例和偏移可以是预定值,或者它们可基于2D输入图像 105、锐度值117或样本锐度值122或127的特性。如所示的那样,系统100可包括缩放模 块130和缩放模块135。在其他示例中,可使用单个缩放模块来生成经缩放的锐度值132和 经缩的放锐度值137二者。
[0051] 在另一示例中,经缩放的锐度值132可使用自适应性调整来确定。例如,可利用2D 输入图像105中的锐度值直方图来分析样本锐度值122。在这样的示例中,可将模糊区域 (例如,背景区域)和锐利区域(例如,前景区域)标识为直方图中分离的锐度值群集。所 标识的群集可以是经缩放的,使得模糊区域变得更模糊且锐利区域变得更锐利那样,从而 导致这两个区域的更大的分离。
[0052] 如所示的那样,可将经缩放的锐度值132发送到平滑模块140且可将经缩放的锐 度值137发送到平滑模块145。平滑模块140可通过例如应用3X3平均过滤器使经缩放的 锐度值132平滑以生成经平滑的锐度值142。平滑模块145可通过例如应用3X3平均过 滤器使经缩放的锐度值137平滑以生成经平滑的锐度值147。由平滑模块140或平滑模块 145应用的过滤器的尺寸可以是诸如4X4或5X5等的不同尺寸。而且平均过滤器的尺寸 可预先确定或者可基于所接收的经缩放的锐度值来确定。如所示的那样,系统100可包括 平滑模块140和平滑模块145。在其他
当前第1页1 2 3 4 5 6 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1