Efficient sub-pixel searching method

By introducing the steps of fast judgment of stationary blocks, fast judgment of optimal area and calibration and area refinement search in the subpixel search method, the problem of wasted calculation amount and low accuracy of existing subpixel search methods is solved, and efficient subpixel search is achieved, which significantly reduces the calculation amount and maintains a high image quality.

CN119697379APending Publication Date: 2025-03-25INGENIC SEMICON CO LTD
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202311220721.9
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2023-09-20
Publication Date
2025-03-25

AI Technical Summary

Technical Problem

The existing subpixel search method is wasted in terms of calculation amount, and the result accuracy is low due to estimation errors through the RDcost surface model.

Method used

An efficient subpixel search method is proposed, including fast judgment of stationary blocks, fast judgment of optimal areas and calibration, and regional refinement search. By quickly judging the stationary blocks by using the correlation of adjacent blocks in the time domain, the process of fitting the model is omitted, and the region of the optimal point of the sub-pixel is judged by RDcost with the optimal point of the entire pixel, and the accuracy is improved through the calibration mechanism, and finally more accurate results are obtained when RDcost is calculated on average 4 to 5 times.

Benefits of technology

In terms of interpolation calculation amount and cost calculation amount, the calculation amount is reduced by 46% on average compared with the original method, and the compression efficiency loss caused is only Bitrate = +0.07%, and the image quality loss is PSNR = -0.003dB.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119697379A_ABST
    Figure CN119697379A_ABST
Patent Text Reader

Abstract

The invention provides an efficient sub-pixel search method, which comprises the following steps of: S1, quickly judging a static block, and determining whether to skip sub-pixel interpolation and motion estimation of a current block or not by utilizing the correlation of adjacent blocks in a time domain when the static block appears in a video sequence; s2, the optimal point area is rapidly judged and calibrated, only the area where the optimal point is located needs to be determined, and therefore the model fitting process is omitted; and S3, carrying out area refinement search, comparing whether sub-pixel points meet conditions or not according to priorities, carrying out priority search on the sub-pixel points meeting the conditions firstly, terminating the search when the calculated optimal point appears at the outermost peripheral point for the first time, and obtaining a more accurate result under the condition of small average calculation amount by combining the characteristics of the single-peak curved surface of the sub-pixel RDcost. By means of the method, the sub-pixel searching speed can be increased under the condition that the accuracy is high.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention belongs to the technical field of HEVC video encoding, and in particular relates to an efficient sub-pixel search method. Background Art

[0002] Various sub-pixel search methods aim to find a more accurate sub-pixel optimal point with less interpolation and RDcost calculations. Currently, sub-pixel search methods used in video coding include full search, square search, diamond search, etc. Most of them first find the optimal point of 1 / 2 pixel, and then find the optimal point of 1 / 4 pixel from this point, such as Figure 1 As shown, the large hollow dot is a whole pixel, the small solid dot is a 1 / 2 pixel, the small hollow dot is a 1 / 4 pixel, and the large solid dot is the sub-pixel optimal point.

[0003] However, the existing sub-pixel search methods have the same amount of computation in various cases, resulting in computational waste.

[0004] Currently, there is a fast sub-pixel search method based on the RDcost surface model. The RDcost of the integer pixel optimal point and the eight integer pixel points around it are used to calculate the parameters of the polynomial function of the RDcost surface model, and finally the minimum value of the function model is obtained. The coordinates corresponding to the minimum value of the function model are the sub-pixel optimal point. However, the accuracy of the model estimation result is low due to the estimation error using the RDcost surface model method.

[0005] In addition, technical terms commonly used in this field include:

[0006] Sub-pixel search: In actual scenarios, since the distance an object moves is not necessarily an integer multiple of pixels, sub-pixel search is the process of improving the search accuracy of motion estimation to the sub-pixel level.

[0007] Sub-pixel interpolation: Since sub-pixels themselves do not exist, it is necessary to calculate the sub-pixel value through an interpolation algorithm based on the value of the integer pixel. This process is called sub-pixel interpolation.

[0008] RDcost: rate distortion cost, which mainly refers to the error of the search point in this article.

[0009] Temporal adjacent blocks: blocks in the previous frame image in the time domain that have the same position as the current block relative to the current frame image.

[0010] Optimum point: The optimal point mentioned in this article refers to the pixel point found by the optimal motion vector at the first pixel in the upper left corner of the coding block, so it can represent the most optimal motion vector. Summary of the invention

[0011] In order to solve the above problems, the purpose of this application is to propose a new search method to improve the speed of sub-pixel search with high accuracy.

[0012] Specifically, the present invention provides an efficient sub-pixel search method, the method comprising the following steps:

[0013] S1, fast judgment of stationary blocks

[0014] There may be static blocks in the video sequence, so the correlation between adjacent blocks in the time domain is used to decide whether to skip the sub-pixel interpolation and motion estimation of the current block;

[0015] S2. Fast judgment and calibration of optimal area

[0016] It is only necessary to determine the area where the optimal point is located, and the process of fitting the model in the prior art can be omitted; the RDcost surface, the horizontal coordinate axis represents the coordinate of the sub-pixel point, and the vertical axis is RDcost. Assuming that the two horizontal coordinate axes are the x-axis and the y-axis, a two-dimensional RDcost curve is obtained by intercepting the plane with x=5 and y=5, and the curve intercepted by the single-peak surface must also be a single-peak curve, and the single-peak curve has the following characteristics,

[0017] If the current point is x3, and the RDcost of x2 is less than x3, then the optimal point must be in the direction of x2;

[0018] Assuming that the current point is point x2, and the RDcost of point x1 is calculated to be greater than that of point x2, it cannot be said that the optimal point is not in the direction of x1:

[0019] Using the above features, the approximate area of ​​the sub-pixel optimal point is determined according to the RDcost of the four integer pixels adjacent to the integer pixel optimal point above, below, left and right.

[0020] Since there are a lot of interference values ​​in the RDcost of integer pixels, a calibration mechanism is added to improve the accuracy of the sub-pixel optimal point area, as shown in Table 1 below. Assume that W0 is the optimal integer pixel point, points W1, W2, W3, and W4 are the integer pixels with the most adjacent integer pixels, and points S1, S2, S3, and S4 are the 1 / 4 pixel points adjacent to the optimal integer pixel. Assume that RDcost W1 <RDcost W3 , RDcost W2 <RDcost W4, the preliminary prediction sub-pixel optimal point falls in the first quadrant, and the interpolation and RDcost of S1 and S2 are calculated first. If the RDcost of one or two points S1 and S2 is greater than the RDcost of W0, the RDcost of the 1 / 4 pixel points in the opposite direction is calculated, and the area where the sub-pixel optimal point is located is determined according to the size relationship of the RDcost of the 1 / 4 pixel points; if both points S1 and S2 are smaller than W0, it is considered that the preliminary prediction area is accurate, and points S3 and S4 do not need to be calculated;

[0021] According to the experimental results, the probability that the sub-pixel optimal point falls on the integer pixel point is the highest. Therefore, assuming that the RDcost of points S1, S2, S3, and S4 are all greater than the RDcost of W0, it can be considered that W0 is the optimal point and the sub-pixel search can be exited in advance.

[0022] W1 S1 W4 S4 W0 S2 W2 S3 W3

[0023] Table 1;

[0024] S3, Regional Refinement Search

[0025] Since sub-pixel search is different from whole pixel search, each point needs to be interpolated first and then RDcost. Therefore, the sub-pixel points can be compared according to priority to see if they meet the conditions. The first point that meets the conditions is searched first. When the calculated optimal point appears at the outermost point for the first time, the search is terminated. Combined with the single-peak surface characteristics of sub-pixel RDcost, a more accurate result can be obtained by calculating RDcost 4 to 5 times on average.

[0026] Among them, the sub-pixel cost performance is determined by the following conditions, that is, the priority is from high to low:

[0027] (1) Number of interpolation calculations;

[0028] (2) Whether it is the outermost point;

[0029] (3) The number of adjacent unsearched points in the search area;

[0030] When it is not possible to determine which sub-pixel point's RDcost should be calculated first, the four sub-pixel points above, below, left, and right adjacent to the current optimal point in the sub-pixel search area are judged in pairs according to the priority of the conditions to see if the two points meet the conditions. Assuming that both points meet conditions (1) and (2), but one point meets condition (3) and the other does not, the interpolation and RDcost of the sub-pixel point that meets the conditions are calculated first.

[0031] The step S1 further includes: if the following three conditions are met at the same time, the current block is considered to be a stationary block and no sub-pixel search is required:

[0032] (1) The optimal integer pixel motion vector of the current block is (0, 0);

[0033] (2) The motion vector of the adjacent block in the time domain is (0, 0);

[0034] (3) Let colCost be the RDcost of the adjacent block in the time domain, curCost be the RDcost of the current block, and let Ratio = 0.8, satisfying the following relationship:

[0035] Ratio×CurCost <colCost。

[0036] The step S2 further includes: the specific implementation method of the calibration mechanism is:

[0037] (1) Predict the region where the optimal point is located, range 1 is the upper right corner region, range 2 is the upper left corner region, range 3 is the lower left corner region, and range 4 is the lower right corner region;

[0038]

[0039] (2) Calibrate the optimal point in the region Range_c, and give priority to calculating the two S* points under Range. The S* type points include S1, S2, S3, and S4.

[0040] ①, the RDcost of the two S* points is less than the RDcost of W0, Range_c = Range;

[0041] ② If the RDcost of two S* points is greater than the RDcost of W0, the RDcost of the S* point in the opposite direction is calculated, and Range_c is determined by the RDcost of S*;

[0042]

[0043] ③. If the RDcost of two S* points in the same direction is greater than the RDcost of W0, the area of ​​Range in that direction is used;

[0044] ④ If the RDcost calculated by S1, S2, S3, and S4 is greater than the RDcost of W0, then W0 is the sub-pixel optimal point and the search is terminated;

[0045] (3) Finally, Range_c is the area where the optimal point is located.

[0046] In step S3: as shown in Table 2 below,

[0047] The number of interpolation calculations mentioned in condition (1) means that only one interpolation calculation is required for the sub-pixel points on the horizontal and vertical axes where the integer pixels are located, such as a, b, c, d, h, l, while the interpolation calculation of the sub-pixel points on the horizontal and vertical axes where the integer pixels are located depends on the difference results of the sub-pixel points on the horizontal and vertical axes where the integer pixels are located, so two interpolation calculations are required, such as e, f, g, i, j, k, m, n, o. However, if a has been interpolated and RDcost calculated, the interpolation of a will be placed in the cache. At this time, the interpolation calculation of e, i, m can depend on the interpolation of a in the cache, so only one interpolation calculation is required at this time;

[0048] Condition (2) refers to the outermost points, such as c, g, k, o, n, m, l;

[0049] W0 a b c d e f g h i j k l m n o

[0050] Table 2.

[0051] The step S3 further includes: the specific implementation method is:

[0052] (1) Select the optimal point based on the RDcost of a and b calculated in the process of determining the optimal point area, and perform a diamond search in the area starting from the optimal point;

[0053] (2) Determine which point should be calculated first based on the cost performance of the points to be calculated;

[0054] (3) When the RDcost of the calculation point is less than the RDcost of the center point of the rhombus, the point in the same direction that is symmetrical to the calculation point about the center of the rhombus can be considered to have a RDcost greater than the RDcost of the center point of the rhombus, and the calculation is omitted;

[0055] (4) When the optimal point appears at the outermost edge for the first time, this point is the sub-pixel optimal point and the search is terminated;

[0056] Assuming that the area where the sub-pixel optimal point is located is determined in the fast judgment and calibration of the optimal point area as shown in the table, then the optimal point of the search template W0, a, d is used as the search starting point. Assuming a is the optimal point, b and e have the same cost and are calculated. Assuming e is the optimal point, i and f are judged for cost performance. If f has fewer adjacent unsearched points than i, i is calculated first, and then f is calculated. Assuming i is the optimal point and m is the outermost point, it is calculated first. If the RDcost of m is less than the RDcost of i, the search is terminated and m is the sub-pixel optimal point. Otherwise, h and j are judged for cost performance. Cost ratio judgment, h has fewer adjacent unsearched points than j, j is calculated first, assuming that j's RDcost is less than i's RDcost, according to the characteristics of the unimodal surface, h must be larger than i, so skip the calculation, assuming j is the optimal point, n only needs to calculate the interpolation once, so it is calculated first, if n's RDcost is less than j's RDcost, then n is the sub-pixel optimal point, terminate the search, otherwise calculate k's interpolation and RDcost, if k's RDcost is less than j's RDcost, then k is the sub-pixel optimal point, otherwise j is the sub-pixel optimal point.

[0057] Therefore, the advantages of the present application are: experimental results show that, on average, the method of the present application reduces the amount of interpolation calculation and cost calculation by 46% compared with the original method, and the compression efficiency loss caused is only Bitrate = +0.07%, and the image quality loss is PSNR = -0.003dB. BRIEF DESCRIPTION OF THE DRAWINGS

[0058] The drawings described herein are used to provide a further understanding of the present invention, constitute a part of this application, and do not constitute a limitation of the present invention.

[0059] Figure 1 is a schematic diagram of an existing sub-pixel search method.

[0060] Figure 2 is a schematic diagram of the process of this method.

[0061] Figure 3 It is a schematic diagram of the RDcost surface in this method.

[0062] Figure 4 It is a schematic diagram of a single-peak curve cut out from a single-peak surface in this method.

[0063] Figure 5(1) is a diagram showing the ratio of interpolation calculations in the experimental results.

[0064] Figure 5(2) is a graph showing the ratio of RDcost calculations in the experimental results. DETAILED DESCRIPTION

[0065] In order to more clearly understand the technical content and advantages of the present invention, the present invention is now further described in detail in conjunction with the accompanying drawings.

[0066] This method proposes an efficient sub-pixel search method, such as Figure 2 As shown, the method comprises the following steps:

[0067] S1, fast judgment of stationary blocks

[0068] Static blocks often appear in video sequences, so the correlation between adjacent blocks in the time domain can be used to decide whether to skip sub-pixel interpolation and motion estimation of the current block. If the following three conditions are met at the same time, the current block is considered to be a static block and no sub-pixel search is required:

[0069] (1) The optimal integer pixel motion vector of the current block is (0, 0);

[0070] (2) The motion vector of the adjacent block in the time domain is (0, 0);

[0071] (3) Let colCost be the RDcost of the adjacent block in the time domain, curCost be the RDcost of the current block, and let Ratio = 0.8, satisfying the following relationship:

[0072] Ratio×CurCost <ColCost;

[0073] S2. Fast judgment and calibration of optimal area

[0074] A large number of experiments have shown that most sub-pixel RDcost surfaces are single-peak surfaces, and the surface fitted using the RDcost of points near the optimal whole-pixel matching point is often not so accurate, but the landing area has a certain reference value. Since only the area where the optimal point is located needs to be determined, the process of fitting the model can be omitted. Figure 3 As shown in the figure, the horizontal axis represents the coordinates of the sub-pixel points, and the vertical axis is RDcost. Assuming that the two horizontal axes are the x-axis and the y-axis, a two-dimensional RDcost curve is obtained by intercepting the plane with x=5 and y=5. The curve intercepted by the single-peak surface must also be a single-peak curve, and the single-peak curve has the following characteristics, such as Figure 4 As shown in the figure, if the current point is x3, and the calculated RDcost of x2 is less than x3, then the optimal point must be in the x2 direction; if the current point is x2, and the calculated RDcost of x1 is greater than x2, it cannot be said that the optimal point is not in the x1 direction. Using the above features, the approximate area of ​​the sub-pixel optimal point can be determined based on the RDcost of the four integer pixel points adjacent to the integer pixel optimal point.

[0075] Since there are a lot of interference values ​​in the RDcost of integer pixels, a calibration mechanism is added to improve the accuracy of the sub-pixel optimal area, as shown in Table 1 below. W0 is the optimal integer pixel, points W1, W2, W3, and W4 are the integer pixels with the most adjacent integer pixels, S1, S2, S3, and S4 are the 1 / 4 pixel points adjacent to the optimal integer pixel, assuming that the RDcost W1 <RDcost W3 , RDcost W2 <RDcost W4 , the preliminary prediction sub-pixel optimal point falls in the first quadrant, and the interpolation and RDcost of S1 and S2 are calculated first. If the RDcost of one or two points S1 and S2 is greater than the RDcost of W0, the RDcost of the 1 / 4 pixel points in the opposite direction is calculated, and the area where the sub-pixel optimal point is located is determined according to the size relationship of the RDcost of the 1 / 4 pixel points; if both points S1 and S2 are smaller than W0, the preliminary prediction area is considered to be accurate, and points S3 and S4 do not need to be calculated;

[0076] W1 S1 W4 S4 W0 S2 W2 S3 W3

[0077] Table 1.

[0078] A large number of experimental results show that the probability that the sub-pixel optimal point falls on the integer pixel point is the highest. Therefore, assuming that the RDcost of points S1, S2, S3, and S4 are all greater than the RDcost of W0, it can be considered that W0 is the optimal point and the sub-pixel search can be exited early.

[0079] The specific implementation method is:

[0080] (1) Predict the region where the optimal point is located, range1 is the upper right corner region, range2 is the upper left corner region, range3 is the lower left corner region, and range4 is the lower right corner region;

[0081]

[0082] (2) Calibrate the area Range_c where the optimal point is located, and give priority to calculating the two S* points under Range (S* type points include S1, S2, S3, and S4);

[0083] ①, the RDcost of the two S* points is less than the RDcost of W0, Range_c = Range;

[0084] ② If the RDcost of two S* points is greater than the RDcost of W0, the RDcost of the S* point in the opposite direction is calculated, and Range_c is determined by the RDcost of S*;

[0085]

[0086] ③. If the RDcost of two S* points in the same direction is greater than the RDcost of W0, the area of ​​Range in that direction is used.

[0087] ④. If the RDcost calculated by S1, S2, S3, and S4 is greater than the RDcost of W0, then point W0 is the sub-pixel optimal point and the search is exited.

[0088] (3) Finally, Range_c is the area where the optimal point is located.

[0089] S3, Regional Refinement Search

[0090] Since sub-pixel search is different from whole-pixel search, each point needs to be interpolated and then RDcost calculated. Therefore, we can compare whether the sub-pixel points meet the conditions according to priority. The first point that meets the conditions is searched first, and when the calculated optimal point appears at the outermost point for the first time, the search is terminated. Combined with the single-peak surface characteristics of sub-pixel RDcost, more accurate results can be obtained with less average calculation amount (usually 4-5 times).

[0091] The cost performance of sub-pixels is determined by the following conditions (priority from high to low):

[0092] (1) Number of interpolation calculations;

[0093] (2) Whether it is the outermost point;

[0094] (3) The number of adjacent unsearched points in the search area.

[0095] When it is not possible to determine which sub-pixel point to calculate the RDcost of first, the four sub-pixels above, below, left, and right adjacent to the current optimal point in the sub-pixel search area are judged in pairs according to the priority of the conditions to see if the two points meet the conditions. Assuming that both points meet conditions (1) and (2), but one meets condition (3) and the other does not, the interpolation and RDcost of the sub-pixel point that meets the conditions are calculated first.

[0096] The number of interpolation calculations mentioned in condition (1) means that only one interpolation calculation is required for the sub-pixel points on the horizontal and vertical axes where the integer pixels are located, such as a, b, c, d, h, l, while the interpolation calculation of the sub-pixel points on the horizontal and vertical axes where the integer pixels are located depends on the difference results of the sub-pixel points on the horizontal and vertical axes where the integer pixels are located, so two interpolation calculations are required, such as e, f, g, i, j, k, m, n, o. However, if a has been interpolated and RDcost calculated, the interpolation of a will be placed in the cache. At this time, the interpolation of e, i, and m can depend on the interpolation of a in the cache, so only one interpolation is required at this time; condition (2) refers to the outermost points, such as c, g, k, o, n, m, 1; as shown in Table 2 below:

[0097] W0 a b c d e f g h i j k l m n o

[0098] Table 2.

[0099] The specific implementation method is:

[0100] (1) Select the optimal point based on the RDcost of a and b calculated in the process of determining the optimal point area, and perform a diamond search in the area starting from the optimal point;

[0101] (2) Determine which point should be calculated first based on the cost performance of the points to be calculated;

[0102] (3) When the RDcost of the calculation point is less than the RDcost of the center point of the rhombus, the point in the same direction that is symmetrical to the calculation point about the center of the rhombus can be considered to have a RDcost greater than the RDcost of the center point of the rhombus, and the calculation is omitted;

[0103] (4) When the optimal point appears at the outermost edge for the first time, this point is the sub-pixel optimal point and the search is exited.

[0104] Assuming that the sub-pixel optimal point is determined in the fast judgment and calibration of the optimal point area as shown in the figure above, the optimal point of the search template W0, a, d is used as the search starting point. Assuming a is the optimal point, b and e have the same cost and are calculated. Assuming e is the optimal point, i and f are judged for cost performance. If f has fewer adjacent unsearched points than i, i is calculated first, and then f is calculated. Assuming i is the optimal point and m is the outermost point, it is calculated first. If the RDcost of m is less than the RDcost of i, the search is terminated and m is the sub-pixel optimal point. Otherwise, h and j are judged for cost performance. Cost ratio judgment, h has fewer adjacent unsearched points than j, j is calculated first, assuming that j's RDcost is less than i's RDcost, according to the characteristics of the unimodal surface, h must be larger than i, so skip the calculation, assuming j is the optimal point, n only needs to calculate the interpolation once, so it is calculated first, if n's RDcost is less than j's RDcost, then n is the sub-pixel optimal point, terminate the search, otherwise calculate k's interpolation and RDcost, if k's RDcost is less than j's RDcost, then k is the sub-pixel optimal point, otherwise j is the sub-pixel optimal point.

[0105] In summary, the experiment mainly uses BDrate as the benchmark evaluation method. Since this method is a fast algorithm, the computational workload of the two algorithms is also calculated to evaluate the speed of the algorithm improvement. The computational workload consists of two parts: interpolation computation workload and RDcost computation workload. The computational workload ratio is shown in Figure 5(1) and Figure 5(2).

[0106] The experimental results show that, on average, the method of the present application reduces the amount of interpolation calculation and cost calculation by 46% compared with the original method, while the compression efficiency loss caused is only Bitrate = +0.07%, and the image quality loss is PSNR = -0.003dB.

[0107] The above description is only a preferred embodiment of the present invention and is not intended to limit the present invention. For those skilled in the art, the embodiments of the present invention may have various modifications and variations. Any modification, equivalent replacement, improvement, etc. made within the spirit and principle of the present invention shall be included in the protection scope of the present invention.

Claims

1. An efficient sub-pixel search method, characterized in that: The method comprises the following steps: S1, fast judgment of stationary blocks There may be static blocks in the video sequence, so the correlation between adjacent blocks in the time domain is used to decide whether to skip the sub-pixel interpolation and motion estimation of the current block; S2. Rapid judgment and calibration of optimal area It is only necessary to determine the area where the optimal point is located, which can save the process of fitting the model in the existing technology; RDcost surface, the horizontal axis represents the coordinates of the sub-pixel points, and the vertical axis is RDcost. Assuming that the two horizontal axes are the x-axis and the y-axis, a two-dimensional RDcost curve is obtained by intercepting the plane with x=5 and y=5. The curve intercepted by the single-peak surface must also be a single-peak curve, and the single-peak curve has the following characteristics: If the current point is x3, and the RDcost of x2 is less than x3, then the optimal point must be in the direction of x2; Assuming that the current point is point x2, and the RDcost of point x1 is greater than that of point x2, it cannot be said that the optimal point is not in the direction of x1; Using the above features, the approximate area of ​​the sub-pixel optimal point is determined according to the RDcost of the four integer pixel points adjacent to the integer pixel optimal point above, below, left and right; Since there are a lot of interference values ​​in the RDcost of integer pixels, a calibration mechanism is added to improve the accuracy of the sub-pixel optimal point area, as shown in Table 1 below. Assume that W0 is the optimal integer pixel point, points W1, W2, W3, and W4 are the integer pixels with the most adjacent integer pixels, and points S1, S2, S3, and S4 are the 1 / 4 pixel points adjacent to the optimal integer pixel. Assume that RDcost W1 <RDcost W3 , RDcost W2 <RDcost W4 , the preliminary prediction sub-pixel optimal point falls in the first quadrant, and the interpolation and RDcost of S1 and S2 are calculated first. If the RDcost of one or two points S1 and S2 is greater than the RDcost of W0, the RDcost of the 1 / 4 pixel points in the opposite direction is calculated, and the area where the sub-pixel optimal point is located is determined according to the size relationship of the RDcost of the 1 / 4 pixel points; if both points S1 and S2 are smaller than W0, it is considered that the preliminary prediction area is accurate, and points S3 and S4 do not need to be calculated; According to the experimental results, the probability that the sub-pixel optimal point falls on the integer pixel point is the highest. Therefore, assuming that the RDcost of points S1, S2, S3, and S4 are all greater than the RDcost of W0, it can be considered that W0 is the optimal point and the sub-pixel search can be exited in advance. Table 1; S3, Regional Refinement Search Since sub-pixel search is different from whole pixel search, each point needs to be interpolated first and then RDcost. Therefore, the sub-pixel points can be compared according to priority to see if they meet the conditions. The first point that meets the conditions is searched first. When the calculated optimal point appears at the outermost point for the first time, the search is terminated. Combined with the single-peak surface characteristics of sub-pixel RDcost, a more accurate result can be obtained by calculating RDcost 4 to 5 times on average. Among them, the sub-pixel cost performance is determined by the following conditions, that is, the priority is from high to low: (1) Number of interpolation calculations; (2) Whether it is the outermost point; (3) The number of adjacent unsearched points in the search area; When it is not possible to determine which sub-pixel point's RDcost should be calculated first, the four sub-pixel points above, below, left, and right adjacent to the current optimal point in the sub-pixel search area are judged in pairs according to the priority of the conditions to see if the two points meet the conditions. Assuming that both points meet conditions (1) and (2), but one point meets condition (3) and the other does not, the interpolation and RDcost of the sub-pixel point that meets the conditions are calculated first.

2. An efficient sub-pixel search method according to claim 1, characterized in that: The step S1 further includes: if the following three conditions are met at the same time, the current block is considered to be a stationary block and no sub-pixel search is required: (1) The optimal integer pixel motion vector of the current block is (0, 0); (2) The motion vector of the adjacent block in the time domain is (0, 0); (3) Let colCost be the RDcost of the adjacent block in the time domain, curCost be the RDcost of the current block, and let Ratio = 0.8, satisfying the following relationship: Ratio×curCost<colCost.

