A spatial allocation and cache decision method for 360-degree ultra-high-definition panoramic video
By analyzing user behavior patterns and heuristic algorithms, and combining particle swarm optimization to optimize the scaling factor, the problem of high complexity in panoramic video caching decision-making algorithms is solved, improving cache hit rate and user experience, reducing network pressure, and making it suitable for virtual reality and online video scenarios.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- SHANDONG UNIV
- Filing Date
- 2023-04-20
- Publication Date
- 2026-06-12
AI Technical Summary
Existing caching solutions for 360-degree panoramic videos struggle to effectively address the complexity of caching decision algorithms, resulting in low cache hit rates and an inability to guarantee service quality for end users.
By analyzing user behavior patterns, a cache space allocation and decision-making method based on heuristic algorithms is designed. Utilizing user field of view, completion rate, and video popularity information, a low-complexity heuristic solution method is adopted, combined with particle swarm optimization to optimize the scaling factor, thereby achieving a fast solution for the cache strategy.
It effectively improved the video cache hit rate, reduced user request latency and network communication pressure, enhanced the end-user experience, and met the low-latency communication needs of emerging businesses.
Smart Images

Figure CN116456143B_ABST
Abstract
Description
Technical Field
[0001] This invention relates to a spatial allocation and caching decision-making method for 360° ultra-high-definition panoramic video, belonging to the field of computer storage system technology. Background Technology
[0002] Video is a primary means of obtaining information in people's daily lives and is also the most common data type on the internet today. With the development and evolution of technologies such as 5G, artificial intelligence, and edge computing, people's demands for video content are no longer limited to clarity, but are moving towards higher definition, greater interactivity, and a more immersive experience, giving rise to 360-degree panoramic video. 360-degree panoramic video breaks through the limitations of the two-dimensional plane, achieving cross-dimensional evolution of image information, bringing users a deeply immersive visual interactive experience, and spawning numerous new scenarios and applications, which are widely used in entertainment, education, healthcare, and industrial manufacturing.
[0003] To ensure a deeply immersive visual experience for end users, 360-degree ultra-high-definition panoramic videos require extremely high video bitrates to guarantee image quality, and have even stricter latency requirements. The ultra-high communication bandwidth required to transmit panoramic videos leads to severe congestion on backbone networks, making it difficult to deliver video content to users in a timely manner. Therefore, to avoid duplicate data transmission, alleviate communication pressure on backbone networks, and reduce video content transmission latency, video caching technologies, represented by CDN (Content Delivery Network), have been widely applied to online video platforms. However, panoramic videos have several times the data volume of traditional 2D planar videos. There is a contradiction between limited cache space and the extremely large file size of panoramic videos. Directly adopting caching solutions designed for traditional 2D videos cannot guarantee the cache hit rate of panoramic videos or the service quality for end users.
[0004] To address the aforementioned issues, existing caching solutions for 360-degree panoramic videos segment the video into a series of tiles in both time and space. By perceiving the user's field of view, they achieve finer-grained caching decisions on a tile-by-tile basis, effectively solving the problem of low cache hit rates caused by excessively large video sizes. However, while tile-based caching decisions improve caching flexibility, the increased decision dimensionality makes video caching decision algorithms difficult to solve, hindering the practical application of existing panoramic video caching algorithms. Therefore, this invention proposes a spatial allocation and caching decision algorithm for 360-degree ultra-high-definition panoramic videos based on user behavior pattern analysis. A heuristic optimization problem-solving method is designed to effectively reduce the complexity of caching optimization decisions for 360-degree ultra-high-definition panoramic videos, facilitating the practical implementation of panoramic video applications. Summary of the Invention
[0005] To address the shortcomings of existing technologies, this invention provides a 360-degree ultra-high-definition panoramic video space allocation and caching decision method. By analyzing the field of view (FoV), completion rate, and video popularity information of users when watching different types of panoramic videos, a heuristic algorithm-based cache space allocation and decision algorithm is designed. The proposed method has low computational complexity, can complete video caching decisions in a short time, and effectively improves the video cache hit rate.
[0006] The present invention adopts the following technical solution:
[0007] A spatial allocation and caching decision method for 360° ultra-high-definition panoramic video includes:
[0008] Step 1: Collect user request logs over a period of time, and analyze the logs to obtain the request probability, entropy of the video to be cached, popularity information, completion rate, and probability quality function information of the time each video is abandoned.
[0009] Step 2: Calculate the confidence score for each video based on the information obtained from the analysis in Step 1;
[0010] Step 3: Allocate cache space for each video based on the confidence score calculated in Step 2 and the request probability of each tile obtained in Step 1, and decide which video tiles need to be cached.
[0011] Preferably, the optimization problem for efficient caching decisions of 360-degree panoramic video is established as shown in equation (I):
[0012]
[0013] These include constraints C1 and C2, where constraint C1 is a binary variable constraint and constraint C2 is a server cache space constraint.
[0014] In equation (I), Represents a set of time slots. Represents a set of users. Represents a collection of video files. Represents a collection of video clips. Represents a set of video tiles; r u,υ,s,m (t) represents the m-th tile (which can be represented as z) of the s-th segment of video υ by user u in time slot t. υsm The request status of r u,υ,s,m (t) = 1 indicates that the user requested tile z. υsm r u,υ,s,m (t) = 0 indicates that the tile was not requested; α υ,s,m Represents tile caching decisions, α υ,s,m =1 means the server has cached tile z.υsm α υ,s,m =0 means no cache; q υ,s,m Representing tile z υsm File size, This represents the size of the cache space on the caching server.
[0015] The optimization variables for problem (I) are: For a binary variable α υ,s,m The three-dimensional tensor constituted;
[0016] The optimization objective is to maximize the user set by finding the optimal caching decision α. In the near future The number of cache hits within the cache.
[0017] Since problem (I) is a knapsack problem, its solution complexity grows exponentially as the input dimension of the problem increases. When the value is large, it is difficult to solve by exhaustive search or dynamic programming. Therefore, this invention designs a low-complexity heuristic solution algorithm.
[0018] Preferably, step 1 specifically includes:
[0019] 1.1: The maximum likelihood estimation method is used to estimate the tile z from the user request log. υsm The probability of request P υsm The calculation formula is:
[0020]
[0021] In the above formula, n inFoυ and n outFoυ These represent tile z in the user request log. υsm The number of times it appears within and outside the user's field of view;
[0022] 1.2: Based on the tile request probability calculated in step 1.1, calculate the entropy of each video segment:
[0023]
[0024] In the above formula, H υs Let represent the entropy of the s-th segment of video υ;
[0025] 1.3: Statistics for each video based on user playback logs Completion rate α υ The probability mass function of each video abandonment time And calculate the cumulative distribution function for each video abandonment time: The probability of requesting each video segment is then calculated using the following formula:
[0026]
[0027] In the above formula, μ υs This represents the probability of requesting the s-th segment of video υ;
[0028] In this step, the completion rate of each video can be calculated from the user playback logs. Since the random distribution of video abandonment can be any distribution such as exponential or Poisson, the specific type depends on the different types of videos. v The expression for () is not fixed; for example, a Poisson distribution can be used, i.e. Where e is the natural base, λ is the parameter to be estimated from the user logs, and ! represents factorial. It should be noted that the choice of function expression (i.e., distribution) does not affect the subsequent calculation process.
[0029] 1.4: Calculate each video according to the following formula. Weighted average entropy:
[0030]
[0031] 1.5: Estimating the popularity of each video from user playback logs υ .
[0032] Estimating popularity involves calculating the percentage of each video's views out of the total views. For example, if a video platform offers three movies to users, and users viewed a total of 1000 movies today, with movie A viewed 700 times, movie B viewed 100 times, and movie C viewed 200 times, then movie A's popularity is 700 / 1000 = 0.7, movie B's popularity is 100 / 1000 = 0.1, and movie C's popularity is 200 / 1000 = 0.2. The sum of all movie popularity scores equals 1.
[0033] Preferably, step 2 specifically includes:
[0034] 2.1: Calculating the set of video files The mean of the weighted average entropy of all videos in the middle Find the set of videos with higher cache priority using the following formula.
[0035]
[0036] Calculate the mean of the weighted average entropy of videos with higher cache priority. Representative video collection The number of medium-length videos;
[0037] 2.2: Calculate the spatial allocation coefficient φ based on video entropy using the following formula.υ :
[0038]
[0039] 2.3: Calculate the spatial allocation coefficients based on video popularity. and the space allocation coefficient ε based on video file size υ :
[0040]
[0041] Where q υ The file size of the video υ represents the file size.
[0042] 2.4: Calculate each video using the following formula. Confidence score:
[0043]
[0044] Where x = [x1, x2, x3] are the proportional factors of the three spatial allocation coefficients, and softmax[] is the normalized exponential function.
[0045] Preferably, step 3 specifically includes:
[0046] 3.1: Based on the confidence score β υ Allocate cache space for each video Initialize the cache strategy matrix α = 0;
[0047] 3.2: Based on the cache space of each video For each video clip The specific steps for reallocating cache space are as follows:
[0048] a. Initialize the remaining buffer space for video υ
[0049] b. Allocate initial buffer space for the s-th segment of video υ according to the following formula:
[0050]
[0051] c. Adjust the allocated cache space according to the following formula:
[0052]
[0053] d. Update the remaining cache space of video υ
[0054] e. Repeat steps bd until all segments of video υ are included. Cache space allocation has been completed;
[0055] 3.3: Based on the cache space allocated to each video segment in step 3.2, determine the video tiles that need to be cached. The specific steps are as follows:
[0056] ① Initialize the remaining buffer space of the s-th segment of video υ
[0057] ②Based on the request probability P of video tiles υsm Sort all tiles of video clip s in descending order;
[0058] ③ Based on the sorting results, decide whether each tile should be cached: If tile z υsm The file size is smaller than the remaining buffer space of the s-th segment of video υ, that is... Let α υ,s,m =1, Repeat this step until all tiles have been decided.
[0059] Preferably, step 3 is followed by:
[0060] Step 4: Use the particle swarm optimization algorithm to optimize the scaling factor in step 2.4.
[0061] Furthermore, the implementation process of step 4 is as follows:
[0062] 4.1: Initialize the particle population The attributes are set as follows: particle velocity is set to 0, particle position is set to a random value, and the dimension of the particle position is the same as the dimension of the scaling factor x.
[0063] 4.2: Using the position of each particle as a scaling factor x, perform step 2.4 to calculate the confidence score β. υ And execute step 3 to obtain the caching decision. The fitness of each particle is calculated using the following formula:
[0064]
[0065] 4.3: Update each particle's fitness based on the fitness calculated in step 4.2. Individual optimal and the global optimum g of the population best ;
[0066] Specifically, in each iteration, the fitness of each particle and its corresponding... The comparison is performed; if the particle's fitness is greater than [a certain value] in this iteration... Then replace it with the particle's fitness. Update g best The method involves, in each iteration, processing all particles... and gbest Comparison, if a certain particle's Superior to g best Then use Replace g best This belongs to existing technology.
[0067] 4.4: Update the position and velocity of each particle according to the following two equations:
[0068]
[0069]
[0070] Where ω represents the inertia coefficient, c1 and c2 represent the acceleration coefficients, and rand() represents a random number with a value between 0 and 1. This represents the velocity of the j-th particle in the i-th iteration. This represents the position of the j-th particle during the i-th iteration;
[0071] 4.5: Repeat steps b to d until the maximum number of iterations i is reached. max .
[0072] For any details not covered in this invention, please refer to the prior art.
[0073] The beneficial effects of this invention are as follows:
[0074] This invention proposes a low-complexity method for 360-degree panoramic video spatial allocation and caching decision-making. By learning from users' historical viewing data and extracting user behavior patterns, a heuristic solution algorithm is designed to achieve rapid solution of caching strategies. The proposed scheme can significantly improve the system's cache hit rate and reduce the overhead of user requests to the origin server due to cache misses. On the one hand, this method can reduce the latency of user content requests and ensure the end-user experience; on the other hand, it alleviates the communication pressure on the backbone network caused by massive video data transmission and reduces network operating costs. This invention can be used in cache management systems in scenarios such as virtual reality and online video, and can meet the low-latency communication requirements of emerging services such as Metaverse. Attached Figure Description
[0075] The accompanying drawings, which form part of this application, are used to provide a further understanding of this application. The illustrative embodiments of this application and their descriptions are used to explain this application and do not constitute an undue limitation of this application.
[0076] Figure 1 This is a block diagram of the operating system of the cache decision method proposed in this invention;
[0077] Figure 2 This is a flowchart of the caching decision method proposed in this invention;
[0078] Figure 3 This diagram illustrates a comparison of cache hit rates between existing methods and the method of this invention under different storage capacities. Detailed implementation method:
[0079] To enable those skilled in the art to better understand the technical solutions in this specification, the technical solutions in the embodiments of this invention will be clearly and completely described below with reference to the accompanying drawings. However, this is not the only description; all aspects not described in detail herein are based on conventional techniques in the art.
[0080] Example 1
[0081] A spatial allocation and caching decision-making method for 360° ultra-high-definition panoramic video is proposed. First, an optimization problem for efficient caching decision-making of 360° panoramic video is established as shown in equation (I):
[0082]
[0083] These include constraints C1 and C2, where constraint C1 is a binary variable constraint and constraint C2 is a server cache space constraint.
[0084] In equation (I), Represents a set of time slots. Represents a set of users. Represents a collection of video files. Represents a collection of video clips. Represents a set of video tiles; r u,υ,s,m (t) represents the m-th tile (which can be represented as z) of the s-th segment of video υ by user u in time slot t. υsm The request status of r u,υ,s,m (t) = 1 indicates that the user requested tile z. υsm r u,υ,s,m (t) = 0 indicates that the tile was not requested; α υ,s,m Represents tile caching decisions, α υ,s,m =1 means the server has cached tile z. υsm α υ,s,m =0 means no cache; q υ,s,m Representing tile z υsm File size, This represents the size of the cache space on the caching server.
[0085] The optimization variables for problem (I) are: For a binary variable α υ,s,m The three-dimensional tensor constituted;
[0086] The optimization objective is to maximize the user set by finding the optimal caching decision α. In the near future The number of cache hits within the cache.
[0087] Since problem (I) is a knapsack problem, its solution complexity grows exponentially as the input dimension of the problem increases. When the value is large, it is difficult to solve using exhaustive search or dynamic programming. Therefore, this invention designs a low-complexity heuristic solution algorithm, such as... Figure 1 , Figure 2 Specifically, it includes:
[0088] Step 1: Collect user request logs over a period of time, and analyze the logs to obtain the request probability, entropy of the video to be cached, popularity information, completion rate, and probability quality function information of the time each video is abandoned.
[0089] 1.1: The maximum likelihood estimation method is used to estimate the tile z from the user request log. υsm The probability of request P υsm The calculation formula is:
[0090]
[0091] In the above formula, n inFoυ and n outFoυ These represent tile z in the user request log. υsm The number of times it appears within and outside the user's field of view;
[0092] 1.2: Based on the tile request probability calculated in step 1.1, calculate the entropy of each video segment:
[0093]
[0094] In the above formula, H υs Let represent the entropy of the s-th segment of video υ;
[0095] 1.3: Statistics for each video based on user playback logs Completion rate α υ The probability mass function of each video abandonment time And calculate the cumulative distribution function for each video abandonment time: The probability of requesting each video segment is then calculated using the following formula:
[0096]
[0097] In the above formula, μ υs This represents the probability of requesting the s-th segment of video υ;
[0098] In this step, the completion rate of each video can be calculated from the user playback logs. Since the random distribution of video abandonment can be any distribution such as exponential or Poisson, the specific type depends on the different types of videos. v The expression for () is not fixed; this embodiment uses a Poisson distribution, i.e. Where e is the natural base, λ is the parameter to be estimated from the user logs, and ! represents factorial.
[0099] 1.4: Calculate each video according to the following formula. Weighted average entropy:
[0100]
[0101] 1.5: Estimating the popularity of each video from user playback logs υ .
[0102] Estimating popularity involves calculating the percentage of each video's views out of the total views. For example, if a video platform offers three movies to users, and users viewed a total of 1000 movies today, with movie A viewed 700 times, movie B viewed 100 times, and movie C viewed 200 times, then movie A's popularity is 700 / 1000 = 0.7, movie B's popularity is 100 / 1000 = 0.1, and movie C's popularity is 200 / 1000 = 0.2. The sum of all movie popularity scores equals 1.
[0103] Step 2: Calculate the confidence score for each video based on the information obtained from the analysis in Step 1;
[0104] 2.1: Calculating the set of video files The mean of the weighted average entropy of all videos in the middle Find the set of videos with higher cache priority using the following formula.
[0105]
[0106] Calculate the mean of the weighted average entropy of videos with higher cache priority. Representative video collection The number of medium-length videos;
[0107] 2.2: Calculate the spatial allocation coefficient φ based on video entropy using the following formula. υ :
[0108]
[0109] 2.3: Calculate the spatial allocation coefficients based on video popularity. and the space allocation coefficient ε based on video file sizeυ :
[0110]
[0111] Where q υ The file size of the video υ represents the file size.
[0112] 2.4: Calculate each video using the following formula. Confidence score:
[0113]
[0114] Where x = [x1, x2, x3] are the proportional factors of the three spatial allocation coefficients, and softmax[] is the normalized exponential function.
[0115] Step 3: Allocate cache space for each video based on the confidence score calculated in Step 2 and the request probability of each tile obtained in Step 1, and decide which video tiles need to be cached.
[0116] 3.1: Based on the confidence score β υ Allocate cache space for each video Initialize the cache strategy matrix α = 0;
[0117] 3.2: Based on the cache space of each video For each video clip The specific steps for reallocating cache space are as follows:
[0118] a. Initialize the remaining buffer space for video υ
[0119] b. Allocate initial buffer space for the s-th segment of video υ according to the following formula:
[0120]
[0121] c. Adjust the allocated cache space according to the following formula:
[0122]
[0123] d. Update the remaining cache space of video υ
[0124] e. Repeat steps bd until all segments of video υ are included. Cache space allocation has been completed;
[0125] 3.3: Based on the cache space allocated to each video segment in step 3.2, determine the video tiles that need to be cached. The specific steps are as follows:
[0126] ① Initialize the remaining buffer space of the s-th segment of video υ
[0127] ②Based on the request probability P of video tiles υsm Sort all tiles of video clip s in descending order;
[0128] ③ Based on the sorting results, decide whether each tile should be cached: If tile z υsm The file size is smaller than the remaining buffer space of the s-th segment of video υ, that is... Then let Repeat this step until all tiles have been decided.
[0129] Example 2
[0130] A spatial allocation and caching decision method for 360° ultra-high-definition panoramic video, as described in Example 1, except that it further includes step 4: using particle swarm optimization algorithm to optimize the scaling factor in step 2.4.
[0131] The implementation process of step 4 is as follows:
[0132] 4.1: Initialize the particle population The attributes are set as follows: particle velocity is set to 0, particle position is set to a random value, and the dimension of the particle position is the same as the dimension of the scaling factor x.
[0133] 4.2: Using the position of each particle as a scaling factor x, perform step 2.4 to calculate the confidence score β. υ And execute step 3 to obtain the caching decision. The fitness of each particle is calculated using the following formula:
[0134]
[0135] 4.3: Update each particle's fitness based on the fitness calculated in step 4.2. Individual optimal and the global optimum g of the population best ;
[0136] Specifically, in each iteration, the fitness of each particle and its corresponding... The comparison is performed; if the particle's fitness is greater than [a certain value] in this iteration... Then replace it with the particle's fitness. Update g best The method involves, in each iteration, processing all particles... and g best Comparison, if a certain particle's Superior to g best Then use Replace g best This belongs to existing technology.
[0137] 4.4: Update the position and velocity of each particle according to the following two equations:
[0138]
[0139]
[0140] Where ω represents the inertia coefficient, c1 and c2 represent the acceleration coefficients, and rand() represents a random number with a value between 0 and 1. This represents the velocity of the j-th particle in the i-th iteration. This represents the position of the j-th particle during the i-th iteration;
[0141] 4.5: Repeat steps b to d until the maximum number of iterations i is reached. max In this embodiment, the maximum number of iterations is set to 30 for convergence during simulation.
[0142] Figure 3 This diagram illustrates a comparison of cache hit rates between the existing method and the method in Example 2 under different storage capacities. The existing algorithm refers to a popularity-based full caching algorithm, which, simply put, does not segment the 360-degree video; instead, it caches all tiles for each video, sorting them according to their popularity, storing higher-popularity tiles first, until the cache space is full. Figure 3 As can be seen, the method in this embodiment has a significantly higher cache hit rate compared to existing methods.
[0143] The above description represents the preferred embodiments of the present invention. It should be noted that those skilled in the art can make various improvements and modifications without departing from the principles of the present invention, and these improvements and modifications should also be considered within the scope of protection of the present invention.
Claims
1. A spatial allocation and caching decision-making method for 360° ultra-high-definition panoramic video, characterized in that, include: Step 1: Collect user request logs over a period of time, and analyze the logs to obtain the request probability, entropy of the video to be cached, popularity information, completion rate, and probability quality function information of the time each video is abandoned. Step 2: Based on the information obtained from the analysis in Step 1, calculate the confidence score for each video, including: 2.1: Calculating the set of video files The mean of the weighted average entropy of all videos in the middle , where H v This refers to each video. The weighted average entropy is calculated using the following formula: , Indicates video The The probability of requesting a segment; Indicates video The The entropy of a segment; Find the set of videos with higher cache priority using the following formula. : Calculate the mean of the weighted average entropy of videos with higher cache priority. , Representative video collection The number of medium-length videos; 2.2: Calculate the spatial allocation coefficient based on video entropy using the following formula. : 2.3: Calculate the spatial allocation coefficients based on video popularity. and space allocation coefficient based on video file size : , in, This indicates the popularity of each video; Representative video File size, ; Represents a collection of video clips. Represents a set of video tiles; 2.4: Calculate each video using the following formula. Confidence score: in The scaling factor of the three spatial allocation coefficients It is a normalized exponential function; Step 3: Allocate cache space for each video based on the confidence score calculated in Step 2 and the request probability of each tile obtained in Step 1, and decide which video tiles need to be cached.
2. The spatial allocation and caching decision method for 360° ultra-high-definition panoramic video according to claim 1, characterized in that, The optimization problem for efficient caching decisions for 360° panoramic video is as follows (Equation 1) ): ( ) These include constraints C1 and C2, where constraint C1 is a binary variable constraint and constraint C2 is a server cache space constraint. In equation (Ⅰ), Represents a set of time slots. Represents a set of users. Represents a collection of video files. Represents a collection of video clips. Represents a set of video tiles; On behalf of users In the time slot For video No. The first segment The request details for each tile. The user requested the tiles. , The representative did not request the tile; Represents tile caching decisions, This indicates that the server cached the tiles. , This means there is no cache. Representing tiles File size, This represents the size of the cache space on the caching server. question( The optimization variables are: , is a binary variable The three-dimensional tensor constituted; The optimization objective is to find the optimal caching decision. To maximize user set In the near future The number of cache hits within the cache.
3. The spatial allocation and caching decision method for 360° ultra-high-definition panoramic video according to claim 2, characterized in that, Step 1 specifically includes: 1.1: The tiles are estimated from the user request logs using the maximum likelihood estimation method. Request probability The calculation formula is: In the above formula, and These represent the tiles in the user request log. The number of times it appears within and outside the user's field of view; 1.2: Based on the tile request probability calculated in step 1.1, calculate the entropy of each video segment: 1.3: Statistics for each video based on user playback logs completion rate The probability mass function of each video abandonment time And calculate the cumulative distribution function for each video abandonment time: Then, the request probability for each video segment is calculated: 1.4: Calculate each video The weighted average entropy; 1.5: Estimating the popularity of each video from user playback logs .
4. The spatial allocation and caching decision method for 360° ultra-high-definition panoramic video according to claim 3, characterized in that, Step 3 specifically includes: 3.1: Based on confidence scores Allocate cache space for each video Initialize the cache strategy matrix ; 3.2: Based on the cache space of each video For each video clip The specific steps for reallocating cache space are as follows: a. Initialize video Remaining cache space ; b. Based on the following formula for video The Each segment is allocated initial cache space: ; c. Adjust the allocated cache space according to the following formula: d. Update video Remaining cache space ; e. Repeat steps bd until the video is complete. All segments Cache space allocation has been completed; 3.3: Based on the cache space allocated to each video segment in step 3.2, determine the video tiles that need to be cached. The specific steps are as follows: Initialize video The Remaining cache space for the fragment ; Based on the request probability of video tiles video clips arranged in descending order All the tiles; Based on the sorting results, decide sequentially whether each tile should be cached: if the tile The file size is smaller than the video. The The remaining cache space of the segment, i.e. So let , Repeat this step until all tiles have been decided.
5. The spatial allocation and caching decision method for 360° ultra-high-definition panoramic video according to claim 4, characterized in that, Step 3 is followed by: Step 4: Use the particle swarm optimization algorithm to optimize the scaling factor in step 2.
4.
6. The spatial allocation and caching decision method for 360° ultra-high-definition panoramic video according to claim 5, characterized in that, The implementation process of step 4 is as follows: 4.1: Initialize the particle population The attributes are set as follows: particle velocity is set to 0, particle position is set to a random value, and the dimension and scale factor of the particle position are set to... The dimensions are the same; 4.2: Use the position of each particle as a scaling factor Perform step 2.4 to calculate the confidence score. And execute step 3 to obtain the caching decision. The fitness of each particle is calculated using the following formula: 4.3: Update each particle's fitness based on the fitness calculated in step 4.
2. Individual optimal and the global optimum of the population ; 4.4: Update the position and velocity of each particle according to the following two equations: in Represents the coefficient of inertia. and Represents the acceleration coefficient. This represents a random number with a value between 0 and 1. Indicates the first The particle in the first Speed at the next iteration Indicates the first The particle in the first The position at the next iteration; 4.5: Repeat steps b to d until the maximum number of iterations is reached. .