CN116210220A - 经有效运动补偿的时空采样 - Google Patents
经有效运动补偿的时空采样 Download PDFInfo
- Publication number
- CN116210220A CN116210220A CN202180064669.5A CN202180064669A CN116210220A CN 116210220 A CN116210220 A CN 116210220A CN 202180064669 A CN202180064669 A CN 202180064669A CN 116210220 A CN116210220 A CN 116210220A
- Authority
- CN
- China
- Prior art keywords
- frame
- sampling
- locations
- video
- mask
- 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
- 238000005070 sampling Methods 0.000 title claims abstract description 392
- 230000003287 optical effect Effects 0.000 claims abstract description 48
- 238000000034 method Methods 0.000 claims description 111
- 230000008569 process Effects 0.000 description 57
- 230000015654 memory Effects 0.000 description 34
- 230000006870 function Effects 0.000 description 27
- 238000004891 communication Methods 0.000 description 19
- 230000002123 temporal effect Effects 0.000 description 18
- 230000006855 networking Effects 0.000 description 11
- 238000012545 processing Methods 0.000 description 11
- 230000000694 effects Effects 0.000 description 9
- 239000013598 vector Substances 0.000 description 8
- 239000008186 active pharmaceutical agent Substances 0.000 description 5
- 230000003190 augmentative effect Effects 0.000 description 4
- 230000001413 cellular effect Effects 0.000 description 4
- 238000005516 engineering process Methods 0.000 description 4
- 238000010801 machine learning Methods 0.000 description 4
- 230000001360 synchronised effect Effects 0.000 description 4
- 238000013475 authorization Methods 0.000 description 3
- 230000008901 benefit Effects 0.000 description 3
- 230000008859 change Effects 0.000 description 3
- 238000007726 management method Methods 0.000 description 3
- 238000013519 translation Methods 0.000 description 3
- 230000009471 action Effects 0.000 description 2
- 239000000872 buffer Substances 0.000 description 2
- 230000006835 compression Effects 0.000 description 2
- 238000007906 compression Methods 0.000 description 2
- 238000004590 computer program Methods 0.000 description 2
- 238000001514 detection method Methods 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- 230000002093 peripheral effect Effects 0.000 description 2
- 230000004044 response Effects 0.000 description 2
- 238000012552 review Methods 0.000 description 2
- 238000013515 script Methods 0.000 description 2
- 239000007787 solid Substances 0.000 description 2
- 238000012546 transfer Methods 0.000 description 2
- 239000002023 wood Substances 0.000 description 2
- 238000012935 Averaging Methods 0.000 description 1
- 230000004075 alteration Effects 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 230000003542 behavioural effect Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 239000002131 composite material Substances 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 238000000802 evaporation-induced self-assembly Methods 0.000 description 1
- 230000005484 gravity Effects 0.000 description 1
- 210000003128 head Anatomy 0.000 description 1
- RGNPBRKPHBKNKX-UHFFFAOYSA-N hexaflumuron Chemical compound C1=C(Cl)C(OC(F)(F)C(F)F)=C(Cl)C=C1NC(=O)NC(=O)C1=C(F)C=CC=C1F RGNPBRKPHBKNKX-UHFFFAOYSA-N 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 230000002452 interceptive effect Effects 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000009877 rendering Methods 0.000 description 1
- 230000000717 retained effect Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 230000008685 targeting Effects 0.000 description 1
- 230000007704 transition Effects 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
- H04N19/587—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal sub-sampling or interpolation, e.g. decimation or subsequent interpolation of pictures in a video sequence
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T3/00—Geometric image transformations in the plane of the image
- G06T3/40—Scaling of whole images or parts thereof, e.g. expanding or contracting
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T5/00—Image enhancement or restoration
- G06T5/50—Image enhancement or restoration using two or more images, e.g. averaging or subtraction
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T5/00—Image enhancement or restoration
- G06T5/70—Denoising; Smoothing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/0002—Inspection of images, e.g. flaw detection
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
- H04N19/59—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving spatial sub-sampling or interpolation, e.g. alteration of picture size or resolution
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T19/00—Manipulating 3D models or images for computer graphics
- G06T19/006—Mixed reality
-
- 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/20—Special algorithmic details
- G06T2207/20172—Image enhancement details
- G06T2207/20182—Noise reduction or smoothing in the temporal domain; Spatio-temporal filtering
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Quality & Reliability (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Image Processing (AREA)
- Studio Devices (AREA)
Abstract
在一个实施例中,计算系统可以访问包括第一帧和第二帧的视频。计算系统可以确定第一帧的第一采样位置,并通过根据第一帧与第二帧之间的光流将第一采样位置转换到第二帧来确定第二帧的第二采样位置。计算系统可以基于第一帧中的与第一采样位置相对应的像素与第二帧中的与第二采样位置相对应的像素之间的比较来选择第二采样位置的子集。计算系统可以基于第二采样位置的子集来在第二帧中限定一个或多个拒绝区域,以在一个或多个拒绝区域之外的区域中确定第二帧的第三采样位置。计算系统可以生成视频的样本。
Description
技术领域
本公开总体上涉及视频采样的系统和方法。
背景技术
视频由各种设备捕获。这些设备经常配备有最先进的摄像头,该摄像头产生高分辨率图像。虽然这些设备可能能够捕获高分辨率图像,但是设备可能需要更多的资源来与所捕获的内容交互。为了辅助设备以能够处理和共享所捕获的图像,可以使用采样来减小图像的大小,同时保留图像的内容。这具有能够传输图像、处理图像等广泛的功能。
发明内容
本发明涉及根据权利要求1所述的方法、以及根据权利要求7所述的包含软件的计算机可读非暂态存储介质、根据权利要求14所述的系统和根据权利要求20所述的计算机软件产品。有利实施例可以包括从属权利要求的特征。
因此,根据本发明的方法包括:由计算系统访问包括第一帧和第二帧的视频。确定第一帧的第一采样位置,并且通过根据第一帧与第二帧之间的光流将第一采样位置转换到第二帧来确定第二帧的第二采样位置。基于第一帧中的与第一采样位置相对应的像素与第二帧中的与第二采样位置相对应的像素之间的比较来选择第二采样位置的子集。基于第二采样位置的子集来在第二帧中限定一个或多个拒绝区域,并且在一个或多个拒绝区域之外的区域中确定第二帧的第三采样位置。最后,基于第一帧中的与第一采样位置相对应的像素和第二帧中的与第三采样位置相对应的像素来生成视频的样本。
在本发明的一些实施例中,确定第一帧的第一采样位置可以包括:使用包括蓝噪声性质的二维掩模来生成第一帧的样本。可选地,使用二维掩模来生成第一帧的样本可以包括:使用二维掩模的采样点的阈值百分数。
在本发明的一些实施例中,通过将第一采样位置转换到第二帧来确定第二帧的第二采样位置还可以包括:使用第一帧与第二帧之间的颜色时间梯度。
在本发明的一些实施例中,选择第二采样位置的子集可以包括:基于确定第一帧中的与第一采样位置相对应的像素和第二帧中的与第二采样位置相对应的像素不匹配来检测一个或多个无效的第二采样位置;以及拒绝一个或多个无效的第二采样位置。
在本发明的一些实施例中,第二帧中的一个或多个拒绝区域为从子集的第二采样位置延伸的固定半径的区域。
在本发明的一些实施例中,确定第二帧的第三采样位置可以包括:使用包括蓝噪声性质的二维掩模在一个或多个拒绝区域之外的区域中生成第二帧的样本。
根据本发明的另一方面,一个或多个计算机可读非暂态存储介质包含软件,该软件在被执行时能够操作以:访问包括第一帧和第二帧的视频;确定第一帧的第一采样位置;通过根据第一帧与第二帧之间的光流将第一采样位置转换到第二帧来确定第二帧的第二采样位置;基于第一帧中的与第一采样位置相对应的像素与第二帧中的与第二采样位置相对应的像素之间的比较来选择第二采样位置的子集;基于第二采样位置的子集来在第二帧中限定一个或多个拒绝区域;在一个或多个拒绝区域之外的区域中确定第二帧的第三采样位置;以及基于第一帧中的与第一采样位置相对应的像素和第二帧中的与第三采样位置相对应的像素来生成视频的样本。
在一些实施例中,确定第一帧的第一采样位置可以包括:使用具有蓝噪声性质的二维掩模来生成第一帧的样本。可选地,使用二维掩模来生成第一帧的样本可以包括:使用二维掩模的采样点的阈值百分数。
在一些实施例中,通过将第一采样位置转换到第二帧来确定第二帧的第二采样位置还可以包括:使用第一帧与第二帧之间的颜色时间梯度。
在一些实施例中,选择第二采样位置的子集可以包括:基于确定第一帧中的与第一采样位置相对应的像素和第二帧中的与第二采样位置相对应的像素不匹配来检测一个或多个无效的第二采样位置;以及拒绝一个或多个无效的第二采样位置。
在一些实施例中,第二帧中的一个或多个拒绝区域可以为从子集的第二采样位置延伸的固定半径的区域。
在一些实施例中,确定第二帧的第三采样位置可以包括:使用包括蓝噪声性质的二维掩模在一个或多个拒绝区域之外的区域中生成第二帧的样本。
本发明的另一方面涉及一种系统,该系统包括一个或多个处理器;以及联接到处理器中的一个或多个处理器的一个或多个计算机可读非暂态存储介质。一个或多个计算机可读非暂态存储介质包括指令,所述指令在由处理器中的一个或多个处理器执行时能够操作以使所述系统:访问包括第一帧和第二帧的视频;确定第一帧的第一采样位置;通过根据第一帧与第二帧之间的光流将第一采样位置转换到第二帧来确定第二帧的第二采样位置;基于第一帧中的与第一采样位置相对应的像素和第二帧中的与第二采样位置相对应的像素之间的比较来选择第二采样位置的子集;基于第二采样位置的子集来在第二帧中限定一个或多个拒绝区域;在一个或多个拒绝区域之外的区域中确定第二帧的第三采样位置;以及基于第一帧中的与第一采样位置相对应的像素和第二帧中的与第三采样位置相对应的像素来生成视频的样本。
在一些实施例中,确定第一帧的第一采样位置可以包括:使用包括蓝噪声性质的二维掩模来生成第一帧的样本。可选地,使用二维掩模来生成第一帧的样本可以包括:使用二维掩模的采样点的阈值百分数。
在一些实施例中,通过将第一采样位置转换到第二帧来确定第二帧的第二采样位置还可以包括:使用第一帧与第二帧之间的颜色时间梯度。
在一些实施例中,选择第二采样位置的子集可以包括:基于确定第一帧中的与第一采样位置相对应的像素和第二帧中的与第二采样位置相对应的像素不匹配来检测一个或多个无效的第二采样位置;以及拒绝一个或多个无效的第二采样位置。
在一些实施例中,第二帧中的一个或多个拒绝区域可以为从子集的第二采样位置延伸的固定半径的区域。
根据本发明的又一方面,软件产品包括指令,该指令在由计算机系统的一个或多个处理器执行时能够操作以使计算机系统执行上述方法中的任何一种方法。
本文公开了以各种不同的方式对视频进行采样。对视频进行采样的目的可以是用于压缩、流传输、高效渲染等。计算系统可以访问包括包含图像的多个帧的视频。计算系统可以经由摄像头捕获视频,或从另一计算系统接收视频。所公开的方法的一个目标是改善采样掩模内的采样位置的分布。虽然蓝噪声掩模可以用于对图像或视频进行采样,但是当将蓝噪声掩模应用于视频时可能存在蓝噪声性质的损失。二维蓝噪声掩模或三维蓝噪声掩模的采样位置的分布可能不会产生期望的结果。因此,可以生成考虑时间域并且通过在保留空间质量的同时提高时间一致性来帮助改进视频的采样的蓝噪声掩模。曼哈顿距离可以用于生成曼哈顿蓝噪声掩模。曼哈顿距离可以关于时间域来使用,并且欧几里德距离可以关于空间域来使用,这将导致空间域优先于时间域,同时仍考虑时间域。所公开的方法的另一目标是有效地补偿时空采样中的运动。通过补偿时空采样中的运动,计算系统可以减少对视频进行采样所需的样本。在特定实施例中,计算系统可以计算两个帧之间的光流,以便将采样位置从第一帧转换到第二帧。转换到第二帧的这些采样位置减少了对第二帧的可能已经被第一帧充分捕获的部分进行重采样的需要。由此,使得计算系统能够聚焦在第二帧中的缺少信息的部分上。
本发明的实施例可以包括人工现实系统、或结合人工现实系统来实现。人工现实是在呈现给用户之前已经以某种方式进行了调整的现实形式,该人工现实例如可以包括,虚拟现实(virtual reality,VR)、增强现实(augmented reality,AR)、混合现实(mixedreality,MR)、混合现实(hybrid reality),或它们的一些组合和/或衍生物。人工现实内容可以包括完全生成的内容或所生成的与采集到的内容(例如,真实世界的照片)组合的内容。人工现实内容可以包括视频、音频、触觉反馈或它们的一些组合,以上任何一种都可以在单通道或多通道(例如,给观看者带来三维效果的立体视频)中被呈现。此外,在一些实施例中,人工现实可以与应用程序、产品、附件、服务或它们的一些组合相关联,这些应用程序、产品、附件、服务或它们的一些组合例如用于在人工现实中创建内容,和/或用于人工现实中(例如,在人工现实中执行动作)。提供人工现实内容的人工现实系统可以在各种平台上实现,这些平台包括连接到主控计算机系统的头戴式显示器(head-mounted display,HMD)、独立HMD、移动设备或计算系统、或能够向一位或多位观看者提供人工现实内容的任何其他硬件平台。
本文所公开的实施例仅为示例,且本公开的范围不限于此。特定实施例可以包括以上公开的实施例的所有部件、元件、特征、功能、操作或步骤、一些部件、元件、特征、功能、操作或步骤或不包括部件、元件、特征、功能、操作或步骤。特别地,在所附权利要求中公开根据本发明的实施例,所附权利要求涉及方法、存储介质、系统和计算机程序产品,其中,在一个权利要求类别(例如,方法)中提到的任何特征可以在另一个权利要求类别(例如,系统)中要求保护。仅出于形式原因而选择所附权利要求中的往回的从属关系或引用。然而,也可以要求保护由对任何前面的权利要求的有意往回引用(特别是多项引用)而产生的任何主题,使得权利要求及其特征的任何组合被公开并且可被要求保护,而不考虑在所附权利要求中选择的从属关系。可以要求保护的主题不仅包括如在所附权利要求中阐述的特征的组合,而且还包括在权利要求中的特征的任何其他组合,其中,在权利要求中提到的每个特征可以与在权利要求中的任何其他特征或其他特征的组合相结合。此外,本文描述或描绘的实施例和特征中的任一者可以在单独的权利要求中和/或以与本文描述或描绘的任何实施例或特征的任何组合或以与所附权利要求的任何特征的任何组合中被要求保护。
附图说明
图1示出了重建图像的示例过程。
图2示出了重建视频的示例过程。
图3示出了生成采样掩模的示例过程。
图4示出了示例三维采样掩模。
图5示出了二维采样掩模与另一采样掩模之间的示例比较。
图6示出了二维采样掩模与另一采样掩模之间的另一示例比较。
图7示出了在采样时补偿运动的示例过程。
图8示出了基于先前样本来分布新样本的示例过程。
图9示出了将先前样本和新样本进行组合的示例过程。
图10示出了示例计算系统。
图11示出了使用三维掩模对视频进行采样的示例方法。
图12示出了使用来自先前帧的采样位置对视频进行采样的示例方法。
图13示出了示例网络环境。
图14示出了示例计算机系统。
具体实施方式
随着越来越多的人采用人工现实系统,越来越多的人将出于各种原因开始使用人工现实系统。人工现实可以被实施为增强现实、虚拟现实或混合现实中的一者或更多者。当使用人工现实系统时,存在若干功能,这些功能可能包括:经由耦接到人工现实系统的摄像头捕获图像,并且使用所捕获的图像,例如图像处理和重建所捕获的图像。尽管被描述为经由摄像头捕获的图像,但是可以使用其他图像,例如由计算系统或图形处理单元渲染的合成图像。例如,当人工现实系统被实施为耦接至头戴式设备(headset)的智能电话时,该人工现实系统的处理能力可能是有限的。因此,为了改善人工现实系统的图像处理效率,可以对捕获的图像进行采样。此外,采样图像时的目标可以是尽可能少次地采样。虽然点探测像素可以是对图像进行采样的一个选项,但是点探测可能是昂贵的。因此,可能需要有效地对图像进行采样的其它方法。在执行采样的计算系统可能具有有限的电源时,尤其如此。尽管可以在人工现实系统的背景下描述图像的采样,但是本文描述的采样通常可以应用于由多个设备捕获或生成的图像。
在特定实施例中,蓝噪声掩模(blue noise mask)可以用于图像/视频采样。关于生成蓝噪声掩模,特定实施例可以利用于2019年11月20日提交的、申请号为16/689684的美国专利申请中公开的一个或多个系统、部件、元件、功能、方法、操作或步骤,该申请通过引用并入。目前,图像的采样可以包括挑选图像内的点(例如,像素)或位置以进行采样。采样可以用于重建图像。由于图像可以根据其样本进行重建,因此可以发送、存储和处理样本而不是整个图像,这改善了性能并且降低了功耗。采样可以用于视频压缩和传输(例如,移动设备可以将视频的样本发送到头戴式显示器,在该头戴式显示器处,视频将被重建)。为了保留图像重建所需的的像素信息的分布,可以使用蓝噪声掩模来挑选样本点。蓝噪声掩模可以指定图像内的样本点的分布。像素样本的蓝噪声性质可以改善重建图像的质量。被选择或生成以用于图像/视频采样的蓝噪声掩模可以具有样本图案,该蓝噪声掩模在点之间具有最小间隔。蓝噪声掩模的性质可以包括它是各向同性的(isotropic),而且它降级了较高频域内的噪声并且降低了低频域的噪声。虽然蓝噪声掩模可以提供用于图像重建的改进的样本分布,但是当在时间域中进行因式分解(factoring)时,可能会损失蓝噪声性质。即,将蓝噪声掩模应用于视频的图像可能导致较低质量的采样,并且可能导致低频域中的伪影的引入。
在特定实施例中,可以生成考虑时间域的蓝噪声掩模。考虑时间域的蓝噪声掩模可以通过改善时间一致性来对视频的采样进行改善。当通过随时间呈现稳定图像来重建图像/视频时,可以示出对时间一致性的改善。为了考虑时间域,通过在整个时间上提供改进的样本分布,采样可以将时间域纳入考虑。在特定实施例中,时空域中的空间域可以被赋予比时间域更多的权重。可以优先考虑蓝噪声掩模的二维空间域,该二维空间域被应用于跨时间域的各个图像。因此,为了考虑时间域,用于计算蓝噪声掩模中的新样本点的距离可以包含(incorporate)时间域。作为示例而非通过限制的方式,可以使用曼哈顿距离(Manhattan distance)来生成曼哈顿蓝噪声掩模。更具体地,可以在时间域中使用曼哈顿距离。这将导致空间域优先于时间域。因此,由于可以利用由曼哈顿蓝噪声掩模捕获的时间信息来随时间更好地重建图像,因此与被应用于一系列连续图像的2D蓝噪声掩模相比,曼哈顿蓝噪声掩模可以具有改进的时间采样。另一方面,与3D蓝噪声掩模相比,曼哈顿蓝噪声掩模在视频重建期间在时间上可能更差,但是曼哈顿蓝噪声掩模在视频重建期间在空间上可能更好。
在特定实施例中,时空采样可以用于对视频进行采样。在特定实施例中,可以在补偿运动的同时使用时空采样。当对视频的包含图像的帧进行采样时,点的分布可以是随机的。通常在视频内,许多帧可以包含相同的元素。作为示例而非通过限制的方式,赛车的视频将最有可能在一系列帧中出现相同的赛车。为了减少对当前帧进行采样的需要,可以在当前帧中使用先前样本。减少当前帧所需的样本可以改进性能并且减少功耗。然而,并非每个对象在帧内都可以是静止的,并且用于捕获帧的摄像头也可以移动。为了减少采样负担,可以使用运动补偿时空采样来标识对象的先前样本,确定当前帧中那些对象可能出现的区域,并且对当前帧中缺少信息的其他区域进行采样。
在特定实施例中,为了确定在当前帧中的采样位置,可以从先前的一帧或多帧中检索样本。光流可以用于确定先前采样的像素中的哪些像素继续出现在当前帧中以及它们在当前帧中的相应位置。作为示例而非通过限制的方式,如果先前的样本在先前帧中的旗杆(flagpole)上,则系统可以使用光流来确定所采样的像素移动到当前帧中的现在出现旗杆的新位置。在基于光流确定先前样本的新位置之后,可以拒绝无效样本。作为示例而非通过限制的方式,如果对象已经移动到先前样本的当前位置中,则这将使先前样本无效。例如,如果球在围栏前方(该处是先前定位的采样位置)移动。剩余有效样本指示由当前帧中的那些有效样本覆盖的像素信息可以是由先前帧中的对应样本捕获的。这意味着可能没有必要对有效样本附近的区域进行采样。拒绝区域可以由有效样本的每个位置周围的区域限定。拒绝区域可以标识当前帧中不进行采样的区域。采样图案(例如,蓝噪声)可以用于对当前帧的其余部分(拒绝区域之外的区域)进行采样。在特定实施例中,近似泊松盘点填充(approximate Poisson-Disk point filling)可以用于搜索半径内的最小值。对半径内的最小值的搜索可以用于维持所使用的采样的蓝噪声性质。可以接受作为最小值的像素用于采样。在从第一轮采样中接受这些像素之后,可以执行另一次采样迭代,使得当前接受的像素和先前样本用于限定拒绝区域。然后可以再次对图像的其余部分进行采样,并且该过程可以重复,直到帧中的整个图像被充分地采样为止。
在特定实施例中,一个或多个计算系统或设备可以执行如本文所描述的处理。计算系统可以被实施为人工现实系统、社交网络系统、第三方系统或另一计算系统。计算系统可以(无线或有线地)耦接到摄像头或包括摄像头的其他计算系统,以接收多个图像,例如依次包括多个图像的视频。在特定实施例中,计算系统可以包括用于接收多个图像的摄像头。在特定实施例中,计算系统可以被实施为用户穿戴的人工现实系统(例如,人工现实头戴式设备)。可以从耦接到人工现实系统的一个或多个摄像头和/或从其他计算系统(例如,社交网络系统、其他人工现实系统、第三方系统等)接收多个图像。在特定实施例中,计算系统可以是从其他计算系统接收多个图像的社交网络系统。在特定实施例中,一个计算系统可以执行处理的一部分并将数据发送到另一个计算系统以进行处理。
在特定实施例中,计算系统可以接收包括一系列帧的视频。在特定实施例中,计算系统可以从耦接到计算系统的摄像头接收视频。作为示例而非通过限制的方式,人工现实系统可以从耦接到人工现实系统的摄像头接收视频和/或视频流。在特定实施例中,计算系统可以从另一计算系统接收视频。作为示例而非通过限制的方式,人工现实系统可以从另一人工现实系统接收视频。在特定实施例中,视频可以由计算系统生成。作为示例而非通过限制的方式,计算系统可以使用中央处理单元或图形处理单元合成地生成视频。在特定实施例中,视频可以包括包含图像的一系列帧。虽然本公开描述以特定方式接收视频,但是本公开设想了以任何合适的方式接收视频。
在特定实施例中,计算系统可以访问指定了像素采样位置的三维掩模。在特定实施例中,计算系统可以存储三维掩模并从存储器访问三维掩模。在特定实施例中,计算系统可以从另一计算系统请求三维掩模。作为示例而非通过限制的方式,人工现实系统可以从第三方系统(例如,存储三维掩模的服务器)请求三维掩模。在特定实施例中,三维掩模可以具有与空间域相对应的第一维度和第二维度以及与时间域相对应的第三维度。蓝噪声性质可以存在于与三维掩模在空间域中的多个二维空间切片中的每一者相关联的像素采样位置以及与三维掩模在时间域中的多个一维时间切片中的每一者相关联的像素采样位置。在特定实施例中,通过使用距离函数选择像素采样位置来生成三维掩模。距离函数测量三维掩模中的任意两个像素采样位置之间的距离。在特定实施例中,距离函数可以基于空间域中的欧几里德(Euclidean)距离和时间域中的曼哈顿距离来测量三维掩模中的两个像素采样位置之间的距离。在特定实施例中,距离函数可以为 在特定实施例中,x、y和t可以是测量距离的两个点在相应维度中的每个坐标绝对差。可以使用其它距离函数来测量三维掩模中的两个像素采样位置之间的距离。在特定实施例中,顺序地选择由三维掩模指定的像素采样位置。可以基于距离来选择像素采样位置,该距离为使用距离函数测量的像素采样位置与先前选择的像素采样位置之间的距离。在特定实施例中,三维掩模可以具有给定尺寸。作为示例而非通过限制的方式,三维掩模可以在与视频的三维部分相对应的120个帧上是100像素乘以100像素。在特定实施例中,三维掩模可以是可平铺的(tileable)。作为示例而非通过限制的方式,三维掩模可以邻近其自身重复地使用以适当地对全部视频进行采样。例如,如果视频在1000个帧上是1000像素乘以1000像素,并且三维掩模在120个帧上是100像素乘以100像素,则为了对全部视频进行采样,可以通过将三维掩模应用到全部整个视频而跨视频重复三维掩模。在三维掩模不适合于视频的尺寸的情况下,可以使用三维掩模的一部分。作为示例而非通过限制的方式,对于100像素乘以100像素乘以100帧的视频和100像素乘以100像素乘以120帧的三维掩模,可以将三维掩模(例如,100像素乘以100像素乘以100帧)的一部分应用于视频。尽管本公开描述以特定方式访问三维掩模,但是本公开设想了以任何合适的方式访问三维掩模。
在特定实施例中,计算系统可以确定与要用于对视频进行采样的像素采样位置的期望百分数相对应的阈值。在特定实施例中,三维掩模中的像素采样位置可以与顺序值相关联,而该顺序值与选择像素采样位置的顺序相对应。作为示例而非通过限制的方式,第一像素采样位置可以与顺序值1相关联,而第二像素采样位置可以与顺序值2相关联等。计算系统可以确定指示要用于生成视频样本的像素采样位置的百分数的阈值数目。作为示例而非通过限制的方式,计算系统可以将要使用的像素采样位置的百分数设定为像素采样位置的10%。作为另一示例而非通过限制的方式,用户可以设定要用于对视频进行采样的像素采样位置的百分数。要使用的像素采样位置的百分数可以与计算系统的功耗相对应。例如,为了减少功耗,可以减少要用于采样的像素采样位置的百分数。在特定实施例中,计算系统可以基于计算系统的电池剩余寿命,来确定与要用于对视频进行采样的像素采样位置的期望百分数相对应的阈值。作为示例而非通过限制的方式,如果电池寿命下降到阈值水平以下,则计算系统可以将要用于对视频进行采样的像素采样位置设定为10%。在特定实施例中,要使用的像素采样位置的百分数可以与比例因子(scaling factor)相对应。在特定实施例中,可以使用密度估计来适当地确定比例因子和对应的要使用的像素采样位置的百分数。作为示例而非通过限制的方式,对于给定区域,如果该区域与图像的被涂黑部分相对应,则要用于图像的那个部分的像素采样位置不需要具有高百分数。这样,可以针对图像的那个部分减小比例因子。在特定实施例中,可以将不同的比例因子应用于三维掩模的不同部分。例如,如果图像的一部分是人的实心黑色衬衫,则针对图像的那个部分减小三维掩模的比例因子,但是如果图像的另一部分包含复杂图案,则可以增加三维掩模的比例因子。在特定实施例中,为了确定像素采样位置的合适百分数,计算系统可以使用与像素采样位置相关联的顺序值。因此,作为示例而非通过限制的方式,如果要使用10%的像素采样位置,则可以使用前10%的像素采样位置。作为示例而非通过限制的方式,如果存在1000个像素采样位置并且阈值被设定为10%,则可以使用基于它们的顺序值的前100个像素采样位置。在特定实施例中,顺序值可以是从0到1。阈值可以表示与要使用的顺序值相对应的百分数。作为示例而非通过限制的方式,如果阈值是30%,则与顺序值相对应的像素采样位置是从.00到.30。在特定实施例中,计算系统可以基于阈值以及与像素采样位置相关联的顺序值,来选择像素采样位置的子集。像素采样位置的子集可以与要用于对视频进行采样的像素采样位置相对应。作为示例而非通过限制的方式,当对视频进行采样时,计算系统可以使用被应用于视频的像素采样位置的子集来对一系列帧进行采样。尽管本公开描述了以特定方式确定与要用于对视频进行采样的像素采样位置的期望百分数相对应的阈值,但是本公开设想了以任何合适的方式来确定与要用于对视频进行采样的像素采样位置的期望百分数相对应的阈值。
在特定实施例中,计算系统可以通过使用三维掩模对一系列帧进行采样,来生成视频的样本。作为示例而非通过限制的方式,计算系统可以将三维掩模应用于视频以对视频进行采样。样本可以存储在计算系统上。在特定实施例中,计算系统可以将视频的样本发送到另一计算系统。在特定实施例中,视频的样本可以被用于生成重建视频。在特定实施例中,计算系统可以使用机器学习模型,以根据视频的样本来生成重建视频。在特定实施例中,视频的样本可以具有不完整的像素信息,并且重建视频可以具有完整的像素信息。在特定实施例中,其他计算系统可以使用视频的样本,来在相应的计算系统处重建视频。作为示例而非通过限制的方式,如果人工现实系统捕获视频,并且生成该视频的样本以将该视频的样本发送到另一人工现实系统,则该另一人工现实系统可以基于该视频的样本来重建视频。尽管本公开描述以特定方式生成视频的样本,但是本公开设想了以任何合适的方式生成视频的样本。
在特定实施例中,计算系统可以访问包括第一帧和第二帧的视频。如上所述,计算系统可以从多个源接收视频。计算系统可以存储所接收的视频以在稍后的时间进行访问。在特定实施例中,计算系统可以经由联接到计算系统的摄像头来捕获视频。在特定实施例中,视频可以是从计算系统生成的视频。作为示例而非通过限制的方式,人工现实系统可以生成具有人工现实元素的真实世界环境的视频。视频可以至少具有第一帧和连续的第二帧。在特定实施例中,在第一帧内捕获的一个或多个对象将在第二帧中被捕获。尽管本公开描述以特定方式访问视频,但是本公开设想了以任何的合适方式访问视频。
在特定实施例中,计算系统可以确定在视频的第一帧中的采样位置。如本文所述,计算系统可以使用二维掩模来应用于第一帧以对第一帧进行采样。在特定实施例中,二维掩模可以是蓝噪声掩模。在特定实施例中,计算系统可以通过将蓝噪声掩模应用于第一帧来确定第一帧的采样位置。在特定实施例中,如果在第一帧之前存在其他帧,则计算系统可以将三维掩模应用于其他先前帧和第一帧以对这些帧进行采样。在特定实施例中,计算系统可以使用二维掩模(蓝噪声掩模)并使用二维掩模的采样点的阈值百分数,来生成第一帧的样本。如本文所述,计算系统可以确定阈值百分数。尽管本公开描述以特定方式确定视频的第一帧中的采样位置,但本公开设想了以任何合适的方式确定第一帧中的采样位置。
在特定实施例中,计算系统可以通过将第一帧的采样位置转换到第二帧,来确定第二帧的采样位置。在特定实施例中,计算系统可以基于第一帧与第二帧之间的光流来将第一帧的采样位置转换到第二帧。在特定实施例中,光流可以将第一帧的采样位置映射到第二帧的采样位置,其中,采样位置对应于第一帧和第二帧中的像素。作为示例而非通过限制的方式,计算系统可以基于光流来确定,第一帧中的与属于旗杆的像素相对应的采样位置已经移动到第二帧中的相比于第一帧的新的采样位置。计算系统将标识第二帧中与属于旗杆的像素相对应的采样位置,该像素与第一帧中的采样位置的像素相同。由此,计算系统可以保存已经被采样的信息,并且通过重复使用来自第一帧中的样本的信息来减少对当前帧进行采样的需要。在特定实施例中,计算系统可以通过使用第一帧与第二帧之间的颜色时间梯度,来将第一采样位置转换到第二帧。尽管本公开描述以特定方式将第一帧的采样位置转换到第二帧,但本公开设想了以任何合适的方式将第一帧的采样位置转换到第二帧。
在特定实施例中,计算系统可以选择第二帧中的采样位置的子集。计算系统可以比较第一帧中的与第一帧中的采样位置相对应的像素和第二帧中的与第二帧中的采样位置相对应的像素。作为示例而非通过限制的方式,如果与第一帧中的采样位置相对应的像素属于第一帧中的汽车,则计算系统可以将该像素与第二帧中的属于同一汽车的像素进行比较。在特定实施例中,计算系统可以检测第二帧中的一个或多个无效采样位置。在特定实施例中,计算系统可以基于确定第一帧中的与第一帧中的采样位置相对应的像素和第二帧中的与第二帧中的采样位置相对应的像素不匹配来检测无效采样位置。作为示例而非通过限制的方式,如果第一帧中的第一采样位置处的像素是汽车的像素(例如,该像素可以是红色),但是第二帧的第二采样位置中的像素是树的像素(例如,该像素可以是褐色),则计算系统可以检测到第二帧中的无效采样位置。也就是说,在将第一帧的采样位置转换到第二帧的采样位置之后,如果在第二帧的采样位置的预期内容中存在误差,则计算系统可以确定第二帧中的该采样位置是无效的。在特定实施例中,计算系统可以拒绝第二帧中的无效采样位置。由此,计算系统可以通过排除第二帧中的无效采样位置来选择第二帧中的采样位置的子集。在特定实施例中,计算系统可以使用一个或多个试探法(heuristics)来确定是否拒绝无效采样位置。作为示例而非通过限制的方式,如果邻居像素具有与阈值差不同的流,则计算系统可以确定第二帧中的采样位置是无效的。在特定实施例中,计算系统可以估计光流的误差。作为示例而非通过限制的方式,计算系统可以计算一个或多个像素的流矢量,其中,流矢量指示像素从一帧到下一帧的位置的变化。计算系统可以确定邻居像素的一个或多个流矢量之间的差是否超过阈值差。如果流矢量之间的差超过阈值差,则计算系统可以确定对应于与流矢量相关联的像素的采样位置是无效的。在特定实施例中,计算系统可以模糊光流,并且检测区域的变化大于阈值变化的位置。作为示例而非通过限制的方式,计算系统可以平均来自附近像素的流矢量。通过对流矢量求平均,计算系统可以检测大的变化,其可以被标记为无效采样位置。即,对应于与大的平均后的变化相关联的流向量的像素可以被标记为无效采样位置。在特定实施例中,计算系统可以跟踪所估计的流的误差。在特定实施例中,计算系统可以确定前向光流和后向光流。作为示例而非通过限制的方式,计算系统可以确定从帧I到帧I+1的光流,并且确定从帧I+1到帧I的光流。如果在前向光流与后向光流之间检测到任何不一致,则计算系统可以确定一个或多个无效采样位置。作为示例而非通过限制的方式,如果前向光流指示帧I中的像素A去往帧I+1中的像素B,但是后向光流指示帧I+1中的像素B不去往帧I中的像素A附近,则计算系统可以将与像素B相关联的采样位置确定为无效采样位置。尽管本公开描述了以特定方式选择采样位置的子集,但是本公开设想了以任何合适的方式选择采样位置的子集。
在特定实施例中,计算系统可以在第二帧中限定一个或多个拒绝区域。在特定实施例中,计算系统可以基于计算系统已经选择的、第二帧中的采样位置的子集,来在第二帧中限定拒绝区域。在特定实施例中,拒绝区域可以是在第二帧中被标识为已经由计算系统充分采样的区域,并且因此不需要另外的采样。拒绝区域限定不需要任何另外的采样的区域。在特定实施例中,拒绝区域可以是从第二帧中的子集的采样位置延伸的固定半径的区域。作为示例而非通过限制的方式,计算系统可以设定围绕每个采样位置的10个像素的半径,以根据所选择的采样位置的子集生成拒绝区域。尽管本公开描述了以特定方式限定拒绝区域,但是本公开设想了以任何合适的方式限定拒绝区域。
在特定实施例中,计算系统可以确定在第二帧中的拒绝区域之外的采样位置。在特定实施例中,计算系统可以标识第二帧中的采样位置以进行另外的采样。也就是说,计算系统可以对第二帧中当前没有足够样本的区域进行另外的采样。在特定实施例中,计算系统可以使用包括蓝噪声性质的二维掩模(例如,蓝噪声掩模)在拒绝区域之外的区域中生成第二帧的样本。作为示例而非通过限制的方式,计算系统可以将蓝噪声掩模应用于拒绝区域之外的区域。在特定实施例中,计算系统可以使用近似泊松盘点填充来标识第二帧中的拒绝区域之外的采样位置。虽然仅讨论了标识拒绝区域之外的采样位置的过程的一次迭代,但是计算系统可以执行标识采样位置并且进一步限定拒绝区域的多次迭代。作为示例而非通过限制的方式,计算系统可以开始于第一帧使用的第一采样位置,并且基于第一采样位置限定与第二帧中的第二采样位置相对应的拒绝区域。计算系统可以标识第二帧中的拒绝区域之外的第三采样位置。当第二帧仍然未被充分采样时,计算系统可以基于第二采样位置和第三采样位置重新限定拒绝区域,并且然后标识第四采样位置。计算系统可以执行该过程的多次迭代,以对该帧进行充分采样。尽管本公开描述以特定方式确定帧中的拒绝区域之外的采样位置,但本公开设想了以任何合适的方式确定帧中的拒绝区域之外的采样位置。
在特定实施例中,计算系统可以基于第二帧中的采样位置来生成视频的样本。在特定实施例中,计算系统可以基于第一帧中的与第一帧中的采样位置相对应的像素以及第二帧中的与在拒绝区域之外标识的采样位置相对应的像素,来生成视频的样本。计算系统可以通过重复使用来自第一帧的样本以仅标识计算系统需要在第二帧中进行另外的采样的区域,来减少生成视频的样本所需的采样。在特定实施例中,计算系统可以存储视频的样本。在特定实施例中,如本文所述,计算系统可以将样本发送到其它计算系统。尽管本公开描述以特定方式生成视频的样本,但是本公开设想了以任何合适的方式生成视频的样本。
参考图1,示出了重建图像的示例过程100。在特定实施例中,过程100可以开始于计算系统接收图像102。在特定实施例中,计算系统可以是人工现实系统、智能手机或其他计算系统。作为示例而非通过限制的方式,计算系统可以是人工现实头戴式设备,该人工现实头戴式设备包括用于捕获图像102的摄像头。在特定实施例中,采样掩模104可以被应用于图像102以生成采样图像106。在特定实施例中,计算系统可以使用图像重建108的过程来通过使用采样图像106重建图像。作为示例而非通过限制的方式,计算系统可以使用机器学习模型来执行图像重建108过程。在特定实施例中,计算系统可以使用其他图像重建方法。在特定实施例中,在使用采样图像106执行图像重建108之后,计算系统可以生成重建图像110。虽然过程100被描述为由单个计算系统执行,但是过程100的一个或多个部分可以由一个或多个计算系统执行。作为示例而非通过限制的方式,计算系统可以生成采样图像106并将采样图像106发送到另一计算系统,以使用图像重建108过程来重建图像,从而生成重建图像110。
参考图2,示出了重建视频的示例过程200。在特定实施例中,过程200可以开始于计算系统接收包括多个图像的视频202。在特定实施例中,计算系统采样掩模204可以应用于视频202以生成视频202的样本206。在特定实施例中,计算系统使用视频重建208的过程来通过使用视频202的样本206重建视频。作为示例而非通过限制的方式,计算系统可以使用机器学习模型来执行视频重建208的过程。在特定实施例中,计算系统可以使用其他视频重建方法。在特定实施例中,在使用视频202的样本206执行视频重建208之后,计算系统可以生成重建视频210。虽然过程200被描述为由单个计算系统执行,但是过程200的一个或多个部分可以由一个或多个计算系统执行。作为示例而非通过限制的方式,计算系统可以生成视频202的样本206并且将样本206发送到另一计算系统,以使用视频重建208的过程来重建视频,从而生成重建视频210。
参考图3,示出了生成采样掩模的示例过程300。在特定实施例中,过程300可以是生成蓝噪声掩模的过程300。在特定实施例中,过程300可以开始于选择点302(例如,采样位置)。点302可以被随机选择为初始采样位置。在特定实施例中,点302可以被指派有顺序值。作为示例而非通过限制的方式,点302可以被指派有顺序值1。在特定实施例中,过程300可以使用距离函数来确定如本文所述的第二点304。第二点304可以被指派有顺序值。作为示例而非通过限制的方式,第二点304可以被指派有顺序值2。过程300可以继续,直到在二维空间内确定了用于生成采样掩模306的所有采样位置为止。在特定实施例中,多个采样位置中的每一者可以被指派有顺序值。在特定实施例中,采样掩模306可以具有给定的尺寸。作为示例而非通过限制的方式,采样掩模306可以是1000像素乘以1000像素。在特定实施例中,采样掩模306可以具有蓝噪声性质。
参考图4,示出了三维空间400的示例三维采样掩模402。在特定实施例中,三维采样掩模402可以包括由x轴404和y轴406组成的空间域。在特定实施例中,三维采样掩模402可以包括由t轴408组成的时间域。在特定实施例中,三维采样掩模402可以包括蓝噪声性质。作为示例而非通过限制的方式,三维采样掩模402可以包括三维采样掩模402在空间域中的二维空间切片中的蓝噪声性质以及三维采样掩模402在时间域中的一维时间切片中的蓝噪声性质。在特定实施例中,可以通过使用距离函数以顺序地选择如本文所述的采样位置的过程,来生成三维采样掩模402。在特定实施例中,三维采样掩模402可以应用于视频以对视频进行采样。在特定实施例中,三维采样掩模402的采样位置的阈值百分数可以用于对如本文所述的视频进行采样。
图5示出了在空间域中二维采样掩模502与曼哈顿蓝噪声采样掩模504之间的比较500。在特定实施例中,二维采样掩模502可以是蓝噪声掩模。在特定实施例中,曼哈顿蓝噪声采样掩模504可以基于距离函数而生成,该距离函数使用关于时间域的曼哈顿距离。作为示例而非通过限制的方式,用于生成曼哈顿蓝噪声采样掩模504的距离函数可以为在特定实施例中,对应于二维采样掩模502的顶行可以对应于二维采样掩模502的样本的各种百分数,其中样本数量从左向右增加。作为示例而非通过限制的方式,在右边示出的初始采样掩模可以是使用二维采样掩模502的样本的1%的阈值,并且在左边示出的最终采样掩模可以是使用二维采样掩模502的样本的80%的阈值。对应于二维采样掩模502的底行可以表示顶行上的相应采样掩模的傅里叶变换(Fourier transform)的绝对值。如傅里叶变换的绝对值所示,二维采样掩模502可以在所使用的样本的各种阈值百分数下都具有蓝噪声性质。在特定实施例中,对应于曼哈顿蓝噪声采样掩模504的顶行可以对应于曼哈顿蓝噪声采样掩模504的样本的各种百分数,其中样本数量从左向右增加。作为示例而非通过限制的方式,在左边示出的初始采样掩模可以是使用曼哈顿蓝噪声采样掩模504的样本的1%的阈值,并且在右边示出的最终采样掩模可以是使用曼哈顿蓝噪声采样掩模504的样本的80%的阈值。对应于曼哈顿蓝噪声采样掩模502的底行可以表示顶行上的相应采样掩模的傅里叶变换的绝对值。如比较500所示,虽然使用不同的距离函数来确定曼哈顿蓝噪声采样掩模504中的采样位置,但是与二维采样掩模502相比,曼哈顿蓝噪声采样掩模504仍然在空间域内保留了蓝噪声性质。
参考图6,示出了在时间域中二维采样掩模602与曼哈顿蓝噪声采样掩模604之间的比较600。二维采样掩模602可以与二维采样掩模502相同,并且曼哈顿蓝噪声采样掩模604可以与曼哈顿蓝噪声采样掩模504相同。在特定实施例中,对应于二维采样掩模602的顶行可以对应于二维采样掩模602的样本的各种百分数,其中样本数量从左向右增加。作为示例而非通过限制的方式,在右边示出的初始采样掩模可以是使用二维采样掩模602的样本的1%的阈值,并且在右边示出的最终采样掩模可以是使用二维采样掩模602的样本的80%的阈值。对应于二维采样掩模602的底行可以表示顶行上的相应采样掩模的傅里叶变换的绝对值。如傅里叶变换的绝对值所示,二维采样掩模602可以不具有关于时间域的蓝噪声性质。在特定实施例中,对应于曼哈顿蓝噪声采样掩模604的顶行可以对应于曼哈顿蓝噪声采样掩模604的样本的各种百分数,其中样本数量从左向右增加。作为示例而非通过限制的方式,在左边示出的初始采样掩模可以是使用曼哈顿蓝噪声采样掩模604的样本的1%的阈值,并且在右边示出的最终采样掩模可以是使用曼哈顿蓝噪声采样掩模604的样本的80%的阈值。对应于曼哈顿蓝噪声采样掩模602的底行可以表示顶行上的相应采样掩模的傅里叶变换的绝对值。如比较600所示,通过使用不同的距离函数来确定曼哈顿蓝噪声采样掩模604中的采样位置,与二维采样掩模602相比,曼哈顿蓝噪声采样掩模604能够在时间域内保留蓝噪声性质。因为曼哈顿蓝噪声采样掩模604能够跨时间域保留一些蓝噪声性质,因此这可以为曼哈顿蓝噪声采样掩模604采样视频带来益处。
图7示出了在采样时补偿运动的示例过程700。在特定实施例中,过程700可以从确定多个采样位置的初始步骤702开始。在特定实施例中,可以通过在初始帧内的图像上应用蓝噪声掩模来获得采样位置。继续过程700,在第二步骤704中,摄像头可以向左摇摄(pan)。在特定实施例中,随着摄像头向左摇摄,最初在步骤702中确定的一些采样位置可以在第二步骤704中被保留。即,在步骤704中,在摄像头向左摇摄后,与出现在图像中的像素相对应的相同采样位置被保留。作为示例而非通过限制的方式,因为木柱在摄像头向左摇摄之后出现在图像中,因此与木柱对应的像素可以在第二步骤中被保留。在特定实施例中,如本文所述,来自步骤702的初始图像中的采样位置可以被转换到步骤704的图像中的新位置。作为示例而非通过限制的方式,过程700可以使用光流将来自步骤702的初始图像中的采样位置转换到步骤704的图像中的新位置。在特定实施例中,在步骤706中,可以拒绝或移除与无效像素相对应的无效采样位置。如步骤706中的图像所示,从步骤704的图像中去除若干采样位置。因为在当前帧中可能存在不正确的像素,因此这些采样位置可以被移除。作为示例而非通过限制的方式,如果与采样位置相对应的像素最初为红色,并且经转换的采样位置中的该像素现在为蓝色,那么由于该像素与先前像素不匹配,该像素是无效的,因此该采样位置可以被拒绝。在步骤706中,过程700可以选择第一步骤702中确定的初始采样位置的采样位置的子集。在选择了采样位置的子集之后,在步骤708中,过程700可以限定围绕子集的采样位置的拒绝区域。可以根据采样位置的子集中的各个采样位置使用预定义半径来生成拒绝区域。在步骤708中限定了拒绝区域之后,过程700继续到步骤710,在步骤710中,基于本文所描述的技术在帧中确定附加采样位置。在附加采样位置被标识之后,过程700可以通过检索保留的采样位置以及添加附加采样位置来确定与图像对应的采样位置。过程700可以通过将与所标识的采样位置相对应的采样掩模应用于帧中的图像,来生成帧中的图像的样本。
图8示出了基于先前样本来分布新样本的示例过程800。在特定实施例中,在步骤802中,过程800可以最初开始于先前样本。先前样本可以来自于初始帧,该初始帧具有待应用于当前帧的有效采样位置。在步骤804中,过程800可以限定围绕步骤802中的有效采样位置的拒绝区域。该过程在限定了拒绝区域之后,可以在步骤806中将采样掩模应用于拒绝区域之外的区域。作为示例而非通过限制的方式,在步骤806中,过程800可以将蓝噪声掩模应用于拒绝区域之外的区域。在特定实施例中,在步骤808中,过程800可以使用近似泊松盘点填充来标识具有一半径的圆。在步骤810中,如果像素或采样位置是对应圆的半径内的最小值,那么过程800可以接受该像素或采样位置。最小值可以对应于在步骤808的圆内、在步骤806中生成的蓝噪声掩模。在特定实施例中,在步骤812中,过程800可以通过重新限定类似于步骤804的拒绝区域来重复。为了充分地对帧中的其余图像进行采样,过程800可以根据需要重复步骤804到步骤810以填充样本的任何间隙。作为示例而非通过限制的方式,过程800可以重复,直到由采样点限定的拒绝区域包含全部图像为止。
图9示出了将先前样本与新样本进行组合的示例过程900。在特定实施例中,过程900可以开始于帧0 902,帧0 902包括来自先前帧的样本。如本文所述,帧0 902的样本可以源自:将蓝噪声掩模应用于先前帧中的图像。在特定实施例中,可以根据本文所描述的来标识新样本904。在特定实施例中,过程900可以将帧0 902的样本和新样本904进行组合,以生成包括帧0 902的样本和新样本904两者的帧1 906。帧1 906可以表示当前帧的所有样本以对当前帧进行充分采样。
图10示出了计算环境1000的示例计算系统1002。在特定实施例中,计算系统1002可以被实施为人工现实系统、移动设备、台式机、服务器和如本文所述的其他计算系统。在特定实施例中,计算系统1002可以包括输入模块1004、掩模生成模块1006、光流模块1008、采样模块1010、重建模块1012、以及有助于生成视频的样本的其他模块。计算系统可以具有与本文描述的计算系统类似或相同的功能。
在特定实施例中,输入模块1004可以与一个或多个计算系统对接,以接收包括多个帧的视频,所述帧包含图像。在特定实施例中,输入模块1004可以与耦接到计算系统1002的摄像头对接,以接收包括视频的输入数据,所述视频包括包含图像的多个帧。作为示例而非通过限制的方式,输入模块1004可以与摄像头对接,以接收视频流。作为另一示例而非通过限制的方式,输入模块1004可以从计算系统请求视频。作为示例而非通过限制的方式,输入模块1004可以与服务器通信,以请求包括包含图像的多个帧的视频。在特定实施例中,输入模块1004可以将输入数据(例如,视频)存储在计算系统1002上。输入模块1004可以将输入数据(例如视频)发送到计算系统1002的其他模块。作为示例而非通过限制的方式,输入模块1004可以将输入数据发送到光流模块1008和采样模块1010。
在特定实施例中,掩模生成模块1006可以生成二维采样掩模和三维采样掩模。在特定实施例中,掩模生成模块1006可以生成蓝噪声掩模,即二维蓝噪声掩模或三维蓝噪声掩模。在特定实施例中,掩模生成模块1006可以使用各种距离函数来生成蓝噪声掩模。在特定实施例中,特定距离函数可以用于二维采样掩模或三维采样掩模。可以使用多个距离函数来生成二维采样掩模或三维采样掩模。在特定实施例中,掩模生成模块可以存储所生成的采样掩模。在特定实施例中,掩模生成模块1006可以计算曼哈顿距离以便生成特定的三维采样掩模。掩模生成模块1006可以使用曼哈顿距离,以便基于曼哈顿距离生成蓝噪声掩模。在特定实施例中,如本文所述,掩模生成模块1006可以生成采样掩模,该采样掩模包括空间域和时间域中的蓝噪声性质。在特定实施例中,掩模生成模块1006可以将采样掩模发送到计算系统1002的其他模块。作为示例而非通过限制的方式,掩模生成模块1006可以将采样掩模发送到光流模块1008、采样模块1010或重建模块1012。
在特定实施例中,光流模块1008可以计算光流。在特定实施例中,光流模块1008可以从计算系统1002的其他模块接收数据以计算光流。在特定实施例中,如本文所述,光流可以被用于将第一帧的采样位置转换到第二帧的采样位置。在特定实施例中,光流模块1008还可以执行其它梯度计算,例如确定将第一帧的采样位置转换到第二帧的采样位置的颜色梯度。在特定实施例中,光流模块1008可以生成与光流相对应的输出数据。光流模块1008可以将输出数据发送到计算系统1002的其它模块。作为示例而非通过限制的方式,光流模块1008可以将输出数据发送到采样模块1010。
在特定实施例中,采样模块1010可以基于其从输入模块1004接收到的内容来生成图像、视频等的样本。在特定实施例中,采样模块1010可以从输入模块1004接收包括包含图像的多个帧的视频。在特定实施例中,采样模块1010可以基于从输入模块1004接收到的输入来从掩模生成模块1006请求采样掩模。作为示例而非通过限制的方式,如果采样模块1010从输入模块1004接收到视频,则采样模块1010可以从掩模生成模块请求三维采样掩模。在特定实施例中,采样模块1010可以从光流模块1008接收输出数据。在特定实施例中,如本文所述,采样模块1010可以使用与光流对应的输出数据来对当前帧进行有效地采样。作为示例而非通过限制的方式,如果采样模块1010生成第一帧的样本,则采样模块1010可以使用光流,以基于所述光流将样本从第一帧转换到连续的第二帧。在特定实施例中,采样模块1010可以生成视频或图像的样本。在特定实施例中,采样模块1010可以将样本发送到计算系统1002的其它模块。作为示例而非通过限制的方式,采样模块1010可以将样本发送到重建模块1012。在特定实施例中,采样模块1010可以从另一计算系统接收样本并且存储待由重建模块1012重建的样本。在特定实施例中,采样模块1010可以将所生成的样本发送到其它计算系统。作为示例而非通过限制的方式,样本可以被发送到另一计算系统以重建样本。
在特定实施例中,重建模块1012可以基于所接收的图像或视频的样本来重建图像或视频。在特定实施例中,重建模块1012可以从采样模块1010接收样本。在特定实施例中,重建模块1012可以使用机器学习模型根据从采样模块1010接收到的样本来重建图像或视频。在特定实施例中,重建模块1012可以将重建的图像或视频发送到显示器以呈现给用户。作为示例而非通过限制的方式,如果重建的视频是虚拟呼叫流上的用户的视频,则重建模块1012可以将重建的视频发送到显示器以将重建的视频呈现给用户。
图11示出了用于使用三维掩模对视频进行采样的示例方法1100。方法1100可以开始于步骤1110,在步骤1110中,计算系统可以接收包括一系列帧的视频。在步骤1120,计算系统可以访问指定像素采样位置的三维掩模,该三维掩模具有与空间域相对应的第一维度和第二维度以及与时间域相对应的第三维度。在特定实施例中,蓝噪声性质可以存在于与三维掩模在空间域中的多个二维空间切片中的每一者相关联的像素采样位置以及与三维掩模在时间域中的多个一维时间切片中的每一者相关联的像素采样位置。在步骤1130,计算系统可以通过使用三维掩模对一系列帧进行采样来生成视频的样本。在适当的情况下,特定实施例可以重复图11的方法的一个或多个步骤。尽管本公开描述并示出了图11的方法的特定步骤以特定顺序发生,但是本公开设想了图11的方法的任何合适的步骤以任何合适的顺序发生。此外,尽管本公开描述并示出了用于使用三维掩模对视频进行采样的示例方法,该示例方法包括图11的方法的特定步骤,但是本公开设想了使用三维掩模对视频进行采样的任何合适的方法,所述任何合适的方法包括任何合适的步骤,即在适当的情况下可以包括图11的方法的所有步骤或一些步骤、或不包括图11的方法的步骤。此外,尽管本公开描述并示出了执行图11的方法的特定步骤的特定部件、设备或系统,但是本公开设想了执行图11的方法的任何合适的步骤的任何合适的部件、设备或系统的任何合适的组合。
图12示出了使用来自先前帧的采样位置对视频进行采样的示例方法1200。方法1200可以开始于步骤1210,在步骤1210中,计算系统可以访问包括第一帧和第二帧的视频。在步骤1220,计算系统可以确定第一帧的第一采样位置。在步骤1230,计算系统可以通过根据第一帧与第二帧之间的光流将第一采样位置转换到第二帧,来确定第二帧的第二采样位置。在步骤1240,计算系统可以基于第一帧中的与第一采样位置相对应的像素和第二帧中的与第二采样位置相对应的像素之间的比较,来选择第二采样位置的子集。在步骤1250,计算系统可以基于第二采样位置的子集,来在第二帧中限定一个或多个拒绝区域。在步骤1260,计算系统可以在一个或多个拒绝区域之外的区域中确定第二帧的第三采样位置。在步骤1270,计算系统可以基于第一帧中的与第一采样位置相对应的像素以及第二帧中的与第三采样位置相对应的像素,来生成视频的样本。在适当的情况下,特定实施例可以重复图12的方法的一个或多个步骤。尽管本公开描述并示出了图12的方法的特定步骤以特定顺序发生,但是本公开设想了图12的方法的任何合适的步骤以任何合适的顺序发生。此外,尽管本公开描述并示出了使用来自先前帧的采样位置对视频进行采样的示例方法,所述示例方法包括图12的方法的特定步骤,但是本公开设想了使用来自先前帧的采样位置对视频进行采样的任何合适的方法,所述任何合适的方法包括任何合适的步骤,即在适当的情况下可以包括图12的方法的所有步骤或一些步骤、或不包括图12的方法的步骤。此外,尽管本公开描述并示出了执行图12的方法的特定步骤的特定部件、设备或系统,但是本公开设想了执行图12的方法的任何合适的步骤的任何合适的部件、设备或系统的任何合适的组合。
尽管本公开描述并示出了在执行各种功能的计算系统的背景文中的过程,但是另一计算系统(例如,被实施为社交网络系统1360或第三方系统1370的服务器)可以处理该处理并将结果发送到计算系统。
图13示出了与虚拟现实系统相关联的示例网络环境1300。网络环境1300包括与客户端系统1330交互的用户1301、社交网络系统1360以及第三方系统1370,这些系统通过网络1310彼此连接。尽管图13示出了用户1301、客户端系统1330、社交网络系统1360、第三方系统1370和网络1310的特定布置结构,但是本公开设想了用户1301、客户端系统1330、社交网络系统1360、第三方系统1370和网络1310的任何合适的布置结构。作为示例而非通过限制的方式,用户1301、客户端系统1330、社交网络系统1360和第三方系统1370中的两者或多者可以绕过网络1310而彼此直接连接。作为另一示例,客户端系统1330、社交网络系统1360和第三方系统1370中的两者或多者可以在物理上或逻辑上全部地或部分地彼此协同定位。而且,虽然图13示出了特定数量的用户1301、客户端系统1330、社交网络系统1360、第三方系统1370和网络1310,但是本公开设想了客户端系统1330、社交网络系统1360、第三方系统1370和网络1310的任何合适的数量。作为示例而非通过限制的方式,网络环境1300可以包括多个用户1301、多个客户端系统1330、多个社交网络系统1360、多个第三方系统1370和多个网络1310。
本公开设想了任何合适的网络1310。作为示例而非通过限制的方式,网络1310的一个或多个部分可以包括自组织网络、内联网、外联网、虚拟专用网络(virtual privatenetwork,VPN)、局域网(local area network,LAN)、无线LAN(wireless LAN,WLAN)、广域网(wide area network,WAN)、无线WAN(wireless WAN,WWAN)、城域网(metropolitan areanetwork,MAN)、一部分互联网、一部分公共交换电话网(Public Switched TelephoneNetwork,PSTN)、蜂窝电话网络、或这些网络中的两者或多者的组合。网络1310可以包括一个或多个网络1310。
链路1350可以将客户端系统1330、社交网络系统1360和第三方系统1370与通信网络1310连接,或者彼此连接。本公开设想了任何合适的链路1350。在特定实施例中,一个或多个链路1350包括一个或多个有线(诸如,例如数字用户线路(Digital Subscriber Line,DSL)或电缆数据服务界面规范(Data Over Cable Service Interface Specification,DOCSIS))、无线(诸如,例如Wi-Fi或全球微波接入互通(Worldwide Interoperability forMicrowave Access,WiMAX))、或光学链路(诸如,例如同步光纤网络(Synchronous OpticalNetwork,SONET)或同步数字系列(Synchronous Digital Hierarchy,SDH))链路。在特定实施例中,一个或多个链路1350各自包括自组织网络、内联网、外联网、VPN、LAN、WLAN、WAN、WWAN、MAN、一部分互联网、一部分PSTN、基于蜂窝技术的网络、基于卫星通信技术的网络、另一链路1350、或这种链路1350中的两者或多者的组合。链路1350在整个网络环境1300中不必相同。一个或多个第一链路1350可以在一个或多个方面与一个或多个第二链路1350不同。
在特定实施例中,客户端系统1330可以是电子设备,该电子设备包括硬件、软件或嵌入式逻辑部件或两个或更多个这种部件的组合,并且能够执行由客户端系统1330实现或支持的合适功能。作为示例而非通过限制的方式,客户端系统1330可以包括计算机系统,例如台式计算机、笔记本或膝上型计算机、上网本、平板计算机、电子阅读器、GPS设备、摄像头、个人数字助理(personal digital assistant,PDA)、手持式电子设备、蜂窝电话、智能电话、虚拟现实头戴式设备和控制器、其它合适的电子设备、或它们任何合适的组合。本公开设想了任何合适的客户端系统1330。客户端系统1330可以使在客户端系统1330处的网络用户访问网络1310。客户端系统1330可以使其用户与其他客户端系统1330处的其他用户通信。客户端系统1330可以生成虚拟现实环境,以供用户与内容交互。
在特定实施例中,客户端系统1330可以包括虚拟现实(或增强现实)头戴式设备1332和虚拟现实输入设备1334,例如虚拟现实控制器。客户端系统1330处的用户可以佩戴虚拟现实头戴式设备1332,并使用虚拟现实输入设备与由虚拟现实头戴式设备1332生成的虚拟现实环境1336进行交互。尽管未示出,但是客户端系统1330也可以包括独立处理计算机和/或虚拟现实系统的任何其他部件。虚拟现实头戴式设备1332可以生成虚拟现实环境1336,虚拟现实环境1336可以包括系统内容1338(包括但不限于操作系统),例如软件或固件更新,并且还包括第三方内容1340,例如来自应用的内容或从互联网动态下载的内容(例如,网页内容)。虚拟现实头戴式设备1332可以包括传感器1342,例如加速度计、陀螺仪、磁力计,以生成跟踪头戴式设备1332设备的位置的传感器数据。头戴式设备1332还可以包括眼睛跟踪器,以用于跟踪用户眼睛的位置或他们的观看方向。客户端系统可以使用来自传感器1342的数据来确定关于头戴式设备的速度、方向和重力。虚拟现实输入设备1334可以包括传感器1344,例如加速度计、陀螺仪、磁力计和触控传感器,以生成跟踪输入设备1334的位置和用户手指的位置的传感器数据。客户端系统1330可以利用外向内跟踪(outside-in tracking),其中,跟踪摄像头(未示出)被放置在虚拟现实头戴式设备1332的外部并在虚拟现实头戴式设备1332的视线内。在外向内跟踪中,跟踪摄像头可以跟踪虚拟现实头戴式设备1332的位置(例如,通过跟踪虚拟现实头戴式设备1332上的一个或多个红外LED标记)。替代地或附加地,客户端系统1330可以利用内向外跟踪(inside-out tracking),其中跟踪摄像头(未示出)可以被放置在虚拟现实头戴式设备1332本身上或被放置在虚拟现实头戴式设备1332本身内。在内向外跟踪中,跟踪摄像头可以在现实世界中捕捉其周围的图像,并且可以使用现实世界的变化视角来确定其自身在空间中的位置。
第三方内容1340可以包括网页浏览器,并且可以具有一个或多个附加软件、插件程序或其他延伸内容。客户端系统1330处的用户可以输入将网页浏览器引向特定服务器(例如服务器1362或与第三方系统1370相关联的服务器)的统一资源定位符(UniformResource Locator,URL)或其他地址,并且网页浏览器可以生成超文本传输协议(HyperText Transfer Protocol,HTTP)请求,并且将该HTTP请求传送给服务器。服务器可以接受HTTP请求,并且响应于该HTTP请求而将一个或多个超文本标记语言(Hyper Text MarkupLanguage,HTML)文件传输给客户端系统1330。客户端系统1330可以基于来自服务器的HTML文件来渲染网络界面(例如,网页),以供呈现给用户。本公开设想了任何合适的源文件。作为示例而非通过限制的方式,根据特定需要,网络界面可以根据HTML文件、可扩展超文本标记语言(Extensible Hyper Text Markup Language,XHTML)文件或可扩展标记语言(Extensible Markup Language,XML)文件来渲染。这种界面还可以执行脚本、标记语言和脚本的组合等。在本文中,在适当的情况下,网络界面的引用包括一个或多个对应的源文件(浏览器可以用来渲染网络界面的文件),并且反之亦然。
在特定实施例中,社交网络系统1360可以是可以托管在线社交网络的网络可寻址计算系统。社交网络系统1360可以生成、存储、接收并发送社交网络数据,诸如,例如用户配置文件数据、概念配置文件数据、社交图信息或与在线社交网络相关的其他合适数据。社交网络系统1360可以由网络环境1300的其他部件直接访问或者经由网络1310访问。作为示例而非通过限制的方式,客户端系统1330可以直接或经由网络1310使用第三方内容1340的网络浏览器或与社交网络系统1360相关联的本地应用程序(例如,移动社交网络应用程序、消息收发应用程序、另一合适的应用程序、或它们的任何组合)来访问社交网络系统1360。在特定实施例中,社交网络系统1360可以包括一个或多个服务器1362。每个服务器1362可以是单一服务器或跨多个计算机或多个数据中心的分布式服务器。服务器1362可以是各种类型的,例如但不限于网络服务器、新闻服务器、邮件服务器、消息服务器、广告服务器、文件服务器、应用服务器、交换服务器、数据库服务器、代理服务器、适于执行本文所描述的功能或过程的另一服务器、或它们的任何组合。在特定实施例中,每个服务器1362可以包括硬件、软件或嵌入式逻辑部件、或这些服务器中的两者或多者的组合,以用于执行由服务器1362实现或支持的合适功能。在特定实施例中,社交网络系统1360可以包括一个或多个数据存储部1364。数据存储部1364可以用于存储各种类型的信息。在特定实施例中,可以根据特定的数据结构,对存储在数据存储部1364内的信息进行组织。在特定实施例中,每个数据存储部1364可以是关联式、柱状、相关式或其它合适的数据库。虽然本公开描述或示出了特定类型的数据库,但是本公开设想了任何合适类型的数据库。特定实施例可以提供界面,该界面使客户端系统1330、社交网络系统1360或者第三方系统1370能够管理、检索、修改、增加或删除存储在数据存储部1364内的信息。
在特定实施例中,社交网络系统1360可以在一个或多个数据存储部1364内存储一个或多个社交图。在特定实施例中,社交图可以包括多个节点和连接节点的多个边,所述多个节点可以包括多个用户节点(每个用户节点与特定的用户对应)或多个概念节点(每个概念节点与特定的概念对应)。社交网络系统1360可以向在线社交网络的用户提供与其他用户通信和交互的能力。在特定实施例中,用户可以经由社交网络系统1360加入在线社交网络,然后可以增加与社交网络系统1360中的想要被连接到的多个其他用户的联系(例如,关系)。在本文中,术语“朋友(friend)”可以指社交网络系统1360中的用户经由社交网络系统1360与其形成联系、关联或关系的任何其他用户。
在特定实施例中,社交网络系统1360可以向用户提供对由社交网络系统1360支持的各种类型的项目或对象采取行动的能力。作为示例而非通过限制的方式,项目和对象可以包括社交网络系统1360的用户所属的群组或社交网络、用户可能感兴趣的事件或日历项、用户可以使用的基于计算机的应用程序、允许用户经由服务购买或销售的项目的交易、与用户可以执行的广告的交互、或其它合适的项目或对象。用户可以与能够在社交网络系统1360内或者由第三方系统1370的外部系统表示的任何事物交互,该外部系统与社交网络系统1360分开并且经由网络1310联接至社交网络系统1360。
在特定实施例中,社交网络系统1360能够链接各种实体。作为示例而非通过限制的方式,社交网络系统1360可以使用户能够彼此交互并且接收来自第三方系统1370或其他实体的内容,或者允许用户通过应用程序编程接口(application programminginterfaces,API)或其他通信通道与这些实体交互。
在特定实施例中,第三方系统1370可以包括一种或多种类型的服务器、一个或多个数据存储部、一个或多个接口(包括但不限于API)、一个或多个网络服务、一个或多个内容源、一个或多个网络、或例如可以与服务器进行通信的任何其它合适的部件。第三方系统1370可以由与操作社交网络系统1360的实体不同的实体操作。然而,在特定实施例中,社交网络系统1360和第三方系统1370可以彼此相结合地操作,以向社交网络系统1360或第三方系统1370的用户提供社交网络服务。在这个意义上,社交网络系统1360可以提供平台或支柱,其他系统(例如第三方系统1370)可以使用该平台或支柱来在互联网上向用户提供社交网络服务和功能。
在特定实施例中,第三方系统1370可以包括第三方内容对象提供商。第三方内容对象提供商可以包括可以向客户端系统1330传送的一个或多个内容对象源。作为示例而非通过限制的方式,内容对象可以包括关于用户感兴趣的事物或活动的信息,诸如,例如电影放映时间、电影评论、餐厅评论、餐厅菜单、产品信息和评论、或其他合适的信息。作为另一示例而非通过限制的方式,内容对象可以包括激励内容对象,例如优惠券、折扣票、礼品券或其他合适的激励对象。
在特定实施例中,社交网络系统1360还包括用户生成的内容对象,该用户生成的内容对象可以增强用户与社交网络系统1360的交互。用户生成的内容可以包括用户可以添加、上传、发送或“发帖(post)”到社交网络系统1360中的任何事物。作为示例而非通过限制的方式,用户将帖子从客户端系统1330传送给社交网络系统1360。帖子可以包括例如状态更新或其他文本数据的数据、位置信息、照片、视频、链接、音乐或其他类似的数据或媒体。内容还可以由第三方通过“通信通道(communication channel)”(例如,新闻推送或流)添加到社交网络系统1360中。
在特定实施例中,社交网络系统1360可以包括各种服务器、子系统、程序、模块、记录以及数据存储部。在特定实施例中,社交网络系统1360可以包括以下项中的一项或多项:网络服务器、活动记录器、API请求服务器、相关性和排名引擎、内容对象分类器、通知控制器、活动记录、第三方内容对象曝光记录、推理模块、授权/隐私服务器、搜索模块、广告定位模块、用户界面模块、用户配置文件存储部、连接存储部、第三方内容存储部或位置存储部。社交网络系统1360还可以包括合适的部件,例如网络界面、安全机构、负载平衡器、故障转移服务器、管理和网络操作控制台、其他合适的部件、或它们的任何合适的组合。在特定实施例中,社交网络系统1360可以包括用于存储用户配置文件的一个或多个用户配置文件存储部。用户配置文件可以包括例如传记信息、人口统计信息、行为信息、社交信息或其他类型的描述性信息(例如工作经验、学历、爱好或偏好、兴趣、亲和力或位置)。兴趣信息可以包括与一个或多个类别相关联的兴趣。类别可以是一般的或特定的。作为示例而非通过限制的方式,如果用户“喜欢”关于某个品牌的鞋的商品,则类别可以是该品牌或者“鞋子”或“衣服”的一般类别。连接存储部可以用于存储关于用户的连接信息。连接信息可以指示具有相似或共同工作经历、组成员资格、爱好、学历、或者以任何方式与共同属性相关或共享共同属性的用户。连接信息还可以包括在不同用户与内容(内部和外部两者)之间的用户定义的连接。网络服务器可以用于经由网络1310链接社交网络系统1360和一个或多个客户端系统1330或者一个或多个第三方系统1370。网络服务器可以包括邮件服务器或其他消息收发功能,以用于在社交网络系统1360与一个或多个客户端系统1330之间接收和路由消息。API请求服务器可以允许第三方系统1370通过调用一个或多个API来访问来自社交网络系统1360的信息。活动记录器可以被用于从网络服务器中接收关于用户在社交网络系统1360上或者远离社交网络系统1360的活动的通信(communication)。与活动记录相结合,第三方内容对象记录可以保持用户到第三方内容对象中的曝光。通知控制器可以向客户端系统1330提供关于内容对象的信息。可以将信息作为通知推送给客户端系统1330,或者可以响应于从客户端系统1330接收到的请求而从客户端系统1330中拉取信息。授权服务器可以被用于强制实施社交网络系统1360的用户的一个或多个隐私设置。用户的隐私设置确定可以如何共享与用户相关联的特定信息。授权服务器可以诸如,例如通过设置合适的隐私设置,来允许用户选择加入或选择退出使社交网络系统1360记录他们的活动或者与其他系统(例如,第三方系统1370)共享他们的活动。第三方内容对象存储部可以被用于存储从第三方(例如,第三方系统1370)接收到的内容对象。位置存储部可以被用于存储从与用户相关联的客户端系统1330接收到的位置信息。广告定价模块可以组合社交信息、当前时间、位置信息或其他合适的信息,以通过通知的形式向用户提供相关广告。
图14示出了示例计算机系统1400。在特定实施例中,一个或多个计算机系统1400执行在本文中描述或示出的一个或多个方法的一个或多个步骤。在特定实施例中,一个或多个计算机系统1400提供在本文中描述或示出的功能。在特定实施例中,在一个或多个计算机系统1400上运行的软件执行在本文中描述或示出的一个或多个方法的一个或多个步骤,或者提供在本文中描述或示出的功能。特定实施例包括一个或多个计算机系统1400的一个或多个部分。在本文中,在适当的情况下,对计算机系统的引述可以包括计算设备,反之亦然。而且,在适当的情况下,对计算机系统的引述可以包括一个或多个计算机系统。
本公开设想了任何合适数量的计算机系统1400。本公开设想了采用任何合适的物理形式的计算机系统1400。作为示例而非通过限制的方式,计算机系统1400可以为嵌入式计算机系统、片上系统(system-on-chip,SOC)、单板计算机系统(single-board computersystem,SBC)(诸如,例如计算机模块(computer-on-module,COM)或系统模块(system-on-module,SOM))、台式计算机系统、膝上型或笔记本式计算机系统、交互式自助服务机、主机、计算机系统的网格、移动电话、个人数字助理(personal digital assistant,PDA)、服务器、平板计算机系统、或这些系统中的两者或多者的组合。在适当的情况下,计算机系统1400可以包括一个或多个计算机系统1400;可以为单一式或分布式;跨越多个位置;跨越多台机器;跨越多个数据中心;或者驻留在云中,所述云在一个或多个网络中可以包括一个或多个云部件。在适当的情况下,一个或多个计算机系统1400可以在没有大量空间或时间限制的情况下执行在本文中描述或示出的一个或多个方法的一个或多个步骤。作为示例而非通过限制的方式,一个或多个计算机系统1400可以实时或以成批的方式执行在本文中描述或示出的一个或多个方法的一个或多个步骤。在适当的情况下,一个或多个计算机系统1400可以在不同的时间或者在不同的位置执行在本文中描述或示出的一个或多个方法的一个或多个步骤。
在特定实施例中,计算机系统1400包括处理器1402、存储器(memory)1404、存储装置(storage)1406、输入/输出(input/output,I/O)界面1408、通信界面1410和总线1412。虽然本公开描述和示出了具有特定布置结构下的特定数量的特定部件的特定计算机系统,但是本公开设想了在任何合适的设置中具有任何合适的数量的任何合适的部件的任何合适的计算机系统。
在特定实施例中,处理器1402包括用于执行指令的硬件,例如构成计算机程序的那些指令。作为示例而非通过限制的方式,为了执行指令,处理器1402可以从内部寄存器、内部高速缓冲存储器、存储器1404或存储装置1406中检索(或提取)指令;将这些指令解码并且执行这些指令;并且然后将一个或多个结果写入内部寄存器、内部高速缓冲存储器、存储器1404或存储装置1406中。在特定实施例中,处理器1402可以包括用于数据、指令或地址的一个或多个内部高速缓冲存储器。本公开设想了处理器1402在适当的情况下包括任何合适数量的任何合适的内部高速缓冲存储器。作为示例而非通过限制的方式,处理器1402可以包括一个或多个指令高速缓冲存储器、一个或多个数据高速缓冲存储器、和一个或多个转译后备缓冲器(translation lookaside buffer,TLB)。在指令高速缓冲存储器内的指令可以是在存储器1404或存储装置1406内的指令的副本,并且指令高速缓冲存储器可以加速处理器1402对那些指令的检索。在数据高速缓冲存储器内的数据可以是在存储器1404或存储装置1406内的数据的副本,以在处理器1402处执行指令进行操作;在处理器1402上执行的先前指令的结果由在处理器1402上执行的后续指令访问或者写入存储器1404或存储装置1406内;或者其他合适的数据。数据高速缓冲存储器可以加速处理器1402的读取或写入操作。TLB可以加速处理器1402的虚拟地址转译。在特定实施例中,处理器1402可以包括用于数据、指令或地址的一个或多个内部寄存器。在适当的情况下,本公开设想了处理器1402包括任何合适数量的任何合适的内部寄存器。在适当的情况下,处理器1402可以包括一个或多个算术逻辑单元(arithmetic logic unit,ALU);为多核处理器;或者包括一个或多个处理器1402。虽然本公开描述和示出了特定的处理器,但是本公开设想了任何合适的处理器。
在特定实施例中,存储器1404包括主存储器,以用于存储处理器1402要执行的指令或者在处理器1402上要运行的数据。作为示例而非通过限制的方式,计算机系统1400可以将指令从存储装置1406或另一源(诸如,例如,另一计算机系统1400)中装载到存储器1404中。然后,处理器1402可以将指令从存储器1404中装载到内部寄存器或内部高速缓冲存储器中。为了执行这些指令,处理器1402可以从内部寄存器或内部高速缓冲存储器中检索指令,并且将这些指令解码。在执行指令期间或之后,处理器1402可以将一个或多个结果(这些结果可为中间结果或最终结果)写入内部寄存器或内部高速缓冲存储器中。然后,处理器1402可以将这些结果中的一个或多个结果写入存储器1404中。在特定实施例中,处理器1402仅执行在一个或多个内部寄存器或内部高速缓冲存储器中或者在存储器1404中(与储存部1406相反或者在别处)的指令,并且仅操作在一个或多个内部寄存器或内部高速缓冲存储器中或者在存储器1404中(与储存部1406相反或者在别处)的数据。一个或多个存储器总线(这些总线可以各自包括地址总线和数据总线)可以将处理器1402联接到存储器1404。如下所述,总线1412可以包括一个或多个存储器总线。在特定实施例中,一个或多个存储器管理单元(memory management unit,MMU)驻留在处理器1402与存储器1404之间,并且有助于访问由处理器1402请求的存储器1404。在特定实施例中,存储器1404包括随机存取存储器(random access memory,RAM)。在适当的情况下,该RAM可以为易失性存储器。在适当的情况下,该RAM可以为动态RAM(dynamic RAM,DRAM)或静态RAM(static RAM,SRAM)。而且,在适当的情况下,该RAM可以为单端口或多端口RAM。本公开设想了任何合适的RAM。在适当的情况下,存储器1404可以包括一个或多个存储器1404。虽然本公开描述和示出了特定的存储器,但是本公开设想了任何合适的存储器。
在特定实施例中,存储装置1406包括用于数据或指令的大容量存储器。作为示例而非通过限制的方式,存储装置1406可以包括硬盘驱动器(hard disk drive,HDD)、软盘驱动器、闪速存储器、光盘、磁光盘、磁带或通用串行总线(Universal Serial Bus,USB)驱动器、或这些存储装置中的两者或多者的组合。在适当的情况下,存储装置1406可以包括可移动或非移动的(或固定的)介质。在适当的情况下,存储装置1406可以位于计算机系统1400的内部或外部。在特定实施例中,存储装置1406是非易失性固态存储器。在特定实施例中,存储装置1406包括只读存储器(read-only memory,ROM)。在适当的情况下,该ROM可以为掩膜编程ROM、可编程ROM(programmable ROM,PROM)、可擦除PROM(erasable PROM,EPROM)、电可擦除PROM(electrically EEPROM)、电可改写ROM(electrically alterable ROM,EAROM)、或闪速存储器、或这些ROM中的两者或多者的组合。本公开设想了采用任何合适的物理形式的大容量存储装置1406。在适当的情况下,存储装置1406可以包括促进在处理器1402与存储装置1406之间通信的一个或多个存储控制单元。在适当的情况下,存储装置1406可以包括一个或多个存储装置1406。虽然本公开描述和示出了特定的存储器,但是本公开设想了任何合适的存储器。
在特定实施例中,I/O接口1408包括硬件、软件、或硬件和软件两者,其提供用于在计算机系统1400与一个或多个I/O设备之间进行通信的一个或多个接口。在适当的情况下,计算机系统1400可以包括这些I/O设备中的一者或多者。这些I/O设备中的一者或多者能够实现个人与计算机系统1400之间的通信。作为示例而非通过限制的方式,I/O设备可以包括键盘、按键、麦克风、显示器、鼠标、打印机、扫描仪、扬声器、静物摄像头、唱针、平板计算机、触控式屏幕、轨迹球、视频摄像头、另一合适的I/O设备、或这些I/O设备中的两者或多者的组合。I/O设备可以包括一个或多个传感器。本公开设想了任何合适的I/O设备和用于这些I/O设备的任何合适的I/O接口1408。在适当的情况下,I/O接口1408可以包括一个或多个设备或软件驱动器,其能够使得处理器1402驱动这些I/O设备中的一者或多者。在适当的情况下,I/O接口1408可以包括一个或多个I/O接口1408。虽然本公开描述和示出了特定的I/O接口,但是本公开设想了任何合适的I/O接口。
在特定实施例中,通信接口1410包括硬件、软件、或硬件和软件两者,其提供用于在计算机系统1400与一个或多个其他计算机系统1400或一个或多个网络之间进行通信(诸如,例如基于分组的通信)的一个或多个接口。作为示例而非通过限制的方式,通信接口1410可以包括用于与以太网或其他有线网络进行通信的网络接口控制器(networkinterface controller,NIC)或网络适配器,或用于与无线网络(例如WI-FI网络)进行通信的无线NIC(wireless NIC,WNIC)或无线适配器。本公开设想了任何合适的网络和用于该网络的任何合适的通信接口1410。作为示例而非通过限制的方式,计算机系统1400可以与自组织网络、个人局域网(personal area network,PAN)、局域网(LAN)、广域网(WAN)、城域网(MAN)、或互联网的一个或多个部分、或这些网络中的两者或多者的组合进行通信。这些网络中的一者或多者的一个或多个部分可以是有线的或无线的。作为示例,计算机系统1400可以与无线PAN(wireless PAN,WPAN)(诸如,例如蓝牙WPAN)、WI-FI网络、WI-MAX网络、蜂窝电话网络(诸如,例如全球移动通信系统(Global System for Mobile,GSM)网络)、或其他合适的无线网络、或这些网络中的两者或多者的组合进行通信。在适当的情况下,计算机系统1400可以包括用于这些网络中的任意网络的任何合适的通信接口1410。在适当的情况下,通信接口1410可以包括一个或多个通信接口1410。虽然本公开描述和示出了特定的通信接口,但是本公开设想了任何合适的通信接口。
在特定实施例中,总线1412包括硬件、软件、或硬件和软件两者,其使计算机系统1400的部件彼此联接。作为示例而非通过限制的方式,总线1412可以包括加速图形端口(Accelerated Graphics Port,AGP)或其他图形总线、增强型工业标准架构(EnhancedIndustry Standard Architecture,EISA)总线、前端总线(front-side bus,FSB)、超传输(HYPERTRANSPORT,HT)互连、工业标准结构(Industry Standard Architecture,ISA)总线、无限带宽互连、低脚位(low-pin-count,LPC)总线、存储器总线、微通道架构(MicroChannel Architecture,MCA)总线、外围部件互连(Peripheral Component Interconnect,PCI)总线、PCI高速(PCI-Express,PCIe)总线、串行高级技术附接(serial advancedtechnology attachment,SATA)总线、视频电子标准协会本地(Video ElectronicsStandards Association local,VLB)总线、或另一合适的总线、或这些总线中的两者或多者的组合。在适当的情况下,总线1412可以包括一个或多个总线1412。虽然本公开描述和示出了特定的总线,但是本公开考虑任何合适的总线或互连。
在本文中,在适当的情况下,计算机可读非暂态存储介质或媒介可以包括一个或多个基于半导体的电路或者其他集成电路(integrated circuit,IC)(诸如,例如现场可编程门阵列(field-programmable gate arrays,FPGA)或专用IC(application-specificIC,ASIC))、硬盘驱动器(HDD)、混合硬盘驱动器(hybrid hard drives,HHD)、光盘、光盘驱动器(optical disc drive,ODD)、磁光盘、磁光驱动器、软盘、软盘驱动器(floppy diskdrives,FDD)、磁带、固态驱动器(solid-state drives,SSD)、RAM驱动器、安全数字卡或驱动器、另一合适的计算机可读非暂态存储介质、或者这些介质或媒介的两者或多者的任何合适的组合。在适当的情况下,计算机可读非暂态存储介质可以为易失性、非易失性、或者易失性和非易失性的组合。
在本文中,除非另有明确规定或者在上下文中另有规定,否则“或”是包容性的而不是排他性的。因此,在本文中,除非另有明确规定或者在上下文中另有规定,否则“A或B”意指“A、B、或A和B两者”。而且,除非另有明确规定或者在上下文中另有规定,否则“和”是连带的(joint and several)。因此,在本文中,除非另有明确规定或者在上下文中另有规定,否则“A和B”意指“连带的A和B”。
本公开的范围包括本领域的技术人员会理解的、在本文中描述或示出的示例实施例的所有变化、替换、改变、更改和修改。本公开的范围不限于在本文中描述或示出的示例实施例。而且,虽然本公开描述和示出了在本文中相应的实施例包括特定的部件、元件、特征、功能、操作或步骤,但是这些实施例中的任一者可以包括本领域的技术人员会理解的、在本文中的任意处描述或示出的任何部件、元件、特征、功能、操作或步骤的任何组合或排列。此外,所附权利要求中引用的适配于、布置为、能够、配置为、使得能够、能够操作或操作地执行特定功能的装置或系统或者装置或系统的部件包括如下装置、系统、部件:不管它或者特定功能是否被激活、接通或解锁,只要该装置、系统或部件是如此地适配、布置、能够、配置、使得能够、能够操作或操作地即可。此外,尽管本公开描述或示出了提供特定优势的特定实施方式,但是特定实施方式可以不提供、提供一些或提供所有这些优势。
Claims (20)
1.一种方法,所述方法包括:由计算系统:
访问包括第一帧和第二帧的视频;
确定所述第一帧的第一采样位置;
通过根据所述第一帧与所述第二帧之间的光流将所述第一采样位置转换到所述第二帧,来确定所述第二帧的第二采样位置;
基于所述第一帧中的与所述第一采样位置相对应的像素与所述第二帧中的与所述第二采样位置相对应的像素之间的比较,来选择第二采样位置的子集;
基于所述第二采样位置的子集,在所述第二帧中限定一个或多个拒绝区域;
在所述一个或多个拒绝区域之外的区域中确定所述第二帧的第三采样位置;以及
基于所述第一帧中的与所述第一采样位置相对应的所述像素与所述第二帧中的与所述第三采样位置相对应的像素,来生成所述视频的样本。
2.根据权利要求1所述的方法,其中,确定所述第一帧的所述第一采样位置包括:使用包括蓝噪声性质的二维掩模来生成所述第一帧的样本,
其中,可选地,使用所述二维掩模来生成所述第一帧的所述样本包括:使用所述二维掩模的采样点的阈值百分数。
3.根据权利要求1所述的方法,其中,通过将所述第一采样位置转换到所述第二帧来确定所述第二帧的所述第二采样位置还包括:使用所述第一帧与所述第二帧之间的颜色时间梯度。
4.根据权利要求1所述的方法,其中,选择所述第二采样位置的子集包括:
基于确定所述第一帧中的与所述第一采样位置相对应的像素与所述第二帧中的与所述第二采样位置相对应的像素不匹配,来检测一个或多个无效的第二采样位置;以及
拒绝所述一个或多个无效的第二采样位置。
5.根据权利要求1所述的方法,其中,所述第二帧中的所述一个或多个拒绝区域为从所述子集的第二采样位置延伸的固定半径的区域。
6.根据权利要求1所述的方法,其中,确定所述第二帧的所述第三采样位置包括:使用包括蓝噪声性质的二维掩模,来在所述一个或多个拒绝区域之外的区域中生成所述第二帧的样本。
7.一个或多个计算机可读非暂态存储介质,所述一个或多个计算机可读非暂态存储介质包含软件,所述软件在被执行时能够操作以:
访问包括第一帧和第二帧的视频;
确定所述第一帧的第一采样位置;
通过根据所述第一帧与所述第二帧之间的光流将所述第一采样位置转换到所述第二帧,来确定所述第二帧的第二采样位置;
基于所述第一帧中的与所述第一采样位置相对应的像素与所述第二帧中的与所述第二采样位置相对应的像素之间的比较,来选择第二采样位置的子集;
基于所述第二采样位置的子集来在所述第二帧中限定一个或多个拒绝区域;
在所述一个或多个拒绝区域之外的区域中确定所述第二帧的第三采样位置;并且
基于所述第一帧中的与所述第一采样位置相对应的所述像素与所述第二帧中的与所述第三采样位置相对应的像素,来生成所述视频的样本。
8.根据权利要求7所述的介质,其中,确定所述第一帧的所述第一采样位置包括:使用包括蓝噪声性质的二维掩模来生成所述第一帧的样本。
9.根据权利要求8所述的介质,其中,使用所述二维掩模来生成所述第一帧的所述样本包括:使用所述二维掩模的采样点的阈值百分数。
10.根据权利要求7所述的介质,其中,通过将所述第一采样位置转换到所述第二帧来确定所述第二帧的所述第二采样位置还包括:使用所述第一帧与所述第二帧之间的颜色时间梯度。
11.根据权利要求7所述的介质,其中,选择所述第二采样位置的子集包括:
基于确定所述第一帧中的与所述第一采样位置相对应的像素与所述第二帧中的与所述第二采样位置相对应的像素不匹配,来检测一个或多个无效的第二采样位置;以及
拒绝所述一个或多个无效的第二采样位置。
12.根据权利要求7所述的介质,其中,所述第二帧中的所述一个或多个拒绝区域为从所述子集的第二采样位置延伸的固定半径的区域。
13.根据权利要求7所述的介质,其中,确定所述第二帧的所述第三采样位置包括:使用包括蓝噪声性质的二维掩模,来在所述一个或多个拒绝区域之外的区域中生成所述第二帧的样本。
14.一种系统,所述系统包括:
一个或多个处理器;以及
一个或多个计算机可读非暂态存储介质,所述一个或多个计算机可读非暂态存储介质耦接到所述一个或多个处理器中的一个或多个并且包括指令,所述指令在由所述一个或多个处理器中的一个或多个执行时能够操作以使所述系统:
访问包括第一帧和第二帧的视频;
确定所述第一帧的第一采样位置;
通过根据所述第一帧与所述第二帧之间的光流将所述第一采样位置转换到所述第二帧,来确定所述第二帧的第二采样位置;
基于所述第一帧中的与所述第一采样位置相对应的像素与所述第二帧中的与所述第二采样位置相对应的像素之间的比较,来选择第二采样位置的子集;
基于所述第二采样位置的子集,来在所述第二帧中限定一个或多个拒绝区域;
在所述一个或多个拒绝区域之外的区域中确定所述第二帧的第三采样位置;并且
基于所述第一帧中的与所述第一采样位置相对应的所述像素与所述第二帧中的与所述第三采样位置相对应的像素,来生成所述视频的样本。
15.根据权利要求14所述的系统,其中,确定所述第一帧的所述第一采样位置包括:使用包括蓝噪声性质的二维掩模来生成所述第一帧的样本。
16.根据权利要求15所述的系统,其中,使用所述二维掩模来生成所述第一帧的所述样本包括:使用所述二维掩模的采样点的阈值百分数。
17.根据权利要求14所述的系统,其中,通过将所述第一采样位置转换到所述第二帧来确定所述第二帧的所述第二采样位置还包括:使用所述第一帧与所述第二帧之间的颜色时间梯度。
18.根据权利要求14所述的系统,其中,选择所述第二采样位置的子集包括:
基于确定所述第一帧中的与所述第一采样位置相对应的像素与所述第二帧中的与所述第二采样位置相对应的像素不匹配,来检测一个或多个无效的第二采样位置;以及
拒绝所述一个或多个无效的第二采样位置。
19.根据权利要求14所述的系统,其中,所述第二帧中的所述一个或多个拒绝区域为从所述子集的第二采样位置延伸的固定半径的区域。
20.一种计算机软件产品,所述计算机软件产品包括指令,所述指令在由计算机系统的一个或多个处理器执行时能够操作,以使所述计算机系统执行根据权利要求1至6中任一项所述的方法。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US17/028,870 US11430085B2 (en) | 2020-09-22 | 2020-09-22 | Efficient motion-compensated spatiotemporal sampling |
US17/028,870 | 2020-09-22 | ||
PCT/US2021/050507 WO2022066487A1 (en) | 2020-09-22 | 2021-09-15 | Efficient motion-compensated spatiotemporal sampling |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116210220A true CN116210220A (zh) | 2023-06-02 |
Family
ID=78080586
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202180064669.5A Pending CN116210220A (zh) | 2020-09-22 | 2021-09-15 | 经有效运动补偿的时空采样 |
Country Status (4)
Country | Link |
---|---|
US (2) | US11430085B2 (zh) |
EP (1) | EP4218243A1 (zh) |
CN (1) | CN116210220A (zh) |
WO (1) | WO2022066487A1 (zh) |
Family Cites Families (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6774916B2 (en) | 2000-02-24 | 2004-08-10 | Texas Instruments Incorporated | Contour mitigation using parallel blue noise dithering system |
US7420570B2 (en) | 2005-04-14 | 2008-09-02 | Samsung Electronics Co., Ltd. | Methods and systems for video processing using super dithering |
US8379152B2 (en) * | 2008-03-31 | 2013-02-19 | Sharp Laboratories Of America, Inc. | Systems and methods for increasing the temporal resolution of video data |
US20170132833A1 (en) | 2015-11-10 | 2017-05-11 | Intel Corporation | Programmable per pixel sample placement using conservative rasterization |
US10430685B2 (en) | 2016-11-16 | 2019-10-01 | Facebook, Inc. | Deep multi-scale video prediction |
FR3062011B1 (fr) | 2017-01-17 | 2020-01-10 | Stmicroelectronics (Grenoble 2) Sas | Procede et dispositif d'encodage dynamique controle d'un signal numerique multidimensionnel, en particulier un signal d'image et procede et dispositif correspondant de decodage |
CN106844736B (zh) | 2017-02-13 | 2021-07-16 | 北方工业大学 | 基于时空网络的时空同现模式挖掘方法 |
US10504211B2 (en) * | 2017-03-10 | 2019-12-10 | Disney Enterprises, Inc. | Sample-based video denoising |
US11475542B2 (en) * | 2017-07-27 | 2022-10-18 | Nvidia Corporation | Neural network system with temporal feedback for adaptive sampling and denoising of rendered sequences |
US10748248B2 (en) | 2018-05-15 | 2020-08-18 | Adobe Inc. | Image down-scaling with pixel sets selected via blue noise sampling |
CN109492608B (zh) * | 2018-11-27 | 2019-11-05 | 腾讯科技(深圳)有限公司 | 图像分割方法、装置、计算机设备及存储介质 |
US11430172B2 (en) | 2018-12-14 | 2022-08-30 | Nvidia Corporation | Generation of sample points in rendering applications using elementary interval stratification |
CN111047529B (zh) | 2019-11-28 | 2023-05-23 | 杭州当虹科技股份有限公司 | 一种基于机器学习的视频处理方法 |
-
2020
- 2020-09-22 US US17/028,870 patent/US11430085B2/en active Active
-
2021
- 2021-09-15 CN CN202180064669.5A patent/CN116210220A/zh active Pending
- 2021-09-15 EP EP21787255.5A patent/EP4218243A1/en not_active Withdrawn
- 2021-09-15 WO PCT/US2021/050507 patent/WO2022066487A1/en unknown
-
2022
- 2022-08-29 US US17/898,349 patent/US20230077164A1/en not_active Abandoned
Also Published As
Publication number | Publication date |
---|---|
EP4218243A1 (en) | 2023-08-02 |
US20220092730A1 (en) | 2022-03-24 |
US11430085B2 (en) | 2022-08-30 |
US20230077164A1 (en) | 2023-03-09 |
WO2022066487A1 (en) | 2022-03-31 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10846888B2 (en) | Systems and methods for generating and transmitting image sequences based on sampled color information | |
US10375354B2 (en) | Video communication using subtractive filtering | |
US20190188863A1 (en) | Unsupervised Video Segmentation | |
US20190228580A1 (en) | Dynamic Creation of Augmented Reality Effects | |
CN112041887A (zh) | 高效的并行光流算法和gpu实现 | |
CN116710968A (zh) | 物理键盘跟踪 | |
US10789723B1 (en) | Image object extraction and in-painting hidden surfaces for modified viewpoint rendering | |
US11562535B2 (en) | Camera reprojection for faces | |
US11451758B1 (en) | Systems, methods, and media for colorizing grayscale images | |
CN117425870A (zh) | 虚拟现实中的动态混合现实内容 | |
CN116917842A (zh) | 用于在人工现实中生成真实环境的稳定图像的系统和方法 | |
US11645761B2 (en) | Adaptive sampling of images | |
US11386532B2 (en) | Blue noise mask for video sampling | |
US11430085B2 (en) | Efficient motion-compensated spatiotemporal sampling | |
US11315301B1 (en) | Rendering post-capture artificial-reality effects based on artificial-reality state information | |
US11818474B1 (en) | Sparse RGB cameras for image capture | |
US11644685B2 (en) | Processing stereo images with a machine-learning model | |
US11481877B2 (en) | Enhancing the resolution of a video stream | |
US20240062425A1 (en) | Automatic Colorization of Grayscale Stereo Images | |
US20230196627A1 (en) | Anti-aliasing by encoding primitive edge representations | |
US20240119672A1 (en) | Systems, methods, and media for generating visualization of physical environment in artificial reality | |
US20230343050A1 (en) | Systems and Methods for Providing User Experiences on AR/VR Systems | |
US20240078745A1 (en) | Generation of a virtual viewpoint image of a person from a single captured image | |
US20240062508A1 (en) | Monochrome and Color Images Fusion for Artificial Reality Systems | |
WO2024081260A1 (en) | Systems, methods, and media for generating visualization of physical environment in artificial reality |
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 |