CN106851212B - Panoramic video distribution method and system based on user characteristics - Google Patents

Panoramic video distribution method and system based on user characteristics Download PDF

Info

Publication number
CN106851212B
CN106851212B CN201710124230.2A CN201710124230A CN106851212B CN 106851212 B CN106851212 B CN 106851212B CN 201710124230 A CN201710124230 A CN 201710124230A CN 106851212 B CN106851212 B CN 106851212B
Authority
CN
China
Prior art keywords
stream
code stream
panoramic video
path
code
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
CN201710124230.2A
Other languages
Chinese (zh)
Other versions
CN106851212A (en
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.)
Shenzhen mengwang video Co., Ltd
Original Assignee
Shenzhen Monternet Encyclopedia Information Technology 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 Shenzhen Monternet Encyclopedia Information Technology Co Ltd filed Critical Shenzhen Monternet Encyclopedia Information Technology Co Ltd
Priority to CN201710124230.2A priority Critical patent/CN106851212B/en
Publication of CN106851212A publication Critical patent/CN106851212A/en
Application granted granted Critical
Publication of CN106851212B publication Critical patent/CN106851212B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N7/00Television systems
    • H04N7/18Closed-circuit television [CCTV] systems, i.e. systems in which the video signal is not broadcast
    • H04N7/181Closed-circuit television [CCTV] systems, i.e. systems in which the video signal is not broadcast for receiving images from a plurality of remote sources
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/25Management operations performed by the server for facilitating the content distribution or administrating data related to end-users or client devices, e.g. end-user or client device authentication, learning user preferences for recommending movies
    • H04N21/262Content or additional data distribution scheduling, e.g. sending additional data at off-peak times, updating software modules, calculating the carousel transmission frequency, delaying a video stream transmission, generating play-lists
    • H04N21/26208Content or additional data distribution scheduling, e.g. sending additional data at off-peak times, updating software modules, calculating the carousel transmission frequency, delaying a video stream transmission, generating play-lists the scheduling operation being performed under constraints
    • 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/2624Studio 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 for obtaining an image which is composed of whole input images, e.g. splitscreen

Landscapes

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

Abstract

The invention discloses a panoramic video distribution method and a panoramic video distribution system based on user characteristics. The method of the invention utilizes the continuity of the watching characteristics of the user to carry out self-adaptive distribution on the multi-path code stream spliced by the panoramic video, thereby enabling the panoramic video to distribute the code stream as required when the network is congested, not influencing the watching effect of audiences and simultaneously improving the smoothness of playing the panoramic video.

Description

Panoramic video distribution method and system based on user characteristics
Technical Field
The invention relates to the technical field of panoramic video distribution, in particular to a panoramic video distribution method and a panoramic video distribution system based on user characteristics.
Background
The panoramic video can provide dynamic real-time video information while providing omnidirectional visual information, so that people can see the whole dynamic scene surrounding the camera. Panoramas are typically large resolution images, the generation of which requires a significant amount of computational effort. Compared with a panoramic image, the panoramic video adds a new time dimension. Therefore, the amount of computation and data will be tens of times larger than that of the panoramic view, which is a great challenge to the processing power of the hardware system and the working efficiency of the software system. When the code stream of the panoramic video is distributed and transmitted, great pressure is exerted on the bandwidth of the network, and the mobile network with extremely limited bandwidth is extremely challenging.
Disclosure of Invention
The embodiment of the invention aims to provide a panoramic video distribution method based on user characteristics, and aims to solve the problem that in the prior art, when the code stream of a panoramic video is distributed and transmitted, the network bandwidth pressure is overlarge.
The embodiment of the invention is realized in such a way that a panoramic video distribution method based on user characteristics comprises the following steps:
step A: arranging the multi-path spliced code streams of the panoramic video according to the order of the collection visual angles of the cameras, and recording the sequence of the multi-path spliced code streams of the panoramic video after the ordering as { stream1,stream2,...,streamN-1,streamNAnd recording the corresponding camera acquisition view angle sequence as { theta }12,...,θN-1N};
And B: sending const second panoramic video multi-path code streamn
And C: within the const second time window, the mark visual angle in the time window is sent
Figure BDA0001237973630000011
Step D: if the panoramic video multi-path code streamnE, if the code stream in the nt +1 time window exists, entering the step E; otherwise, ending the distribution of the multi-path code stream of the panoramic video;
step E: if it is not
Figure BDA0001237973630000021
If yes, entering step F; otherwise, let nt be nt +1, determine const,
Figure BDA0001237973630000022
re-entering the step B;
step F: if user inertia parameter signuseThe absolute value is equal to 1, the inertial parameter sign of the user is not calculateduseDirectly entering step G; otherwise, firstly calculating the inertial parameter sign of the useruseThen entering step G;
step G: according to inertial parameters sign of useruseAdaptively distributing multi-path code streams of the panoramic video;
step H: let nt be nt +1, determine const,
Figure BDA0001237973630000023
re-enter step C.
Wherein, streamnThe method comprises the steps that the nth spliced code streams are arranged according to the order of camera collecting visual angles, N represents the number of the spliced code streams, and N is 1, 2. ThetanRepresents streamnA corresponding camera collects a visual angle;
const represents a time window duration parameter; nt denotes a time window index;
Figure BDA0001237973630000024
referred to as the nth time window marks the view angle,
Figure BDA0001237973630000025
referred to as the nt-1 st time window marks the view angle;
Figure BDA0001237973630000026
respectively representing the upper time limit and the lower time limit of the nth time window.
Another objective of an embodiment of the present invention is to provide a panoramic video distribution system based on user characteristics, where the system includes:
a splicing code stream arrangement module for arranging the multi-path splicing code streams of the panoramic video according to the sequence of the collection visual angles of the cameras, and recording the multi-path splicing code stream sequence of the panoramic video after sequencing as a sequence
{stream1,stream2,...,streamN-1,streamNAnd recording the corresponding camera acquisition view angle sequence as { theta }12,...,θN-1N};
A code stream sending module for sending const second panoramic video multi-path code streamn
A mark visual angle sending module for sending the mark visual angle in the time window in the const second time window
Figure BDA0001237973630000027
A first judgment processing module for judging if the panoramic video multi-path code stream is streamnIf the code stream in the nt +1 time window exists, entering a second judgment processing module; otherwise, ending the distribution of the multi-path code stream of the panoramic video;
a second judgment processing module for judging if
Figure BDA0001237973630000031
If yes, entering a third judgment processing module; otherwise, entering a first setting module;
a first setting module, configured to set nt to nt +1, determine const,
Figure BDA0001237973630000032
re-entering the code stream sending module;
a third judgment processing module for judging if the user inertia parameter signuseIf the absolute value is equal to 1, directly entering a code stream self-adaptive distribution device; otherwise, entering a user inertia parameter calculation module;
a user inertia parameter calculation module for firstly calculating a user inertia parameter signuseThen entering a code stream self-adaptive distribution device;
a code stream self-adaptive distribution device for distributing the code stream according to the user inertia parameter signuseAdaptively distributing multi-path code streams of the panoramic video;
a second setting module, configured to make nt equal to nt +1, determine const,
Figure BDA0001237973630000033
re-entering the mark visual angle sending module;
wherein, streamnThe method comprises the steps that the nth spliced code streams are arranged according to the order of camera collecting visual angles, N represents the number of the spliced code streams, and N is 1, 2. ThetanRepresents streamnA corresponding camera collects a visual angle;
const represents a time window duration parameter; nt denotes a time window index;
Figure BDA0001237973630000034
referred to as the nth time window marks the view angle,
Figure BDA0001237973630000035
referred to as the nt-1 st time window marks the view angle;
Figure BDA0001237973630000036
respectively representing the upper time limit and the lower time limit of the nth time window.
The invention has the advantages of
The invention provides a panoramic video distribution method and system based on user characteristics. The method of the invention utilizes the continuity of the watching characteristics of the user to carry out self-adaptive distribution on the multi-path code stream spliced by the panoramic video. Therefore, the panoramic video can distribute the code stream as required when the network is congested, the watching effect of audiences is not influenced, and the smoothness of playing the panoramic video is improved.
Drawings
Fig. 1 is a flowchart of a panoramic video distribution method based on user characteristics according to a preferred embodiment of the present invention;
FIG. 2 is a flowchart of the detailed method of Step6 in FIG. 1;
fig. 3 is a diagram of a panoramic video distribution system architecture based on user characteristics in accordance with a preferred embodiment of the present invention;
fig. 4 is a detailed structural diagram of the code stream adaptive distribution apparatus in fig. 3.
Detailed Description
In order to make the objects, technical solutions and advantages of the present invention more apparent, the present invention is further described in detail below with reference to the accompanying drawings and examples, and for convenience of description, only parts related to the examples of the present invention are shown. It should be understood that the specific embodiments described herein are merely illustrative of the invention and are not intended to limit the invention.
The embodiment of the invention provides a panoramic video distribution method and system based on user characteristics. The method of the embodiment of the invention utilizes the continuity of the watching characteristics of the user to carry out self-adaptive distribution on the multi-channel code stream spliced by the panoramic video. Therefore, the panoramic video can distribute the code stream as required when the network is congested, the watching effect of audiences is not influenced, and the smoothness of playing the panoramic video is improved.
Example one
Fig. 1 is a flowchart of a panoramic video distribution method based on user characteristics according to a preferred embodiment of the present invention; the method comprises the following steps:
step 0: arranging multi-path spliced code streams of the panoramic video according to the sequence of the acquisition visual angles of the cameras, and recording the sequence of the multi-path spliced code streams of the panoramic video after the sequence as
{stream1,stream2,...,streamN-1,streamNAnd recording the corresponding camera acquisition view angle sequence as { theta }12,...,θN-1N}。
Wherein, streamnThe method comprises the steps that the nth spliced code streams are arranged according to the order of camera collecting visual angles, N represents the number of the spliced code streams, and N is 1, 2. ThetanRepresents streamnA corresponding camera collects a visual angle; the arrangement according to the camera collection visual angle sequence can be arranged in an ascending order or a descending order, and for the convenience of expression, the text adopts an ascending arrangement mode, namely theta12<......<θN-1N
Step 1: sending const second panoramic video multi-path code streamn,n=1,2,...,N。
Wherein the content of the first and second substances,
Figure BDA0001237973630000041
const represents a time window duration parameter; t is t0The initial buffering time of the sending code stream is shown, and can be 3-6 seconds generally; t is tcRepresenting the buffering time of the sending code stream; nt denotes a time window index and has an initial value of 1.
Step 2: within the const second time window, the mark visual angle in the time window is sent
Figure BDA0001237973630000051
Wherein the content of the first and second substances,
Figure BDA0001237973630000052
referred to as the nth time window marks the view angle,
Figure BDA0001237973630000053
indicating the upper and lower visual angle limits for the nth time window,
Figure BDA0001237973630000054
Figure BDA0001237973630000055
max (variable | condition) represents minimum and maximum values of variables satisfying the condition; t tableShowing a time variable;
Figure BDA0001237973630000056
respectively representing the upper time limit and the lower time limit of the nth time window,
Figure BDA0001237973630000057
Figure BDA0001237973630000058
step 3: if the panoramic video multi-path code streamnIf the code stream in the nt +1 time window exists, the Step4 is entered; otherwise, ending the distribution of the panoramic video multi-path code stream.
Step 4: if it is not
Figure BDA0001237973630000059
If yes, go to Step 5; otherwise, let nt be nt +1, determine const,
Figure BDA00012379736300000510
re-enters Step 1.
Wherein the content of the first and second substances,
Figure BDA00012379736300000511
the nt-1 th time window marks the view angle.
Step 5: if user inertia parameter signuseThe absolute value is equal to 1, the inertial parameter sign of the user is not calculateduseDirectly to Step 6; otherwise, firstly calculating the inertial parameter sign of the useruseAnd then proceeds to Step 6.
"calculating user inertial parameters signuseThe method comprises the following steps:
step 1: if it is not
Figure BDA00012379736300000512
And is
Figure BDA00012379736300000513
Let tempu be tempu + 1; otherwise if it is not
Figure BDA00012379736300000514
And is
Figure BDA00012379736300000515
Let temp + 1; otherwise, directly entering the step 2;
step 2: computing
Figure BDA0001237973630000061
Wherein, Thres1、Thres2Respectively representing a first and a second decision threshold; abs (variable) means the absolute value of a variable; tempu and tempd respectively represent a first angle transformation statistic and a second angle transformation statistic, and the initial values are 0; signuseRepresenting the user inertial parameter, and the initial value is 0.
Step 6: according to inertial parameters sign of useruseAnd adaptively distributing multi-path code streams of the panoramic video.
FIG. 2 is a flowchart of the detailed method of Step6 in FIG. 1; the method specifically comprises the following steps:
step 61: calculate the sequence of angular differences, note
Figure BDA0001237973630000062
Step 62: first, d θ is calculatedminu=min(dθn|dθn>0, N ═ 1,2,. cndot., N), and then find d θminuCorresponding camera acquisition angle, noted as θnowAnd the corresponding code stream is marked as streamnow;dθminuIs a temporary variable;
step 63: will streamnowAnd streamnowThe subsequent code stream is sequentially put into a right code stream sequence table, and is marked as table (stream) ═ streamnow,streamnow+1,streamnow+2,...,streamNThen stream is addednowThe former code stream is put into the left code stream sequence table in reverse order and is marked as available ═ streamnow-1,streamnow-2,streamnow-3,...,stream1}
Step 64: if signuseIf the video is 1, constructing a multi-path code stream distribution sequence table of the panoramic video according to the first direction; otherwise, if signuseIf the panoramic video is-1, constructing a panoramic video multi-path code stream distribution sequence table according to a second direction; otherwise, constructing a panoramic video multi-path code stream distribution sequence table according to a third direction.
The method for constructing the panoramic video multi-path code stream distribution sequence table according to the first direction comprises the following steps:
according to the structural rule that numu tableu code streams are firstly generated and then numd tabled code streams are generated, a panoramic video multi-path code stream distribution sequence table is constructed, wherein numu > numd is required, and the following steps are exemplified: numu-2, numd-1
Figure BDA0001237973630000071
The method for constructing the panoramic video multi-path code stream distribution sequence table according to the second direction comprises the following steps:
according to the structural rule that num d tabled code streams are firstly arranged and num u tableu code streams are secondly arranged, a panoramic video multi-path code stream distribution sequence table is constructed, wherein num d is required to be greater than num, for example: numd-2, numu-1
Figure BDA0001237973630000072
The method for constructing the panoramic video multi-path code stream distribution sequence table according to the third direction comprises the following steps:
according to the structural rule of 1 tabled code stream first and 1 tableu code stream later, a multi-path code stream distribution sequence table of the panoramic video is constructed, or according to the structural rule of 1 tableu code stream first and 1 tabled code stream later, a multi-path code stream distribution sequence table of the panoramic video is constructed; for example, the following steps are carried out:
Figure BDA0001237973630000073
step 65: and sequentially transmitting the code streams in nt +1 time windows corresponding to the multi-path code streams of the panoramic video according to the sequence of the multi-path code stream distribution sequence table of the panoramic video.
Step 7: let nt be nt+1, determining the const,
Figure BDA0001237973630000074
re-enters Step 2.
Example two
Fig. 3 is a diagram of a panoramic video distribution system architecture based on user characteristics in accordance with a preferred embodiment of the present invention; the system comprises:
a splicing code stream arrangement module for arranging the multi-path splicing code streams of the panoramic video according to the sequence of the collection visual angles of the cameras, and recording the multi-path splicing code stream sequence of the panoramic video after sequencing as a sequence
{stream1,stream2,...,streamN-1,streamNAnd recording the corresponding camera acquisition view angle sequence as { theta }12,...,θN-1N}。
Wherein, streamnThe method comprises the steps that the nth spliced code streams are arranged according to the order of camera collecting visual angles, N represents the number of the spliced code streams, and N is 1, 2. ThetanRepresents streamnA corresponding camera collects a visual angle; the arrangement according to the camera collection visual angle sequence can be arranged in an ascending order or a descending order, and for the convenience of expression, the text adopts an ascending arrangement mode, namely theta12<......<θN-1N
A code stream sending module for sending const second panoramic video multi-path code streamn,n=1,2,...,N。
Wherein the content of the first and second substances,
Figure BDA0001237973630000081
const represents a time window duration parameter; t is t0The initial buffering time of the sending code stream is shown, and can be 3-6 seconds generally; t is tcRepresenting the buffering time of the sending code stream; nt denotes a time window index and has an initial value of 1.
A mark view sending module for sending the mark view in the const second time window
Corner
Figure BDA0001237973630000082
Wherein the content of the first and second substances,
Figure BDA0001237973630000083
referred to as the nth time window marks the view angle,
Figure BDA0001237973630000084
indicating the upper and lower visual angle limits for the nth time window,
Figure BDA0001237973630000085
Figure BDA0001237973630000086
max (variable | condition) represents minimum and maximum values of variables satisfying the condition; t represents a time variable;
Figure BDA0001237973630000087
respectively representing the upper time limit and the lower time limit of the nth time window,
Figure BDA0001237973630000088
Figure BDA0001237973630000089
a first judgment processing module for judging if the panoramic video multi-path code stream is streamnIf the code stream in the nt +1 time window exists, entering a second judgment processing module; otherwise, ending the distribution of the panoramic video multi-path code stream.
A second judgment processing module for judging if
Figure BDA00012379736300000810
If yes, entering a third judgment processing module; otherwise, entering a first setting module;
wherein the content of the first and second substances,
Figure BDA0001237973630000091
referred to as the nt-1 time windowAnd marking the visual angle.
A first setting module, configured to set nt to nt +1, determine const,
Figure BDA0001237973630000092
and re-entering the code stream sending module.
A third judgment processing module for judging if the user inertia parameter signuseIf the absolute value is equal to 1, directly entering a code stream self-adaptive distribution device; otherwise, entering a user inertia parameter calculation module;
a user inertia parameter calculation module for firstly calculating a user inertia parameter signuseAnd then entering a code stream self-adaptive distribution device.
"calculating user inertial parameters signuseThe method comprises the following steps:
step 1: if it is not
Figure BDA0001237973630000093
And is
Figure BDA0001237973630000094
Let tempu be tempu + 1; otherwise if it is not
Figure BDA0001237973630000095
And is
Figure BDA0001237973630000096
Let temp + 1; otherwise, directly entering the step 2;
step 2: computing
Figure BDA0001237973630000097
Wherein, Thres1、Thres2Respectively representing a first and a second decision threshold; abs (variable) means the absolute value of a variable; tempu and tempd respectively represent a first angle transformation statistic and a second angle transformation statistic, and the initial values are 0; signuseRepresenting the user inertial parameter, and the initial value is 0.
A code stream self-adaptive distribution device for distributing the code stream according to the user inertia parameter signuseAnd adaptively distributing multi-path code streams of the panoramic video.
A second setting module, configured to make nt equal to nt +1, determine const,
Figure BDA0001237973630000098
re-entering the mark view angle sending module.
Further, fig. 4 is a detailed structure diagram of the code stream adaptive distribution apparatus in fig. 3, where the code stream adaptive distribution apparatus further includes:
an angle difference sequence calculating module for calculating the angle difference sequence and recording as
Figure BDA0001237973630000099
n=1,2,...,N;
A temporary camera acquisition angle and corresponding code stream acquisition module for firstly calculating d thetaminu=min(dθn|dθn>0, N ═ 1,2,. cndot., N), and then find d θminuCorresponding camera acquisition angle, noted as θnowAnd the corresponding code stream is marked as streamnow;dθminuIs a temporary variable;
a code stream sequence list setting module for streamnowAnd streamnowThe subsequent code stream is sequentially put into a right code stream sequence table and recorded as
tableu={streamnow,streamnow+1,streamnow+2,...,streamNThen stream is addednowThe former code stream is put into the left code stream sequence table in reverse order and is recorded as
tabled={streamnow-1,streamnow-2,streamnow-3,...,stream1}
A code stream distribution sequence table construction module used for sign ifuseIf the video is 1, constructing a multi-path code stream distribution sequence table of the panoramic video according to the first direction; otherwise, if signuseIf the panoramic video is-1, constructing a panoramic video multi-path code stream distribution sequence table according to a second direction; otherwise, constructing a panoramic video multi-path code stream distribution sequence table according to a third direction.
The method for constructing the panoramic video multi-path code stream distribution sequence table according to the first direction comprises the following steps:
according to the structural rule that numu tableu code streams are firstly generated and then numd tabled code streams are generated, a panoramic video multi-path code stream distribution sequence table is constructed, wherein numu > numd is required, and the following steps are exemplified: numu-2, numd-1
Figure BDA0001237973630000101
The method for constructing the panoramic video multi-path code stream distribution sequence table according to the second direction comprises the following steps:
according to the structural rule that num d tabled code streams are firstly arranged and num u tableu code streams are secondly arranged, a panoramic video multi-path code stream distribution sequence table is constructed, wherein num d is required to be greater than num, for example: numd-2, numu-1
Figure BDA0001237973630000111
The method for constructing the panoramic video multi-path code stream distribution sequence table according to the third direction comprises the following steps:
according to the structural rule of 1 tabled code stream first and 1 tableu code stream later, a multi-path code stream distribution sequence table of the panoramic video is constructed, or according to the structural rule of 1 tableu code stream first and 1 tabled code stream later, a multi-path code stream distribution sequence table of the panoramic video is constructed; for example, the following steps are carried out:
table={streamnow,streamnow-1,
streamnow+1,streamnow-2,
,...,}
and the code stream sending module is used for sequentially sending the code streams in nt +1 time windows corresponding to the multi-path code streams of the panoramic video according to the sequence of the multi-path code stream distribution sequence table of the panoramic video.
It will be understood by those skilled in the art that all or part of the steps in the method according to the above embodiments may be implemented by hardware related to program instructions, and the program may be stored in a computer readable storage medium, such as ROM, RAM, magnetic disk, optical disk, etc.
The above description is only for the purpose of illustrating the preferred embodiments of the present invention and is not to be construed as limiting the invention, and any modifications, equivalents and improvements made within the spirit and principle of the present invention are intended to be included within the scope of the present invention.

Claims (5)

1. A panoramic video distribution method based on user characteristics is characterized by comprising the following steps:
step A: arranging the multi-path spliced code streams of the panoramic video according to the order of the collection visual angles of the cameras, and recording the sequence of the multi-path spliced code streams of the panoramic video after the ordering as { stream1,stream2,...,streamN-1,streamNAnd recording the corresponding camera acquisition view angle sequence as { theta }12,...,θN-1N};
And B: sending const second panoramic video multi-path code streamn
And C: within the const second time window, the mark visual angle in the time window is sent
Figure FDA0002314378450000011
Step D: if the panoramic video multi-path code streamnE, if the code stream in the nt +1 time window exists, entering the step E; otherwise, ending the distribution of the multi-path code stream of the panoramic video;
step E: if it is not
Figure FDA0002314378450000012
If yes, entering step F; otherwise, let nt be nt +1, determine const,
Figure FDA0002314378450000013
re-entering the step B;
step F: if user inertia parameter signuseThe absolute value is equal to 1, the inertial parameter sign of the user is not calculateduseDirectly entering step G; otherwise, first calculating the inertial parameter si of the usergnuseThen entering step G; wherein, the user inertial parameter sign is calculateduseThe method comprises the following steps:
step a: if it is not
Figure FDA0002314378450000014
And is
Figure FDA0002314378450000015
Let tempu be tempu + 1; otherwise if it is not
Figure FDA0002314378450000016
And is
Figure FDA0002314378450000017
Let temp + 1; otherwise, directly entering the step a;
step b: computing
Figure FDA0002314378450000018
Wherein, Thres1、Thres2Respectively representing a first and a second decision threshold; abs (variable) means the absolute value of a variable; tempu and tempd respectively represent a first angle transformation statistic and a second angle transformation statistic, and the initial values are 0; signuseRepresenting the inertial parameter of the user, and the initial value is 0;
step G: according to inertial parameters sign of useruseAdaptively distributing multi-path code streams of the panoramic video; wherein the sign is according to the inertial parameter of the useruseThe self-adaptive distribution of the panoramic video multi-path code stream specifically comprises the following steps:
calculate the sequence of angular differences, note
Figure FDA0002314378450000021
First, d θ is calculatedminu=min(dθn|dθn>0, N ═ 1,2,. cndot., N), and then find d θminuCorresponding camera acquisition angle, noted as θnowAnd the corresponding code stream is marked as streamnow;dθminuIs a temporary variable;
will streamnowAnd streamnowThe subsequent code stream is sequentially put into a right code stream sequence table, and is marked as table (stream) ═ streamnow,streamnow+1,streamnow+2,...,streamNThen stream is addednowThe former code stream is put into the left code stream sequence table in reverse order and is marked as available ═ streamnow-1,streamnow-2,streamnow-3,...,stream1}
Judging if signuseIf the video is 1, constructing a multi-path code stream distribution sequence table of the panoramic video according to the first direction; otherwise, if signuseIf the panoramic video is-1, constructing a panoramic video multi-path code stream distribution sequence table according to a second direction; otherwise, constructing a panoramic video multi-path code stream distribution sequence table according to a third direction; the method for constructing the panoramic video multi-path code stream distribution sequence table according to the first direction comprises the following steps:
according to the structural rule that numu tableu code streams are firstly arranged and then numd tabled code streams are arranged, a panoramic video multi-path code stream distribution sequence table is constructed, wherein numu > numd;
the method for constructing the panoramic video multi-path code stream distribution sequence table according to the second direction comprises the following steps:
constructing a panoramic video multi-path code stream distribution sequence table according to the structural rule of numd tabled code streams and numu tableu code streams;
the method for constructing the panoramic video multi-path code stream distribution sequence table according to the third direction comprises the following steps:
according to the structural rule of 1 tabled code stream first and 1 tableu code stream later, a multi-path code stream distribution sequence table of the panoramic video is constructed, or according to the structural rule of 1 tableu code stream first and 1 tabled code stream later, a multi-path code stream distribution sequence table of the panoramic video is constructed;
sequentially sending code streams in nt +1 time windows corresponding to the multi-path code streams of the panoramic video according to the sequence of the multi-path code stream distribution sequence table of the panoramic video;
step H: let nt be nt +1, determine const,
Figure FDA0002314378450000022
re-entering step C;
wherein, streamnThe method comprises the steps that the nth spliced code streams are arranged according to the order of camera collecting visual angles, N represents the number of the spliced code streams, and N is 1, 2. ThetanRepresents streamnA corresponding camera collects a visual angle;
const represents a time window duration parameter; nt denotes a time window index;
Figure FDA0002314378450000031
referred to as the nth time window marks the view angle,
Figure FDA0002314378450000032
referred to as the nt-1 st time window marks the view angle;
Figure FDA0002314378450000033
respectively representing the upper time limit and the lower time limit of the nth time window.
2. The panoramic video distribution method based on user characteristics according to claim 1,
wherein the content of the first and second substances,
Figure FDA0002314378450000034
t0the initial buffering duration of the transmitted code stream is represented, and the range is 3-6 seconds; t is tcAnd the buffer time of the sending code stream is shown.
3. The panoramic video distribution method based on user characteristics according to claim 2,
Figure FDA0002314378450000035
wherein the content of the first and second substances,
Figure FDA0002314378450000036
represents the nth time windowThe upper and lower visual angle limits of (1),
Figure FDA00023143784500000310
Figure FDA00023143784500000311
respectively representing the minimum value and the maximum value of variables meeting the conditions; t represents a time variable;
Figure FDA0002314378450000038
4. a panoramic video distribution system based on user characteristics, the system comprising:
the spliced code stream arrangement module is used for arranging the multi-path spliced code streams of the panoramic video according to the sequence of the acquisition visual angles of the cameras and recording the sequence of the multi-path spliced code streams of the panoramic video after sequencing as { stream1,stream2,...,streamN-1,streamNAnd recording the corresponding camera acquisition view angle sequence as { theta }12,...,θN-1N};
A code stream sending module for sending const second panoramic video multi-path code streamn
A mark visual angle sending module for sending the mark visual angle in the time window in the const second time window
Figure FDA0002314378450000039
A first judgment processing module for judging if the panoramic video multi-path code stream is streamnIf the code stream in the nt +1 time window exists, entering a second judgment processing module; otherwise, ending the distribution of the multi-path code stream of the panoramic video;
a second judgment processing module for judging if
Figure FDA0002314378450000041
If yes, entering a third judgment processing module;otherwise, entering a first setting module;
a first setting module, configured to set nt to nt +1, determine const,
Figure FDA0002314378450000042
re-entering the code stream sending module;
a third judgment processing module for judging if the user inertia parameter signuseIf the absolute value is equal to 1, directly entering a code stream self-adaptive distribution device; otherwise, entering a user inertia parameter calculation module;
a user inertia parameter calculation module for firstly calculating a user inertia parameter signuseThen entering a code stream self-adaptive distribution device; wherein, the user inertial parameter sign is calculateduseThe method comprises the following steps:
step a: if it is not
Figure FDA0002314378450000043
And is
Figure FDA0002314378450000044
Let tempu be tempu + 1; otherwise if it is not
Figure FDA0002314378450000045
And is
Figure FDA0002314378450000046
Let temp + 1; otherwise, directly entering the step a;
step b: computing
Figure FDA0002314378450000047
Wherein, Thres1、Thres2Respectively representing a first and a second decision threshold; abs (variable) means the absolute value of a variable; tempu and tempd respectively represent a first angle transformation statistic and a second angle transformation statistic, and the initial values are 0; signuseRepresenting the inertial parameter of the user, and the initial value is 0;
a code stream self-adaptive distribution device for distributing the code stream according to the user inertia parameter signuseAdaptively distributing multi-path code streams of the panoramic video; wherein, the code stream self-adaptation distributor includes:
an angle difference sequence calculating module for calculating the angle difference sequence and recording as
Figure FDA0002314378450000048
Figure FDA0002314378450000049
A temporary camera acquisition angle and corresponding code stream acquisition module for firstly calculating d thetaminu=min(dθn|dθn>0, N ═ 1,2,. cndot., N), and then find d θminuCorresponding camera acquisition angle, noted as θnowAnd the corresponding code stream is marked as streamnow;dθminuIs a temporary variable;
a code stream sequence list setting module for streamnowAnd streamnowThe subsequent code stream is sequentially put into a right code stream sequence table, and is marked as table (stream) ═ streamnow,streamnow+1,streamnow+2,...,streamNThen stream is addednowThe former code stream is put into the left code stream sequence table in reverse order and is marked as available ═ streamnow-1,streamnow-2,streamnow-3,...,stream1}
A code stream distribution sequence table construction module used for sign ifuseIf the video is 1, constructing a multi-path code stream distribution sequence table of the panoramic video according to the first direction; otherwise, if signuseIf the panoramic video is-1, constructing a panoramic video multi-path code stream distribution sequence table according to a second direction; otherwise, constructing a panoramic video multi-path code stream distribution sequence table according to a third direction; the method for constructing the panoramic video multi-path code stream distribution sequence table according to the first direction comprises the following steps:
according to the structural rule that numu tableu code streams are firstly arranged and then numd tabled code streams are arranged, a panoramic video multi-path code stream distribution sequence table is constructed, wherein numu > numd;
the method for constructing the panoramic video multi-path code stream distribution sequence table according to the second direction comprises the following steps:
constructing a panoramic video multi-path code stream distribution sequence table according to the structural rule of numd tabled code streams and numu tableu code streams;
the method for constructing the panoramic video multi-path code stream distribution sequence table according to the third direction comprises the following steps:
according to the structural rule of 1 tabled code stream first and 1 tableu code stream later, a multi-path code stream distribution sequence table of the panoramic video is constructed, or according to the structural rule of 1 tableu code stream first and 1 tabled code stream later, a multi-path code stream distribution sequence table of the panoramic video is constructed;
the code stream sending module is used for sequentially sending the code streams in nt +1 time windows corresponding to the multi-path code streams of the panoramic video according to the sequence of the multi-path code stream distribution sequence table of the panoramic video;
a second setting module, configured to make nt equal to nt +1, determine const,
Figure FDA0002314378450000051
re-entering the mark visual angle sending module;
wherein, streamnThe method comprises the steps that the nth spliced code streams are arranged according to the order of camera collecting visual angles, N represents the number of the spliced code streams, and N is 1, 2. ThetanRepresents streamnA corresponding camera collects a visual angle;
const represents a time window duration parameter; nt denotes a time window index;
Figure FDA0002314378450000052
referred to as the nth time window marks the view angle,
Figure FDA0002314378450000053
referred to as the nt-1 st time window marks the view angle;
Figure FDA0002314378450000054
respectively representing the upper time limit and the lower time limit of the nth time window.
5. The panoramic video distribution system based on user characteristics of claim 4,
wherein the content of the first and second substances,
Figure FDA0002314378450000061
t0the initial buffering duration of the transmitted code stream is represented, and the range is 3-6 seconds; t is tcRepresenting the buffering time of the sending code stream;
Figure FDA0002314378450000062
wherein the content of the first and second substances,
Figure FDA0002314378450000063
indicating the upper and lower visual angle limits for the nth time window,
Figure FDA0002314378450000064
Figure FDA0002314378450000065
respectively representing the minimum value and the maximum value of variables meeting the conditions; t represents a time variable;
Figure FDA0002314378450000066
CN201710124230.2A 2017-03-03 2017-03-03 Panoramic video distribution method and system based on user characteristics Active CN106851212B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201710124230.2A CN106851212B (en) 2017-03-03 2017-03-03 Panoramic video distribution method and system based on user characteristics

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201710124230.2A CN106851212B (en) 2017-03-03 2017-03-03 Panoramic video distribution method and system based on user characteristics