3. The efficient sub-pixel search method according to claim 1, characterized in that: The step S2 further includes: the specific implementation method of the calibration mechanism is: (1) Predict the region where the optimal point is located, range 1 is the upper right corner region, range 2 is the upper left corner region, range 3 is the lower left corner region, and range 4 is the lower right corner region; (2) Calibrate the optimal point in the area Range_c, and give priority to calculating the two S* points under Range. The S* type points include point S1, point S2, point S3, and point S4; ①, the RDcost of the two S* points is less than the RDcost of W0, Range_c = Range; ② If the RDcost of two S* points is greater than the RDcost of W0, the RDcost of the S* point in the opposite direction is calculated, and Range_c is determined by the RDcost of S*; ③. If the RDcost of two S* points in the same direction is greater than the RDcost of W0, the area of ​​Range in that direction is used; ④. If the RDcosts calculated for points S1, S2, S3, and S4 are all greater than the RDcost of W0, then W0 is the sub-pixel optimal point and the search is terminated. (3) Finally, Range_c is the area where the optimal point is located.

4. The efficient sub-pixel search method according to claim 1, characterized in that: In step S3: as shown in Table 2 below, The number of interpolation calculations mentioned in condition (1) means that only one interpolation calculation is required for the sub-pixel points on the horizontal and vertical axes where the integer pixels are located, such as a, b, c, d, h, l, while the interpolation calculation of the sub-pixel points on the horizontal and vertical axes where the integer pixels are located depends on the difference results of the sub-pixel points on the horizontal and vertical axes where the integer pixels are located, so two interpolation calculations are required, such as e, f, g, i, j, k, m, n, o. However, if a has been interpolated and RDcost calculated, the interpolation of a will be placed in the cache. At this time, the interpolation calculation of e, i, m can depend on the interpolation of a in the cache, so only one interpolation calculation is required at this time; Condition (2) refers to the outermost points, such as c, g, k, o, n, m, l; Table 2.

5. The efficient sub-pixel search method according to claim 4, characterized in that: The step S3 further includes: the specific implementation method is: (1) Select the optimal point based on the RDcost of a and b calculated in the process of determining the optimal point area, and perform a diamond search in the area starting from the optimal point; (2) Determine which point should be calculated first based on the cost performance of the points to be calculated; (3) When the RDcost of the calculation point is less than the RDcost of the center point of the rhombus, the point in the same direction that is symmetrical to the calculation point about the center of the rhombus can be considered to have a RDcost greater than the RDcost of the center point of the rhombus, and the calculation is omitted; (4) When the optimal point appears at the outermost edge for the first time, this point is the sub-pixel optimal point and the search is terminated; Assuming that the area where the sub-pixel optimal point is located is determined in the fast judgment and calibration of the optimal point area as shown in the table, then the optimal point of the search template W0, a, d is used as the search starting point. Assuming a is the optimal point, b and e have the same cost and are calculated. Assuming e is the optimal point, i and f are judged for cost performance. If f has fewer adjacent unsearched points than i, i is calculated first, and then f is calculated. Assuming i is the optimal point and m is the outermost point, it is calculated first. If the RDcost of m is less than the RDcost of i, the search is terminated and m is the sub-pixel optimal point. Otherwise, h and j are judged for cost performance. Cost ratio judgment, h has fewer adjacent unsearched points than j, j is calculated first, assuming that j's RDcost is less than i's RDcost, according to the characteristics of the unimodal surface, h must be larger than i, so skip the calculation, assuming j is the optimal point, n only needs to calculate the interpolation once, so it is calculated first, if n's RDcost is less than j's RDcost, then n is the sub-pixel optimal point, terminate the search, otherwise calculate k's interpolation and RDcost, if k's RDcost is less than j's RDcost, then k is the sub-pixel optimal point, otherwise j is the sub-pixel optimal point.