CN111095922B - 电子设备及其操作方法 - Google Patents
电子设备及其操作方法 Download PDFInfo
- Publication number
- CN111095922B CN111095922B CN201880059836.5A CN201880059836A CN111095922B CN 111095922 B CN111095922 B CN 111095922B CN 201880059836 A CN201880059836 A CN 201880059836A CN 111095922 B CN111095922 B CN 111095922B
- Authority
- CN
- China
- Prior art keywords
- degree video
- pixel
- electronic device
- video
- pixels
- 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.)
- Active
Links
- 238000000034 method Methods 0.000 title claims description 45
- 230000000087 stabilizing effect Effects 0.000 claims abstract description 20
- 230000015654 memory Effects 0.000 claims abstract description 18
- 238000010801 machine learning Methods 0.000 claims description 20
- 238000009877 rendering Methods 0.000 claims description 8
- 230000000007 visual effect Effects 0.000 claims description 5
- 238000010586 diagram Methods 0.000 description 23
- 230000006641 stabilisation Effects 0.000 description 10
- 238000011105 stabilization Methods 0.000 description 10
- 230000006870 function Effects 0.000 description 9
- 238000012545 processing Methods 0.000 description 5
- 238000004458 analytical method Methods 0.000 description 4
- 201000003152 motion sickness Diseases 0.000 description 4
- 238000013519 translation Methods 0.000 description 4
- 238000001514 detection method Methods 0.000 description 3
- 206010025482 malaise Diseases 0.000 description 3
- 238000011017 operating method Methods 0.000 description 3
- 230000008569 process Effects 0.000 description 3
- 230000008859 change Effects 0.000 description 2
- 230000002123 temporal effect Effects 0.000 description 2
- 206010044565 Tremor Diseases 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 230000006399 behavior Effects 0.000 description 1
- 238000004590 computer program Methods 0.000 description 1
- 230000008094 contradictory effect Effects 0.000 description 1
- 201000010099 disease Diseases 0.000 description 1
- 208000037265 diseases, disorders, signs and symptoms Diseases 0.000 description 1
- 208000002173 dizziness Diseases 0.000 description 1
- 230000009977 dual effect Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000004424 eye movement Effects 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000012805 post-processing Methods 0.000 description 1
- 238000003672 processing method Methods 0.000 description 1
- 230000001953 sensory effect Effects 0.000 description 1
- 208000024891 symptom Diseases 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N13/00—Stereoscopic video systems; Multi-view video systems; Details thereof
- H04N13/10—Processing, recording or transmission of stereoscopic or multi-view image signals
- H04N13/106—Processing image signals
- H04N13/122—Improving the 3D impression of stereoscopic images by modifying image signal contents, e.g. by filtering or adding monoscopic depth cues
-
- G—PHYSICS
- G02—OPTICS
- G02B—OPTICAL ELEMENTS, SYSTEMS OR APPARATUS
- G02B27/00—Optical systems or apparatus not provided for by any of the groups G02B1/00 - G02B26/00, G02B30/00
- G02B27/64—Imaging systems using optical elements for stabilisation of the lateral and angular position of the image
- G02B27/646—Imaging systems using optical elements for stabilisation of the lateral and angular position of the image compensating for small deviations, e.g. due to vibration or shake
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N23/00—Cameras or camera modules comprising electronic image sensors; Control thereof
- H04N23/60—Control of cameras or camera modules
- H04N23/68—Control of cameras or camera modules for stable pick-up of the scene, e.g. compensating for camera body vibrations
- H04N23/681—Motion detection
- H04N23/6811—Motion detection based on the image signal
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/048—Interaction techniques based on graphical user interfaces [GUI]
- G06F3/0481—Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
- G06F3/04815—Interaction with a metaphor-based environment or interaction object displayed as three-dimensional, e.g. changing the user viewpoint with respect to the environment or object
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N20/00—Machine learning
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N99/00—Subject matter not provided for in other groups of this subclass
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T15/00—3D [Three Dimensional] image rendering
- G06T15/10—Geometric effects
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T15/00—3D [Three Dimensional] image rendering
- G06T15/10—Geometric effects
- G06T15/20—Perspective computation
- G06T15/205—Image-based rendering
-
- 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/003—Navigation within 3D models or images
-
- 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
- G06T19/00—Manipulating 3D models or images for computer graphics
- G06T19/20—Editing of 3D images, e.g. changing shapes or colours, aligning objects or positioning parts
-
- 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/06—Topological mapping of higher dimensional structures onto lower dimensional surfaces
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/30—Determination of transform parameters for the alignment of images, i.e. image registration
- G06T7/33—Determination of transform parameters for the alignment of images, i.e. image registration using feature-based methods
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N13/00—Stereoscopic video systems; Multi-view video systems; Details thereof
- H04N13/10—Processing, recording or transmission of stereoscopic or multi-view image signals
- H04N13/106—Processing image signals
- H04N13/111—Transformation of image signals corresponding to virtual viewpoints, e.g. spatial image interpolation
- H04N13/117—Transformation of image signals corresponding to virtual viewpoints, e.g. spatial image interpolation the virtual viewpoint locations being selected by the viewers or determined by viewer tracking
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N13/00—Stereoscopic video systems; Multi-view video systems; Details thereof
- H04N13/30—Image reproducers
- H04N13/366—Image reproducers using viewer tracking
- H04N13/383—Image reproducers using viewer tracking for tracking with gaze detection, i.e. detecting the lines of sight of the viewer's eyes
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/80—Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
- H04N21/81—Monomedia components thereof
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/80—Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
- H04N21/81—Monomedia components thereof
- H04N21/816—Monomedia components thereof involving special video data, e.g 3D video
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N23/00—Cameras or camera modules comprising electronic image sensors; Control thereof
- H04N23/60—Control of cameras or camera modules
- H04N23/68—Control of cameras or camera modules for stable pick-up of the scene, e.g. compensating for camera body vibrations
- H04N23/681—Motion detection
- H04N23/6815—Motion detection by distinguishing pan or tilt from motion
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N23/00—Cameras or camera modules comprising electronic image sensors; Control thereof
- H04N23/60—Control of cameras or camera modules
- H04N23/68—Control of cameras or camera modules for stable pick-up of the scene, e.g. compensating for camera body vibrations
- H04N23/682—Vibration or motion blur correction
- H04N23/683—Vibration or motion blur correction performed by a processor, e.g. controlling the readout of an image memory
-
- G—PHYSICS
- G02—OPTICS
- G02B—OPTICAL ELEMENTS, SYSTEMS OR APPARATUS
- G02B27/00—Optical systems or apparatus not provided for by any of the groups G02B1/00 - G02B26/00, G02B30/00
- G02B27/01—Head-up displays
- G02B27/017—Head mounted
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2200/00—Indexing scheme for image data processing or generation, in general
- G06T2200/32—Indexing scheme for image data processing or generation, in general involving image mosaicing
-
- 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/20081—Training; Learning
-
- 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/20084—Artificial neural networks [ANN]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2219/00—Indexing scheme for manipulating 3D models or images for computer graphics
- G06T2219/20—Indexing scheme for editing of 3D models
- G06T2219/2016—Rotation, translation, scaling
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N13/00—Stereoscopic video systems; Multi-view video systems; Details thereof
- H04N2013/0074—Stereoscopic image analysis
- H04N2013/0085—Motion estimation from stereoscopic image signals
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Computer Graphics (AREA)
- Geometry (AREA)
- Computing Systems (AREA)
- Computer Hardware Design (AREA)
- Mathematical Physics (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Artificial Intelligence (AREA)
- Medical Informatics (AREA)
- Evolutionary Computation (AREA)
- Data Mining & Analysis (AREA)
- Human Computer Interaction (AREA)
- Remote Sensing (AREA)
- Radar, Positioning & Navigation (AREA)
- Optics & Photonics (AREA)
- Architecture (AREA)
- Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
- Processing Or Creating Images (AREA)
Abstract
公开了一种用于稳定360度视频的电子设备,所述电子设备包括:存储器,用于存储至少一个指令;以及处理器,用于执行存储在所述存储器中的所述至少一个指令,其中,通过执行所述至少一个指令,当再现360度视频时,所述处理器基于包括在360度视频的帧中的多个像素被分别包括在用户的视场(FOV)中的可能性将概率值分配给所述多个像素中的每个像素,并基于所分配的概率值来针对360度视频确定三维旋转,并且将三维旋转应用于360度视频,从而生成稳定的360度视频。
Description
技术领域
各种实施例涉及一种电子设备及其操作方法,并且更具体地,涉及一种能够稳定360度视频的电子设备及其操作方法。
背景技术
当再现360度视频时,用户可能会遭受所谓的虚拟现实(VR)病。在症状方面,VR病与晕动病有一些相似之处。VR病可以被认为是由于用户在体验VR时接收到矛盾的感觉输入而引起的。可以通过视频稳定来纠正不期望的相机运动(例如,晃动或手抖)以缓解VR病。在便携式相机系统捕获的视频的情况下,相机晃动尤其可能是重要的问题。
视频稳定是后期处理阶段,并且大多数视频稳定技术需要两项单独的任务。首先,根据估计的相机轨迹来检测并抑制不期望的运动。其次,使用稳定的相机轨迹和原始图像序列来创建新的图像序列。然而,当场景的不同部分以不同的速度或沿不同的方向移动时,可能无法使视频相对于场景的所有部分稳定。因此,即使在已应用视频稳定之后,用户仍可能会感到不适。因此,需要一种稳定360度视频的改进方法。
发明内容
技术问题
各种实施例提供了一种电子设备及其操作方法,所述电子设备能够基于分配给包括在360度视频的一个或多个帧中的每个像素的概率值来稳定360度视频。
问题的解决方案
根据一个方面,一种用于稳定360度视频的电子设备包括:存储器,存储一个或多个指令;以及处理器,被配置为执行存储在存储器中的一个或多个指令,以:当再现360度视频时,基于包括在360度视频的帧中的多个像素中的每个像素被包括在用户的视场(FoV)中的可能性,将概率值分配给所述多个像素,基于所分配的概率值来针对360度视频确定三维(3D)旋转,并且通过将3D旋转应用于360度视频来生成稳定的360度视频。
本公开的有益效果
根据实施例的电子设备能够稳定360度视频以减轻正在观看360度视频的用户的晕动病或头晕。
附图说明
图1是示出了360度视频的视频数据的格式的示意图。
图2是根据实施例的电子设备的操作方法的流程图。
图3是根据实施例的由电子设备稳定360度视频的方法的流程图。
图4是根据实施例的由电子设备生成稳定的360度视频的方法的流程图。
图5和图6是用于解释根据实施例的由电子设备针对360度视频确定概率值的方法的示意图。
图7是示出了图5的360度视频的帧的像素概率图的示例的示意图。
图8是根据实施例的由电子设备基于各种像素特性来确定概率值的方法的流程图。
图9是由电子设备确定用于稳定多个簇中的每个簇的旋转的方法的流程图,以及图10至图11d是用于解释图9的方法的示意图。
图12是根据实施例的电子设备的操作方法的流程图。
图13是根据实施例的电子设备的框图。
图14是根据另一实施例的电子设备的框图。
最佳实施方式
根据一个方面,一种用于稳定360度视频的电子设备包括:存储器,存储一个或多个指令;以及处理器,被配置为执行存储在存储器中的一个或多个指令,以:当再现360度视频时,基于包括在360度视频的帧中的多个像素中的每个像素被包括在用户的视场(FoV)中的可能性,将概率值分配给所述多个像素,基于所分配的概率值来针对360度视频确定三维(3D)旋转,并且通过将3D旋转应用于360度视频来生成稳定的360度视频。
在一个实施例中,处理器还可以被配置为:执行所述一个或多个指令,以基于包括关于先前用户的FoV的信息在内的第一观看历史数据,在观看360度视频时将概率值分配给所述多个像素。
在一个实施例中,处理器还可以被配置为:执行所述一个或多个指令,以基于所述多个像素中的像素的一个或多个特征来确定要分配给所述像素的概率值,其中所述一个或多个特征可以包括下列项中的至少一项:包括所述像素的对象的类型;与相机和360度视频的所述帧中的包括所述像素的区域之间的距离有关的深度属性;包括所述像素的所述区域相对于360度视频的所述帧中的一个或多个其他区域的视觉重要性;与所述像素相关联的运动矢量;包括所述像素的360度视频的显著性图中的边界;或者与一个或多个声源相对应的像素在360度视频的所述帧内的位置。
在一个实施例中,处理器还可以被配置为:执行所述一个或多个指令,以通过使用输入了所述像素的所述一个或多个特征作为输入的机器学习算法来确定要分配给所述像素的概率值。
在一个实施例中,处理器还可以被配置为:执行所述一个或多个指令,以在观看一个或多个其他360度视频时,通过使用第二观看历史数据来训练所述机器学习算法,所述第二观看历史数据包括关于先前用户的FoV的信息以及包括在所述一个或多个其他360度视频中的像素的已知特征。
在一个实施例中,处理器还被配置为:执行所述一个或多个指令,以通过将所确定的旋转应用于360度视频的数据并渲染应用了所确定的旋转的所述数据来生成稳定的360度视频。
在一个实施例中,处理器还可以被配置为:执行所述一个或多个指令,以根据所确定的旋转来设置360度视频的3D旋转参数。
在一个实施例中,处理器还可以被配置为:执行所述一个或多个指令,以将包括在360度视频中的一个或多个像素分配给至少一个簇,并且基于分配给包括在所述至少一个簇中的像素的概率值来针对所述至少一个簇确定3D旋转。
在一个实施例中,处理器可以通过选择与用户的当前视点相对应的簇并将针对所选择的簇的3D旋转应用于360度视频来生成稳定的360度视频。
在一个实施例中,处理器可以将用户的当前视场的中心确定为用户的当前视点。
在一个实施例中,处理器可以通过眼睛跟踪来确定用户的当前视点。
在一个实施例中,用于稳定360度视频的电子设备还可以包括显示稳定的360度视频的显示器。
根据另一个方面,一种用于稳定360度视频的电子设备的操作方法,包括:当再现360度视频时,基于包括在360度视频的帧中的多个像素中的每个像素被包括在用户的视场中的可能性,将概率值分配给所述多个像素,基于所分配的概率值来针对360度视频确定三维(3D)旋转,并且通过将3D旋转应用于360度视频来生成稳定的360度视频。
具体实施方式
将简要描述本说明书中所使用的术语,然后将详细描述本公开。
在本公开中,在可能的情况下,考虑到本公开的功能来选择当今已广泛使用的通用术语,但是可以根据本领域技术人员的意图、先例或新技术等来选择非通用术语。一些术语可以由本申请人任意选择。在这种情况下,将在本公开的相应部分中详细解释这些术语的含义。因此,本文中所使用的术语不应基于其名称来定义,而应基于其含义和本公开的整个上下文来定义。
将理解的是,当一元件被称为“包括”另一元件时,除非另外提及,否则该元件还可以包括其他元件。本文中所使用的诸如“单元”、“模块”等术语表示用于处理至少一个功能或操作的单元,其可以通过硬件、软件或硬件和软件的组合来实现。
在下文中,将参考附图详细描述本公开的实施例,使得本领域的普通技术人员可以容易地实现本公开的实施例。然而,本公开可以以许多不同的形式具体实现,并且不限于本文中所阐述的实施例。为了清楚起见,在附图中省略了与解释本公开无关的部分,并且在整个说明书中,相似的部件由相似的附图标记表示。
本公开的实施例中所使用的术语“用户”是指控制电子设备的功能或操作的人,并且可以包括管理员或安装者。
图1是示出了360度视频的视频数据的格式的示意图。
在一个实施例中,可以以各种格式来表示360度视频的视频数据。参考图1,可以以单位球体格式、立方体图投影格式或等量矩形投影格式来表示360度视频的帧的视频数据。在单位球体格式中,可以用三维(3D)坐标系中的坐标值来定义每个像素在虚拟球体10的表面上的位置。在立方体图投影20或等量矩形投影30中,可以使用等效的二维(2D)表示。在立方体图投影20中,虚拟立方体的每一侧的图像数据可以以具有90°×90°视场(FoV)的2D图像的形式来存储。在等量矩形投影30中,视频数据可以以具有360°×180°FoV的一个2D图像的形式来存储。在图1中,标签“顶”、“底”、“前”、“后”、“左”和“右”表示与等效投影(例如,单位球体格式、立方体图投影格式和等量矩形投影格式)的视频数据相对应的区域。图1中所示的格式仅是示例,并且在其他实施例中,可以以与图1中所示的格式不同的格式存储360度视频的视频数据。
图2是根据实施例的电子设备的操作方法的流程图。
参考图2,根据实施例的电子设备可以将概率值分配给360度视频的帧的像素(S210)。
例如,当再现360度视频时,电子设备100可以基于每个像素被包括在用户的FoV中的可能性,将概率值分配给360度视频的帧的像素。当观看360度视频时,电子设备100可以基于包括关于先前用户的FoV的信息在内的观看历史数据将概率值分配给像素。下面将参考图3对此进行详细描述。备选地,电子设备100可以基于每个像素的一个或多个特性将概率值分配给像素。电子设备100可以通过使用机器学习算法来确定要分配给像素的概率值,其中每个像素的一个或多个特性被输入到所述机器学习算法作为输入。下面将参考图5至图8对此进行详细描述。
电子设备100可以基于分配的概率值来确定三维(3D)旋转(S220)。例如,电子设备100可以针对具有被包括在FoV中的高可能性的像素来确定用于稳定360度视频的旋转。例如,电子设备100可以确定旋转以减小当前帧的运动矢量。电子设备100可以通过使用像素的概率值对360度视频的当前帧的运动矢量进行加权,并且将加权的平均运动矢量转换为3D旋转。电子设备100可以将与3D旋转具有相同大小且相反方向的旋转确定为稳定旋转。然而,实施例不限于此。
另外,电子设备100可以根据所确定的3D旋转在与360度视频相关联的元数据中设置3D旋转参数。
电子设备100可以通过将3D旋转应用于360度视频的数据来生成稳定的360度视频(S230)。
例如,当用户想要观看360度视频时,电子设备100可以从与360度视频相关联的元数据中读取3D旋转参数。另外,电子设备100可以基于3D旋转参数来确定要应用于当前视频帧的3D旋转。电子设备100可以通过将所确定的3D旋转应用于360度视频的当前帧的视频数据并渲染应用了3D旋转的视频数据来生成稳定的360度视频。然而,实施例不限于此。
图3是根据实施例的由电子设备稳定360度视频的方法的流程图。在一个实施例中,包括在图3的方法中的所有操作可以由同一设备执行,或者一些操作可以由不同设备执行。根据某个实施例,图3中所示的任何操作可以由软件或硬件执行。当由软件执行一个或多个操作时,用于执行所述方法的设备可以包括:处理单元,包括一个或多个处理器;以及计算机可读存储器,存储在由处理单元执行时执行所述方法的操作的计算机程序指令。
参考图3,电子设备100可以获得360度视频的观看历史数据(S310)。观看历史数据包括与观看360度视频时先前用户的FoV有关的信息。例如,在操作S310中,电子设备100可以将当前360度视频文件的标识符发送给外部服务器。外部服务器可以从存储在其中的观看历史数据中检索与所识别的360度视频文件相对应的观看历史数据。外部服务器可以将检索到的观看历史数据发送给电子设备100,并且电子设备100可以从外部服务器接收与360度视频文件相对应的观看历史数据。
备选地,观看历史数据可以存储在本地存储器中。例如,在一些实施例中,观看历史数据可以被包括在360度视频文件中作为360度视频文件的元数据。然而,实施例不限于此。
在再现360度视频时,可以使用各种方法确定先前用户在任何给定时间点处的FoV。例如,用户可以通过经由诸如陀螺仪或加速计的传感器跟踪用户的头部的运动并使用根据用户的头部的运动来旋转视频的FoV的设备来观看360度视频。在这种情况下,在360度视频的再现期间的任何时间点处显示的FoV可以对应于用户在该时间点当前正面对的方向。在这种情况下,可以假定FoV的中心是用户当前正聚焦的点,并且该点可以被认为在再现360度视频时表示用户的FoV。备选地,当用户正通过具有跟踪用户眼睛运动的功能(即,凝视跟踪功能)的眼睛跟踪设备观看360度视频时,眼睛跟踪设备可以通过使用凝视跟踪功能来识别360度视频的用户正在观看的一部分,例如像素坐标。作为另一备选,在一些实施例中,当在诸如计算机监视器的一般显示器上显示360度视频时,可以在再现360度视频时使用诸如鼠标或触摸屏的适当输入设备改变相机的取向。
在一个实施例中,电子设备100可以获得当前正在观看360度视频的同一用户的观看历史数据。在当前用户的观看历史数据可用时,当计算每个像素的概率值时,与其他用户的FoV的统计相比,可以将较高的权重给予当前用户的FoV的统计。在当前用户对除当前360度视频之外的其他360度视频的观看历史数据可用时,可以基于其他360度视频的观看历史数据来预测当前360度视频的像素的概率值。其他360度视频的观看历史数据可以包括与在当前用户观看其他360度视频时当前用户的先前行为有关的信息。
电子设备100可以将概率值分配给360度视频的帧的多个像素(S320)。分配给每个像素的概率值与当再现360度视频时像素将被包括在FoV中的可能性有关。概率值可以以像素概率图的形式共同表示。在一个实施例中,在操作S310中获得的观看历史数据可以用于确定用户对360度视频的帧的哪个区域最感兴趣。电子设备100可以基于所获得的观看历史数据将较大的概率值分配给被更频繁地包括在先前用户的FoV中的像素。例如,可以通过对像素已处于先前用户的FoV的中心或附近的次数进行计数来确定像素的概率值。
在一个实施例中,当观看历史数据对于当前360度视频不可用时,可以使用确定概率值的另一方法。在这样的实施例中,可以省略操作S310。下面将参考图4至图7描述确定概率值的另一方法的示例。
返回参考图3,电子设备100可以基于所分配的概率值来确定用于稳定360度视频的3D旋转(S330)。
因此,所确定的旋转可以被称为稳定旋转。稳定旋转可以是使360度视频相对于可能被包括在FoV中的像素稳定而被选择的旋转。这样,稳定旋转能够应用于360度视频的每一帧的视频数据。结果是,可以相对于用户更可能聚焦于其上的像素来稳定在显示视频时用户看到的图像。这样,可以稳定地维持用户可能观看的图像的一部分,从而有助于减轻通常与360度视频相关联的晕动病。
电子设备100可以通过任何适当的方法来确定稳定旋转。例如,电子设备100可以考虑360度视频的先前帧的运动矢量来确定稳定旋转。可以确定稳定旋转以减小当前帧的运动矢量。例如,电子设备100可以对当前帧的运动矢量进行加权,并且使用像素概率值来针对所有帧计算加权的平均运动矢量。另外,电子设备100可以将加权的平均运动矢量转换为3D旋转,并且将与3D旋转具有相同大小且相反方向的旋转设置为稳定旋转。当以这样的方式确定稳定旋转时,较高的权重被分配给与在360度视频的再现期间用户更可能聚焦于其上的像素相关联的运动矢量,并且因此,视频可相对于用户更可能聚焦的像素显得更加稳定。
在另一实施例中,电子设备100可以通过使用应用于当前帧i的基于视觉的处理方法来确定稳定旋转,以便提取特征。在基于视觉的处理中,特征可以被称为“关键点”或“兴趣点”,并且是可易于从一个帧跟踪到后续帧的元素。电子设备100可以在下一帧(i+1)中容易地跟踪这些特征。电子设备100可以基于当前帧i与下一帧(i+1)之间的特征的运动,通过使用像素概率值来计算用于下一帧(i+1)的稳定旋转,其中所述像素概率值是通过对每个特征相对于估计旋转值的贡献水平进行加权而确定的。
电子设备100可以输出所确定的稳定旋转(S340)。例如,电子设备100可以通过根据所确定的3D旋转在与360度视频相关联的元数据中设置3D旋转参数来输出稳定旋转。例如,可以通过在广播流中传输元数据和视频数据或通过将元数据和视频数据存储在计算机可读存储器中以供以后分发,来一起输出360度视频的元数据和视频数据。
在另一个实施例中,电子设备100可以将稳定旋转直接提供给视频处理器,视频处理器处理360度视频的帧,而不是以360度视频的元数据的形式证明稳定旋转。例如,视频处理器可以将稳定旋转应用于当前帧的视频数据,并且渲染旋转的视频以将稳定旋转应用于360度视频。当电子设备100在用户观看360度视频的同时实时计算稳定旋转时,该方法可用。然而,实施例不限于此。
图4是根据实施例的由电子设备生成稳定的360度视频的方法的流程图。
参考图4,当用户想要观看360度视频时,电子设备100可以从与360度视频相关联的元数据中读取3D旋转参数(S410)。电子设备100可以基于3D旋转参数来确定要应用于当前视频帧的稳定旋转。在一些实施例中,可以针对360度视频的每个单个的帧定义单独的稳定旋转。在另一个实施例中,可以针对360度视频的多个帧(例如,十个帧)定义单个稳定旋转。
电子设备100可以根据稳定旋转来旋转360度视频的当前帧的视频数据(S420),并且通过渲染旋转的视频数据来生成稳定的360度视频(S430)。在一个实施例中,电子设备100可以显示所渲染的视频数据。备选地,电子设备100可以将所渲染的视频数据输出到与电子设备100在物理上分离的外部显示设备。
在一些实施例中,用户可以通过向电子设备100提供相机控制输入来在360度视频的再现期间改变FoV。相机控制输入可以是定义相机旋转或相机平移中的至少一项的输入。例如,当用户通过虚拟现实头戴式耳机观看360度视频时,可以通过使用适当的传感器跟踪用户头部的运动来自动获得相机控制输入。当接收到相机控制输入时(S440),除了稳定旋转之外,电子设备100还可以将相机旋转或相机平移中的至少一项应用于360度视频。因此,图4的操作可应用于在其再现期间用户的FoV可自由改变的360度视频。
在一个实施例中,可以在与用于计算像素概率图和稳定旋转的设备不同或相同的设备上显示稳定的360度视频。因此,图4的操作S410至操作S440可以由与执行图3的操作S310至操作S340的设备在物理上相同或不同的设备执行。然而,实施例不限于此。
图5和图6是用于解释根据实施例的由电子设备针对360度视频确定概率值的方法的示意图。
在一个实施例中,当先前观看历史数据不可用时,电子设备100可以基于每个像素的一个或多个特性来确定每个像素的概率值。
例如,图5示出了等量矩形投影格式的360度视频帧500。在一个实施例中,电子设备100可以通过使用对象检测算法分析360度视频帧500来检测包括在360度视频帧500中的一个或多个对象。对象检测算法可以将包括在360度视频帧中的每个对象自动分配到特定种类或类型的对象。另外,电子设备100可以以与360度视频帧500相关联的元数据标签的形式来存储所确定的对象的种类或类型。备选地,在另一个实施例中,可以手动执行对象检测或对象类型确定中的至少一个。
图6示出了与360度视频帧500内的不同类型的对象相关联的四个不同的元数据标签的示例。例如,元数据标签可以包括“灯”对象610、“门”对象620、“面部”对象630和“人”对象640。可以根据与像素相关联的对象的类型来确定分配给像素的概率值。例如,可以从统计上确定用户通常对特定类型的对象更感兴趣,并且在观看360度视频时更可能查看该类型的对象。因此,电子设备100可以对包括在用户更感兴趣的对象中的像素设置较大的概率值。相反,电子设备100可以对包括在用户不太感兴趣的对象中的像素设置较小的概率值。
图7是示出了图5的360度视频的帧的像素概率图的示例的示意图。
在根据一个实施例的像素概率图700中,每个像素表示其是否被包括在对象中,并且可以与对象类型属性相关联,所述对象类型属性用于在像素被包括在对象中时识别对象的类型。另外,电子设备100可以考虑其他像素特征以及图6中所示的对象类型属性来确定像素概率值。例如,像素的特征可以包括下列各项,但是实施例不限于此:
-包括像素的对象的类型,
-与包括像素的场景的相机和相应部分之间的距离有关的深度属性,
-360度视频的帧的像素所位于的区域相对于360度视频的帧的一个或多个其他区域的视觉重要性,
-与像素相关联的运动矢量,
-包括像素的360度视频的帧的显著性图(saliency map)中的边界,以及
-360度视频内与至少一个声源的位置有关的像素的位置。
在一些实施例中,可以相对于诸如立方体图的特定投影来定义“视觉重要性”属性。例如,电子设备100可以根据立方体图投影的像素所位于的平面将不同的概率值分配给像素。例如,用户不太可能查看360度视频的立方体图投影的上侧或下侧。基于该事实,电子设备100可以将小的概率值分配给立方体图投影的上侧或下侧的像素。相反,电子设备100可以将高概率值分配给立方体图投影的前侧、后侧、左侧或右侧的像素。
在一些实施例中,电子设备100可以考虑用户在观看360度视频时面向声源的高可能性来确定像素概率值。因此,电子设备100可以基于与至少一个声源相对应的像素在360度视频中的位置来确定像素概率值。例如,与音乐会相关联的360度视频中的声源可以包括舞台上的音乐家或布置在音乐厅中的扬声器。因此,电子设备100可以将高概率值分配给声源上或声源附近的像素。
图8是根据实施例的由电子设备基于各种像素特性来确定概率值的方法的流程图。在一个实施例中,电子设备100可以通过使用机器学习算法来确定像素的概率值。机器学习算法可以接收像素的一个或多个特征作为输入。
参考图8,电子设备100可以训练机器学习算法(S810)。可以使用当观看一个或多个360度视频时与先前用户的FoV有关的观看历史数据和360度视频的像素的已知特征来训练机器学习算法。可以基于与先前用户的FoV有关的信息来训练机器学习算法,以识别360度视频的用户通常聚焦的一部分的像素特征的特定组合。
电子设备100可以接收新的360度视频的视频数据(S820)。在这种情况下,术语“新的360度视频”是指与用于训练机器学习算法的至少一个360度视频不同的360度视频。
电子设备100可以获得新的360度视频的像素特征(S830)。例如,电子设备100可以自动分析新的360度视频以获得像素属性。备选地,可以将关于特征(例如,对象类型属性)的信息输入到电子设备100。备选地,电子设备100可以从新的360度视频的元数据中获得像素特征。
电子设备100可以通过将像素特征输入到训练后的机器学习算法来确定新的360度视频的像素的概率值(S840)。例如,当新的360度视频的观看历史数据不可用时,电子设备100可以通过使用机器学习算法来生成新的360度视频的像素概率图。然而,实施例不限于此。
机器学习算法可以由相同的设备或不同的设备训练和实现。例如,处理并显示360度视频的设备可以处理新的360度视频,并且之后,基于通过监视用户的FoV而获得的信息,在新的360度视频的再现期间重新训练(更新)机器学习算法。然而,实施例不限于此。
根据以上参考图8描述的实施例,当再现360度视频时,电子设备100使用机器学习算法将各个像素的各种特征转换为与像素被包括在FoV中的可能性有关的概率值。在另一实施例中,电子设备100可以基于概率值与一个或多个特征之间的特定关系(例如,其中将像素特征用作变量的特定方程式),而不是使用机器学习算法,来确定要分配给多个像素的概率值。然而,实施例不限于此。
图9是由电子设备确定用于稳定多个簇中的每个簇的旋转的方法的流程图,以及图10至图11d是用于解释图9的方法的示意图。
参考图9,电子设备100可以将概率值分配给360度视频的帧的像素(S910)。例如,电子设备100可以通过使用以上参考图2至图8描述的方法中的一种方法将概率值分配给像素。
电子设备100可以基于所分配的概率值对像素进行聚类(S920)。例如,电子设备100可以通过使用聚类算法来分析像素概率图并根据分析结果将像素分配给一个或多个簇。在这种情况下,簇的数量N可以为预定值,或者可以根据当前可用的处理资源来设置。簇的数量N可以是1(即,N=1)。聚类是指通过将相似的对象包括在簇中来将对象进行分组。例如,电子设备100可以通过将相似的像素包括在一个簇中来对像素进行聚类。各种聚类算法在本领域中是已知的,因此本文中将省略对聚类算法的描述。备选地,电子设备100可以将一个像素分配给若干个簇,或者可以将某个像素仅分配给一个簇(排他性聚类)。
图10示出了在船上的人的场景的360度视频帧1000,具有从船的两侧看到的海洋和天空的背景。图11a示出了360度视频帧1000的像素概率图1001。图11b至图11d示出了360度视频帧1000的三个簇的示例,例如第一簇至第三簇1010、1020和1030。
参考图11a的像素概率图1001,表示船的结构的像素被分配低概率值,表示船的外部的像素被分配中概率值,并且表示人脸的像素被分配高概率值。
在一个实施例中,电子设备100可以基于在像素概率图中分配的概率值来对像素进行聚类。例如,参考图11b至图11d,可以将表示船的结构的像素(向其分配了低概率值)分配给第一簇1010,可以将表示船的外部(例如,海洋和天空)的像素(向其分配了中概率值)分配给第二簇1020,并且可以将表示在船内站立的人的像素(向其分配了高概率值)分配给第三簇1030。
返回参考图9,电子设备100可以针对每个簇确定稳定旋转(S930)。例如,电子设备100可以基于分配给包括在每个簇中的像素的概率值,来确定用于稳定360度视频的3D旋转。在这种情况下,电子设备100可以仅考虑在当前正在处理的簇中包括的像素的概率值来确定稳定旋转,而无需考虑在当前正在处理的簇外部的像素的概率值。另外,电子设备100可以通过使用在图2的操作S220和图3的操作S330中描述的方法中的任何一种方法来针对簇确定稳定旋转。然而,实施例不限于此。
另外,在使用单个簇(N=1)的实施例中,电子设备100可以仅基于包括在该单个簇中的像素的概率值来确定一个稳定旋转。
图12是根据实施例的电子设备的操作方法的流程图。
参考图12,电子设备100可以从多个簇中选择与用户的当前视点相对应的簇(S1210)。在这种情况下,电子设备100可以在360度视频的再现期间选择与用户的当前视点相对应的簇。当前视点可以被定义为在360度视频中的特定点并可以用坐标来表示。例如,可以通过使用凝视跟踪功能将用户的当前视点确定为用户的当前FoV的中心或确定为与用户的视线相对应的点。
电子设备100可以以各种方式选择簇。例如,可以计算多个簇中的每个簇中包括的像素位于当前视点的概率,并且可以选择包括具有最高概率的像素的簇。当以这种方式选择簇时,将使360度视频相对于与360度视频的用户当前正在观看的一部分最相似的簇而稳定。
考虑相对于簇的中心的欧几里德距离或在360度视频的多个帧中的时间相干性,可以确定包括在簇中的像素位于当前视点的概率。“时间相干性”意指在确定是否根据相机的移动而改变到另一簇时系统可以考虑关于先前选择的簇的信息。例如,当确定用户的视点已从第一簇移动到与第一簇相邻的第二簇时,系统可以在选择第二簇之前等待特定时间段,并且当用户的视点在该特定时间段过去之前移回到第一簇时,可以继续应用与第一簇相对应的稳定旋转。在这种滞后类型的方法中,当用户的视点聚焦在靠近两个簇之间边界的点上时,系统防止了由于相机位置的轻微移动而在两个相邻簇之间突然的切换,并因此,将有助于避免“突然的”再现体验。
返回参考图12,电子设备100可以将与所选择的簇相对应的稳定旋转应用于360度视频(S1220)。例如,电子设备100可以在显示360度视频之前将稳定旋转应用于360度视频的视频数据。在预记录视频的情况下,可以离线执行对图9的操作S910至操作S930的分析,并且可以由与再现360度视频的设备不同的设备来执行对图9的操作S910至操作S930的分析。备选地,可以由再现360度视频的设备实时地执行对图9的操作S910至操作S930的分析。
通过使用以上参考图9至图12描述的方法,当在观看360度视频期间用户的视点移动到场景的另一部分时,电子设备100可以对与用户的视点相对应的簇自适应地执行视频稳定。因此,由于可以稳定与正在观看360度视频的用户当前正聚焦的对象或区域有关的视频,减轻了用户的晕动病。
图13是根据实施例的电子设备的框图。
可以以各种形式来实现根据实施例的电子设备100。例如,电子设备100可以被实现为各种类型的电子设备,例如,移动电话、智能电话、膝上型计算机、台式计算机、平板PC、电子书终端、数字广播终端、个人数字助理(PDA)、便携式多媒体播放器(PMP)、导航设备、MP3播放器、便携式摄像机、互联网协议电视(IPTV)、数字电视(DTV)和可穿戴设备。然而,实施例不限于此。
参考图13,根据实施例的电子设备100可以包括存储器110、处理器120和显示器130。
在一个实施例中,处理器120可以执行存储在存储器110中的一个或多个程序。处理器120可以包括单核、双核、三核、四核及其倍数。处理器120可以包括多个处理器。例如,处理器120可以被实现为包括主处理器(未示出)和在睡眠模式下操作的副处理器(未示出)。
在一实施例中,存储器110可以存储用于驱动和控制电子设备100的各种数据、程序或应用。
存储在存储器110中的程序可以包括一个或多个指令。可以由处理器120执行存储在存储器110中的程序(一个或多个指令)或应用。
处理器120可以被配置为执行存储在存储器110中的一个或多个指令,以将概率值分配给包括在360度视频帧中的多个像素。例如,处理器120可以获得先前用户的FoV的观看历史数据,并且基于观看历史数据来确定像素的概率值。备选地,处理器120可以基于像素的特征来确定像素的概率值。
处理器120可以基于所确定的概率值来确定稳定旋转,并且将稳定旋转应用于360度视频数据以生成稳定的360度视频。
在一个实施例中,显示器130通过转换由处理器120处理的图像信号、数据信号、屏上显示(OSD)信号、控制信号等来生成驱动信号。显示器130可以被实现为等离子体显示面板(PDP)、液晶显示器(LCD)、有机发光二极管(OLED)、柔性显示器等,或者可以被实现为3D显示器。另外,显示器130可以被配置为触摸屏,并且除了输出设备之外,还用作输入设备。
在一个实施例中,显示器130可以显示稳定的360度视频。
图14是根据另一实施例的电子设备的框图。
参考图14,电子设备2000可以包括:第一设备1100,被配置为分析360度视频并确定用于稳定360度视频的旋转;以及第二设备1200,被配置为基于从第一设备1100提供的稳定旋转来生成稳定的360度视频。第一设备1100和第二设备1200的一些组件或全部组件可以被实现为一个物理设备。
第一设备1100可以包括:概率分配器1110,用于将概率值分配给包括在360度视频帧中的多个像素;聚类单元1120,用于将包括在360度视频帧中的多个像素分配给簇;以及旋转确定器1130,用于确定用于稳定360度视频的3D旋转。在不使用聚类的实施例中,第一设备1100可以不包括聚类单元1120。
在一个实施例中,旋转确定器1130可以针对N个簇中的每个簇确定稳定旋转。另外,旋转确定器1130可以根据所确定的旋转在360度视频的元数据中设置3D旋转参数,并且将元数据提供给第二设备1200。在一个实施例中,第一设备1100和第二设备1200可以彼此通信。
在另一个实施例中,第一设备1100可以将元数据上传到视频服务器。视频服务器可以根据来自第二设备1200的请求将360度视频或360度视频的元数据中的至少一个提供给第二设备1200。
在一个实施例中,第二设备1200可以包括视频处理器1210和用于显示由视频处理器1210渲染的稳定的360度视频的显示器1250。第二设备1200还可以包括输入器1230,用于接收定义相机旋转和/或相机平移的相机控制输入。视频处理器1210可以通过除了由3D旋转参数定义的旋转之外还将根据相机控制输入所定义的相机旋转或相机平移中的至少一项应用于360度视频帧的视频数据并渲染旋转的视频数据,来生成稳定的360度视频。
在一个实施例中,第二设备1200可以包括簇选择器1220,用于从多个簇中选择与用户的当前视点相对应的簇。在不使用聚类的实施例中,第二设备1200可以不包括簇选择器1220。
在一个实施例中,第二设备1200还可以包括眼睛跟踪器1240,用于基于眼睛跟踪来确定用户的当前视点。眼睛跟踪器1240可以将关于当前视点的信息发送给簇选择器1220,并且簇选择器1220可以基于接收到的信息来选择与当前视点相对应的簇。因此,可以选择与当前视点相对应的3D旋转。在不使用聚类的实施例中,第二设备1200可以既不包括簇选择器1220也不包括眼睛跟踪器1240。
备选地,在不使用聚类的实施例中,第二设备1200可以不包括眼睛跟踪器1240。例如,在一个实施例中,眼睛跟踪器1240可以在360度视频的再现期间获得关于用户的当前视点的信息(观看历史数据),以获得当前正被再现的360度视频的观看历史数据。当稍后再现360度视频文件时,所获得的观看历史数据可以用于计算包括在360度视频帧中的像素的概率值。另外,观看历史数据可以用于重新训练包括在概率分配器1110中的机器学习算法,并且在这种情况下,第二设备1200可以将历史数据发送给第一设备1100。
图13和图14中所示的电子设备100和电子设备2000的框图仅是根据实施例的框图。根据实际实现的电子设备100和电子设备2000的规格,可以将每个框图的一些组件组合在一起或省略,或者可以向其添加新的组件。也就是说,在必要时,可以将两个或更多个组件组合为一个组件,或可以将一个组件分为两个或更多个组件。在每个框中执行的功能仅被提供来解释实施例,并且本公开的范围不应被解释为受限于其特定的操作或设备。
根据实施例的电子设备的操作方法可以被实现为能够通过各种计算机装置执行并被记录在计算机可读记录介质上的程序指令的形式。计算机可读记录介质可以单独地或组合地包括程序指令、数据文件、数据结构等。记录在介质上的程序指令可以针对本公开进行专门设计和配置,或者可以是计算机软件领域的普通技术人员所熟知和可用的程序指令。计算机可读记录介质的示例包括诸如硬盘、软盘和磁带的磁性介质、诸如CD-ROM和DVD的光学介质、诸如光软盘的磁光介质、以及诸如ROM、RAM和闪存的硬件设备,这些硬件设备专门被配置用于存储和执行程序指令。程序指令的示例不仅包括由编译器生成的机器代码,而且包括能够由计算机使用解释器等执行的高级语言代码。
虽然上面已详细描述了实施例,但是本公开的范围不限于此,并且应理解的是,本领域普通技术人员使用在所附权利要求中定义的本公开的基本构思进行的各种修改和改进都包括在本公开的范围内。
Claims (15)
1.一种用于稳定360度视频的电子设备,所述电子设备包括:
存储器,存储一个或多个指令;以及
处理器,被配置为执行存储在所述存储器中的所述一个或多个指令以进行下列操作:
当在虚拟现实设备上再现所述360度视频时,基于包括在所述360度视频的帧中的多个像素中的每个像素被包括在用户的视场FoV中的可能性,将概率值分配给所述多个像素;
基于所分配的概率值来针对所述360度视频确定三维3D旋转;以及
通过将所述3D旋转应用于所述360度视频来生成稳定的360度视频,使得所述视频中用户可能观看的图像的一部分被稳定地维持。
2.根据权利要求1所述的电子设备,其中所述处理器还被配置为:执行所述一个或多个指令,以基于包括关于先前用户的FoV的信息在内的第一观看历史数据,在观看所述360度视频时将所述概率值分配给所述多个像素。
3.根据权利要求1所述的电子设备,其中所述处理器还被配置为:执行所述一个或多个指令,以基于所述多个像素中的像素的一个或多个特征来确定要分配给所述像素的概率值,
其中所述一个或多个特征包括下列项中的至少一项:
包括所述像素的对象的类型;
与相机和所述360度视频的所述帧中的包括所述像素的区域之间的距离有关的深度属性;
包括所述像素的所述区域相对于所述360度视频的所述帧中的一个或多个其他区域的视觉重要性;
与所述像素相关联的运动矢量;
包括所述像素的所述360度视频的显著性图中的边界;或者
与一个或多个声源相对应的像素在所述360度视频的所述帧内的位置。
4.根据权利要求3所述的电子设备,其中所述处理器还被配置为:执行所述一个或多个指令,以通过使用输入了所述像素的所述一个或多个特征作为输入的机器学习算法来确定要分配给所述像素的概率值。
5.根据权利要求4所述的电子设备,其中所述处理器还被配置为:执行所述一个或多个指令,以在观看一个或多个其他360度视频时,通过使用第二观看历史数据来训练所述机器学习算法,所述第二观看历史数据包括关于先前用户的FoV的信息以及包括在所述一个或多个其他360度视频中的像素的已知特征。
6.根据权利要求1所述的电子设备,其中所述处理器还被配置为:执行所述一个或多个指令,以通过将所确定的旋转应用于所述360度视频的数据并渲染应用了所确定的旋转的所述数据来生成所述稳定的360度视频。
7.根据权利要求1所述的电子设备,其中所述处理器还被配置为:执行所述一个或多个指令,以根据所确定的旋转来设置所述360度视频的3D旋转参数。
8.根据权利要求1所述的电子设备,其中所述处理器还被配置为:执行所述一个或多个指令,以将包括在所述360度视频中的一个或多个像素分配给至少一个簇,并且基于分配给包括在所述至少一个簇中的所述像素的概率值来针对所述至少一个簇确定3D旋转。
9.一种用于稳定360度视频的电子设备的操作方法,所述操作方法包括:
当在虚拟现实设备上再现所述360度视频时,基于包括在所述360度视频的帧中的多个像素中的每个像素被包括在用户的视场中的可能性,将概率值分配给所述多个像素;
基于所分配的概率值,针对所述360度视频确定三维3D旋转;以及
通过将所述3D旋转应用于所述360度视频来生成稳定的360度视频,使得所述视频中用户可能观看的图像的一部分被稳定地维持。
10.根据权利要求9所述的操作方法,还包括:当观看所述360度视频时,获得包括关于先前用户的视场的信息在内的第一观看历史数据,以及
其中分配所述概率值包括:基于所述第一观看历史数据将所述概率值分配给所述多个像素。
11.根据权利要求9所述的操作方法,其中分配所述概率值包括:基于所述多个像素中的像素的一个或多个特征,将概率值分配给所述像素,
其中所述一个或多个特征包括下列项中的至少一项:
包括所述像素的对象的类型;
与相机和所述360度视频的所述帧中的包括所述像素的区域之间的距离有关的深度属性;
包括所述像素的所述区域相对于所述360度视频的所述帧中的一个或多个其他区域的视觉重要性;
与所述像素相关联的运动矢量;
包括所述像素的所述360度视频的显著性图中的边界;或者
与一个或多个声源相对应的像素在所述360度视频的所述帧内的位置。
12.根据权利要求11所述的操作方法,其中分配所述概率值包括:通过使用输入了所述像素的所述一个或多个特征作为输入的机器学习算法将概率值分配给所述像素。
13.根据权利要求12所述的操作方法,还包括:当观看一个或多个其他360度视频时,通过使用第二观看历史数据来训练所述机器学习算法,所述第二观看历史数据包括关于先前用户的FoV的信息以及包括在所述一个或多个其他360度视频中的像素的已知特征。
14.根据权利要求9所述的操作方法,其中生成所述稳定的360度视频包括:通过将所确定的旋转应用于所述360度视频的数据并渲染应用了所确定的旋转的所述数据来生成所述稳定的360度视频。
15.一种非暂时性计算机可读记录介质,存储了用于在计算机中执行根据权利要求9所述的方法的程序。
Applications Claiming Priority (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
GB1714804.0A GB2566478B (en) | 2017-09-14 | 2017-09-14 | Probability based 360 degree video stabilisation |
GB1714804.0 | 2017-09-14 | ||
KR1020180053924A KR102487976B1 (ko) | 2017-09-14 | 2018-05-10 | 전자 장치 및 그 동작방법 |
KR10-2018-0053924 | 2018-05-10 | ||
PCT/KR2018/007679 WO2019054611A1 (ko) | 2017-09-14 | 2018-07-06 | 전자 장치 및 그 동작방법 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111095922A CN111095922A (zh) | 2020-05-01 |
CN111095922B true CN111095922B (zh) | 2021-11-05 |
Family
ID=60159394
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201880059836.5A Active CN111095922B (zh) | 2017-09-14 | 2018-07-06 | 电子设备及其操作方法 |
Country Status (4)
Country | Link |
---|---|
EP (1) | EP3654644A4 (zh) |
KR (1) | KR102487976B1 (zh) |
CN (1) | CN111095922B (zh) |
GB (1) | GB2566478B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
GB2608583B (en) * | 2021-05-25 | 2023-10-11 | Opteran Tech Limited | Unconstrained image stabilisation |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102591449A (zh) * | 2010-10-27 | 2012-07-18 | 微软公司 | 虚拟内容和现实内容的低等待时间的融合 |
CN104735464A (zh) * | 2015-03-31 | 2015-06-24 | 华为技术有限公司 | 一种全景视频交互传输方法、服务器和客户端 |
CN204465755U (zh) * | 2015-01-20 | 2015-07-08 | 刘宛平 | 可交互立体混合现实的装置及应用该装置的虚拟现实头盔 |
WO2015170142A1 (en) * | 2014-05-08 | 2015-11-12 | Sony Corporation | Portable electronic equipment and method of controlling a portable electronic equipment |
CN105976424A (zh) * | 2015-12-04 | 2016-09-28 | 乐视致新电子科技(天津)有限公司 | 一种图像渲染处理的方法及装置 |
WO2017003769A1 (en) * | 2015-06-30 | 2017-01-05 | Ariadne's Thread (Usa), Inc. | Low-latency virtual reality display system |
CN106537894A (zh) * | 2014-07-14 | 2017-03-22 | 索尼互动娱乐股份有限公司 | 用于回放全景视频内容的系统和方法 |
CN106659932A (zh) * | 2014-08-08 | 2017-05-10 | 索尼互动娱乐股份有限公司 | 头戴式显示器中的传感刺激管理 |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2013013063A (ja) * | 2011-06-03 | 2013-01-17 | Panasonic Corp | 撮像装置及び撮像システム |
US9063330B2 (en) * | 2013-05-30 | 2015-06-23 | Oculus Vr, Llc | Perception based predictive tracking for head mounted displays |
KR102313485B1 (ko) * | 2015-04-22 | 2021-10-15 | 삼성전자주식회사 | 가상현실 스트리밍 서비스를 위한 영상 데이터를 송수신하는 방법 및 장치 |
US10089790B2 (en) * | 2015-06-30 | 2018-10-02 | Ariadne's Thread (Usa), Inc. | Predictive virtual reality display system with post rendering correction |
EP3419295A4 (en) * | 2016-02-17 | 2019-08-28 | LG Electronics Inc. | 360 VIDEO TRANSMISSION METHOD, 360 VIDEO RECEIVING METHOD, 360 VIDEO TRANSMISSION APPARATUS, AND 360 VIDEO RECEIVING DEVICE |
-
2017
- 2017-09-14 GB GB1714804.0A patent/GB2566478B/en active Active
-
2018
- 2018-05-10 KR KR1020180053924A patent/KR102487976B1/ko active IP Right Grant
- 2018-07-06 EP EP18855989.2A patent/EP3654644A4/en not_active Withdrawn
- 2018-07-06 CN CN201880059836.5A patent/CN111095922B/zh active Active
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102591449A (zh) * | 2010-10-27 | 2012-07-18 | 微软公司 | 虚拟内容和现实内容的低等待时间的融合 |
WO2015170142A1 (en) * | 2014-05-08 | 2015-11-12 | Sony Corporation | Portable electronic equipment and method of controlling a portable electronic equipment |
CN106537894A (zh) * | 2014-07-14 | 2017-03-22 | 索尼互动娱乐股份有限公司 | 用于回放全景视频内容的系统和方法 |
CN106659932A (zh) * | 2014-08-08 | 2017-05-10 | 索尼互动娱乐股份有限公司 | 头戴式显示器中的传感刺激管理 |
CN204465755U (zh) * | 2015-01-20 | 2015-07-08 | 刘宛平 | 可交互立体混合现实的装置及应用该装置的虚拟现实头盔 |
CN104735464A (zh) * | 2015-03-31 | 2015-06-24 | 华为技术有限公司 | 一种全景视频交互传输方法、服务器和客户端 |
WO2017003769A1 (en) * | 2015-06-30 | 2017-01-05 | Ariadne's Thread (Usa), Inc. | Low-latency virtual reality display system |
CN105976424A (zh) * | 2015-12-04 | 2016-09-28 | 乐视致新电子科技(天津)有限公司 | 一种图像渲染处理的方法及装置 |
Non-Patent Citations (2)
Title |
---|
《Shooting a Moving Target: Motion-Prediction-Based Transmission for 360-Degree Videos》;Yanan Bao, Huasen Wu, Tianxiao Zhang;《2016 IEEE International Conference on Big Data (Big Data)》;20161231;全文 * |
《Spatiotemporal Rate Adaptive Tiled Scheme for 360 Sports Events》;TAREK EL-GANAINY;《ARXIV.ORG,CORNELL UNIVERSITY LIBRARY,OLIN LIBRARY CORNELL UNIVERSITY ITHACA》;20170531;全文 * |
Also Published As
Publication number | Publication date |
---|---|
EP3654644A4 (en) | 2020-08-26 |
EP3654644A1 (en) | 2020-05-20 |
GB201714804D0 (en) | 2017-11-01 |
GB2566478B (en) | 2019-10-30 |
KR102487976B1 (ko) | 2023-01-13 |
CN111095922A (zh) | 2020-05-01 |
GB2566478A (en) | 2019-03-20 |
KR20190030565A (ko) | 2019-03-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11245887B2 (en) | Electronic device and operation method therefor | |
US10664140B2 (en) | Object tracking in zoomed video | |
Lai et al. | Semantic-driven generation of hyperlapse from 360 degree video | |
CN109313812B (zh) | 具有上下文增强的共享体验 | |
CN106576184B (zh) | 信息处理装置、显示装置、信息处理方法、程序和信息处理系统 | |
US10681341B2 (en) | Using a sphere to reorient a location of a user in a three-dimensional virtual reality video | |
CN109154862B (zh) | 用于处理虚拟现实内容的装置、方法和计算机可读介质 | |
JP2021029044A (ja) | 情報処理装置、情報処理方法、プログラム | |
JP7392105B2 (ja) | 没入型ビデオコンテンツをフォービエイテッドメッシュを用いてレンダリングするための方法、システム、および媒体 | |
KR20180074180A (ko) | 가상현실 영상에 대한 정보를 제공하는 장치 및 방법 | |
JP2019531038A (ja) | ディスプレイ装置及びその制御方法 | |
US20190045178A1 (en) | Generating a Three-Dimensional Preview of a Three-Dimensional Video | |
Zhang et al. | Saliency Prediction Network for $360^\circ $ Videos | |
CN114764896A (zh) | 适于视频游戏的直播中的自动内容辨识和信息 | |
US10867368B1 (en) | Foveated image capture for power efficient video see-through | |
US10796477B2 (en) | Methods, devices, and systems for determining field of view and producing augmented reality | |
US11770551B2 (en) | Object pose estimation and tracking using machine learning | |
CN111095922B (zh) | 电子设备及其操作方法 | |
CN111833459B (zh) | 一种图像处理方法、装置、电子设备及存储介质 | |
US20190058861A1 (en) | Apparatus and associated methods | |
Irfan et al. | Deepview: Deep-learning-based users field of view selection in 360 videos for industrial environments | |
US20230115371A1 (en) | Efficient vision perception | |
CN116916028A (zh) | 使用虚拟分辨率调整的视频流缩放 | |
Luchetti et al. | Stabilization of spherical videos based on feature uncertainty | |
WO2023059962A1 (en) | Efficient vision perception |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |