CN118266007A - 用于分层二维增强现实特效的过程图案生成 - Google Patents
用于分层二维增强现实特效的过程图案生成 Download PDFInfo
- Publication number
- CN118266007A CN118266007A CN202280076856.XA CN202280076856A CN118266007A CN 118266007 A CN118266007 A CN 118266007A CN 202280076856 A CN202280076856 A CN 202280076856A CN 118266007 A CN118266007 A CN 118266007A
- Authority
- CN
- China
- Prior art keywords
- pattern information
- video
- pattern
- video frames
- computing device
- 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
- 238000000034 method Methods 0.000 title claims abstract description 108
- 230000000694 effects Effects 0.000 title claims abstract description 52
- 230000008569 process Effects 0.000 title claims description 46
- 230000003190 augmentative effect Effects 0.000 title description 6
- 230000000873 masking effect Effects 0.000 claims abstract description 6
- 239000003086 colorant Substances 0.000 claims description 12
- 238000004880 explosion Methods 0.000 claims description 10
- 230000033001 locomotion Effects 0.000 claims description 5
- 230000015654 memory Effects 0.000 description 24
- 238000013515 script Methods 0.000 description 19
- 238000012545 processing Methods 0.000 description 18
- 238000004891 communication Methods 0.000 description 16
- 230000006870 function Effects 0.000 description 10
- 230000011218 segmentation Effects 0.000 description 10
- 238000010586 diagram Methods 0.000 description 5
- 238000009877 rendering Methods 0.000 description 5
- 238000004422 calculation algorithm Methods 0.000 description 4
- 230000008859 change Effects 0.000 description 4
- 230000003287 optical effect Effects 0.000 description 4
- 230000000007 visual effect Effects 0.000 description 4
- 238000013500 data storage Methods 0.000 description 3
- 230000005540 biological transmission Effects 0.000 description 2
- 230000001413 cellular effect Effects 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 230000014509 gene expression Effects 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- 230000003278 mimic effect Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000000644 propagated effect Effects 0.000 description 2
- 229920006395 saturated elastomer Polymers 0.000 description 2
- 230000009466 transformation Effects 0.000 description 2
- 239000010981 turquoise Substances 0.000 description 2
- RYGMFSIKBFXOCR-UHFFFAOYSA-N Copper Chemical compound [Cu] RYGMFSIKBFXOCR-UHFFFAOYSA-N 0.000 description 1
- 230000009471 action Effects 0.000 description 1
- 238000007792 addition Methods 0.000 description 1
- 230000000295 complement effect Effects 0.000 description 1
- 238000004590 computer program Methods 0.000 description 1
- 238000007796 conventional method Methods 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 230000018109 developmental process Effects 0.000 description 1
- 239000000835 fiber Substances 0.000 description 1
- 238000003709 image segmentation Methods 0.000 description 1
- 238000007726 management method Methods 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 238000005259 measurement Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 230000005055 memory storage Effects 0.000 description 1
- 238000003032 molecular docking Methods 0.000 description 1
- 230000001537 neural effect Effects 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 230000002085 persistent effect Effects 0.000 description 1
- 238000012805 post-processing Methods 0.000 description 1
- 230000002441 reversible effect Effects 0.000 description 1
- 238000005070 sampling Methods 0.000 description 1
- 239000000758 substrate Substances 0.000 description 1
- 239000013589 supplement Substances 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 230000007723 transport mechanism Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T11/00—2D [Two Dimensional] image generation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/10—Segmentation; Edge detection
- G06T7/12—Edge-based segmentation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/10—Image acquisition modality
- G06T2207/10016—Video; Image sequence
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/30—Subject of image; Context of image processing
- G06T2207/30196—Human being; Person
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Processing Or Creating Images (AREA)
Abstract
本文公开了用于将图案应用特效应用于视频的一个或多个帧的方法、系统和存储介质。一些示例可以包括:获得包括一个或多个视频帧的视频数据;确定一个或多个视频帧中的每个视频帧中的一个或多个部分;基于一个或多个视频帧中的每个视频帧中的一个或多个部分来确定一个或多个对象掩模;将一个或多个对象掩模组合成单个掩模;获得图案信息,该图案信息表示将被应用于一个或多个视频帧的至少一层的一个或多个图形特效;将图案信息应用于单个掩模以生成经掩模的图案信息;并且由计算设备经由将经掩模的图案信息添加到一个或多个视频帧来生成渲染视频。
Description
相关申请的交叉引用
本申请要求2021年11月19日提交的名称为“PROCEDURAL PATTERN GENERATIONFOR LAYERED TWO-DIMENSIONAL AUGMENTED REALITY EFFECTS(用于分层二维增强现实特效的过程图案生成)”的美国专利申请序列第17/531,462号的优先权,其公开内容全文以引用方式并入本文。
背景技术
视频编辑技术广泛可用,以向用户提供用于编辑视频的各种方式。例如,用户可以编辑视频以向该视频添加图案应用特效。然而,许多视频编辑技术不允许用户添加所生成的图案和/或控制关于图案和视频的交互而生成的图案。图案应用特效可以模仿动漫中常见的魔法变换序列。虽然渲染的动画序列可以被添加到视频中,无论是现场视频还是记录的视频,但这样的动画序列可能需要大量的存储和内存空间,从而限制了可以被显示或以其他方式包括在视频中的内容的多样性。因此,仍然需要开发用于渲染所生成的图案或以其他方式控制图案应用特效以增强用户体验的视频编辑技术。
已经描述了关于这些和其他一般考虑的本文公开的方面。此外,尽管可以讨论相对特定的问题,但是应当理解,示例不应当被限于解决在本公开的背景技术或其他方面中确定的特定问题。
发明内容
根据本公开的至少一个示例,至少一个方面涉及一种将图案应用特效应用于视频的一个或多个帧的方法。该方法可以包括由计算设备获取包括一个或多个视频帧的视频数据。该方法可以包括由计算设备确定一个或多个视频帧中的每个视频帧的一个或多个部分。该方法可以包括由计算设备基于一个或多个视频帧中的每个视频帧的一个或多个部分确定一个或多个对象掩模。该方法可以包括由计算设备将一个或多个对象掩模组合成单个掩模,该单个掩模表示一个或多个对象掩模。该方法可以包括获取图案信息,该图案信息表示要应用于一个或多个视频帧的至少一层的一个或多个图形特效。该方法可以包括将图案信息应用于单个掩模,以生成经掩模的图案信息。该方法可以包括由计算设备经由将经掩模的图案信息添加到一个或多个视频帧来生成渲染视频。
本公开的另一方面涉及一种将图案应用特效应用于视频的一个或多个帧的系统。该系统可以包括一个或多个硬件处理器,这些硬件处理器由机器可读指令配置,以用于将图案应用特效应用于视频的一个或多个帧。机器可读指令可以被配置为由计算设备获取包括一个或多个视频帧的视频数据。机器可读指令可以被配置为由计算设备确定一个或多个视频帧中的每个视频帧的一个或多个部分。机器可读指令可以被配置为由计算设备基于一个或多个视频帧中的每个视频帧中的一个或多个部分确定一个或多个对象掩模。机器可读指令可以被配置为由计算设备将一个或多个对象掩模组合成单个掩模,该单个掩模表示一个或多个对象掩模。机器可读指令可以被配置为获取图案信息,该图案信息表示要应用于一个或多个视频帧的至少一层的一个或多个图形特效。机器可读指令可以被配置为将图案信息应用于单个掩模以生成经掩模的图案信息。机器可读指令可以被配置为由计算设备经由将经掩模的图案信息添加到一个或多个视频帧来生成渲染视频。
本公开的另一方面涉及一种用于将图案应用特效应用于视频的一个或多个帧的计算机可读存储介质。在一些实施例中,计算机可读存储介质可以包括可由一个或多个处理器执行的指令,以由计算设备获取包括一个或多个视频帧的视频数据。在一些实施例中,计算机可读存储介质可以包括可由一个或多个处理器执行的指令,以由计算设备确定一个或多个视频帧中的每个视频帧的一个或多个部分。在一些实施例中,计算机可读存储介质可以包括可由一个或多个处理器执行的指令,以由计算设备基于一个或多个视频帧中的每个视频帧中的一个或多个部分确定一个或多个对象掩模。在一些实施例中,计算机可读存储介质可以包括可由一个或多个处理器执行的指令,以由计算设备将一个或多个对象掩模组合成单个掩模,该单个掩模表示一个或多个对象掩模。在一些实施例中,计算机可读存储介质可以包括可由一个或多个处理器执行的指令,以获取图案信息,该图案信息表示要应用于一个或多个视频帧的至少一层的一个或多个图形特效。在一些实施例中,计算机可读存储介质可以包括可由一个或多个处理器执行的指令,以将图案信息应用于单个掩模从而生成经掩模的图案信息。在一些实施例中,计算机可读存储介质可以包括可由一个或多个处理器执行的指令,以由计算设备通过将经掩模的图案信息添加到一个或多个视频帧生成渲染视频。
上述一个或多个方面中的任何方面与一个或多个方面中的任何其他方面结合。如本文所述的一个或多个方面中的任何方面。
提供本发明内容是为了以简化的形式介绍所选概念,这些概念将在下面的具体实施方式中进一步描述。本发明内容并非旨在确定权利要求主题的关键特征或基本特征,也不旨在用于限制所要求保护的主题的范围。附加方面、特征和/或实施例的优点将部分地在下面的描述中进行阐述,并且将部分地从描述中清楚,或可通过本公开的实践了解到。
附图说明
参考以下附图描述了非限制性和非详尽的示例。
图1描绘了根据本公开的示例的用于基于图像或视频片段中的分割区域生成一个或多个图案的图案生成过程和同步系统的细节。
图2描绘了根据本公开的示例的图1的图案生成过程和同步系统的计算设备的细节。
图3描绘了根据本公开的示例的示例性视频帧,其示出了掩模的生成以及所生成的图案到所生成的掩模的应用。
图4描绘了根据本公开的示例的无限图案生成过程、图案和掩模组合过程以及视频的示例层的附加细节。
图5描绘了根据本公开的示例的用于基于纹理或按程序生成的内容将一个或多个图案应用特效渲染到视频数据的简化方法的细节。
图6描绘了示出计算设备的物理组件(例如,硬件)的框图,利用该物理组件可以实践本公开的各方面。
图7A示出了可用于实践本公开的各方面的计算设备的第一示例。
图7B示出了可用于实践本公开的各方面的计算设备的第二示例。
图8示出了根据本公开的示例的用于处理数据的系统的架构的至少一个方面。
具体实施方式
在以下详细描述中,参考构成本文一部分的附图,并且在附图中通过图示的方式示出了具体的方面或示例。可以组合这些方面,可以利用其他方面,并且可以做出结构改变而不偏离本公开。这些方面可以作为方法、系统或设备来实践。因此,这些方面可以采取硬件具体实施、完全软件具体实施或结合软件和硬件方面的具体实施的形式。因此,以下详细描述不应被视为限制性的,并且本公开的范围由所附权利要求及其等同物来定义。
根据本公开的示例,图案生成过程和同步系统允许用户基于一个或多个掩模(诸如颜色掩模)将各种二维图形的纹理和/或程序生成的图案应用于视频图像或视频片段的一个或多个分割部分,其中该一个或多个掩模可以应用于视频片段中的目标主题以及视频片段的背景和前景区域。例如,图案应用特效可以模仿动漫中常见的魔法变换序列。用于将内容添加到视频的传统方法包括利用预渲染的动画序列;虽然预渲染的动画序列可以被添加到直播、基本上实时或记录的视频中,但这样的动画序列可能需要大量的存储和内存空间,从而限制了可以被显示或以其他方式包括在视频中的内容的多样性。因此,在本文提供的示例中,系统和方法利用数个层中的纹理爆炸(bomb)来创建无限伪随机图案。图案可以从预定义的形状池中选择,并且可以用随机颜色方案进行着色。
如上所述,本文描述了使用过程生成技术生成增强现实背景的解决方案。在示例中,为了生成图案层,其中在每层的基础上生成图案,在着色器(shader)处处理所生成的伪随机数,使得生成随机图案的外观。因此,基于一个或多个纹理,可以生成无限数目的图案。根据本公开的示例,可以通过提供来自各种视频和/或图像分割过程的纹理来掩模所生成的图案。分割掩模可以组合成单个掩模,诸如RGBA掩模,以提高效率和易用性。因此,可以选择掩模的部分(诸如,与视频图像或视频片段中的对象相关联的部分),以便将特定层的所生成的图案应用于所选择的部分或层。
在示例中,所生成的图案层可以被布置为利用背景(例如,不是视频或图像的主题)中的多个填充背景和纹理爆炸机层;纹理爆炸层可以应用于视频或图像的主题。在示例中,填充可以包括平铺纹理;纹理爆炸机可以生成组成或创建所生成的图案的元素。然后,可以使用alpha+渲染顺序一个接一个地组合这些层,以便每个连续层都出现在前一层的顶部上。图形+背景可以通过与RGBA主题或身体掩模相乘的位掩模来区分,以隐藏图像中的背景或主题的部分。描述纹理爆炸的附加信息可见于GPU Gems的第20章:ProgrammingTechniques,Tips and Tricks for Real-Time Graphics(实时图形的编程技术、技巧和窍门),皮尔逊高等教育出版社,Randima Fernando–2004,其内容以引用的方式并入本文以用于其教导的所有内容和所有目的。
根据本公开的示例,图案生成代码可以为每个新生成的图案随机选择形状和/或颜色。这些形状可以包括一个或多个设计者定义的资源或在着色器中预定义的,或者以其他方式由着色器程序生成的程序形状。因此,如果资源格式正确,则图案的颜色方案可以设置为多种颜色。因此,颜色方案可以将背景配置成较冷的、较高的值并且更饱和,并且以较亮的值将图配置为较暖的、更不饱和的。可以使用HSV颜色空间中的分割互补方法来随机生成颜色方案。因此,在增强现实场景中使用纹理爆炸来进行过程图案生成可以利用独特的分层加上与纹理爆炸过程图案一起使用的掩模组合方法来实现,从而分层连续地生成前景+背景模式。
图1描绘了根据本公开的示例的用于基于图像或视频片段中的分割区域生成一个或多个图案的图案生成过程和同步系统100的细节。用户102可以生成、接收、获取或以其他方式获得视频片段108。随后,用户可以选择要添加到视频片段108或以其他方式包括在该视频片段中的一个或多个纹理图案和/或一个或多个程序生成的图案。图案生成过程和同步系统100允许用户102将纹理图案和/或按程序生成的图案应用于经由对象和/或区域分割创建的一个或多个层掩模。在示例中,分割的对象和/或区域可以跟随视频片段108中的目标主题的一个或多个目标身体部分。因此,可以基于视频中的不同分割区域来创建不同的掩模;然后经由纹理或过程生成为层的图案可以应用于特定的掩模部分。模式生成过程和同步系统100可以包括与用户102相关联的计算设备104和/或经由网络通信地耦合到计算设备104的服务器。该网络可以包括任何种类的计算网络,包括但不限于有线或无线局域网(LAN)、有线或无线广域网(WAN)和/或互联网。
在示例中,用户102可以利用计算设备104来获取视频片段108和指定的模式参数。用户102可以使用通信地耦合到计算设备104的相机来生成视频片段108。在这样的示例中,所生成的图案可以实时地或接近实时地应用于视频片段108,以允许用户102观看应用于一个或多个身体部位、前景和背景的所生成的图案特效,并且然后当用户在计算设备104上拍摄视频时提供输出视频片段112。备选地或附加地,用户102可以在计算设备104上接收、获取或以其他方式获得视频片段108。在一些示例中,用户102可以编辑视频片段108以添加所生成的图案特效。在一些方面,用户102可以利用计算设备104经由网络将视频片段112传输到服务器。计算设备104可以是便携式或非便携式计算设备中的任何一种。例如,计算设备104可以是智能电话、笔记本计算机、台式机、可穿戴电子设备、智能家用电器和服务器。视频片段108可以以任何格式获取,并且可以是压缩的和/或解压缩的形式。
计算设备104被配置为分析视频片段108的每帧,以标识该帧中的一个或多个目标主题的身体部分。例如,身体分割算法可以定义要从视频片段108中标识和提取的身体部分的列表。身体部分可以包括但不限于头部(例如,头发、帽子)、面部(例如,面部、眼镜、面罩)、躯干皮肤、上装(例如,夹克、连衣裙、外套、围巾)、下装(例如,裤子、短裤、裙子)、手部(例如,手臂皮肤、手套)和腿部(例如,腿部皮肤、鞋子、袜子)。在一些示例中,一个或多个身体部分可以与其他身体部分组合,以分割较大的区域或对象。例如,可以分割衣服,可以分割背景,可以分割前景,和/或可以分割目标主题的头发。
计算设备104被配置为接收由用户102配置的或者由图案生成过程和同步系统100预设的图案生成参数。备选地,在一些方面,图案生成参数可以与视频片段的分段部分相关联。在一些方面,分割器/掩模生成器可以生成要添加到视频片段108或由图案生成过程和同步系统100预设的分割区域或掩模。
在一些方面,用户可以选择视频片段108的分割区域或部分,并且生成针对视频片段的一个或多个区域的掩模,使得可以将纹理生成的或按程序生成的图案应用于指定的掩模。因此,使用一个或多个层参数或脚本,用户或图案生成过程和同步系统100可以指定要生成视频片段掩模的哪些部分或区域。此外,参数或脚本可以进一步限定要应用于一个或多个掩模区域的图案的颜色、宽度、高度、厚度和亮度。例如,可以将橙色分配给头部,将绿色分配给面部区域,将红色分配给躯干皮肤,将绿松石分配给顶部,将蓝色分配给裤子,将紫色分配给手部,将粉色分配给腿部,将黄色分配给背景,将粉色分配给前景。
此外,参数或脚本可以限定要生成的多个分割区域或掩模。也就是说,分割区域或掩模的数目可以与主题(例如,身体)的不同部分和/或图像或视频的不同部分(例如,背景、前景等)相关联。例如,可以为视频片段生成五个分割区域或掩模。
计算设备104被配置为将图案生成特效添加到视频片段108,并且经由计算设备的显示器将视频片段112呈现给用户。应当理解,当用户正在拍摄视频时,可以执行图案的生成、图案到一个或多个掩模的应用以及视频的合成,并且在显示器处向用户显示这些。
现在参考图2,描述了根据本公开的示例的计算设备202的附加细节。计算设备202可以与先前在图1中描述的计算设备104相同或相似。计算设备202可以包括通信接口204、处理器206和计算机可读存储装置208。在示例中,通信接口204可以耦合到网络并且接收视频片段108和图案参数/脚本。视频片段108(图1)可以存储为输入242视频帧246或图像,并且图案参数/脚本可以存储为层参数/脚本252。
在一些示例中,还可以在通信接口204处接收一个或多个图案,并且将这些图案存储在层参数/脚本252中。如前所述,层参数/脚本252可以配置分割器/掩模生成器238和/或形状和颜色生成器240的一个或多个参数。层参数/脚本252可以进一步限定视频片段的一个或多个部分的掩模的颜色、宽度、高度、厚度和亮度,以及纹理生成的或按程序生成的一个或多个图案。此外,层参数/脚本252可以为要添加到视频片段的视频或图像的不同部分限定多个掩模和/或多个图案。
在示例中,可以由计算设备104提供一个或多个应用程序210。该一个或多个应用程序210可以包括视频处理模块212、特效模块216和着色器256。视频处理模块212可以包括视频获取管理器224和身体部分标识符226。视频获取管理器224被配置为接收、获取或以其他方式获得包括一个或多个视频帧的视频数据。此外,身体部分标识器226被配置为标识帧中的一个或多个目标主题的一个或多个身体部分。在说明性方面中,目标主题是人。例如,身体分割算法可以定义要从视频片段108中标识和提取的身体部分的列表。身体部分可以包括但不限于头部(例如,头发、帽子)、面部(例如,面部、眼镜、面罩)、躯干皮肤、上装(例如,夹克、连衣裙、外套、围巾)、下装(例如,裤子、短裤、裙子)、手部(例如,手臂皮肤、手套)和腿部(例如,腿部皮肤、鞋子、袜子)。在一些示例中,身体部分的列表可以在通信接口204处被接收并且被存储。
此外,特效模块216可以包括分割器/掩模生成器238和形状和/或颜色生成器240。分段器/掩模生成器238可以跟随视频片段(例如,视频帧246)中的目标主题的一个或多个目标身体部分。例如,由身体部分标识器226标识的一个或多个身体部分可以用于分割目标主题的一个或多个部分,并且为这样的部分创建掩模。因此,可以基于视频中的不同分割区域来创建不同的掩模。根据本公开的示例,形状和/或颜色生成器240可以生成各种颜色、形状、大小、运动等的图案,并且将这样的图案提供给着色器256。在示例中,形状和颜色生成器240可以接收用户输入,诸如层参数/脚本252,并且使用这样的输入来生成或选择图案。备选地或附加地,形状和颜色生成器240可以随机生成图案、颜色和/或形状,并且/或者可以根据在视频帧246中检测到的一个或多个对象和/或如由分割器/掩模生成器238确定的可能存在的一个或多个掩模来选择形状、颜色和/或图案。因此,着色器256可以从掩模生成器238接收一个或多个掩模;这样的掩模可以被提供为单个掩模,其中掩模的不同部分经由颜色来区分(诸如RGBA掩模)。在一些示例中,着色器256可以根据层参数/脚本252和/或形状和颜色生成器240按程序生成图案。纹理生成的和/或按程序生成的图案可以被生成为不同的层;相应地,当掩模包括多个区分区域时,不同层中的每个层可以被分配到掩模中的一个或多个或掩模的一部分,或者以其他方式被应用到掩模中的一个或多个或掩模的部分。然后可以将所生成的图案应用于一个或多个视频图像,以将视频帧254渲染为计算设备202的输出244。
图3描绘了示例性视频帧302、304和306,用于解释根据本公开的示例的掩模的生成以及所生成的图案到所生成的掩模的应用。在示例中,视频帧302表示例如由图案生成过程和同步系统100接收的视频帧。视频帧302可以包括主题或用户308。可以使视频帧302经受分割处理,从而标识视频的一个或多个掩模或部分。在示例中,视频帧304描绘了分段帧304的说明性示例。例如,框架304可以被分割成头部掩模部分310、衬衫掩模部分312、手臂皮肤掩模部分314和裤子掩模部分316。此外,背景可以被分割或标识为318,前景可以被分割或标识为320。在本公开的示例中,第一图案322可以应用于头部掩模部分310,第二图案324可以应用于衬衫掩模部分312,第三图案326可以应用于手臂皮肤掩模部分314,第四图案328可以应用于裤子掩模部分316,第五图案330可以应用于背景部分318,并且第六图案322可以应用于前景部分320。在示例中,前景320可以在其他部分或掩模的前面;因此,图案332可以看起来在视频中的其他对象或部分的前面。类似地,背景部分381可以在其他部分或掩模的后面;因此,图案330可以应用在后面,使得其看起来在视频的其他对象或部分的后面。如在视频帧306中进一步描绘的,图案322至图案332中的一个或多个图案可以随着时间旋转、改变方向、改变颜色、改变大小、改变形状等。
图4描绘了根据本公开的示例的无限图案生成过程402、图案和掩模组合过程410以及视频的示例层428的附加细节。在示例中,可以根据层参数/脚本252来接收单个图像404;可以使单个图像404经受纹理爆炸处理406,从而可以生成无限图案408。如402所描绘,这样的过程可以被称为纹理采样或生成。备选地或附加地,着色器可以按程序生成图案或图像,使得纹理爆炸器406将纹理爆炸过程应用于按程序生成的图案以生成无限图案408。无论如何,无限模式408可以存在或者以其他方式被分配给视频的一个或多个层。
图案和掩模组合过程410可以将所生成的图案层424与掩模组合,如前所述。例如,分割器/掩模生成器可以提供头发掩模412、背景掩模414和/或衣服掩模416。在一些示例中,例如,在418处,多个掩模412、414和/或416可以组合成单个RGBA掩模。备选地或附加地,多个掩模可以保持特定于视频片段或图像的每个部分或区域。然后可以在424处将(多个)掩模与图案层组合;在示例中,图案层可以根据上述402生成和/或可以例如使用调色板生成器420和/或随机形状生成器422随机生成。因此,图案层424和RGBA身体掩模可以组合(例如,经由乘法或点乘法)以产生图案应用特效。在示例中,然后可以在后处理步骤426处将图案应用特效应用于视频。
图4进一步描绘了多个层428,以用于解释在整个图案应用特效过程中使用的一个或多个层。在示例中,可以基于用户输入、预选值和/或视频图像或视频片段中存在的内容来确定、指定或以其他方式标识多个背景层(例如,填充层430、纹理爆炸器1层432和/或纹理爆炸器2层434)。类似地,与视频图像或视频片段中的图或主题相关联或以其他方式与之相关联的层可以包括填充层436和/或纹理爆炸器1层438。当然,多个层中可以包括更多或更少的层,并且在一些情况下,这些层可以以不同的方式分组,而不是作为背景层或图形层或以其他方式与背景层或图形层相关联。
现在参考图5,根据本公开的示例,描述了一种用于基于纹理或按程序生成的内容将一个或多个图案应用特效渲染到视频数据的简化方法。图5中示出了方法500的步骤的一般顺序。通常,方法500在502处开始并且在518处结束。方法500可以包括更多或更少的步骤,或者可以与图5所示的步骤不同地布置步骤的顺序。方法500可以作为由计算机系统执行并且编码或存储在计算机可读介质上的一组计算机可执行指令来执行。在说明性方面中,方法500由与用户(例如,102)相关联的计算设备执行。然而,应当理解,方法500的各方面可以由一个或多个处理设备来执行,诸如计算机或服务器(例如,104)。此外,方法500可以通过与处理器、专用集成电路(ASIC)、现场可编程门阵列(FPGA)、片上系统(SOC)、神经处理单元或其他硬件设备相关联的门或电路来执行。在下文中,方法500将参考结合图1至图4描述的系统、组件、模块、软件、数据结构、用户界面等进行解释。
方法500在502处开始,其中流可以前进到504。在504处,计算设备接收包括一个或多个视频帧的视频数据(例如,视频图像或视频片段108)。例如,用户102可以经由计算设备生成、接收、获取或以其他方式获得视频片段108。在508处,计算设备处理视频数据的每个帧,以标识该帧中的一个或多个目标主题的身体部分。例如,身体分割算法可以限定要从视频片段108中标识和提取的身体部分的列表。身体部分可以包括但不限于头部(例如,头发、帽子)、面部(例如,面部、眼镜、面罩)、躯干皮肤、上装(例如,夹克、连衣裙、外套、围巾)、下装(例如,裤子、短裤、裙子)、手部(例如,手臂皮肤、手套)和腿部(例如,腿部皮肤、鞋子、袜子)。在说明性方面,身体部分的列表可以由身体分割算法限定。
在510处,可以基于帧中的一个或多个目标主题的所标识的身体部分来生成一个或多个对象掩模。例如,分割器/掩模生成器238可以生成要添加到视频片段108或由图案生成过程和同步系统100预设的分割区域或掩模。
在一些方面,用户可以选择视频片段108的分割区域或部分,并且生成针对视频片段的一个或多个区域的掩模,使得可以将纹理生成的或按程序生成的图案应用于指定的掩模。因此,使用一个或多个层参数或脚本,用户或图案生成过程和同步系统100可以指定要生成视频片段掩模的哪些部分或区域。在512处,可以基于图案生成参数/脚本来生成一个或多个图案特效。也就是说,参数或脚本可以进一步限定要应用于一个或多个掩模区域的图案的颜色、宽度、高度、厚度和亮度。例如,可以将橙色分配给头部,将绿色分配给面部区域,将红色分配给躯干皮肤,将绿松石分配给顶部,将蓝色分配给裤子,将紫色分配给手部,将粉色分配给腿部,将黄色分配给背景,将粉色分配给前景。
此外,参数或脚本可以限定要在510处生成的多个分割区域或掩模和/或要在512处生成的图案。也就是说,分割区域或掩模的数目可以与主题(例如,身体)的不同部分和/或图像或视频的不同部分(例如,背景、前景等)相关联。例如,可以为视频片段生成五个分割区域或掩模。在514处,可以将一个或多个图案特效与一个或多个对象掩模组合以生成图案应用特效。也就是说,对象掩模可以组合成单个掩模,诸如RGBA掩模,以提高效率和易用性。因此,可以选择掩模的一部分(诸如,与视频图像或视频片段中的对象相关联的部分),以便将特定层的所生成的图案应用于所选择的部分或层。
在示例中,所生成的图案层可以被布置为利用背景(例如,不是视频或图像的主题)中的多个填充背景和纹理爆炸机层;纹理爆炸层可以应用于视频或图像的主题。在示例中,填充可以包括平铺纹理;纹理爆炸机可以生成组成或创建所生成的图案的元素。然后,可以使用alpha+渲染顺序一个接一个地组合这些层,以便每个连续层都出现在前一层的顶部上。图形+背景可以通过与RGBA主题或身体掩模相乘的位掩模来区分,以隐藏图像中的背景或主题的部分。在516处,可以渲染包括图案应用特效的视频图像和/或视频片段,并且将其作为输出提供给用户的显示设备。
图6是示出计算设备600的物理组件(例如,硬件)的框图,利用该计算设备可以实践本公开的各方面。以下描述的计算设备组件可以适用于上述计算设备。例如,计算设备600可以表示图1的计算设备104。在基本配置中,计算设备600可以包括至少一个处理单元602和系统存储器604。根据计算设备的配置和类型,系统存储器604可以包括但不限于易失性存储器(例如,随机存取存储器)、非易失性存储(例如,只读存储器)、闪存或这些存储器的任何组合。
系统存储器604可以包括操作系统605和一个或多个程序模块606,这些程序模块适于执行本文公开的各个方面。例如,操作系统605可以适于控制计算设备600的操作。此外,本公开的方面可以结合图形库、其他操作系统或任何其他应用程序来实践,并且不限于任何特定的应用程序或系统。该基本配置由图6中虚线608内的那些组件示出。计算设备600可以具有附加的特征或功能。例如,计算设备600还可以包括附加的数据存储设备(可移动和/或不可移动),例如磁盘、光盘或磁带。这种附加存储装置在图6中由可移动存储设备609和不可移动存储设备610示出。
如上所述,数个程序模块和数据文件可以存储在系统存储器604中。当在至少一个处理单元602上执行时,应用程序607或程序模块606可以执行包括但不限于一个或多个方面的过程,如本文所述。应用程序620包括视频处理模块623、特效模块625和着色器627,如关于图1更详细描述的。根据本公开的各方面可以使用的其他程序模块可以包括电子邮件和联系人应用程序、文字处理应用程序、电子表格应用程序、数据库应用程序、幻灯片演示应用程序、绘图或计算机辅助应用程序等,和/或由本文所述的系统支持的一个或多个组件。
此外,本公开的各方面可以在包括分立电子元素的电路、包含逻辑门的封装或集成电子芯片、利用微处理器的电路中实践,或者在包含电子元素或微处理器的单个芯片上实践。例如,本公开的方面可以通过片上系统(SOC)来实践,其中图6中所示的组件中的每个或多个可以集成到单个集成电路上。这样的SOC设备可以包括一个或多个处理单元、图形单元、通信单元、系统虚拟化单元和各种应用功能,所有这些都被集成(或“烧录”)到芯片基板上作为单个集成电路。当经由SOC操作时,本文所描述的关于客户端到切换协议的能力的功能可以经由与单个集成电路(芯片)上的计算设备600的其他组件集成的专用逻辑来操作。本公开的实施例还可以使用能够执行逻辑运算的其他技术来实践,诸如例如AND、OR和NOT,包括但不限于机械、光学、流体和量子技术。此外,本公开的各方面可以在通用计算机内或在任何其他电路或系统中实践。
计算设备600还可以具有一个或多个输入设备612,诸如键盘、鼠标、笔、声音或语音输入设备、触摸或滑动输入设备等。还可以包括(多个)输出设备614A,诸如显示器、扬声器、打印机等。还可以包括与虚拟显示器相对应的输出614B。上述设备是示例,并且可以使用其他设备。计算设备600可以包括允许与其他计算设备650进行通信的一个或多个通信连接616。合适的通信连接616的示例包括但不限于射频(RF)发射器、接收器和/或收发器电路;通用串行总线(USB)、并行和/或串行端口。
如在本文使用的术语计算机可读介质可以包括计算机存储介质。计算机存储介质可以包括以用于存储信息的任何方法或技术实现的易失性和非易失性、可移动和不可移动介质诸如计算机可读指令、数据结构或程序模块。系统存储器604、可移动存储设备609和不可移动存储装置610都是计算机存储介质示例(例如,存储器存储装置)。计算机存储介质可以包括RAM、ROM、电可擦除只读存储器(EEPROM)、闪存或其他存储技术、CD-ROM、数字多功能盘(DVD)或其他光学存储装置、磁带盒、磁带、磁盘存储装置或其他磁存储设备,或可用于存储信息的任何其他制品,并且可以由计算设备600访问。任何这样的计算机存储介质可以是计算设备600的部分。计算机存储介质不包括载波或其他传播或调制的数据信号。
通信介质可以由计算机可读指令、数据结构、程序模块或调制数据信号(诸如载波或其他传输机制)中的其他数据来体现,并且包括任何信息传递介质。术语“调制数据信号”可以描述具有一个或多个特性的信号,该特性以对信号中的信息进行编码的方式设置或改变。作为示例而非限制,通信介质可以包括诸如有线网络或直接有线连接等的有线介质,以及诸如声学、射频(RF)、红外和其他无线介质等的无线介质。
图7A和图7B示出了适于执行本文公开的各方面的计算设备或移动计算设备700,例如,移动电话、智能电话、可穿戴计算机(诸如智能手表)、平板式计算机、膝上型计算机、智能家用电器等,可以使用这些计算设备或移动计算设备来实践本公开的各方面。参考图7A,示出了用于实施这些方面的移动计算设备700的一个方面。在基本配置中,移动计算设备700是具有输入元素和输出元素的手持式计算机。移动计算设备700通常包括显示器705和允许用户将信息输入到移动计算设备700中的一个或多个输入按钮709/710。移动计算设备700的显示器705也可以用作输入设备(例如,触摸屏显示器)。如果包括的话,可选的侧面输入元素715允许进一步的用户输入。侧面输入元素715可以是旋转开关、按钮或任何其他类型的手动输入元素。在替代方面中,移动计算设备700可以结合更多或更少的输入元素。例如,在一些方面,显示器705可以不是触摸屏。在又一备选方面中,移动计算设备700是便携式电话系统,诸如蜂窝电话。移动计算设备700还可以包括可选的小键盘735。可选的小键盘735可以是在触摸屏显示器上生成的物理小键盘或“软”小键盘。在各方面,输出元素包括用于示出图形用户界面(GUI)的显示器705、视觉指示器731(例如,发光二极管)和/或音频换能器725(例如,扬声器)。在一些方面,移动计算设备700结合用于向用户提供触觉反馈的振动换能器。在又一方面中,移动计算设备700结合输入和/或输出端口730,诸如用于向外部源发送信号或从外部源接收信号的音频输入(例如,麦克风插孔)、音频输出(例如,耳机插孔)和视频输出(例如,HDMI端口)。
图7B是示出计算设备、服务器或移动计算设备的一个方面的架构的框图。也就是说,移动计算设备700可以结合系统(702)(例如,架构)来实施一些方面。系统702可以实施为能够运行一个或多个应用程序(例如,浏览器、电子邮件、日历、联系人管理器、消息收发客户端、游戏和媒体客户端/播放器)的“智能电话”。在一些方面,系统702被集成为计算设备,诸如集成的个人数字助理(PDA)和无线电话。
一个或多个应用程序766可以被加载到存储器762中并且在操作系统764上运行或者与该操作系统相关联地运行。应用程序的示例包括电话拨号程序、电子邮件程序、个人信息管理(PIM)程序、文字处理程序、电子表格程序、互联网浏览器程序、消息收发程序和/或由本文所述系统支持的一个或多个组件。系统702还包括在存储器762内的非易失性存储区域768。非易失性存储区域768可以用于存储在系统702断电的情况下不应丢失的持久信息。应用程序766可以使用该信息并且将该信息存储在非易失性存储区域768中,诸如电子邮件或电子邮件应用程序使用的其他消息等。同步应用程序(未示出)也驻留在系统702上并且被编程为与驻留在主计算机上的对应同步应用程序交互,以保持存储在非易失性存储区域768中的信息与存储在主计算机处的对应信息同步。应当理解,其他应用程序可以加载到存储器762中并且在本文所述的移动计算设备700上运行(例如,视频处理模块623、特效模块625和着色器627等)。
系统702具有电源770,该电源可以被实施为一个或多个电池。电源770可以进一步包括外部电源,诸如AC适配器或对电池进行补充或再充电的供电扩展坞。
系统702还可以包括执行传输和接收射频通信的功能的无线电接口层772。无线电接口层772经由通信运营商或服务提供商促进系统702与“外部世界”之间的无线连接。往返无线电接口层772的传输是在操作系统764的控制下进行的。换言之,由无线电接口层772接收的通信可以经由操作系统764传播到应用程序766,反之亦然。
视觉指示器720可以用于提供视觉通知,和/或音频接口774可用于经由音频换能器725产生可听通知。在所示的配置中,视觉指示器720是发光二极管(LED),并且音频换能器725是扬声器。这些设备可以直接耦合到电源770,使得当被激活时,即使处理器760/761和其他组件可能为了节省电池功率而关闭,这些设备也会在通知机制规定的持续时间内保持开启。LED可以被编程为无限期地保持开启,直到用户采取行动来指示设备的通电状态。音频接口774用于向用户提供可听信号以及从用户接收可听信号。例如,除了耦合到音频换能器725之外,音频接口774还可以耦合到麦克风以接收可听输入,诸如以便于电话交谈。根据本公开的各方面,麦克风还可以用作音频传感器,以便于控制通知,如下文将描述的。系统702还可以包括视频接口776,该视频接口使得车载相机的操作能够记录静止图像、视频流等。
实施系统702的移动计算设备700可以具有附加的特征或功能。例如,移动计算设备700还可以包括附加的数据存储设备(可移动和/或不可移动),诸如磁盘、光盘或磁带。这种附加存储装置在图7B中由非易失性存储区域668示出。
由移动计算设备700生成或捕获并且经由系统702存储的数据/信息可以如上所述本地存储在移动计算设备700上,或者该数据可以存储在任意数量的存储介质上,该存储介质可以由设备经由无线电接口层772或者经由移动计算设备700和与移动计算设备700相关联的单独计算设备(例如,诸如互联网的分布式计算网络中的服务器计算机)之间的有线连接来访问。应当理解,可以经由移动计算设备700经由无线电接口层772或者经由分布式计算网络来访问这样的数据/信息。类似地,这样的数据/信息可以容易地在计算设备之间传送,以根据众所周知的数据/信息传送和存储装置(包括电子邮件和协作数据/信息共享系统)进行存储和使用。
图8示出了用于处理在计算系统处从远程源,诸如如上所述的个人计算机804、平板式计算设备806或移动计算设备808接收的数据的系统的架构的一个方面,该系统适于执行本文公开的各个方面。在服务器设备802处显示的内容可以存储在不同的通信信道或其他存储类型中。例如,计算设备804、806、808可以表示图1的计算设备104,并且服务器设备802可以表示计算设备,诸如图1的计算机设备104。
在一些方面,服务器设备802可以采用视频处理模块623、特效模块625和着色器627中的一个或多个。服务器设备802可以通过网络812往返于客户端设备提供数据,客户端设备为诸如个人计算机804、平板式计算设备806和/或移动计算设备808(例如,智能电话)。例如,上述计算机系统可以体现在个人计算机804、平板式计算设备806和/或移动计算设备808(例如,智能电话)中。除了接收可在图形生成系统处预处理或在接收计算系统处后处理的图形数据之外,计算设备的这些方面中的任一个都可以从存储装置816获得内容。内容存储装置816可以包括视频数据818、层参数/脚本820和/或包括如本文所述的图案应用特效的渲染视频数据822。
图8示出了可以执行本文公开的一个或多个方面的示例性移动计算设备808。此外,本文所描述的方面和功能可以在分布式系统(例如,基于云的计算系统)上操作,其中应用程序功能、存储器、数据存储装置和取回以及各种处理功能可以在诸如互联网或内联网的分布式计算网络上彼此远程地操作。可以经由板载计算设备显示器或经由与一个或多个计算设备相关联的远程显示单元来显示各种类型的用户界面和信息。例如,各种类型的用户界面和信息可以在墙面上显示并与墙面交互,在该墙面上投影了各种类型的用户界面和信息。与可以实践本发明的各方面的多个计算系统的交互包括键击输入、触摸屏输入、语音或其他音频输入、手势输入,其中相关联的计算设备配备有用于捕捉和解释用于控制计算设备的功能的用户手势的检测(例如,相机)功能,等等。
短语“至少一个”、“一个或多个”、“或”以及“和/或”是在操作中具有连接性和分离性两者的开放式表述。例如,表述“A、B和C中的至少一个”、“A、B或C中的至少一个”、“A、B和C中的一个或多个”、“A、B或C中的一个或多个”、“A、B和/或C”以及“A、B或C”中的一者是指仅A、仅B、仅C、A和B一起、A和C一起、B和C一起,或A、B和C一起。
术语“一”实体是指一个或多个该实体。因此,术语“一”、“一个或多个”和“至少一个”在本文中可以可互换地使用。还应当注意,术语“包含”和“具有”可以可互换地使用。
如在本文使用的术语“自动”及其变体是指在执行过程或操作时,在没有重要人为输入的情况下完成的任何过程或操作,通常是连续的或半连续的。然而,如果在执行过程或操作之前接收到输入,则过程或操作可以是自动的,即使过程或操作的执行使用重要或非重要的人为输入。如果人为输入会影响流程或操作的执行方式,则认为这样的人为输入是重要的。同意执行过程或操作的人为输入不被视为“重要的”。
本文所讨论的步骤、功能和操作中的任一个都可以连续且自动地执行。
已经关于计算设备描述了本公开的示例性系统和方法。然而,为了避免不必要地混淆本公开,前面的描述省略了若干已知的结构和设备。该遗漏不应被解释为限制。阐述具体细节以提供对本公开的理解。然而,应当理解,本公开可以以超出本文所阐述的具体细节的多种方式来实践。
此外,尽管本文所示的示例性方面示出了所配置的系统的各种组件,但是系统的某些组件可以位于远程的位置处、位于分布式网络(诸如LAN和/或互联网)的远程部分处,或者位于专用系统内。因此,应当理解,系统的组件可以被组合成一个或多个设备,诸如服务器、通信设备,或者被配置在分布式网络的特定节点上,分布式网络为诸如模拟和/或数字电信网络、分组交换网络或电路交换网络。从前面的描述中,并且出于计算效率的原因,可以将系统的组件布置在组件的分布式网络内的任何位置处,而不影响系统的操作。
此外,应当理解,连接元素的各种链路可以是有线或无线链路,或其任何组合,或能够向往返于所连接的元素供应和/或传送数据的任何其他已知或稍后开发的元素。这些有线或无线链路也可以是安全链路,并且可以能够传送加密信息。例如,用作链路的传输介质可以是用于电信号的任何合适的载体,包括同轴电缆、铜线和光纤,并且可以采取声波或光波的形式,诸如在无线电波和红外数据通信期间生成的声波或光波。
虽然已经关于特定的事件序列讨论和说明了流程图,但是应当理解,对该序列的改变、添加和省略可以发生而不实质上影响所公开的配置和方面的操作。
可以使用本公开的若干变化和修改。提供本公开的一些特征是可能的而不提供其他特征。
在又一配置中,本公开的系统和方法可以结合专用计算机、编程微处理器或微控制器和外围集成电路元素、ASIC或其他集成电路、数字信号处理器、硬连线电子或逻辑电路(诸如分立元素电路)、可编程逻辑器件或门阵列(诸如PLD、PLA、FPGA、PAL)、专用计算机、任何类似装置等实施。通常,能够实施本文所示方法的任何设备或装置都可以用于实施本公开的各个方面。可用于本公开的示例性硬件包括计算机、手持设备、电话(例如,蜂窝、支持互联网的、数字、模拟、混合等)以及本领域已知的其他硬件。这些设备中的一些设备包括处理器(例如,单个或多个微处理器)、存储器、非易失性存储器、输入设备和输出设备。此外,还可以构造包括但不限于分布式处理或组件/对象分布式处理、并行处理或虚拟机处理的备选软件具体实施来实施本文所述的方法。
在又一配置中,所公开的方法可以容易地结合使用对象或面向对象的软件开发环境的软件来实施,该软件开发环境提供可在各种计算机或工作站平台上使用的可移植源代码。备选地,所公开的系统可以使用标准逻辑电路或VLSI设计在硬件中部分地或完全地实施。使用软件还是硬件来实施根据本公开的系统取决于系统的速度和/或效率要求、特定功能以及所使用的特定软件或硬件系统或微处理器或微型计算机系统。
在又一配置中,所公开的方法可以部分地在软件中实施,该软件可以存储在存储介质上,在控制器和存储器、专用计算机、微处理器等的协作下在编程的通用计算机上执行。在这些情况下,本公开的系统和方法可以被为实施嵌入在个人计算机上的程序,诸如小程序、或CGI脚本,实现为驻留在服务器或计算机工作站上的资源,实现为嵌入专用测量系统、系统组件等中的例程。还可以通过将系统和/或方法物理地结合到软件和/或硬件系统中来实施该系统。
如果描述的话,本公开不限于标准和协议。本文中未提及的其他类似标准和协议是存在的,并且包括在本公开中。此外,本文中提及的标准和协议以及本文中未提及的其他类似标准和协议被具有基本上相同功能的更快或更有效的等同物周期性地取代。具有相同功能的这种替换标准和协议被认为是包括在本公开中的等同物中。
在各种配置和方面中,本公开包括基本上如本文所描绘和描述的组件、方法、过程、系统和/或装置,包括其各种组合、子组合和子集。本领域技术人员在理解本公开之后将理解如何制作和使用本文所公开的系统和方法。在各种配置和方面中,本公开包括在不存在本文中未描绘和/或未描述的项目的情况下或在本文的各种配置或方面中提供设备和过程,包括在不具有先前设备或过程中可能使用过的这些项目的情况下,例如,用于提高性能、实现易用性和/或降低实施成本。
本公开涉及至少根据以下部分中提供的示例的用于将图案应用特效应用于视频的一个或多个帧的系统和方法:
(A1)在一个方面,一些示例包括用于将图案应用特效应用于视频的一个或多个帧的方法。该方法可以包括:由计算设备获得包括一个或多个视频帧的视频数据;由计算设备确定该一个或多个视频帧中的每个视频帧中的一个或多个部分;由计算设备基于一个或多个视频帧中的每个视频帧中的一个或多个部分来确定一个或多个对象掩模;由计算设备将一个人或多个对象掩模组合成单个掩模,该单个掩模表示一个子或多个对象掩模;获得图案信息,该图案信息表示将被应用于一个或多个视频帧的至少一层的一个或多个图形特效;将图案信息应用于单个掩模以生成经掩模的图案信息;并且由计算设备经由将经掩模的图案信息添加到一个或多个视频帧来生成渲染视频。
(A2)在A1的一些示例中,图案信息包括纹理信息或按程序生成的内容中的至少一个。
(A3)在A1至A2的一些示例中,图案信息包括用于一个或多个视频帧的多个层的多个图形特效。
(A4)在A1至A3的一些示例中,图案信息包括以下至少一个:针对图形元素的形状内容、颜色内容、运动信息和/或大小信息。
(A5)在A1至A4的一些示例中,单个掩模包括多个不同的颜色,多个不同颜色中的每个颜色表示一个或多个对象掩模中的至少一个对象掩模。
(A6)在A1至A5的一些示例中,所述方法还包括:生成第一图案,该第一图案包括表示要应用于一个或多个视频帧的至少一层的一个或多个图形特效的图案信息,所生成的图案是随机生成的图案。
(A7)在A1至A6的一些示例中,该方法还包括:应用纹理爆炸过程来生成图案信息。
(A8)在A1至A7的一些示例中,在着色器处接收图案信息,并且着色器处理该图案信息并且生成一个或多个图形特效。
在又一方面,一些示例包括计算系统,该计算系统包括一个或多个处理器以及耦合到该一个或多个处理器的存储器,该存储器存储一个或多个指令,当被一个或多个处理器执行时,该一个或多个指令使得该一个或多个处理器执行本文所描述的方法(例如,上文所描述的A1至A8)中的任何方法。
在又一方面,一些示例包括存储一个或多个程序的非暂态计算机可读存储介质,该一个或多个程序用于由存储设备的一个或多个处理器执行,该一个或多个程序包括用于执行本文所述的方法(例如,上述A1至A8)中的任何的指令。
例如,上面参考根据本公开的各方面的方法、系统和计算机程序产品的框图和/或操作图示描述了本公开的各个方面。在框中注明的功能/动作可能不按流程图中所示的顺序发生。例如,根据所涉及的功能/动作,连续示出的两个框实际上可基本上同时执行,或者有时这些框可以以相反的顺序执行。
本申请中提供的一个或多个方面的描述和说明并不旨在以任何方式限制或限定所要求保护的本公开的范围。本申请中提供的方面、示例和细节被认为足以传达占有权并且使其他人能够做出和使用所要求的公开的最佳模式。所要求保护的本公开不应被解释为限于本申请中提供的任何方面、示例或细节。无论是组合显示和描述还是单独显示和描述,各种特征(结构特征和方法特征)都旨在被选择性地包括或省略,以产生具有特定特征集的实施例。已经提供了本申请的描述和说明,本领域技术人员可以设想落入本申请中所体现的一般发明概念的更广泛方面的精神内的变化、修改和替代方面,这些变化、修改和替代方面并未脱离所要求保护的本公开的更广泛范围。
Claims (20)
1.一种用于将图案应用特效应用于视频的一个或多个帧的方法,所述方法包括:
由计算设备获得包括一个或多个视频帧的视频数据;
由所述计算设备确定所述一个或多个视频帧中的每个视频帧中的一个或多个部分;
由所述计算设备基于所述一个或多个视频帧中的每个视频帧中的所述一个或多个部分来确定一个或多个对象掩模;
由所述计算设备将所述一个或多个对象掩模组合成单个掩模,所述单个掩模表示所述一个或多个对象掩模;
获得图案信息,所述图案信息表示要应用于所述一个或多个视频帧的至少一层的一个或多个图形特效;
将所述图案信息应用于所述单个掩模以生成经掩模的图案信息;以及
由所述计算设备通过将所述经掩模的图案信息添加到所述一个或多个视频帧来生成渲染视频。
2.根据权利要求1所述的方法,其中所述图案信息包括纹理信息或程序生成的内容中的至少一个。
3.根据权利要求1所述的方法,其中所述图案信息包括用于所述一个或多个视频帧的多个层的多个图形特效。
4.根据权利要求3所述的方法,其中所述图案信息包括以下至少一个:针对图形元素的形状内容、颜色内容、运动信息和/或大小信息。
5.根据权利要求1所述的方法,其中所述单个掩模包括多个不同颜色,所述多个不同颜色中的每个颜色表示所述一个或多个对象掩模中的至少一个对象掩模。
6.根据权利要求1所述的方法,还包括:生成第一图案,所述第一图案包括表示要应用于所述一个或多个视频帧的所述至少一层的一个或多个图形特效的图案信息,所生成的所述图案是随机生成的图案。
7.根据权利要求1所述的方法,还包括:应用纹理爆炸过程以生成图案信息。
8.根据权利要求1所述的方法,其中所述图案信息在着色器处被接收,其中所述着色器处理所述模式信息并且生成所述一个或多个图形特效。
9.一种系统,所述系统包括:
一个或多个硬件处理器,通过机器可读指令而被配置用于:
获得包括一个或多个视频帧的视频数据;
确定所述一个或多个视频帧中的每个视频帧中的一个或多个部分;
基于所述一个或多个视频帧中的每个视频帧中的一个或多个部分来确定一个或多个对象掩模;
将所述一个或多个对象掩模组合成单个掩模,所述单个掩模表示所述一个或多个对象掩模;
获得图案信息,所述图案信息表示要应用于所述一个或多个视频帧的至少一层的一个或多个图形特效;
将所述图案信息应用于所述单个掩模以生成经掩模的图案信息;以及
通过将所述经掩模的图案信息添加到所述一个或多个视频帧来生成渲染视频。
10.根据权利要求9所述的系统,其中所述图案信息包括纹理信息或程序生成的内容中的至少一个。
11.根据权利要求9所述的系统,其中所述图案信息包括用于所述一个或多个视频帧的多个层的多个图形特效。
12.根据权利要求11所述的系统,其中所述图案信息包括以下至少一个:针对图形元素的形状内容、颜色内容、运动信息和/或大小信息。
13.根据权利要求9所述的系统,其中所述单个掩模包括多个不同颜色,所述多个不同颜色中的每个颜色表示所述一个或多个对象掩模中的至少一个对象掩模。
14.根据权利要求9所述的系统,其中所述一个或多个硬件处理器还由机器可读指令配置,用于:生成第一图案,所述第一图案包括表示要应用于所述一个或多个视频帧的所述至少一层的一个或多个图形特效的图案信息,所生成的图案是随机生成的图案。
15.根据权利要求9所述的系统,其中所述一个或多个硬件处理器还通过机器可读指令配置用于:应用纹理爆炸过程以生成图案信息。
16.根据权利要求9所述的系统,其中所述图案信息在着色器处被接收,其中所述着色器处理所述图案信息并且生成所述一个或多个图形特效。
17.一种非暂态计算机可读存储介质,包括指令,当由一个或多个处理器执行时,所述指令使所述一个或多个处理器:
获得包括一个或多个视频帧的视频数据;
确定所述一个或多个视频帧中的每个视频帧中的一个或多个部分;
基于所述一个或多个视频帧中的每个视频帧中的所述一个或多个部分来确定一个或多个对象掩模;
将所述一个或多个对象掩模组合成单个掩模,所述单个掩模表示所述一个或多个对象掩模;
获得图案信息,所述图案信息表示要应用于所述一个或多个视频帧的至少一层的一个或多个图形特效;
将所述图案信息应用于所述单个掩模以生成经掩模的图案信息;以及
通过将所述经掩模的图案信息添加到所述一个或多个视频帧来生成渲染视频。
18.根据权利要求17所述的计算机可读存储介质,其中所述图案信息包括纹理信息或程序生成的内容中的至少一个。
19.根据权利要求17所述的计算机可读存储介质,其中所述图案信息包括用于所述一个或多个视频帧的多个层的多个图形特效。
20.根据权利要求19所述的计算机可读存储介质,其中:
所述图案信息包括以下至少一个:针对图形元素的形状内容、颜色内容、运动信息和/或大小信息;并且
所述单个掩模包括多个不同颜色,所述多个不同颜色中的每个颜色表示所述一个或多个对象掩模中的至少一个对象掩模。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US17/531,462 | 2021-11-19 | ||
US17/531,462 US11830106B2 (en) | 2021-11-19 | 2021-11-19 | Procedural pattern generation for layered two-dimensional augmented reality effects |
PCT/SG2022/050796 WO2023091080A2 (en) | 2021-11-19 | 2022-11-03 | Procedural pattern generation for layered two-dimensional augmented reality effects |
Publications (1)
Publication Number | Publication Date |
---|---|
CN118266007A true CN118266007A (zh) | 2024-06-28 |
Family
ID=86384091
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202280076856.XA Pending CN118266007A (zh) | 2021-11-19 | 2022-11-03 | 用于分层二维增强现实特效的过程图案生成 |
Country Status (3)
Country | Link |
---|---|
US (1) | US11830106B2 (zh) |
CN (1) | CN118266007A (zh) |
WO (1) | WO2023091080A2 (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114742981A (zh) * | 2022-04-15 | 2022-07-12 | 北京字跳网络技术有限公司 | 后处理特效的制作系统、方法、ar特效渲染方法及装置 |
US20230410396A1 (en) * | 2022-06-17 | 2023-12-21 | Lemon Inc. | Audio or visual input interacting with video creation |
Family Cites Families (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3038878B2 (ja) * | 1990-10-25 | 2000-05-08 | ソニー株式会社 | 特殊効果装置 |
KR20120034574A (ko) * | 2010-10-01 | 2012-04-12 | 삼성전자주식회사 | 디스플레이 장치 및 신호 처리 장치와, 그 방법들 |
CN103150761A (zh) * | 2013-04-02 | 2013-06-12 | 乐淘奇品网络技术(北京)有限公司 | 通过网页高速逼真3d渲染进行物品设计定制的方法 |
US10198819B2 (en) | 2015-11-30 | 2019-02-05 | Snap Inc. | Image segmentation and modification of a video stream |
US11055887B2 (en) | 2018-11-29 | 2021-07-06 | Adobe Inc. | Modifying digital content with digital effects using facial skin mask |
US11288880B2 (en) | 2019-01-18 | 2022-03-29 | Snap Inc. | Template-based generation of personalized videos |
US11089238B2 (en) | 2019-01-18 | 2021-08-10 | Snap Inc. | Personalized videos featuring multiple persons |
CN111787242B (zh) | 2019-07-17 | 2021-12-07 | 北京京东尚科信息技术有限公司 | 用于虚拟试衣的方法和装置 |
US11189104B2 (en) * | 2019-08-28 | 2021-11-30 | Snap Inc. | Generating 3D data in a messaging system |
-
2021
- 2021-11-19 US US17/531,462 patent/US11830106B2/en active Active
-
2022
- 2022-11-03 WO PCT/SG2022/050796 patent/WO2023091080A2/en unknown
- 2022-11-03 CN CN202280076856.XA patent/CN118266007A/zh active Pending
Also Published As
Publication number | Publication date |
---|---|
WO2023091080A2 (en) | 2023-05-25 |
US11830106B2 (en) | 2023-11-28 |
WO2023091080A3 (en) | 2023-07-20 |
US20230162408A1 (en) | 2023-05-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11763481B2 (en) | Mirror-based augmented reality experience | |
CN118266007A (zh) | 用于分层二维增强现实特效的过程图案生成 | |
US11900506B2 (en) | Controlling interactive fashion based on facial expressions | |
US20230066179A1 (en) | Interactive fashion with music ar | |
KR20180073330A (ko) | 사용자 저작 스티커를 생성하는 방법 및 장치, 사용자 저작 스티커 공유 시스템 | |
US20240096040A1 (en) | Real-time upper-body garment exchange | |
US20230169739A1 (en) | Light and rendering of garments | |
CN116803085A (zh) | 基于音频特性的动画效果附着 | |
WO2022271089A1 (en) | Spectrum algorithm with trail renderer | |
US20220406337A1 (en) | Segmentation contour synchronization with beat | |
US11769289B2 (en) | Rendering virtual articles of clothing based on audio characteristics | |
WO2023121897A1 (en) | Real-time garment exchange | |
WO2023121896A1 (en) | Real-time motion and appearance transfer | |
US11830115B2 (en) | Dynamic 3D eyelash attachment | |
US20230343004A1 (en) | Augmented reality experiences with dual cameras | |
JP2023540430A (ja) | 環境内にコンテンツを投影するためのシステム及び方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination |