[go: up one dir, main page]

CN115278193A - Panoramic video distribution method, device, device and computer storage medium - Google Patents

Panoramic video distribution method, device, device and computer storage medium Download PDF

Info

Publication number
CN115278193A
CN115278193A CN202110481689.4A CN202110481689A CN115278193A CN 115278193 A CN115278193 A CN 115278193A CN 202110481689 A CN202110481689 A CN 202110481689A CN 115278193 A CN115278193 A CN 115278193A
Authority
CN
China
Prior art keywords
panoramic
image frame
video
information
field
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202110481689.4A
Other languages
Chinese (zh)
Inventor
肖哲
孔晓琨
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.)
China Mobile Communications Group Co Ltd
China Mobile Group Hebei Co Ltd
Original Assignee
China Mobile Communications Group Co Ltd
China Mobile Group Hebei Co Ltd
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 China Mobile Communications Group Co Ltd, China Mobile Group Hebei Co Ltd filed Critical China Mobile Communications Group Co Ltd
Priority to CN202110481689.4A priority Critical patent/CN115278193A/en
Publication of CN115278193A publication Critical patent/CN115278193A/en
Pending legal-status Critical Current

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
    • 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/194Transmission of image signals
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N13/00Stereoscopic video systems; Multi-view video systems; Details thereof
    • H04N13/20Image signal generators
    • H04N13/204Image signal generators using stereoscopic image cameras
    • H04N13/243Image signal generators using stereoscopic image cameras using three or more 2D image sensors

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)

Abstract

The application discloses a panoramic video distribution method, a panoramic video distribution device, panoramic video distribution equipment and a computer storage medium. The method comprises the steps that under the condition that panoramic video transmission connection is established with a terminal, playing parameters of the terminal are received, wherein the playing parameters comprise position information, time information and view information; according to the position information and the time information, determining an initial panoramic image frame from the panoramic video; cutting the initially selected panoramic image frame according to the visual field information to obtain a target image frame; and distributing the target image frame to the terminal. According to the method and the device, the playing parameters of the terminal are matched with the panoramic video, the matched panoramic image frame is finally cut, the cut target image frame is distributed to the terminal, the user operation can be responded in time, and the target image frame is obtained through cutting, so that the smoothness of the distribution of the panoramic video can be guaranteed.

Description

全景视频分发方法、装置、设备及计算机存储介质Panoramic video distribution method, device, equipment and computer storage medium

技术领域technical field

本申请属于视频分发技术领域,尤其涉及一种全景视频分发方法、装置、设备及计算机存储介质。The present application belongs to the technical field of video distribution, and in particular relates to a panoramic video distribution method, device, equipment and computer storage medium.

背景技术Background technique

全景视频是一种用三维摄像机进行全方位360度进行拍摄的视频,是虚拟现实(Virtual Reality,VR)技术应用的内容承载。现有的全景视频通常采用视场角(FOV)传输的分发方式,将全景视频预先分割成若干FOV分区,再辅助全景背景流进行拼接,往往难以及时适应用户操作,导致全景视频分发不够流畅。Panoramic video is a kind of video that is shot in 360 degrees in all directions with a three-dimensional camera, and is the content bearer of the application of virtual reality (Virtual Reality, VR) technology. Existing panoramic video usually adopts the distribution method of field of view (FOV) transmission. The panoramic video is pre-divided into several FOV partitions, and then the panoramic background stream is assisted in splicing. It is often difficult to adapt to user operations in time, resulting in unsmooth panoramic video distribution.

发明内容Contents of the invention

本申请实施例提供一种在全景视频分发方法、装置、设备及计算机存储介质,以解决全景视频分发不够流畅的技术问题。Embodiments of the present application provide a panoramic video distribution method, device, device, and computer storage medium to solve the technical problem that panoramic video distribution is not smooth enough.

第一方面,本申请实施例提供一种全景视频分发方法,方法包括:In the first aspect, the embodiment of the present application provides a panoramic video distribution method, the method includes:

在与终端建立全景视频传输连接的情况下,接收所述终端的播放参数,其中所述播放参数包括位置信息、时间信息和视野信息;In the case of establishing a panoramic video transmission connection with the terminal, receiving the playback parameters of the terminal, wherein the playback parameters include position information, time information and field of view information;

根据所述位置信息与所述时间信息,从所述全景视频中确定出初选全景图像帧;determining a primary panoramic image frame from the panoramic video according to the position information and the time information;

根据所述视野信息,对所述初选全景图像帧进行裁剪,得到目标图像帧;clipping the primary panoramic image frame according to the field of view information to obtain a target image frame;

将所述目标图像帧分发至所述终端。Distributing the target image frame to the terminal.

在一个实施例中,所述全景视频包括N个全景子视频,每一所述全景子视频均关联有拍摄点位,每一所述全景子视频包括至少一个全景图像帧,其中N为大于或等于1的整数,In one embodiment, the panoramic video includes N panoramic sub-videos, each of which is associated with a shooting point, and each of the panoramic sub-videos includes at least one panoramic image frame, where N is greater than or an integer equal to 1,

所述根据所述位置信息与所述时间信息,从所述全景视频中确定出初选全景图像帧,包括:The determining the primary panoramic image frame from the panoramic video according to the position information and the time information includes:

根据预设的位置信息与拍摄点位的对应关系,从所述全景视频中确定出与所述位置信息匹配的第一全景子视频;Determining a first panoramic sub-video matching the position information from the panoramic video according to the preset correspondence between the position information and the shooting point;

根据预设的时间信息与全景图像帧的对应关系,从所述第一全景子视频包括的至少一个全景图像帧中,确定出与所述时间信息匹配的初选全景图像帧。According to the preset corresponding relationship between time information and panoramic image frames, a primary panoramic image frame matching the time information is determined from at least one panoramic image frame included in the first panoramic sub-video.

在一个实施例中,所述接收终端的播放参数之前,所述方法还包括:In one embodiment, before the playback parameters of the receiving terminal, the method further includes:

获取全景视频中的N个全景子视频,以及每一所述全景子视频关联的点位信息,所述全景子视频为全景视频中的每一拍摄点位所拍摄的视频;Obtain N panoramic sub-videos in the panoramic video, and point information associated with each of the panoramic sub-videos, where the panoramic sub-videos are videos taken at each shooting point in the panoramic video;

获取每一全景子视频的帧序列,所述帧序列包括至少一个全景图像帧,以及每一所述全景图像帧对应的播放进度;Acquiring a frame sequence of each panoramic sub-video, the frame sequence including at least one panoramic image frame, and a playback progress corresponding to each said panoramic image frame;

关联存储所述全景子视频与所述点位信息,以及所述全景图像帧与所述播放进度。The panoramic sub-video and the point information, as well as the panoramic image frame and the playback progress are stored in association.

在一个实施例中,所述获取每一全景子视频的帧序列之后,所述方法还包括:In one embodiment, after the frame sequence of each panoramic sub-video is acquired, the method further includes:

获取每一所述全景图像帧的各个像素点在预设图像坐标系中的像素坐标;Acquiring pixel coordinates of each pixel point of each panoramic image frame in a preset image coordinate system;

关联存储所述像素点与所述像素坐标。The pixel point and the pixel coordinates are stored associatively.

在一个实施例中,所述视野信息包括视场坐标和初始视场角,所述根据所述视野信息,对所述初选全景图像帧进行裁剪,得到目标图像帧,包括:In one embodiment, the field of view information includes field of view coordinates and an initial field of view angle, and according to the field of view information, the primary panoramic image frame is clipped to obtain a target image frame, including:

根据所述视场坐标,从所述初选全景图像帧中确定出中心点,所述中心点为所述像素坐标与所述视场坐标匹配的像素点;Determining a center point from the primary panoramic image frame according to the field of view coordinates, where the center point is a pixel point whose pixel coordinates match the field of view coordinates;

基于所述中心点与所述初始视场角,对所述初选全景图像帧进行裁剪,得到目标图像帧。Based on the center point and the initial field of view angle, the primary panoramic image frame is cropped to obtain a target image frame.

在一个实施例中,所述播放参数还包括缩放比例,所述基于所述中心点与所述初始视场角,对所述初选全景图像帧进行裁剪,得到目标图像帧,包括:In one embodiment, the playback parameters further include a scaling ratio, and the primary panorama image frame is clipped based on the center point and the initial field of view angle to obtain a target image frame, including:

根据所述缩放比例与所述初始视场角,得到目标视场角;Obtaining a target viewing angle according to the scaling ratio and the initial viewing angle;

基于所述中心点与所述目标视场角,对所述初选全景图像帧进行裁剪,得到目标图像帧。Based on the center point and the target field of view angle, the primary panoramic image frame is cropped to obtain a target image frame.

在一个实施例中,所述初始视场角基于所述终端根据人眼视野范围得到,所述缩放比例基于所述终端的传感器采集到的操作信息得到,或者基于所述终端接收到的第一输入得到。In one embodiment, the initial field of view is obtained based on the terminal according to the field of view of the human eye, and the scaling ratio is obtained based on the operation information collected by the terminal's sensor, or based on the first Enter to get.

第二方面,本申请实施例提供了一种全景视频分发装置,装置包括:In the second aspect, the embodiment of the present application provides a panoramic video distribution device, which includes:

接收模块,用于在与终端建立全景视频传输连接的情况下,接收所述终端的播放参数,其中所述播放参数包括位置信息、时间信息和视野信息;A receiving module, configured to receive playback parameters of the terminal when a panoramic video transmission connection is established with the terminal, wherein the playback parameters include position information, time information, and field of view information;

确定模块,用于根据所述位置信息与所述时间信息,从所述全景视频中确定出初选全景图像帧;A determining module, configured to determine a primary panoramic image frame from the panoramic video according to the position information and the time information;

裁剪模块,用于根据所述视野信息,对所述初选全景图像帧进行裁剪,得到目标图像帧;A clipping module, configured to clip the primary panoramic image frame according to the field of view information to obtain a target image frame;

分发模块,用于将所述目标图像帧分发至所述终端。A distribution module, configured to distribute the target image frame to the terminal.

第三方面,本申请实施例提供了一种电子设备,设备包括:In a third aspect, an embodiment of the present application provides an electronic device, including:

处理器以及存储有计算机程序指令的存储器;a processor and a memory storing computer program instructions;

所述处理器执行所述计算机程序指令时实现上述的方法。The above method is implemented when the processor executes the computer program instructions.

第四方面,本申请实施例提供了一种计算机存储介质,所述计算机存储介质上存储有计算机程序指令,所述计算机程序指令被处理器执行时实现上述的方法。In a fourth aspect, an embodiment of the present application provides a computer storage medium, where computer program instructions are stored on the computer storage medium, and the above method is implemented when the computer program instructions are executed by a processor.

本申请实施例的全景视频分发方法、装置、设备及计算机存储介质,能够在与终端建立全景视频传输连接的情况下,接收终端的位置信息、时间信息和视野信息等播放参数,先根据位置信息与时间信息,从全景视频中确定出初选全景图像帧,然后再根据视野信息,对初选全景图像帧进行裁剪,得到最终分发至终端的目标图像帧。本申请实施例利用终端的播放参数与全景视频进行匹配,最终对匹配到的全景图像帧进行裁剪后,分发裁剪后的目标图像帧至终端,可以及时响应用户操作裁剪得到目标图像帧,有效避免了对全景视频切割分区,后续拼接感严重的问题,从而可以保证全景视频分发的流畅度。The panoramic video distribution method, device, device, and computer storage medium of the embodiments of the present application can receive playback parameters such as the location information, time information, and field of view information of the terminal when establishing a panoramic video transmission connection with the terminal, and first according to the location information. and time information, determine the primary panoramic image frame from the panoramic video, and then cut the primary panoramic image frame according to the field of view information to obtain the target image frame that is finally distributed to the terminal. In this embodiment of the present application, the playback parameters of the terminal are matched with the panoramic video, and finally the matched panoramic image frame is trimmed, and the trimmed target image frame is distributed to the terminal, and the target image frame can be cropped in response to user operations in a timely manner, effectively avoiding It solves the serious problem of cutting and partitioning the panoramic video and subsequent splicing, so as to ensure the smoothness of panoramic video distribution.

附图说明Description of drawings

为了更清楚地说明本申请实施例的技术方案,下面将对本申请实施例中所需要使用的附图作简单的介绍,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。In order to more clearly illustrate the technical solutions of the embodiments of the present application, the following will briefly introduce the accompanying drawings that need to be used in the embodiments of the present application. Additional figures can be derived from these figures.

图1是本申请一个实施例提供的全景视频分发方法的流程示意图;FIG. 1 is a schematic flow diagram of a panoramic video distribution method provided by an embodiment of the present application;

图2是本申请实施例中的全景子视频的点位信息示意图;Fig. 2 is a schematic diagram of the point information of the panoramic sub-video in the embodiment of the present application;

图3是本申请实施例中的全景图像帧的各个像素点的坐标示意图;Fig. 3 is a schematic diagram of the coordinates of each pixel of the panoramic image frame in the embodiment of the present application;

图4是本申请实施例中的目标图像帧的示意图;FIG. 4 is a schematic diagram of a target image frame in an embodiment of the present application;

图5是本申请另一个实施例提供的全景视频分发装置的结构示意图;FIG. 5 is a schematic structural diagram of a panoramic video distribution device provided in another embodiment of the present application;

图6是本申请又一个实施例提供的电子设备的结构示意图。Fig. 6 is a schematic structural diagram of an electronic device provided by another embodiment of the present application.

具体实施方式Detailed ways

下面将详细描述本申请的各个方面的特征和示例性实施例,为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及具体实施例,对本申请进行进一步详细描述。应理解,此处所描述的具体实施例仅意在解释本申请,而不是限定本申请。对于本领域技术人员来说,本申请可以在不需要这些具体细节中的一些细节的情况下实施。下面对实施例的描述仅仅是为了通过示出本申请的示例来提供对本申请更好的理解。The characteristics and exemplary embodiments of various aspects of the application will be described in detail below. In order to make the purpose, technical solution and advantages of the application clearer, the application will be further described in detail below in conjunction with the accompanying drawings and specific embodiments. It should be understood that the specific embodiments described here are only intended to explain the present application rather than limit the present application. It will be apparent to one skilled in the art that the present application may be practiced without some of these specific details. The following description of the embodiments is only to provide a better understanding of the present application by showing examples of the present application.

需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。It should be noted that in this article, relational terms such as first and second are only used to distinguish one entity or operation from another entity or operation, and do not necessarily require or imply that there is a relationship between these entities or operations. There is no such actual relationship or order between them. Furthermore, the term "comprises", "comprises" or any other variation thereof is intended to cover a non-exclusive inclusion such that a process, method, article, or apparatus comprising a set of elements includes not only those elements, but also includes elements not expressly listed. other elements of or also include elements inherent in such a process, method, article, or device. Without further limitations, an element defined by the statement "comprising..." does not exclude the presence of additional same elements in the process, method, article or device comprising said element.

为了解决现有技术问题,本申请实施例提供了一种全景视频分发方法、装置、设备及计算机存储介质。下面首先对本申请实施例所提供的全景视频分发方法进行介绍。In order to solve the problems in the prior art, embodiments of the present application provide a panoramic video distribution method, device, device, and computer storage medium. The panoramic video distribution method provided by the embodiment of the present application is firstly introduced below.

图1示出了本申请一个实施例提供的全景视频分发方法的流程示意图。该全景视频分发方法可以应用在任意涉及全景视频分发的场景中,例如,可以应用于智能手机、计算机或智能电视等终端请求播放全景视频的场景中,也可以应用于虚拟现实(VirtualReality,VR)场景中,此处不做具体限定;而为了简化说明,后续主要以VR场景为例进行说明。Fig. 1 shows a schematic flowchart of a panoramic video distribution method provided by an embodiment of the present application. The panoramic video distribution method can be applied to any scene involving panoramic video distribution, for example, it can be applied to a scene where a terminal such as a smart phone, a computer or a smart TV requests to play a panoramic video, and can also be applied to a virtual reality (Virtual Reality, VR) The scene is not specifically limited here; but to simplify the description, the following description will mainly take the VR scene as an example.

如图1所示,该全景视频分发方法,包括:As shown in Figure 1, the panoramic video distribution method includes:

步骤S101,在与终端建立全景视频传输连接的情况下,接收终端的播放参数,其中播放参数包括位置信息、时间信息和视野信息;Step S101, in the case of establishing a panoramic video transmission connection with the terminal, receiving the playback parameters of the terminal, wherein the playback parameters include position information, time information and field of view information;

步骤S102,根据位置信息与时间信息,从全景视频中确定出初选全景图像帧;Step S102, according to the location information and time information, determine the primary selected panoramic image frame from the panoramic video;

步骤S103,根据视野信息,对初选全景图像帧进行裁剪,得到目标图像帧;Step S103, according to the field of view information, crop the primary panoramic image frame to obtain the target image frame;

步骤S104,将目标图像帧分发至终端。Step S104, distributing the target image frame to the terminal.

在本实施例中,步骤S101中与终端建立全景视频传输连接,可以是服务器与终端进行交互,终端请求播放全景视频,而服务器响应于终端的请求向终端分发该全景视频。In this embodiment, establishing a panoramic video transmission connection with the terminal in step S101 may mean that the server interacts with the terminal, the terminal requests to play the panoramic video, and the server distributes the panoramic video to the terminal in response to the terminal's request.

其中,服务器可以是任意存储有全景视频相关数据的设备,例如,可以是内容分发网络(Content Delivery Network,CDN)设备,为了简化说明,以下以服务器为CDN设备为例进行说明。Wherein, the server may be any device that stores panoramic video-related data, for example, it may be a content delivery network (Content Delivery Network, CDN) device. To simplify the description, the server is a CDN device as an example for illustration below.

其中,终端可以是智能手机、计算机、智能电视、VR头显设备等具备处理全景视频数据的功能的设备。具体的,终端可以包括传感器、遥控器、按钮或鼠标等,可以用于获取位置信息、视野信息等播放参数;终端还可安装有播放软件(应用程序),可以用于播放全景视频,并可获取播放时间。Wherein, the terminal may be a device capable of processing panoramic video data, such as a smart phone, a computer, a smart TV, a VR head-mounted display device, and the like. Specifically, the terminal may include a sensor, a remote control, a button or a mouse, etc., which may be used to obtain playback parameters such as position information and field of view information; Get playback time.

播放参数可以包括位置信息、时间信息和视野信息。其中位置信息可以是控制装置获取到的用户所处的空间位置,例如用户佩戴VR头显设备,进入到VR场景的第一空间中,此时位置信息对应于第一空间,即播放参数指示需要播放与第一空间关联的全景视频数据。Playing parameters may include position information, time information and field of view information. The location information may be the spatial location of the user acquired by the control device. For example, the user wears a VR headset and enters the first space of the VR scene. At this time, the location information corresponds to the first space, that is, the playback parameter indicates the required The panoramic video data associated with the first space is played.

时间信息可以是对全景视频的时间维度的虚拟控制,例如可以是全景视频的播放时间轴,还可以根据快进、快退等操作改变全景视频的播放时间轴。此时可以根据全景视频的播放时间轴对应到具体的全景图像帧,即播放参数指示需要播放与当前播放时间轴匹配的全景图像帧。The time information can be a virtual control of the time dimension of the panoramic video, for example, it can be the playback time axis of the panoramic video, and the playback time axis of the panoramic video can also be changed according to operations such as fast forward and rewind. At this time, a specific panoramic image frame may be mapped according to the playback time axis of the panoramic video, that is, the playback parameter indicates that a panoramic image frame matching the current playback time axis needs to be played.

视野信息可以是用户的视野范围,即用户视野可以看见的区域。例如用户在VR空间的第一空间中看向前方,此时以用户的朝向为参照,用户的可视范围可能是第一空间中正前方的部分区域。The visual field information may be the user's visual field range, that is, the area that the user's visual field can see. For example, the user looks forward in the first space of the VR space. At this time, with the user's orientation as a reference, the user's visual range may be a partial area directly in front of the first space.

在步骤S102中,可以根据位置信息与时间信息,从全景视频中确定出初选全景图像帧。如上文所述,全景视频可以包括一个或多个不同空间关联的全景子视频。In step S102, the primary panoramic image frame may be determined from the panoramic video according to the location information and time information. As mentioned above, the panoramic video may include one or more panoramic sub-videos with different spatial associations.

如果全景子视频为一个,即可以说明全景视频只有一个空间,此时位置信息对应于该空间中,因此与位置信息匹配的是该全景子视频。如果全景子视频为多个,则可以根据位置信息确定用户所属的空间,此时与该空间关联的全景子视频就是与位置信息匹配的全景子视频。If there is one panorama sub-video, it means that the panorama video has only one space, and the position information corresponds to this space, so the panorama sub-video matches the position information. If there are multiple panoramic sub-videos, the space to which the user belongs can be determined according to the location information, and the panoramic sub-video associated with the space is the panoramic sub-video matching the location information.

可以先根据位置信息确定出与位置信息匹配的第一全景子视频,再根据时间信息确定出第一全景子视频中与时间信息匹配的初选全景图像帧。也可以先根据时间信息确定出全景视频中与时间信息匹配的所有全景图像帧,再根据位置信息与所有全景图像帧进行匹配,得到与位置信息所属空间对应的全景图像帧作为初选全景图像帧。The first panoramic sub-video matching the position information may be determined first according to the position information, and then the primary panorama image frame matching the time information in the first panoramic sub-video is determined according to the time information. It is also possible to first determine all the panoramic image frames in the panoramic video that match the time information according to the time information, and then match all the panoramic image frames according to the position information to obtain the panoramic image frames corresponding to the space to which the position information belongs as the primary panoramic image frame .

在步骤S103中,可以根据视野信息,对初选全景图像帧进行裁剪,得到目标图像帧。本实施例在确定出初选全景图像帧后,此时并未直接将初选全景图像帧分发至终端,可以根据视野信息裁剪初选全景图像帧,即将用户的可视范围内的图像帧区域从全景图像帧裁剪下来,该图像帧区域作为目标图像帧。In step S103, the primary panoramic image frame may be cropped according to the field of view information to obtain a target image frame. In this embodiment, after the primary panoramic image frame is determined, the primary panoramic image frame is not directly distributed to the terminal at this time, and the primary panoramic image frame can be cut according to the field of view information, that is, the image frame area within the user's visual range Cropped from the panoramic image frame, the image frame area is used as the target image frame.

在步骤S104中,将目标图像帧分发至终端。CDN设备可以直接将目标图像帧分发至终端,从而可以在终端的显示屏幕显示该目标图像帧。In step S104, the target image frame is distributed to the terminal. The CDN device can directly distribute the target image frame to the terminal, so that the target image frame can be displayed on the display screen of the terminal.

本申请实施例提供的全景视频分发方法能够在与终端建立全景视频传输连接的情况下,接收终端的位置信息、时间信息和视野信息等播放参数,先根据位置信息与时间信息,从全景视频中确定出初选全景图像帧,然后再根据视野信息,对初选全景图像帧进行裁剪,得到最终分发至终端的目标图像帧。本申请实施例利用终端的播放参数与全景视频进行匹配,最终对匹配到的全景图像帧进行裁剪后,分发裁剪后的目标图像帧至终端,可以及时响应用户操作裁剪得到目标图像帧,有效避免了对全景视频切割分区,后续拼接感严重的问题,从而可以保证全景视频分发的流畅度。The panoramic video distribution method provided by the embodiment of the present application can receive playback parameters such as location information, time information, and field of view information of the terminal when establishing a panoramic video transmission connection with the terminal, and first select the panoramic video from the panoramic video according to the location information and time information. The primary panoramic image frame is determined, and then the primary panoramic image frame is clipped according to the field of view information to obtain a target image frame that is finally distributed to the terminal. In this embodiment of the present application, the playback parameters of the terminal are matched with the panoramic video, and finally the matched panoramic image frame is trimmed, and the trimmed target image frame is distributed to the terminal, and the target image frame can be cropped in response to user operations in a timely manner, effectively avoiding It solves the serious problem of cutting and partitioning the panoramic video and subsequent splicing, so as to ensure the smoothness of panoramic video distribution.

可选的,在一个实施例中,全景视频可以包括N个全景子视频,每一全景子视频均可关联有拍摄点位,每一全景子视频包括至少一个全景图像帧,其中N为大于或等于1的整数,Optionally, in one embodiment, the panoramic video can include N panoramic sub-videos, each of which can be associated with a shooting point, and each panoramic sub-video includes at least one panoramic image frame, where N is greater than or an integer equal to 1,

步骤S102,根据位置信息与时间信息,从全景视频中确定出初选全景图像帧,可以包括:Step S102, according to the location information and time information, determine the primary panoramic image frame from the panoramic video, which may include:

根据预设的位置信息与拍摄点位的对应关系,从全景视频中确定出与位置信息匹配的第一全景子视频;According to the corresponding relationship between the preset position information and the shooting point, determine the first panoramic sub-video matching the position information from the panoramic video;

根据预设的时间信息与全景图像帧的对应关系,从第一全景子视频包括的至少一个全景图像帧中,确定出与时间信息匹配的初选全景图像帧。According to the preset corresponding relationship between time information and panoramic image frames, a primary panoramic image frame matching the time information is determined from at least one panoramic image frame included in the first panoramic sub-video.

在本实施例中,全景视频可以包括N个全景子视频,其中N为大于或等于1的整数,每一全景子视频均可关联有拍摄点位。例如,全景视频可以由N个不同空间的全景子视频构成,具体的,每个空间可以由一个拍摄点位进行拍摄。In this embodiment, the panoramic video may include N panoramic sub-videos, where N is an integer greater than or equal to 1, and each panoramic sub-video may be associated with a shooting point. For example, a panoramic video may be composed of panoramic sub-videos in N different spaces, and specifically, each space may be shot by a shooting point.

其中一个拍摄点位可以包括多个环绕设置的感光传感器,例如一个拍摄点位可以包括3个120°的广角摄像头进行拍摄,从而得到该空间的全景子视频。一个拍摄点位还可以是一个旋转拍摄的摄像头,或者其他能够拍摄处全景视频的设备。One of the shooting points may include a plurality of surrounding light-sensitive sensors, for example, one shooting point may include three 120° wide-angle cameras for shooting, so as to obtain a panoramic sub-video of the space. A shooting point can also be a rotating camera, or other equipment capable of shooting panoramic video.

每一全景子视频包括至少一个全景图像帧,例如全景子视频可以包括“全景图像帧1”、“全景图像帧2”、“全景图像帧3”……“全景图像帧n”。Each panoramic sub-video includes at least one panoramic image frame, for example, the panoramic sub-video may include "panoramic image frame 1", "panoramic image frame 2", "panoramic image frame 3" ... "panoramic image frame n".

根据预设的位置信息与拍摄点位的对应关系,从全景视频中确定出与位置信息匹配的第一全景子视频。其中预设的位置信息与拍摄点位的对应关系可以是一个拍摄点位对应一个位置信息,位置信息可以是一个具体的位置点,也可以是处于一个位置范围内。According to the preset corresponding relationship between the position information and the shooting point, the first panoramic sub-video matching the position information is determined from the panoramic video. The preset correspondence between location information and shooting points may be that one shooting point corresponds to one piece of location information, and the location information may be a specific location point, or within a location range.

根据位置信息与拍摄点位的对应关系,可以确定出与位置信息匹配的拍摄点位,而与该拍摄点位关联的全景子视频,就是与位置信息匹配的第一全景子视频。According to the correspondence between the position information and the shooting point, the shooting point matching the position information can be determined, and the panoramic sub-video associated with the shooting point is the first panoramic sub-video matching the position information.

根据预设的时间信息与全景图像帧的对应关系,从第一全景子视频包括的至少一个全景图像帧中,确定出与时间信息匹配的初选全景图像帧。其中预设的时间信息与全景图像帧的对应关系可以是一个全景图像帧对应一个时间信息。According to the preset corresponding relationship between time information and panoramic image frames, a primary panoramic image frame matching the time information is determined from at least one panoramic image frame included in the first panoramic sub-video. The preset correspondence between time information and panoramic image frames may be that one panoramic image frame corresponds to one piece of time information.

例如,“全景图像帧1”对应时间T1,“全景图像帧2”对应时间T2,“全景图像帧3”对应时间T3……“全景图像帧n”对应时间Tn。For example, "panoramic image frame 1" corresponds to time T1, "panoramic image frame 2" corresponds to time T2, "panoramic image frame 3" corresponds to time T3... "panoramic image frame n" corresponds to time Tn.

根据时间信息与全景图像帧的对应关系,可以从上个步骤确定出的第一全景子视频包括的“全景图像帧1”、“全景图像帧2”、“全景图像帧3”……“全景图像帧n”中,确定出与时间信息匹配的初选全景图像帧。According to the corresponding relationship between the time information and the panoramic image frame, the "panoramic image frame 1", "panoramic image frame 2", "panoramic image frame 3" ... "panoramic image frame" included in the first panoramic sub-video determined from the previous step In the image frame n", the primary panoramic image frame matching the time information is determined.

例如,时间信息为T3,则对应的“全景图像帧3”可以确定为与时间信息匹配的初选全景图像帧。For example, if the time information is T3, then the corresponding "panoramic image frame 3" may be determined as the primary panorama image frame matching the time information.

本实施例先根据位置信息确定出匹配的第一全景子视频,再根据时间信息从第一全景子视频中确定出初选全景图像帧,根据确定出的初选全景图像帧进行裁剪得到目标图像帧,再将目标图像帧分发至终端。能够根据播放参数及时响应用户操作,得到目标图像帧,从而保证全景视频分发的流畅度。In this embodiment, the matching first panoramic sub-video is first determined according to the position information, and then the primary panoramic image frame is determined from the first panoramic sub-video according to the time information, and the target image is obtained by cutting according to the determined primary panoramic image frame frame, and then distribute the target image frame to the terminal. It can respond to user operations in a timely manner according to playback parameters, and obtain target image frames, thereby ensuring the smoothness of panoramic video distribution.

可选的,在一个实施例中,接收终端的播放参数之前,全景视频分发方法还可以包括:Optionally, in one embodiment, before receiving the playback parameters of the terminal, the panoramic video distribution method may further include:

获取全景视频中的N个全景子视频,以及每一全景子视频关联的点位信息,全景子视频为全景视频中的每一拍摄点位所拍摄的视频;Obtain N panoramic sub-videos in the panoramic video, and point information associated with each panoramic sub-video, where the panoramic sub-video is a video taken at each shooting point in the panoramic video;

获取每一全景子视频的帧序列,帧序列包括至少一个全景图像帧,以及每一全景图像帧对应的播放进度;Obtain the frame sequence of each panoramic sub-video, the frame sequence includes at least one panoramic image frame, and the playback progress corresponding to each panoramic image frame;

关联存储全景子视频与点位信息,以及全景图像帧与播放进度。Associated storage of panoramic sub-video and point information, as well as panoramic image frames and playback progress.

在本实施例中,可以获取全景视频中的N个全景子视频,以及每一全景子视频关联的点位信息。例如,可以针对全景视频建立一个空间坐标系,如图2所示,空间坐标系的坐标原点可以是某一个拍摄点位,从而获取其他拍摄点位在空间坐标系中的坐标。可以将拍摄点位在空间坐标系中的坐标作为全景子视频关联的点位信息。In this embodiment, N panoramic sub-videos in the panoramic video and point information associated with each panoramic sub-video may be acquired. For example, a space coordinate system can be established for panoramic video, as shown in FIG. 2 , the coordinate origin of the space coordinate system can be a certain shooting point, so as to obtain the coordinates of other shooting points in the space coordinate system. The coordinates of the shooting point in the spatial coordinate system may be used as point information associated with the panorama sub-video.

或者,还可以获取每一拍摄点位所拍摄的全景子视频,再将全景子视频的中心点在空间坐标系中的坐标作为该全景子视频关联的点位信息。Alternatively, it is also possible to obtain the panoramic sub-video shot at each shooting point, and then use the coordinates of the central point of the panoramic sub-video in the spatial coordinate system as the point information associated with the panoramic sub-video.

为了简化说明,以拍摄点位在空间坐标系中的坐标作为全景子视频关联的点位信息为例进行说明。In order to simplify the description, the coordinates of the shooting point in the spatial coordinate system are used as the point information associated with the panoramic sub-video as an example for description.

例如,“拍摄点位1”在空间坐标系中的坐标为(x1,y1,z1),则“拍摄点位1”拍摄的全景子视频关联的点位信息为(x1,y1,z1);“拍摄点位2”在空间坐标系中的坐标为(x2,y2,z2),则“拍摄点位2”拍摄的全景子视频关联的点位信息为(x2,y2,z2)……“拍摄点位n”在空间坐标系中的坐标为(xn,yn,zn),则“拍摄点位n”拍摄的全景子视频关联的点位信息为(xn,yn,zn)。For example, the coordinates of "shooting point 1" in the space coordinate system are (x1, y1, z1), then the point information associated with the panoramic sub-video shot at "shooting point 1" is (x1, y1, z1); The coordinates of "shooting point 2" in the space coordinate system are (x2, y2, z2), then the point information associated with the panoramic sub-video shot at "shooting point 2" is (x2, y2, z2)..." The coordinates of "shooting point n" in the space coordinate system are (xn, yn, zn), then the point information associated with the panoramic sub-video shot at "shooting point n" is (xn, yn, zn).

还可以获取每一全景子视频的帧序列,帧序列包括至少一个全景图像帧,以及每一全景图像帧对应的播放进度。例如,可以根据视频播放时间或者视频编辑前后顺序,获取每一全景子视频的帧序列,帧序列可以包括至少一个全景图像帧。The frame sequence of each panoramic sub-video may also be obtained, the frame sequence includes at least one panoramic image frame, and the playback progress corresponding to each panoramic image frame. For example, the frame sequence of each panorama sub-video may be acquired according to video playing time or sequence of video editing, and the frame sequence may include at least one panorama image frame.

其中,可以用t来表示每一全景图像帧对应的播放进度。例如,t1可以表示在t1时刻的全景图像帧,或者可以直接表示第t1个全景图像帧。Wherein, t may be used to represent the playback progress corresponding to each panoramic image frame. For example, t1 may represent the panoramic image frame at time t1, or may directly represent the t1th panoramic image frame.

关联存储全景子视频与点位信息,以及全景图像帧与播放进度。具体的,可以存储全景子视频以及全景视频对应的点位信息,并在此基础上,存储全景子视频中每一全景图像帧以及每一全景图像帧对应的播放进度。Associated storage of panoramic sub-video and point information, as well as panoramic image frames and playback progress. Specifically, the panoramic sub-video and point information corresponding to the panoramic video may be stored, and on this basis, each panoramic image frame in the panoramic sub-video and the playback progress corresponding to each panoramic image frame may be stored.

例如,“拍摄点位1”拍摄的全景子视频在t1时刻的全景图像帧的点位信息与播放进度存储为(x1,y1,z1,t1);“拍摄点位1”拍摄的全景子视频在t2时刻的全景图像帧的点位信息与播放进度存储为(x1,y1,z1,t2);“拍摄点位2”拍摄的全景子视频在t1时刻的全景图像帧的点位信息与播放进度存储为(x2,y2,z2,t1)……“拍摄点位n”拍摄的全景子视频在tn时刻的全景图像帧的点位信息与播放进度存储为(xn,yn,zn,tn)。For example, the point information and playback progress of the panorama sub-video taken at "shooting point 1" at the moment t1 are stored as (x1, y1, z1, t1); the panorama sub-video shot at "shooting point 1" The point information and playback progress of the panoramic image frame at the moment t2 are stored as (x1, y1, z1, t2); The progress is stored as (x2, y2, z2, t1)... The point information and playback progress of the panoramic image frame of the panoramic sub-video shot at "shooting point n" at time tn are stored as (xn, yn, zn, tn) .

本申请实施例能够在获取到全景子视频关联的点位信息与和全景图像帧对应的播放进度后,将全景子视频与点位信息,以及全景图像帧与播放进度进行关联存储,对全景视频进行索引化,方便后续根据索引信息快速查找到对应的初选全景图像帧,从而保证全景视频分发的流畅度。其中索引信息可用于指示上述点位信息和播放进度。In the embodiment of the present application, after obtaining the point information associated with the panoramic sub-video and the playback progress corresponding to the panoramic image frame, the panoramic sub-video and the point information, as well as the panoramic image frame and the playback progress can be associated and stored, and the panoramic video Indexing is performed to facilitate the subsequent rapid search of the corresponding primary panoramic image frame according to the index information, thereby ensuring the smoothness of panoramic video distribution. The index information can be used to indicate the above point information and playback progress.

在一个示例中,终端的位置信息可以是基于用户操作或者基于预设位置关系,获取一个初始位置坐标(X,Y,Z),该初始位置坐标(X,Y,Z)匹配一个初始点位信息,例如,匹配的初始点位信息可以为(x2,y2,z2)。In an example, the location information of the terminal can be based on user operations or based on a preset location relationship, to obtain an initial location coordinate (X, Y, Z), and the initial location coordinate (X, Y, Z) matches an initial point information, for example, the matching initial point information may be (x2, y2, z2).

位置信息可以根据终端的传感器采集到的用户操作发生改变,例如VR设备中的陀螺仪采集到的用户动作,用户移动位置,从而发生位置坐标的改变。还可以根据遥控器、鼠标等输入的“前进、后退、上升、下降”等虚拟空间动作,形成位置坐标的改变。位置坐标发生改变,其匹配的点位信息也可能发生改变。The location information may change according to the user operations collected by the terminal's sensors, for example, the user's actions collected by the gyroscope in the VR device, the user moves the location, and thus the location coordinates change. It can also change the position coordinates according to virtual space actions such as "forward, backward, up, down" input by remote control, mouse, etc. If the position coordinates change, the matching point information may also change.

终端的时间信息也可以是基于预设的时间轴,获取到时间T,时间T匹配一个播放进度,例如,匹配的播放进度可以为t1。时间信息还可以根据遥控器、鼠标等输入的“快进、快退”等指令发生变化,其匹配的播放进度也可能发生变化。The time information of the terminal may also be based on a preset time axis, and the time T is obtained, and the time T matches a playback progress, for example, the matched playback progress may be t1. The time information can also change according to commands such as "fast forward and fast rewind" input by the remote control, mouse, etc., and the matching playback progress may also change.

例如,终端的初始位置信息和时间信息(X,Y,Z,T)匹配的点位信息和播放进度是(x2,y2,z2,t1),则可以将(x2,y2,z2,t1)对应的全景图像帧作为初选全景图像帧。而随着位置移动和时间轴的变化,可能在下一时刻,终端的位置信息和时间信息(X,Y,Z,T)匹配的点位信息和播放进度变成(x1,y1,z1,t2),此时则可以将(x1,y1,z1,t2)对应的全景图像帧作为初选全景图像帧。For example, if the terminal's initial position information and time information (X, Y, Z, T) match point information and playback progress (x2, y2, z2, t1), then (x2, y2, z2, t1) The corresponding panoramic image frame is used as the primary panoramic image frame. With the change of position and time axis, at the next moment, the point information and playback progress matched by the terminal's position information and time information (X, Y, Z, T) become (x1, y1, z1, t2 ), then the panoramic image frame corresponding to (x1, y1, z1, t2) can be used as the primary panoramic image frame.

可选的,在一个实施例中,获取每一全景子视频的帧序列之后,全景视频分发方法还可以包括:Optionally, in one embodiment, after obtaining the frame sequence of each panoramic sub-video, the panoramic video distribution method may also include:

获取每一全景图像帧的各个像素点在预设图像坐标系中的像素坐标;Obtain the pixel coordinates of each pixel point of each panoramic image frame in the preset image coordinate system;

关联存储像素点与像素坐标。Associatively store pixel points and pixel coordinates.

在本实施例中,还可以获取每一全景图像帧的各个像素点在预设图像坐标系中的像素坐标。其中,预设图像坐标系可以是针对每一全景图像帧建立的二维坐标系。In this embodiment, the pixel coordinates of each pixel point in each panoramic image frame in the preset image coordinate system may also be obtained. Wherein, the preset image coordinate system may be a two-dimensional coordinate system established for each panoramic image frame.

如图3所示,可以选取拍摄点位所拍摄位置的物理方位起点,例如正北方向,建立图像坐标系,当然也可以选取其他方向起点建立图像坐标系,此处不做限定。从而实现将全景图像帧在图像坐标系中全景展平,获取各个像素点在图像坐标系中的像素坐标。As shown in Figure 3, the starting point of the physical orientation of the shooting point, such as the north direction, can be selected to establish the image coordinate system. Of course, the starting point of other directions can also be selected to establish the image coordinate system, which is not limited here. In this way, the panoramic image frame is flattened in the image coordinate system, and the pixel coordinates of each pixel point in the image coordinate system are obtained.

例如,第一个像素点的像素坐标可以表示为(a1,b1),第二个像素点的像素坐标可以表示为(a2,b2)……第n个像素点的像素坐标可以表示为(an,bn)。For example, the pixel coordinates of the first pixel point can be expressed as (a1, b1), the pixel coordinates of the second pixel point can be expressed as (a2, b2)... the pixel coordinates of the nth pixel point can be expressed as (an ,bn).

关联存储像素点与像素坐标。具体的,可以结合点位信息、播放进度和像素坐标,关联存储每个全景子视频中的每一全景图像帧中的每个像素点。Associatively store pixel points and pixel coordinates. Specifically, each pixel point in each panoramic image frame in each panoramic sub-video may be associated and stored in combination with point information, playback progress, and pixel coordinates.

例如,“拍摄点位1”拍摄的全景子视频在t1时刻的全景图像帧中的第一个像素点的点位信息、播放进度和像素坐标存储为(x1,y1,z1,t1,a1,b1);“拍摄点位2”拍摄的全景子视频在t1时刻的全景图像帧中的第二个像素点的点位信息、播放进度和像素坐标存储为(x2,y2,z2,t1,a2,b2)……“拍摄点位n”拍摄的全景子视频在tn时刻的全景图像帧中的第n个像素点的点位信息、播放进度和像素坐标存储为(xn,yn,zn,tn,an,bn)。For example, the point information, playback progress and pixel coordinates of the first pixel in the panoramic image frame of the panorama sub-video captured by "shooting point 1" at time t1 are stored as (x1, y1, z1, t1, a1, b1); the point information, playback progress and pixel coordinates of the second pixel point in the panorama image frame of the panorama sub-video taken by "shooting point 2" at time t1 are stored as (x2, y2, z2, t1, a2 , b2)... The point information, playback progress and pixel coordinates of the nth pixel in the panoramic image frame of the panorama sub-video captured by "shooting point n" at time tn are stored as (xn, yn, zn, tn , an, bn).

本申请实施例能够还可以获取到每个像素点在预设图像坐标系中的像素坐标,并将每个像素点和像素坐标进行关联存储,对全景视频进行进一步索引化,进一步方便后续根据索引信息快速查找到对应的初选全景图像帧中的具体像素点,根据该像素点能够对初选全景图像帧进行快速处理,例如裁剪得到目标图像帧,从而进一步保证全景视频分发的流畅度,并有效节省全景视频分发过程中的传输资源。其中索引信息还可用于指示上述像素坐标。The embodiment of the present application can also obtain the pixel coordinates of each pixel point in the preset image coordinate system, and associate and store each pixel point and pixel coordinates, and further index the panoramic video, which further facilitates the follow-up according to the index The information quickly finds the specific pixel points in the corresponding primary panoramic image frame, and according to the pixel point, the primary panoramic image frame can be quickly processed, such as cropping to obtain the target image frame, thereby further ensuring the smoothness of panoramic video distribution, and Effectively save transmission resources in the process of panoramic video distribution. The index information can also be used to indicate the above-mentioned pixel coordinates.

可选的,视野信息可以包括视场坐标和初始视场角,根据视野信息,对初选全景图像帧进行裁剪,得到目标图像帧,可以包括:Optionally, the field of view information may include field of view coordinates and an initial field of view angle. According to the field of view information, the primary panoramic image frame is clipped to obtain the target image frame, which may include:

根据视场坐标,从初选全景图像帧中确定出中心点,中心点为像素坐标与视场坐标匹配的像素点;According to the coordinates of the field of view, a center point is determined from the primary panoramic image frame, and the center point is a pixel point whose pixel coordinates match the coordinates of the field of view;

基于中心点与初始视场角,对初选全景图像帧进行裁剪,得到目标图像帧。Based on the center point and the initial field of view, the primary panoramic image frame is cropped to obtain the target image frame.

在本实施例中,视场坐标可以用于表征人眼的聚焦点。例如,可以根据眼球追踪感应器,实时追踪人眼聚焦点,并保存聚焦点坐标(A,B)作为视场坐标。In this embodiment, the coordinates of the field of view can be used to represent the focal point of the human eye. For example, the focus point of the human eye can be tracked in real time according to the eye tracking sensor, and the coordinates (A, B) of the focus point can be saved as the coordinates of the field of view.

根据视场坐标,从初选全景图像帧中确定出中心点,中心点可以为像素坐标与视场坐标匹配的像素点。例如,视场坐标(A,B)匹配的像素坐标是(a3,b3),则可以将初选全景图像帧中的像素坐标为(a3,b3)对应的像素点作为中心点,即初选全景图像帧中的第三个像素点为中心点。According to the coordinates of the field of view, a center point is determined from the primary panoramic image frame, and the center point may be a pixel point whose pixel coordinates match the coordinates of the field of view. For example, if the pixel coordinates matched by field of view coordinates (A, B) are (a3, b3), then the pixel point corresponding to the pixel coordinates in the primary panorama image frame (a3, b3) can be used as the center point, that is, the primary selection The third pixel in the panoramic image frame is the center point.

初始视场角F,可以根据实际情况预设,例如,通常来说普遍人眼视场角的感知能力,一般是横向小于120°,纵向小于60°,可以将初始视场角预设为横向120°,纵向60°。The initial field of view F can be preset according to the actual situation. For example, generally speaking, the perception of the human eye’s field of view is generally less than 120° in the horizontal direction and less than 60° in the vertical direction. The initial field of view can be preset as horizontal 120°, 60° vertically.

又或者,为了适应用户可能快速摇头、点头等相关操作,可以结合终端的性能,扩大初始视场角的范围,例如,可以将初始视场角预设为横向150°,纵向80°,从而保证在用户处于快速摇头、点头等状态下,初始视场角依旧在人眼视野范围内。Or, in order to adapt to related operations such as quick head shaking and nodding, etc., the range of the initial field of view can be expanded in combination with the performance of the terminal. For example, the initial field of view can be preset to 150° horizontally and 80° vertically, so When the user is shaking his head rapidly, nodding his head, etc., the initial field of view is still within the range of the human eye.

另外,初始视场角还可以是终端基于捕捉不同用户的视野范围差异进行设定。初始视场角还可以包括分辨率,分辨率可以是预设的固定值,也可以基于用户选择设定为不同值。In addition, the initial viewing angle may also be set by the terminal based on capturing differences in viewing ranges of different users. The initial viewing angle may also include a resolution, and the resolution may be a preset fixed value, or may be set to a different value based on user selection.

基于中心点与初始视场角,对初选全景图像帧进行裁剪,得到目标图像帧。为了简化说明,以初始视场角为横向120°,纵向60°为例,将初选全景图像帧以中心点作为裁剪中心,横向裁剪120°,纵向裁剪60°,得到的区域为目标图像帧。Based on the center point and the initial field of view, the primary panoramic image frame is cropped to obtain the target image frame. To simplify the description, take the initial field of view of 120° horizontally and 60° vertically as an example, take the center point of the primary panoramic image frame as the cropping center, crop 120° horizontally and 60° vertically, and the obtained area is the target image frame .

本申请实施例能够根据视场坐标和初始视场角,快速获取到初选全景图像帧中的中心点和裁剪范围,经过裁剪得到目标图像帧分发至终端,从而保证全景视频分发的流畅度,并有效节省全景视频分发过程中的传输资源。The embodiment of the present application can quickly obtain the center point and cropping range of the primary panoramic image frame according to the field of view coordinates and the initial field of view angle, and distribute the target image frame to the terminal after clipping, thereby ensuring the smoothness of panoramic video distribution. And effectively save the transmission resources in the panoramic video distribution process.

在一个示例中,可以根据用户穿戴的VR设备中的陀螺仪抓取用户真实头部或身体的旋转运动,可正向、或者反向表征用户视场的空间变换,从而导致视场坐标的改变。或者可以根据鼠标、遥控器等输入的“左右旋转,上下移动”等虚拟空间动作,形成用户所在虚拟位置下的视场变换,从而导致视场坐标的改变。而视场坐标发生改变,其在初选全景图像帧中的中心点也可能随之发生改变。In one example, the rotational movement of the user's real head or body can be grasped by the gyroscope in the VR device worn by the user, and the spatial transformation of the user's field of view can be represented forward or backward, resulting in a change in the coordinates of the field of view . Or, according to virtual space actions such as "rotate left and right, move up and down" input by a mouse, a remote control, etc., a field of view transformation under the user's virtual position can be formed, thereby resulting in a change of the coordinates of the field of view. When the coordinates of the field of view change, its center point in the primary panoramic image frame may also change accordingly.

可选的,在一个实施例中,播放参数还可以包括缩放比例,基于中心点与初始视场角,对初选全景图像帧进行裁剪,得到目标图像帧,可以包括:Optionally, in one embodiment, the playback parameters may also include scaling, based on the center point and the initial field of view, the primary panorama image frame is cropped to obtain the target image frame, which may include:

根据缩放比例与初始视场角,得到目标视场角;According to the zoom ratio and the initial field of view, the target field of view is obtained;

基于中心点与目标视场角,对初选全景图像帧进行裁剪,得到目标图像帧。Based on the center point and the target field of view, the primary panoramic image frame is cropped to obtain the target image frame.

在本实施例中,播放参数还可以包括缩放比例,可以根据缩放比例与初始视场角,得到目标视场角。例如,在缩放比例为放大倍数的情况下,在初选全景图像帧中,用户所看到的区域变小,即其目标视场角小于初始视场角;反之,在缩放比例为缩小倍数的情况下,在初选全景图像帧中,用户所看到的区域变大,即其目标视场角大于初始视场角。In this embodiment, the playback parameter may also include a scaling ratio, and the target viewing angle may be obtained according to the scaling ratio and the initial viewing angle. For example, when the zoom ratio is a magnification factor, in the primary panorama image frame, the area seen by the user becomes smaller, that is, the target field of view is smaller than the initial field of view; otherwise, when the zoom ratio is a zoom factor In some cases, in the primary panoramic image frame, the area seen by the user becomes larger, that is, the target field of view is larger than the initial field of view.

如图4所示,为了便于理解,以目标图像帧为长方形进行说明。用户选择放大2倍时,其初始视场角横向和纵向皆缩小2倍,即目标视场角可以为初始视场角的1/4。As shown in FIG. 4 , for ease of understanding, the target image frame is described as a rectangle. When the user chooses to zoom in by 2 times, the initial field of view will be reduced by 2 times both horizontally and vertically, that is, the target field of view can be 1/4 of the initial field of view.

基于中心点与目标视场角,对初选全景图像帧进行裁剪,得到目标图像帧。以目标视场角为初始视场角的1/4为例,将初选全景图像帧以中心点作为裁剪中心,以目标视场角为裁剪范围,得到目标图像帧。该目标图像帧为以初始视场角作为裁剪范围区域的1/4。Based on the center point and the target field of view, the primary panoramic image frame is cropped to obtain the target image frame. Taking the target field of view as 1/4 of the initial field of view as an example, the center point of the primary panoramic image frame is used as the cropping center, and the target field of view is used as the cropping range to obtain the target image frame. The target image frame is 1/4 of the clipping range area with the initial field of view.

本实施例可以结合缩放比例获取最终的目标图像帧,保证全景视频分发的流畅度的同时有效节省了全景视频分发过程中的传输资源。In this embodiment, the final target image frame can be acquired in combination with the scaling ratio, so as to ensure the smoothness of panoramic video distribution and effectively save transmission resources in the panoramic video distribution process.

可选的,在一个实施例中,初始视场角可以基于终端根据人眼视野范围得到,缩放比例可以基于终端的传感器采集到的操作信息得到,或者可以基于终端接收到的第一输入得到。Optionally, in an embodiment, the initial field of view may be obtained based on the terminal according to the field of view of the human eye, and the scaling ratio may be obtained based on the operation information collected by the terminal's sensor, or may be obtained based on the first input received by the terminal.

在本实施例中,初始视场角可以基于终端根据人眼视野范围得到。例如,用户穿戴上VR设备后,VR设备可以通过眼球追踪感应器或其他传感器分析用户的人眼视野范围,从而基于分析得到的数据设定初始视场角。In this embodiment, the initial viewing angle may be obtained based on the terminal according to the viewing range of human eyes. For example, after a user wears a VR device, the VR device can analyze the user's human eye field of view through an eye tracking sensor or other sensors, so as to set an initial field of view based on the analyzed data.

其中,可以直接将分析得到的角度范围作为初始视场角,还可以在分析得到的角度范围得基础上,加上预设角度值后作为初始视场角,用于消除分析可能存在的误差带来的影响。Among them, the angle range obtained by analysis can be directly used as the initial field of view angle, and the angle range obtained by analysis can also be added with a preset angle value as the initial field of view angle to eliminate possible error bands in the analysis coming impact.

缩放比例可以基于终端的传感器采集到的操作信息得到,例如,VR设备上的陀螺仪感知到用户的“拉近、拉远”动作等。或者可以基于终端接收到的第一输入得到,例如,用户可以通过遥控器、鼠标等执行缩小或放大的输入。The zoom ratio can be obtained based on the operation information collected by the terminal's sensors. For example, the gyroscope on the VR device senses the user's "zoom in, zoom out" action. Or it may be obtained based on the first input received by the terminal, for example, the user may perform a zoom-out or zoom-in input through a remote controller or a mouse.

在一个实施例中,终端开机后,用户选择需要播放的全景视频,生成对应的初始播放统一资源定位符(Uniform Resource Locator,URL),以下用URL1表示,URL1仅表征具体全景视频内容选择,不表征终端的播放参数。In one embodiment, after the terminal is turned on, the user selects the panoramic video to be played, and generates a corresponding initial playback uniform resource locator (Uniform Resource Locator, URL), which is represented by URL1 below, and URL1 only represents the selection of specific panoramic video content, not Characterizes the playback parameters of the terminal.

终端根据用户初始位置、用户综合视场角、用户视场坐标、缩放比例、时间维度(即位置信息、时间信息、视野信息、缩放比例等播放参数,其中视野信息包括视场坐标和视场角),即(X,Y,Z,T,A,B,F,L)等信息对URL1进行本地处理,形成URL2(X,Y,Z,T,A,B,F,L),其中URL2(X,Y,Z,T,A,B,F,L)表征终端的播放参数。The terminal plays parameters according to the user's initial position, the user's comprehensive field of view angle, the user's field of view coordinates, zoom ratio, and time dimension (that is, position information, time information, field of view information, zoom ratio, etc., where the field of view information includes field of view coordinates and field of view angle ), namely (X, Y, Z, T, A, B, F, L) and other information locally process URL1 to form URL2 (X, Y, Z, T, A, B, F, L), where URL2 (X, Y, Z, T, A, B, F, L) represent playback parameters of the terminal.

终端根据URL2(X,Y,Z,T,A,B,F,L),向CDN系统发送播放请求。CDN系统经过自身调度机制调度后,将该播放请求最终指向为该终端提供服务的具体CDN设备。其中CDN系统的具体调度过程可通过现有的视频存储服务器系统的调度方法实现,此处不做赘述。The terminal sends a play request to the CDN system according to URL2(X, Y, Z, T, A, B, F, L). After being scheduled by its own scheduling mechanism, the CDN system finally directs the playback request to a specific CDN device that provides services for the terminal. The specific scheduling process of the CDN system can be realized by the scheduling method of the existing video storage server system, which will not be repeated here.

该CDN设备收到播放请求URL2(X,Y,Z,T,A,B,F,L)后,先根据URL2After the CDN device receives the playback request URL2 (X, Y, Z, T, A, B, F, L), it first

(X,Y,Z,T)查找匹配的索引信息(x,y,z,t);根据(x,y,z,t)信息查找到对应的初选全景图像帧(即根据位置信息与时间信息,从全景视频中确定出初选全景图像帧)。(X, Y, Z, T) to find the matching index information (x, y, z, t); find the corresponding primary panoramic image frame according to the (x, y, z, t) information (that is, according to the position information and Time information, determine the primary panorama image frame from the panorama video).

CDN设备进一步根据播放请求URL2(A,B,F,L),查找到初选全景图像帧中对应的中心点(a,b),结合F、L进行分发画面计算,并完成对初选全景图像帧的裁剪(即根据视场坐标,从初选全景图像帧中确定出中心点,中心点为像素坐标与视场坐标匹配的像素点;基于中心点与初始视场角,对初选全景图像帧进行裁剪,得到目标图像帧)。The CDN device further finds the corresponding center point (a, b) in the primary panorama image frame according to the playback request URL2 (A, B, F, L), combines F and L to perform distribution picture calculation, and completes the primary panorama The clipping of the image frame (that is, according to the field of view coordinates, determine the center point from the primary panoramic image frame, and the center point is the pixel point that the pixel coordinates match with the field of view coordinates; based on the center point and the initial field of view angle, the primary panoramic image The image frame is cropped to obtain the target image frame).

CDN设备完成对应目标的素材处理后,仅将裁剪后的目标图像帧分发给终端进行显示(即将目标图像帧分发至终端)。After the CDN device completes the material processing corresponding to the target, it only distributes the cropped target image frame to the terminal for display (that is, distributes the target image frame to the terminal).

图5示出了本申请另一个实施例提供的全景视频分发装置的结构示意图,为了便于说明,仅示出了与本申请实施例相关的部分。FIG. 5 shows a schematic structural diagram of a panoramic video distribution device provided by another embodiment of the present application. For ease of description, only parts related to the embodiment of the present application are shown.

参照图5,全景视频分发装置包括:With reference to Fig. 5, panoramic video distribution device comprises:

接收模块,用于在与终端建立全景视频传输连接的情况下,接收终端的播放参数,其中播放参数包括位置信息、时间信息和视野信息;The receiving module is configured to receive playback parameters of the terminal when a panoramic video transmission connection is established with the terminal, wherein the playback parameters include position information, time information and field of view information;

确定模块,用于根据位置信息与时间信息,从全景视频中确定出初选全景图像帧;A determination module is used to determine the primary panoramic image frame from the panoramic video according to the position information and time information;

裁剪模块,用于根据视野信息,对初选全景图像帧进行裁剪,得到目标图像帧;The cutting module is used to cut the primary panoramic image frame according to the field of view information to obtain the target image frame;

分发模块,用于将目标图像帧分发至终端。The distribution module is used for distributing the target image frame to the terminal.

可选的,全景视频包括N个全景子视频,每一全景子视频均关联有拍摄点位,每一全景子视频包括至少一个全景图像帧,其中N为大于或等于1的整数,确定模块可以包括:Optionally, the panoramic video includes N panoramic sub-videos, and each panoramic sub-video is associated with a shooting point, and each panoramic sub-video includes at least one panoramic image frame, wherein N is an integer greater than or equal to 1, and the determination module can include:

第一确定单元,用于根据预设的位置信息与拍摄点位的对应关系,从全景视频中确定出与位置信息匹配的第一全景子视频;The first determination unit is configured to determine the first panoramic sub-video matching the position information from the panoramic video according to the preset correspondence between the position information and the shooting point;

第二确定单元,用于根据预设的时间信息与全景图像帧的对应关系,从第一全景子视频包括的至少一个全景图像帧中,确定出与时间信息匹配的初选全景图像帧。The second determining unit is configured to determine a primary panoramic image frame matching the time information from at least one panoramic image frame included in the first panoramic sub-video according to a preset correspondence between time information and panoramic image frames.

可选的,装置还可以包括:Optionally, the device may also include:

第一获取模块,用于获取全景视频中的N个全景子视频,以及每一全景子视频关联的点位信息,全景子视频为全景视频中的每一拍摄点位所拍摄的视频;The first obtaining module is used to obtain N panoramic sub-videos in the panoramic video, and point information associated with each panoramic sub-video, where the panoramic sub-video is a video taken at each shooting point in the panoramic video;

第二获取模块,用于获取每一全景子视频的帧序列,帧序列包括至少一个全景图像帧,以及每一全景图像帧对应的播放进度;The second obtaining module is used to obtain the frame sequence of each panoramic sub-video, the frame sequence includes at least one panoramic image frame, and the playback progress corresponding to each panoramic image frame;

第一存储模块,用于关联存储全景子视频与点位信息,以及全景图像帧与播放进度。The first storage module is used for associating storage of panoramic sub-video and point information, as well as panoramic image frames and playback progress.

可选的,装置还可以包括:Optionally, the device may also include:

第三获取模块,用于获取每一全景图像帧的各个像素点在预设图像坐标系中的像素坐标;The third obtaining module is used to obtain the pixel coordinates of each pixel point of each panoramic image frame in the preset image coordinate system;

第二存储模块,用于关联存储像素点与像素坐标。The second storage module is used for associatively storing pixel points and pixel coordinates.

可选的,视野信息包括视场坐标和初始视场角,裁剪模块可以包括:Optionally, the field of view information includes field of view coordinates and initial field of view angle, and the cropping module may include:

第三确定单元,用于根据视场坐标,从初选全景图像帧中确定出中心点,中心点为像素坐标与视场坐标匹配的像素点;The third determining unit is used to determine a center point from the primary panoramic image frame according to the coordinates of the field of view, and the center point is a pixel point whose pixel coordinates match the coordinates of the field of view;

裁剪单元,用于基于中心点与初始视场角,对初选全景图像帧进行裁剪,得到目标图像帧。The clipping unit is configured to clip the primary panoramic image frame based on the center point and the initial field of view to obtain the target image frame.

可选的,播放参数还包括缩放比例,裁剪单元可以包括:Optionally, the playback parameters also include scaling, and the cropping unit may include:

获取子单元,用于根据缩放比例与初始视场角,得到目标视场角;Acquiring subunits, used to obtain the target field of view according to the zoom ratio and the initial field of view;

裁剪子单元,用于基于中心点与目标视场角,对初选全景图像帧进行裁剪,得到目标图像帧。The cropping subunit is configured to crop the primary panoramic image frame based on the center point and the target field of view to obtain the target image frame.

可选的,初始视场角基于终端根据人眼视野范围得到,缩放比例基于终端的传感器采集到的操作信息得到,或者基于终端接收到的第一输入得到。Optionally, the initial field of view is obtained based on the terminal based on the field of view of the human eye, and the scaling ratio is obtained based on the operation information collected by the terminal's sensor, or based on the first input received by the terminal.

需要说明的是,上述装置/单元之间的信息交互、执行过程等内容,与本申请方法实施例基于同一构思,是与上述全景视频分发方法对应的装置,上述方法实施例中所有实现方式均适用于该装置的实施例中,其具体功能及带来的技术效果,具体可参见方法实施例部分,此处不再赘述。It should be noted that the information interaction and execution process between the above-mentioned devices/units are based on the same concept as the method embodiment of the present application, and are devices corresponding to the above-mentioned panoramic video distribution method. All implementation methods in the above-mentioned method embodiment are In the embodiments applicable to the device, its specific functions and technical effects brought by it can be referred to the method embodiments for details, and will not be repeated here.

所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,仅以上述各功能单元、模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能单元、模块完成,即将装置的内部结构划分成不同的功能单元或模块,以完成以上描述的全部或者部分功能。实施例中的各功能单元、模块可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中,上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。另外,各功能单元、模块的具体名称也只是为了便于相互区分,并不用于限制本申请的保护范围。上述系统中单元、模块的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。Those skilled in the art can clearly understand that for the convenience and brevity of description, only the division of the above-mentioned functional units and modules is used for illustration. In practical applications, the above-mentioned functions can be assigned to different functional units, Completion of modules means that the internal structure of the device is divided into different functional units or modules to complete all or part of the functions described above. Each functional unit and module in the embodiment may be integrated into one processing unit, or each unit may exist separately physically, or two or more units may be integrated into one unit, and the above-mentioned integrated units may adopt hardware It can also be implemented in the form of software functional units. In addition, the specific names of the functional units and modules are only for the convenience of distinguishing each other, and are not used to limit the protection scope of the present application. For the specific working process of the units and modules in the above system, reference may be made to the corresponding process in the foregoing method embodiments, and details will not be repeated here.

图6示出了本申请又一个实施例提供的电子设备的硬件结构示意图。FIG. 6 shows a schematic diagram of a hardware structure of an electronic device provided by another embodiment of the present application.

设备可以包括处理器601以及存储有计算机程序指令的存储器602。The device may comprise a processor 601 and a memory 602 storing computer program instructions.

处理器601执行计算机程序时实现上述任意各个方法实施例中的步骤。When the processor 601 executes the computer program, the steps in any of the foregoing method embodiments are implemented.

示例性的,计算机程序可以被分割成一个或多个模块/单元,一个或者多个模块/单元被存储在存储器602中,并由处理器601执行,以完成本申请。一个或多个模块/单元可以是能够完成特定功能的一系列计算机程序指令段,该指令段用于描述计算机程序在设备中的执行过程。Exemplarily, the computer program can be divided into one or more modules/units, and one or more modules/units are stored in the memory 602 and executed by the processor 601 to complete the present application. One or more modules/units may be a series of computer program instruction segments capable of accomplishing specific functions, and the instruction segments are used to describe the execution process of the computer program in the device.

具体地,上述处理器601可以包括中央处理器(CPU),或者特定集成电路(Application Specific Integrated Circuit,ASIC),或者可以被配置成实施本申请实施例的一个或多个集成电路。Specifically, the processor 601 may include a central processing unit (CPU), or an application specific integrated circuit (Application Specific Integrated Circuit, ASIC), or may be configured to implement one or more integrated circuits in the embodiments of the present application.

存储器602可以包括用于数据或指令的大容量存储器。举例来说而非限制,存储器602可包括硬盘驱动器(Hard Disk Drive,HDD)、软盘驱动器、闪存、光盘、磁光盘、磁带或通用串行总线(Universal Serial Bus,USB)驱动器或者两个或更多个以上这些的组合。在合适的情况下,存储器602可包括可移除或不可移除(或固定)的介质。在合适的情况下,存储器602可在综合网关容灾设备的内部或外部。在特定实施例中,存储器602是非易失性固态存储器。Memory 602 may include mass storage for data or instructions. By way of example and not limitation, memory 602 may include a hard disk drive (Hard Disk Drive, HDD), a floppy disk drive, a flash memory, an optical disk, a magneto-optical disk, a magnetic tape, or a Universal Serial Bus (Universal Serial Bus, USB) drive or two or more Combinations of multiple of the above. Storage 602 may include removable or non-removable (or fixed) media, where appropriate. Under appropriate circumstances, the storage 602 can be inside or outside the comprehensive gateway disaster recovery device. In a particular embodiment, memory 602 is a non-volatile solid-state memory.

存储器可包括只读存储器(ROM),随机存取存储器(RAM),磁盘存储介质设备,光存储介质设备,闪存设备,电气、光学或其他物理/有形的存储器存储设备。因此,通常,存储器包括一个或多个编码有包括计算机可执行指令的软件的有形(非暂态)计算机可读存储介质(例如,存储器设备),并且当该软件被执行(例如,由一个或多个处理器)时,其可操作来执行参考根据本公开的一方面的方法所描述的操作。Memory may include read only memory (ROM), random access memory (RAM), magnetic disk storage media devices, optical storage media devices, flash memory devices, electrical, optical, or other physical/tangible memory storage devices. Thus, in general, memory includes one or more tangible (non-transitory) computer-readable storage media (e.g., memory devices) encoded with software comprising computer-executable instructions, and when the software is executed (e.g., by one or multiple processors) operable to perform the operations described with reference to the method according to an aspect of the present disclosure.

处理器601通过读取并执行存储器602中存储的计算机程序指令,以实现上述实施例中的任意一种方法。The processor 601 reads and executes the computer program instructions stored in the memory 602 to implement any method in the foregoing embodiments.

在一个示例中,电子设备还可包括通信接口603和总线610。其中,处理器601、存储器602、通信接口603通过总线610连接并完成相互间的通信。In one example, the electronic device may further include a communication interface 603 and a bus 610 . Wherein, the processor 601, the memory 602, and the communication interface 603 are connected through the bus 610 and complete mutual communication.

通信接口603,主要用于实现本申请实施例中各模块、装置、单元和/或设备之间的通信。The communication interface 603 is mainly used to implement communication between modules, devices, units and/or devices in the embodiments of the present application.

总线610包括硬件、软件或两者,将在线数据流量计费设备的部件彼此耦接在一起。举例来说而非限制,总线可包括加速图形端口(AGP)或其他图形总线、增强工业标准架构(EISA)总线、前端总线(FSB)、超传输(HT)互连、工业标准架构(ISA)总线、无限带宽互连、低引脚数(LPC)总线、存储器总线、微信道架构(MCA)总线、外围组件互连(PCI)总线、PCI-Express(PCI-X)总线、串行高级技术附件(SATA)总线、视频电子标准协会局部(VLB)总线或其他合适的总线或者两个或更多个以上这些的组合。在合适的情况下,总线610可包括一个或多个总线。尽管本申请实施例描述和示出了特定的总线,但本申请考虑任何合适的总线或互连。The bus 610 includes hardware, software or both, and couples the components of the online data traffic charging device to each other. By way of example and not limitation, the bus may include Accelerated Graphics Port (AGP) or other graphics bus, Enhanced Industry Standard Architecture (EISA) bus, Front Side Bus (FSB), HyperTransport (HT) interconnect, Industry Standard Architecture (ISA) Bus, Infiniband Interconnect, Low Pin Count (LPC) Bus, Memory Bus, Micro Channel Architecture (MCA) Bus, Peripheral Component Interconnect (PCI) Bus, PCI-Express (PCI-X) Bus, Serial Advanced Technology Attachment (SATA) bus, Video Electronics Standards Association Local (VLB) bus or other suitable bus or a combination of two or more of these. Bus 610 may comprise one or more buses, where appropriate. Although the embodiments of this application describe and illustrate a particular bus, this application contemplates any suitable bus or interconnect.

另外,结合上述实施例中的方法,本申请实施例可提供一种计算机存储介质来实现。该计算机存储介质上存储有计算机程序指令;该计算机程序指令被处理器执行时实现上述实施例中的任意一种方法。In addition, in combination with the methods in the foregoing embodiments, the embodiments of the present application may provide a computer storage medium for implementation. Computer program instructions are stored on the computer storage medium; when the computer program instructions are executed by a processor, any method in the above-mentioned embodiments is implemented.

需要明确的是,本申请并不局限于上文所描述并在图中示出的特定配置和处理。为了简明起见,这里省略了对已知方法的详细描述。在上述实施例中,描述和示出了若干具体的步骤作为示例。但是,本申请的方法过程并不限于所描述和示出的具体步骤,本领域的技术人员可以在领会本申请的精神后,作出各种改变、修改和添加,或者改变步骤之间的顺序。It is to be understood that the application is not limited to the specific configurations and processes described above and shown in the figures. For conciseness, detailed descriptions of known methods are omitted here. In the above embodiments, several specific steps are described and shown as examples. However, the method process of the present application is not limited to the specific steps described and shown, and those skilled in the art may make various changes, modifications and additions, or change the order of the steps after understanding the spirit of the present application.

以上所述的结构框图中所示的功能模块可以实现为硬件、软件、固件或者它们的组合。当以硬件方式实现时,其可以例如是电子电路、专用集成电路(ASIC)、适当的固件、插件、功能卡等等。当以软件方式实现时,本申请的元素是被用于执行所需任务的程序或者代码段。程序或者代码段可以存储在机器可读介质中,或者通过载波中携带的数据信号在传输介质或者通信链路上传送。“机器可读介质”可以包括能够存储或传输信息的任何介质。机器可读介质的例子包括电子电路、半导体存储器设备、ROM、闪存、可擦除ROM(EROM)、软盘、CD-ROM、光盘、硬盘、光纤介质、射频(RF)链路,等等。代码段可以经由诸如因特网、内联网等的计算机网格被下载。The functional modules shown in the above structural block diagrams may be implemented as hardware, software, firmware or a combination thereof. When implemented in hardware, it may be, for example, an electronic circuit, an application specific integrated circuit (ASIC), suitable firmware, a plug-in, a function card, or the like. When implemented in software, the elements of the present application are the programs or code segments employed to perform the required tasks. Programs or code segments can be stored in machine-readable media, or transmitted over transmission media or communication links by data signals carried in carrier waves. "Machine-readable medium" may include any medium that can store or transmit information. Examples of machine-readable media include electronic circuits, semiconductor memory devices, ROM, flash memory, erasable ROM (EROM), floppy disks, CD-ROMs, optical disks, hard disks, fiber optic media, radio frequency (RF) links, and the like. Code segments may be downloaded via a computer network such as the Internet, an Intranet, or the like.

还需要说明的是,本申请中提及的示例性实施例,基于一系列的步骤或者装置描述一些方法或系统。但是,本申请不局限于上述步骤的顺序,也就是说,可以按照实施例中提及的顺序执行步骤,也可以不同于实施例中的顺序,或者若干步骤同时执行。It should also be noted that the exemplary embodiments mentioned in this application describe some methods or systems based on a series of steps or devices. However, the present application is not limited to the order of the above steps, that is, the steps may be performed in the order mentioned in the embodiment, or may be different from the order in the embodiment, or several steps may be performed simultaneously.

上面参考根据本公开的实施例的方法、装置(系统)和计算机程序产品的流程图和/或框图描述了本公开的各方面。应当理解,流程图和/或框图中的每个方框以及流程图和/或框图中各方框的组合可以由计算机程序指令实现。这些计算机程序指令可被提供给通用计算机、专用计算机、或其它可编程数据处理装置的处理器,以产生一种机器,使得经由计算机或其它可编程数据处理装置的处理器执行的这些指令使能对流程图和/或框图的一个或多个方框中指定的功能/动作的实现。这种处理器可以是但不限于是通用处理器、专用处理器、特殊应用处理器或者现场可编程逻辑电路。还可理解,框图和/或流程图中的每个方框以及框图和/或流程图中的方框的组合,也可以由执行指定的功能或动作的专用硬件来实现,或可由专用硬件和计算机指令的组合来实现。Aspects of the present disclosure are described above with reference to flowchart illustrations and/or block diagrams of methods, apparatus (systems) and computer program products according to embodiments of the present disclosure. It will be understood that each block of the flowchart and/or block diagrams, and combinations of blocks in the flowchart and/or block diagrams, can be implemented by computer program instructions. These computer program instructions may be provided to a processor of a general purpose computer, special purpose computer, or other programmable data processing apparatus to produce a machine such that execution of these instructions via the processor of the computer or other programmable data processing apparatus enables Implementation of the functions/actions specified in one or more blocks of the flowchart and/or block diagrams. Such processors may be, but are not limited to, general purpose processors, special purpose processors, application specific processors, or field programmable logic circuits. It can also be understood that each block in the block diagrams and/or flowcharts and combinations of blocks in the block diagrams and/or flowcharts can also be realized by dedicated hardware for performing specified functions or actions, or can be implemented by dedicated hardware and combination of computer instructions.

以上所述,仅为本申请的具体实施方式,所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,上述描述的系统、模块和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。应理解,本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到各种等效的修改或替换,这些修改或替换都应涵盖在本申请的保护范围之内。The above is only a specific implementation of the present application, and those skilled in the art can clearly understand that for the convenience and brevity of the description, the specific working process of the above-described systems, modules and units can refer to the foregoing method embodiments The corresponding process in , will not be repeated here. It should be understood that the protection scope of the present application is not limited thereto, and any person familiar with the technical field can easily think of various equivalent modifications or replacements within the technical scope disclosed in the application, and these modifications or replacements should cover all Within the protection scope of this application.

Claims (10)

1.一种全景视频分发方法,其特征在于,包括:1. A panoramic video distribution method, characterized in that, comprising: 在与终端建立全景视频传输连接的情况下,接收所述终端的播放参数,其中所述播放参数包括位置信息、时间信息和视野信息;In the case of establishing a panoramic video transmission connection with the terminal, receiving the playback parameters of the terminal, wherein the playback parameters include position information, time information and field of view information; 根据所述位置信息与所述时间信息,从所述全景视频中确定出初选全景图像帧;determining a primary panoramic image frame from the panoramic video according to the position information and the time information; 根据所述视野信息,对所述初选全景图像帧进行裁剪,得到目标图像帧;clipping the primary panoramic image frame according to the field of view information to obtain a target image frame; 将所述目标图像帧分发至所述终端。Distributing the target image frame to the terminal. 2.根据权利要求1所述的方法,其特征在于,所述全景视频包括N个全景子视频,每一所述全景子视频均关联有拍摄点位,每一所述全景子视频包括至少一个全景图像帧,其中N为大于或等于1的整数,2. The method according to claim 1, wherein the panoramic video includes N panoramic sub-videos, each of which is associated with a shooting point, and each of the panoramic sub-videos includes at least one Panoramic image frame, where N is an integer greater than or equal to 1, 所述根据所述位置信息与所述时间信息,从所述全景视频中确定出初选全景图像帧,包括:The determining the primary panoramic image frame from the panoramic video according to the position information and the time information includes: 根据预设的位置信息与拍摄点位的对应关系,从所述全景视频中确定出与所述位置信息匹配的第一全景子视频;Determining a first panoramic sub-video matching the position information from the panoramic video according to the preset correspondence between the position information and the shooting point; 根据预设的时间信息与全景图像帧的对应关系,从所述第一全景子视频包括的至少一个全景图像帧中,确定出与所述时间信息匹配的初选全景图像帧。According to the preset corresponding relationship between time information and panoramic image frames, a primary panoramic image frame matching the time information is determined from at least one panoramic image frame included in the first panoramic sub-video. 3.根据权利要求2所述的方法,其特征在于,所述接收终端的播放参数之前,所述方法还包括:3. The method according to claim 2, wherein before the playback parameters of the receiving terminal, the method further comprises: 获取全景视频中的N个全景子视频,以及每一所述全景子视频关联的点位信息,所述全景子视频为全景视频中的每一拍摄点位所拍摄的视频;Obtain N panoramic sub-videos in the panoramic video, and point information associated with each of the panoramic sub-videos, where the panoramic sub-videos are videos taken at each shooting point in the panoramic video; 获取每一全景子视频的帧序列,所述帧序列包括至少一个全景图像帧,以及每一所述全景图像帧对应的播放进度;Acquiring a frame sequence of each panoramic sub-video, the frame sequence including at least one panoramic image frame, and a playback progress corresponding to each said panoramic image frame; 关联存储所述全景子视频与所述点位信息,以及所述全景图像帧与所述播放进度。The panoramic sub-video and the point information, as well as the panoramic image frame and the playback progress are stored in association. 4.根据权利要求3所述的方法,其特征在于,所述获取每一全景子视频的帧序列之后,所述方法还包括:4. The method according to claim 3, characterized in that, after the acquisition of the frame sequence of each panoramic sub-video, the method further comprises: 获取每一所述全景图像帧的各个像素点在预设图像坐标系中的像素坐标;Acquiring pixel coordinates of each pixel point of each panoramic image frame in a preset image coordinate system; 关联存储所述像素点与所述像素坐标。The pixel point and the pixel coordinates are stored associatively. 5.根据权利要求4所述的方法,其特征在于,所述视野信息包括视场坐标和初始视场角,所述根据所述视野信息,对所述初选全景图像帧进行裁剪,得到目标图像帧,包括:5. The method according to claim 4, wherein the field of view information includes field of view coordinates and an initial field of view angle, and according to the field of view information, the primary panorama image frame is clipped to obtain the target Image frames, including: 根据所述视场坐标,从所述初选全景图像帧中确定出中心点,所述中心点为所述像素坐标与所述视场坐标匹配的像素点;Determining a center point from the primary panoramic image frame according to the field of view coordinates, where the center point is a pixel point whose pixel coordinates match the field of view coordinates; 基于所述中心点与所述初始视场角,对所述初选全景图像帧进行裁剪,得到目标图像帧。Based on the center point and the initial field of view angle, the primary panoramic image frame is cropped to obtain a target image frame. 6.根据权利要求5所述的方法,其特征在于,所述播放参数还包括缩放比例,所述基于所述中心点与所述初始视场角,对所述初选全景图像帧进行裁剪,得到目标图像帧,包括:6. The method according to claim 5, wherein the playback parameters further comprise a scaling ratio, and the primary panorama image frame is cropped based on the center point and the initial field of view angle, Get the target image frame, including: 根据所述缩放比例与所述初始视场角,得到目标视场角;Obtaining a target viewing angle according to the scaling ratio and the initial viewing angle; 基于所述中心点与所述目标视场角,对所述初选全景图像帧进行裁剪,得到目标图像帧。Based on the center point and the target field of view angle, the primary panoramic image frame is cropped to obtain a target image frame. 7.根据权利要求6所述的方法,其特征在于,7. The method of claim 6, wherein, 所述初始视场角基于所述终端根据人眼视野范围得到,所述缩放比例基于所述终端的传感器采集到的操作信息得到,或者基于所述终端接收到的第一输入得到。The initial field of view is obtained based on the terminal according to the field of view of the human eye, and the scaling ratio is obtained based on operation information collected by a sensor of the terminal, or based on a first input received by the terminal. 8.一种全景视频分发装置,其特征在于,所述装置包括:8. A panoramic video distribution device, characterized in that the device comprises: 接收模块,用于在与终端建立全景视频传输连接的情况下,接收所述终端的播放参数,其中所述播放参数包括位置信息、时间信息和视野信息;A receiving module, configured to receive playback parameters of the terminal when a panoramic video transmission connection is established with the terminal, wherein the playback parameters include position information, time information, and field of view information; 确定模块,用于根据所述位置信息与所述时间信息,从所述全景视频中确定出初选全景图像帧;A determining module, configured to determine a primary panoramic image frame from the panoramic video according to the position information and the time information; 裁剪模块,用于根据所述视野信息,对所述初选全景图像帧进行裁剪,得到目标图像帧;A clipping module, configured to clip the primary panoramic image frame according to the field of view information to obtain a target image frame; 分发模块,用于将所述目标图像帧分发至所述终端。A distribution module, configured to distribute the target image frame to the terminal. 9.一种电子设备,其特征在于,所述设备包括:处理器以及存储有计算机程序指令的存储器;9. An electronic device, characterized in that the device comprises: a processor and a memory storing computer program instructions; 所述处理器执行所述计算机程序指令时实现如权利要求1-7任意一项所述的方法。When the processor executes the computer program instructions, the method according to any one of claims 1-7 is implemented. 10.一种计算机存储介质,其特征在于,所述计算机存储介质上存储有计算机程序指令,所述计算机程序指令被处理器执行时实现如权利要求1-7任意一项所述的方法。10. A computer storage medium, wherein computer program instructions are stored on the computer storage medium, and when the computer program instructions are executed by a processor, the method according to any one of claims 1-7 is implemented.
CN202110481689.4A 2021-04-30 2021-04-30 Panoramic video distribution method, device, device and computer storage medium Pending CN115278193A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110481689.4A CN115278193A (en) 2021-04-30 2021-04-30 Panoramic video distribution method, device, device and computer storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110481689.4A CN115278193A (en) 2021-04-30 2021-04-30 Panoramic video distribution method, device, device and computer storage medium

Publications (1)

Publication Number Publication Date
CN115278193A true CN115278193A (en) 2022-11-01

Family

ID=83745629

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110481689.4A Pending CN115278193A (en) 2021-04-30 2021-04-30 Panoramic video distribution method, device, device and computer storage medium

Country Status (1)

Country Link
CN (1) CN115278193A (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115941988A (en) * 2022-12-07 2023-04-07 成都仰止科技有限公司 Panoramic video generation method and panoramic video system applied to court
WO2024207955A1 (en) * 2023-04-03 2024-10-10 抖音视界有限公司 Video processing method and apparatus, and electronic device and storage medium
WO2025001720A1 (en) * 2023-06-28 2025-01-02 中兴通讯股份有限公司 Video transmission method, video computing power network, terminal device, and storage medium

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005250560A (en) * 2004-03-01 2005-09-15 Mitsubishi Electric Corp Landscape display device
US9778351B1 (en) * 2007-10-04 2017-10-03 Hrl Laboratories, Llc System for surveillance by integrating radar with a panoramic staring sensor
US20180020204A1 (en) * 2015-04-15 2018-01-18 Lytro, Inc. Data structures and delivery methods for expediting virtual reality playback
CN108174240A (en) * 2017-12-29 2018-06-15 哈尔滨市舍科技有限公司 Panoramic video playback method and system based on user location
CN112153401A (en) * 2020-09-22 2020-12-29 咪咕视讯科技有限公司 Video processing method, communication device and readable storage medium

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005250560A (en) * 2004-03-01 2005-09-15 Mitsubishi Electric Corp Landscape display device
US9778351B1 (en) * 2007-10-04 2017-10-03 Hrl Laboratories, Llc System for surveillance by integrating radar with a panoramic staring sensor
US20180020204A1 (en) * 2015-04-15 2018-01-18 Lytro, Inc. Data structures and delivery methods for expediting virtual reality playback
CN108174240A (en) * 2017-12-29 2018-06-15 哈尔滨市舍科技有限公司 Panoramic video playback method and system based on user location
CN112153401A (en) * 2020-09-22 2020-12-29 咪咕视讯科技有限公司 Video processing method, communication device and readable storage medium

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
程舒慧;: "多路摄像头的视频拼接技术研究" *

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115941988A (en) * 2022-12-07 2023-04-07 成都仰止科技有限公司 Panoramic video generation method and panoramic video system applied to court
WO2024207955A1 (en) * 2023-04-03 2024-10-10 抖音视界有限公司 Video processing method and apparatus, and electronic device and storage medium
WO2025001720A1 (en) * 2023-06-28 2025-01-02 中兴通讯股份有限公司 Video transmission method, video computing power network, terminal device, and storage medium

Similar Documents

Publication Publication Date Title
US12243184B2 (en) Virtual lens simulation for video and photo cropping
US11102413B2 (en) Camera area locking
US9159169B2 (en) Image display apparatus, imaging apparatus, image display method, control method for imaging apparatus, and program
JP7017175B2 (en) Information processing equipment, information processing method, program
EP3503101A1 (en) Object based user interface
CN115278193A (en) Panoramic video distribution method, device, device and computer storage medium
CN106357991A (en) Image processing method, image processing apparatus, and display system
CN111741223B (en) Panoramic image shooting method, device and system
CN112543343A (en) Live broadcast picture processing method and device based on live broadcast with wheat and electronic equipment
KR20130039522A (en) Apparatus and method of creating 3 dimension panorama image
CN112165629B (en) Intelligent live broadcast method, wearable device and intelligent live broadcast system
KR20250113969A (en) Techniques for displaying and capturing images
JP2022073651A (en) Information processing apparatus, information processing method, and program
JP2016146044A (en) Video processing system, video processing device and control method thereof, program, and storage medium
JP2014085845A (en) Moving picture processing device, moving picture processing method, program and integrated circuit
CN111949114B (en) Image processing method, device and terminal
CN113038262B (en) A panoramic live broadcast method and device
CN117710445A (en) Target positioning method and device applied to AR equipment and electronic equipment
CN117750203A (en) Electronic device and video processing method thereof

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
RJ01 Rejection of invention patent application after publication
RJ01 Rejection of invention patent application after publication

Application publication date: 20221101