CN110495166A - 球形视频编辑 - Google Patents

球形视频编辑 Download PDF

Info

Publication number
CN110495166A
CN110495166A CN201880023571.3A CN201880023571A CN110495166A CN 110495166 A CN110495166 A CN 110495166A CN 201880023571 A CN201880023571 A CN 201880023571A CN 110495166 A CN110495166 A CN 110495166A
Authority
CN
China
Prior art keywords
video data
frame
computing device
data
video
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.)
Granted
Application number
CN201880023571.3A
Other languages
English (en)
Other versions
CN110495166B (zh
Inventor
J·黄
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Snapple Co
Original Assignee
Snapple Co
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Snapple Co filed Critical Snapple Co
Priority to CN202011131842.2A priority Critical patent/CN112256127B/zh
Publication of CN110495166A publication Critical patent/CN110495166A/zh
Application granted granted Critical
Publication of CN110495166B publication Critical patent/CN110495166B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N13/00Stereoscopic video systems; Multi-view video systems; Details thereof
    • H04N13/10Processing, recording or transmission of stereoscopic or multi-view image signals
    • H04N13/106Processing image signals
    • H04N13/111Transformation of image signals corresponding to virtual viewpoints, e.g. spatial image interpolation
    • H04N13/117Transformation 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
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B27/00Editing; Indexing; Addressing; Timing or synchronising; Monitoring; Measuring tape travel
    • G11B27/02Editing, e.g. varying the order of information signals recorded on, or reproduced from, record carriers
    • G11B27/031Electronic editing of digitised analogue information signals, e.g. audio or video signals
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/017Gesture based interaction, e.g. based on a set of recognized hand gestures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/03Arrangements for converting the position or the displacement of a member into a coded form
    • G06F3/033Pointing devices displaced or positioned by the user, e.g. mice, trackballs, pens or joysticks; Accessories therefor
    • G06F3/0346Pointing devices displaced or positioned by the user, e.g. mice, trackballs, pens or joysticks; Accessories therefor with detection of the device orientation or free movement in a 3D space, e.g. 3D mice, 6-DOF [six degrees of freedom] pointers using gyroscopes, accelerometers or tilt-sensors
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T15/003D [Three Dimensional] image rendering
    • G06T15/10Geometric effects
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T3/00Geometric image transformations in the plane of the image
    • G06T3/16Spatio-temporal transformations, e.g. video cubism
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T3/00Geometric image transformations in the plane of the image
    • G06T3/40Scaling of whole images or parts thereof, e.g. expanding or contracting
    • G06T3/4038Image mosaicing, e.g. composing plane images from plane sub-images
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/20Analysis of motion
    • G06T7/292Multi-camera tracking
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/70Determining position or orientation of objects or cameras
    • G06T7/73Determining position or orientation of objects or cameras using feature-based methods
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N13/00Stereoscopic video systems; Multi-view video systems; Details thereof
    • H04N13/20Image signal generators
    • H04N13/282Image signal generators for generating image signals corresponding to three or more geometrical viewpoints, e.g. multi-view systems
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N13/00Stereoscopic video systems; Multi-view video systems; Details thereof
    • H04N13/30Image reproducers
    • H04N13/366Image reproducers using viewer tracking
    • H04N13/383Image reproducers using viewer tracking for tracking with gaze detection, i.e. detecting the lines of sight of the viewer's eyes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/83Generation or processing of protective or descriptive data associated with content; Content structuring
    • H04N21/845Structuring of content, e.g. decomposing content into time segments
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N23/00Cameras or camera modules comprising electronic image sensors; Control thereof
    • H04N23/60Control of cameras or camera modules
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N23/00Cameras or camera modules comprising electronic image sensors; Control thereof
    • H04N23/60Control of cameras or camera modules
    • H04N23/698Control of cameras or camera modules for achieving an enlarged field of view, e.g. panoramic image capture
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N23/00Cameras or camera modules comprising electronic image sensors; Control thereof
    • H04N23/90Arrangement of cameras or camera modules, e.g. multiple cameras in TV studios or sports stadiums
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N5/00Details of television systems
    • H04N5/222Studio circuitry; Studio devices; Studio equipment
    • H04N5/262Studio circuits, e.g. for mixing, switching-over, change of character of image, other special effects ; Cameras specially adapted for the electronic generation of special effects
    • H04N5/2628Alteration of picture size, shape, position or orientation, e.g. zooming, rotation, rolling, perspective, translation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N5/00Details of television systems
    • H04N5/222Studio circuitry; Studio devices; Studio equipment
    • H04N5/262Studio circuits, e.g. for mixing, switching-over, change of character of image, other special effects ; Cameras specially adapted for the electronic generation of special effects
    • H04N5/265Mixing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N5/00Details of television systems
    • H04N5/76Television signal recording
    • H04N5/765Interface circuits between an apparatus for recording and another apparatus
    • H04N5/77Interface circuits between an apparatus for recording and another apparatus between a recording apparatus and a television camera
    • H04N5/772Interface circuits between an apparatus for recording and another apparatus between a recording apparatus and a television camera the recording apparatus and the television camera being placed in the same enclosure
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N5/00Details of television systems
    • H04N5/76Television signal recording
    • H04N5/91Television signal processing therefor
    • H04N5/92Transformation of the television signal for recording, e.g. modulation, frequency changing; Inverse transformation for playback
    • H04N5/9201Transformation of the television signal for recording, e.g. modulation, frequency changing; Inverse transformation for playback involving the multiplexing of an additional signal and the video signal
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N9/00Details of colour television systems
    • H04N9/79Processing of colour television signals in connection with recording
    • H04N9/80Transformation of the television signal for recording, e.g. modulation, frequency changing; Inverse transformation for playback
    • H04N9/804Transformation of the television signal for recording, e.g. modulation, frequency changing; Inverse transformation for playback involving pulse code modulation of the colour picture signal components
    • H04N9/8042Transformation of the television signal for recording, e.g. modulation, frequency changing; Inverse transformation for playback involving pulse code modulation of the colour picture signal components involving data reduction
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N9/00Details of colour television systems
    • H04N9/79Processing of colour television signals in connection with recording
    • H04N9/80Transformation of the television signal for recording, e.g. modulation, frequency changing; Inverse transformation for playback
    • H04N9/82Transformation of the television signal for recording, e.g. modulation, frequency changing; Inverse transformation for playback the individual colour picture signal components being recorded simultaneously only
    • H04N9/8205Transformation of the television signal for recording, e.g. modulation, frequency changing; Inverse transformation for playback the individual colour picture signal components being recorded simultaneously only involving the multiplexing of an additional signal and the colour video signal
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/10Image acquisition modality
    • G06T2207/10016Video; Image sequence
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2210/00Indexing scheme for image generation or computer graphics
    • G06T2210/22Cropping

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Geometry (AREA)
  • Computer Graphics (AREA)
  • Television Signal Processing For Recording (AREA)
  • User Interface Of Digital Computer (AREA)
  • Controls And Circuits For Display Device (AREA)
  • Processing Or Creating Images (AREA)

Abstract

系统和方法提供球形视频数据的编辑。在一个示例中,计算装置可以接收球形视频(或与大于与计算装置的显示屏相关联的角视场的角视场相关联的视频),诸如通过内置的球形视频捕获系统或从另一个装置获取视频数据。计算装置可以显示球形视频数据。在显示球形视频数据时,计算装置可以跟踪对象(例如,计算装置、用户、球形视频数据中表示的真实或虚拟对象等)的移动以改变进入球形视频的视口的位置。计算装置可以从视口的新位置生成新视频。

Description

球形视频编辑
优先权
本申请要求于2017年12月15日提交的美国专利申请序列号15/844,089的优先权权益,在此声明其每一个的优先权权益,并且其每一个通过引用整体并入本文。
技术领域
本公开一般涉及视频编辑领域,并且更特别地涉及球形视频编辑。
背景技术
球形视频(有时被称为虚拟现实(VR)视频、沉浸式视频、180度或360度视频等)正成为用户享受数字的越来越流行的方式。这些视频允许用户左右平移,放大和缩小,以及从当前视角旋转到新视角,以模拟沉浸在由视频数据表示的虚拟环境中。球形视频通常使用捕获场景的不同视角的多个摄像头来制作,并且呈现在头戴式显示器(HMD)和其它计算装置(例如,台式机、膝上型计算机、平板计算机、智能电话等)中。
附图说明
本公开将参考附图描述各种实施例,在附图中:
图1示出了根据实施例的用于创建球形视频数据的工作流程的示例;
图2A和图2B示出了根据实施例的用于内容共享网络的客户端应用的图形用户界面的示例;
图3A-3D示出了根据实施例的用于确定用于控制进入球形视频数据的视口的移动数据的方法的示例;
图4A-4G示出了根据实施例的用于编辑球形视频数据的方法的示例;
图5A-5F示出了根据实施例的用于表示基于用于控制进入视频中的视口的输入移动数据从球形视频数据编辑的视频的方法的示例;
图6示出了根据实施例的用于基于用于控制进入视频的视口的输入移动数据来编辑球形视频数据的过程的示例;
图7示出了根据实施例的网络环境的示例;
图8示出了根据实施例的内容管理系统的示例;
图9示出了根据实施例的内容管理系统的数据模型的示例;
图10示出了根据实施例的消息的数据结构的示例;
图11示出了根据实施例的用于时间限制内容的数据流的示例;
图12示出了根据实施例的软件架构的示例;以及
图13示出了根据实施例的计算系统的示例。
具体实施方式
尽管球形视频正变成用户分享他们的更多体验的越来越流行的介质,但是可能并非所有能够播放视频的计算装置都能够显示球形视频(或以球形视频制作者预期的方式显示球形视频),因为与传统视频相比,呈现球形视频通常需要更多的计算资源。在一些情况下,由于处理(CPU和/或图形)和网络延迟,播放球形视频可能会提供较差的用户体验。由于移动计算装置通常有限的计算资源(例如,相对于台式机、膝上型计算机等),用户可能特别不愿意在这些装置上播放和共享球形视频。球形视频的另一个潜在缺点是视频制作者不太倾向于使用球形视频摄像头(有时称为全方位摄像头、360度摄像头、VR摄像头等)、支架或另一种球形视频捕获系统直接跟踪关注的对象,因为球形视频捕获系统的增大的角视场在这方面比传统的视频摄像头更宽容。此外,制作人假设他们可以在后期处理中编辑球形视频,但是经由传统的球形视频编辑工具进行编辑通常需要大量的时间和精力。该因素还可能阻止用户关注于进行随意视频编辑,或者有时用户可能仅想要短暂地共享球形视频内容。
根据本公开的各种实施例的系统和方法可以克服在用于编辑球形视频数据的传统方法中经历的一个或多个前述和其它缺陷。在实施例中,计算装置可以接收球形视频数据或与大于计算装置的显示屏的角视场的角视场(例如,120°、180°、270°、360°等)相关联的视频数据。例如,计算装置可以能够从多个视点捕获相同场景的多个视频,或者计算装置可以从另一个计算装置接收球形视频数据,诸如通过在因特网下载视频数据或者传输来自球形视频捕获系统的视频数据。
当计算装置播放球形视频数据时,计算装置可以接收与基于输入移动数据编辑或记录球形视频相关联的输入。例如,计算装置可以包括用于内容共享网络的客户端应用,该客户端应用包括用户可以按下以启动编辑/记录并保持联系以继续编辑/记录的虚拟按钮。作为另一示例,计算装置可以接收用于启动编辑/记录的第一手势(例如,物理或虚拟按钮的致动、语音命令、手势、眼睛手势、头部姿势等)以及用于暂停或停止编辑/记录的第二手势。
计算装置可以跟踪对象的移动以改变进入球形视频数据的视口的位置。计算装置可以使用位置的改变来使编辑的视频的帧居中。被跟踪对象可以包括计算装置本身、计算用户的一部分(例如,眼睛、头部等),或计算装置所安装的其它对象(例如,无人机、车辆等)。计算装置可以使用运动和位置传感器、摄像头、其它传感器或装置或这些组件的组合来跟踪移动对象。在一些实施例中,被跟踪对象还可以包括球形视频数据中表示的对象(真实或虚拟)。
计算装置可以使用视口的新位置和与那些位置对应的球形视频数据的像素的至少一部分来生成编辑的视频。新位置可以映射到在编辑视频的回放时显示的球形视频数据的区域的质心;用于更新球形视频数据的旋转、平移和/或变换信息;从原始球形视频数据中提取的表面或体积。在一些实施例中,编辑的视频的帧可以限于可在计算装置的显示屏上显示的帧。在其它实施例中,编辑的视频的帧可包括与角视场(例如,水平、垂直、对角线等)相关联的球形视频数据的裁剪帧,该角视场大于显示屏的角视场但是沿至少一个维度小于360°(例如,120°、180°等)。在其它实施例中,计算装置或内容服务器可以取决于接收方计算装置的计算资源(例如,处理、存储器、存储、网络带宽、功率等)的可用性来确定所编辑的视频的格式。在一些实施例中,计算装置或内容服务器可以另外地或可替代地使用其它策略来减小编辑的视频的大小以用于分发,诸如通过修改编辑的视频的视频分辨率(例如,均匀的视频分辨率,或者变化视频分辨率的区域)、编辑视频的每秒帧率(fps)等。
图1示出了用于创建球形视频数据的工作流程100的示例。对于在此所讨论的任何方法、过程或流程,除非另有说明,否则可以在各种实施例的范围内存在以相似或替代顺序或并行地执行的附加的、更少的或替代的步骤或发生的阶段。工作流程100包括四个主要阶段,数据捕获阶段120(例如,音频数据、视频数据、静止图像数据等)、拼接阶段140、后处理阶段160和呈现阶段180。在数据捕获阶段120中,球形视频制作者可以使用以彼此已知的偏移定位和/或包括具有不同焦距或角视场(例如,鱼眼、广角等)的镜头的多个摄像头,以同时捕获同一场景的多个视角的视频数据。多个摄像头可以是单个装置的一部分,诸如360度数字摄像头122(例如,SAMSUNG等)、360度摄像头无人机124(例如,VR 360、QUEEN BROBOTICSEXO360DRONETM、360DESIGNS FLYING EYETM等)、智能车辆126(例如,等)、智能电话128(例如,APPLESAMSUNGHUAWEI等)、可穿戴装置130(例如,头戴式装置、智能眼镜、耳机等)或其它装置。也可以使用安装架或支架132(例如,FREEDOM360TMVARAVONTM等)来耦接单独且不同的摄像头。安装架或支架可以手持或耦接到推车、无人机、车辆、用户头部或其他身体部位以及其它对象。
球形视频捕获系统的多个摄像头可具有不同的角视场。单个摄像头的角视场α取决于镜头的焦距f和摄像头传感器的大小d:
除非另有说明,否则角视场可以水平、垂直或对角地测量,但在此将被称为水平和垂直角视场二者。鱼眼镜头可以具有大约180°或更大的角视场,广角镜头可以具有大约在60°和120°之间的角视场(尽管一些广角镜头可以具有大于120°的角视场),标准镜头可以具有大约在30°和60°之间的角视场,并且长焦镜头可以具有大约35°或更小的角视场。用于球形视频捕获系统的配置的示例可以包括具有鱼眼镜头的一对摄像头,其中第一摄像头面向前方,并且第二摄像头面向后方。鱼眼镜头可具有大于180°(例如,210°)的角视场,因此在摄像头捕获的图像数据中存在用于在拼接阶段140期间改善输出的重叠。另一示例是包括具有以立方体形状配置的广角或标准镜头的六个摄像头的系统。其它球形视频捕获系统可以包括更少或更多数量的摄像头和/或可以以不同配置布置。
在拼接阶段140中,将来自每个摄像头的视频数据拼接在一起以创建与角视场相关联的单个视频,该角视场可以大于球形视频捕获系统的单个摄像头的角视场。一些球形视频摄像头具有内置于摄像头中的拼接功能。其他用户可能更喜欢从原始视频数据拼接球形视频,或者可能缺少具有该内置功能的系统。在这些情况下,这些用户将运行拼接软件将来自每个摄像头的连续镜头组合成球形视频数据。这种软件的示例包括来自(的子公司)的来自(原名);以及来自STEREOSTITCHTM(黎巴嫩Jounieh的DERMANDARTMS.A.L.的子公司)的StereoStitch等。视频拼接软件通常要求来自每个摄像头的连续镜头具有相同的格式(例如,MP4或MOV)和相同的每秒帧数(fps),但是一些拼接软件可以处理不同格式和fps的连续镜头。该软件还可能需要来自每个摄像头的连续镜头的同步142。拼接软件可以使用在捕获开始时记录的音频或运动信号来提供用于手动同步或自动同步的选项。拼接软件还可以允许用户从视频的时间线进行修剪,并且在拼接146来自每个摄像头的连续镜头之前选择用于校准144的特定帧以生成球形视频数据。
在后处理阶段160中,球形视频制作者可以使用来自系统公司的诸如Adobe和/或AfterCYBERLINK和来自公司的FINAL等的软件来编辑球形视频数据。该球形视频编辑软件可以帮助用户对球形视频数据进行校正162,诸如对径向失真、曝光差异、渐晕等的校正。在一些情况下,也可以在预处理期间进行这些校正以改善拼接阶段140的输出。取决于视频编辑软件的特征,用户还可以添加、修改或删除某些效果164,诸如编辑与视频一起的音频;以及添加剪辑或以其它方式重新排列视频的时间线;添加虚拟对象或其它特殊效果;添加标题、副标题和其它文字等。编辑可以涉及对元数据和/或视频数据的改变。例如,众所周知的切割或过渡类型是特写镜头,其可以从远距离开始并且缓慢地缩放到关注的对象中。视频编辑软件可以通过操纵一组帧上的像素来插入该类型的过渡以产生该效果。可替代地或另外地,视频编辑软件可以改变元数据以创建相同或类似的效果。
在已经添加(或修改、删除等)效果164之后,球形视频制作者可以使用视频编辑软件将球形视频数据导出166到合适的格式以供呈现。这可以涉及将最初捕获为球形点数据的视频数据映射到特定投影上,诸如方位角投影、圆锥投影或圆柱投影等。用于投影球形视频数据的其它方法包括立方体映射或其它多面体映射、抛物面映射、正弦映射、分层等面积等间隔像素化(HEALPix),以及许多其它可能性。
方位角投影将球体直接投射到平面上。方位角投影的变体包括:等面积方位角投影,这是沿赤道未失真的投影,但是失真朝向极点显著增加;等距方位角投影,其中所有点处于距中心点成比例正确的距离的投影;所有投影线(例如,球体的纬度和经线)与投影平面正交的正射投影;以及立体投影,除了投影点之外的整个球体的投影。
圆锥投影将球体投射到锥体上,并且然后将锥体展开到平面上。圆锥投影的变体包括:等面积圆锥投影,这是使用两个标准平行线的投影,使得标准平行线之间的失真最小,但不保留尺度和形状;以及等距圆锥投影,这是使用两个标准平行线的投影,使得沿着经线的距离按比例正确,并且沿投影仪选择的两个标准平行线的距离也是正确的。
圆柱投影将球体投射到圆柱体上,并且然后将圆柱体展开到平面上。圆柱投影的变体包括:等距圆柱投影(有时称为等角矩形投影或地理投影),其是将经线映射到恒定间隔的垂直直线并且将纬线映射到恒定间隔的水平线的投影;以及墨卡托(Mercator)投影,其是如下的投影,其中线性尺度在任何点周围的所有方向中相等,以保持小对象的角度和形状,但使对象的大小失真,该大小从赤道到极点在纬度上增加。
在立方体映射中,场景被投影到立方体的六个面上,每个面表示场景的顶部、底部、左侧、右侧、前部和后部的正交90°视图。立方体映射的变体是等角立方体映射,其中立方体的每个面具有更均匀的像素覆盖。这可以通过如下实现:绘制视频像素密度与观看者正在观看的每个方向的显示像素密度的比率的饱和度图(例如,像素密度比(PDR)),并确定要显示的最优像素数,使得对于每个采样的视图方向,该比率尽可能接近1。其它基于多面体的映射可以使用不同的多面体(例如,金字塔、正方形金字塔、三角形棱柱、矩形棱柱、十二面体等)。
作为一个示例,可以使用以下关系将球形视频数据投影到等角矩形帧上:
其中r是从原点到球体上的点的距离(例如,球体的半径),是极角(例如,角度r与正z轴相交),并且θ是方位角(例如,r到x-y平面的投影和正x轴之间的角度)。这些相同的关系可用于将等角矩形帧数据投影回球形点数据:
其中r是球体的半径,θ是极角,是方位角,并且(x,y,z)是笛卡尔空间中的点。用于将球形视频数据投影到其它表面或体积(除了等角矩形帧之外)的其它方法也可以用在各种实施例中。
除了选择投影表面之外,在导出166期间的另一个考虑是视频分辨率。球形视频帧包括用于拟在传统矩形显示屏上显示的视频帧的像素数的大约4倍。例如,表1提供了具有沿水平轴和垂直轴的视频帧分辨率、近似等效的传统视频标准(以16:9比率编码为矩形帧)、以及假设对于使用提供近似90°角视场的球形视频播放器(例如,头戴式装置)来显示球形视频帧可用的2:1宽高比的沿水平轴的近似像素数的示例。如表1中所示,通过球形视频播放器看到的HD或1080p分辨率的球形视频帧可以使用与传统视频标准中的4K视频帧大致相同的像素,并且4K分辨率的球形视频帧可以使用与传统视频标准中的16K视频帧大致相同的像素。
表1:视频帧分辨率
在导出166期间的相关考虑是是否以单视场或立体格式存储球形视频。用于编码立体视频的典型方法是将视频识别为元数据中的立体,并将左侧和右侧帧放置在彼此之上或彼此相邻并且识别元数据中的帧布置。这可以将每个视频帧的分辨率减半。用于实现立体视频的其它方法可以使用单个视频帧和元数据来平移、旋转或以其它方式变换单个帧以创建左侧帧和/或右侧帧。
导出166还可以包括选择用于封装球形视频的数字媒体容器以及用于编码内容的视频、音频和静止图像编码格式和编解码器。数字媒体容器的示例包括:公司的音频视频交错(AVI)或高级系统格式(ASF);公司的Quicktime(MOV);来自ISO/IEC JTC1运动图像专家组(MPEG)的MPEG-4(MP4);来自XIPH.ORGTM的Ogg(OGG);来自MATROSKA.ORGTM的Matroska(MKV);等等。
数字媒体编码格式/编解码器的示例包括高级音频编码(AAC)、MPEG-x音频(例如,MPEG-1音频、MPEG-2音频、MPEG第三层音频(MP3)、MPEG-4音频等)或来自MPEG的MPEG-x第2部分;来自ALLIANCE FOR OPEN MEDIATM的AOMedia Video 1(AV1);公司的Apple无损音频编解码器(ALAC)或音频交换文件格式(AIFF);来自XIPH.ORG的免费无损音频编解码器(FLAC)、Opus、Theora或Vorbis;来自ITU-T视频编码专家组(VCEG)和MPEG的联合视频小组的H.26x(例如,H.264或MPEG-4第10部分、高级视频编码(MPEG-4AVC)、H.265或高效视频编码(HEVC)等);来自公司的VPx(例如,VP8、VP9等);以及来自公司的Windows音频文件格式(WAV)、Windows Media Video(WMV)或Windows Media Audio(WMA);等等。
在后处理阶段160之后,可以在呈现阶段180期间分发球形视频数据以用于回放。例如,接收方可以通过如下接收球形视频数据:使用蜂窝、卫星或Wi-Fi连接通过广域网(WAN)(例如,因特网);局域网(LAN)(有线或无线)或其它本地无线通信交换(例如,近场通信(NFC)、红外(IR)、超声波等);或其它物理交换(例如,通用串行总线(USB)闪存驱动器或其它磁盘或驱动器)。用户可以利用各种类型的装置查看球形视频内容并与之交互,该装置诸如:头戴式显示器(HMD)182、计算装置184(例如,服务器、工作站、台式计算机、膝上型计算机、平板计算机、智能电话、可穿戴装置(例如,智能手表、智能眼镜等)等,或专用媒体播放装置186(例如,数字电视、机顶盒、DVD播放器、DVR、视频游戏控制台、电子阅读器、便携式媒体播放器等)。回放装置将具有运行球形视频回放软件和球形视频数据的足够的处理、存储器、存储、网络、电源和其它资源;用于显示视频数据的一个或多个显示屏(例如,集成在膝上型计算机、平板计算机、智能电话、可穿戴装置等内,或外围装置);用于发出音频数据的扬声器(集成或外围);以及用于改变球形视频数据的视角的输入装置(集成或外围)(例如,物理方向按钮、触摸屏、指点装置(例如,鼠标、轨迹球、指点杆、触控笔、触摸板等)、运动传感器(例如,加速度计、陀螺仪等)、位置传感器(例如,磁力计等)、光学传感器(例如,电荷耦接器件(CCD)、互补金属氧化物半导体(CMOS)传感器、红外传感器等)、麦克风和其它传感器和装置)。
图2A和图2B分别示出了在计算装置202上执行并在触摸屏204上显示的(例如,文本、图像、音频、视频、应用等)编辑和分发应用的图形用户界面200和250的示例。图形用户界面200和250仅是用于内容共享网络的客户端应用的一组用户界面的一个示例,并且其它实施例可以包括更少或更多的元素。例如,其它实施例可以利用不具有图形元素的用户界面(例如,语音用户界面)。客户端应用的示例包括来自公司的或SPECTACLESTM。然而,本公开通常适用于创建和编辑内容(例如,文本、音频、视频或其它数据)以及与内容共享网络的其他用户共享内容的任何应用,诸如社交媒体和社交联网;照片、视频和其它共享;网络日志(博客);新闻聚合者;内容管理系统平台;等等。
在该示例中,客户端应用可以响应于捕获球形视频数据的计算装置202或者从另一电子装置接收球形视频数据并且在内容共享网络客户端应用、电子通信客户端应用(例如,电子邮件客户端、短消息服务(SMS)文本消息客户端、即时消息程序等)、网络浏览器/网络应用、文件管理器或其它操作系统实用程序、数据库或其它合适的应用内呈现球形视频数据的计算装置202,来呈现图形用户界面200。图形用户界面200包括视频图标206,该视频图标206可以与用于向本地存储装置、远程存储装置和/或其它计算装置发送球形视频数据、球形视频数据的一部分或球形视频数据的编辑版本的界面相关联。
图形用户界面200还包括可以与客户端应用的特定功能或特征相关联的各种图标,诸如文本工具图标208、绘图工具图标210、虚拟对象编辑器图标212、剪刀工具图标214、回形针工具图标216、定时器图标218、声音工具图标220、保存工具图标222、添加工具图标222和退出图标224。诸如通过接收来自物理指针的触摸或敲击或来自虚拟指针的点击的计算装置202,文本工具图标208的选择可以使计算装置202显示文本编辑界面以添加、删除、编辑、格式化(例如,粗体、下划线、斜体等)、着色和调整文本大小和/或对视频应用其它文本效果。响应于接收到绘图工具图标210的选择,计算装置202可以呈现用于选择不同的颜色和笔刷大小的绘图编辑器界面以便在视频中绘图;添加、删除和编辑视频中的绘图;和/或将其它图像效果应用于视频。
剪刀工具图标214可以与用于创建计算装置202可以合并到视频中的“贴纸(sticker)”或虚拟对象的剪切、复制和粘贴界面相关联。在一些实施例中,剪刀工具图标214还可以与如下特征相关联,诸如“MagicEraser”,用于删除视频中的指定对象;“TintBrush”,用于以不同颜色绘制指定对象;以及“Backdrop”,用于添加、删除和/或编辑视频中的背景。回形针工具图标216可以与用于将网站(例如,URL)、搜索查询和类似内容附加在视频中的界面相关联。定时器图标218可以与用于设置视频可以被其他用户访问多长时间的界面相关联。声音工具图标220的选择可以导致计算装置202呈现用于打开/关闭音频和/或调节音频音量的界面。保存工具图标222可以与用于将视频保存到照片、图像和其它内容的个人或私人存储库(例如,在应用中称为“存储器”)的界面相关联。添加工具图标224可以与用于将视频添加到照片、图像和其它内容的共享存储库(例如,在应用中称为“故事”)的界面相关联。退出图标226的选择可以使计算装置202退出视频编辑模式并呈现在客户端应用中导航到的最后用户界面。
图2B示出了图形用户界面250,计算装置202可以在客户端应用进入视频编辑模式时显示该图形用户界面250。图形用户界面250可以包括360°图标252以指示正在播放或编辑的当前视频包括球形视频数据。图形用户界面250还包括图形用户界面元素254,该图形用户界面元素254包括两个元素,记录按钮256和擦除器258。记录按钮256可以指示客户端应用正在记录当前正在由应用呈现的球形视频数据的副本。例如,用户可以在与记录按钮256对应的区域按压触摸屏204指定的时间段(例如,1s、2s等),以使客户端应用显示图形用户界面元素254。在一些实施例中,客户端应用可以在最初接收到潜在的记录输入时将视频数据缓冲指定的时间段以确保记录视频的该部分,并且如果客户端应用已停止接收记录输入(例如,用户将他的手指抬离触摸屏204)或以其它方式接收与暂停或停止编辑或记录相关联的输入(例如,双击到计算装置202),则在指定的时间段后丢弃缓冲的视频数据。以该方式,客户端应用可以忽略误报记录输入。此外,指定的时间段可以作为最小记录长度操作。
在其它实施例中,用户可以在与图形用户界面元素254对应的一般区域中按压触摸屏204(例如,在定时器图标218下方以及视频图标206和其它底部对齐图标上方)和/或与图标或其它用户界面元素不相关联的触摸屏204的其它部分(例如,在360°图标252下方,在定时器图标218和其它右对齐图标的左侧,以及在视频图标206和其它底部对齐图标上方)。在一些实施例中,当客户端应用处于视频编辑模式时,可以始终显示图形用户界面元素254,但是记录按钮256将是半透明的(或第一颜色),直到客户端应用接收到记录输入并且记录按钮256将变得不透明(或第二种颜色)以指示客户端应用正在记录。
擦除器258可以指示相对于球形视频数据的总长度已经经过的球形视频数据的时间量。例如,在该示例中,擦除器258被示出为包括以半透明(或第一颜色)从环的顶部开始并且逆时针方向行进的240°弧以及以不透明(或第二颜色)从环的顶部开始并且顺时针方向行进的120°弧的环。如果环的顶部表示球形视频的开始并且前进进度由从半透明到不透明(或第一颜色到第二颜色)转动的环表示,则擦除器258指示约三分之一的球形视频数据已经经过。除了指示进度之外,用户还可以通过执行左轻扫或顺时针轻扫来使用擦除器258推进球形视频数据,并通过执行右或逆时针轻扫来反转球形视频。用户可以通过保持与触摸屏204的接触并使用相同的接触点或使用第二接触点(例如,如果触摸屏支持多点触摸)来执行轻扫,从而在前进或回退球形视频的同时继续记录。
在图2B的示例中,计算装置202在触摸屏204内显示等角矩形帧260的一部分。等角矩形帧260包括场景的其它部分(以虚线表示),其未在触摸屏204内显示而是可以通过导引将从场景的当前视角到场景的不同视角的移动来访问。客户端应用可以使用各种输入机制来检测该移动数据,诸如键盘输入组件(例如,物理键盘的方向键、包括虚拟键盘的触摸屏、光电键盘等)、基于指针的输入组件(例如,鼠标、触摸板、轨迹球、操纵杆或其它指点工具)、运动传感器(例如,加速度计、重力传感器、陀螺仪、旋转矢量传感器等)、位置传感器(例如,取向传感器、磁力计等)、触觉输入组件(例如,物理按钮、提供触摸或触摸手势的位置和/或力度的触摸屏等)、音频输入组件(例如,用于提供语音命令的麦克风)、高频输入组件(例如,超声波、声纳、雷达收发机等)、光学输入组件(例如,CCD或CMOS摄像头、红外摄像头、激光雷达系统和其它激光系统、LED收发机等,用于基于用户的眼睛、嘴唇、舌头、头部、手指、手、手臂、脚、腿、身体等的移动来检测手势);以及这些类型的输入组件的组合。
在一些实施例中,移动输入数据还可以基于显示屏上显示的内容,诸如跟踪球形视频数据中表示的移动对象的选择;用于导航球形视频数据的路径、模式或其它移动数据的选择;或字母数字文本(例如,地图方向、坐标列表等);以及许多其它可能性。
图3A-3D示出了用于确定用于控制进入球形视频数据的视口以在计算装置302的显示屏上显示的移动数据的方法的示例。计算装置302可以与小于球形视频数据的角视场的角视场相关联。在该示例中,计算装置302可以移动大约六个自由度,包括沿三个垂直轴(x,y和z轴)的平移和围绕三个垂直轴的旋转。特别地,图3A示出了在示例320中,计算装置302可以从左到右和从右到左(例如,沿着x轴分别朝向x+和远离x+),向前和向后以及向后和向前(例如,沿着y轴分别朝向y+和远离y+),以及上下和下上(例如,沿着z轴分别朝向z+和远离z+)移动,其中四个角通常与用户等距。图3B示出了在示例340中计算装置302可以滚动(例如,向前倾斜使得装置的底角比顶角更靠近用户,以及向后倾斜使得装置的顶角比底角更靠近用户;围绕x轴旋转)。图3C示出了在示例360中计算装置302可以俯仰(例如,逆时针倾斜使得右上角是最高角,或顺时针倾斜使得左上角是最高角;围绕y轴旋转)。图3D示出在示例380中计算装置302可以偏航(例如,向右扭转使得装置的左角比右角更靠近用户,并且向左扭转使得右角比左角更靠近用户;围绕z轴旋转)。每种类型的移动(例如,图3A中所示的平移或图3B-3D中所示的旋转中的一种)可以与一种或多种其它类型的移动结合以限定表示装置可以从一个姿势(例如,位置和取向)移动到下一个姿势的三维空间的球体。
在一些实施例中,计算装置302可包括一个或多个运动和/或位置传感器(例如,加速度计、陀螺仪、磁力计等)、光学输入组件(例如,CCD摄像头、CMOS摄像头、红外摄像头等)和/或其它输入组件(未示出)以检测装置的移动。用于使用这些传感器确定装置移动和位置的示例包括用于ANDROIDTM平台的传感器或Project TangoTM应用程序编程接口(API)或增强现实核心(ARCore)软件开发套件(SDK),用于来自公司的平台的CoreMotion或增强现实套件(ARKit)框架,或各种MICROSOFT平台的传感器或混合现实API。这些API和框架使用视觉惯性测距法(VIO),其结合了计算装置的运动和位置传感器数据以及装置的物理环境的图像数据,以确定装置随时间推移的姿势。例如,实现这些API或框架之一的计算装置可以使用计算机视觉来识别场景中表示的对象或特征,跟踪横跨视频帧的那些对象和特征的位置中的差异,并比较该差异与运动和位置感测数据,以到达比单独使用一种运动跟踪技术更准确的姿势数据。装置的姿势通常作为两个坐标系之间的旋转和平移返回。坐标系不一定共享坐标系,但API和框架可以支持多个坐标系(例如笛卡儿(右手或左手)、极、圆柱、世界、摄像头、投影,来自KHRONOS公司的OpenGL、来自UNITYTECHNOLOGIESTM软件,来自EPIC的UNREAL等)。
图4A-4G示出了使用计算装置402编辑球形视频数据的方法的示例。在该示例中,计算装置402在触摸屏404a上显示球形视频数据,其内容在视口404b中表示。在这些示例中,球形视频数据以缺少深度信息的单视场格式编码,使得视口的控制限于三个自由度。在其它实施例中,球形视频数据可以包括立体视频数据、三维(3D)虚拟现实环境数据或其它计算机生成的数据、下一代视频分辨率数据,以及用于传送或外推深度的其它信息,使得视口404b可以根据六个自由度到处移动。
用户可以诸如通过选择视频图标206启动球形视频数据的回放。在这些示例中,客户端应用可以支持基于由计算装置402处理的输入移动数据(诸如由运动传感器、位置传感器、光学传感器和其它传感器或组件检测的装置的移动)的编辑。这里,视口控制限于三个自由度,使得客户端应用可以被配置为检测装置的旋转(例如,滚动、俯仰和偏转)以将进入触摸屏404a上显示的球形视频数据中的视口的位置改变。其它实施例可以使用笛卡尔空间、球面空间、圆柱空间或其它合适的坐标系中的平移来控制进入球形视频数据中的视口的位置。用户可以诸如通过按下图2A的记录按钮256,敲击记录按钮256,发出语音命令以开始记录,或提供另一个合适的输入,来启动编辑模式或记录模式。用户可以通过释放记录按钮256,重新敲击记录按钮256,发出语音命令以停止记录或提供另一个合适的输入来停止编辑或记录。计算装置402可以检测其移动以改变视口404b的位置,并且可以记录装置的姿势数据和/或在视口内显示的内容。
例如,图4A示出了计算装置402的初始姿势的示例410,其中用户的注视可以与触摸屏404a基本上正交,使得装置的四个角基本上与用户等距,并且视口404b包括矩形隧道的完整视图,该矩形隧道具有看起来更接近x标记的用户的部分和远离+标记的用户的部分。图4B示出了示例420,其中用户已经从初始姿势向前倾斜计算装置402(例如,绕着地平线的顺时针方向旋转计算装置402),使得装置的底角比顶角更靠近用户,并且视口404b显示以隧道底部为中心的视图。图4C示出了示例430,其中用户已经从初始姿势向后倾斜计算装置(例如,绕着地平线的逆时针方向旋转计算装置402),使得装置的顶角比底角更靠近用户,并且视口404b包括以隧道顶部为中心的视图。
图4D示出了示例440,其中用户已经从初始姿势向上转动计算装置402的右侧(例如,沿着进入隧道的轴以逆时针方向旋转计算装置402),使得右上角是最高角并且视口404b显示隧道的倾斜视图(例如,相对于地平线向上倾斜)。图4E示出了示例450,其中用户已经从初始姿势向上转动计算装置402的左侧(例如,沿着进入隧道的轴以顺时针方向旋转计算装置402),使得左上角是最高角并且该视口404b包括隧道的歪斜视图(例如,相对于地平线向下倾斜)。
图4F示出了示例460,其中用户将计算装置402从初始姿势向右扭转(例如,围绕垂直于地平线并且与触摸屏404a共面的轴以逆时针方向旋转计算装置402),使得左角比右角更接近用户,并且视口402b显示以隧道左侧为中心的视图。图4G示出了示例470,其中用户将计算装置402从初始姿势向左扭转(例如,围绕垂直于地平线并且与触摸屏404a共面的轴以顺时针方向旋转计算装置402),使得该装置的右角比左角更靠近用户,并且视口404b包括以隧道右侧为中心的视图。
虽然这些示例描述了用户倾斜、转动或扭转计算装置402,但是在其它实施例中也可以使用其它动作,诸如用户头部的移动或用户注视方向中的改变。例如,用户向左转动他的头部或他的注视方向可以导致视口404b示出与图4F的示例460类似的视角(例如,以隧道的左侧为中心的视图),并且向右转动他的头部或他的注视方向可以导致视口404b示出与图4的示例470类似的视角(例如,以隧道的右侧为中心的视图)。作为另一示例,用鼠标的向上拖动手势或向上轻扫触摸手势可导致视口404b示出与图4B的示例420类似的视角(例如,以隧道的底部为中心的视图),并且相反地,用鼠标的向下拖动手势或向下轻扫触摸手势可以导致视口404b示出与图4C的示例430类似的视角(例如,以隧道顶部为中心的视图)。
除了运动传感器、位置传感器和用于导航球形视频数据的摄像头之外或作为其替代,一些实施例可以使用语音或其它音频命令、物理或虚拟键或按钮、字母数字文本(例如,地图方向、GPS坐标等)等。例如,用于将视图绕轴逆时针旋转到隧道中的音频命令或物理或虚拟键或按钮的选择可导致视口404b显示与图4D的示例440类似的视角(例如,隧道的倾斜视图),并且用于将视图绕轴顺时针旋转到隧道中的命令可导致视口404b示出与图4E的示例450类似的视角(例如,隧道的歪斜视图)。
一些实施例可以使用在触摸屏404a上显示用于改变视口404b中所示的视角的内容。例如,球形视频数据可以包括关注对象的表示,并且客户端应用可以支持横跨球形视频数据的帧的关注对象的跟踪。作为另一示例,客户端应用可以使用户能够选择用于将视口导航进入球形视频数据的路径、模式或其它移动。作为另一示例,客户端应用可以接收用于控制视口进入编辑的视频中的字母数字文本(例如,地图方向、一组坐标等)。
图5A-5F示出了用于表示基于用于控制进入视频中的视口的输入移动数据从球形视频数据编辑的视频的方法的示例。图5A示出了球形视频数据帧、帧512和球体上的点(点516和518)的概念表示的示例510。在该示例中,点516可以对应于计算装置(例如,计算装置402)用于显示帧512的一部分的视口(例如,图4A-4G的视口404b)的原始质心。例如,帧512是360°球形视频帧,而计算装置可以具有与小于360°的角视场相关联的显示屏。点512可以是相对值(例如,相对于原点,相对于前一帧的质心等)或绝对值(例如,极坐标、球坐标、笛卡尔坐标、GPS坐标等)。点512可以是隐式值(例如,如果帧512未定义则为默认值或前一帧的质心的值)或显式值(例如,为元数据中的帧512定义)。在一些实施例中,点512可以从某些元数据导出(例如,帧512的元数据可以定义将帧512的一部分映射到视口的一组坐标,如果帧512被投影到矩形帧上,则元数据可以包括帧512的长度和宽度等)。
点518可以基于编辑模式期间的输入移动数据对应于帧512的视口的新质心。例如,如果用户在回放期间正在记录球形视频数据的副本并且旋转他的装置以使得通过视口看到场景的不同部分,则在球形视频数据的副本的回放期间重新创建移动的帧512的旋转、平移和/或变换的量可以由点518表示。在该示例中,没有修改帧512的像素以生成复制的帧,但是元数据可被注入(如果先前没有定义质心)或者编辑以指示在编辑/复制的视频的回放期间帧512的副本的哪一部分居中。
如所讨论的,球形视频数据的回放可能消耗大量资源(例如,处理、存储器、存储、网络、电源和其它计算资源)。这可能不利地影响计算装置的性能,特别是相对于台式机和服务器可能具有更少计算资源的便携式计算装置。在一些实施例中,对球形视频帧的改变还可以包括至少修剪未在视口内显示的帧的部分。例如,图5B示出了投影到等角矩形帧522上的球形视频数据帧的示例520。在该示例中,帧522的一部分,裁剪帧524(例如,白色部分)是在编辑模式期间由计算装置显示的帧522的部分。裁剪的帧524被存储为编辑副本的新帧,而帧522的剩余部分(例如,灰色部分)被裁剪掉。在实施例中,客户端应用可以取得用于新帧的视频数据的图形缓冲器的内容。在其它实施例中,客户端应用可以从存储器或存储装置取得新帧的视频数据。
尽管示例520示出了投影到等角矩形帧上的球形视频数据帧,但是其它实施例可以保留球面坐标系中的帧。例如,图5C示出了示例530,其中板534从球形视频帧532裁剪。其它实施例仍可以使用其它类型的投影或映射(例如,圆柱投影、立方体映射等)。图5A和5C-5F将球形视频帧532、542、552和562描绘为用于概念目的的球体,但是这些帧可以投影到任何合适的表面或体积上或者可以根本不投影。一些实施例还支持使用类似技术的立体球形视频编辑,但是考虑每个视频帧的左侧帧和右侧帧。
另外,并非所有实施例在编辑期间将球形视频数据裁剪到显示部分。在一些实施例中,可以使用其它裁剪策略来减小编辑副本中的帧的大小,但保留一些未显示的部分以继续在回放期间支持至少一些交互性。图5D示出了示例540,其中半球544从球形视频帧542裁剪。在回放编辑的副本时,视口的视图可以在质心546上居中,并且对于缺少深度信息的球形视频数据,允许从质心达90°的三个自由度的移动,并且对于具有深度信息的球形视频数据,允许从质心达90°的六个自由度的移动。图5E示出了示例550,其中带554从球形视频帧552裁剪。在回放编辑的副本时,视口的视图可以在质心556上居中并且允许围绕穿过极的轴的一个自由度的移动(假设θ约为90°并且显示屏的角视场约为90°。也就是说,计算装置可以检测左右扭转以改变进入球形视频数据中的视口的位置,但是可以忽略前、后、左和右倾斜。图5F示出了示例560,其中半个半球564从球形视频帧562裁剪。在回放编辑的副本时,视口的视图可以在质心566上居中并且允许围绕赤道的一个自由度的移动(假设θ是约90°,并且显示屏的角视场约为90°)。也就是说,计算装置可以检测向前和向后倾斜以改变进入球形视频数据中的视口的位置,但是可以忽略左右倾斜和扭转。
图6示出了过程600,其是用于基于控制进入球形视频中的视口的移动数据来编辑球形视频的过程的示例。计算装置(例如,图13的计算装置1300),并且更具体地,在计算装置上执行的应用(例如,图12的客户端应用1234)可以执行过程600。过程600可以在步骤602处开始,其中计算装置接收用于在装置上回放的球形视频数据。计算装置可以从内置球形视频捕获系统或从另一装置接收球形视频数据(例如,如电子邮件或其它电子通信的附件,如从因特网的下载,如从USB闪存驱动器或其它磁盘或驱动器通过本地无线通信信道(例如,Wi-Fi、近场通信(NFC)等)的传输等)。
在步骤604处,计算装置可以基于视频的fps(例如,24fps、48fps、60fps等)逐帧地显示球形视频数据。球形视频数据可以与大于与计算装置的显示屏/触摸屏/头戴式显示器(例如,显示元件)相关联的角视场(例如,60°、90°、120°等)的角视场(例如,180°、270°、360°)相关联,使得显示元件作为在特定位置(例如,原点、球体的本初子午线和赤道的交点、视口的质心等)处进入球形视频数据的视口操作。球形视频数据可以被投影或映射到各种类型的表面和体积上(例如,等角矩形帧、圆柱形帧、立方体图等)。球形视频数据可以包括各种分辨率(例如,1920x1080、2560x1440、3840x2160等),包括均匀分辨率(例如,整个帧中的相同分辨率)或者凹状(foveated)分辨率(例如,横跨具有分辨率高于其它区域的一个或多个区域的帧的变化)或其它不同的分辨率。球形视频数据可以是单视场或立体的。
当显示球形视频数据时,计算装置可以前进到步骤606,其中装置可以确定它是否处于球形视频编辑/重新记录模式。例如,装置可以在接收到与编辑球形视频数据相关联的第一输入时和接收到与停止编辑/记录球形视频数据相关联的第二输入时之间的持续时间内确定它处于编辑/重新记录模式。在一些实施例中,第一输入可以包括与计算装置的触摸屏的区域的连续接触(例如,图2B的记录按钮256;在360°图标252下方、在定时器图标218和其它右对齐的图标的左侧以及在视频图标2067和其它底部对齐的图标上方的触摸屏204的区域;等等);并且第二输入可以包括中断与触摸屏204的该区域的接触。在其它实施例中,计算装置可以检测用于启动编辑/记录的各种其它类型的输入(例如,一个或多个物理或虚拟键或按钮的致动、语音命令、触摸手势、手势、眼睛姿势、头部姿势、身体姿势、装置运动姿势等),以及用于暂停或停止编辑/重新记录的相同或类似输入。如果没有接收到编辑/重新记录输入,则客户端应用继续到步骤614以确定球形视频数据是否包括任何更多帧。
在编辑/重新记录模式中,计算装置可以继续到步骤608,其中计算装置跟踪用于控制视口位置的对象的移动。例如,装置的向前旋转可以如图4B中所示向下移动视口,向后旋转可以如图4C中所示向上移动视口,装置向右旋转可以如图4F中所示的向左移动视口,向右旋转可以如图4G中所示的向右移动视口,装置向左的扭转可以如图4D中所示对角地移动视口并向上倾斜,并且向右的扭转可以如图4E中所示对角地移动视口并且向下倾斜。另外,如果与编辑/重新记录的视频数据相关联的角视场小于或等于显示器的角视场,则视口可以构成编辑/重新记录的视频数据的整个帧。另一方面,如果与编辑/重新记录的视频相关联的角视场大于与显示器相关联的角视场,则编辑/重新记录的视频的每个帧可以在视口的新位置处居中。
在一些实施例中,被跟踪对象可以是计算装置本身。计算装置可以使用视觉惯性测距(VIO)技术或用于确定装置运动和位置的运动/位置/取向传感器(例如,加速度计、陀螺仪、磁力计等)和光学传感器(例如,CCD或CMOS摄像头、红外线收发机等)的组合来检测其移动。当装置跟踪其自身的移动(或相对于其环境的移动)时,视口到球形视频数据的位置可以响应于移动而改变。例如,如果计算装置检测到围绕地平线的旋转,如图4B和图4C中所示,则球形视频数据的视口可以分别与示例420和430类似地改变。类似地,如图4D和图4E中所示,围绕垂直于装置平面的轴的旋转可以分别将视口的位置改变为示例440和450的位置,并且如图4F和图4G中所示,围绕与装置共面并垂直于地平线的轴的旋转可以分别将视口的位置改变为示例460和470的位置。
在其它实施例中,被跟踪对象可以是眼睛、嘴唇、舌头、头部、手指、手、手臂、脚、腿、身体和/或用户的其它部分或计算装置安装或合并到的其它对象(例如,无人机、智能车等)。除了视觉惯性测距法之外,在许多可能性中,还可以使用各种其它技术来跟踪对象,诸如电容感测、感应感测、磁感测、雷达、激光雷达、声纳或超声波感测。在某些实施例中,被跟踪对象不一定是物理对象。例如,被跟踪对象还可以包括以球形视频数据(真实或虚拟)表示的对象,并且可以使用用于跟踪对象的计算机视觉技术来跟踪,诸如光流(例如,密集光流、双总变差(TV)(resp.L1范数)、Farneback光流、稀疏光流等)、卡尔曼滤波、增强(例如AdaBoost)、神经网络(例如GOTURN)、核化相关滤波器(KCF)、中值流、多实例学习(MIL)、跟踪、学习和检测(TLD),或其它合适的对象跟踪算法。
过程600可以继续到步骤610,其中客户端应用可以基于被跟踪对象的移动来计算进入球形视频数据中的视口的新位置。在一些实施例中,移动数据可以存储为帧到质心(例如,极坐标、柱面坐标、等角坐标、GPS坐标等)的映射,该质心表示进入球形视频中的视口的新位置。移动数据可包括基于定义的坐标系的绝对值或取决于前一视频帧的质心的相对值。在其它实施例中,移动数据可以包括旋转、平移和/或变换信息,用于将视口重新居中到新位置。移动数据可以作为元数据被注入到编辑的视频中(如果在球形视频数据中未定义),或者客户端应用可以更新用于编辑的视频的球形视频数据的元数据。在其它实施例中,移动数据可以定义表面或体积,以从原始球形视频帧中提取编辑副本的对应帧。
如关于图5D-5F所讨论的,为编辑的副本提取的球形视频帧不必限于计算装置的显示屏的角视场,并且还可以包括截断或裁剪球形视频部分以减小其大小但保留一些交互性或“沉浸感”的其它尺寸的表面或体积。在一些实施例中,客户端应用或其与之通信的服务器可以制定动态传输方案,用于将编辑的视频分发给其他用户的计算装置。例如,客户端应用或服务器可以接收与球形视频数据编辑器如何将视口重定向到球形视频相对应的移动数据。客户端应用或服务器可以确定其他用户的计算资源(例如,处理、存储器、存储、网络带宽、电源等)的范围和可用性,并流式传输或发送最适合那些用户的计算装置的编辑视频的版本。如果另一用户的计算装置具有足够的资源,则客户端应用或服务器可以分发球形视频数据的完整编辑版本(例如,全分辨率的360°视频,其中元数据指示如何旋转/平移/扭曲原始球形视频帧以生成编辑器定义的新帧)。如果网络带宽较低或者其他用户的计算装置缺少回放球形视频数据的完整编辑版本的资源,则客户端应用可以发送编辑的视频的裁剪版本、较低分辨率版本、具有较低fps率的版本、凹状版本,这些方法的组合,或其它较小的版本。发送用户和接收用户还可以在编辑和/或分发期间配置版本。
在步骤612处,客户端应用可以评估球形视频数据是否包含任何更多帧。如果存在另外的帧,则过程600可以重复步骤604-612。如果没有附加帧,则过程600可以结束。在一些实施例中,计算装置还可以将编辑的视频发送到一个或多个其它计算装置,诸如与朋友和用户的其他联系人相关联的装置。在一些实施例中,计算装置可以向其它计算装置发送原始球形视频数据,以及用于改变进入球形视频数据中的视口的位置的元数据(例如,帧到质心映射;坐标;旋转、平移和/或变换信息等)。这可以使其他计算装置能够显示原始球形视频数据以及编辑的视频。
图7示出了系统,网络环境700的示例,其中可以部署本公开的各种实施例。对于在此讨论的任何系统或系统元件,除非另有说明,否则在各种实施例的范围内可以存在以类似或替代顺序或并行地布置的附加、更少或替代的组件。虽然网络环境700是客户端-服务器架构,但是其它实施例可以利用其它网络架构,诸如对等或分布式网络环境。
在该示例中,网络环境700包括内容管理系统702。内容管理系统702可以基于包括接口层704、应用逻辑层706和数据层708的三层架构。网络环境700的每个模块或组件可以表示一组可执行软件指令和用于执行指令的对应硬件(例如,存储器和处理器)。为了避免以不必要的细节模糊本公开的主题,已经省略了可能与传达对主题的理解没有密切关系的各种功能模块和组件。当然,附加功能模块和组件可以与内容管理系统702一起使用,以促进在此未具体描述的附加功能。此外,网络环境700中示出的各种功能模块和组件可以驻留在单个服务器上,或者可以以各种布置横跨多个服务器分布。此外,尽管内容管理系统702具有三层架构,但是本公开的主题决不限于这种架构。
接口层704包括接口模块710(例如,web接口、移动应用(app)接口、restful状态转移(REST)应用编程接口(API)或其它API等),该接口模块710可以接收来自各种客户端计算装置和服务器(诸如执行客户端应用(未示出)的客户端装置720和执行第三方应用724的第三方服务器722)的请求。响应于所接收的请求,接口模块710经由广域网(WAN)726(例如,因特网)向请求装置传送适当的响应。例如,接口模块710可以接收诸如HTTP请求或其它应用编程接口(API)请求的请求。
客户端装置720可以执行已经为特定平台开发的web浏览器或应用,以包括各种移动计算装置和移动专用操作系统中的任何一个(例如,来自公司的iOS平台,来自公司的ANDROIDTM平台,来自公司的WINDOWS平台等)。客户端装置720可以提供向用户呈现信息并且经由WAN 726通信以与内容管理系统702交换信息的功能。
在一些实施例中,客户端装置720可以包括诸如的客户端应用,其与一些实施例一致,允许用户交换包括媒体内容(包括视频消息或文本消息)的短时消息。在该示例中,客户端应用可以结合在此描述的实施例的各方面。可以在删除触发事件(诸如观看时间或观看完成)之后删除短时消息。在这种实施例中,装置可以在生成、发送、接收或显示短时消息的方面中的任何一个方面的上下文中使用在此描述的各种组件。
客户端装置720每个可以至少包括与WAN 726的显示和通信能力以访问内容管理系统702。客户端装置720可以包括远程装置、工作站、计算机、通用计算机、网络家电、手持装置、无线装置、便携式装置、可穿戴计算机、蜂窝或移动电话、个人数字助理(PDA)、智能电话、平板计算机、超极本、上网本、膝上型计算机、台式机、多处理器系统、基于微处理器或可编程的消费电子产品、游戏机、机顶盒、网络PC、小型计算机等。
数据层708包括可以促进对信息存储的存储库或数据库718的访问的数据库服务器716。数据库718可以是存储数据(诸如成员简档数据、社交图数据(例如,内容管理系统702的成员之间的关系))以及其他用户数据和内容数据(诸如不同分辨率的球形视频数据)等的存储装置。
应用逻辑层706包括用于支持在此所讨论的各种视频特征的视频模块714,以及应用逻辑模块712,该应用逻辑模块712与接口模块710一起可以采用从数据层708中的各种数据源或数据服务取得的数据生成各种用户界面。可以使用单独的应用逻辑模块712来实现与内容管理系统702的各种应用、服务和特征相关联的功能。例如,可以使用一个或多个应用逻辑模块712来实现客户端应用。客户端应用可以为客户端装置720的用户提供消息传递机制,以发送和接收包括诸如图片和视频的文本和媒体内容的消息。客户端装置720可以针对指定的时间段(例如,有限的或无限制的)访问和查看来自客户端应用的消息达。在实施例中,消息接收方可以针对预定义的持续时间(例如,由消息发送者指定)访问特定消息,该预定义的持续时间在首次访问特定消息时开始。在预定义的持续时间经过之后,消息将被删除,并且无法再由消息接收方访问。当然,其它应用和服务可以分别体现在它们自己的应用逻辑模块712中。
图8示出了内容管理系统800的示例,该内容管理系统800包括客户端应用802(例如,在图8的客户端装置820上运行)和应用服务器804(例如,应用逻辑层806的实现)。在该示例中,内容管理系统800的操作包括客户端应用802和应用服务器804之间在短时定时器界面806、集合管理界面808和注释界面810上的各种交互。
短时定时器界面806可以是内容管理系统800的子系统,其负责实施对客户端应用802和服务器应用804所允许的内容的临时访问。为此,短时定时器界面1014可以包含多个定时器,该定时器基于与内容或内容的集合(例如,消息、视频、故事等)相关联的持续时间和显示参数,经由客户端应用802选择性地显示和启用对内容的访问。下面提供了关于短时定时器界面806的操作的进一步细节。
集合管理界面808可以是内容管理系统800的子系统,其负责管理媒体集合(例如,文本、图像、视频、音频、应用等的集合)。在一些实施例中,可以将内容的集合(例如,消息,包括文本、图像、视频、音频、应用等)组织成“事件库”或“事件故事”。可以使这种集合可用达到指定的时间段,诸如与内容相关的事件的持续时间。例如,与音乐会有关的内容可以针对该音乐会的持续时间作为“故事”可用。集合管理界面808还可以负责将特定集合的存在的通知发布到客户端应用802的用户界面。
在该示例中,集合管理界面808包括策展界面812,以允许集合管理器管理和策展特定的内容集合。例如,策展界面812可以使事件组织者能够策展与特定事件有关的内容集合(例如,删除不适当的内容或冗余消息)。另外,集合管理界面808可以采用机器视觉(或图像识别技术)和内容规则来自动策展内容集合。在某些实施例中,可以向用户支付补偿以将用户生成的内容包括在集合中。在这种情况下,策展界面812可以自动向这些用户付款以使用其内容。
注释界面810可以是内容管理系统800的子系统,其提供各种功能以使用户能够注释或以其它方式修改或编辑内容。例如,注释界面810可以提供与内容管理系统800处理的消息或其它内容的媒体覆盖的生成和发布相关的功能。注释界面810可以基于客户端装置的地理位置向客户端应用802提供媒体覆盖(例如,过滤器)。作为另一示例,注释界面810可基于其它信息(诸如客户端装置的用户的社交网络信息)向客户端应用802提供媒体覆盖。媒体覆盖可以包括音频和视觉内容以及视觉效果。音频和视觉内容的示例包括图片、文本、徽标、动画和声音效果。视觉效果的示例包括颜色覆盖。可以将音频和视觉内容或视觉效果应用于客户端装置处的媒体内容项(例如,照片)。例如,媒体覆盖包括可以覆盖在客户端装置生成的照片之上的文本。在另一示例中,媒体覆盖可以包括位置覆盖(例如,威尼斯海滩)的标识、直播事件的名称或商家覆盖的名称(例如,海滩咖啡馆)。在另一示例中,注释界面810可以使用客户端装置的地理位置来识别包括客户端装置的地理位置处的商家名称的媒体覆盖。媒体覆盖图可以包括与商家相关联的其它标记。媒体覆盖可以存储在数据库(例如,图7的数据库718)中,并通过数据库服务器(例如,数据库服务器716)访问。
在实施例中,注释界面810可以提供基于用户的发布平台,该平台使用户能够在地图上选择地理位置,并上传与所选地理位置相关联的内容。用户还可以指定应该向其他用户提供特定媒体覆盖的环境。注释界面810可以生成包括所上传的内容的媒体覆盖,并将所上传的内容与所选的地理位置相关联。
在另一个实施例中,注释界面810可以提供基于商家的发布平台,该平台使商家能够经由投标过程选择与地理位置相关联的特定媒体覆盖。例如,注释界面810可以将最高投标商家的媒体覆盖与对应的地理位置关联预定义的时间量。
图9示出了用于诸如内容管理系统900的内容管理系统的数据模型900的示例。虽然数据模型900的内容被示出为包括多个表,但是应当理解,数据可以存储在其它类型的数据结构中,诸如对象数据库、非关系或“not only”SQL(NoSQL)数据库、高度分布式文件系统(例如,分布式文件系统(HDFS))等。
数据模型900包括存储在消息表914内的消息数据。实体表902存储实体数据,包括实体图904。在实体表902内维护记录的实体可以包括个人、公司实体、组织、对象、地点、事件等。无论类型如何,关于内容管理系统900存储数据的任何实体可以是识别的实体。为每个实体提供唯一标识符,以及实体类型标识符(未示出)。
实体图904存储关于实体之间的关系和关联的信息。这种关系可以是社交的、专业的(例如,在共同的公司或组织工作)、基于兴趣的、基于活动的,或基于其它特性的。
数据模型900还以过滤器的示例形式将注释数据存储在注释表912中。在注释表912内存储数据的过滤器与视频(数据存储在视频表910中)和/或图像(数据存储在图像表908中)相关联并应用于视频和/或图像。在一个示例中,过滤器是在向接收方用户呈现期间显示为覆盖在图像或视频上的覆盖。过滤器可以是各种类型的,包括当发送用户正在编写消息时由客户端应用902向发送用户呈现的过滤器库中的用户选择的过滤器。其它类型的过滤器包括地理位置过滤器(也称为地理过滤器),其可以基于地理位置呈现给发送用户。例如,特定于邻域或特殊位置的地理位置过滤器可以基于客户端装置的GPS单元确定的地理位置信息,由图8的客户端应用802在用户界面内呈现。另一种类型的过滤器是数据过滤器,该数据过滤器可以基于客户端装置在消息创建过程期间收集的其它输入或信息,由客户端应用802选择性地呈现给发送用户。数据过滤器的示例包括特定位置处的当前温度、发送用户正在行进的当前速度、客户端装置的电池寿命、当前时间或客户端装置捕获或接收的其它数据。
可存储在图像表908内的其它注释数据可包括“镜头”数据。“镜头”可以是可以添加到图像或视频的实时特殊效果和声音。
如上所述,视频表910存储视频数据,在一个实施例中,该视频数据与在消息表914内维护记录的消息相关联。类似地,图像表908存储与消息数据存储在实体表902中的消息相关联的图像数据。实体表902可以将来自注释表912的各种注释与存储在图像表908和视频表910中的各种图像和视频相关联。
故事表906存储关于消息和相关联图像、视频或音频数据的集合的数据,其被编译成集合(例如,故事或图库)。特定集合的创建可以由特定用户(例如,在实体表902中维护记录的每个用户)发起。用户可以以该用户已经创建和发送/广播的内容集合的形式创建“个人故事”。为此,客户端应用902的用户界面可以包括用户可选择的图标,以使发送用户能够将特定内容添加到他或她的个人故事。
集合还可以构成“现场故事”,其是来自多个用户的手动、自动或使用手动和自动技术的组合创建的内容的集合。例如,“现场故事”可以构成来自各种位置和事件的用户提交的内容的策展流。在一些实施例中,其客户端装置具有启用的位置服务并且在特定时间处于共同位置事件的用户可以经由客户端应用802的用户界面呈现选项,以向特定的现场故事贡献内容。可以由客户端应用802基于其位置向用户识别现场故事。最终结果是从社区角度讲述的“现场故事”。
另一种类型的内容集合被称为“位置故事”,其使得其客户端装置位于特定地理位置(例如,在学院或大学校园内)的用户能够对特定集合做出贡献。在一些实施例中,对位置故事的贡献可能需要第二程度的认证以验证最终用户属于特定组织或其它实体(例如,是大学校园中的学生)。
图10示出了第一客户端应用(例如,图8的客户端应用802)可以生成用于与第二客户端应用或服务器应用(例如,内容管理系统702)通信的消息1000的数据结构的示例。消息1000的内容可用于填充存储在图9的数据模型900内的消息表914,并且可由客户端应用802访问。类似地,消息1000的内容可以作为客户端装置或应用服务器的“传输中”或“正在处理中”数据存储在存储器中。消息1000示出包括以下组件:
·消息标识符1002:标识消息1000的唯一标识符;
·消息文本有效载荷1004:文本,其由用户经由客户端装置的用户界面生成并包含在消息1000中;
·消息图像有效载荷1006:图像数据,其由客户端装置的摄像头组件捕获或从客户端装置的存储器取得并且包括在消息1000中;
·消息视频有效载荷1008:视频数据,其由摄像头组件捕获或从客户端装置的存储器组件取得并包括在消息1000中;
·消息音频有效载荷1010:音频数据,其由麦克风捕获或从客户端装置的存储器组件取得,并且包括在消息1000中;
·消息注释1012:注释数据(例如,过滤器、贴纸或其它增强),其表示要应用于消息1000的消息图像有效载荷1006、消息视频有效载荷1008或消息音频有效载荷1010的注释;
·消息持续时间1014:以秒为单位指示消息的内容(例如,消息图像有效载荷1006、消息视频有效载荷1008、消息音频有效载荷1010)经由客户端应用1002呈现或使用户可访问的时间量的参数;
·消息地理位置1016:与消息的内容有效载荷相关联的地理位置数据(例如,纬度和纵向坐标)。多个消息地理位置参数值可以包括在有效载荷中,这些参数值中的每一个关于内容中包括的内容项相关联(例如,消息图像有效载荷1006内的特定图像,或消息视频有效载荷1008中的特定视频);
·消息故事标识符1018:标识消息1000的消息图像有效载荷1006中的特定内容项与之关联的一个或多个内容集合(例如,“故事”)的标识符值。例如,消息图像有效载荷1006内的多个图像可以各自使用标识符值与多个内容集合相关联;
·消息标签1020:每个消息1000可以用多个标签标记,每个标签指示消息有效载荷中包括的内容的主题。例如,在消息图像有效载荷1006中包括的特定图像描绘动物(例如,狮子)的情况下,标签值可以包括在指示相关动物的消息标签1020内。标签值可以基于用户输入手动生成,或者可以使用例如图像识别自动生成;
·消息发送者标识符1022:指示客户端装置的用户的标识符(例如,消息系统标识符、电子邮件地址或装置标识符),在该客户端装置上生成消息1000并且从该客户端装置发送消息1000;
·消息接收者标识符1024:指示消息1000被寻址的客户端装置的用户的标识符(例如,消息系统标识符、电子邮件地址或装置标识符);
消息1000的各种组件的值或数据可以是指向其中存储值或数据的表中的位置的指针。例如,消息图像有效载荷1006中的图像值可以是指向图像表908内的位置(或地址)的指针。类似地,消息视频有效载荷1008内的值可以指向存储在视频表910内的数据,存储在消息注释912内的值可以指向存储在注释表912中的数据,存储在消息故事标识符1018内的值可以指向存储在故事表906中的数据,并且存储在消息发送者标识符1022和消息接收者标识符1024中的值可以指向存储在实体表902内的用户记录。
图11示出了数据流1100的示例,其中对内容的访问(例如,短时消息1102和相关联的数据有效载荷)和/或内容集合(例如,短时故事1104)可以是受内容管理系统(例如,图7的内容管理系统702)时间限制的(例如,短时的)。
在该示例中,短时消息1102被示出与消息持续时间参数1106相关联,该消息持续时间参数1106的值确定短时消息1102将由客户端应用(例如,图8的客户端应用802)向短时消息1102的接收用户显示的时间量。在一个实施例中,在客户端应用802是应用客户端的情况下,短时消息1102可以由接收用户查看最多10秒,该10秒可以由发送用户针对较短的持续时间定制。
消息持续时间参数1106和消息接收者标识符1124可以是消息定时器1112的输入,该消息定时器1112可以负责确定向消息接收者标识符1124所识别的特定接收用户显示短时消息1102的时间量。例如。短时消息1102可以仅被显示给相关接收用户由消息持续时间参数1106的值确定的时间段。消息定时器1112可以向短时定时器界面1114提供输出(例如,短时定时器界面1106的实现的示例),其可以负责向接收用户显示内容(例如,短时消息1102)的整体定时。
短时消息1102在图11中示出为包括在短时故事1104中(例如,个人故事、事件故事、内容图库或其它内容集合)。短时故事1104可以与故事持续时间1108相关联,该故事持续时间1108的值可以建立短时故事1104被呈现并且内容管理系统702的用户可访问的持续时间。在实施例中,故事持续时间参数1108可以是音乐会的持续时间,并且短时故事1104可以是与该音乐会有关的内容的集合。可替代地,用户(拥有用户或策展人)可以在执行短时故事1104的设置和创建时指定故事持续时间参数1108的值。
在一些实施例中,短时故事1104内的每个短时消息1102可以与故事参与参数1110相关联,该故事参与参数1110的值可以阐明在短时故事1104的上下文中将可以访问短时消息1102的持续时间。例如,在短时故事1104本身在故事持续时间参数1108方面到期之前,特定短时故事可能在短时故事1104的上下文中“过期”并变得不可访问。故事持续时间参数1108、故事参与参数1110和消息接收者标识符1124每个都可以向故事定时器1116提供输入,该故事定时器1116可以控制是否将向特定接收用户显示短时故事1104的特定短时消息,并且如果是,则显示多长时间。在一些实施例中,短时故事1104还可以经由消息接收者标识符1124与接收用户的身份相关联。
在一些实施例中,故事定时器1116可以控制短时故事1104以及短时故事1104中包括的短时消息1102的总体寿命。在实施例中,短时故事1104内的每个短时消息1102可以保持可见并且可由故事持续时间参数1108针对指定的时间段可访问。在另一个实施例中,短时消息1102可以在短时故事1104的上下文中基于故事参与参数1110到期。在一些实施例中,即使在短时故事1104的上下文中,消息持续时间参数1106仍然可以确定向接收用户显示特定短时消息的持续时间。例如,消息持续时间参数1106可以阐明特定短时消息被显示给接收用户的持续时间,无论接收用户是否正在观看短时故事1104的上下文内部或外部的短时消息。
短时定时器界面1114可以基于短时消息1102已经超过故事参与参数1110的确定从短时故事1104移除短时消息1102。例如,当发送用户已经建立了从发布起24小时的故事参与参数时,短时定时器界面1114将在指定的24小时之后从短时故事1104中移除短时消息1102。当短时故事1104内的每个短时消息1102的故事参与参数1110已经到期时,或者当短时故事1104本身已经根据故事持续时间参数1108到期时,短时定时器界面1114还可以移除短时故事1104。
在实施例中,短时消息故事1104的创建者可以指定不确定的故事持续时间参数。在该情况下,短时故事1104内的最后剩余短时消息的故事参与参数1110的到期将确定短时故事1104本身何时到期。在实施例中,可以将新的短时消息添加到短时故事1104,其具有新的故事参与参数以有效地将短时故事1104的寿命延长到等于故事参与参数1110的值。
在一些实施例中,响应于短时定时器界面1114确定短时故事1104已经到期(例如,不再可访问),短时定时器界面1114可以与图7的内容管理系统702(并且例如,具体地,使图8的与相关短时消息故事相关联的标记(例如,图标)不再显示在客户端应用802的用户界面内的客户端应用802)通信。类似地,当短时定时器界面1114确定短时消息1102的消息持续时间参数1106已经到期时,短时定时器界面1114可以使客户端应用802不再显示与短时消息1102相关联的标记(例如,图标或文本标识)。
图12示出了软件架构1200的示例,其可以与在此描述的各种硬件架构结合使用。图12仅是用于实现本公开的各种实施例的软件架构的一个示例,并且其它实施例可以利用其它架构来提供在此描述的功能。软件架构1200可以在诸如图13的计算系统1300的硬件上执行,该计算系统1300包括处理器1304、存储器/存储装置1306和I/O组件1318。硬件层1250可以表示计算系统,诸如图13的计算系统1300。硬件层1250可以包括具有相关联的可执行指令1254A的一个或多个处理单元1252。可执行指令1254A可以表示软件架构1200(包括图1、2A和2B、3A-3D、4A-4G、5A-5F和6的方法、模块等的实现方式)的可执行指令。硬件层1250还可以包括存储器和/或存储模块1256,该存储器和/或存储模块1256也具有可执行指令1254B。硬件层1250还可以包括其它硬件1258,该其它硬件1258可以表示任何其它硬件,诸如作为计算系统1300的一部分示出的其它硬件。
在图12的示例中,软件架构1200可以概念化为层的堆栈,其中每个层提供特定功能。例如,软件架构1200可以包括诸如操作系统1220、库1216、框架/中间件1214、应用1212和表示层1210的层。在操作上,应用1212和/或层内的其它组件可以通过软件栈调用API调用1204,并接收响应、返回值等作为消息1208。所示的层本质上是代表性的,并且并非所有软件架构都具有所有层。例如,一些移动或专用操作系统可能不提供框架/中间件层1214,而其它移动或专用操作系统可以提供这种层。其它软件架构可以包括附加或不同的层。
操作系统1220可以管理硬件资源并提供公共服务。在该示例中,操作系统1220包括内核1218、服务1222和驱动器1224。内核1218可以作为硬件和其它软件层之间的抽象层来操作。例如,内核1218可以负责存储器管理、处理器管理(例如,调度)、组件管理、联网、安全设置等。服务1222可以为其它软件层提供其它公共服务。驱动器1224可以负责控制底层硬件或与底层硬件接口连接。例如,取决于硬件配置,驱动器1224可以包括显示驱动器、摄像头驱动器、蓝牙驱动器、闪存驱动器、串行通信驱动器(例如,通用串行总线(USB)驱动器)、Wi-Fi驱动器、音频驱动器、电源管理驱动器等等。
库1216可以提供可以由应用1212和/或其它组件和/或层利用的公共基础结构。库1216通常提供允许其它软件模块以比直接与底层操作系统功能(例如,内核1218、服务1222和/或驱动器1224)直接接口连接更容易的方式执行任务的功能。库1216可以包括系统库1242(例如,C标准库),该系统库1242可以提供诸如存储器分配功能、字符串操作功能、数学功能等的功能。另外,库1216可以包括API库1244,诸如媒体库(例如,用于支持各种媒体格式(诸如MPEG4、H.264、MP3、AAC、AMR、JPG、PNG)的呈现和操作的库)、图形库(例如,可以用于渲染用于显示的2D和3D图形的OpenGL框架)、数据库的库(例如,可以提供各种关系数据库功能的SQLite)、web库(例如,可以提供web浏览功能的WebKit)等。库1216还可以包括各种其它库1246,以向应用1212和其它软件组件/模块提供许多其它API。
框架1214(有时也称为中间件)可以提供可以由应用1212和/或其它软件组件/模块利用的更高级别的公共基础结构。例如,框架1214可以提供各种图形用户界面(GUI)功能、高级资源管理、高级位置服务等。框架1214可以提供可以由应用1212和/或其它软件组件/模块利用的广谱的其它API,其中的一些可以专用于特定操作系统或平台。
应用1212包括内容共享网络客户端应用1234、内置应用1236和/或第三方应用1238。代表性内置应用1236的示例包括联系人应用、浏览器应用、书籍阅读器应用、位置应用、媒体应用、消息传递应用和/或游戏应用。第三方应用1238可以包括任何内置应用1236以及各种分类的其它应用。在实施例中,第三方应用1238(例如,由特定平台的供应商以外的实体使用ANDROIDTM或IOS软件开发套件(SDK)开发的应用)可以是在诸如ANDROIDTM、WINDOWS的移动操作系统或其它移动操作系统上运行的移动软件。在该示例中,第三方应用1238可以调用由操作系统1220提供的API调用1204,以促进在此描述的功能。
应用1212可以利用内置操作系统功能(例如,内核1218、服务1222和/或驱动器1224)、库(例如,系统库1242、API库1244和其它库1246)或创建用户界面以与系统的用户交互的框架/中间件1214。可替代地或另外地,可以通过表示层1210发生与用户的交互。在这些系统中,应用/模块“逻辑”可以与和用户交互的应用/模块的方面分离。
一些软件架构利用虚拟机。在图12的示例中,这由虚拟机1206示出。虚拟机创建软件环境,其中应用/模块可以像在物理计算装置(例如,图13的计算系统1300)上执行一样执行。虚拟机1206可以由主机操作系统(例如,操作系统1220)托管。主机操作系统通常具有虚拟机监视器1260,该虚拟机监视器1260可以管理虚拟机1206的操作以及与主机操作系统(例如,操作系统1220)的接口。软件架构在虚拟机1206内执行,并且可以包括操作系统1234、库1232、框架/中间件1230、应用1228和/或表示层1226。在虚拟机1206内执行的这些层可以与先前描述的对应层类似地或不同地操作。
图13示出了计算装置,计算系统1300的示例,其中可以实现本公开的各种实施例。在该示例中,计算系统1300可以从计算机可读介质(例如,计算机可读存储介质)读取指令1310,并执行在此所讨论的任何一种或多种方法。指令1310可以包括用于使计算系统1300执行在此所讨论的任何一种或多种方法的软件、程序、应用、小应用程序、app或其它可执行代码。例如,指令1310可以使计算系统1300执行图6的过程600。另外或可替代地,指令1310可以实现图1的工作流程100、图2A和2B的图形用户界面200和250,用于确定图3A-3D的移动数据的方法;用于编辑图4A-4G的球形视频数据的方法;用于表示从图5A-5F的球形视频数据编辑的视频的方法;图7的应用逻辑模块712或视频模块714;图12的客户端应用1234等等。指令1310可以将诸如计算系统1300的通用非编程计算机变换为被编程为执行在此所述功能的特定计算机。
在一些实施例中,计算系统1300可以作为独立装置操作或者可以耦接(例如,联网)到其它装置。在联网部署中,计算系统1300可以在服务器-客户端网络环境中以服务器或客户端装置的能力操作,或者作为对等(或分布式)网络环境中的对等装置操作。计算系统1300可以包括开关、控制器、服务器计算机、客户端计算机、个人计算机(PC)、平板计算机、膝上型计算机、上网本、机顶盒(STB)、个人数字助理(PDA)、娱乐媒体系统、蜂窝电话、智能电话、移动装置、可穿戴装置(例如,智能手表)、智能家居装置(例如,智能电器)、其它智能装置、网络装置、网络路由器、网络交换机、网络桥接器或能够顺序地或以其它方式执行指定计算系统1300要采取的动作的指令1310的任何电子装置。此外,尽管在该示例中示出了单个装置,但是术语“装置”还应被视为包括单独或联合执行指令1310以执行在此所讨论的任何一种或多种方法的装置集合。
计算系统1300可以包括处理器1304、存储器/存储装置1306和I/O组件1318,其可以被配置为例如经由总线1302彼此通信。在一些实施例中,处理器1304(例如,中央处理单元(CPU)、精简指令集计算(RISC)处理器、复杂指令集计算(CISC)处理器、图形处理单元(GPU)、数字信号处理器(DSP)、专用集成电路(ASIC)、射频集成电路(RFIC)、另一处理器或其任何合适的组合)可以包括处理器1308和处理器1312,用于执行指令1310中的一些或全部指令。术语“处理器”旨在包含可以包括可同时执行指令的两个或更多个独立处理器(有时也称为“核”)的多核处理器。虽然图13示出了多个处理器1304,但是计算系统1300可以包括具有单个核的单个处理器、具有多个核的单个处理器(例如,多核处理器)、具有单个核的多个处理器、具有多个核的多个处理器,或其任何组合。
存储器/存储装置1306可包括存储器1314(例如,主存储器或其它存储器存储装置)和存储装置1316(例如,硬盘驱动器(HDD)或固态装置(SSD)可诸如经由总线1302访问处理器1304)。存储装置1316和存储器1314存储指令1310,该指令可以体现在此所述的任何一种或多种方法或功能。存储装置1316还可以存储视频数据1350,包括球形视频数据、编辑的视频和本公开中讨论的其它数据。在计算系统1300执行期间,指令1310还可以完全或部分地驻留在存储器1314内、存储装置1316内、处理器1304内(例如,处理器的高速缓存存储器内)或其任何合适的组合。因此,存储器1314、存储装置1316和处理器1304的存储器是计算机可读介质的示例。
如在此所使用的,“计算机可读介质”是指能够临时或永久地存储指令和数据的对象,并且可以包括随机存取存储器(RAM)、只读存储器(ROM)、缓冲存储器、闪存、光学介质、磁介质、高速缓冲存储器、其它类型的存储装置(例如,可擦除可编程只读存储器(EEPROM))和/或其任何合适的组合。术语“计算机可读介质”可以包括能够存储指令1310的单个介质或多个介质(例如,集中式或分布式数据库,或相关联的高速缓存和服务器)。术语“计算机可读介质”还可以包括任何介质,或者多个介质的组合,其能够存储用于由计算机(例如,计算系统1300)执行的指令(例如,指令1310),使得指令在由计算机的一个或多个处理器(例如,处理器1304)执行时使计算机执行在此描述的任何一种或多种方法。因此,“计算机可读介质”是指单个存储设备或装置,以及包括多个存储设备或装置的“基于云的”存储系统或存储网络。术语“计算机可读介质”不包括信号本身。
I/O组件1318可以包括各种各样的组件以接收输入,提供输出,产生输出,发送信息,交换信息,捕获测量等。特定装置中包括的特定I/O组件将取决于装置的类型。例如,诸如移动电话的便携式装置可能包括触摸屏或其它这种输入机构,而无头服务器可能不包括触摸传感器。在一些实施例中,I/O组件1318可以包括输出组件1326和输入组件1328。输出组件1326可以包括可视组件(例如显示器,诸如等离子显示面板(PDP)、发光二极管(LED)显示器、液晶显示器(LCD)、投影仪或阴极射线管(CRT))、声学组件(例如,扬声器)、触觉组件(例如,振动马达、阻力机构)、其它信号发生器等。输入组件1318可以包括字母数字输入组件(例如,键盘、配置为接收字母数字输入的触摸屏、光学式光学键盘或其它字母数字输入组件)、基于指针的输入组件(例如,鼠标、触摸板、轨迹球、操纵杆、运动传感器或其它指示工具)、触知输入组件(例如,物理按钮、提供触摸或触摸手势的位置和/或力的触摸屏,或其它触觉输入组件)、音频输入组件(例如,麦克风)等。
在一些实施例中,I/O组件1318还可以包括生物度量组件1330、运动组件1334、定位组件1336或环境组件1338,或者多种其它组件。例如,生物度量组件1330可以包括用于检测表情(例如,手的表达、面部表情、声音表达、身体姿势或眼睛跟踪),测量生物信号(例如,血压、心率、体温、出汗、或者脑波),识别人(例如,语音识别、视网膜识别、面部识别、指纹识别或基于脑电图的识别)等的组件。运动组件1334可包括加速度传感器组件(例如,加速度计)、重力传感器组件、旋转传感器组件(例如,陀螺仪)等。定位组件1336可包括位置传感器组件(例如,全球定位系统(GPS)接收机组件)、高度传感器组件(例如,检测可从其导出高度的气压的高度计或气压计)、取向传感器组件(例如,磁力计)等。环境组件1338可以包括照明传感器组件(例如,光度计)、温度传感器组件(例如,检测环境温度的一个或多个温度计)、湿度传感器组件、压力传感器组件(例如,气压计)、声学传感器组件(例如,检测背景噪声的一个或多个麦克风)、接近传感器组件(例如,检测附近对象的红外传感器)、气体传感器(例如,用于检测危险气体浓度以确保安全或测量大气中污染物的气体检测传感器)或可以提供与周围物理环境相对应的指示、测量或信号的其它组件。
可以使用各种技术来实现通信。I/O组件1318可以包括通信组件1340,该通信组件1340可操作以分别经由耦接1324和耦接1322将计算系统1300耦接到WAN 1332或装置1320。例如,通信组件1340可以包括网络接口组件或与WAN 1332接口连接的其它合适的装置。在一些实施例中,通信组件1340可以包括有线通信组件、无线通信组件、蜂窝通信组件、近场通信(NFC)组件、蓝牙组件(例如,蓝牙低功耗)、Wi-Fi组件和经由其它模式提供通信的其它通信组件。装置1320可以是另一计算装置或各种外围装置中的任何一种(例如,经由USB耦接的外围装置)。
此外,通信组件1340可以检测标识符或包括可操作以检测标识符的组件。例如,通信组件1340可以包括射频识别(RFID)标签读取器组件、NFC智能标签检测组件、光学读取器组件(例如,光学传感器,其用于检测诸如通用产品代码(UPC)条形码的一维条形码、诸如快速响应(QR)代码、Aztec代码、数据矩阵、数字图形、MaxiCode、PDF417、超码、UCC RSS-2D条形码和其它光学代码的多维条形码),或声学检测组件(例如,用于识别标记音频信号的麦克风)。另外,可以经由通信组件1340导出各种信息,诸如经由因特网协议(IP)地理位置的位置、经由信号三角测量的位置、经由检测可以指示特定位置的NFC信标信号的位置等。
在各种实施例中,WAN 1332的一个或多个部分可以是ad hoc网络、内联网、外联网、虚拟专用网络(VPN)、局域网(LAN)、无线LAN(WLAN)、广域网(WAN)、无线广域网(WWAN)、城域网(MAN)、因特网、因特网的一部分、公共交换电话网(PSTN)的一部分、普通老式电话服务(POTS)网络、蜂窝电话网络、无线网络、Wi-Fi网络,另一种类型的网络,或两个或更多这种网络的组合。例如,WAN 1332或WAN 1332的一部分可以包括无线或蜂窝网络,并且耦接1324可以是码分多址(CDMA)连接、全球移动通信系统(GSM)连接或另一类型的蜂窝或无线耦接。在该示例中,耦接1324可以实现各种类型的数据传输技术中的任何一种,诸如单载波无线传输技术(1xRTT)、演进数据优化(EVDO)技术、通用分组无线服务(GPRS)技术、增强的GSM演进数据速率(EDGE)技术、包括3G的第三代合作伙伴计划(3GPP)、第四代无线(4G)网络、通用移动电信系统(UMTS)、高速分组接入(HSPA)、全球微波接入互操作性(WiMAX)、长期演进(LTE)标准、由各种标准制定组织定义的其它标准、其它远程协议或其它数据传输技术。
指令1310可以经由网络接口装置(例如,通信组件1340中包括的网络接口组件)使用传输介质并且利用若干众所周知的传输协议中的任何一种(例如,HTTP)通过WAN 1332发送或接收。类似地,可以使用传输介质经由耦接1322(例如,对等耦接)向装置1320发送或接收指令1310。术语“传输介质”包括能够存储、编码或承载用于由计算系统1300执行的指令1310的任何无形介质,并且包括数字或模拟通信信号或其它无形介质以促进这种软件的通信。
在整个说明书中,多个实例可以实现被描述为单个实例的组件、操作或结构。尽管一个或多个方法的各个操作被示出并描述为单独的操作,但是可以同时执行一个或多个单独的操作。在示例配置中作为单独组件呈现的结构和功能可以实现为组合结构或组件。类似地,作为单个组件呈现的结构和功能可以实现为单独的组件。这些和其它变化、修改、添加和改进都落入本文主题的范围内。
足够详细地描述了在此所示的实施例,以使本领域技术人员能够实践所公开的教导。其它实施例可被使用并从中导出,使得可以在不脱离本公开的范围的情况下进行结构和逻辑替换和改变。因此,具体实施方式不应被视为具有限制意义,并且各种实施例的范围由所附权利要求以及这些权利要求所赋予的等同物的全部范围来限定。
如在此所使用的,术语“或”可以以包含性或排他性的含义来解释。此外,可以为在此描述为单个实例的资源、操作或结构提供多个实例。另外,各种资源、操作、模块、引擎和数据存储之间的边界在某种程度上是任意的,并且特定操作在特定说明性配置的上下文中示出。其它功能分配被设想,并且可以落入本公开的各种实施例的范围内。通常,在示例配置中作为单独资源呈现的结构和功能可以实现为组合结构或资源。类似地,作为单个资源呈现的结构和功能可以实现为单独的资源。这些和其它变化、修改、添加和改进落入由所附权利要求表示的本公开的实施例的范围内。因此,说明书和附图应被视为说明性的而非限制性的。

Claims (20)

1.一种计算机实现的方法,包括:
使用计算装置的一个或多个处理器接收包括球形视频数据的第一视频数据;
在与所述计算装置相关联的显示屏上显示所述第一视频数据的帧的一部分,其中,所述帧的所述部分表示进入所述第一视频数据的视口,并且所述视口与所述第一视频数据的每一帧的原始位置相关联;
在所述计算装置检测到与从所述第一视频数据生成第二视频数据相关联的第一输入和与停止生成所述第二视频数据相关联的第二输入时之间的持续时间内,确定在所述显示屏显示所述第一视频数据的所述帧的所述部分时的时间段内与对象相关联的移动数据;
使用所述移动数据确定所述视口的多个新位置,其中,新位置对应于在所述显示屏显示所述第一视频数据的所述帧的所述部分时的所述时间段内与所述对象相关联的移动;以及
使用所述多个新位置从所述第一视频数据生成所述第二视频数据,其中,所述第二视频数据的帧的像素对应于在所述新位置处由所述视口包围的所述第一视频数据的所述帧的像素。
2.根据权利要求1所述的计算机实现的方法,其中,所述对象包括所述计算装置。
3.根据权利要求2所述的计算机实现的方法,进一步包括:
捕获所述计算装置的运动传感器数据或位置传感器数据中的至少一个,
其中,使用所述运动传感器数据或所述位置传感器数据中的至少一个来确定所述移动数据。
4.根据权利要求3所述的计算机实现的方法,进一步包括:
捕获表示所述计算装置的物理环境的图像数据,
其中,使用所述运动传感器数据或所述位置传感器数据中的至少一个和所述图像数据的组合来确定所述移动数据。
5.根据权利要求1所述的计算机实现的方法,其中,所述对象显示在所述第一视频数据中。
6.根据权利要求1所述的计算机实现的方法,其中,所述多个新位置对应于所述视口的多个质心,并且其中,从所述第一视频数据生成所述第二视频数据包括使用所述多个质心使所述视口重新居中。
7.根据权利要求1所述的计算机实现的方法,进一步包括:
确定旋转信息、平移信息或变换信息中的至少一个,以使所述视口从所述原始位置重新居中到所述新位置。
8.根据权利要求1所述的计算机实现的方法,进一步包括:
确定从所述第一视频数据的所述帧中提取用于所述第二视频数据的所述帧的表面或体积。
9.根据权利要求1所述的计算机实现的方法,其中,所述第二视频数据包括具有与所述显示屏的角视场对应的角视场的等角矩形帧。
10.根据权利要求1所述的计算机实现的方法,其中,所述第二视频数据的所述帧与沿着至少一个维度的角视场相关联,所述至少一个维度的角视场大于沿所述计算装置的显示屏的至少一个对应维度但小于360度的角视场。
11.根据权利要求10所述的计算机实现的方法,其中,所述第二视频数据的所述帧与沿至少一个第二维度等于360度的角视场相关联。
12.根据权利要求1所述的计算机实现的方法,进一步包括:
确定第二计算装置的可用资源;以及
基于所述可用资源,发送所述第二视频数据的裁剪版本、具有较低视频分辨率的所述第二视频数据的版本、具有较低的每秒帧速率的所述第二视频数据的版本或者具有不同视频分辨率的区域的所述第二视频数据的版本中的至少一个。
13.一种计算装置,包括:
一个或多个处理器;
显示屏;以及
包括指令的存储器,所述指令在由所述一个或多个处理器执行时使所述计算装置:
接收与大于与所述显示屏相关联的角视场的角视场相关联的第一视频数据;
在所述显示屏上显示所述第一视频数据的帧的一部分,其中,所述帧的所述部分表示进入所述第一视频数据的视口,并且所述视口与所述第一视频数据的每一帧的原始位置相关联;
接收与从所述第一视频数据生成第二视频数据相关联的所述计算装置的第一输入;
确定在所述显示屏显示所述第一视频数据的所述帧的所述部分时的时间段内与对象相关联的移动数据;
使用所述移动数据确定所述视口的多个新位置,其中,新位置对应于当所述显示屏显示所述第一视频数据的所述帧的所述部分时的所述时间段内与所述对象相关联的移动;以及
使用所述多个新位置从所述第一视频数据生成所述第二视频数据,其中,所述第二视频数据的帧的像素对应于在所述新位置处由所述视口包围的所述第一视频数据的所述帧的像素。
14.根据权利要求13所述的计算装置,进一步包括多个摄像头,其中,所述指令在执行时进一步使所述计算装置:
使用所述多个摄像头捕获多个视频;以及
将所述多个视频拼接在一起以生成所述第一视频数据。
15.根据权利要求13所述的计算装置,其中,所述对象包括所述计算装置的用户的至少一部分。
16.根据权利要求15所述的计算装置,其中,所述指令在执行时进一步使所述计算装置:
确定用于将所述第一视频数据的所述帧的所述像素映射到所述第二视频数据的所述帧的所述像素的多个坐标。
17.一种存储指令的非暂态计算机可读存储介质,所述指令在由计算装置的一个或多个处理器执行时使所述计算装置:
接收包括球形视频数据的第一视频数据;
接收与从所述第一视频数据生成第二视频数据相关联的所述计算装置的第一输入;
确定在所述计算装置显示所述第一视频数据的帧的一部分时的时间段内与对象相关联的移动数据,其中,所述帧的所述部分表示进入所述第一视频数据的视口,并且所述视口与所述第一视频数据的每一帧的原始位置相关联;
使用所述移动数据确定所述视口的多个新位置,其中,新位置对应于在所述计算装置显示所述第一视频数据的所述帧的所述部分时的时间段内与所述对象相关联的移动;以及
使用所述多个新位置从所述第一视频数据生成所述第二视频数据,其中,所述第二视频数据的帧的像素对应于在所述新位置处由所述视口包围的所述第一视频数据的所述帧的像素。
18.根据权利要求17所述的非暂态计算机可读存储介质,其中,所述指令在执行时进一步使所述计算装置:
从所述计算装置的图形缓冲器取得所述第一视频数据的所述帧的所述像素。
19.根据权利要求17所述的非暂态计算机可读存储介质,其中,所述第二视频数据的所述帧与沿着至少一个第一维度的角视场相关联,所述至少一个第一维度的角视场大于沿所述计算装置的显示屏的至少一个对应维度但小于360度的角视场,以及其中,所述第二视频数据的所述帧与沿至少一个第二维度等于360度的角视场相关联。
20.根据权利要求17所述的非暂态计算机可读存储介质,其中,所述指令在执行时进一步使所述计算装置:
向第二计算装置发送包括所述第二视频数据的短时消息,
其中,在已经观看所述第二视频数据之后或在所述第二计算装置接收所述第二视频数据的指定时间段之后删除所述第二视频数据。
CN201880023571.3A 2017-12-15 2018-12-14 一种计算机实现的方法、计算装置以及可读存储介质 Active CN110495166B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202011131842.2A CN112256127B (zh) 2017-12-15 2018-12-14 球形视频编辑

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US15/844,089 2017-12-15
US15/844,089 US10217488B1 (en) 2017-12-15 2017-12-15 Spherical video editing
PCT/US2018/065750 WO2019118877A1 (en) 2017-12-15 2018-12-14 Spherical video editing

Related Child Applications (1)

Application Number Title Priority Date Filing Date
CN202011131842.2A Division CN112256127B (zh) 2017-12-15 2018-12-14 球形视频编辑

Publications (2)

Publication Number Publication Date
CN110495166A true CN110495166A (zh) 2019-11-22
CN110495166B CN110495166B (zh) 2020-11-10

Family

ID=65410761

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201880023571.3A Active CN110495166B (zh) 2017-12-15 2018-12-14 一种计算机实现的方法、计算装置以及可读存储介质

Country Status (4)

Country Link
US (5) US10217488B1 (zh)
KR (3) KR102332950B1 (zh)
CN (1) CN110495166B (zh)
WO (1) WO2019118877A1 (zh)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112804511A (zh) * 2021-01-04 2021-05-14 烽火通信科技股份有限公司 一种动态渲染全景视频的方法和装置
US11037601B2 (en) 2017-12-15 2021-06-15 Snap Inc. Spherical video editing
WO2021134183A1 (zh) * 2019-12-30 2021-07-08 深圳市大疆创新科技有限公司 图像处理方法、装置、可移动平台、摄像装置及存储介质
WO2021237619A1 (zh) * 2020-05-28 2021-12-02 深圳市大疆创新科技有限公司 视频文件编辑方法、设备、系统及计算机可读存储介质
CN114155356A (zh) * 2021-12-07 2022-03-08 大连工业大学 基于Unity的全空间分布光度计虚拟现实仿真方法

Families Citing this family (101)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
PL2023812T3 (pl) * 2006-05-19 2017-07-31 The Queen's Medical Center Układ śledzenia ruchu dla adaptacyjnego obrazowania w czasie rzeczywistym i spektroskopii
US10509466B1 (en) 2011-05-11 2019-12-17 Snap Inc. Headwear with computer and optical element for use therewith and systems utilizing same
US10439972B1 (en) 2013-05-30 2019-10-08 Snap Inc. Apparatus and method for maintaining a message thread with opt-in permanence for entries
US10283162B2 (en) 2014-02-05 2019-05-07 Avatar Merger Sub II, LLC Method for triggering events in a video
US9276886B1 (en) 2014-05-09 2016-03-01 Snapchat, Inc. Apparatus and method for dynamically configuring application component tiles
US9396354B1 (en) 2014-05-28 2016-07-19 Snapchat, Inc. Apparatus and method for automated privacy protection in distributed images
US9537811B2 (en) 2014-10-02 2017-01-03 Snap Inc. Ephemeral gallery of ephemeral messages
US9225897B1 (en) 2014-07-07 2015-12-29 Snapchat, Inc. Apparatus and method for supplying content aware photo filters
US10775996B2 (en) 2014-11-26 2020-09-15 Snap Inc. Hybridization of voice notes and calling
US9385983B1 (en) 2014-12-19 2016-07-05 Snapchat, Inc. Gallery of messages from individuals with a shared interest
US10311916B2 (en) 2014-12-19 2019-06-04 Snap Inc. Gallery of videos set to an audio time line
KR102163528B1 (ko) 2015-03-18 2020-10-08 스냅 인코포레이티드 지오-펜스 인가 프로비저닝
US9668217B1 (en) 2015-05-14 2017-05-30 Snap Inc. Systems and methods for wearable initiated handshaking
US10503264B1 (en) 2015-06-16 2019-12-10 Snap Inc. Radial gesture navigation
US10354425B2 (en) 2015-12-18 2019-07-16 Snap Inc. Method and system for providing context relevant media augmentation
US10055895B2 (en) 2016-01-29 2018-08-21 Snap Inc. Local augmented reality persistent sticker objects
US10474353B2 (en) 2016-05-31 2019-11-12 Snap Inc. Application control using a gesture based trigger
US10768639B1 (en) 2016-06-30 2020-09-08 Snap Inc. Motion and image-based control system
US10102423B2 (en) 2016-06-30 2018-10-16 Snap Inc. Object modeling and replacement in a video stream
US10609036B1 (en) 2016-10-10 2020-03-31 Snap Inc. Social media post subscribe requests for buffer user accounts
KR20180051288A (ko) * 2016-11-08 2018-05-16 삼성전자주식회사 디스플레이 장치 및 그 제어 방법
US10867445B1 (en) * 2016-11-16 2020-12-15 Amazon Technologies, Inc. Content segmentation and navigation
US11272160B2 (en) * 2017-06-15 2022-03-08 Lenovo (Singapore) Pte. Ltd. Tracking a point of interest in a panoramic video
US10579869B1 (en) 2017-07-18 2020-03-03 Snap Inc. Virtual object machine learning
US11323398B1 (en) 2017-07-31 2022-05-03 Snap Inc. Systems, devices, and methods for progressive attachments
JP2019036914A (ja) * 2017-08-21 2019-03-07 ウエストユニティス株式会社 連携表示システム
US10591730B2 (en) 2017-08-25 2020-03-17 II Jonathan M. Rodriguez Wristwatch based interface for augmented reality eyewear
US11531357B1 (en) 2017-10-05 2022-12-20 Snap Inc. Spatial vector-based drone control
US11847426B2 (en) 2017-11-08 2023-12-19 Snap Inc. Computer vision based sign language interpreter
US10567321B2 (en) 2018-01-02 2020-02-18 Snap Inc. Generating interactive messages with asynchronous media content
US10523606B2 (en) 2018-01-02 2019-12-31 Snap Inc. Generating interactive messages with asynchronous media content
US11063889B2 (en) 2018-06-08 2021-07-13 Snap Inc. Generating interactive messages with entity assets
US10890653B2 (en) * 2018-08-22 2021-01-12 Google Llc Radar-based gesture enhancement for voice interfaces
US10770035B2 (en) 2018-08-22 2020-09-08 Google Llc Smartphone-based radar system for facilitating awareness of user presence and orientation
US10698603B2 (en) 2018-08-24 2020-06-30 Google Llc Smartphone-based radar system facilitating ease and accuracy of user interactions with displayed objects in an augmented-reality interface
US10788880B2 (en) 2018-10-22 2020-09-29 Google Llc Smartphone-based radar system for determining user intention in a lower-power mode
US10761611B2 (en) 2018-11-13 2020-09-01 Google Llc Radar-image shaper for radar-based applications
US11099862B1 (en) * 2018-11-30 2021-08-24 Snap Inc. Interface to configure media content
US11323684B2 (en) * 2018-11-30 2022-05-03 Ricoh Company, Ltd. Apparatus, system, and method of processing image data to be relayed
US10796482B2 (en) 2018-12-05 2020-10-06 Snap Inc. 3D hand shape and pose estimation
US11012390B1 (en) 2019-03-28 2021-05-18 Snap Inc. Media content response in a messaging system
US11019011B1 (en) 2019-03-29 2021-05-25 Snap Inc. Messaging system with discard user interface
US11036368B1 (en) 2019-03-29 2021-06-15 Snap Inc. Messaging system with message transmission user interface
KR102094397B1 (ko) * 2019-04-19 2020-03-27 (주)코어센스 유니티 프로젝트 내 모션센서 장비를 통한 애니메이션 익스포트 시스템
US11106342B1 (en) 2019-06-03 2021-08-31 Snap Inc. User interfaces to facilitate multiple modes of electronic communication
US11151794B1 (en) 2019-06-28 2021-10-19 Snap Inc. Messaging system with augmented reality messages
US10997693B2 (en) * 2019-07-03 2021-05-04 Gopro, Inc. Apparatus and methods for non-uniform processing of image data
US11307747B2 (en) 2019-07-11 2022-04-19 Snap Inc. Edge gesture interface with smart interactions
CN114175630A (zh) * 2019-07-28 2022-03-11 谷歌有限责任公司 利用注视点网格渲染沉浸式视频内容的方法、系统和介质
US11905675B2 (en) * 2019-08-05 2024-02-20 Topcon Positioning Systems, Inc. Vision-based blade positioning
US11282547B1 (en) * 2019-08-30 2022-03-22 Gopro, Inc. Interface for framing videos
US11336832B1 (en) * 2019-08-30 2022-05-17 Gopro, Inc. Systems and methods for horizon leveling videos
CN114391160A (zh) 2019-09-09 2022-04-22 斯纳普公司 根据立体相机的手部姿势估计
US11792472B2 (en) * 2019-09-18 2023-10-17 Wayne Fueling Systems Llc Schedule-based uninterrupted buffering and streaming
US11958183B2 (en) 2019-09-19 2024-04-16 The Research Foundation For The State University Of New York Negotiation-based human-robot collaboration via augmented reality
US11935288B2 (en) 2019-12-01 2024-03-19 Pointivo Inc. Systems and methods for generating of 3D information on a user display from processing of sensor data for objects, components or features of interest in a scene and user navigation thereon
US11216663B1 (en) * 2020-12-01 2022-01-04 Pointivo, Inc. Systems and methods for generating of 3D information on a user display from processing of sensor data for objects, components or features of interest in a scene and user navigation thereon
US11064118B1 (en) * 2019-12-18 2021-07-13 Gopro, Inc. Systems and methods for dynamic stabilization adjustment
US11062498B1 (en) 2019-12-30 2021-07-13 Snap Inc. Animated pull-to-refresh
US11488358B2 (en) 2020-02-05 2022-11-01 Snap Inc. Augmented reality session creation using skeleton tracking
US11265274B1 (en) 2020-02-28 2022-03-01 Snap Inc. Access and routing of interactive messages
US11409368B2 (en) 2020-03-26 2022-08-09 Snap Inc. Navigating through augmented reality content
US11675494B2 (en) 2020-03-26 2023-06-13 Snap Inc. Combining first user interface content into second user interface
US11960651B2 (en) 2020-03-30 2024-04-16 Snap Inc. Gesture-based shared AR session creation
US11455078B1 (en) 2020-03-31 2022-09-27 Snap Inc. Spatial navigation and creation interface
US11538231B2 (en) * 2020-04-06 2022-12-27 Nvidia Corporation Projecting images captured using fisheye lenses for feature detection in autonomous machine applications
KR20230029968A (ko) 2020-06-30 2023-03-03 스냅 인코포레이티드 실시간 가상 효과들을 위한 골격 추적
CN111887834B (zh) * 2020-07-15 2021-11-02 西安电子科技大学 基于多示例学习和进化优化的逐搏心率检测方法
US11200918B1 (en) * 2020-07-29 2021-12-14 Gopro, Inc. Video framing based on device orientation
US11832015B2 (en) 2020-08-13 2023-11-28 Snap Inc. User interface for pose driven virtual effects
US11417004B2 (en) * 2020-08-24 2022-08-16 Vmware, Inc. Variable transforms for three-dimensional engines
US11360733B2 (en) 2020-09-10 2022-06-14 Snap Inc. Colocated shared augmented reality without shared backend
US11671559B2 (en) 2020-09-30 2023-06-06 Snap Inc. Real time video editing
CN112203110B (zh) * 2020-12-03 2021-04-06 首望体验科技文化有限公司 适配于720胶囊型屏幕的直播方法、装置及相关产品
US11797162B2 (en) 2020-12-22 2023-10-24 Snap Inc. 3D painting on an eyewear device
US11782577B2 (en) 2020-12-22 2023-10-10 Snap Inc. Media content player on an eyewear device
WO2022146729A1 (en) 2020-12-29 2022-07-07 Snap Inc. Body ui for augmented reality components
EP4272059A1 (en) 2020-12-31 2023-11-08 Snap Inc. Electronic communication interface with haptic feedback response
CN116685941A (zh) 2020-12-31 2023-09-01 斯纳普公司 具有触觉反馈增强的媒体内容项
US11978283B2 (en) 2021-03-16 2024-05-07 Snap Inc. Mirroring device with a hands-free mode
US11734959B2 (en) 2021-03-16 2023-08-22 Snap Inc. Activating hands-free mode on mirroring device
US11798201B2 (en) 2021-03-16 2023-10-24 Snap Inc. Mirroring device with whole-body outfits
US11908243B2 (en) 2021-03-16 2024-02-20 Snap Inc. Menu hierarchy navigation on electronic mirroring devices
US11809633B2 (en) 2021-03-16 2023-11-07 Snap Inc. Mirroring device with pointing based navigation
USD998637S1 (en) 2021-03-16 2023-09-12 Snap Inc. Display screen or portion thereof with a graphical user interface
EP4064691A1 (en) * 2021-03-23 2022-09-28 Ricoh Company, Ltd. Communication management device, image communication system, communication management method, and carrier means
US11928306B2 (en) 2021-05-19 2024-03-12 Snap Inc. Touchpad navigation for augmented reality display device
US11880542B2 (en) 2021-05-19 2024-01-23 Snap Inc. Touchpad input for augmented reality display device
US11647294B2 (en) * 2021-05-25 2023-05-09 Shanghai Bilibili Technology Co., Ltd. Panoramic video data process
US11818414B2 (en) * 2021-08-06 2023-11-14 Sony Group Corporation Telepresence through OTA VR broadcast streams
US11670059B2 (en) 2021-09-01 2023-06-06 Snap Inc. Controlling interactive fashion based on body gestures
CN114125556B (zh) * 2021-11-12 2024-03-26 深圳麦风科技有限公司 视频数据的处理方法、终端和存储介质
US11960784B2 (en) 2021-12-07 2024-04-16 Snap Inc. Shared augmented reality unboxing experience
US11748958B2 (en) 2021-12-07 2023-09-05 Snap Inc. Augmented reality unboxing experience
US11861801B2 (en) 2021-12-30 2024-01-02 Snap Inc. Enhanced reading with AR glasses
US11579747B1 (en) 2022-03-14 2023-02-14 Snap Inc. 3D user interface depth forgiveness
US11949527B2 (en) 2022-04-25 2024-04-02 Snap Inc. Shared augmented reality experience in video chat
US11960653B2 (en) 2022-05-10 2024-04-16 Snap Inc. Controlling augmented reality effects through multi-modal human interaction
US11948266B1 (en) 2022-09-09 2024-04-02 Snap Inc. Virtual object manipulation with gestures in a messaging system
US11797099B1 (en) 2022-09-19 2023-10-24 Snap Inc. Visual and audio wake commands
US11747912B1 (en) 2022-09-22 2023-09-05 Snap Inc. Steerable camera for AR hand tracking

Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103279187A (zh) * 2013-05-09 2013-09-04 西安电子科技大学 一种用于构建多场景虚拟全景空间的方法及智能终端
CN203405772U (zh) * 2013-09-09 2014-01-22 北京诺亦腾科技有限公司 一种基于运动捕捉的浸入式虚拟现实系统
WO2014111421A1 (en) * 2013-01-18 2014-07-24 Canon Kabushiki Kaisha Method of displaying a region of interest in a video stream
CN106095235A (zh) * 2016-06-07 2016-11-09 腾讯科技(深圳)有限公司 基于虚拟现实的控制方法和装置
WO2017116952A1 (en) * 2015-12-29 2017-07-06 Dolby Laboratories Licensing Corporation Viewport independent image coding and rendering
CN107124589A (zh) * 2017-05-24 2017-09-01 武汉大学 基于Cardboard的360度沉浸式远程视频监控系统及方法
US20170347026A1 (en) * 2016-05-24 2017-11-30 Nokia Technologies Oy Method and an apparatus and a computer program for encoding media content
WO2017205794A1 (en) * 2016-05-26 2017-11-30 Vid Scale, Inc. Methods and apparatus of viewport adaptive 360 degree video delivery
US20170345205A1 (en) * 2016-05-26 2017-11-30 Mediatek Inc. Method and apparatus for signaling region of interests

Family Cites Families (166)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5758257A (en) 1994-11-29 1998-05-26 Herz; Frederick System and method for scheduling broadcast of and access to video programs and other data using customer profiles
US5978773A (en) 1995-06-20 1999-11-02 Neomedia Technologies, Inc. System and method for using an ordinary article of commerce to access a remote computer
EP0814611B1 (de) 1996-06-17 2002-08-28 Siemens Aktiengesellschaft Kommunikationssystem und Verfahren zur Aufnahme und Verwaltung digitaler Bilder
JP3783331B2 (ja) 1997-05-14 2006-06-07 ブラザー工業株式会社 メール送信システム、メール受信システムおよび記録媒体
US6158044A (en) 1997-05-21 2000-12-05 Epropose, Inc. Proposal based architecture system
IL128576A (en) 1997-06-17 2004-03-28 Purdue Pharma Lp A self-destructing document and an e-mail system
FI973945A (fi) 1997-10-13 1999-04-14 Nokia Telecommunications Oy Lyhytsanomia välittävä tiedonsiirtojärjestelmä
US6484196B1 (en) 1998-03-20 2002-11-19 Advanced Web Solutions Internet messaging system and method for use in computer networks
US7173651B1 (en) 1998-06-02 2007-02-06 Knowles Andrew T Apparatus and system for prompt digital photo delivery and archival
US6205432B1 (en) 1998-06-05 2001-03-20 Creative Internet Concepts, Llc Background advertising system
US6324569B1 (en) 1998-09-23 2001-11-27 John W. L. Ogilvie Self-removing email verified or designated as such by a message distributor for the convenience of a recipient
US6711608B1 (en) 1998-09-23 2004-03-23 John W. L. Ogilvie Method for including a self-removing code in a self-removing message
US6757713B1 (en) 1998-09-23 2004-06-29 John W. L. Ogilvie Method for including a self-removing indicator in a self-removing message
US6701347B1 (en) 1998-09-23 2004-03-02 John W. L. Ogilvie Method for including a self-removing code in a self-removing email message that contains an advertisement
US6167435A (en) 1998-10-30 2000-12-26 Netcreations, Inc. Double opt-in™ method and system for verifying subscriptions to information distribution services
US7240199B2 (en) 2000-12-06 2007-07-03 Rpost International Limited System and method for verifying delivery and integrity of electronic messages
US7149893B1 (en) 1999-09-07 2006-12-12 Poofaway.Com, Inc. System and method for enabling the originator of an electronic mail message to preset an expiration time, date, and/or event, and to control processing or handling by a recipient
US7124164B1 (en) 2001-04-17 2006-10-17 Chemtob Helen J Method and apparatus for providing group interaction via communications networks
US20010056574A1 (en) * 2000-06-26 2001-12-27 Richards Angus Duncan VTV system
US6505123B1 (en) 2000-07-24 2003-01-07 Weatherbank, Inc. Interactive weather advisory system
US6754621B1 (en) 2000-10-06 2004-06-22 Andrew Cunningham Asynchronous hypertext messaging system and method
JP2002132647A (ja) 2000-10-19 2002-05-10 Kizna Corp 電子掲示板及び電子掲示板システム
US7243163B1 (en) 2001-08-07 2007-07-10 Good Technology, Inc. System and method for full wireless synchronization of a data processing apparatus with a messaging system
JP4440503B2 (ja) 2001-09-20 2010-03-24 富士通株式会社 情報一覧作成装置及びそのプログラム
US20100098702A1 (en) 2008-09-16 2010-04-22 Longgui Wang Method of treating androgen independent prostate cancer
US7356564B2 (en) 2002-01-09 2008-04-08 At&T Delaware Intellectual Property, Inc. Method, system, and apparatus for providing self-destructing electronic mail messages
US20030217106A1 (en) 2002-03-25 2003-11-20 Eytan Adar System and method for profiling clients within a system for harvesting community knowledge
US7278168B1 (en) 2002-11-27 2007-10-02 Adobe Systems Incorporated Dynamic enabling of functionality in electronic document readers
US7411493B2 (en) 2003-03-01 2008-08-12 User-Centric Ip, L.P. User-centric event reporting
US6978147B2 (en) 2003-03-19 2005-12-20 Motorola, Inc. Wireless messaging device with selectable scroll display and message pre-fetch
GB0308991D0 (en) 2003-04-17 2003-05-28 Psion Digital Ltd A data access replication or communication system comprising a distributed software application
US7703140B2 (en) 2003-09-30 2010-04-20 Guardian Data Storage, Llc Method and system for securing digital assets using process-driven security policies
US7191221B2 (en) 2003-10-30 2007-03-13 International Business Machines Corporation Method for managing electronic mail receipts using audio-visual notification enhancements
US7535890B2 (en) 2003-12-18 2009-05-19 Ayalogic, Inc. System and method for instant VoIP messaging
WO2005062217A1 (ja) 2003-12-19 2005-07-07 Fujitsu Limited プレゼンス情報管理方法、及び、サーバ
US7478402B2 (en) 2004-02-12 2009-01-13 Microsoft Corporation Configurable message pipelines
US7904510B2 (en) 2004-02-23 2011-03-08 Microsoft Corporation Systems and methods for managing discussion threads based on ratings
US7912904B2 (en) 2004-03-31 2011-03-22 Google Inc. Email system with conversation-centric user interface
US7607096B2 (en) 2004-05-01 2009-10-20 Microsoft Corporation System and method for a user interface directed to discovering and publishing presence information on a network
US7593740B2 (en) 2004-05-12 2009-09-22 Google, Inc. Location-based social software for mobile devices
WO2006005814A1 (fr) 2004-05-27 2006-01-19 France Telecom Procede et installation de transmission d’un message a duree de validite predeterminee a destination d’un terminal d’abonne
US7519670B2 (en) 2004-08-12 2009-04-14 International Business Machines Corporation Method for disappearing ink for text messaging
US8745132B2 (en) 2004-09-10 2014-06-03 Silver State Intellectual Technologies, Inc. System and method for audio and video portable publishing system
US7496347B2 (en) 2004-11-12 2009-02-24 Velocita Wireless Llc Method and apparatus for providing secure wireless communication
US8396456B2 (en) 2005-06-28 2013-03-12 Avaya Integrated Cabinet Solutions Inc. Visual voicemail management
US8266219B2 (en) 2005-07-20 2012-09-11 Research In Motion Limited Method and system for instant messaging conversation security
US7610345B2 (en) 2005-07-28 2009-10-27 Vaporstream Incorporated Reduced traceability electronic message system and method
CN1794708A (zh) 2005-07-29 2006-06-28 华为技术有限公司 呈现业务系统及发布呈现信息的方法
US8332475B2 (en) 2005-08-22 2012-12-11 Triplay Communications Ltd. Messaging system and method
US7949107B2 (en) 2005-08-24 2011-05-24 International Business Machines Corporation Method, system, and computer program product for providing privacy measures in instant messaging systems
US20070073823A1 (en) 2005-09-29 2007-03-29 International Business Machines Corporation Method and apparatus to secure and retrieve instant messages
US8284663B2 (en) 2005-10-14 2012-10-09 Turbine, Inc. Selectively ordered protocol for unreliable channels
ITMI20052290A1 (it) 2005-11-30 2007-06-01 Pasqua Roberto Della Servizio di messaggistica istantanea con interfaccia utente minimizzata
US7856360B2 (en) 2006-01-30 2010-12-21 Hoozware, Inc. System for providing a service to venues where people aggregate
EP2024811A4 (en) 2006-02-10 2010-11-10 Strands Inc SYSTEMS AND METHOD FOR PRIORIZING FILES OF MOBILE MEDIA PLAYERS
US8112478B2 (en) 2006-03-13 2012-02-07 Oracle International Corporation Email and discussion forum system
US8255473B2 (en) 2006-04-04 2012-08-28 International Business Machines Corporation Caching message fragments during real-time messaging conversations
US9304675B2 (en) 2006-09-06 2016-04-05 Apple Inc. Portable electronic device for instant messaging
US7971156B2 (en) 2007-01-12 2011-06-28 International Business Machines Corporation Controlling resource access based on user gesturing in a 3D captured image stream of the user
USRE47534E1 (en) 2007-04-23 2019-07-23 Ramot At Tel Aviv University Ltd. System, method and a computer readable medium for providing an output image
US20080270938A1 (en) 2007-04-29 2008-10-30 Elizabeth Marie Carlson System for self-registering visitor information with geographic specificity and searchable fields
US8170957B2 (en) 2007-08-08 2012-05-01 Sinart Points Technology, Inc. System and method for managing digital interactions
US8909714B2 (en) 2007-08-21 2014-12-09 Microsoft Corporation Electronic mail delay adaptation
US8244593B2 (en) 2007-11-20 2012-08-14 Pure Verticals, Inc. Method and system for monetizing content
KR101387527B1 (ko) 2007-12-06 2014-04-23 엘지전자 주식회사 단말기 및 그 메뉴 아이콘 디스플레이 방법
US8214443B2 (en) 2008-03-05 2012-07-03 Aol Inc. Electronic mail forwarding service
KR20100126850A (ko) 2008-03-28 2010-12-02 셀트러스트 코포레이션 보안형 단문 메시징 서비스 및 멀티미디어 메시징 서비스를 위한 시스템 및 방법
US20100082427A1 (en) 2008-09-30 2010-04-01 Yahoo! Inc. System and Method for Context Enhanced Ad Creation
US8719238B2 (en) 2009-01-22 2014-05-06 Sunstein Kann Murphy & Timbers LLP Office-based notification messaging system
US8214446B1 (en) 2009-06-04 2012-07-03 Imdb.Com, Inc. Segmenting access to electronic message boards
US8479080B1 (en) 2009-07-12 2013-07-02 Apple Inc. Adaptive over-provisioning in memory systems
KR101051389B1 (ko) * 2009-08-31 2011-07-22 주식회사 이미지넥스트 적응적 배경 기반의 객체 검출 및 추적 장치 및 방법
US20110099507A1 (en) 2009-10-28 2011-04-28 Google Inc. Displaying a collection of interactive elements that trigger actions directed to an item
CN102118419B (zh) 2009-12-30 2014-07-16 华为技术有限公司 一种图片信息的传输方法、装置和通信系统
WO2011101784A1 (en) 2010-02-16 2011-08-25 Tigertext Inc. A messaging system apparatuses circuits and methods of operation thereof
US20110213845A1 (en) 2010-02-26 2011-09-01 Research In Motion Limited Automatic deletion of electronic messages
US8433755B2 (en) 2010-04-07 2013-04-30 Apple Inc. Dynamic designation of a central distributor in a multi-participant conference
WO2011133824A1 (en) 2010-04-21 2011-10-27 Michael Jerry Saylor Multimodal interactive voice response system
US20110320373A1 (en) 2010-06-25 2011-12-29 Microsoft Corporation Product conversations among social groups
WO2012000107A1 (en) 2010-07-01 2012-01-05 Absolute Software Corporation Automatic creation and modification of dynamic geofences
US8233887B2 (en) 2010-07-28 2012-07-31 Sprint Communications Company L.P. Covert message redaction and recovery in a wireless communication device
US8457668B2 (en) 2011-01-18 2013-06-04 Claremont Speede Mobile sender initiated SMS message deletion method and system
US20120209921A1 (en) 2011-02-10 2012-08-16 International Business Machines Corporation Instant Message Management Method and Apparatus
US9331972B2 (en) 2011-03-31 2016-05-03 Loment, Inc. Automatic expiration of messages communicated to an end user communication device
US10509466B1 (en) 2011-05-11 2019-12-17 Snap Inc. Headwear with computer and optical element for use therewith and systems utilizing same
WO2013008251A2 (en) 2011-07-08 2013-01-17 Hughes Systique India Private Limited Method and system for social networking in a restricted connectivity environment
US20130071093A1 (en) 2011-09-16 2013-03-21 William Turner Hanks Maintaining viewer activity information of a recorded program for program deletion decisions
CA2861391A1 (en) * 2012-01-18 2013-07-25 Logos Technologies Llc Method, device, and system for computing a spherical projection image based on two-dimensional images
US20130194301A1 (en) 2012-01-30 2013-08-01 Burn Note, Inc. System and method for securely transmiting sensitive information
US20130201328A1 (en) * 2012-02-08 2013-08-08 Hing Ping Michael CHUNG Multimedia processing as a service
US9560006B2 (en) 2012-07-26 2017-01-31 Google Inc. Method and apparatus for expiring messages in electronic communications
US20150199082A1 (en) 2012-11-13 2015-07-16 Google Inc. Displaying actionable items in an overscroll area
US20140201527A1 (en) 2013-01-17 2014-07-17 Zohar KRIVOROT Systems and methods for secure and private delivery of content
US9264463B2 (en) 2013-03-15 2016-02-16 Facebook, Inc. Method and system of managing ephemeral post in a social networking system
US9736218B2 (en) 2013-04-24 2017-08-15 Blackberry Limited Device, system and method for processing character data
US9742713B2 (en) 2013-05-30 2017-08-22 Snap Inc. Apparatus and method for maintaining a message thread with opt-in permanence for entries
US10439972B1 (en) 2013-05-30 2019-10-08 Snap Inc. Apparatus and method for maintaining a message thread with opt-in permanence for entries
US9705831B2 (en) 2013-05-30 2017-07-11 Snap Inc. Apparatus and method for maintaining a message thread with opt-in permanence for entries
US8914752B1 (en) 2013-08-22 2014-12-16 Snapchat, Inc. Apparatus and method for accelerated display of ephemeral messages
US9083770B1 (en) 2013-11-26 2015-07-14 Snapchat, Inc. Method and system for integrating real time communication features in applications
CA2863124A1 (en) 2014-01-03 2015-07-03 Investel Capital Corporation User content sharing system and method with automated external content integration
US9628950B1 (en) 2014-01-12 2017-04-18 Investment Asset Holdings Llc Location-based messaging
US10283162B2 (en) 2014-02-05 2019-05-07 Avatar Merger Sub II, LLC Method for triggering events in a video
US20150227601A1 (en) 2014-02-13 2015-08-13 Actifio, Inc. Virtual data backup
US8909725B1 (en) 2014-03-07 2014-12-09 Snapchat, Inc. Content delivery network for ephemeral objects
US9479909B2 (en) 2014-03-20 2016-10-25 Tigertext, Inc. Method of sending messages to devices not configured to receive them
US9276886B1 (en) 2014-05-09 2016-03-01 Snapchat, Inc. Apparatus and method for dynamically configuring application component tiles
US9396354B1 (en) 2014-05-28 2016-07-19 Snapchat, Inc. Apparatus and method for automated privacy protection in distributed images
US9537811B2 (en) 2014-10-02 2017-01-03 Snap Inc. Ephemeral gallery of ephemeral messages
US9113301B1 (en) 2014-06-13 2015-08-18 Snapchat, Inc. Geo-location based event gallery
CN107111828B (zh) 2014-10-24 2021-05-25 斯纳普公司 消息的优先级排序
US9225897B1 (en) 2014-07-07 2015-12-29 Snapchat, Inc. Apparatus and method for supplying content aware photo filters
US11783898B2 (en) 2014-09-18 2023-10-10 Jonker Llc Ephemeral storage elements, circuits, and systems
US10824654B2 (en) 2014-09-18 2020-11-03 Snap Inc. Geolocation-based pictographs
US11216869B2 (en) 2014-09-23 2022-01-04 Snap Inc. User interface to augment an image using geolocation
US10284508B1 (en) 2014-10-02 2019-05-07 Snap Inc. Ephemeral gallery of ephemeral messages with opt-in permanence
US9385983B1 (en) 2014-12-19 2016-07-05 Snapchat, Inc. Gallery of messages from individuals with a shared interest
US9854219B2 (en) 2014-12-19 2017-12-26 Snap Inc. Gallery of videos set to an audio time line
US10311916B2 (en) 2014-12-19 2019-06-04 Snap Inc. Gallery of videos set to an audio time line
US9754355B2 (en) 2015-01-09 2017-09-05 Snap Inc. Object recognition based photo filters
US9111164B1 (en) 2015-01-19 2015-08-18 Snapchat, Inc. Custom functional patterns for optical barcodes
US10127714B1 (en) * 2015-01-27 2018-11-13 Google Llc Spherical three-dimensional video rendering for virtual reality
US9294425B1 (en) 2015-02-06 2016-03-22 Snapchat, Inc. Storage and processing of ephemeral messages
US9148424B1 (en) 2015-03-13 2015-09-29 Snapchat, Inc. Systems and methods for IP-based intrusion detection
KR102163528B1 (ko) 2015-03-18 2020-10-08 스냅 인코포레이티드 지오-펜스 인가 프로비저닝
US9482882B1 (en) 2015-04-15 2016-11-01 Snapchat, Inc. Eyewear having selectively exposable feature
US9482883B1 (en) 2015-04-15 2016-11-01 Snapchat, Inc. Eyewear having linkage assembly between a temple and a frame
US9881094B2 (en) 2015-05-05 2018-01-30 Snap Inc. Systems and methods for automated local story generation and curation
KR20180004218A (ko) 2015-05-06 2018-01-10 스냅 인코포레이티드 단기 그룹 채팅을 위한 시스템 및 방법
US10503264B1 (en) 2015-06-16 2019-12-10 Snap Inc. Radial gesture navigation
WO2017037962A1 (ja) * 2015-08-28 2017-03-09 株式会社タカラトミー 頭部装着型ディスプレイを備えた情報処理装置
US9652896B1 (en) 2015-10-30 2017-05-16 Snap Inc. Image based tracking in augmented reality systems
US20170161382A1 (en) 2015-12-08 2017-06-08 Snapchat, Inc. System to correlate video data and contextual data
US10354425B2 (en) 2015-12-18 2019-07-16 Snap Inc. Method and system for providing context relevant media augmentation
US10055895B2 (en) 2016-01-29 2018-08-21 Snap Inc. Local augmented reality persistent sticker objects
WO2017142353A1 (ko) * 2016-02-17 2017-08-24 엘지전자 주식회사 360 비디오를 전송하는 방법, 360 비디오를 수신하는 방법, 360 비디오 전송 장치, 360 비디오 수신 장치
US11900418B2 (en) 2016-04-04 2024-02-13 Snap Inc. Mutable geo-fencing system
US10686899B2 (en) 2016-04-06 2020-06-16 Snap Inc. Messaging achievement pictograph display system
US9681265B1 (en) 2016-06-28 2017-06-13 Snap Inc. System to track engagement of media items
US10102423B2 (en) 2016-06-30 2018-10-16 Snap Inc. Object modeling and replacement in a video stream
US10768639B1 (en) 2016-06-30 2020-09-08 Snap Inc. Motion and image-based control system
JP6093473B1 (ja) * 2016-08-19 2017-03-08 株式会社コロプラ 情報処理方法及び当該情報処理方法をコンピュータに実行させるためのプログラム
US20180103197A1 (en) * 2016-10-06 2018-04-12 Gopro, Inc. Automatic Generation of Video Using Location-Based Metadata Generated from Wireless Beacons
US10652553B2 (en) * 2016-12-07 2020-05-12 Qualcomm Incorporated Systems and methods of signaling of regions of interest
US10368047B2 (en) * 2017-02-15 2019-07-30 Adone Inc. Six-degree of freedom video playback of a single monoscopic 360-degree video
US10579869B1 (en) 2017-07-18 2020-03-03 Snap Inc. Virtual object machine learning
US10591730B2 (en) 2017-08-25 2020-03-17 II Jonathan M. Rodriguez Wristwatch based interface for augmented reality eyewear
US10217488B1 (en) 2017-12-15 2019-02-26 Snap Inc. Spherical video editing
US10962809B1 (en) 2018-01-10 2021-03-30 Snap Inc. Eyewear device with finger activated touch sensor
US11092998B1 (en) 2018-01-12 2021-08-17 Snap Inc. Eyewear device with fingerprint sensor for user input
US10687039B1 (en) * 2018-05-16 2020-06-16 Gopro, Inc. Systems and methods for identifying viewing directions for video content
US11227626B1 (en) 2018-05-21 2022-01-18 Snap Inc. Audio response messages
KR20210058969A (ko) 2018-09-28 2021-05-24 스냅 인코포레이티드 웨어러블 또는 모바일 디바이스에서 제스처, 착용, 활동 또는 휴대 검출을 위한 신경 네트워크 시스템
US10796482B2 (en) 2018-12-05 2020-10-06 Snap Inc. 3D hand shape and pose estimation
US11012390B1 (en) 2019-03-28 2021-05-18 Snap Inc. Media content response in a messaging system
US11036368B1 (en) 2019-03-29 2021-06-15 Snap Inc. Messaging system with message transmission user interface
US11106342B1 (en) 2019-06-03 2021-08-31 Snap Inc. User interfaces to facilitate multiple modes of electronic communication
US11307747B2 (en) 2019-07-11 2022-04-19 Snap Inc. Edge gesture interface with smart interactions
CN114391160A (zh) 2019-09-09 2022-04-22 斯纳普公司 根据立体相机的手部姿势估计
US11169600B1 (en) 2019-12-06 2021-11-09 Snap Inc. Virtual object display interface between a wearable device and a mobile device
US11087728B1 (en) 2019-12-21 2021-08-10 Snap Inc. Computer vision and mapping for audio applications
US11062498B1 (en) 2019-12-30 2021-07-13 Snap Inc. Animated pull-to-refresh
US11488358B2 (en) 2020-02-05 2022-11-01 Snap Inc. Augmented reality session creation using skeleton tracking
US11675494B2 (en) 2020-03-26 2023-06-13 Snap Inc. Combining first user interface content into second user interface
US11409368B2 (en) 2020-03-26 2022-08-09 Snap Inc. Navigating through augmented reality content
US11960651B2 (en) 2020-03-30 2024-04-16 Snap Inc. Gesture-based shared AR session creation

Patent Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2014111421A1 (en) * 2013-01-18 2014-07-24 Canon Kabushiki Kaisha Method of displaying a region of interest in a video stream
CN103279187A (zh) * 2013-05-09 2013-09-04 西安电子科技大学 一种用于构建多场景虚拟全景空间的方法及智能终端
CN203405772U (zh) * 2013-09-09 2014-01-22 北京诺亦腾科技有限公司 一种基于运动捕捉的浸入式虚拟现实系统
WO2017116952A1 (en) * 2015-12-29 2017-07-06 Dolby Laboratories Licensing Corporation Viewport independent image coding and rendering
US20170347026A1 (en) * 2016-05-24 2017-11-30 Nokia Technologies Oy Method and an apparatus and a computer program for encoding media content
WO2017205794A1 (en) * 2016-05-26 2017-11-30 Vid Scale, Inc. Methods and apparatus of viewport adaptive 360 degree video delivery
US20170345205A1 (en) * 2016-05-26 2017-11-30 Mediatek Inc. Method and apparatus for signaling region of interests
CN106095235A (zh) * 2016-06-07 2016-11-09 腾讯科技(深圳)有限公司 基于虚拟现实的控制方法和装置
CN107124589A (zh) * 2017-05-24 2017-09-01 武汉大学 基于Cardboard的360度沉浸式远程视频监控系统及方法

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11037601B2 (en) 2017-12-15 2021-06-15 Snap Inc. Spherical video editing
US11380362B2 (en) 2017-12-15 2022-07-05 Snap Inc. Spherical video editing
WO2021134183A1 (zh) * 2019-12-30 2021-07-08 深圳市大疆创新科技有限公司 图像处理方法、装置、可移动平台、摄像装置及存储介质
WO2021237619A1 (zh) * 2020-05-28 2021-12-02 深圳市大疆创新科技有限公司 视频文件编辑方法、设备、系统及计算机可读存储介质
CN112804511A (zh) * 2021-01-04 2021-05-14 烽火通信科技股份有限公司 一种动态渲染全景视频的方法和装置
CN112804511B (zh) * 2021-01-04 2022-04-01 烽火通信科技股份有限公司 一种动态渲染全景视频的方法和装置
CN114155356A (zh) * 2021-12-07 2022-03-08 大连工业大学 基于Unity的全空间分布光度计虚拟现实仿真方法

Also Published As

Publication number Publication date
US20210264949A1 (en) 2021-08-26
CN112256127A (zh) 2021-01-22
US20220301593A1 (en) 2022-09-22
US20190189160A1 (en) 2019-06-20
KR102100744B1 (ko) 2020-05-15
KR102332950B1 (ko) 2021-12-01
US20200194033A1 (en) 2020-06-18
CN110495166B (zh) 2020-11-10
KR20210149206A (ko) 2021-12-08
US11037601B2 (en) 2021-06-15
KR20190108181A (ko) 2019-09-23
KR102469263B1 (ko) 2022-11-22
KR20200038561A (ko) 2020-04-13
US10217488B1 (en) 2019-02-26
WO2019118877A1 (en) 2019-06-20
US10614855B2 (en) 2020-04-07
US11380362B2 (en) 2022-07-05

Similar Documents

Publication Publication Date Title
CN110495166A (zh) 球形视频编辑
CN117043719A (zh) 具有免提模式的镜像设备
KR20230127312A (ko) 멀티 비디오 클립 캡처를 위한 ar 콘텐츠
KR20230162977A (ko) 얼굴 합성을 포함하는 상호작용적 증강 현실 콘텐츠
KR20230127311A (ko) 안경류 디바이스 상에서의 증강 현실 콘텐츠의 기록
CN116685938A (zh) 眼镜设备上的3d绘制
KR20230124714A (ko) 멀티 비디오 클립 캡처를 위한 오디오 선택
CN116250012A (zh) 用于图像动画的方法、系统和计算机可读存储介质
KR20230116938A (ko) 안경류 디바이스 상의 미디어 콘텐츠 플레이어
CN116685995A (zh) 向捕获的视频添加基于时间的字幕
CN116685941A (zh) 具有触觉反馈增强的媒体内容项
KR20230127314A (ko) 멀티 비디오 클립 캡처를 위한 비디오 트리밍
CN116670635A (zh) 具有触觉反馈的实时视频通信界面
KR20230121918A (ko) 다수의 비디오 클립을 캡처하기 위한 카메라 모드
CN116648895A (zh) 用于捕获多个视频片段的摄像装置模式
CN116710885A (zh) 具有触觉反馈响应的通信界面
KR20230160926A (ko) 사용자-정의 맥락 공간들
CN117597940A (zh) 用于呈现适用于摄像装置的功能的用户界面
KR20230124689A (ko) 메시징 시스템 내에서의 비디오 트리밍
CN112256127B (zh) 球形视频编辑
CN116670685A (zh) 流导式运动重定向
US20230334790A1 (en) Interactive reality computing experience using optical lenticular multi-perspective simulation
US20230334791A1 (en) Interactive reality computing experience using multi-layer projections to create an illusion of depth
US20230334792A1 (en) Interactive reality computing experience using optical lenticular multi-perspective simulation
WO2024039885A1 (en) Interactive reality computing experience using optical lenticular multi-perspective simulation

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