Publications (2)

Publication Number Publication Date
CN106851212A CN106851212A (en) 2017-06-13
CN106851212B true CN106851212B (en) 2020-03-17

Family

ID=59138064

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710124230.2A Active CN106851212B (en) 2017-03-03 2017-03-03 Panoramic video distribution method and system based on user characteristics

Country Status (1)

Country Link
CN (1) CN106851212B (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109348291B (en) * 2018-11-16 2021-05-18 深圳市梦网视讯有限公司 Panoramic video code stream distribution method and system based on motion analysis

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101600099A (en) * 2009-04-09 2009-12-09 上海交通大学 The real-time transmission synchronous control method of multi-angle video Flow
CN105791882A (en) * 2016-03-22 2016-07-20 腾讯科技(深圳)有限公司 Video coding method and device
CN105933343A (en) * 2016-06-29 2016-09-07 深圳市优象计算技术有限公司 Stream cache mechanism used for network play of 720-degree panoramic video
CN106060513A (en) * 2016-06-29 2016-10-26 深圳市优象计算技术有限公司 Code stream caching mechanism for cylindrical surface stereoscopic panoramic video network playing
JP2016213810A (en) * 2015-05-01 2016-12-15 株式会社リコー Image display system, information processing apparatus, program, and image display method

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101600099A (en) * 2009-04-09 2009-12-09 上海交通大学 The real-time transmission synchronous control method of multi-angle video Flow
JP2016213810A (en) * 2015-05-01 2016-12-15 株式会社リコー Image display system, information processing apparatus, program, and image display method
CN105791882A (en) * 2016-03-22 2016-07-20 腾讯科技(深圳)有限公司 Video coding method and device
CN105933343A (en) * 2016-06-29 2016-09-07 深圳市优象计算技术有限公司 Stream cache mechanism used for network play of 720-degree panoramic video
CN106060513A (en) * 2016-06-29 2016-10-26 深圳市优象计算技术有限公司 Code stream caching mechanism for cylindrical surface stereoscopic panoramic video network playing

Also Published As

Publication number Publication date
CN106851212A (en) 2017-06-13

Similar Documents

Publication Publication Date Title
TWI826321B (en) A method for enhancing quality of media
US10938725B2 (en) Load balancing multimedia conferencing system, device, and methods
US9418296B1 (en) Detecting segments of a video program
CN114025219B (en) Rendering method, device, medium and equipment for augmented reality special effects
KR102628898B1 (en) Method of processing image based on artificial intelligence and image processing device performing the same
CN111612842A (en) Method and device for generating pose estimation model
US11599974B2 (en) Joint rolling shutter correction and image deblurring
CN111079588B (en) Image processing method, device and storage medium
CA3182110A1 (en) Reinforcement learning based rate control
CN106851212B (en) Panoramic video distribution method and system based on user characteristics
CN111738769A (en) Video processing method and device
CN112785669B (en) Virtual image synthesis method, device, equipment and storage medium
WO2024032494A1 (en) Image processing method and apparatus, computer, readable storage medium, and program product
CN113902636A (en) Image deblurring method and device, computer readable medium and electronic equipment
WO2021057926A1 (en) Method and apparatus for training neural network model
CN106604041B (en) Panoramic video distribution method and system based on visual continuity
CN106791886B (en) Panoramic video distribution method and system based on visual characteristics
WO2021037174A1 (en) Neural network model training method and apparatus
US10818264B2 (en) Generating virtual reality and augmented reality content for a live event
JP6892557B2 (en) Learning device, image generator, learning method, image generation method and program
KR20220155882A (en) Data processing method and apparatus using a neural network
CN106973282B (en) Panoramic video immersion enhancement method and system
CN104320663A (en) Video compression method and device and video transmission system
WO2021068729A1 (en) Image synthesis method and apparatus, electronic device, and computer readable storage medium
WO2023051245A1 (en) Video processing method and apparatus, and device and storage medium

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
CB02 Change of applicant information

Address after: 518000 Guangdong city of Shenzhen province Nanshan District Guangdong streets high in the four Longtaili Technology Building Room 325 No. 30

Applicant after: Shenzhen Monternet encyclopedia Information Technology Co. Ltd.

Address before: The central Shenzhen city of Guangdong Province, 518057 Keyuan Road, Nanshan District science and Technology Park No. 15 Science Park Sinovac A Building 1 unit 403, No. 405 unit

Applicant before: BAC Information Technology Co., Ltd.

CB02 Change of applicant information
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant
CP01 Change in the name or title of a patent holder

Address after: 518000 Guangdong city of Shenzhen province Nanshan District Guangdong streets high in the four Longtaili Technology Building Room 325 No. 30

Patentee after: Shenzhen mengwang video Co., Ltd

Address before: 518000 Guangdong city of Shenzhen province Nanshan District Guangdong streets high in the four Longtaili Technology Building Room 325 No. 30

Patentee before: SHENZHEN MONTNETS ENCYCLOPEDIA INFORMATION TECHNOLOGY Co.,Ltd.

CP01 Change in the name or title of a patent holder