CN109076239B - 虚拟实境中的圆形鱼眼视频 - Google Patents

虚拟实境中的圆形鱼眼视频 Download PDF

Info

Publication number
CN109076239B
CN109076239B CN201780029512.2A CN201780029512A CN109076239B CN 109076239 B CN109076239 B CN 109076239B CN 201780029512 A CN201780029512 A CN 201780029512A CN 109076239 B CN109076239 B CN 109076239B
Authority
CN
China
Prior art keywords
video data
image
video
format
value
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
Application number
CN201780029512.2A
Other languages
English (en)
Other versions
CN109076239A (zh
Inventor
B·福鲁坦保尔
王业奎
P·H·阮
毕宁
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.)
Qualcomm Inc
Original Assignee
Qualcomm Inc
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 Qualcomm Inc filed Critical Qualcomm Inc
Publication of CN109076239A publication Critical patent/CN109076239A/zh
Application granted granted Critical
Publication of CN109076239B publication Critical patent/CN109076239B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

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/161Encoding, multiplexing or demultiplexing different image signal components
    • 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
    • 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
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/172Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a picture, frame or field
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/46Embedding additional information in the video signal during the compression process
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/597Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding specially adapted for multi-view video sequence encoding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/70Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by syntax aspects related to video coding, e.g. related to compression standards
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N23/00Cameras or camera modules comprising electronic image sensors; Control thereof
    • H04N23/45Cameras or camera modules comprising electronic image sensors; Control thereof for generating image signals from two or more image sensors being of different type or operating in different modes, e.g. with a CMOS sensor for moving images in combination with a charge-coupled device [CCD] for still images
    • 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
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/40Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using video transcoding, i.e. partial or full decoding of a coded input stream followed by re-encoding of the decoded output stream

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Human Computer Interaction (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Studio Devices (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
  • Closed-Circuit Television Systems (AREA)

Abstract

本发明提供包含描述360度视频中的鱼眼图像及所述360度视频的参数的系统、方法及计算机可读媒体。所述360度视频可随后在由全向摄像机捕捉时经存储及/或传输而未将所述鱼眼图像变换成某一其它格式。所述参数可稍后用于将所述鱼眼图像映射到中间格式,例如等矩形格式。所述中间格式可用于存储、传输及/或显示所述360度视频。所述参数可替代地或另外用于将所述鱼眼图像直接映射到可显示于360度视频呈现中的一格式(例如球面格式)。

Description

虚拟实境中的圆形鱼眼视频
发明内容
360度视频可为观看者提供一种沉浸式体验。举例来说,360度视频可为观看者提供一种虚拟实境体验,使所述观看者处于虚拟的不同时间及/或场所中。作为另一实例,360度视频可为观看者提供由远程装置(例如,无人飞行载具或其它装置)捕捉的视频内容的第一人称视角。捕捉360度视频的一种方法为使用一种全向摄像机。全向摄像机可通过仅几个透镜捕捉较宽视野。所得图像展现鱼眼效应。
在各种实施方案中,提供包含描述360度视频中的鱼眼图像及所述360度视频的参数的系统、方法及计算机可读媒体。所述360度视频可随后在由全向摄像机捕捉时经存储及/或传输,而未将所述鱼眼图像变换成某一其它格式。参数可稍后用于将所述鱼眼图像映射到中间格式(例如等矩形格式)。所述中间格式可用于存储、传输及/或显示360度视频。参数可替代地或另外用于将所述鱼眼图像直接映射到可显示于360度视频呈现中的格式(例如球面格式)。
根据至少一个实例,提供一种用于处理视频数据的方法。所述方法包含获得由全向摄像机捕捉的360度视频数据。360度视频数据的视频帧可包含场景的图像。在所述图像中,场景经扭变成所述图像的圆形区域。所述方法进一步包含获得与全向摄像机相关联的参数。所述参数可描述图像的圆形区域。所述方法进一步包含编码360度视频数据。所述方法进一步包含产生经编码视频数据。所述经编码视频数据可包含所述编码360度视频数据及与全向摄像机相关联的参数。
在另一实例中,提供一种设备,其包含经配置以获得由全向摄像机捕捉的360度视频数据的存储器处理器。360度视频数据的视频帧可包含场景的图像。在所述图像中,场景经扭变成所述图像的圆形区域。处理器经配置以获得且可获得与全向摄像机相关联的参数。所述参数可描述图像的圆形区域。处理器经配置以编码且可编码360度视频数据。所述处理器经配置以产生且可产生经编码视频数据。所述经编码视频数据可包含经编码360度视频数据及与全向摄像机相关联的参数。
在另一实例中,提供一种计算机可读媒体,其上存储有在由处理器执行时执行一种方法的指令,所述方法包含:获得由全向摄像机捕捉的360度视频数据。360度视频数据的视频帧可包含场景的图像。在所述图像中,场景经扭变成所述图像的圆形区域。所述方法进一步包含获得与全向摄像机相关联的参数。所述参数可描述图像的圆形区域。所述方法进一步包含编码360度视频数据。所述方法进一步包含产生经编码视频数据。所述经编码视频数据可包含经编码360度视频数据及与全向摄像机相关联的参数。
在另一实例中,提供一种设备,其包含用于获得由全向摄像机捕捉的360度视频数据的装置。360度视频数据的视频帧可包含场景的图像。在所述图像中,场景经扭变成所述图像的圆形区域。所述设备进一步包含用于获得与全向摄像机相关联的参数的装置。所述参数可描述图像的圆形区域。所述设备进一步包含用于编码360度视频数据的装置。所述设备进一步包含用于产生经编码视频数据的装置。所述经编码视频数据可包含经编码360度视频数据及与全向摄像机相关联的参数。
在一些方面中,场景经扭变成图像的一或多个圆形区域。在这些方面中,所述参数包含一或多个圆形区域的数量。在一些方面中,所述参数包含圆形区域的中心的水平坐标。在一些方面中,所述参数包含圆形区域的中心的垂直坐标。在一些方面中,所述参数包含全半径值,其中全半径为圆形区域的中心到圆形区域的外边缘的距离。在一些方面中,所述参数包含帧半径值,其中帧半径为圆形区域的中心到图像的边缘的距离。在一些方面中,所述参数包含场景半径值,其中场景半径为圆形区域的中心到在图像中所捕捉的障碍的外边缘的距离。在一些方面中,所述参数包含圆形区域内的场景的旋转,其中所述旋转是相对于图像的定向。在一些方面中,所述参数包含翻转值,其中所述翻转值指示场景是否已在圆形区域内反转及场景已反转的方向。
在一些方面中,所述参数包含缩放值,其中所述缩放值指示场景是否已在圆形区域内经缩放、场景已沿其缩放的轴线及场景已缩放的量。在一些方面中,所述参数包含视野值,其中所述视野值指示在圆形区域中所捕捉的视图的多个度数。在一些方面中,所述参数包含压缩曲线值,其中所述压缩曲线值指示圆形区域相对于圆形区域中所包含的场景的几何压缩曲线。在一些方面中,所述参数包含指示在图像内的包含不可用像素的区域的数量的值。在一些方面中,所述参数包含在图像内的包含不可用像素的区域的位置及大小。
在一些方面中,产生经编码视频数据包含将经编码360度视频数据写入到文件。在这些方面中,所述文件可根据国际标准组织基本媒体文件格式(International StandardsOrganization Base Media File Format;ISOBMFF)格式经格式化。在一些方面中,所述参数包含在文件层级、电影层级处,或在文件的播放轨层级处。在一些方面中,所述参数包含于受限方案信息逻辑框中。
在一些方面中,上文所描述的方法、设备及计算机可读媒体进一步包括将所述参数编码到补充增强信息(SEI)消息中。SEI消息可包含于经编码360度视频数据中。在一些方面中,SEI消息根据高级视频译码(Advanced Video Coding;AVC)或高效视频译码(High-Efficiency Video Code;HEVC)标准经格式化。
在一些方面中,上文所描述的方法、设备及计算机可读媒体进一步包括产生经编码视频数据,产生经编码视频数据包含将参数编码为会话数据协议(Session DataProtocol;SDP)属性。
在一些方面中,上文所描述的方法、设备及计算机可读媒体进一步包括产生经编码视频数据,产生经编码视频数据包含将所述参数写入到媒体呈现描述(MediaPresentation Description;MPD)文件中。
在一些方面中,上文所描述的方法、设备及计算机可读媒体进一步包括产生经编码视频数据,产生经编码视频数据包含将所述参数写入到动画专家组(Motion PicturesExperts Group;MPEG)输送流中。
在一些方面中,例如上文所描述的设备可包含移动装置。在一些实施方案中,移动装置包含全向摄像机。
根据至少一个实例,提供一种用于处理视频数据的方法。所述方法包含获得经编码视频数据。经编码视频数据包含由全向摄像机捕捉的经编码360度视频数据及与全向摄像机相关联的参数。所述方法进一步包含解码经编码视频数据以产生360度视频数据。360度视频数据的视频帧可包含场景的图像,且其中,在所述图像中,所述场景经扭变成所述图像的圆形区域。所述方法进一步包含产生360度视频呈现。产生360度视频呈现可包含使用所述参数以将圆形区域映射到可用于360度视频呈现中的格式。
在另一实例中,提供一种设备,其包含经配置以获得经编码视频数据的存储器处理器。经编码视频数据包含由全向摄像机捕捉的经编码360度视频数据及与全向摄像机相关联的参数。处理器经配置以解码且可解码经编码视频数据以产生360度视频数据。360度视频数据的视频帧可包含场景的图像,且其中,在所述图像中,所述场景经扭变成所述图像的圆形区域。处理器经配置以产生且可产生360度视频呈现。产生360度视频呈现可包含使用所述参数以将圆形区域映射到可用于360度视频呈现中的格式。
在另一实例中,提供一种计算机可读媒体,其上存储有在由处理器执行时执行一种方法的指令,所述方法包含:获得经编码视频数据。经编码视频数据包含由全向摄像机捕捉的经编码360度视频数据及与全向摄像机相关联的参数。所述方法进一步包含解码经编码视频数据以产生360度视频数据。360度视频数据的视频帧可包含场景的图像,且其中,在所述图像中,所述场景经扭变成所述图像的圆形区域。所述方法进一步包含产生360度视频呈现。产生360度视频呈现可包含使用所述参数以将圆形区域映射到可用于360度视频呈现中的格式。
在另一实例中,提供一种设备,其包含用于获得经编码视频数据的装置。经编码视频数据包含由全向摄像机捕捉的经编码360度视频数据及与全向摄像机相关联的参数。所述设备进一步包含用于解码经编码视频数据以产生360度视频数据的装置。360度视频数据的视频帧可包含场景的图像,且其中,在所述图像中,所述场景经扭变成所述图像的圆形区域。所述设备进一步包含用于产生360度视频呈现的装置。产生360度视频呈现可包含使用所述参数以将圆形区域映射到可用于360度视频呈现中的格式。
在一些方面中,上文所描述的方法、设备及计算机可读媒体进一步包括将圆形区域映射成等矩形格式。这些方面进一步包含将等矩形格式用于360度视频呈现。
在一些方面中,上文所描述的方法、设备及计算机可读媒体进一步包括将圆形区域直接映射到360度格式。这些方面进一步包含将360度格式用于360度视频呈现。
在一些方面中,场景经扭变成图像的一或多个圆形区域。在这些方面中,所述参数包含一或多个圆形区域的数量。在一些方面中,所述参数包含圆形区域的中心的水平坐标。在一些方面中,所述参数包含圆形区域的中心的垂直坐标。在一些方面中,所述参数包含全半径值,其中全半径为圆形区域的中心到圆形区域的外边缘的距离。在一些方面中,所述参数包含帧半径值,其中帧半径为圆形区域的中心到图像的边缘的距离。在一些方面中,所述参数包含场景半径值,其中场景半径为圆形区域的中心到在图像中所捕捉的障碍的外边缘的距离。在一些方面中,所述参数包含圆形区域内的场景的旋转,其中所述旋转是相对于图像的定向。在一些方面中,所述参数包含翻转值,其中所述翻转值指示场景是否已在圆形区域内反转及场景已反转的方向。
在一些方面中,所述参数包含缩放值,其中所述缩放值指示场景是否已在圆形区域内经缩放、场景已沿其缩放的轴线及场景已缩放的量。在一些方面中,所述参数包含视野值,其中所述视野值指示在圆形区域中所捕捉的视图的多个度数。在一些方面中,所述参数包含压缩曲线值,其中所述压缩曲线值指示圆形区域相对于圆形区域中所包含的场景的几何压缩曲线。在一些方面中,所述参数包含指示在图像内的包含不可用像素的区域的数量的值。在一些方面中,所述参数包含在图像内的包含不可用像素的区域的位置及大小。
在一些方面中,经编码视频数据是从文件获得,其中所述文件根据国际标准组织基本媒体文件格式(ISOBMFF)格式经格式化。在一些方面中,所述参数包含在文件层级、电影层级处,或在播放轨层级处。在一些方面中,所述参数包含于受限方案信息逻辑框中。
在一些方面中,从补充增强信息(SEI)消息解码参数,其中所述SEI消息包含于经编码视频数据中。在一些方面中,所述SEI消息根据高级视频译码(AVC)或高效视频译码(HEVC)标准经格式化。
在一些方面中,解码经编码视频数据包含从会话数据协议(SDP)属性获得参数。
在一些方面中,解码经编码视频数据包含从媒体呈现描述(MPD)文件获得参数。
在一些方面中,解码经编码视频数据包含从动画专家组(MPEG)输送流获得参数。
在一些方面中,例如上文所描述的设备可包含移动装置。在一些实施方案中,移动装置包含用于显示360度视频呈现的显示器。
此发明内容并不意欲确定所主张的标的物的关键或基本特征,也不意欲孤立使用以确定所主张的标的物的范畴。应参照此专利的整个说明书的合适部分、任何或所有图式及每一权利要求来理解标的物。
当参考以下说明书、权利要求书及随附图式时,前述内容连同其它特征及实施例将变得更显而易见。
附图说明
下文参考以下图式详细描述本发明的说明性实施例:
图1A及1B示出通过使用鱼眼透镜捕捉较宽视野的全向摄像机所捕捉的视频帧的实例。
图2示出等矩形视频帧的实例。
图3示出用于360度视频呈现中的等矩形视频帧的实例。
图4A及4B示出其中360度视频帧中的鱼眼图像已直接映射到半球面表示的实例。
图5示出通过具有两个鱼眼透镜的全向摄像机所捕捉的视频帧的实例。
图6A示出可用于描述在视频帧中所捕捉的鱼眼图像的额外参数的实例。
图6B示出鱼眼图像的下部部分的实例,以说明摄像机主体在图像中的存在。
图7示出根据ISOBMFF经格式化的含有用于视频呈现的数据及元数据的ISO基本媒体文件的实例。
图8A及8B示出其中ISO基本媒体文件中的顶层逻辑框用以指示所述文件包含虚拟实境内容的实例。
图9示出其中电影层级指示用于ISO基本媒体文件中以指示所述文件包含虚拟实境内容的实例。
图10示出其中播放轨层级指示符用于ISO基本媒体文件中以指示所述文件包含虚拟实境内容的实例。
图11示出ISO基本媒体文件的一个实例,其中处理程序逻辑框用以传信播放轨的内容包含虚拟实境内容。
图12示出ISO基本媒体文件的实例,其中新处理程序逻辑框已经定义以指示播放轨包含虚拟实境内容。
图13示出可包含于ISO基本媒体文件中的媒体逻辑框的实例。
图14示出可为位流的部分的存取单元的实例。
图15示出用于网络通信的开放系统互连模型的实例。
图16示出用于流传输视频内容的DASH呈现的实例。
图17示出MPEG输送流的实例。
图18示出使用描述视频中的鱼眼图像的参数来编码360度鱼眼视频的过程的实例。
图19示出用于解码包含360度视频的经编码视频数据的过程的实例。
图20为说明包含编码装置及解码装置的系统的实例的框图。
图21为说明实例编码装置的框图。
图22为说明实例解码装置的框图。
具体实施方式
下文提供本发明的某些方面及实施例。这些方面及实施例中的一些可独立地应用并且其中一些可以对所属领域的技术人员原本显而易见的组合来应用。在以下描述中,出于解释的目的,阐述特定细节以便提供对本发明的实施例的透彻理解。然而,将显而易见的是,可在无这些特定细节的情况下实践各种实施例。图式及描述不意欲为限定性的。
随后描述仅提供例示性实施例,且并不意欲限制本发明的范畴、适用性或配置。确切而言,例示性实施例的随后描述将为所属领域的技术人员提供使其能够实施例示性实施例的描述。应理解,可在不背离如所附权利要求书中所阐述的本发明的精神及范畴的情况下对元件的功能及布置做出各种变化。
在以下描述中给出特定细节以提供对实施例的透彻理解。然而,所属领域的一般技术人员应理解,实施例可在无需这些特定细节的情况下实践。举例来说,电路、系统、网络、过程及其它组件可以框图形式展示为组件以免以不必要的细节混淆实施例。在其它情况下,可在无不必要细节的情况下展示熟知电路、过程、算法、结构及技术以免混淆实施例。
又,应注意,个别实施例可描述为经描绘为流程图、作业图、数据流程图、结构图或框图的过程。尽管流程图可将操作描述为依序过程,但许多操作可并行地或同时被执行。另外,可重新布置操作的次序。过程在其操作完成时终止,但可具有不包含于图中的额外步骤。过程可对应于方法、函式、过程、次例程、子程序等。当过程对应于函式时,其终止可对应于函式传回到呼叫函式或主函式。
术语“计算机可读媒体”包含(但不限于)便携式或非便携式存储装置、光存储装置及能够存储、含有或携载指令及/或数据的各种其它媒体。计算机可读媒体可包含非暂时性媒体,其中可存储数据并且不包含载波及/或以无线方式或经由有线连接传播的暂时电子信号。非暂时性媒体的实例可包含(但不限于)磁盘或磁带、例如紧密光盘(CD)或数字化通用光盘(DVD)的光学存储媒体、快闪存储器、存储器或存储器装置。计算机可读媒体可具有存储于其上的程序代码及/或机器可执行指令,所述程序代码及/或机器可执行指令可表示过程、函式、子程序、程序、例程、次例程、模块、软件套件、类别,或指令、数据结构或程序语句的任何组合。一个码段可通过传递及/或接收信息、数据、论证、参数或存储器内容耦合到另一码段或硬件电路。信息、论证、参数、数据等可经由包含存储器共享、消息传递、符记传递、网络传输或其类似者的任何合适方式来传递、转发或传输。
此外,可由硬件、软件、固件、中间软件、微码、硬件描述语言或其任何组合来实施实施例。当以软件、固件、中间软件或微码实施时,用以执行必要任务(例如,计算机程序产品)的程序代码或码段可存储于计算机可读或机器可读媒体中。处理器可执行必要任务。
虚拟实境描述可以看似真实或物理的方式互动的三维环境。在一些情况下,体验虚拟实境环境的用户使用例如头戴式显示器(HMD)以及(视情况)衣物(例如,配备有传感器的手套)的电子装备来与虚拟环境互动。随着用户在真实世界中移动,在虚拟环境中呈现的图像也改变,从而向用户提供用户正在虚拟环境内移动的感知。在一些情况下,虚拟环境包含与用户的移动相关的声音,从而向用户提供声音来源于特定方向或来源的印象。虚拟实境视频可以极高质量经捕捉及呈现,从而潜在地提供真实沉浸式虚拟实境体验。虚拟实境应用包含游戏、训练、教育、体育视频及线上购物等等。
360度视频为经捕捉以在虚拟实境环境中显示的视频。在一些应用中,来自真实世界的视频可用于虚拟实境环境的呈现中,与例如可在游戏及虚拟世界中找到的计算机产生图形形成对照。在这些应用中,用户可以与用户可体验其目前位置相同的方式体验另一位置。举例来说,用户可在使用定位于旧金山的360度视频系统时体验柏林的徒步旅行。
360度视频系统通常包含视频捕捉装置及视频显示装置,且可能也包含例如服务器、数据存储器及数据传输装备的其它中间装置。视频捕捉装置可包含摄像机集合,即多个摄像机的集合,每一摄像机定向于不同方向且捕捉不同视图。在一些应用中,六个摄像机可用于捕捉以摄像机集合的位置为中心的全360度视图。一些视频捕捉装置可使用较少摄像机。举例来说,一些视频捕捉装置主要捕捉边对边视图或使用具有较宽视野的透镜。视频一般包含帧,其中帧为场景的电子译码静态图像。摄像机每秒捕捉某一数目的帧,其通常被称作摄像机的帧速率。
在一些情况下,为提供无缝360度视图,可对由摄像机集合中的每一摄像机捕捉的视频执行图像拼接。在360度视频产生的情况下的图像拼接涉及组合或合并来自视频帧重叠或将以其它方式连接的区域中的相邻摄像机的视频帧。结果将为大致球面帧,且类似于麦卡托投影(Mercator projection),经合并的数据可以平面方式表示。举例来说,经合并视频帧中的像素可经映射到立方体形状或某其它三维、平面形状(例如,角锥体、八面体、十面体等)的平面上。视频捕捉及视频显示装置可按照光栅原理操作,意谓将视频帧处理为像素的栅格,在此情况下,正方形平面、矩形平面或其它合适形状的平面可用于表示球面环境。
映射到平面表示的360度视频帧可经编码及/或压缩以供存储及/或传输。编码及/或压缩可使用视频编解码器(例如,顺应高效视频译码(HEVC)标准(其也被称作H.265)、高级视频译码标准(其被称为H.264)或其它合适的编解码器的程序代码)完成且产生经压缩视频位流(或经编码视频位流)或位流组。使用视频编解码器对视频数据进行的编码在下文进一步详细地描述。
在一些实施方案中,经编码视频位流可存储及/或囊封于媒体格式或文件格式中。所存储位流可(例如)经由网络传输到接收器装置,所述接收器装置可解码且呈现视频以供显示。此接收器装置在本文中可被称作视频显示装置。举例来说,360度视频系统可从经编码视频数据产生经囊封文件(例如,使用国际标准组织(ISO)基本媒体文件格式及/或衍生的文件格式)。举例来说,视频编解码器可编码视频数据,且囊封引擎可通过将视频数据囊封于一或多个ISO格式媒体文件中而产生媒体文件。替代地或另外,所存储的位流可直接从存储媒体提供到接收器装置。
接收器装置也可实施编解码器以解码及/或解压缩经编码视频位流。在经编码视频位流存储及/或囊封于媒体格式或文件格式中的情况下,接收器装置可支持用以将视频位流封装入(一或多个)文件中的媒体或文件格式,且可提取视频(及也可能提取音频)数据来产生经编码视频数据。举例来说,接收器装置用经囊封视频数据剖析媒体文件以产生经编码视频数据,且接收器装置中的编解码器可解码经编码视频数据。
接收器装置可随后将经解码视频信号发送到呈现装置(例如,视频显示装置、播放器装置,或其它合适的呈现装置)。呈现装置包含(例如)头戴式显示器、虚拟实境电视机及其它180度或360度显示装置。一般而言,头戴式显示器能够追踪穿戴者的头部的移动及/或穿戴者的眼睛的移动。头戴式显示器可使用追踪信息以呈现对应于穿戴者所看方向的360度视频的部分,使得穿戴者以与其将体验真实世界相同的方式体验虚拟环境。呈现装置可以与捕捉视频相同的帧速率或以不同帧速率呈现视频。
用于捕捉360度视频的摄像机集合可包含各种全向摄像机、折反射式摄像机(使用透镜及曲面镜的摄像机)、配备有鱼眼透镜的摄像机,及/或其它合适摄像机。全向摄像机的一个实例为使用在相对方向上聚焦的两个鱼眼透镜的理光(Ricoh)Theta-S。
全向摄像机(例如折反射式摄像机及具有鱼眼透镜的摄像机)通常捕捉具有大量失真的图像。图1A及1B示出通过使用鱼眼透镜捕捉较宽视野的全向摄像机所捕捉的视频帧的实例。在图1A的实例中,视频帧100包含圆形鱼眼图像。鱼眼透镜能够捕捉极宽角度,例如180度或更大。因此,配备有两个鱼眼透镜、背对背放置的摄像机可捕捉一起提供360度的视图(或更大)的两个图像。非广角鱼眼透镜捕捉数量级为约45度到约90度的视野。视野可替代地或另外以弧度表达。
为了捕捉较宽角度,鱼眼透镜使场景的图像失真。如图1A中所示,在视频帧100中所捕捉的场景为圆形形状,且从此圆形区域的中心扭变到外部边缘。由于摄像机传感器为矩形,所以视频帧100为矩形且图像包含不为场景的部分的此处使用彩斑所示的区域。这些区域中的像素视为不可用,此是由于这些像素不为场景的部分。
图1B的实例包含视频帧102,所述视频帧包含全帧鱼眼图像。在此类型的视频帧102中,广角视野也已经捕捉在圆形区域中,其中场景经扭变成圆形区域。在此实例中,图像已经缩放(例如,变大),所以场景填满矩形帧的边缘。此实例视频帧102不包含不可用区域,且可由透镜捕捉的场景的一些部分已经裁剪或未经捕捉。
使用鱼眼图像以捕捉较宽视野的360度视频可重新映射到其它格式。这些其它格式可用于存储、传输及/或观看360度视频。一个实例格式为等矩形格式。图2示出等矩形视频帧200的实例。在此实例等矩形视频帧200中,来自两个鱼眼图像202a、202b的可用像素(例如,圆形区域中的像素)已映射到等矩形格式中。在此实例中,每一鱼眼图像202a、202b包含180度或更大的视野,以使得两个鱼眼图像202a、202b一起涵盖360度视野(可能具有一些重叠)。
映射来自鱼眼图像202a、202b的像素具有使在鱼眼图像202a、202b中所捕捉的场景展开且将所述像素朝向视频帧200的边缘拉伸的效应。所得等矩形图像可在视频帧200的顶部及底部处出现拉伸。熟知等矩形投影为麦卡托投影,其中地球的地形用正交的纬线及经线呈现。
在各种实施方案中,鱼眼图像202a、202b可映射到其它格式,例如到由立方体、圆柱体、角锥体、经截断角锥体或一些其它几何形状所形成的面上。在这些情况中的每一者中,可校正鱼眼图像202a、202b中存在的失真且可消除不可用像素。平面数据也可经封装以供存储及/或传输,且可用于显示360度视频。
在一些情况下,中间格式可用于(例如)存储及/或传输360度视频数据,或将视频数据转换到另一格式。举例来说,等矩形表示可映射到球面格式(例如,球面几何结构)以显示视频数据,如图3中所示。
图3示出用于360度视频呈现中的等矩形视频帧300的实例。等矩形视频帧300可映射到球面几何结构上,且可使用头戴式显示器或某一其它360度视频显示装置向观看者320显示所得球面表示。在其它实例中,等矩形视频帧300可映射到立方体、圆柱体、角锥体或某一其它几何形状,其中所述几何形状可由360度视频显示装置用于显示视频。
如上文所提及,等矩形视频帧300可捕捉全360度视野,其中上部及下部区域中的像素出现拉伸及/或压缩。为使用360度视频呈现中的等矩形视频帧300,等矩形视频帧300中的像素可映射到球面表示。此映射可具有使等矩形视频帧300的上部及下部区域朝向球面表示的顶部及底部(例如,分别地“北极”及“南极”)扩展的效应。扩展上部及下部区域可校正在等矩形视频帧300中显而易见的这些区域的失真。
将等矩形视频帧300映射到球面表示可进一步具有使帧的宽度绕球面表示的中心(例如,赤道)扭变的效应。等矩形视频帧300的左边缘及右边缘可相互紧靠地映射以使得无“缝隙”出现。
一旦等矩形视频帧300已映射到球面表示,即可显示球面表示。使用头戴式显示器或另一360度视频显示装置的观看者320可从球面表示内观看球面表示。在大多数情况下,观看者320经定位以使得从观看者的视角的“地面”为球面表示的最底部点。在一些情况下,球面表示的赤道定位于观看者的视平线处。在各种实施方案中,球面表示可经扩展或收缩以符合观看者的高度及/或位置(例如,如果观看者坐着、站立或呈某一其它姿势)。
然而,在一些情况下,例如等矩形格式的中间格式为不必要的。在各种实施方案中,360度视频中的鱼眼图像可直接映射到可显示的表示,而非首先映射到等矩形形状。图4A及4B示出其中360度视频帧400中的鱼眼图像已直接映射到半球面表示410的实例。如上文所论述,图4A的视频帧400为矩形形状,其中所述矩形形状对应于摄像机的图像捕捉传感器的大小及形状。视频帧400包含圆形区域402,所述圆形区域包含捕捉场景的像素。其中未捕捉像素的视频帧400的边角404可保持空白或可包含黑色像素(例如,具有0或255的像素值)。
在圆形区域402中捕捉的像素包含某一视野,其中所述视野由透镜及/或摄像机决定。举例来说,视摄像机的透镜、反射镜及/或传感器的构造而定,圆形区域402可包含90度视野、180度视野、270度视野或某一其它度数的视野。视野可替代地或另外以弧度表达。为将视野拟合到视频帧400中,像素以线性或非线性方式扭变到圆形区域402中。
在各种实施方案中,下文所描述的技术将圆形区域402中的像素映射到半球面表示410,其实例示出于图2B中。半球面表示410可随后用于使用360度视频显示装置将视频帧400呈现给观看者420。半球面表示410可为球面的一半(其表示180度视图)、小于球面的一半(例如,在视频帧400捕捉小于180度的视图时),或大于球面的一半(例如,在视频帧400捕捉超过180度的视图时)。
在各种实施方案中,将视频帧400的圆形区域402映射到半球面表示410可具有使圆形区域402中的像素拉伸到半球面形状的效应。举例来说,圆形区域402的中心412可对应于半球面表示410的中心422或顶点。作为另一实例,圆形区域402的最顶部点414a可对应于半球面表示410的最顶部点424a(例如,北极),且圆形区域402的最底部点414b可对应于半球面表示410的最底部点424b(例如,南极)。类似地,圆形区域402的极右端414c及极左端414d可对应于在此实例中半球面表示410的极右端424c及不可见极左端424d。在圆形区域402的中心412与边缘之间的像素可进一步均匀分布于半球面表示410的表面上。
所得半球面表示410可用于将平面视频帧400呈现在360度视频呈现中。使用360度视频显示装置,可呈现半球面表示410以给予观看者420其处于由半球面表示410所捕捉的像素所表示的场景内部的印象。在一些情况下,半球面表示410的顶点可经定向在观看者的视野的中心处。
在各种实施方案中,可为将在观看者420后面的视图提供额外半球面表示。举例来说,如上文所提及,摄像机可配备有背对背放置的两个鱼眼透镜。摄像机可捕捉一起提供场景的360度视图(或更大)的两个图像。在此实例中,摄像机可捕捉第二鱼眼图像(未示出),其可包含在与图4中所示的鱼眼图像相同的帧400中或可包含在不同的帧中。第二鱼眼图像可直接映射到在观看者420正后方的另一半球面表示(未示出)。两个半球面构成完整球面,其可经呈现用于显示,以提供由视频帧所捕捉的场景的全360度视图。
通过从鱼眼图像直接映射到显示格式且略过中间格式,可减少显示360度视频所需的处理的量及执行处理所需的时间。降低处理要求也具有减小便携式装置中的电池使用率的额外益处。另外,避免中间格式节省的时间可有益于实况流应用,例如体育赛事的360度实况广播。从钓鱼图像直接映射到显示格式的其它可能益处为改良图像质量及/或降低带宽要求。举例来说,可避免可在产生中间格式时发生的像素的拉伸及/或外插。在此实例中,在外插像素数据中产生的数据也经避免。替代地,保留鱼眼透镜的光学压缩。
在所捕捉的视频使用鱼眼透镜时可有可能更有效地执行从所捕捉的视频到显示格式的直接映射。举例来说,使用四个或六个透镜的摄像机集合可捕捉相邻透镜之间的较大重叠区域。此冗余数据以中间格式经移除,但在无中间映射的情况下,360度视频数据的大小可能非常大。相比之下,使用鱼眼透镜的摄像机集合可产生具有较少或几乎无重叠的图像。视频数据可因此更紧密。
为将360度视频中的鱼眼图像直接映射到显示格式,或映射到中间格式,执行映射的计算装置需要关于所述鱼眼图像的信息。此信息可包含(例如):每一鱼眼图像中所捕捉的视野、视频帧内的鱼眼图像的大小及定向以及例如下文进一步论述的其它参数。目前,描述360度视频中的鱼眼图像的信息并不由全向摄像机提供或以非标准方式提供。另外,每一摄像机可以不同方式捕捉及记录图像,以使得360度鱼眼视频中的可用像素的位置不能轻易地被侵占。
在无描述360度视频中的鱼眼图像的参数的情况下,软件应用不能轻易地将所述鱼眼数据转换成中间格式。软件应用可尝试区分视频中的可用像素与不可用像素,但确定图像中的例如视野及径向失真程度的信息可能非常困难且倾向于不准确。不具有描述鱼眼图像的参数的软件可因此产生具有较低视觉质量的经重新映射的视频帧。
视频转换要求引入额外的问题。举例来说,代管视频内容的服务(例如网站)有时需要上载到服务的服务器的360度视频根据某一中间格式(例如,等矩形格式或由所述服务指定的其它合适格式)经格式化。视频代管服务可不提供经捕捉视频到所需中间格式的转换,在此情况下,正在上载视频的个人可负责执行转换。
360度视频摄像机可具有用于将由摄像机产生的视频转换到其它格式的合适软件,但此软件可难以使用。摄像机用户可不具有理解所述软件及任何可能设定(例如,视图模式、外展模式、控制区域、校准等)所需的技术知识。实际上,摄像机用户可能想要不需要深入技术知识的简单软件(例如,按钮,或其它简单软件)。另外,软件可依赖于描述经捕捉视频的格式的专有、非标准数据。软件可因此仅能够处理来自一种类型的摄像机而不来自具有其它类型的摄像机的视频数据。
在各种实施方案中,可定义描述鱼眼360度视频内容的各种参数。这些参数可用于将360度视频中的鱼眼图像映射到中间格式,或将360度视频中的鱼眼图像直接映射到显示格式。
在各种实施方案中,可从摄像机直接编码鱼眼360度视频数据,而无需任何中间处理。在各种实施方案中,视频捕捉装置可与视频数据一起编码描述视频数据中的鱼眼图像的参数。视频显示装置,或解码经编码数据的某一其它装置可使用所述参数将360度鱼眼视频映射到中间格式或显示格式。
在一些实施方案中,所述鱼眼视频参数可经编码成存储360度视频数据的文件。举例来说,可使用ISO基本媒体文件格式(ISOBMFF)标准来格式化文件。在此实例中,所述参数可包含于所述文件中的一或多个数据结构中(被ISOBMFF称作“逻辑框(box)”)。作为另一实例,所述参数可包含于补充增强信息(SEI)消息中,且包含于包含视频数据的经编码位流中。作为另一实例,所述参数可经包含作为媒体呈现描述(MPD)文件中的属性或元素,其用于根据DASH标准流传输视频。作为另一实例,所述参数可经包含作为会话描述协议(SDP)属性。作为另一实例,所述参数可经包含作为MPEG-2输送流中的描述符。可独立地或以各种组合使用这些及其它实例。
使用以上实例中的一或多者提供的鱼眼视频参数可用于各种应用。举例来说,用户产生的360度视频可上载到服务器,且其它装置可使用DASH或某一其它自适应流传输技术消费视频。在此实例中,360度视频数据可从鱼眼格式转码或变换到常用格式,例如等矩形或立方体映射格式。在一些情况下,代管视频内容的服务器可使用鱼眼视频参数执行重新映射。在一些情况下,可使用鱼眼视频参数向客户端装置提供视频,且所述客户端装置可执行重新映射。在此实例中,所述参数可(例如)编码在ISOBMFF文件、经编码位流中的SEI消息、DASH MPD、会话描述、MPEG-2输送流或某一其它合适格式中。
另一实例应用为见我所见(See-What-I-See;SWIS)类型视频聊天或类似应用。在此类型的应用中,两个用户可使用实况视频说话,且一个用户可使用360度视频向另一用户实时地展示其环境。在此实例中,鱼眼视频可连同鱼眼参数从第一用户的装置传输到第二用户的装置。第二用户的装置可随后呈现鱼眼视频以用于向第二用户显示。在此实例中,RTP/UDP/IP协议堆叠可用于视频传输,此是由于,类似于视频电话及视频会议,传输的会话性质需要较低的端对端时延。将用于流传输视频的HTTP/TCP/IP协议堆叠可不具有足够低的时延。在此实例中,所述鱼眼参数可(例如)经编码于会话描述中,以及其它实例。
图5示出此处使用通过具有两个鱼眼透镜的全向摄像机所捕捉的视频帧500所示的各种鱼眼参数的实例。在此实例中,所述透镜面对相反方向安装,且摄像机能够同时将来自两个透镜的图像记录到一个视频帧500中。因此,实例视频帧500包含两个圆形区域502a、502b。左侧圆形区域502a含有场景的经扭变视图,而右侧圆形区域502b包含同一场景但面向距左侧圆形区域502a中的场景180度处。在其它实例中,来自全向摄像机的视频帧可具有一个鱼眼图像,或可具有超过两个鱼眼图像。
在图5的实例中,各种参数可描述视频帧500中所捕捉的鱼眼图像。举例来说,参数可规定视频帧500包含两个鱼眼图像(或者一个或四个或无论如何许多鱼眼图像经捕捉在视频帧500中)。作为另一实例,参数可描述每一鱼眼图像的定向。在所说明的实施例中,两个鱼眼图像在其侧方,且地面定位于右侧图像的左方,且定位于左侧图像的左方。
在各种实施方案中,参数可描述所述鱼眼图像的位置及几何结构。举例来说,参数可提供一个圆形区域或另一个圆形区域或两个圆形区域502a、502b的中心的水平坐标512。可相对于视频帧500的左侧或右侧边缘提供水平坐标512。作为另一实例,参数可提供一个圆形区域或另一个圆形区域或两个圆形区域502a、502b的中心的垂直坐标514。可相对于视频帧500的顶部或底部边缘提供垂直坐标514。水平坐标512及垂直坐标514可以毫米或像素或某一其它度量单位表达。作为另一实例,所述参数可包含圆形区域502a、502b的直径520或半径。
在各种实施方案中,参数也可描述视频帧500的未使用区域,即,在圆形区域502a、502b外部的区域。举例来说,垂直距离516可描述视频帧500的底部边缘(及/或顶部边缘)与圆形区域502a、502b之间的距离。作为另一实例,水平距离518可描述视频帧500的右侧边缘(及/或左侧边缘)与圆形区域502a、502b之间的距离。垂直距离516及水平距离518可以毫米或像素或某一其它度量单位表达。
在各种实施方案中,参数也可包含关于捕捉图像的透镜的信息。举例来说,参数可包含视野。所述视野为可由透镜捕捉的真实世界的部分。视野可以度数表达。举例来说,鱼眼透镜可具有180度或更大(或更小)的视野。在所说明的实例中,视野超过180度,如通过出现于左侧圆形区域502a及右侧圆形区域502b两者中的元素524所指示。作为另一实例,参数可包含鱼眼失真从透镜的中心到外部边缘是线性抑或非线性。如果失真为非线性,那么所述参数可包含调整非线性度的缩放值。
在各种实施方案中,参数也可描述摄像机及/或透镜伪影。举例来说,在所说明的实例中,摄像机主体522在圆形区域502a、502b两者中为可见的。在其它实例中,摄像机主体及/或透镜主体的部分可在圆形区域502a、502b的其它部分中可见。在一些实例中,摄像机主体及/或透镜主体可在圆形区域502a、502b周围可见。
各种其它参数可描述在此处未说明的情形。举例来说,参数可描述一个或另一个鱼眼图像是否相对于其它鱼眼图像或相对于真实世界成镜像。举例来说,右侧鱼眼图像可以上下方向、左右方向或某一其它方向翻转。描述任何镜像处理的参数可用于确定左侧圆形区域502a与右侧圆形区域502b的边缘之间的对应关系。
也可提供可用于呈现视频帧500的各种其它参数。举例来说,所述参数可包含摄像机校准参数,例如旋转度数(例如,间距、横摆及/或滚动)及摄像机在真实世界中的位置。
上文所论述的参数中的一些或全部可由捕捉视频帧500的摄像机提供。举例来说,摄像机可具有描述用以捕捉鱼眼图像的透镜的信息,包含(例如)透镜的视野及/或透镜使图像扭变的方式。作为另一实例,摄像机可具有描述将鱼眼图像写入到视频帧500中的方式的信息。
在一些情况下,具有相同视野、焦距、形状及/或其它特征的同一类型的透镜会用于捕捉左侧及右侧鱼眼图像两者,但情况可能并非始终如此。当两个鱼眼图像不同时,可为各个鱼眼图像提供独立参数。
图6A示出可用于描述在视频帧600中所捕捉的鱼眼图像的额外参数的实例。在此实例中,可由鱼眼透镜捕捉的圆形区域602并不完全包括于视频帧600内。当(例如)摄像机经配置以捕捉全帧鱼眼视频时可出现此情况,此是由于视野比图像传感器宽,或因为某一其它原因。
在此实例及其它实例中,描述鱼眼图像的参数可包含全半径620及场景半径624。全半径620描述从圆形区域602的中心626到圆形区域602的外部边缘的距离。换句话说,全半径620描述可由透镜捕捉的区域。帧半径622描述从圆形区域602的中心626到视频帧600的最近边缘的距离。帧半径622因此描述实际上捕捉在视频帧600中的区域。在一些实施方案中,可提供视频帧600的全部四个边缘的帧半径值。场景半径624描述从圆形区域602的中心626到障碍的边缘的距离,所述障碍在此实例中为摄像机主体616。在一些情况下,鱼眼透镜的视野足够大以将摄像机本身的部分捕捉到图像中。替代地或另外,摄像机主体616可由于透镜相对于摄像机主体的定向而出现在图像中。在各种实施方案中,场景半径624值可适应摄像机主体616,或出现在视频帧600中的某一其它恒定的障碍。场景半径624可用于在将鱼眼图像映射到另一格式时忽略此障碍。
图6B示出鱼眼图像630的下部部分的实例,以说明摄像机主体616在图像630中的存在。在此实例中,拍照的手应出现在鱼眼图像的最低边缘,而非摄像机主体616阻挡图像的此区域。
在各种实施方案中,360度鱼眼视频可直接经封装于文件中,而无需任何中间处理来将所述鱼眼图像重新映射到另一格式。在这些实施方案中,描述所述鱼眼图像的参数可包含于所述文件中。
文件格式标准可定义用于将视频(及也可能为音频)数据封装及解封装成一或多个文件的格式。文件格式标准包含国际标准化组织(ISO)基本媒体文件格式(ISOBMFF,定义于ISO/IEC 14496-12中)及从ISOBMFF衍生的其它文件格式,包含动画专家组(MPEG)MPEG-4文件格式(定义于ISO/IEC 14496-15中)、第三代合作伙伴计划(3GPP)文件格式(定义于3GPP TS 26.244中)及高级视频译码(AVC)文件格式与高效视频译码(HEVC)文件格式(都定义于ISO/IEC 14496-15中)。ISO/IEC 14496-12及14496-15的最新版本的草案本文可分别在http://phenix.int-evry.fr/mpeg/doc_end_user/documents/111_Geneva/wg11/w15177-v6-w15177.zip及http://phenix.int-evry.fr/mpeg/doc_end_user/documents/112_Warsaw/wg11/w15479-v2-w15479.zip获得。
ISOBMFF用作许多编解码器囊封格式(例如,AVC文件格式或任何其它合适编解码器囊封格式)以及许多多媒体容器格式(例如,MPEG-4文件格式、3GPP文件格式(3GPP)、数字视频广播(DVB)文件格式或任何其它合适多媒体容器格式)的基础。基于ISOBMFF的文件格式可用于连续媒体,其也被称作流传输媒体。
除连续媒体(例如,音频及视频)以外,静态媒体(例如,图像)及元数据可存储在符合ISOBMFF的文件中。根据ISOBMFF结构化的文件可用于许多目的,包含本地媒体文件播放、远程文件的渐进式下载、用作经由HTTP的动态自适应流(DASH)的节段、用作待流传输的内容的容器(在此情况下,容器包含分组化指令)、用于记录接收的实时媒体流,或其它用途。
ISOBMFF及其衍生文件格式(例如,AVC文件格式或其它衍生文件格式)在许多多媒体应用中广泛用于媒体内容(例如,包含视频、音频及计时文字)的存储及囊封。然而,ISOBMFF及从ISOBMFF衍生的文件格式不包含用于存储虚拟实境(VR)内容的规范。举例来说,如果360度视频存储于基于ISOBMFF的文件或衍生文件格式中,那么播放器装置可将360度视频处理(例如,可尝试处理)为惯例平面视频(例如,播放器装置可将所述360度信息处理为不包含360度内容)。播放器可因此不在呈现期间应用360度视频的必要投影,从而导致视频在显示时失真且可能无法观看。
在各种实施方案中,对ISOBMFF的修改及/或添加可指示,已根据所述ISOBMFF或从所述ISOBMFF衍生的格式而格式化的文件包含虚拟实境内容。举例来说,在一些实施方案中,文件可包含文件层级指示,所述指示传信(例如,指示)文件的内容经格式化用于虚拟实境使用情况或实施方案中。作为另一实例,在一些实施方案中,文件可包含电影层级指示,所述指示传信(例如,指示)文件中的电影呈现包含虚拟实境内容。作为另一实例,在一些实施方案中,文件可包含播放轨层级指示,所述指示传信(例如,指示)播放轨包含虚拟实境内容。在各种实施方案中,与虚拟实境内容相关的参数也可在文件、电影及/或播放轨层级下传信。
在这些及其它实施方案中,播放器装置可辨识文件何时包含虚拟实境内容。在一些情况下,不能够显示虚拟实境内容的播放器装置可忽略及/或跳过虚拟实境媒体。
图7示出根据ISOBMFF格式化的含有用于视频呈现的数据及元数据的ISO基本媒体文件700的实例。ISOBMFF经设计而以灵活可延伸格式含有计时媒体信息,所述灵活可延伸格式有助于媒体的互换、管理、编辑及呈现。媒体的呈现可在含有呈现的系统“本地”,或呈现可为经由网络或其它流递送机构。
如ISOBMFF规范所定义的“呈现”为常常通过已由视频捕捉装置依序捕捉相关或由于某一其它原因相关的一系列图片。本文中,呈现也可被称作电影或视频呈现。呈现可包含音频。单一呈现可包括于一或多个文件中,其中一个文件含有整个呈现的元数据。元数据包含信息,例如定时及成帧数据、描述符、指标、参数及描述呈现的其它信息。元数据不包含视频及/或音频数据本身。除含有元数据的文件外的文件不需要根据ISOBMFF而格式化,且仅需要经格式化使得这些文件可由元数据参考。
ISO基本媒体文件的文件结构为面向对象的,且文件中的个别对象的结构可直接从对象的类型来推断。ISO基本媒体文件中的对象由ISOBMFF规范称作“逻辑框”。ISO基本媒体文件经结构化为可含有其它逻辑框的一系列逻辑框。逻辑框一般包含提供逻辑框的大小及类型的标头。所述大小描述逻辑框的整个大小,包含标头、字段及含于所述逻辑帧内的所有逻辑框。并非由播放器装置辨识的类型的逻辑框通常被忽略及跳过。
如由图7的实例所示,在文件的顶部层级处,ISO基本媒体文件700可包含文件类型逻辑框710、电影逻辑框720,及一或多个电影片段730a、730n。可包含在此层级但在此实例中并未表示的其它逻辑框包含自由空间逻辑框、元数据逻辑框及媒体数据逻辑框等等。
ISO基本媒体文件可包含通过逻辑框类型“ftyp”识别的文件类型逻辑框710。文件类型逻辑框710识别最适合于剖析文件的ISOBMFF规范。“最”在此情况下意谓,ISO基本媒体文件700可能已根据特定ISOBMFF规范格式化,但很可能与规范的其它反复兼容。此最合适规范被称作主要种类(major brand)。播放器装置可使用所述主要种类来确定装置是否能够解码及显示文件的内容。文件类型逻辑框710也可包含版本号,所述版本号可用以指示ISOBMFF规范的版本。文件类型逻辑框710也可包含兼容种类的列表,所述列表包含与文件兼容的其它种类的列表。ISO基本媒体文件可与超过一个主流种类兼容。
当ISO基本媒体文件700包含文件类型逻辑框710时,存在仅一个文件类型逻辑框。ISO基本媒体文件700可省略文件类型逻辑框710以便与其它早期播放器装置兼容。当ISO基本媒体文件700不包含文件类型逻辑框710时,播放器装置可采用默认主要种类(例如,“mp41”)、次要版本(例如,“0”)及兼容种类(例如,“mp41”)。文件类型逻辑框710通常尽可能早地放置于ISO基本媒体文件700中。
ISO基本媒体文件可进一步包含电影逻辑框720,其含有元数据以供呈现。电影逻辑框720通过逻辑框类型“moov”来识别。ISO/IEC 14496-12规定呈现无论是包括于一个文件抑或是多个文件中都可包含仅一个电影逻辑框720。通常,电影逻辑框720靠近ISO基本媒体文件的开头。电影逻辑框720包含电影标头逻辑框722,且可包含一或多个播放轨逻辑框724以及其它逻辑框。
通过逻辑框类型“mvhd”识别的电影标头逻辑框722可包含与媒体无关的且与作为整体的呈现相关的信息。举例来说,电影标头逻辑框722可包含信息,例如产生时间、修改时间、时间标度及/或呈现的持续时间等等。电影标头逻辑框722也可包含识别呈现中的下一播放轨的识别符。举例来说,在所说明的实例中,识别符可指出电影逻辑框720所含播放轨逻辑框724。
通过逻辑框类型“trak”识别的播放轨逻辑框724可含有用于呈现的播放轨的信息。呈现可包含一或多个播放轨,其中每一播放轨在呈现中独立于其它播放轨。每一播放轨可包含特定于播放轨中的内容的时间及空间信息,且每一播放轨可与媒体逻辑框相关联。播放轨中的数据可为媒体数据,在此情况下,播放轨为媒体播放轨;或者数据可为用于流传输协议的分组化信息,在此情况下,播放轨为提示播放轨。媒体数据包含(例如)视频及音频数据。在所说明的实例中,实例播放轨逻辑框724包含播放轨标头逻辑框724a及媒体逻辑框724b。播放轨逻辑框可包含其它逻辑框,例如播放轨参考逻辑框、播放轨群组逻辑框、编辑逻辑框、用户数据逻辑框、元逻辑框及其它逻辑框。
由逻辑框类型“tkhd”识别的播放轨标头逻辑框724a可指定播放轨逻辑框724中所含播放轨的特征。举例来说,播放轨标头逻辑框724a可包含播放轨的产生时间、修改时间、持续时间、播放轨识别符、层识别符、群组识别符、音量、宽度及/或高度,等等。对于媒体播放轨,播放轨标头逻辑框724a可进一步识别播放轨是否经启用,播放轨是否应作为呈现的部分而播放,或播放轨是否可用以预览呈现,等等。播放轨的呈现一般假定为处于呈现的开头处。播放轨逻辑框724可包含此处未说明的编辑列表逻辑框,所述编辑列表逻辑框可包含显式时刻表图。时刻表图可指定播放轨的偏移时间等等,其中偏移指示播放轨在呈现的开头之后的开始时间。
在所说明的实例中,播放轨逻辑框724也包含由逻辑框类型“mdia”识别的媒体逻辑框724b。媒体逻辑框724b可在播放轨中含有关于媒体数据的对象及信息。举例来说,媒体逻辑框724b可含有处理程序参考逻辑框,其可识别播放轨的媒体类型以及呈现播放轨中的媒体所通过的过程。作为另一实例,媒体逻辑框724b可含有媒体信息逻辑框,其可指定播放轨中媒体的特征。媒体信息逻辑框可进一步包含样本表,其中每一样本描述包含(例如)样本的数据的位置的媒体数据(例如,视频或音频数据)块。样本的数据存储于下文进一步论述的媒体数据逻辑框中。如同大部分其它逻辑框一般,媒体逻辑框724b也可包含媒体标头逻辑框。
在所说明的实例中,实例ISO基本媒体文件700也包含呈现的多个片段730a、730b、730c、730n。片段730a、730b、730c、730n不为ISOBMFF逻辑框,而是描述电影片段逻辑框732及由电影片段逻辑框732参考的媒体数据逻辑框738。电影片段逻辑框732及媒体数据逻辑框738为顶层逻辑框,但此处经分组以指示电影片段逻辑框732与媒体数据逻辑框738之间的关系。
通过逻辑框类型“moof”识别的电影片段逻辑框732可通过包含将以其它方式存储在电影逻辑框720中的额外信息来延伸呈现。使用电影片段逻辑框732,可逐渐地建构呈现。电影片段逻辑框732可包含电影片段标头逻辑框734及播放轨片段逻辑框736以及此处未说明的其它逻辑框。
通过逻辑框类型“mfhd”识别的电影片段标头逻辑框734可包含序号。播放器装置可使用序号来验证片段730a包含供呈现的数据的下一片段。在一些情况下,文件的内容或用于呈现的文件可无序地被提供到播放器装置。举例来说,网络分组可时常以不同于最初传输分组的次序的次序到达。在这些情况下,序号可辅助播放器装置确定片段的正确次序。
电影片段逻辑框732也可包含通过逻辑框类型“traf”识别的一或多个播放轨片段逻辑框736。电影片段逻辑框732可包含一组播放轨片段(每播放轨零或多个)。播放轨片段可含有零或多个播放轨行程,其中的每一者描述播放轨的样本的连续行程。除添加样本到播放轨外,播放轨片段可用以将空的时间添加到播放轨。
通过逻辑框类型“mdat”识别的媒体数据逻辑框738含有媒体数据。在视频播放轨中,媒体数据逻辑框738将含有视频帧。媒体数据逻辑框可替代地或另外包含音频数据。呈现可包含一或多个个别文件中所含的零或多个媒体数据逻辑框。媒体数据通过元数据描述。在所说明的实例中,媒体数据逻辑框738中的媒体数据可通过包含于播放轨片段逻辑框736中的元数据来描述。在其它实例中,媒体数据逻辑框中的媒体数据可通过电影逻辑框720中的元数据来描述。元数据可指文件700内具有绝对偏移的特定媒体数据,以使得媒体数据标头及/或媒体数据逻辑框738内的自由空间可被跳过。
ISO基本媒体文件700中的其它片段730b、730c、730n可含有类似于针对第一片段730a说明的那些的逻辑框,及/或可含有其它逻辑框。
除支持媒体的本地播放外,ISOBMFF包含对经由网络流传输媒体数据的支持。包含一个电影呈现的一或多个文件可包含称为提示播放轨的额外播放轨,其含有可辅助流传输服务器形成一或多个文件及将文件作为分组来传输的指令。这些指令可包含(例如)供服务器发送的数据(例如标头信息)或对媒体数据的节段的参考。文件可包含用于不同流传输协议的独立提示播放轨。提示播放轨也可在不需要重新格式化文件的情况下添加到文件。
用于对媒体数据进行流传输的一种方法为经由超文字传送协议(HTTP)的动态自适应流或DASH(定义于ISO/IEC 23009-1:2014)。也被称为MPEG-DASH的DASH为使用惯例HTTP网页服务器启用媒体内容的高质量流传输的自适应位速率流传输技术。DASH通过将媒体内容分裂成一系列小的基于HTTP的文件节段来操作,其中每一节段含有短时间间隔的内容。使用DASH,服务器可以不同位速率提供媒体内容。正播放媒体的客户端装置可在下载下一节段时在替代位速率中做出选择,且因此适于变化的网络条件。DASH使用因特网的HTTP网页服务器基础架构来经由全球信息网递送内容。DASH独立于用以编码及解码媒体内容的编解码器,且因此与例如H.264及HEVC等的编解码器一起操作。
ISOBMFF规范指定用于与DASH一起使用的六种类型的流存取点(SAP)。前两种SAP类型(类型1及2)对应于H.264/AVC及HEVC中的瞬时解码刷新(IDR)图片。举例来说,IDR图片为帧内图片(I图片),其在解码器处完全刷新或重新初始化解码过程且开始新的经译码视频序列。在一些实例中,IDR图片及按解码次序在IDR图片之后的任何图片不可依赖于按解码次序在IDR图片之前出现的任何图片。
第三SAP类型(类型3)对应于开放GOP(图片群组)随机存取点,因此对应于HEVC中的断链存取(BLA)或清晰随机存取(CRA)图片。举例来说,CRA图片也为I图片。CRA图片可不刷新解码器,且可不开始新CVS,从而允许CRA图片的前置图片依赖于按解码次序在CRA图片之前出现的图片。随机存取可通过解码以下各者在CRA图片处进行:CRA图片、与不依赖于按解码次序在CRA图片之前出现的任何图片的CRA图片相关联的前置图片,及按解码次序及输出次序两者在CRA之后的所有关联图片。在一些情况下,CRA图片可能不具有相关联前置图片。在一些实施例中,在多层情况下,属于具有大于0的层ID的层的IDR或CRA图片可为P图片或B图片,但这些图片可仅使用来自属于与IDR或CRA图片相同的存取单元且具有小于含有IDR或CRA图片的层的层ID的其它图片的层间预测。
第四SAP类型(类型4)对应于渐次性解码刷新(GDR)随机存取点。
虽然为灵活且可延伸的且广泛用以存储及传输各种类型的媒体,但ISOBMFF并不包含用于存储虚拟实境视频或将ISO基本媒体文件的内容识别为包含虚拟实境内容的机构。播放器装置可因此不能够确定文件的内含包含虚拟实境或360度视频。不能够显示虚拟实境内容的播放器装置可无论以任何方式显示内容,从而产生失真的呈现。
在各种实施方案中,ISOBMFF及/或从ISOBMFF衍生的文件格式可经修改及/或延伸,使得虚拟实境内容可经识别。这些实施方案可涉及逻辑框、种类值、逻辑框中的保留位及/或可各自独立或组合地识别虚拟实境内容的其它指示符。
在各种实施方案中,描述360度视频中的鱼眼图像的参数可包含于ISOBMFF文件中。举例来说,参数可包含在文件层级、电影层级及/或播放轨层级处。在一些实施方案中,参数可以反向兼容的方式包含于ISOBMFF文件中。在此上下文中的“反向兼容”意谓不支持360度视频或不支持呈现鱼眼图像到显示格式的视频显示装置仍可在视频中剖析及播放某一版本,而非尝试呈现360度视频及提供失真结果。
图8A及8B示出其中ISO基本媒体文件800中的顶层逻辑框用以指示所述文件800包含虚拟实境内容的实例。在各种实施方案中,使用顶层逻辑框指示文件800中的全部内容为虚拟实境内容。文件800可包含文件类型逻辑框810,其可指定ISOBMFF的种类或特定反复或与文件800兼容的ISOBMFF的衍生。文件800也可包含电影逻辑框820,其可含有用于呈现的元数据。文件800可视情况也包含一或多个片段830a、830b、830c、830n,如上文所论述。
在图8A的实例中,文件类型逻辑框810可用以指示文件800包含虚拟实境内容。文件类型逻辑框810可用以(例如)指定种类值,所述种类值指示文件与虚拟实境种类兼容。在各种实施方案中,文件类型逻辑框810中列出的兼容种类也可用以提供可选种类指示符,其可用以提供所述虚拟实境相关参数。举例来说,一个兼容种类值可指示虚拟实境内容为2维(2-D)的,而另一兼容种类值可指示虚拟实境内容为3维(3-D)的。作为另一实例,兼容种类值可用以指示映射类型;即,虚拟实境或360度视频的球面表示是否已被映射到等距矩形、立方体或角锥体格式或某一其它格式以存储于文件800中。在各种实施方案中,例如视频的维度及/或映射的信息可替代地或另外使用文件类型逻辑框810中的可选字段来指示。
在图8B的实例中,已定义了新逻辑框类型860。新逻辑框类型860为类似于文件类型逻辑框810的顶层逻辑框。新逻辑框类型860在文件中的存在及/或新逻辑框类型860中的指示符可用以指示文件800包含虚拟实境内容。举例来说,新逻辑框类型860可指定虚拟实境兼容种类值,及/或包含与兼容种类列表中的虚拟实境内容兼容的种类值。新逻辑框类型860可进一步包含可指示以下各项的可选参数:例如,虚拟实境内容为2-D抑或3-D的360度视频、用于存储在文件800中的360度视频数据的映射及/或在360度视频包含鱼眼图像时的鱼眼参数。指定新逻辑框类型860可避免修改文件类型逻辑框810的需要,如在图8A的实例中一般。不能辨识新逻辑框类型860的播放器装置可忽略所述新逻辑框类型。
当针对文件的顶层定义的文件类型逻辑框810或新逻辑框类型860用以指示文件800包含虚拟实境内容时,在一些实施方案中,文件800可能也不需要在文件800中的其它逻辑框中包含指示符来传信虚拟实境内容的存在。
图9示出其中电影层级指示用于ISO基本媒体文件900中以指示所述文件900包含虚拟实境内容的实例。文件900可包含文件类型逻辑框910,其可指定ISOBMFF的种类或特定反复或与文件900兼容的ISOBMFF的衍生。文件900也可包含电影逻辑框920,其可含有用于呈现的元数据。文件900可视情况也包含一或多个片段930a、930b、930c、930n,如上文所论述。
如上文所论述,电影逻辑框920可包含电影标头逻辑框922及视情况一或多个播放轨逻辑框924。在图9的实例中,电影标头逻辑框922用以指示通过电影逻辑框920描述的电影或呈现包含虚拟实境内容。举例来说,电影标头逻辑框922中的保留位在经设定为一值时可指示电影内容为虚拟实境或360度视频,且在电影可能为或可能不为360度视频时可设定为另一值。在一个说明性实例中,如果保留位中的一者用以传达指示,那么等于1的位指示内容为360度视频内容,且等于0的位指示内容可能为或可能不为360度视频内容。未经配置以处理保留位的播放器装置可忽略这些位。
电影标头逻辑框922中的其它字段及/或保留位可用以提供关于虚拟实境内容的可选参数。举例来说,电影标头逻辑框922可包含指示虚拟实境内容为2-D或3-D 360度视频的参数。
作为另一实例,电影标头逻辑框922可包含指示360度视频内容经预拼接抑或后拼接的参数。“预拼接”意谓经捕捉用于360度视频呈现的不同视图在存储于文件900中之前经组装成单一表示。“后拼接”意谓不同视图个别地存储于文件中900中且将通过解码器装置组装成单一表示。
预拼接360度视频通常表示为球面形状,且映射到对于存储更方便的另一形状(例如,等矩形、经映射立方体、经映射角锥形或某一其它形状)。指示所使用的映射类型的参数为可(例如)使用保留位在电影标头逻辑框922中传信的参数的另一实例。举例来说,一个保留位可用以传达每一映射类型指示。在各种实施方案中,播放器装置可支持多个映射类型。在这些实施方案中,电影标头逻辑框922可包含针对每一个别播放轨及/或针对播放轨群组的映射类型。
当电影标头逻辑框922用以指示存储于电影逻辑框920中的电影呈现包含360度视频时,在各种实施方案中,电影逻辑框920中的其它逻辑框可能也不需要传信360度视频的存在。
图10示出其中播放轨层级指示符用于ISO基本媒体文件1000中以指示文件1000包含虚拟实境内容的实例。文件1000可包含文件类型逻辑框1010,其可指定ISOBMFF的种类或特定反复或与文件1000兼容的ISOBMFF的衍生。文件1000也可包含电影逻辑框1020,其可含有用于呈现的元数据。文件1000可视情况也包含一或多个片段1030a、1030b、1030c、1030n,如上文所论述。
电影逻辑框1020可包含电影标头逻辑框1022及一或多个播放轨逻辑框1024,以及此处未说明的其它逻辑框。电影标头逻辑框1022可包含描述作为整体的呈现的信息。播放轨逻辑框1024可包含针对呈现中的播放轨的信息。播放轨逻辑框1024可包含播放轨标头逻辑框1024a及零或多个媒体数据逻辑框1024b。
在图10的实例中,用于特定播放轨逻辑框1024的播放轨标头逻辑框1024a用以指示通过播放轨逻辑框1024描述的播放轨为虚拟实境播放轨,意谓播放轨涉及的样本包含虚拟实境数据。播放轨中的虚拟实境内容可(例如)使用播放轨标头逻辑框1024a中的保留位来指示。举例来说,当特定保留位经设定为一值时,播放轨包含虚拟实境内容,且当位经设定为另一值时,播放轨可能包含或可能不包含虚拟实境内容。在一个说明性实例中,如果保留位中的一者用以传达指示,那么等于1的位指示内容为虚拟实境内容,且等于0的位指示内容可能为或可能不为虚拟实境内容。在一些实施方案中,虚拟实境内容在播放轨标头逻辑框1024a中的传信可取决于在电影标头逻辑框1022中传信的内容。举例来说,当电影标头逻辑框1122指示电影并不包含虚拟实境内容时,那么播放轨标头逻辑框1024a中播放轨含有虚拟实境数据的任何指示可被忽略。
在各种实施方案中,其它虚拟实境相关参数也可在播放轨标头逻辑框1024a中经传信。举例来说,保留位或某一其它变量可用于指示播放轨中的虚拟实境或360度视频经预拼接或后拼接。当播放轨中的视频经预拼接时,额外参数可提供例如摄像机位置(例如,相对于视点及/或观看角度)的信息。当播放轨中的视频经后拼接时,额外参数可提供球面视频表示与用以存储数据于文件1000中的表示之间的映射类型(例如,等矩形、立方体映射、角锥体映射或某一其它形状)。在各种实施方案中,描述360度视频数据中的鱼眼图像的鱼眼参数也可存储在播放轨标头逻辑框1024a中。
当针对播放轨逻辑框1024的播放轨标头逻辑框1024a用以传信播放轨包含虚拟实境内容时,在一些实施方案中,播放轨逻辑框1024中的其它逻辑框可能也不需要传信虚拟实境内容在播放轨中的存在。
在各种实施方案中,当ISO基本媒体文件中的播放轨包含虚拟实境内容时,各种额外或替代方法可用以将虚拟实境内容传信到播放器装置。图11示出ISO基本媒体文件1100的一个实例,其中处理程序逻辑框1124c用以传信播放轨的内容包含虚拟实境内容。文件1100可包含文件类型逻辑框1110,其可指定ISOBMFF的种类或特定反复或与文件1100兼容的ISOBMFF的衍生。文件1100也可包含电影逻辑框1120,其可含有用于呈现的元数据。文件1100可视情况也包含一或多个片段1130a、1130b、1130c、1130n,如上文所论述。
电影逻辑框1120可包含电影标头逻辑框1122及一或多个播放轨逻辑框1124,以及此处未说明的其它逻辑框。电影标头逻辑框1122可包含描述作为整体的呈现的信息。播放轨逻辑框1124可包含针对呈现中的播放轨的信息。播放轨逻辑框1124可包含播放轨标头逻辑框1124a及零或多个媒体数据逻辑框1124b。
媒体数据逻辑框1124b可包含处理程序逻辑框1124c,以及其它逻辑框。也可被称作处理程序参考逻辑框的处理程序逻辑框1124c可指示播放轨的媒体类型。播放轨的媒体类型定义呈现播放轨中的媒体数据的过程。媒体类型的实例包含视频及音频等等。媒体经呈现的方式可包含针对所述媒体的格式。举例来说,播放器装置用以传送播放轨中的视频数据的格式(例如,纵横比、分辨率、帧速率等)可存储在视频播放轨中,且通过处理程序逻辑框1124c的视频处理程序版本来识别。在一些情况下,文件1100可包含针对任何类型的元数据流的通用处理程序。在这些情况下,视频内容的特定格式可通过描述内容的样本项来识别。
在一些情况下,媒体数据逻辑框1124b可包含处理程序逻辑框1124c。处理程序逻辑框1124c可用以指示通过播放轨逻辑框1124描述的播放轨包含虚拟实境数据。举例来说,当播放轨描述视频数据时,处理程序逻辑框1124c可尤其为可通过逻辑框类型“vide”识别的视频处理程序逻辑框。
在各种实施方案中,处理程序逻辑框1124c可用以指示由媒体数据逻辑框1124b参考的媒体内容包含虚拟实境内容。举例来说,处理程序逻辑框1124c可包含包括于播放轨中的视频内容为虚拟实境或360度视频的可选指示符(例如,在保留位或新变量中)。未经配置以读取可选指示符的视频播放器可忽略所述指示符。
在一些实施方案中,视频处理程序逻辑框可视情况也包含描述虚拟实境内容的参数,例如虚拟实境或360度视频为2-D抑或为3-D、360度视频经预拼接抑或经后拼接、用于360度视频的映射及/或在360度视频包含鱼眼图像时的鱼眼参数。在各种实施方案中,可在播放轨逻辑框1024中可找到的各种其它逻辑框中指示与虚拟实境内容相关的参数。举例来说,参数可在播放轨标头逻辑框1124a中传信。替代地或另外,参数可在媒体标头逻辑框(通过逻辑框类型“mdhd”识别)中及/或在视频媒体标头逻辑框(通过逻辑框类型“vmhd”识别)中传信,所述两者在此处并未予以说明。替代地或另外,参数可指示于样本项中及/或于可放置于播放轨逻辑框1124的顶层处的新定义逻辑框中。
图12示出ISO基本媒体文件1200的实例,其中新处理程序逻辑框1224d已经定义以指示播放轨包含虚拟实境内容。文件1200可包含文件类型逻辑框1210,其可指定ISOBMFF的种类或特定反复或与文件1200兼容的ISOBMFF的衍生。文件1200也可包含电影逻辑框1220,其可含有用于呈现的元数据。文件1200可视情况也包含一或多个片段1230a、1230b、1230c、1230n,如上文所论述。
电影逻辑框1220可包含电影标头逻辑框1222及一或多个播放轨逻辑框1224,以及此处未说明的其它逻辑框。电影标头逻辑框1222可包含描述作为整体的呈现的信息。播放轨逻辑框1224可包含针对呈现中的播放轨的信息。播放轨逻辑框1224可包含播放轨标头逻辑框1224a及零或多个媒体数据逻辑框1224b。
如上文所论述,在一些情况下,媒体数据逻辑框1224b可包含处理程序逻辑框1224d,其可描述用于呈现通过媒体数据逻辑框1224b描述的媒体内容的格式。在图12的实例中,已定义特定于虚拟实境或360度视频数据的新处理程序逻辑框1224d。新处理程序逻辑框1224d可(例如)通过逻辑框类型“vrvd”来识别。在此实例中,不与虚拟实境内容兼容的视频播放器可能不能识别新处理程序逻辑框1224d,且因此可忽略新处理程序逻辑框1224d且跳过播放轨逻辑框1224涉及的任何内容。虚拟实境内容将因此并不通过未经配置以显示虚拟实境视频的播放器来呈现及显示。
在一些实施方案中,新处理程序逻辑框可视情况也包含描述虚拟实境内容的参数,例如虚拟实境或360度视频为2-D抑或3-D、360度视频为预拼接抑或后拼接、用于360度视频的映射及/或鱼眼参数。在各种实施方案中,可在播放轨逻辑框1224中可找到的各种其它逻辑框中指示与虚拟实境内容相关的参数。举例来说,参数可在播放轨标头逻辑框1224a中传信。替代地或另外,参数可在媒体标头逻辑框(通过逻辑框类型“mdhd”识别)中及/或在视频媒体标头逻辑框(通过逻辑框类型“vmhd”识别)中传信,所述两者在此处并未予以说明。替代地或另外,参数可指示于样本项中及/或于可放置于播放轨逻辑框1224的顶层处的新定义逻辑框。
图13示出可包含于ISO基本媒体文件中的媒体逻辑框1340的实例。如上文所论述,媒体逻辑框可包含于播放轨逻辑框中,且可含有描述播放轨中的媒体数据的对象及信息。在所说明的实例中,媒体逻辑框1340包含媒体信息逻辑框1342。媒体逻辑框1340也可包含在此处未说明的其它逻辑框。
媒体信息逻辑框1342可含有描述关于播放轨中的媒体的特征信息的对象。举例来说,媒体信息逻辑框1342可包含描述媒体信息在播放轨中的位置的数据信息逻辑框。作为另一实例,当播放轨包含视频数据时,媒体信息逻辑框1342可包含视频媒体标头。视频媒体标头可含有独立于视频媒体的译码的一般呈现信息。当播放轨包含音频数据时,媒体信息逻辑框1342也可包含声音媒体标头。
媒体信息逻辑框1342也可包含样本表逻辑框1344,如所说明实例中所提供。通过逻辑框类型“stbl”识别的样本表逻辑框1344可提供媒体样本在播放轨中的位置(例如,关于文件的位置),以及所述样本的时间信息。使用通过样本表逻辑框1344提供的信息,播放器装置可以正确时间次序定位样本、确定样本的类型及/或确定大小、容器及样本在容器内的偏移等等。
样本表逻辑框1344可包含通过逻辑框类型“stsd”识别的样本描述逻辑框1346。样本描述逻辑框1346可提供关于(例如)用于样本的译码类型的详述信息,及那个译码类型所需的任何初始化信息。存储于样本描述逻辑框中的信息可特定于包含样本的播放轨的类型。举例来说,在播放轨为视频播放轨时,可将一个格式用于样本描述,且在播放轨为提示播放轨时,可使用不同格式。作为另一实例,用于样本描述的格式也可视提示播放轨的格式而发生变化。
样本描述逻辑框1346可包含一或多个样本项1348a、1348b、1348c。样本项类型为摘要类别,且因此通常样本描述逻辑框包含特定样本项逻辑框,例如用于视频数据的可视样本项或用于音频样本的可听样本项,以及其它实例。样本项逻辑框可存储特定样本的参数。举例来说,对于视频样本,样本项逻辑框可包含视频样本的宽度、高度、水平分辨率、垂直分辨率、帧计数及/或深度等等。作为另一实例,对于音频样本,样本项可包含信道计数、信道布局及/或取样速率等等。
在所说明的实例中,第一样本项1348a包含受限方案信息逻辑框1360。由逻辑框类型“rinf”识别的受限方案信息逻辑框可含有理解应用于样本的受限方案及方案的参数两者所需的信息。在一些情况下,文件的原创者可要求来自播放器装置的某些动作。在这些情况下,文件可包含受限方案信息逻辑框,播放器装置可定位且使用所述受限方案信息逻辑框来确定用于呈现文件的媒体内容的要求。可能能够呈现内容的播放器也可使用受限方案信息逻辑框来确定其不可呈现内容,且因此不应尝试处理所述内容。受限方案信息逻辑框通常包含原始样本项类型,即,在由受限方案信息逻辑框描述的任何变换之前的样本项类型。
在各种实施方案中,受限方案可经定义用于虚拟实境内容。在这些实施中,受限方案信息逻辑框1360可添加到包含虚拟实境数据的样本项1348a。受限方案的类型可经指定于通过逻辑框类型“schm”识别的方案类型逻辑框1362中。举例来说,对应于“vrvd”的编码可用以识别用于虚拟实境内容的受限方案。
受限方案信息逻辑框1360在所说明的实例中包含通过逻辑框类型“schi”识别的方案信息逻辑框1364。方案信息逻辑框1364可存储用于特定方案的信息。举例来说,当受限方案是用于虚拟实境内容时,方案信息逻辑框1364可包含用于虚拟实境内容的参数。这些参数可包含(例如):虚拟实境或360度视频为2-D抑或3-D、360度视频经预拼接抑或经后拼接、用于360度视频的映射及/或当360度视频包含鱼眼图像时的鱼眼参数。在各种实施方案中,方案信息逻辑框可经定义用于虚拟实境内容,尤其用于含有用于虚拟实境内容的参数。
使用图13中所示的技术,无新逻辑框需要添加到ISOBMFF规范,所述ISOBMFF规范可能不被旧版播放器装置理解。即使对于新逻辑框,旧版播放器装置可尝试播放所述装置不可识别的内容,且当此内容为虚拟实境媒体时,结果可为失真的呈现。在避免添加新逻辑框时,文件可经产生用于虚拟实境内容,其中文件很可能仅包含旧版播放器装置可识别的逻辑框。旧版播放器装置可进一步确定所述装置不能实施通过受限方案信息逻辑框1364描述的受限方案,且因此不尝试显示虚拟实境内容。
所述技术另外为旧版播放器及能够呈现虚拟实境内容的播放器两者提供灵活性。旧版播放器可(例如)确定播放器是否理解通过受限方案信息逻辑框识别的虚拟实境方案。当播放器装置未能符合受限方案时,播放器装置可选择根本不呈现播放轨中的内容,或可能能够代替地处理原始的未经变换样本。受限方案机构因此可使得播放器装置能够检查文件以确定对呈现位流的要求,且可使旧版播放器装置停止解码及呈现所述装置可能不能处理的文件。
在各种实施方案中,虚拟实境内容可替代地或另外包含于视频位流中的补充增强型信息(SEI)消息中。所述SEI消息可因此指示位流包含虚拟实境内容。在各种实施方案中,SEI消息可指示文件层级、电影层级及/或播放轨层级的虚拟实境内容。在各种实施方案中,SEI消息也可包含描述360度视频的特性的参数(例如,视频为2-D抑或3-D、经预拼接抑或经后拼接、鱼眼参数等)。
使用上文所描述的技术中的一或多者,鱼眼参数可以反向兼容的方式包含于ISOBMFF文件中。举例来说,可使用以下步骤达成反向兼容性:
-通用样本项‘resv’用以替换样本项的4-字符码(4CC)。
-受限方案信息逻辑框经添加到样本描述,从而使得所有其它逻辑框未经修改。
-原始样本项类型存储于受限方案信息逻辑框中所含原始格式逻辑帧内。
-新逻辑框经定义以含有360度视频元数据信息且此新逻辑框包含于受限方案信息逻辑框中。
-虚拟实境方案类型经定义,其包含于SchemeTypeBox中。
-360度视频元数据包含于存储在SchemeInformationBox中的新逻辑框(例如,称作VR视频逻辑框)中。
下文提供用于在ISOBMFF文件中提供虚拟实境或360度视频信息的定义、语法及语义。以下部分拟定为对ISOBMFF规范的部分8.15的修改。待添加到此部分的文本展示为带下划线的文本(所添加文本的实例)。
虚拟实境视频信息逻辑框的定义、语法及语义如下:
定义
逻辑框类型:‘vrvd’
容器:方案信息逻辑框(‘schi’)
必选:是(当SchemeType为‘vrvd’时)
数量:一个
VR视频逻辑框用以指示播放轨中所含视频为VR视频。VR视频逻辑框将在SchemeType为‘vrvd’时存在。
语法
Figure BDA0001863204950000291
语义
vr_mapping_type为整数,所述整数指示从球面视频到矩形格式的映射类型。值零指示等矩形映射。值一指示立方体映射。值二指示未使用特定投影映射且每一经译码视频 图片为含有各自由鱼眼摄像机透镜捕捉的多个(通常两个)圆形图像的鱼眼视频图片,且格 式通过FisheyeVideoInfoBox来描述。其它值予以保留。
所引入的鱼眼视频信息逻辑框的定义、语法及语义如下(例如,对ISOBMFF规范的部分8.15的添加):
定义
逻辑框类型:‘fevi’
容器:方案信息逻辑框(‘vrvd’)
必选:是(当vr_mapping_type等于2时)
数量:一个
鱼眼视频信息逻辑框用以指示播放轨中所含鱼眼VR视频的格式。格式信息可用于鱼眼VR视频的呈现。此逻辑框将在容器‘vrvd’逻辑框的vr_mapping_type等于2时存在。
语法
Figure BDA0001863204950000292
Figure BDA0001863204950000301
语义
num_circular_images指示在此逻辑框适用的每一样本的经译码图片中的圆形图像的数目。通常地,值等于2,但其它非零值也为可能的。
image_center_x为固定点16.16值,所述值指示在此逻辑框适用的每一样本的经译码图片中的圆形图像的中心的水平坐标(在明度样本中)。
image_center_y为固定点16.16值,所述值指示在此逻辑框适用的每一样本的经译码图片中的圆形图像的中心的垂直坐标(在明度样本中)。
full_radius为固定点16.16值,所述值指示从圆形图像的中心到整个球形图像的边缘的半径(在明度样本中)。[参见图4的展示全半径、帧半径及场景半径的实例]。全半径可定义为在圆形图像并非完美的圆形而实际上为椭圆的情况下的水平及垂直半径两者。如果圆形图像经裁剪,那么此值仍经定义为理论上未经裁剪的全半径。
frame_radius为固定点16.16值,所述值指示从圆形图像的中心到图像边界的最近边缘的半径(在明度样本中)。圆形鱼眼图像可由摄像机帧裁剪,因而此值指示其中像素可用的圆形的半径。
scene_radius为固定点16.16值,所述值指示从圆形图像的中心到所述图像中的区域的最近边缘的半径(在明度样本中),在所述区域中保证无来自摄像机主体本身的障碍。
image_rotation为固定点16.16值,所述值指示圆形图像的旋转量(以度数计)。不同视频摄像机制造商可针对所捕捉的每一个别鱼眼图像选择不同的坐标系或布局。图像可旋转图像+/-90度,或+/-180度或任何其它值。
image_flip指示图像是否已翻转及如何翻转以及因此需要应用的反向翻转操作。值0指示图像尚未翻转。值1指示图像已垂直翻转。值2指示图像已水平地翻转。值3指示图像已垂直且水平地翻转。
image_scale_axis_angle、image_scale_x及image_scale_y为三个固定点16.16值,所述值指示图像是否已沿轴线经缩放及如何经缩放。轴线由单一角度定义,如通过image_scale_axis_angle的值所指示,以度数计。0度的角度意谓水平向量为完全水平的且垂直向量为完全垂直的。image_scale_x及image_scale_y的值指示在分别与轴线平行及正交的方向上的缩放比率。
field_of_view为固定点16.16值,所述值指示鱼眼透镜的视野(以度数计)。用于半球面鱼眼透镜的典型值为180.0度。
num_compression_curve_pionts为整数,所述整数指示以下compression_curve_x及compression_curve_y对。
所述系列compression_curve_x及compression_curve_y对为固定点16.16值,所述值表示圆形图像相对于经捕捉的球面场景的部分的几何压缩曲线。compression_curve_x值的数组表示介于图像中心处的0.0到图像边界边缘处的1.0范围内的半径长度的标准化值。compression_curve_y值的数组表示从摄像机观察方向的角度(以度数计)。对于具有180度的视野的鱼眼透镜,沿标准化轴线的度数的范围为图像的中心处的0.0到图像的边界边缘处的90.0度。
num_deadzones为整数,所述整数指示在此逻辑框适用的每一样本的经译码图片中的零值区的数目。
deadzone_left_horizontal_offset、deadzone_top_vertical_offset、deadzone_width及deadzone_height为整数值,所述整数值指示其中像素不可用的零值区矩形区域的位置及大小。deadzone_left_horizontal_offset及deadzone_top_vertical_offset分别指示经译码图片中的零值区的左上角的水平及垂直坐标(在明度样本中)。deadzone_width及deadzone_height分别指示零值区的宽度及高度(在明度样本中)。为节省用于表示视频的位,零值区内的全部像素应设定为相同的像素值,例如全部黑色。
在各种实施方案中,用于具有鱼眼图像的360度视频的鱼眼参数可替代地或另外提供于补充增强信息(SEI)消息中。SEI消息为用于视频位流中以提供关于视频的信息的一种类型的网络抽象层(NAL)单元。SEI消息可提供(例如)可增强经解码视频信号的可用性但不一定用于解码视频图片中的样本的值的定时信息及其它补充数据。
图14示出可为位流的部分的存取单元1400(AU)的实例。如下文进一步论述,位流可包含一系列存取单元。解码每一存取单元产生一个经解码图片。例如此处所说明的实例存取单元1400的存取单元包含于H.264/AVC及H.265/HEVC标准中。
如图14的实例中所示的存取单元1400可包含一起构成初级经译码图片的NAL单元的集合。存取单元1400可包含可选的NAL单元,其在此处以点线示出。存取单元1400可视情况以存取单元分隔符号1402开始。存取单元分隔符号可有助于定位存取单元的开始。存取单元1400也可视情况包含先于初级经译码图片1406的补充增强信息1404。SEI可含有例如图片定时信息的数据。初级经译码图片1406可包含视频译码层(VCL)NAL单元。VCL NAL单元包含表示视频图片的样本的切片或切片数据分区。在初级经译码图片1406之后可为含有冗余经译码图片1408的一些额外VCL NAL单元。冗余经译码图片1408可包含同一视频图片的区域的冗余表示,且可供解码器用于在初级经译码图片1406中的数据的损耗或损毁后进行恢复。不需要解码器解码冗余经译码图片(如果其存在)。
当初级经译码图片1406为经译码视频序列的最后一个图片时,那么存取单元1400可包含序列结尾1410NAL单元以指示序列结尾。当初级经译码图片1406也为位流中的最后一个经译码图片时,存取单元1400也可包含流结尾1412NAL单元(也被称作位流结尾NAL单元)。
下文进一步描述存取单元中的NAL单元。
在各种实施方案中,SEI NAL单元可用于提供关于经编码360度鱼眼图片的鱼眼参数。下文提供用于包含鱼眼参数的SEI NAL单元的实例语法及语义。
语法
Figure BDA0001863204950000331
语义
360鱼眼视频信息SEI消息在经译码逐层视频序列(Coded Layer-wise VideoSequence;CLVS)中的存在指示CLVS中的每一经译码视频图片为含有多个(通常两个)由鱼眼摄像机透镜捕捉的圆形图像的360度鱼眼视频图片。在360鱼眼视频信息SEI消息中携载的360度鱼眼视频的信息可由接收器用以将360鱼眼视频直接呈现于虚拟实境环境中。
360鱼眼视频信息SEI消息适用于含有SEI消息的CLVS,也被称作当前CLVS。如果存在于CVLS中,那么360鱼眼视频信息SEI消息将存在于CLVS的第一存取单元中且可存在于CLVS的其它存取单元中。
num_circular_images_minus1加1指定在当前CLVS中的每一经译码图片中的圆形图像的数目。通常,num_circular_images_minus1的值等于1,而其它非零值也为可能的。
image_center_x_int[i]及image_center_x_frac[i]分别指定在当前CLVS中的每一经译码图片中的第i个圆形图像的中心的水平坐标(在明度样本中)的整数及小数部分。
image_center_y_int[i]及image_center_y_frac[i]分别指定在当前CLVS中的每一经译码图片中的第i个圆形图像的中心的垂直坐标(在明度样本中)的整数及小数部分。
full_radius_int[i]及full_radius_frac[i]分别指定从圆形第i个圆形图像的中心到整个球形图像的边缘的半径(在明度样本中)的整数及小数部分。[参见图4的实例]。全半径可经定义为在圆形图像并非完美圆形而实际上为椭圆的情况下的水平及垂直半径两者。如果圆形图像经裁剪,那么此值仍经定义为理论上未经裁剪的全半径。
picture_radius_int[i]及picture_radius_frac[i]分别指定从第i个圆形图像的中心到图像边界的最近边缘的半径(在明度样本中)的整数及小数部分。[参见图4的实例]。圆形鱼眼图像可由摄像机帧裁剪,因而此值指示其中像素可用的圆形的半径。
scene_radius_int[i]及scene_radius_frac[i]分别指定从第i个圆形图像的中心到所述图像中的最近区域的半径(在明度样本中)的整数及小数部分,在所述区域中保证不存在来自摄像机主体本身的障碍。[参见图4的实例]。
image_rotation_int[i]及image_rotation_frac[i]分别指定第i个圆形图像的旋转量(以度数计)的整数及小数部分。不同视频摄像机制造商可针对所捕捉的每一个别鱼眼图像选择不同的坐标系或布局。图像可旋转图像+/-90度,或+/-180度或任何其它值。[图3示出两个图像,一个旋转+90度,另一个旋转-90度(即,+270度)]。
image_flip_idc[i]指示第i个圆形图像是否已翻转及如何翻转以及因此需要应用的反向翻转操作。值0指示图像尚未翻转。值1指示图像已垂直翻转。值2指示图像已水平地翻转。值3指示图像已垂直且水平地翻转。
image_scale_axis_angle_int[i]及image_scale_axis_angle_frac[i]分别指定第i个圆形图像已沿其缩放的缩放轴线的角度(以度数计)的整数及小数部分。0度的角度意谓水平向量为完全水平的且垂直向量为完全垂直的。
image_scale_x_int[i]及image_scale_x_frac[i]分别指定平行于第i个圆形图像的缩放轴线的方向的缩放比率的整数及小数部分。
image_scale_y_int[i]及image_scale_y_frac[i]分别指定正交于第i个圆形图像的缩放轴线的方向的缩放比率的整数及小数部分。
field_of_view_int[i]及field_of_view_frac[i]分别指定第i个圆形图像的鱼眼透镜的视野(以度数计)的整数及小数部分。用于半球面鱼眼透镜的典型值为180.0度。
num_compression_curve_pionts[i]指定以下列表的数目:compression_curve_x_int[i]、compression_curve_x_frac[i]、compression_curve_y_int[i],及compression_curve_y_frac[i]。
num_compression_curve_pionts[i]指定以下列表的数目:compression_curve_x_int[i]、compression_curve_x_frac[i]、compression_curve_y_int[i],及compression_curve_y_frac[i]。
compression_curve_x_int[i][j]及compression_curve_x_frac[i][j]指定第i个圆形图像的介于图像中心处0.0到图像边界边缘处1.0范围内的半径长度的第j个正规化值。
compression_curve_y_int[i][j]及compression_curve_y_frac[i][j]指定从第i个圆形图像的摄像机观察方向的第j个角度(以度数计)。对于具有180度的视野的鱼眼透镜,沿标准化轴线的度数的范围为图像的中心处的0.0到图像的边界边缘处的90.0度。
所述系列半径长度及角度的标准化值对表示圆形图像相对于由第i个鱼眼摄像机透镜捕捉的球面场景的部分的几何压缩曲线。
num_deadzones指定在当前CLVS中的每一经译码图片中的零值区的数目。
deadzone_left_horizontal_offset[i]、deadzone_top_vertical_offset[i]、deadzone_width[i]及deadzone_height[i]指定其中像素不可用的第i个零值区矩形区域的位置及大小。deadzone_left_horizontal_offset[i]及deadzone_top_vertical_offset[i]分别指定在当前CLVS中的每一经译码图片中的第i个零值区的左上角的水平及垂直坐标(在明度样本中)。deadzone_width[i]及deadzone_height[i]分别指定在当前CLVS中的每一经译码图片中的第i个零值区的宽度及高度(在明度样本中)。应注意,为节省用于表示视频的位,零值区内的全部像素应设定为同一像素值,例如全部黑色。
在各种实施方案中,用于具有鱼眼图像的360度视频的鱼眼参数可替代地或另外使用会话描述协议(SDP)来提供。SDP可用以描述多媒体通信会话。这些描述可用于(例如)会话通知、会话邀请及参数协商。SDP并非用以递送媒体本身,而是可用于媒体类型、格式及相关联特性的协商的端点之间。特性及参数集合常常被称作会话配置文件。SDP最初为会话通知协议(SAP)的分量,但发现结合实时传送协议(RTP)、实时流传输协议(RTSP)、会话初始通讯协议(SIP)及作为用于描述多播会话的独立格式的其它用途。SDP描述于RFC 4566中。
图15示出用于网络通信的开放系统互连(OSI)模型1500的实例。在此模型内,SDP实施于会话层1510中,其中存在连接管理、错误恢复、安全性、远程操作及其它功能。如下文进一步论述,鱼眼参数可包含于在会话层1510中交换的会话属性1520中。
OSI模型1500使通信功能标准化,且顺应性实现多样化通信系统之间的互操作性。模型1500中的每一层服务上方的层且由下方的层服务。物理层1502定义经由物理媒体对原始位流的传输及接收。数据连结层1504定义两个节点之间的数据帧的可信赖传输。例如物理寻址的操作在数据连结层1504中进行操控。网络层1506定义多节点网络的结构及管理(包含寻址、路由及流量控制)。例如分组片段化及逻辑寻址的操作在网络层1506中发生。输送层1508定义在网络上的点之间的数据节段的可信赖传输,包含节段化、确认及多路复用。例如端对端连接管理、消息节段化、消息定序、可靠性及流控制的操作可在输送层1508中发生。会话层1510定义会话的管理,其为以两个节点之间的多次背对背传输的形式连续交换信息。如先前所提及,例如连接管理、错误恢复、安全性及远程操作的操作可在会话层1510中发生。呈现层1512定义网络连接服务与应用之间的数据的转译,包含字符编码、数据压缩及加密及/或解密。应用层1514包含高级应用程序设计接口(API),所述高级应用程序设计接口包含资源共享、远程文件存取及其它操作。
在各种实施方案中,鱼眼参数可包含于会话描述中及/或SDP消息中的媒体描述中。举例来说,字段可在会话描述及/或媒体描述中经添加或修改以指示流传输内容中360度视频的存在。另外,在一些实施方案中,关于虚拟实境内容的参数也可添加到SDP消息。这些参数可包含(例如)虚拟实境内容为2-D抑或3-D、内容经预拼接抑或经后拼接、用以存储数据的映射,及/或描述视频数据中的鱼眼图像的参数。在此实例及其它实例中,SDP可用于基于RTP的流传输、广播及/或远程呈现(telepresence)或会议应用中以指示媒体内容包含虚拟实境内容。
下文提供会话描述中的字段的实例。可选字段经指定具有“=*”且在以下实例中,360度视频参数可使用会话属性行及/或媒体属性行来指定。
会话描述
v=(协议版本号码,目前仅0)
o=(发起者及会话识别符:用户名称、id、版本号码、网络地址)
s=(会话名称:必选至少一个经UTF-8编码字符)
i=*(会话标题或短信息)
u=*(描述的URI)
e=*(具有联络人的可选名称的零或多个电子邮件地址)
p=*(具有联络人的可选名称的零或多个电话号码)
c=*(连接信息—如果包含于所有媒体中则不需要)
b=*(零或多个带宽信息行)
一或多个时间描述(“t=”及“r=”行;参见下文)
z=*(时区调整)
k=*(加密密钥)
a=*(零或多个会话属性行)
零或多个媒体描述(每一个媒体描述由“m=”行开始;参见下文)
时间描述
t=(会话有效时间)
r=*(零或多个重复次数)
媒体描述
m=(媒体名称及输送地址)
i=*(媒体标题或信息字段)
c=*(连接信息—如果包含在会话层级处则可选)
b=*(零或多个带宽信息行)
k=*(加密密钥)
a=*(零或多个媒体属性行—覆写会话属性列)
在各种实施方案中,用于包含鱼眼图像的360度视频的鱼眼参数可替代地或另外提供于使用DASH传输的视频数据中。举例来说,360度视频可经指示在DASH呈现的媒体呈现层级。如由DASH规范定义的媒体呈现为用于有界或无界媒体呈现的数据的集合(例如,单一动画或连续实时流以及其它实例)。媒体呈现可通过媒体呈现描述来描述,文献含有元数据,所述元数据可由DASH客户端用以建构适当HTTP统一资源定位符(URL)来存取媒体呈现的节段。
图16示出用于流传输视频内容的DASH呈现1600的实例。视频内容含于可描述连续视频流的媒体呈现1602中。媒体呈现1602可包含媒体呈现描述(MPD),其也可被称作信息列表。MPD为使用例如可延伸标示语言(XML)格式化的含有关于媒体呈现1602中的媒体节段的信息的文献。此信息可包含例如节段与可用于在所述节段之间进行选择的信息之间的关系。MPD也可包含客户端装置(例如,接收内容的装置)可使用的其它数据。
在各种实施方案中,媒体呈现描述可用以指示通过媒体呈现描述来描述的媒体内容包含虚拟实境内容。举例来说,元素可经修改或添加到用于媒体表示描述的结构描述,其中元素则传信虚拟实境内容。在各种实施方案中,属性也可经修改或添加到媒体呈现描述以提供关于虚拟实境内容的信息,例如内容为2-D抑或3-D、内容经预拼接抑或经后拼接、在内容经后拼接时用于视频帧的映射及/或例如上文所论述的鱼眼参数。在一些实施方案中,媒体呈现描述中的虚拟实境指示符指示呈现中的全部内容针对虚拟实境经格式化。
媒体呈现1602可划分成周期1604a到1604c。由DASH定义的周期为在媒体呈现1602内的时间间隔。呈现因此由相连的一系列周期1604a到1604c构成。可由(例如)开始时间描述周期1604a到1604c,其中所述开始时间指示周期中的时间间隔开始的时间。换句话说,开始时间为从时间零的偏移。
在各种实施方案中,周期的元素及/或属性可用于指示所述周期包含360度视频内容。举例来说,元素可经修改或添加到针对周期的结构描述,其中元素则传信虚拟实境内容。在各种实施方案中,属性也可经修改或添加到周期以提供关于虚拟实境内容的信息,例如内容为2-D抑或3-D、内容为预拼接抑或后拼接、当内容经后拼接时用于视频帧的映射及/或鱼眼参数。在一些实施方案中,周期中的虚拟实境指示符指示周期中的内容针对虚拟实境经格式化。
在周期1604b(例如,所说明的实例中的周期2)内,媒体内容可具有恒定的编码集合,包含(例如)平均位速率、语言、字幕设定、辅助字幕设定等。周期1604b也可提供其中内容可从其流传输的源(例如,基础统一资源定位符(URL))。周期1604b中的内容可经布置成适配集1624、1626。适配集表示一或多个媒体内容分量的可互换经编码版本的集合。举例来说,周期可包含用于主要视频分量的一个适配集1624及用于主要音频分量的独立适配集1626。当存在其它可用内容(例如字幕或音频描述)时,这些中的每一者可具有独立适配集。
在各种实施方案中,360度视频信息可包含于适配集中。举例来说,元素可经修改或添加到针对适配集的结构描述,其中元素则传信360度视频内容。在各种实施方案中,属性也可经修改或添加到适配集以提供关于虚拟实境内容的信息,例如内容为2-D抑或3-D、内容经预拼接抑或后拼接、当内容经后拼接时用于视频帧的映射及/或鱼眼参数。在一些实施方案中,适配集中的360度视频指示符指示所述适配集中的表示中的每一者包含360度视频内容。
适配集(例如,视频适配集1624)可含有多个替代表示1632。表示描述一或若干个媒体内容分量的可递送经编码版本。适配集内的任何单一表示可用以在周期中呈现媒体内容分量。一个适配集中的不同表示可被视为感知上等效的,意谓客户端装置可从适配集内的一个表示动态切换到另一表示以便适于网络条件或其它因素。举例来说,每一表示可具有特定带宽及帧高度及宽度,以及例如帧速率或编码类型的其它信息。表示1632可进一步包含描述媒体呈现1602中的节段的节段信息1642。
在各种实施方案中,关于360度视频内容的信息可提供于表示1632中。举例来说,元素可经修改或添加到针对所述表示的结构描述,其中元素则指示虚拟实境内容。在各种实施方案中,属性也可经修改或添加到所述表示以提供关于虚拟实境内容的信息,例如内容为2-D抑或3-D、内容经预拼接抑或后拼接及/或在内容经后拼接时用于视频帧的映射。在一些实施方案中,表示中的虚拟实境指示符指示所述表示的内容针对虚拟实境经格式化。
节段信息1642可描述初始化节段1644及一或多个媒体节段1646a到1646c。初始化节段1644可包含先于媒体本身的某一内容。每一媒体节段1646a到1646c包含整个周期1604b的部分。媒体节段1646a到1646c可由相对于周期1604b的开始的开始时间及源位置(例如,URL)描述。
在各种实施方案中,用于包含鱼眼内容的360度视频的鱼眼参数可替代地或另外提供于MPEG输送流(MPEG-TS)中。图17示出MPEG输送流1700的实例。MPEG-TS为用以传输及存储音频、视频及编程数据的容器格式。MPEG-TS指定囊封经分组化基本流的容器格式,其具有用于在信号降级时维持传输完整性的错误校正及流同步特征。MPEG-TS意欲用于经由不可靠传输媒体(例如地面及卫星广播)流传输。
MPEG输送流1700包含多个输送分组1702。分组为输送流中的数据的基本单元。输送流本身为一系列分组,而无任何全域性标头。每一分组1702包含标头1704及有效负载1706。标头1704提供关于分组1702的信息,包含(例如)描述有效负载的内容、相对于其它分组的分组序列、错误信息等。
在其它字段之间,标头1704可包含分组识别符1708(PID)。分组识别符1708可描述包含于有效负载1706中的数据。举例来说,PID=2指示有效负载1706包含输送流描述符表(TSDT)中的一些或全部。输送流描述符表可含有与输送流1700相关的描述符1710。
在各种实施方案中,描述符可添加到描述360度视频内容的输送流描述符表。举例来说,可针对360度视频参数添加描述符,例如内容为2-D抑或3-D、内容经预拼接抑或后拼接、在内容经后拼接时用于视频帧的映射及/或鱼眼参数。在这些及其它实例中,接收输送流1700的客户端装置可使用所述参数来解码及/或重新映射在输送流1700中传输的视频数据。
作为另一实例,当内容经由3GPP蜂窝式网络传输时,多媒体广播多播服务(MBMS)可用以指示360度视频内容。MBMS为点对多点接口规范,其可在小区内及在核心网络内提供广播及多播服务的有效递送。针对MBMS的目标应用包含移动电视、实况视频及音频流传输、文件递送及紧急警示的递送。
在各种实施方案中,360度视频内容的传信以及与内容相关的参数可通过添加新特征到MBMS特征要求列表来实现。在各种实施方案中,360度视频内容的传信以针对其它广播及多播应用的类似方式实现。
图18示出使用描述视频中的鱼眼图像的参数编码360度鱼眼视频的过程1800的实例。在1802处,过程1800包含获得由全向摄像机捕捉的360度视频数据,其中所述360度视频数据的视频帧包含场景的图像,且其中,在所述图像中,所述场景经扭变成所述图像的圆形区域。所述圆形区域也可被称作鱼眼图像。
在1804处,过程1800包含获得与全向摄像机相关联的参数,其中所述参数描述图像的圆形区域。所述参数包含关于图5、6A及6B所描述的那些参数以及其它参数。在一些实施方案中,所述参数直接从摄像机获得。在一些实施方案中,所述参数嵌入于360度视频数据中作为元数据。
在图18的1806处,过程1800包含编码360度视频数据。在各种实施方案中,360度视频在未对数据进行任何变换或操纵的情况下经编码,以使得视频中的鱼眼图像在由全向摄像机捕捉时经编码。在各种实施方案中,使用AVC或HEVC标准或某一其它视频编码标准来编码360度视频。
在1808处,过程1800包含产生经编码视频数据,其中所述经编码视频数据包含经编码360度视频数据及与全向摄像机相关联的参数。
在一些实施方案中,产生经编码视频数据包含将经编码360度视频写入到文件,其中所述文件根据ISOBMFF文件格式经格式化。在这些实施中,参数可包含在文件层级、电影层级及/或文件的播放轨层级处。在一些实施方案中,参数可包含于文件中的受限方案信息逻辑框中。
在一些实施方案中,产生经编码视频数据包含将参数编码于SEI消息中。在这些实施中,SEI消息可包含于经编码360度视频数据中。举例来说,可为NAL单元的SEI消息可包含于包含经编码360度视频数据的位流的存取单元中。
在一些实施方案中,产生经编码视频数据包含将参数编码为SDP属性。在这些实施中,参数可使用会话数据协议经传达到目的地。
在一些实施方案中,产生经编码视频数据包含将参数写入到MPD文件中。MPD文件可包含于经编码视频数据的DASH呈现中。DASH呈现可从一个位置流传输到另一个位置。
在一些实施方案中,产生经编码视频数据包含将参数写入到MPEG输送流中。在这些实施中,参数可包含为输送流中的描述符。参数可在随后使用MPEG输送流经传达到目的地。
图19示出用于解码包含360度视频的经编码视频数据的过程1900的实例。在1902处,过程1900包含获得经编码视频数据,其中经编码视频数据包含由全向摄像机捕捉的360度视频数据及与全向摄像机相关联的参数。所述参数可包含上文关于图5、6A及6B所描述的那些以及其它参数。
在图19的1904处,过程1900包含解码经编码视频数据以产生360度视频数据,其中来自所述360度视频数据的帧包含场景的图像,且其中,在所述图像中,所述场景经扭变成所述图像的圆形区域。所述圆形区域也可被称作鱼眼图像。
在1906处,过程1900包含产生360度视频呈现,其中产生360度视频呈现包含使用参数将圆形区域映射到360度格式。
在一些实施方案中,经编码视频数据是从文件获得,其中所述文件根据ISOBMFF文件格式经格式化。在这些实施中,参数在文件中可处于文件层级、电影层级及/或播放轨层级。在一些实施方案中,参数可在文件中的受限方案信息逻辑框中。
在一些实施方案中,参数是从SEI消息解码。在这些实施中,SEI消息可包含于经编码视频数据中。举例来说,SEI消息可为包含360度视频数据的经编码位流中的NAL单元。在各种实施方案中,SEI消息可根据AVC或HEVC标准,或某一其它标准经格式化。
在一些实施方案中,解码经编码视频数据包含从SDP参数获得参数。在这些实施中,经编码视频数据可使用SDP协议经由网络来获得。
在一些实施方案中,解码经编码视频数据包含从MPD文件获得参数。在这些实施中,可获得经编码视频数据来作为使用DASH协议流传输的视频。
在一些实施方案中,解码经编码视频数据包含从MPEG输送流获得参数。在这些实施中,参数可编码为输送流中的描述符,且经编码视频数据可从输送流获得。
在一些实施方案中,上文所论述的过程1800、1900可实施于移动装置中,例如智能型电话、平板计算机、膝上型计算机、个人数字助理或可与网络无线连接及/或足够小且轻以易于输送的任何其它类型的计算装置。在这些实施中,移动装置可包含用于捕捉360度视频的全向摄像机。在一些实施方案中,移动装置可包含用于显示360度视频的显示器。
在一些实例中,可通过例如下文关于图20所论述的系统的计算装置或设备执行过程1800、1900。举例来说,可通过图20中所展示的系统2000及/或存储器2008或输出2010执行过程1800、1900。在一些情况下,计算装置或设备可包含处理器、微处理器、微计算机或经配置以进行图18及19的过程1800、1900的步骤的装置的其它组件。在一些实例中,计算装置或设备可包含经配置以捕捉包含视频帧的视频数据(例如,视频序列)的摄像机。举例来说,计算装置可包含摄像机装置(例如,全向摄像机或其它类型的摄像机装置),所述摄像机装置可包含视频编解码器。在一些实例中,捕捉视频数据的摄像机或其它捕捉装置与计算装置分离,在此情况下,计算装置接收所捕捉视频数据。计算装置可进一步包含经配置以传达视频数据的网络接口。网络接口可经配置以传达基于因特网协议(IP)的数据或任何其它合适类型的数据。
过程1800、1900经说明为逻辑流程图,其操作表示可以硬件、计算机指令或其组合实施的一系列操作。在计算机指令的上下文中,操作表示存储于一或多个计算机可读存储媒体上,在由一或多个处理器执行时执行所叙述的操作的计算机可执行指令。通常,计算机可执行指令包含执行特定功能或实施特定数据类型的例程、过程、对象、组件、数据结构及其类似者。描述操作的过程并不意欲被理解为限制,且任何数目个经描述操作可按任何过程及/或与实施过程并行地组合。
另外,过程1800、1900可在经配置有可执行指令的一或多个计算机系统的控制下执行,且可被实施为在一或多个处理器上、通过硬件或其组合共同地执行的程序代码(例如,可执行指令、一或多个计算机程序或一或多个应用程序)。如上文所提及,程序代码可存储于计算机可读或机器可读存储媒体上,例如,呈包括可由一或多个处理器执行的多个指令的计算机程序的形式。计算机可读或机器可读存储媒体可为非暂时性的。
随着更多装置及系统为消费者提供消耗数字视频数据的能力,对高效视频译码技术的需要变得更加重要。需要视频译码来减少处置存在于数字视频数据中的大量数据所必要的存储及传输要求。各种视频译码技术可用以将视频数据压缩成使用较低位速率同时维持高视频质量的形式。
图20为示出包含编码装置2004及解码装置2012的系统2000的实例的框图。编码装置2004可为源装置的部分,且解码装置2012可为接收装置的部分。源装置及/或接收装置可包含电子装置,例如,移动或固定电话手机(例如,智能型电话、蜂窝式电话或其类似者)、台式计算机、膝上型计算机或笔记本计算机、平板计算机、机顶盒、电视、摄像机、显示装置、数字媒体播放器、视频游戏控制台、视频流传输装置或任何其它合适电子装置。在一些实例中,源装置及接收装置可包含用于无线通信的一或多个无线收发器。本文中所描述的译码技术适用于各种多媒体应用中的视频译码,包含流传输视频传输(例如,经由因特网)、电视广播或传输、供存储于数据存储媒体上的数字视频的编码、存储于数据存储媒体上的数字视频的解码或其它应用。在一些实例中,系统2000可支持单向或双向视频传输以支持例如视频会议、视频流传输、视频播放、视频广播、游戏及/或视频电话的应用。
编码装置2004(或编码器)可用以编码视频数据,包含虚拟实境视频数据,从而使用视频译码标准或协议以产生经编码视频位流。视频译码标准包含ITU-T H.261、ISO/IECMPEG-1Visual、ITU-T H.262或ISO/IEC MPEG-2Visual、ITU-T H.263、ISO/IEC MPEG-4Visual及ITU-T H.264(也被称为ISO/IEC MPEG-4AVC),包含其可调式视频译码及多视图视频译码扩展(分别被称为SVC及MVC)。已由ITU-T视频译码专家组(VCEG)及ISO/IEC动画专家组(MPEG)的视频译码联合协作小组(JCT-VC)定稿最新视频译码标准(高效视频译码(HEVC))。对HEVC的各种扩展处理多层视频译码,且也正由JCT-VC开发,包含对HEVC的多视图扩展(被称作MV-HEVC)及对HEVC的可调式扩展(被称作SHVC)或任何其它合适译码协议。
本文中所描述的实施方案使用HEVC标准或其扩展来描述实例。然而,本文中所描述的技术及系统也可适用于其它译码标准,例如AVC、MPEG、其扩展或已可用或尚不可用或尚未开发的其它合适译码标准。因此,虽然可参考特定视频译码标准描述本文中所描述的技术及系统,但所属领域的一般技术人员将了解,本说明书不应被解释为仅适用于彼特定标准。
视频源2002可提供视频数据到编码装置2004。视频源2002可为源装置的部分,或可为除源装置以外的装置的部分。视频源2002可包含视频捕捉装置(例如,视频摄像机、摄像机电话、视频电话或其类似者)、含有经存储视频的视频文件库、提供视频数据的视频服务器或内容供应商、从视频服务器或内容供应商接收视频的视频馈入接口、用于产生计算机图形视频数据的计算机图形系统、这些源的组合或任何其它合适视频源。视频源2002的一个实例可包含因特网协议摄像机(IP摄像机)。IP摄像机为可用于监控、家庭安全或其它合适应用的数字视频摄像机的类型。不同于类比闭路电视(CCTV)摄像机,IP摄像机可经由计算机网络及因特网发送及接收数据。
来自视频源2002的视频数据可包含一或多个输入图片或帧。图片或帧为作为视频的部分的静态图像。编码装置2004的编码器引擎2006(或编码器)编码视频数据以产生经编码视频位流。在一些实例中,经编码视频位流(或“视频位流”或“位流”)为一系列一或多个经译码视频序列。经译码视频序列(CVS)包含一系列存取单元(AU),其始于具有在基层中且带有某些特性的随机存取点图片的AU,止于且不包含具有在基层中且带有某些特性的随机存取点图片的下一AU。举例来说,开始CVS的随机存取点图片的某些特性可包含等于1的RASL旗标(例如,NoRaslOutputFlag)。否则,随机存取点图片(其中RASL旗标等于0)不开始CVS。存取单元(AU)包含一或多个经译码图片及对应于共享相同输出时间的经译码图片的控制信息。图片的经译码切片在位流层级经囊封到被称作网络抽象层(NAL)单元的数据单元中。举例来说,HEVC视频位流可包含一或多个CVS,所述一或多个CVS包含NAL单元。两种类别的NAL单元存在于HEVC标准中,包含视频译码层(VCL)NAL单元及非VCL NAL单元。VCL NAL单元包含经译码图片数据的一个切片或切片节段(如下文描述),且非VCL NAL单元包含关于一或多个经译码图片的控制信息。
NAL单元可含有形成视频数据(例如,经编码视频位流、位流的CVS或其类似者)的经译码表示(例如,视频中的图片的经译码表示)的位序列。编码器引擎2006通过将每一图片分割成多个切片而产生图片的经译码表示。切片接着经分割成明度样本及色度样本的译码树型块(CTB)。明度样本的CTB及色度样本的一或多个CTB连同样本的语法被称为译码树型单元(CTU)。CTU为用于HEVC编码的基本处理单元。CTU可被拆分成具有不同大小的多个译码单元(CU)。CU含有被称作译码块(CB)的明度及色度样本阵列。
明度及色度CB可进一步拆分成预测块(PB)。PB为使用用于帧间预测的相同运动参数的明度或色度分量的样本的块。明度PB及一或多个色度PB连同相关联语法形成预测单元(PU)。在位流中针对每一PU传信运动参数集合,且所述运动参数集合用于明度PB及一或多个色度PB的帧间预测。CB也可经分割成一或多个变换块(TB)。TB表示色彩分量的样本的正方形块,对所述正方形块应用同一二维变换以用于译码预测残余信号。变换单元(TU)表示明度及色度样本的TB以及对应语法元素。
CU的大小对应于译码节点的大小,且可为正方形形状。举例来说,CU的大小可为8×8样本、16×16样本、32×32样本、64×64样本或达对应CTU的大小的任何其它适当大小。片语“N×N”在本文中用于指就垂直及水平尺寸而言的视频块的像素尺寸(例如,8像素×8像素)。可按行及列来布置块中的像素。在一些实施例中,块在水平方向上可不具有与在竖直方向上相同的数目个像素。与CU相关联的语法数据可描述例如CU到一或多个PU的分割。分割模式可在CU经帧内预测模式编码抑或经帧间预测模式编码之间有所不同。PU可分割成非正方形形状。与CU相关联的语法数据也可描述(例如)根据CTU的CU至一或多个TU的分割。TU可为正方形或非正方形形状。
根据HEVC标准,可使用变换单元(TU)来执行变换。TU可针对不同CU而变化。可基于给定CU内的PU的大小而对TU设定大小。TU可与PU大小相同或小于PU。在一些实例中,可使用被称为“残余四分树”(RQT)的四分树结构将对应于CU的残余样本再分成较小单元。RQT的叶节点可对应于TU。可变换与TU相关联的像素差值以产生变换系数。变换系数可接着由编码器引擎2006量化。
一旦视频数据的图片被分割成CU,编码器引擎2006即使用预测模式来预测每一PU。接着从原始视频数据中减去预测以得到残余(下文描述)。对于每一CU,可使用语法数据在位流内传信预测模式。预测模式可包含帧内预测(或图片内预测)或帧间预测(或图片间预测)。使用帧内预测时,使用(例如)用以发现PU的平均值的DC预测、用以使平坦表面拟合于PU的平坦预测、用以从相邻数据外推的方向预测或任何其它合适类型的预测来自同一图片中的相邻图像数据预测每一PU。使用帧间预测时,使用运动补偿预测从一或多个参考图片(按输出次序在当前图片之前或之后)中的图像数据预测每一PU。可(例如)在CU层级作出使用图片间预测或图片内预测来译码图片区域的决策。在一些实例中,图片的一或多个切片被指派有切片类型。切片类型包含I切片、P切片及B切片。I切片(帧内,可独立地解码)为仅仅通过帧内预测译码的图片的切片,且因此可独立地解码,此是由于I切片仅仅需要帧内的数据来预测切片的任一块。P切片(经单向预测帧)为可通过帧内预测及单向帧间预测译码的图片的切片。P切片内的每一块是通过帧内预测或帧间预测而译码。当帧间预测适用时,块仅仅通过一个参考图片而预测,且因此参考样本仅仅来自一个帧的一个参考区。B切片(双向预测性帧)为可通过帧内预测及帧间预测译码的图片的切片。B切片的块可从两个参考图片双向预测,其中每一图片贡献一个参考区且两个参考区的样本集合经加权(例如,使用相等权重)以产生双向预测块的预测信号。如上文所解释,一个图片的切片经独立译码。在一些情况下,图片可仅作为一个切片而被译码。
PU可包含与预测过程有关的数据。举例来说,当使用帧内预测编码PU时,PU可包含描述用于PU的帧内预测模式的数据。作为另一实例,当使用帧间预测编码PU时,PU可包含定义PU的运动向量的数据。定义PU的运动向量的数据可描述(例如)运动向量的水平分量、运动向量的垂直分量、运动向量的分辨率(例如,四分之一像素精度或八分之一像素精度)、运动向量所指向的参考图片,及/或运动向量的参考图片列表(例如,列表0、列表1或列表C)。
编码装置2004可接着执行变换及量化。举例来说,在预测之后,编码器引擎2006可计算对应于PU的残余值。残余值可包括像素差值。在执行预测之后可能剩余的任何残余数据使用块变换经变换,所述块变换可基于离散余弦变换、离散正弦变换、整数变换、小波变换或其它合适变换函式。在一些情况下,一或多个块变换(例如,大小32×32、16×16、8×8、4×4,或其类似者)可应用于每一CU中的残余数据。在一些实施例中,TU可用于由编码器引擎2006实施的变换及量化过程。具有一或多个PU的给定CU也可包含一或多个TU。如下文进一步详细描述,可使用块变换将残余值变换成变换系数,且接着可使用TU来量化及扫描残余值以产生用于熵译码的串行化变换系数。
在一些实施例中,在使用CU的PU进行帧内预测性或帧间预测性译码之后,编码器引擎2006可计算CU的TU的残余数据。PU可包括空间域(或像素域)中的像素数据。在应用块变换之后,TU可包括变换域中的系数。如先前所提及,残余数据可对应于未经编码图片的像素与对应于PU的预测值之间的像素差值。编码器引擎2006可形成包含CU的残余数据的TU,且可随后变换TU以产生用于CU的变换系数。
编码器引擎2006可执行变换系数的量化。量化通过量化变换系数提供进一步压缩以减少用以表示系数的数据的量。举例来说,量化可减少与系数中的一些或全部相关联的位深度。在一个实例中,具有n位值的系数可在量化期间降值舍位为m位值,其中n大于m。
一旦执行量化,经译码视频位流包含经量化变换系数、预测信息(例如,预测模式、运动向量或其类似者)、分割信息及任何其它合适数据(例如其它语法数据)。接着可通过编码器引擎2006熵编码经译码视频位流的不同元素。在一些实例中,编码器引擎2006可利用预定义扫描次序来扫描经量化变换系数以产生可经熵编码的串行化向量。在一些实例中,编码器引擎2006可执行自适应扫描。在扫描经量化变换系数以形成向量(例如,一维向量)之后,编码器引擎2006可熵编码所述向量。举例来说,编码器引擎2006可使用上下文自适应性可变长度译码、上下文自适应性二进位算术译码、基于语法的上下文自适应性二进位算术译码、概率区间分割熵译码或另一合适熵编码技术。
编码装置2004的输出2010可经由通信链路2020将组成经编码视频位流数据的NAL单元发送到接收装置的解码装置2012。解码装置2012的输入2014可接收NAL单元。通信链路2020可包含由无线网络、有线网络或有线与无线网络的组合提供的信道。无线网络可包含任何无线接口或无线接口的组合,且可包含任何合适无线网络(例如,因特网或其它广域网、基于分组的网络、WiFiTM、射频(RF)、UWB、WiFi-Direct、蜂窝式、长期演进(LTE)、WiMaxTM或其类似者)。有线网络可包含任何有线接口(例如,光纤、以太网络、电力线以太网络、经由同轴电缆的以太网络、数字信号线(DSL)或其类似者)。有线及/或无线网络可使用各种装备来实施,例如基站、路由器、存取点、桥接器、网关、切换器或其类似者。可根据通信标准(例如,无线通信协议)调制经编码视频位流数据,且将其传输到接收装置。
在一些实例中,编码装置2004可将经编码视频位流数据存储于存储器2008中。输出2010可从编码器引擎2006或从存储器2008检索经编码视频位流数据。存储器2008可包含多种分布式或本地存取数据存储媒体中的任一者。举例来说,存储器2008可包含硬盘机、存储光盘、快闪存储器、易失性或非易失性存储器或用于存储经编码视频数据的任何其它合适数字存储媒体。
解码装置2012的输入2014接收经编码视频位流数据,且可将视频位流数据提供到解码器引擎2016,或提供到存储器2018以供稍后由解码器引擎2016使用。解码器引擎2016可通过熵解码(例如,使用熵解码器)及提取构成经编码视频数据的一或多个经译码视频序列的元素来解码经编码视频位流数据。解码器引擎2016可接着重新按比例调整经编码视频位流数据且对经编码视频位流数据执行逆变换。残余数据接着经传递到解码器引擎2016的预测阶段。解码器引擎2016接着预测像素的块(例如,PU)。在一些实例中,将预测添加到逆变换的输出(残余数据)。
解码装置2012可将经解码视频输出到视频目的地装置2022,所述目的地装置可包含用于将经解码视频数据显示给内容的消费者的显示器或其它输出装置。在一些方面中,视频目的地装置2022可为包含解码装置2012的接收装置的部分。在一些方面中,视频目的地装置2022可为除接收装置外的独立装置的部分。
补充增强信息(SEI)消息可包含于视频位流中。举例来说,SEI消息可用于携载并非必不可少的信息(例如,元数据)以便通过解码装置2012解码位流。此信息适用于改良经解码输出的显示或处理(例如,此类信息可由解码器侧物理用以改良内容的可视性)。
在一些实施例中,视频编码装置2004及/或视频解码装置2012可分别与音频编码装置及音频解码装置集成。视频编码装置2004及/或视频解码装置2012也可包含实施上文所描述的译码技术所必要的其它硬件或软件,例如一或多个微处理器、数字信号处理器(DSP)、专用集成电路(ASIC)、现场可编程门阵列(FPGA)、离散逻辑、软件、硬件、固件或其任何组合。视频编码装置2004及视频解码装置2012可集成为各别装置中的组合式编码器/解码器(编解码器)的部分。
对HEVC标准的扩展包含多视图视频译码扩展(被称作MV-HEVC)及可调式视频译码扩展(被称作SHVC)。MV-HEVC及SHVC扩展共享分层译码的概念,其中不同层包含于经编码视频位流中。经译码视频序列中的每一层由唯一层识别符(ID)定址。层ID可存在于NAL单元的标头中以识别NAL单元所关联的层。在MV-HEVC中,不同层可表示视频位流中的同一场景的不同视图。在SHVC中,提供以不同空间分辨率(或图片分辨率)或不同重构保真度表示视频位流的不同可调式层。所述可调式层可包含基础层(其中层ID=0)及一或多个增强层(其中层ID=1、2、...n)。基础层可符合HEVC的第一版本的配置文件,且表示位流中的最低可用层。相较于基础层,增强层具有提高的空间分辨率、时间分辨率或帧速率及/或重构保真度(或质量)。增强层经阶层式组织,且可(或可不)取决于较低层。在一些实例中,可使用单一标准编解码器来译码不同层(例如,使用HEVC、SHVC或其它译码标准编码所有层)。在一些实例中,可使用多标准编解码器来译码不同层。举例来说,可使用AVC来译码基础层,而可使用对HEVC标准的SHVC及/或MV-HEVC扩展来译码一或多个增强层。大体而言,层包含VCL NAL单元集合及对应的非VCL NAL单元集合。NAL单元被指派有特定层ID值。在层可取决于较低层的意义上,层可为阶层式的。
大体而言,层包含VCL NAL单元集合及对应非VCL NAL单元集合。NAL单元被指派有特定层ID值。在层可取决于较低层的意义上,层可为阶层式的。层集合指表示于位流内的自含式层的集合,意谓层集合内的层可取决于解码过程中的层集合中的其它层,但并不取决于用于解码的任何其它层。因此,层集合中的层可形成可表示视频内容的独立位流。可通过子位流提取过程的操作从另一位流获得层集合中的层的集合。层集合可对应于待在解码器希望根据某些参数操作时被解码的层集合。
由摄像机(例如,鱼眼摄像机或其它全向摄像机)捕捉的视频数据可经译码以减小传输及存储所需的数据的量。译码技术可实施于实例视频编码及解码系统(例如,系统2000)中。在一些实例中,系统包含提供稍后由目的地装置解码的经编码视频数据的源装置。详细来说,源装置经由计算机可读媒体将视频数据提供到目的地装置。源装置及目的地装置可包括广泛范围的装置中的任一者,包含台式计算机、笔记型(即,膝上型)计算机、平板计算机、机顶盒、电话手机(例如,所谓的“智能型”手机)、所谓的“智能型”板、电视机、摄像机、显示装置、数字媒体播放器、视频游戏控制台、视频流传输装置或其类似者。在一些情况下,源装置及目的地装置可经装备以用于无线通信。
编码装置2104及解码装置2212的特定细节分别展示于图21及22中。图21为示出可实施本发明中所描述的技术中的一或多者的实例编码装置2104的框图。编码装置2104可(例如)产生本文中所描述的语法结构(例如,VPS、SPS、PPS或其它语法元素的语法结构)。编码装置2104可执行视频切片内的视频块的帧内预测及帧间预测译码。如先前所描述,帧内译码至少部分地依赖于空间预测以减少或移除给定视频帧或图片内的空间冗余。帧间译码至少部分地依赖于时间预测以减少或移除视频序列的邻近或周围帧内的时间冗余。帧内模式(I模式)可指若干基于空间的压缩模式中的任一者。帧间模式(例如,单向预测(P模式)或双向预测(B模式))可指若干基于时间的压缩模式中的任一者。
编码装置2104包含分割单元35、预测处理单元41、滤波器单元63、图片存储器64、求和器50、变换处理单元52、量化单元54及熵编码单元56。预测处理单元41包含运动估计单元42、运动补偿单元44及帧内预测处理单元46。对于视频块重构,编码装置2104也包含逆量化单元58、逆变换处理单元60及求和器62。滤波器单元63意欲表示一或多个回路滤波器(例如,解块滤波器、自适应回路滤波器(ALF)及样本自适应偏移(SAO)滤波器)。尽管滤波器单元63在图21中展示为回路内滤波器,但在其它配置中,滤波器单元63可实施为回路后滤波器。后处理装置57可对由编码装置2104产生的经编码视频数据执行额外处理。在一些情况下,本发明的技术可通过编码装置2104实施。然而,在其它情况下,本发明的技术中的一或多者可通过后处理装置57实施。
如图21中所展示,编码装置2104接收视频数据,且分割单元35将所述数据分割成视频块。分割也可包含分割成切片、切片节段、图像块或其它较大单元,以及(例如)根据LCU及CU的四分树结构的视频块分割。编码装置2104通常示出编码待编码的视频切片内的视频块的组件。切片可划分成多个视频块(且可能划分成被称作图像块的视频块集合)。预测处理单元41可基于错误结果(例如,译码速率及失真程度或其类似者)选择多个可能译码模式中的一者(例如,多个帧内预测译码模式中的一者或多个帧间预测译码模式中的一者)以用于当前视频块。预测处理单元41可将所得的经帧内或经帧间译码块提供到求和器50以产生残余块数据且提供到求和器62以重构经编码块以用作参考图片。
预测处理单元41内的帧内预测处理单元46可执行当前视频块相对于与待译码的当前块在相同帧或切片中的一或多个相邻块的帧内预测译码,以提供空间压缩。预测处理单元41内的运动估计单元42及运动补偿单元44执行当前视频块相对于一或多个参考图片中的一或多个预测性块的帧间预测性译码,以提供时间压缩。
运动估计单元42可经配置以根据视频序列的预定图案来确定用于视频切片的帧间预测模式。预定图案可将序列中的视频切片指定为P切片、B切片或GPB切片。运动估计单元42及运动补偿单元44可高度集成,但为概念目的而加以单独说明。由运动估计单元42执行的运动估计为产生估计视频块的运动的运动向量的过程。运动向量(例如)可指示当前视频帧或图片内的视频块的预测单元(PU)相对于参考图片内的预测性块的位移。
预测性块为依据像素差被发现紧密地匹配于待译码的视频块的PU的块,所述像素差可通过绝对差总和(SAD)、平方差总和(SSD)或其它差异度量来确定。在一些实例中,编码装置2104可计算存储于图片存储器64中的参考图片的子整数像素位置的值。举例来说,编码装置2104可内插参考图片的四分之一像素位置、八分之一像素位置或其它分数像素位置的值。因此,运动估计单元42可执行相对于全像素位置及分数像素位置的运动搜寻且输出具有分数像素精确度的运动向量。
运动估计单元42通过将PU的位置与参考图片的预测性块的位置进行比较而计算经帧间译码切片中的视频块的PU的运动向量。参考图片可选自第一参考图片列表(列表0)或第二参考图片列表(列表1),所述参考图片列表中的每一者识别存储在图片存储器64中的一或多个参考图片。运动估计单元42将所计算运动向量发送到熵编码单元56及运动补偿单元44。
由运动补偿单元44执行的运动补偿可涉及基于通过运动估计(可能执行内插到子像素精确度)确定的运动向量而获取或产生预测性块。在接收到当前视频块的PU的运动向量之后,运动补偿单元44可在参考图片列表中定位运动向量所指向的预测性块。编码装置2104通过从正经译码的当前视频块的像素值减去预测性块的像素值从而形成像素差值来形成残余视频块。像素差形成用于块的残余数据,且可包含明度及色度差分量两者。求和器50表示执行此减法运算的组件。运动补偿单元44也可产生与视频块及视频切片相关联的语法元素,以供解码装置2212在解码视频切片的视频块时使用。
如上文所描述,作为由运动估计单元42及运动补偿单元44执行的帧间预测的替代例,帧内预测单元46可对当前块进行帧内预测。详细来说,帧内预测处理单元46可确定帧内预测模式以用于编码当前块。在一些实例中,帧内预测处理单元46可(例如)在独立编码遍次期间使用各种帧内预测模式来编码当前块,且帧内预测处理单元46(或在一些实例中,模式选择单元40)可从所测试模式选择适当帧内预测模式来使用。举例来说,帧内预测处理单元46可使用对各种所测试帧内预测模式的速率失真分析来计算速率失真值,且可在所测试模式当中选择具有最佳速率失真特性的帧内预测模式。速率失真分析通常确定经编码块与原始、未经编码块(其经编码以产生经编码块)之间的失真(或误差)量,以及用于产生经编码块的位速率(即,位的数目)。帧内预测处理单元46可根据各种经编码块的失真及速率计算比率以确定哪一帧内预测模式展现所述块的最佳速率失真值。
在任何情况下,在选择用于块的帧内预测模式之后,帧内预测处理单元46可将指示用于块的所选帧内预测模式的信息提供到熵编码单元56。熵编码单元56可编码指示所述所选帧内预测模式的信息。编码装置2104可将各种块的编码上下文的定义以及待用于上下文中的每一者的最可能的帧内预测模式、帧内预测模式索引表及经修改帧内预测模式索引表的指示包含于经传输位流配置数据中。位流配置数据可包含多个帧内预测模式索引表及多个经修改帧内预测模式索引表(也被称作码字映射表)。
在预测处理单元41经由帧间预测或帧内预测产生当前视频块的预测性块之后,编码装置2104通过从当前视频块减去预测性块而形成残余视频块。残余块中的残余视频数据可包含于一或多个TU中且应用于变换处理单元52。变换处理单元52使用例如离散余弦变换(DCT)或概念上类似的变换的变换将残余视频数据变换为残余变换系数。变换处理单元52可将残余视频数据从像素域转换到变换域(例如,频域)。
变换处理单元52可将所得转换系数发送到量化单元54。量化单元54量化变换系数以进一步减小位速率。量化过程可减小与系数中的一些或所有相关联的位深度。可通过调整量化参数来修改量化程度。在一些实例中,量化单元54可接着执行对包含经量化的变换系数的矩阵的扫描。替代地,熵编码单元56可执行扫描。
在量化之后,熵编码单元56对经量化变换系数进行熵编码。举例来说,熵编码单元56可执行上下文自适应性可变长度译码(CAVLC)、上下文自适应性二进位算术译码(CABAC)、基于语法的上下文自适应性二进位算术译码(SBAC)、概率区间分割熵(PIPE)译码或另一熵编码技术。在由熵编码单元56进行熵编码之后,可将经编码位流传输到解码装置2212,或加以存档以供稍后由解码装置2212传输或检索。熵编码单元56也可对正经译码的当前视频切片的运动向量及其它语法元素进行熵编码。
逆量化单元58及逆变换处理单元60分别应用逆量化及逆变换以重构像素域中的残余块以供稍后用作参考图片的参考块。运动补偿单元44可通过将残余块添加到参考图片列表内的参考图片中的一者的预测性块来计算参考块。运动补偿单元44也可将一或多个内插滤波器应用于经重构残余块以计算子整数像素值以用于运动估计。求和器62将经重构的残余块添加到由运动补偿单元44产生的运动补偿预测块以产生参考块以供存储于图片存储器64中。参考块可由运动估计单元42及运动补偿单元44用作为参考块以对后续视频帧或图片中的块进行帧间预测。
以此方式,图21的编码装置2104表示经配置以产生经编码视频位流的语法的视频编码器的实例。编码装置2104可(例如)产生如上文所描述的VPS、SPS及PPS参数集合。编码装置2104可执行本文中所描述的技术中的任一者,包含上文关于图21及22描述的过程。本发明的技术已大体上关于编码装置2104加以描述,但如上文所提及,本发明的技术中的一些也可通过后处理装置57实施。
图22为示出实例解码装置2212的框图。解码装置2212包含熵解码单元80、预测处理单元81、逆量化单元86、逆变换处理单元88、求和器90、滤波器单元91及图片存储器92。预测处理单元81包含运动补偿单元82及帧内预测处理单元84。在一些实例中,解码装置2212可执行大体上与关于图21的编码装置2104所描述的编码遍次互逆的解码遍次。
在解码过程期间,解码装置2212接收表示由编码装置2104发送的经编码视频切片的视频块及相关联语法元素的经编码视频位流。在一些实施例中,解码装置2212可从编码装置2104接收经编码视频位流。在一些实施例中,解码装置2212可从例如以下各者的网络实体79接收经编码视频位流:服务器、媒体感知网络元件(MANE)、视频编辑器/剪接器或经配置以实施上文所描述的技术中的一或多者的其它此类装置。网络实体79可或可不包含编码装置2104。本发明中所描述的技术中的一些可在网络实体79将经编码视频位流传输到解码装置2212之前由网络实体79实施。在一些视频解码系统中,网络实体79及解码装置2212可为独立装置的部分,而在其它情况下,关于网络实体79所描述的功能性可通过包括解码装置2212的同一装置来执行。
解码装置2212的熵解码单元80对位流进行熵解码以产生经量化系数、运动向量及其它语法元素。熵解码单元80将运动向量及其它语法元素转发到预测处理单元81。解码装置2212可接收视频切片层级及/或视频块层级的语法元素。熵解码单元80可处理及剖析例如VPS、SPS及PPS集合的一或多个参数集合中的固定长度语法元素及可变长度语法元素两者。
当将视频切片译码为经帧内译码(I)切片时,预测处理单元81的帧内预测处理单元84可基于传信的帧内预测模式及来自当前帧或图片的先前经解码块的数据而产生当前视频切片的视频块的预测数据。当视频帧经译码为经帧间译码(即,B、P或GPB)切片时,预测处理单元81的运动补偿单元82基于从熵解码单元80接收的运动向量及其它语法元素而产生当前视频切片的视频块的预测性块。预测性块可产生自参考图片列表内的参考图片中的一者。解码装置2212可基于存储于图片存储器92中的参考图片使用预设建构技术来建构参考帧列表(列表0及列表1)。
运动补偿单元82通过剖析运动向量及其它语法元素来确定用于当前视频切片的视频块的预测信息,且使用所述预测信息以产生正经解码的当前视频块的预测性块。举例来说,运动补偿单元82可使用参数集合中的一或多个语法元素来确定用于译码视频切片的视频块的预测模式(例如,帧内或帧间预测)、帧间预测切片类型(例如,B切片、P切片或GPB切片)、切片的一或多个参考图片列表的建构信息、切片的每一经帧间编码视频块的运动向量、切片的每一经帧间译码视频块的帧间预测状态及用以解码当前视频切片中的视频块的其它信息。
运动补偿单元82也可基于内插滤波器执行内插。运动补偿单元82可使用如在编码视频块期间由编码装置2104使用的内插滤波器来计算参考块的子整数像素的内插值。在此情况下,运动补偿单元82可根据所接收语法元素确定由编码装置2104使用的内插滤波器,且可使用所述内插滤波器来产生预测性块。
逆量化单元86逆量化或解量化提供于位流中且由熵解码单元80解码的经量化变换系数。逆量化过程可包含使用由编码装置2104针对视频切片中的每一视频块计算的量化参数以确定应应用的量化的程度及(同样地)逆量化的程度。逆变换处理单元88将逆变换(例如,逆DCT或其它合适逆变换)、逆整数变换或概念上类似的逆变换过程应用于变换系数以便在像素域中产生残余块。
在运动补偿单元82基于运动向量及其它语法元素而产生当前视频块的预测性块之后,解码装置2212通过将来自逆变换处理单元88的残余块与由运动补偿单元82所产生的对应预测性块求和而形成经解码视频块。求和器90表示可执行此求和运算的一或多个组件。如果需要,那么可使用回路滤波器(在译码回路中或在译码回路后)以使像素转变平滑,或以其它方式改良视频质量。滤波器单元91意欲表示一或多个回路滤波器(例如,解块滤波器、自适应回路滤波器(ALF)及样本自适应偏移(SAO)滤波器)。尽管滤波器单元91在图22中展示为回路滤波器,但在其它配置中,滤波器单元91可实施为回路后滤波器。给定帧或图片中的经解码视频块接着经存储于图片存储器92中,所述图片存储器存储用于后续运动补偿的参考图片。图片存储器92也存储经解码视频以供稍后呈现于显示装置(例如,图20中所展示的视频目的地装置2022)上。
在前述描述中,申请案的方面是参考其特定实施例而描述,但所属领域的技术人员将认识到本发明不限于此。因此,尽管申请案的说明性实施例已经在本文中详细地加以描述,但应理解,本发明概念可以其它方式不同地实施及采用,且意欲将所附权利要求书解释为包含除先前技术所限制外的这些变化。上文所描述的本发明的各种特征及方面可单独地或联合地使用。此外,实施例可用于超出本文所描述的那些环境及应用的任何数目个环境及应用,而不脱离本说明书的更广精神及范畴。因此,本说明书及图式被视为说明性而非限定性的。出于说明的目的,以特定次序描述方法。应了解,在替代实施例中,可以与所描述的次序不同的次序来执行所述方法。
在组件被描述为“经配置以”执行某些操作的情况下,可例如通过设计电子电路或其它硬件以执行操作、通过编程可编程电子电路(例如,微处理器、或其它合适电子电路)以执行操作或其任何组合的方式实现这些配置。
结合本文中所揭示的实施例而描述的各种说明性逻辑块、模块、电路及算法步骤可被实施为电子硬件、计算机软件或两者的组合。为清晰说明硬件与软件的此可互换性,上文已大体在其功能性方面描述了各种说明性组件、块、模块、电路及步骤。此功能性实施为硬件抑或软件取决于特定应用及强加于整个系统的设计约束。所属领域的技术人员可针对每一特定应用以不同方式实施所描述的功能性,但这些实施决策不应被解译为致使对本发明的范畴的偏离。
本文中描述的技术可以硬件、软件、固件或其任何组合实施。这些技术可以例如以下各者的多种装置中的任一者实施:通用计算机、无线通信装置手机或具有包含无线通信装置手机及其它装置中的应用的多个用途的集成电路装置。可将描述为模块或组件的任何特征共同实施于集成式逻辑装置中或单独实施为离散但可互操作的逻辑装置。如果以软件实施,那么所述技术可至少部分由包括程序代码的计算机可读数据存储媒体实现,所述程序代码包含当经执行时执行以上描述方法中的一或多者的指令。计算机可读数据存储媒体可形成计算机程序产品的部分,所述计算机程序产品可包含封装材料。计算机可读媒体可包括存储器或数据存储媒体,例如,随机存取存储器(RAM)(例如,同步动态随机存取存储器(SDRAM))、只读存储器(ROM)、非易失性随机存取存储器(NVRAM)、电可抹除可编程只读存储器(EEPROM)、快闪存储器、磁性或光学数据存储媒体及其类似者。所述技术另外或替代地可至少部分由计算机可读通信媒体实现,所述计算机可读通信媒体携载或传达呈指令或数据结构的形式且可由计算机存取、读取及/或执行的程序代码,例如,传播的信号或波。
程序代码可由可包含一或多个处理器的处理器执行,例如,一或多个数字信号处理器(DSP)、通用微处理器、专用集成电路(ASIC)、现场可编程逻辑阵列(FPGA)或其它等效集成式或离散逻辑电路。此类处理器可经配置以执行本发明中所描述的技术中的任一者。通用处理器可为微处理器;但在替代方案中,处理器可为任何惯例处理器、控制器、微控制器或状态机。处理器也可实施为计算装置的组合,例如,DSP与微处理器的组合、多个微处理器、一或多个微处理器结合DSP核心或任何其它此类配置。因此,如本文中所使用的术语“处理器”可指前述结构、前述结构的任何组合或适合于实施本文中描述的技术的任何其它结构或设备中的任一者。另外,在一些方面中,本文中描述的功能性可提供于经配置用于编码及解码的专用软件模块或硬件模块内,或并入于组合的视频编码器-解码器(编解码器)中。
本文中所论述的译码技术可体现于实例视频编码及解码系统中。系统包含提供稍后待由目的地装置解码的经编码视频数据的源装置。详细来说,源装置经由计算机可读媒体将视频数据提供到目的地装置。源装置及目的地装置可包括广泛范围的装置中的任一者,包含台式计算机、笔记型(即,膝上型)计算机、平板计算机、机顶盒、电话手机(例如所谓的“智能型”电话)、所谓“智能型”平板计算机、电视机、摄像机、显示装置、数字媒体播放器、视频游戏控制台、视频流传输装置或类似者。在一些情况下,源装置及目的地装置可经装备以用于无线通信。
目的地装置可接收待经由计算机可读媒体解码的经编码视频数据。计算机可读媒体可包括能够将经编码视频数据从源装置移动到目的地装置的任何类型的媒体或装置。在一个实例中,计算机可读媒体可包括通信媒体以使得源装置能够实时地将经编码视频数据直接传输到目的地装置。可根据通信标准(例如,无线通信协议)调制经编码视频数据,且将其传输到目的地装置。通信媒体可包括任何无线或有线通信媒体,例如射频(RF)频谱或一或多个物理传输线。通信媒体可形成基于分组的网络(例如,局域网、广域网或例如因特网的全域网络)的部分。通信媒体可包含路由器、交换器、基站或可适用于促进从源装置到目的地装置的通信的任何其它装备。
在一些实例中,经编码数据可从输出接口输出到存储装置。类似地,可由输入接口从存储装置存取经编码数据。存储装置可包含多种分布式或本地存取的数据存储媒体中的任一者,例如硬盘机、蓝光光盘、DVD、CD-ROM、快闪存储器、易失性或非易失性存储器或用于存储经编码视频数据的任何其它合适数字存储媒体。在另一实例中,存储装置可对应于文件服务器或可存储由源装置产生的经编码视频的另一中间存储装置。目的地装置可经由流传输或下载自存储装置存取所存储的视频数据。文件服务器可为能够存储经编码视频数据且将那个经编码视频数据传输到目的地装置的任何类型的服务器。实例文件服务器包含网页服务器(例如,用于网站)、文件传送协议(FTP)服务器、网络附接存储(NAS)装置及本地磁盘机。目的地装置可经由任何标准数据连接(包含因特网连接)来存取经编码视频数据。此数据连接可包含适合于存取存储于文件服务器上的经编码视频数据的无线信道(例如,Wi-Fi连接)、有线连接(例如,DSL、缆线调制解调器等)或两者的结合。来自存储装置的经编码视频数据的传输可为流传输、下载传输或其组合。
本发明的技术不必限于无线应用或设定。所述技术可应用于视频译码以支持多种多媒体应用中的任一者,例如,空中电视广播、有线电视传输、卫星电视传输、因特网流视频传输(例如,经由HTTP的动态自适应流(DASH))、经编码到数据存储媒体上的数字视频、存储于数据存储媒体上的数字视频的解码或其它应用。在一些实例中,系统可经配置以支持单向或双向视频传输,以支持例如视频流传输、视频播放、视频广播及/或视频电话的应用。
在一个实例中,源装置包括视频源、视频编码器及输出接口。目的地装置可包含输入接口、视频解码器及显示装置。源装置的视频编码器可经配置以应用本文中所揭示的技术。在其它实例中,源装置及目的地装置可包含其它组件或布置。举例来说,源装置可从外部视频源(例如,外部摄像机)接收视频数据。同样地,目的地装置可与外部显示装置介接,而非包含集成式显示装置。
以上实例系统仅为一个实例。用于并行地处理视频数据的技术可由任一数字视频编码及/或解码装置执行。尽管本发明的技术通常由视频编码装置执行,但所述技术也可由视频编码器/解码器(通常被称作“编解码器(CODEC)”)执行。此外,本发明的技术也可由视频预处理器执行。源装置及目的地装置仅为其中源装置产生经译码视频数据以供传输到目的地装置的此类译码装置的实例。在一些实例中,源装置及目的地装置可以大体上对称的方式操作,使得所述装置中的每一者包含视频编码及解码组件。因此,实例系统可支持视频装置之间的单向或双向视频传输,例如以用于视频流传输、视频播放、视频广播或视频电话。
视频源可包含视频捕捉装置,例如视频摄像机、含有先前捕捉的视频的视频文件库及/或用以从视频内容供应商接收视频的视频馈入接口。作为另一替代方案,视频源可产生基于计算机图形的数据作为源视频,或实况视频、存档视频及计算机产生的视频的组合。在一些情况下,如果视频源为视频摄像机,那么源装置及目的地装置可形成所谓的摄像机电话或视频电话。然而,如上文所提及,本发明中描述的技术一般可适用于视频译码,且可适用于无线及/或有线应用。在每一情况下,可由视频编码器编码所捕捉、经预捕捉或计算机产生的视频。经编码视频信息可接着由输出接口输出到计算机可读媒体上。
如所提及,计算机可读媒体可包含:暂态媒体,例如无线广播或有线网络传输;或存储媒体(即,非暂时性存储媒体),例如硬盘、随身盘、紧密光盘、数字视频光盘、蓝光光盘或其它计算机可读媒体。在一些实例中,网络服务器(未示出)可从源装置接收经编码视频数据,且(例如)经由网络传输将经编码视频数据提供到目的地装置。类似地,媒体生产设施(例如,光盘冲压设施)的计算装置可从源装置接收经编码视频数据且产生含有经编码视频数据的光盘。因此,在各种实例中,计算机可读媒体可理解为包含各种形式的一或多个计算机可读媒体。
目的地装置的输入接口从计算机可读媒体接收信息。计算机可读媒体的信息可包含由视频编码器定义的语法信息(其也由视频解码器使用),所述语法信息包含描述块及其它经译码单元(例如,图片群组(GOP))的特性及/或处理的语法元素。显示装置将经解码视频数据显示给用户,且可包括多种显示装置中的任一者,例如阴极射线管(CRT)、液晶显示器(LCD)、等离子显示器、有机发光二极管(OLED)显示器或另一类型的显示装置。本申请案的各种实施例已经描述。

Claims (46)

1.一种处理视频数据的方法,其包括:
获得由全向摄像机捕捉的360度视频数据,其中所述360度视频数据的视频帧包括包含场景的图像,且其中,在所述图像中,所述场景经扭变成所述图像的圆形区域;
获得与所述全向摄像机相关联的参数值,其中所述参数值包含:所述图像中的圆形区域的数量、标识所述圆形区域的中心的水平坐标的值、标识所述圆形区域的中心的垂直坐标的值、全半径值、场景半径值、视野值、指示在所述图像内的包含不可用像素的零值区的数量的值、指示在所述图像内的包含所述不可用像素的至少一部分的零值区域的位置的一或多个值、以及指示在所述图像内的包含所述不可用像素的所述至少一部分的零值区域的大小的一或多个值;
编码所述360度视频数据,其中所述编码包含编码所述图像的所述圆形区域;以及
产生经编码视频数据,其中所述经编码视频数据包含所述经编码360度视频数据及与所述全向摄像机相关联的所述参数值。
2.根据权利要求1所述的方法,其进一步包括将所述经编码360度视频数据写入到文件,且其中所述文件根据国际标准组织基本媒体文件格式ISOBMFF格式经格式化。
3.根据权利要求2所述的方法,其中所述参数值包含在文件层级、电影层级处,或在播放轨层级处。
4.根据权利要求2所述的方法,其中所述参数值中的一或多个参数值包含于受限方案信息逻辑框中,所述受限方案信息逻辑框包含原始样本项类型,其中所述原始样本项类型标识所述360度视频数据在捕捉时的原始格式,且其中,所述参数值描述所述360度视频数据从捕捉时的所述原始格式到等矩形格式或球面格式的映射。
5.根据权利要求1所述的方法,其进一步包括:
将所述参数值编码成一或多个补充增强信息SEI消息,其中所述一或多个SEI消息包含于所述经编码360度视频数据中。
6.根据权利要求5所述的方法,其中所述一或多个SEI消息根据高级视频译码AVC或高效视频译码HEVC标准经格式化。
7.根据权利要求1所述的方法,其进一步包括将所述参数值编码为会话数据协议SDP属性。
8.根据权利要求1所述的方法,其进一步包括将所述参数值写入到媒体呈现描述MPD文件中。
9.根据权利要求1所述的方法,其进一步包括将所述参数值写入到动画专家组MPEG输送流中。
10.一种用于处理经编码视频的设备,其包括:
存储器,其经配置以存储由全向摄像机捕捉的2维视频数据;以及
处理器,其在电路中实现并且经配置以:
获得由全向摄像机捕捉的360度视频数据,其中所述360度视频数据的视频帧包括包含场景的图像,且其中,在所述图像中,所述场景经扭变成所述图像的圆形区域;
获得与所述全向摄像机相关联的参数值,其中所述参数值包含:所述图像中的圆形区域的数量、标识所述圆形区域的中心的水平坐标的值、标识所述圆形区域的中心的垂直坐标的值、全半径值、场景半径值、视野值、指示在所述图像内的包含不可用像素的零值区的数量的值、指示在所述图像内的包含所述不可用像素的至少一部分的零值区域的位置的一或多个值、以及指示在所述图像内的包含所述不可用像素的所述至少一部分的零值区域的大小的一或多个值;
编码所述360度视频数据,其中所述360度视频数据包含所述图像的所述圆形区域;以及
产生经编码视频数据,其中所述经编码视频数据包含所述经编码360度视频数据及与所述全向摄像机相关联的所述参数值。
11.根据权利要求10所述的设备,其中产生所述经编码视频数据包含将所述经编码360度视频数据写入到文件,且其中所述文件根据国际标准组织基本媒体文件格式ISOBMFF格式经格式化。
12.根据权利要求11所述的设备,其中所述参数值包含在文件层级、电影层级处,或在播放轨层级处。
13.根据权利要求11所述的设备,其中所述参数值中的一或多个参数值包含于受限方案信息逻辑框中,所述受限方案信息逻辑框包含原始样本项类型,其中所述原始样本项类型标识所述360度视频数据在捕捉时的原始格式,且其中,所述参数值描述所述360度视频数据从捕捉时的所述原始格式到等矩形格式或球面格式的映射。
14.根据权利要求10所述的设备,其中所述处理器进一步经配置以:
将所述参数值编码到一或多个补充增强信息SEI消息中,其中所述一或多个SEI消息包含于所述经编码360度视频数据中。
15.根据权利要求14所述的设备,其中所述一或多个SEI消息根据高级视频译码AVC或高效视频译码HEVC标准经格式化。
16.根据权利要求10所述的设备,其中产生所述经编码视频数据包含将所述参数值编码为会话数据协议SDP属性。
17.根据权利要求10所述的设备,其中产生所述经编码视频数据包含将所述参数值写入到媒体呈现描述MPD文件中。
18.根据权利要求10所述的设备,其中产生所述经编码视频数据包含将所述参数值写入到动画专家组MPEG输送流中。
19.根据权利要求10所述的设备,其进一步包括:
移动装置,其中所述移动装置包含所述全向摄像机。
20.一种非暂时性计算机可读媒体,其上存储有在由一或多个处理器执行时使得所述一或多个处理器执行以下操作的指令:
获得由全向摄像机捕捉的360度视频数据,其中所述360度视频数据的视频帧包括包含场景的图像,且其中,在所述图像中,所述场景经扭变成所述图像的圆形区域;
获得与所述全向摄像机相关联的参数值,其中所述参数值包含:所述图像中的圆形区域的数量、标识所述圆形区域的中心的水平坐标的值、标识所述圆形区域的中心的垂直坐标的值、全半径值、场景半径值、视野值、指示在所述图像内的包含不可用像素的零值区的数量的值、指示在所述图像内的包含所述不可用像素的至少一部分的零值区域的位置的一或多个值、以及指示在所述图像内的包含所述不可用像素的所述至少一部分的零值区域的大小的一或多个值;
编码所述360度视频数据,其中所述360度视频数据包含所述图像的所述圆形区域;以及
产生经编码视频数据,其中所述经编码视频数据包含所述经编码360度视频数据及与所述全向摄像机相关联的所述参数值。
21.一种设备,其包括:
用于获得由全向摄像机捕捉的360度视频数据的装置,其中所述360度视频数据的视频帧包括包含场景的图像,且其中,在所述图像中,所述场景经扭变成所述图像的圆形区域;
用于获得与所述全向摄像机相关联的参数值的装置,其中所述参数值包含:所述图像中的圆形区域的数量、标识所述圆形区域的中心的水平坐标的值、标识所述圆形区域的中心的垂直坐标的值、全半径值、场景半径值、视野值、指示在所述图像内的包含不可用像素的零值区的数量的值、指示在所述图像内的包含所述不可用像素的至少一部分的零值区域的位置的一或多个值、以及指示在所述图像内的包含所述不可用像素的所述至少一部分的零值区域的大小的一或多个值;
用于编码所述360度视频数据的装置,其中所述360度视频数据包含所述图像的所述圆形区域;以及
用于产生经编码视频数据的装置,其中所述经编码视频数据包含所述经编码360度视频数据及与所述全向摄像机相关联的所述参数值。
22.一种处理视频数据的方法,其包括:
获得经编码视频数据,其中所述经编码视频数据包含由全向摄像机捕捉的经编码360度视频数据及与所述全向摄像机相关联的参数值;
解码所述经编码视频数据以产生360度视频数据,其中所述360度视频数据的视频帧包括包含场景的图像,且其中,在所述图像中,所述场景经扭变成所述图像的圆形区域;
确定所述参数值,所述参数值包含:所述图像中的圆形区域的数量、标识所述圆形区域的中心的水平坐标的值、标识所述圆形区域的中心的垂直坐标的值、全半径值、场景半径值、视野值、指示在所述图像内的包含不可用像素的零值区的数量的值、指示在所述图像内的包含所述不可用像素的至少一部分的零值区域的位置的一或多个值、以及指示在所述图像内的包含所述不可用像素的所述至少一部分的零值区域的大小的一或多个值;以及
产生360度视频呈现,其中产生所述360度视频呈现包含使用所述参数值以将所述圆形区域映射到可用于360度视频呈现中的格式。
23.根据权利要求22所述的方法,其进一步包括:
将所述圆形区域映射到等矩形格式中;以及
将所述矩形格式用于所述360度视频呈现。
24.根据权利要求22所述的方法,其进一步包括:
将所述圆形区域直接映射到360度格式中;及
将所述360度格式用于所述360度视频呈现。
25.根据权利要求22所述的方法,其中所述经编码视频数据是从文件获得,其中所述文件根据国际标准组织基本媒体文件格式ISOBMFF格式经格式化。
26.根据权利要求25所述的方法,其中所述参数值包含在文件层级、电影层级处,或在播放轨层级处。
27.根据权利要求25所述的方法,其中所述参数值中的一或多个参数值包含于受限方案信息逻辑框中,所述受限方案信息逻辑框包含原始样本项类型,其中所述原始样本项类型标识所述360度视频数据在捕捉时的原始格式,且其中,所述参数值描述所述360度视频数据从捕捉时的所述原始格式到等矩形格式或球面格式的映射。
28.根据权利要求22所述的方法,其进一步包括:
从一或多个补充增强信息SEI消息解码所述参数值,其中所述一或多个SEI消息包含于所述经编码视频数据中。
29.根据权利要求28所述的方法,其中所述一或多个SEI消息根据高级视频译码AVC或高效视频译码HEVC标准经格式化。
30.根据权利要求22所述的方法,其进一步包括从会话数据协议SDP属性获得所述参数值。
31.根据权利要求22所述的方法,其进一步包括从媒体呈现描述MPD文件获得所述参数值。
32.根据权利要求22所述的方法,其进一步包括从动画专家组MPEG输送流获得所述参数值。
33.一种用于处理经编码视频的设备,其包括:
存储器,其经配置以存储由全向摄像机捕捉的2维视频数据;以及
处理器,其在电路中实现并且经配置以:
获得经编码视频数据,其中所述经编码视频数据包含由全向摄像机捕捉的经编码360度视频数据及与所述全向摄像机相关联的参数值;
解码所述经编码视频数据以产生360度视频数据,其中所述360度视频数据的视频帧包括包含场景的图像,其中,在所述图像中,所述场景经扭变成所述图像的圆形区域;
确定所述参数值,所述参数值包含:所述图像中的圆形区域的数量、标识所述圆形区域的中心的水平坐标的值、标识所述圆形区域的中心的垂直坐标的值、全半径值、场景半径值、视野值、指示在所述图像内的包含不可用像素的零值区的数量的值、指示在所述图像内的包含所述不可用像素的至少一部分的零值区域的位置的一或多个值、以及指示在所述图像内的包含所述不可用像素的所述至少一部分的零值区域的大小的一或多个值;
使用所述参数值以将所述圆形区域映射到可用于360度视频呈现中的格式;以及
产生所述360度视频呈现。
34.根据权利要求33所述的设备,其中所述处理器进一步经配置以:
将所述圆形区域映射到等矩形格式中;以及
将所述矩形格式用于所述360度视频呈现中。
35.根据权利要求33所述的设备,其中所述处理器进一步经配置以:
将所述圆形区域直接映射到360度格式中;及
将所述360度格式用于所述360度视频呈现。
36.根据权利要求33所述的设备,其中所述经编码视频数据是从文件获得,其中所述文件根据国际标准组织基本媒体文件格式ISOBMFF格式经格式化。
37.根据权利要求36所述的设备,其中所述参数值包含在文件层级、电影层级处,或在播放轨层级处。
38.根据权利要求36所述的设备,其中所述参数值中的一或多个参数值包含于受限方案信息逻辑框中,所述受限方案信息逻辑框包含原始样本项类型,其中所述原始样本项类型标识所述360度视频数据在捕捉时的原始格式,且其中,所述参数值描述所述360度视频数据从捕捉时的所述原始格式到等矩形格式或球面格式的映射。
39.根据权利要求33所述的设备,其中所述处理器进一步经配置以:
从一或多个补充增强信息SEI消息解码所述参数值,其中所述一或多个SEI消息包含于所述经编码视频数据中。
40.根据权利要求39所述的设备,其中所述一或多个SEI消息根据高级视频译码AVC或高效视频译码HEVC标准经格式化。
41.根据权利要求33所述的设备,其中所述处理器进一步经配置以从会话数据协议SDP属性获得所述参数值。
42.根据权利要求33所述的设备,其中所述处理器进一步经配置以从媒体呈现描述MPD文件获得所述参数值。
43.根据权利要求33所述的设备,其中所述处理器进一步经配置以从动画专家组MPEG输送流获得所述参数值。
44.根据权利要求33所述的设备,其中所述设备是移动装置,其中所述移动装置包含经配置以显示所述360度视频呈现的显示器。
45.一种非暂时性计算机可读媒体,其上存储有在由一或多个处理器执行时使得所述一或多个处理器执行以下操作的指令:
获得经编码视频数据,其中所述经编码视频数据包含由全向摄像机捕捉的经编码360度视频数据及与所述全向摄像机相关联的参数值;
解码所述经编码视频数据以产生360度视频数据,其中所述360度视频数据的视频帧包括包含场景的图像,且其中,在所述图像中,所述场景经扭变成所述图像的圆形区域;
确定所述参数值,所述参数值包含:所述图像中的圆形区域的数量、标识所述圆形区域的中心的水平坐标的值、标识所述圆形区域的中心的垂直坐标的值、全半径值、场景半径值、视野值、指示在所述图像内的包含不可用像素的零值区的数量的值、指示在所述图像内的包含所述不可用像素的至少一部分的零值区域的位置的一或多个值、以及指示在所述图像内的包含所述不可用像素的所述至少一部分的零值区域的大小的一或多个值;以及
产生360度视频呈现,其中在由所述一或多个处理器执行时使得所述一或多个处理器产生所述360度视频呈现的指令包括在由所述一或多个处理器执行时使得所述一或多个处理器进行以下操作的指令:使用所述参数值以将所述圆形区域映射到可用于所述360度视频呈现中的格式。
46.一种设备,其包括:
用于获得经编码视频数据的装置,其中所述经编码视频数据包含由全向摄像机捕捉的经编码360度视频数据及与所述全向摄像机相关联的参数值;
用于解码所述经编码视频数据以产生360度视频数据的装置,其中所述360度视频数据的视频帧包括包含场景的图像,其中,在所述图像中,所述场景经扭变成所述图像的圆形区域;
用于确定所述参数值的装置,所述参数值包含:所述图像中的圆形区域的数量、标识所述圆形区域的中心的水平坐标的值、标识所述圆形区域的中心的垂直坐标的值、全半径值、场景半径值、视野值、指示在所述图像内的包含不可用像素的零值区的数量的值、指示在所述图像内的包含所述不可用像素的至少一部分的零值区域的位置的一或多个值、以及指示在所述图像内的包含所述不可用像素的所述至少一部分的零值区域的大小的一或多个值;以及
用于产生360度视频呈现的装置,其中用于产生所述360度视频呈现的装置包含用于使用所述参数值以将所述圆形区域映射到可用于360度视频呈现中的格式的装置。
CN201780029512.2A 2016-05-20 2017-04-25 虚拟实境中的圆形鱼眼视频 Active CN109076239B (zh)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US201662339504P 2016-05-20 2016-05-20
US62/339,504 2016-05-20
US15/495,730 US10979691B2 (en) 2016-05-20 2017-04-24 Circular fisheye video in virtual reality
US15/495,730 2017-04-24
PCT/US2017/029417 WO2017200721A1 (en) 2016-05-20 2017-04-25 Circular fisheye video in virtual reality

Publications (2)

Publication Number Publication Date
CN109076239A CN109076239A (zh) 2018-12-21
CN109076239B true CN109076239B (zh) 2022-07-19

Family

ID=58800889

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201780029512.2A Active CN109076239B (zh) 2016-05-20 2017-04-25 虚拟实境中的圆形鱼眼视频

Country Status (9)

Country Link
US (1) US10979691B2 (zh)
EP (1) EP3459253B1 (zh)
JP (1) JP2019517212A (zh)
KR (1) KR102503598B1 (zh)
CN (1) CN109076239B (zh)
BR (1) BR112018073534A2 (zh)
CA (1) CA3020505A1 (zh)
TW (1) TW201742444A (zh)
WO (1) WO2017200721A1 (zh)

Families Citing this family (80)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10043237B2 (en) 2015-08-12 2018-08-07 Gopro, Inc. Equatorial stitching of hemispherical images in a spherical image capture system
KR102170550B1 (ko) * 2016-05-24 2020-10-29 노키아 테크놀로지스 오와이 미디어 콘텐츠를 인코딩하는 방법, 장치 및 컴퓨터 프로그램
EP3761645A1 (en) * 2016-05-26 2021-01-06 Vid Scale, Inc. Methods and apparatus of viewport adaptive 360 degree video delivery
KR102506480B1 (ko) * 2016-06-14 2023-03-07 삼성전자주식회사 영상 처리 장치 및 그 영상 처리 방법
US10460501B2 (en) * 2016-07-04 2019-10-29 Liquid Cinema Inc., Canada System and method for processing digital video
US10297086B2 (en) 2016-07-04 2019-05-21 Liquid Cinema Inc. System and method for processing digital video
US10694102B2 (en) 2016-07-22 2020-06-23 Immervision, Inc. Method to capture, store, distribute, share, stream and display panoramic image or video
US20180048877A1 (en) * 2016-08-10 2018-02-15 Mediatek Inc. File format for indication of video content
WO2018043905A1 (ko) * 2016-08-29 2018-03-08 엘지전자 주식회사 360 비디오를 전송하는 방법, 360 비디오를 수신하는 방법, 360 비디오 전송 장치, 360 비디오 수신 장치
KR102560029B1 (ko) * 2016-09-12 2023-07-26 삼성전자주식회사 가상 현실 콘텐트를 송수신하는 방법 및 장치
KR102498598B1 (ko) * 2016-10-18 2023-02-14 삼성전자주식회사 영상 처리 장치 및 그 영상 처리 방법
US10186075B2 (en) * 2016-11-30 2019-01-22 Adcor Magnet Systems, Llc System, method, and non-transitory computer-readable storage media for generating 3-dimensional video images
US10999602B2 (en) 2016-12-23 2021-05-04 Apple Inc. Sphere projected motion estimation/compensation and mode decision
US11259046B2 (en) 2017-02-15 2022-02-22 Apple Inc. Processing of equirectangular object data to compensate for distortion by spherical projections
WO2018156243A1 (en) * 2017-02-22 2018-08-30 Twitter, Inc. Transcoding video
US10924747B2 (en) 2017-02-27 2021-02-16 Apple Inc. Video coding techniques for multi-view video
US10819907B2 (en) * 2017-03-30 2020-10-27 Mediatek Inc. Method and apparatus for signaling spherical region information in ISOBMFF
US10469751B2 (en) * 2017-05-12 2019-11-05 Garmin Switzerland Gmbh Smart stabilization and reorientation for an omnidirectional camera
US10375375B2 (en) * 2017-05-15 2019-08-06 Lg Electronics Inc. Method of providing fixed region information or offset region information for subtitle in virtual reality system and device for controlling the same
US10861359B2 (en) * 2017-05-16 2020-12-08 Texas Instruments Incorporated Surround-view with seamless transition to 3D view system and method
US10992961B2 (en) * 2017-05-25 2021-04-27 Qualcomm Incorporated High-level signaling for fisheye video data
US10269181B2 (en) * 2017-05-31 2019-04-23 Verizon Patent And Licensing Inc. Methods and systems for generating a virtualized projection of a customized view of a real-world scene for inclusion within virtual reality media content
US10255949B2 (en) * 2017-05-31 2019-04-09 Verizon Patent And Licensing Inc. Methods and systems for customizing virtual reality data
US11093752B2 (en) 2017-06-02 2021-08-17 Apple Inc. Object tracking in multi-view video
US20190005709A1 (en) * 2017-06-30 2019-01-03 Apple Inc. Techniques for Correction of Visual Artifacts in Multi-View Images
US10754242B2 (en) * 2017-06-30 2020-08-25 Apple Inc. Adaptive resolution and projection format in multi-direction video
US20190007536A1 (en) 2017-07-03 2019-01-03 Essential Products, Inc. Handheld writing implement form factor mobile device
US10462345B2 (en) 2017-08-11 2019-10-29 Essential Products, Inc. Deformable structure that compensates for displacement of a camera module of a camera accessory
KR102082707B1 (ko) * 2017-09-22 2020-02-28 엘지전자 주식회사 360 비디오를 전송하는 방법, 360 비디오를 수신하는 방법, 360 비디오 전송 장치, 360 비디오 수신 장치
US10818087B2 (en) 2017-10-02 2020-10-27 At&T Intellectual Property I, L.P. Selective streaming of immersive video based on field-of-view prediction
WO2019083266A1 (ko) * 2017-10-24 2019-05-02 엘지전자 주식회사 피쉬아이 비디오 정보를 포함한 360도 비디오를 송수신하는 방법 및 그 장치
US20190222823A1 (en) * 2017-12-18 2019-07-18 Immersive Tech, Inc. Techniques for Capturing and Rendering Videos with Simulated Reality Systems and for Connecting Services with Service Providers
CN111630850B (zh) * 2018-01-23 2022-11-04 Lg电子株式会社 用于发送或接收包括相机镜头信息的360度视频的方法和设备
CN111656790A (zh) * 2018-01-26 2020-09-11 夏普株式会社 用于发送信号通知位置信息的系统和方法
US10779006B2 (en) * 2018-02-14 2020-09-15 Qualcomm Incorporated Signaling 360-degree video information
US11297298B2 (en) 2018-02-27 2022-04-05 Lg Electronics Inc. Method for transmitting and receiving 360-degree video including camera lens information, and device therefor
US10659815B2 (en) 2018-03-08 2020-05-19 At&T Intellectual Property I, L.P. Method of dynamic adaptive streaming for 360-degree videos
US11245919B2 (en) * 2018-03-16 2022-02-08 Sony Corporation Image processing device and image processing method
US10554883B2 (en) * 2018-03-30 2020-02-04 Ricoh Company, Ltd. VR system, communication method, and non-transitory computer-readable medium
CN110351492B (zh) * 2018-04-06 2021-11-19 中兴通讯股份有限公司 一种视频数据处理方法、装置及介质
US10812828B2 (en) 2018-04-10 2020-10-20 At&T Intellectual Property I, L.P. System and method for segmenting immersive video
WO2019203574A1 (ko) * 2018-04-17 2019-10-24 엘지전자 주식회사 360 비디오 데이터의 서브픽처 기반 처리 방법 및 그 장치
US11836885B2 (en) 2018-05-07 2023-12-05 Apple Inc. Dynamic foveated pipeline
US10764494B2 (en) 2018-05-25 2020-09-01 Microsoft Technology Licensing, Llc Adaptive panoramic video streaming using composite pictures
US10666863B2 (en) 2018-05-25 2020-05-26 Microsoft Technology Licensing, Llc Adaptive panoramic video streaming using overlapping partitioned sections
GB2574445A (en) * 2018-06-06 2019-12-11 Canon Kk Method, device, and computer program for transmitting media content
KR102188270B1 (ko) * 2018-07-06 2020-12-09 엘지전자 주식회사 360 비디오 데이터의 서브픽처 기반 처리 방법 및 그 장치
JP7163656B2 (ja) * 2018-07-30 2022-11-01 株式会社リコー 配信システム、受信クライアント端末、配信方法
US10762394B2 (en) 2018-07-31 2020-09-01 Intel Corporation System and method for 3D blob classification and transmission
US11212506B2 (en) 2018-07-31 2021-12-28 Intel Corporation Reduced rendering of six-degree of freedom video
US10887574B2 (en) 2018-07-31 2021-01-05 Intel Corporation Selective packing of patches for immersive video
US10839589B2 (en) * 2018-07-31 2020-11-17 Intel Corporation Enhanced immersive media pipeline for correction of artifacts and clarity of objects in computing environments
US11178373B2 (en) 2018-07-31 2021-11-16 Intel Corporation Adaptive resolution of point cloud and viewpoint prediction for video streaming in computing environments
US10893299B2 (en) 2018-07-31 2021-01-12 Intel Corporation Surface normal vector processing mechanism
US10863160B2 (en) 2018-08-08 2020-12-08 Liquid Cinema Inc. Canada Conditional forced perspective in spherical video
US11057631B2 (en) 2018-10-10 2021-07-06 Intel Corporation Point cloud coding standard conformance definition in computing environments
US11055541B2 (en) * 2018-10-12 2021-07-06 Volvo Car Corporation Vehicle lane marking and other object detection using side fisheye cameras and three-fold de-warping
EP3651119A1 (en) * 2018-11-06 2020-05-13 Koninklijke Philips N.V. Disparity estimation from a wide angle image
EP3739880A1 (en) * 2019-05-14 2020-11-18 Axis AB Method, device and computer program product for encoding a distorted image frame
JP7306089B2 (ja) 2019-06-17 2023-07-11 株式会社リコー 画像処理システム、撮像システム、画像処理装置、撮像装置およびプログラム
US11288763B1 (en) * 2019-06-21 2022-03-29 Gopro, Inc. Systems and methods for visually encoding information into a pixel-based image
US20220360787A1 (en) * 2019-06-21 2022-11-10 Telefonaktiebolaget Lm Ericsson (Publ) Video coding layer up-switching indication
US11050938B2 (en) 2019-07-03 2021-06-29 Gopro, Inc. Apparatus and methods for pre-processing and stabilization of captured image data
US11386522B2 (en) * 2019-08-07 2022-07-12 Reification Inc. Calibration of individual and arrayed cameras using images and video
US20210029326A1 (en) * 2019-10-15 2021-01-28 Intel Corporation Session description protocol (sdp) based signaling of camera calibration parameters
CN110930299A (zh) * 2019-12-06 2020-03-27 杭州视洞科技有限公司 一种基于半球展开的圆形鱼眼视频显示方案
US20210245047A1 (en) 2020-02-10 2021-08-12 Intel Corporation Continuum architecture for cloud gaming
US11734789B2 (en) 2020-06-02 2023-08-22 Immersive Tech, Inc. Systems and methods for image distortion correction
TWI783239B (zh) * 2020-06-29 2022-11-11 中華電信股份有限公司 優化影像資料之方法
US11503087B2 (en) * 2020-09-09 2022-11-15 Samsung Electronics Co., Ltd. Method and apparatus for processing immersive media
US11715230B2 (en) 2020-10-06 2023-08-01 Defender LLC System and method for detecting objects in video images
CN112491648B (zh) * 2020-11-17 2022-03-08 重庆美沣秦安汽车驱动系统有限公司 一种基于can通信矩阵的汽车通信数据转换方法及存储介质
CN112927371A (zh) * 2021-03-03 2021-06-08 深圳市创想三维科技有限公司 图像处理方法、装置、计算机设备和存储介质
US11838341B2 (en) 2021-04-19 2023-12-05 Tencent America LLC Signaling schemes in events message tracks
JP2022184139A (ja) * 2021-05-31 2022-12-13 キヤノン株式会社 画像処理装置、画像処理方法、及びプログラム
KR20230065655A (ko) * 2021-11-05 2023-05-12 한화비전 주식회사 다채널 영상 수신 장치 및 방법
CN117652139A (zh) * 2021-11-25 2024-03-05 英特尔公司 用于图像的基于图块的拼接和编码的方法和装置
US20230377606A1 (en) * 2022-05-23 2023-11-23 Microsoft Technology Licensing, Llc Video editing projects using single bundled video files
WO2024054446A1 (en) * 2022-09-06 2024-03-14 Apple Inc. Circular image compression
GB2624904A (en) * 2022-11-30 2024-06-05 Sony Interactive Entertainment Inc Virtual reality streaming system and method

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103247020A (zh) * 2012-02-03 2013-08-14 苏州科泽数字技术有限公司 一种基于径向特征的鱼眼图像展开方法
CN104408732A (zh) * 2014-12-10 2015-03-11 东北大学 一种基于全向结构光的大视场深度测量系统及方法

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5796426A (en) 1994-05-27 1998-08-18 Warp, Ltd. Wide-angle image dewarping method and apparatus
US6833843B2 (en) 2001-12-03 2004-12-21 Tempest Microsystems Panoramic imaging and display system with canonical magnifier
KR101404527B1 (ko) * 2007-12-26 2014-06-09 다이니폰 인사츠 가부시키가이샤 화상 변환 장치 및 화상 변환 방법
PL2491720T3 (pl) * 2009-10-20 2018-08-31 Telefonaktiebolaget Lm Ericsson (Publ) Zapewnienie uzupełniających informacji przetwarzania
JP2015156051A (ja) * 2012-06-06 2015-08-27 ソニー株式会社 画像処理装置、画像処理方法、プログラム
KR101698657B1 (ko) * 2012-07-04 2017-01-20 인텔 코포레이션 파노라마 기반 3d 비디오 코딩
US9357199B2 (en) * 2013-01-04 2016-05-31 Qualcomm Incorporated Separate track storage of texture and depth views for multiview coding plus depth
JP2015019215A (ja) * 2013-07-10 2015-01-29 オリンパスイメージング株式会社 撮像装置及び撮像方法
WO2015104451A1 (en) * 2014-01-07 2015-07-16 Nokia Technologies Oy Method and apparatus for video coding and decoding
JP5843033B1 (ja) * 2014-05-15 2016-01-13 株式会社リコー 撮像システム、撮像装置、プログラムおよびシステム
WO2017188714A1 (ko) * 2016-04-26 2017-11-02 엘지전자 주식회사 360도 비디오를 전송하는 방법, 360도 비디오를 수신하는 방법, 360도 비디오 전송 장치, 360도 비디오 수신 장치

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103247020A (zh) * 2012-02-03 2013-08-14 苏州科泽数字技术有限公司 一种基于径向特征的鱼眼图像展开方法
CN104408732A (zh) * 2014-12-10 2015-03-11 东北大学 一种基于全向结构光的大视场深度测量系统及方法

Also Published As

Publication number Publication date
TW201742444A (zh) 2017-12-01
US10979691B2 (en) 2021-04-13
CA3020505A1 (en) 2017-11-23
CN109076239A (zh) 2018-12-21
JP2019517212A (ja) 2019-06-20
US20170339392A1 (en) 2017-11-23
WO2017200721A1 (en) 2017-11-23
EP3459253B1 (en) 2024-04-17
BR112018073534A2 (pt) 2019-03-19
KR102503598B1 (ko) 2023-02-23
KR20190008223A (ko) 2019-01-23
EP3459253A1 (en) 2019-03-27

Similar Documents

Publication Publication Date Title
CN109076239B (zh) 虚拟实境中的圆形鱼眼视频
US10917564B2 (en) Systems and methods of generating and processing files for partial decoding and most interested regions
US11062738B2 (en) Signalling of video content including sub-picture bitstreams for video coding
CN108605168B (zh) 一种处理虚拟现实数据的方法、装置以及非暂时性计算机可读媒体
JP6799159B2 (ja) 関心領域のシグナリングのシステムおよび方法
US11532128B2 (en) Advanced signaling of regions of interest in omnidirectional visual media
KR102185811B1 (ko) 컨테이너 파일들 및 비디오 비트스트림들의 관심 영역들의 강화된 시그널링

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