Method and device for conducting high quality fast search for predicted movement

FIELD: movement estimation, in particular, estimation of movement on block basis in video image compression application.

SUBSTANCE: method and device are claimed for conducting search for movement in video encoder system using movement vectors which represent difference between coordinates of macro-block of data in current frame of video data and coordinates of corresponding macro-block of data in standard frame of video data. A set of movement vector prediction parameters is received, where movement vector prediction parameters represent approximations of possible movement vectors for current macro-block, movement vector search pattern is determined and search is conducted around each movement vector prediction parameter from the set of movement vector prediction parameters using search pattern, and on basis of search result, the final movement vector is determined.

EFFECT: increased efficiency of video signals compression.

3 cl, 7 dwg

 

The technical field

The present invention relates to the field of motion estimation, in particular for motion estimation on a block basis in the application to the compression of the video image.

Prior art

Currently, the motion estimation is a key component of many technology of video compression. The goal of motion estimation is to reduce the temporal redundancy between frames of a sequence of video signals. The motion estimation algorithm predicts the image data for the frame image using one or more previously encoded image frames and future frames. A differential image is calculated by determining the arithmetic difference between the original data of the pixels (picture elements) and the corresponding predicted data of the image elements. The differential image with a large scatter indicates a small temporal redundancy between frames of the image or its absence. At the same time, the differential image with a small variance indicates a high degree of temporal redundancy between frames of the image. The difference image represents a view of the image frames with reduced temporal redundancy, which increases the coding efficiency.

One type of motion estimation algorithm is the first algorithm for motion estimation on a block basis, which operates on blocks of image data. The block of image data in the current frame is predicted by the data block from the previous frame image. The motion estimation algorithm generates a motion vector for a block of image data, which determines the location of the best matching block from the previous frame image. In the methods of video compression that information about the motion vector is compressed and transmitted or stored along with the compressed differencing data.

International standards for the compression of video signals, such as H.263, MPEG-2 and MPEG-4, allow for motion estimation on a block basis by providing syntax for defining the motion vectors. These standards do not require special algorithms for motion estimation. Within these standards compression motion estimation is calculated on the size of the base block 16×16 pixels called macroblocks. Valid processing with block sizes 8×8 pixels for motion estimation of smaller sections of the image.

Motion estimation is one of the nodes, the most CPU-intensive system of coding. There are several methods of motion estimation on a block basis, in which attempts are made to reach a compromise between computational complexity and efficiency determine the motion vector.

When the motion estimation p is the full search (FSME) conducted a comprehensive comparison of the block in the current frame image with each pixel position, located within the search window of the previously processed frame. A good degree of matching blocks at each position of the pixel is determined by measuring the distortion. A typical measure of distortion used metric matching blocks, metric is the sum of absolute differences (sad, SAD):

wherewithis the block in the current frame image andRis the block in the previous frame image. The indices m and n index the pixels within the block of N rows and M columns. Small value corresponds SAD good match blocks, and a large value corresponds SAD bad match blocks. Unfortunately, the motion estimation on the full search becomes impractical with increasing the search window.

Currently, there are several algorithms for motion estimation with low complexity. All these algorithms have drawbacks associated with either lower quality or that do not provide sufficient reduction in computational complexity. There are also several proposed algorithms for motion estimation, which provides a few superior quality at a relatively reduced complexity.

One possible approach is an approach that is based on zones. First, the predictor motion vector is (PMV) is calculated as a motion vector for the best match. Next, you search for the motion vector, following the zonal scheme, around PMV. This is followed by a similar zonal search around zero vector movement. At each step there is a criterion for the search is finished, if there is a fairly good implementation of the criterion. Unfortunately, this approach does not give consistently good results in a wide range of video sequences.

The motion estimation algorithm, called PMVFAST, very similar to the above zonal approach. However, instead of zonal scheme is used iterative scheme search for diamonds. Can be used with large or small schema search for diamonds, depending on certain criteria. Unfortunately, this approach gives very similar results when compared with the zonal approach.

The INVENTION

The claimed method and device for performing a quick search of the predicted movement in the system video encoder, by using motion estimation on a block basis. The method may include receiving a set of parameters of the prediction motion vector, where the parameter prediction motion vector may represent approximations of possible motion vectors for the current macroblock. The method may also include defining a search pattern, the search is performed around each parameter of prognosisof the of the motion vector from the set of parameters of the prediction motion vector using the search schema, and determining the final motion vector.

BRIEF DESCRIPTION of DRAWINGS

Figure 1 - block diagram of a system for the compression of video signals according to a possible variant of implementation;

Figure 2 - image of the environment surrounding the current macroblock according to a possible variant of implementation;

Figure 3 - the search schema used during the first stage, in a preferred variant embodiment;

4 is a diagram used in capture mode during the first stage, in a preferred variant embodiment;

Fig. 5 is an illustration of the search schema used during the second stage, in a preferred variant embodiment;

6 is a block diagram representing in General the implementation of the present invention according to a preferred variant embodiment; and

Fig.7. diagram of the motion estimation based on a quick search of the predicted movement, presented in the form of a flowchart, according to a possible variant embodiments.

A DETAILED DESCRIPTION of the PREFERRED EMBODIMENTS

The present invention provides improved efficiency in a wide range of video sequences. A number of improvements and new algorithmic innovations allow you to get the best quality. In fact, when averaged over multiple sequences of video signals, the present invention is superior to what even the traditional algorithm full search in the aspect of the attainable efficiency of the video compression.

All methods used in the prior art, focused on the optimization of the matching blocks, while, among other advantages, the present invention can thoroughly take into account the number of bits required for coding a sequence of video signals. The present invention can also use the nature of the movements that occur in the movies in real life.

Currently, with the rapid development of the wireless communications market, more and more requirements are imposed on the use of video encoding technology in portable devices. Most of these devices do not have the processing capabilities to perform significant computation for motion estimation. Thus, high quality, low complexity motion estimation algorithm provided by the present invention, can be extremely useful for use in such devices.

According to one variant embodiment of the present invention can be implemented in two phases. At the first stage can be considered different motion vectors of parameter prediction, and can be made search around each of the options using the fixed search schema. During the first stage, if found that a good match is unlikely to be achieved, can be selected new is th set of possible motion vectors and can be performed a new search. This can be done in order to freeze the motion of any new object that appears in the frame. In the second stage can be considered the best result of the first phase and can be performed a new search using the moving weighted search pattern in a spiral in order to achieve the best match block.

Figure 1 shows the block diagram of the system 100 of video compression for video encoder, according to one variant embodiment. System 100 compression of video signals may include circuit 110 motion estimation based on a quick search of the predicted movement, the circuit 115 motion compensation, the adder 120, the circuit 125 discrete cosine transform (DCT DCT), a quantizer 130, the encoder 135 encoded with variable length (VLC), the inverse quantizer 140, the circuit 145 inverse discrete cosine transform (ODCP, IDCT), another adder 150 and circuit 155 of the previous frame.

In the process, the motion estimation is calculated for blocks of image data of the current frame image using one or more previously processed image frames. Scheme 110 motion estimation generates a motion vector corresponding to the processed block. Scheme 115 motion compensation generates a block prediction from the previous frame using the calculated motion vectors. A differential image is calculated by the adder 120 by subtracting the predicted image data from data of the current frame image. This differential image is converted using the scheme 125 DCT. While the circuit 110 motion estimation and circuit 115 motion compensation are used to reduce temporal redundancy between frames of the image, the circuit 125 DCT is used to reduce spatial redundancy within a frame. Then the precision of the DCT coefficients is reduced by the quantizer 140. The quantizer 140 increases the compression ratio, making numerical losses. The quantized DCT coefficients are then encoded by the encoder 135 encoded with variable length (VLC) and transmitted in a compressed bit stream of video data along with the motion vectors. The local recovery circuit formed by the reverse quantizer 140, ODCP 145 and the adder 150. The inverse quantizer 140 restores the DCT coefficients. Parameter ADCP 145 converts the DCT coefficients back into the spatial region for forming a quantized differential image. Restored frame is calculated by the adder 150 by summing the compensated data movement with quantized differential image. These recovered data is then stored in the schema 155 of the previous frame for use in subsequent image frames.

The operation of the circuit 110 and motion estimation based on a quick search of the predicted movement may consist of the C two stages. In the first stage, a small search can be made around several parameters of the prediction motion vector. These parameters prediction motion vector (LDPE, MVP) can be found from other motion vector VD, MV). For the original definitions VD is the difference in the coordinates of the data block in the current frame of video data and a data block in the reference frame with which it is compared. VD has two components: X and Y. the Value of VD is described as an ordered pair (X,Y). Parameters LDPE is VD, which are used as a good "guess" about the best VD when performing the comparison. A macroblock (MB, MB) is a block of data of size 16×16 within the frame image. MB can also refer to a block of data of various sizes (for example, 8×8, 4×8, 4×4, 16×8 and so on) without loss of generality.

One parameter for the prediction of the motion vector may be based on the zero motion vector. Parameter prediction motion vector based on the particular motion vector may determine a parameter of the prediction motion vector as equal to this specific motion vector, the zero motion vector is a motion vector with coordinates (0,0). The second parameter of the prediction motion vector may be based on the motion vector ibid located macroblock in the previous the frame.

Figure 2 presents an illustration of the location of the current macroblock and the neighboring macroblock used to determine the additional motion vectors. So, the third parameter of the prediction motion vector may be based on the motion vector of the macroblock to the left of the current macroblock. The fourth parameter of the prediction motion vector may be based on the motion vector of the macroblock from the top, or above the current macroblock. The fifth parameter prediction motion vector may be based on the motion vector of the macroblock above and to the right of the current macroblock. The sixth parameter of the prediction motion vector may be based on the median motion vector of the third, fourth, or fifth parameter prediction motion vectors. This parameter prediction of the median motion vector may be calculated independently for X and Y component of the motion vector.

The seventh parameter of the prediction motion vector may be based on the resulting estimates the global motion vector. This global motion vector is estimated by circuit 110 motion estimation as averaging over all final motion vectors of the previous frame for which the value of the metric difference was below a certain threshold POROG. The metric difference can be metre the second sum of absolute differences, metric is the sum of squared differences metric modified sum of absolute differences or any other suitable metric. In a preferred variant embodiment, the selected value POROG is expressed by the formula:

POROG = SAD1 + DEVIATION

where the VARIANCE can be nominally set at 500,

SAD1 is given by the equation

Here m and n is the index of the pixel. M and N is the block size. For the considered example of macroblock M=N=16. The global motion vector can also be determined by other means, such as motion sensors on the cameras, other algorithms or any other means for determining the global motion vector.

Additional nodes of the prediction motion vector may be determined based on the result of motion estimation performed for the same macroblock, but on the other previously coded frame.

Thus, the circuit 110 of the motion estimation can determine the global motion vector by using the average of all final motion vectors in the previous frame for which the metric difference is below a certain threshold. In particular, the circuit 110 of the motion estimation can determine the global motion vector by calculating the metric difference for each of the final motion vectors in the previous frame is, comparing the metric difference for each of the final motion vectors in the previous frame with a predetermined threshold and determining a global motion vector based on each of the final motion vectors in the previous frame, the metric value of the difference is below a threshold value.

Can be searched for all VD within a small area around each parameter prediction motion vector (EDT). Then as a possible form of VD for the second stage can be selected VD with the lowest metric of the Modified Sum of Absolute Differences (MCAP, MSAD). Metric MCAP defined below. Thus, the circuit 110 of the motion estimation can search predictable movement by finding the set of parameters of the prediction motion vector and the prediction motion vector represent approximate values of possible motion vectors for the current macroblock, the schema definition of the search, searching around each parameter prediction motion vector from the set of parameters of the prediction motion vector using the search pattern, and determining a final motion vector. Diagram of the motion estimation can further calculate the metric difference, representing the quality of the matching macroblocks, and IU the Rick difference can be metric as the sum of absolute differences, metric is the sum of squared differences or any other metric that is suitable for the motion estimation.

The estimated search around each parameter LDPE is shown in Figure 3. As shown, the search schema may be more extended in the horizontal direction than in the vertical direction. You can use the fact that in most video real life more motion and changes in motion occurs in the horizontal direction.

If after evaluation of the first six of the best motion vectors VD has a metric value MCAP higher than the threshold value POROG, the first stage can move in capture mode.

In a preferred variant embodiment POROG is determined by the formula:

POROG = 4* MMSADAVG,

MMSADAVG = Average of all MMSAD(MSAR) (i.e. the values of the MCAP best VD) of the previous frame.

In the capture mode can be considered additional options LDPE, such as shown in Figure 4. For example, these 8 points can be the following:

(-12,0) (12,0) (0,-1) (0,9) (-6,4) (6,4) (6,-4) (-6,-4)

Search around each of the parameters LDPE is performed using the same search pattern, which is shown in figure 3. In a preferred variant of embodiment 4 of the 8 parameters of LDPE can be considered for a macroblock. For the first macroblock are considered the first 4. For the next macroblock systems what are the other 4 parameter LDPE etc. This can be done to reduce the number of calculations.

The purpose of the capture mode is to detect any new object that is moving fast in the area displayed on the screen. Under this scenario, the parameters LDPE, based on the motion vectors in the neighboring areas that are not working. Use 8 new points increases the chance of getting a good coordination of the motion vectors. These 8 points can be selected with a preference for the horizontal direction, as is often the movement is largely carried out in this direction.

Thus, the circuit 110 of the motion estimation can search around each parameter prediction motion vector from the set of parameters of the prediction motion vector using the search schema, to determine the best motion vector having the value of the metric difference is higher than a predefined threshold value, and to implement the circuit search around a new set of prediction motion vector.

In the first stage, when installed schema search around the parameter of LDPE can be used the criterion of early exit to end the search for this parameter EDT. The search can be completed, if the value MCAP obtained for VD is higher than the current minimum MCAP (MSAR) threshold THRESHOLD(THRESHOLD)3, i.e. if (MCAPi> (MCAR + POROG)). Where ACI is iit MCAP obtained for the i-th parameter EDT, MSAR is the minimum value of all values MCAP received to date for the current VD. In particular, this value MCAP for the best VD. In a preferred variant embodiment, the value POROG can be selected approximately 768.

Thus, the circuit 110 of the motion estimation can implement the search schema for the parameters of the prediction motion vector, to determine the current value of the metric difference for the current motion vector, compare the current value of the metric difference with the previous minimum metric difference, to set new minimum metric difference, if the current metric difference is lower than the previous minimum metric difference, to complete the search schema, if the metric difference exceeds the previous minimum metric to a predetermined value.

Then, among all VD generated in the first stage, VD is selected, which gives the lowest metric value MCAP, and this becomes the start point of the second stage.

The second step is to select the best VD from the first stage (i.e. the one which gives the lowest value MCAP) and searched around this VD. For example, the search may be performed according to the scheme shown in Figure 5. The search schema can begin with the center and unwind in a spiral in the sequence shown on Figure 5 in the form in which sledovatelnot numbers. As only the best VD is found (i.e. VD, which gives the lowest value MCAP), the search schema is centered around the new VD and spiral search schema from the beginning. This process continues until one of three conditions:

CONDITION 1: the Value MCAP below a threshold POROG defined by the formula:

POROG = A *Q + B

Where Q is the magnitude of the quantization step used by the encoder for the current VD, a and b - constants. In a preferred variant embodiment of A=8 and B=0.

CONDITION 2: the Maximum number of possible N has already been addressed in stage 2. In a preferred variant of embodiment N=30.

CONDITION 3: No improvement in the minimum value MCAP (MSAR) during the last M possible options VD. Here M is a function of the index position of the last possible option VD in the spiral search schema. For example, the search starts at index 0. He then spiral around points 1, 2, 3,... as soon As we find the best VD, the search schema in a spiral centered around this new VD and the index starts from 0 again. This index is used to determine the value of M. In a preferred variant of embodiment M is selected from the set of values {4,4,4,4,4,4,4,4,4,5,5,5,5,6,6,6,6,7,7,7,7,7,7,8,8,8,8,8,9,9} on the basis of the index.

The best VD at the end of the second stage is selected as the best VD for a macroblock. This HP can the be further refined at a later stage with a precision of half pixels, quarter pixel or higher accuracy using well-known methods.

As mentioned above, the search schema may be selected to provide a broader coverage in the horizontal direction than in the vertical direction.

Metric MCAP may be preferred characteristic of the invention. Although the metric is modified sum of differences gives preferred results, any metric difference can be used in each alternative embodiment of the present invention, requiring the metric's definition of the sum of absolute differences metric modified sum of differences or any other metric differences. Metric MCAP is a function of the sum of absolute differences (sad), described above, evaluate possible options VD, and the motion vector of parameter prediction (SDT). TTP usually used by the encoder during the encoding of the final motion vector. The final motion vector is encoded as the difference relative to the TTP, which is different from the EDT. For example, it may be unambiguous VD defined within the standards N, n, MPEG-1, MPEG-2 and MPEG-4 for coding motion vectors. SAR is the metric that is used in the classical algorithms of motion estimation as described above.

The macroblock data of the SDT and for a possible version of the motion vector is VD MCAP is determined by the formula:

MCAP = RAA + Offset,

where the Offset is any value based on the metric of the difference between the VD and the SDT. For example,

MCAP = RAA + * (| VDx- Varx| + | VDy- Vary|)

where RAA is the classical metric that is used for matching the blocks previously defined, VDxandVDyis the x and y components of a possible variant of the motion vector, varxand varyis the x and y components of the SDT, and With a constant. In a preferred variant embodiment With approximately equal 5. TTP usually remains fixed for all possible options in MB, while VD is changed.

Metric MCAP is independent of the motion estimation algorithm and can be used, providing the advantages of almost all algorithms. The advantage of the new metric is to reduce the number of bits required to encode the motion vectors by shifting algorithm in the direction of the SDT, thereby improving the overall efficiency of the compression.

MCAP for the zero motion vector VD = (0,0), is considered as a special case. Zero VD could potentially lead to increased compression efficiency. But this can happen only if the resulting macroblock is encoded in the "not coded" mode within the standards N, n, MPEG-1, MPEG-2 and MPEG-4.

This can bituthene by shifting the RAA in the case when it is below a certain threshold:

If (cap < POROG)

MCAP =RAA - PARAG

Otherwise

MCAP = RAA + *(|varx| + |vary|)

End if

S, varxand varyare as described previously.

POROG = D*Q +E

POROG = F

where Q is the magnitude of the quantization step, D, E and F are constants. In a preferred variant of embodiment D is approximately equal to 128, E=0, and F is approximately equal to 100.

Thus, the circuit 110 of the motion estimation can calculate the metric difference, calculate the offset based on the motion vector for parameter prediction and the possible option of a motion vector to determine a modified metric difference metric difference and the offset.

In the search field search various LDPE can overlap, leading to repetitive possible motion vectors. Can be supported to register all possible already evaluated options and they are not taken into account, if they have already been considered.

Depicts the sequence of the search are the ones that are used in a preferred variant embodiment. They were optimized to obtain a good match in the shortest time possible in a wide range of video sequences. You may also use the existence of alternative search schemas.

The open invention does not make any assumptions about the range of the motion vector. Any restriction on the values of the motion vector can be mapped on its possible, and if they are outside the acceptable range, they can be rejected.

In the second stage, the preferred variant embodiment of centering the search schema in a spiral can be changed to obtain a new best fits possible option VD. Thus, the following point that should be evaluated, may not be known in advance. The following potentially estimate the possible option depends on the outcome of the current possible choices. Therefore, it may become difficult to perform calculations MCAP several possible variants in parallel (which may be desirable in some hardware architectures). To facilitate this task, the search schema can be re-centered after evaluating a set of possibilities, enabling parallel processing of this set.

Figure 6 shows the block diagram 600 representing the operation of the circuit 110 motion estimation according to one variant embodiment. At step 610 starts the operation of the flowchart. At step 620, the circuit 110 of the motion estimation comprises many options, forecasting, etc) the RA movement. At step 630 circuit 110 motion estimation determines the search schema. At step 640, the circuit 110 motion estimation searches around each parameter prediction motion vector. At step 650, the circuit 110 motion estimation determines a final motion vector. At step 660, the circuit 110 motion estimation issues the final motion vector.

Figure 7 presents a diagram 110 motion estimation based on a quick search of the predicted movement according to a possible variant embodiment. Scheme 110 motion estimation may include block 710 storage parameter prediction motion vector, block 710 schema definition search unit 730 set search parameters motion block 740 to determine the final motion vector. Scheme 110 motion estimation may also include block 750 to determine the global motion vector, block 760 capture mode, block 770 complete schematic and block 780 calculate the modified sum of absolute differences. These units operate according to the corresponding functions described above.

According to another variant embodiment of the way of fast search of the predicted movement can be carried out in two stages. At the first stage can be calculated 7 possible settings LDPE as described above. Then, for each parameter LDPE can be evaluated all the options VD in the accordance with the scheme search shown in Figure 3, and can be used as exit criteria for exit from EDT or switch to capture mode. Further, in the capture mode, can be searched for in and around the parameter of LDPE, depicted in Figure 4 using the same search pattern, as in figure 3, and the same criterion release. Then, in the second stage, may be the best VD of the data from the first stage and the search can be performed in a spiral, as shown in Figure 5. The spiral can be re-centered and installed in its original state, the index can be set to zero, as found best agreement. Finally, the process can be continued until you are one of the three criteria exit.

According to another variant embodiment of the present invention provides a method for performing a quick search of the predicted movement in a video encoder system using motion estimation on a block basis. The method may include defining a set of parameters of the prediction motion vector, the implementation of the search pattern, at least on one of the many parameters of the prediction motion vector, determining the best motion vector having the value of the metric difference is higher than a predefined threshold value, and the implementation of the new scheme search around a new set of parameters vector prediction of the movement is of. The implementation phase of the new scheme of the search may include the implementation of the new scheme search around a new set of prediction motion vector based on the best motion vector. New search schema can be largely shifted in the horizontal direction than the vertical direction.

According to another variant embodiment of the present invention can provide a method to perform a quick search of the predicted movement in a video encoder system using motion estimation on a block basis. The method may include the implementation of a search pattern around the parameter of the prediction motion vector, determining the current value of the metric difference for the current motion vector, compares the current value of the metric difference with the previous minimum metric difference, the establishment of a new minimum metric difference, if the current value of the metric difference below the previous minimum metric difference, and the completion of the search schema, if the metric value of the difference exceeds the previous minimum metric to a predetermined value.

According to another variant embodiment of the present invention can provide a method to perform a quick search of the predicted movement in a video encoder system using motion vectors representing the difference between the CCW is dinatale macroblock data in the current frame image data and the coordinates corresponding macroblock data in the reference frame of image data. The method may include defining a search pattern, which is more extended in the horizontal direction than in the vertical direction, the execution of the possible search options based on specified search pattern and determining the final motion vector.

The open invention can provide a high degree of compression efficiency with a low level of complexity. The difficulty may be similar to the complexity of the algorithms APDZS and PMVFAST. However, the achieved quality is higher. When compared with the standard algorithm full search, which is a standard adopted by the industry, the present invention is approximately 0.6% better compression efficiency at a fixed quality video. This result is obtained by averaging over 24 different sequences of video format QCIF.

The present invention can be used in the encoders of real-time in portable devices. The typical bandwidth of such encoded video signal is within the range from 32 to 512 kbit/s, and the typical size of the video is QCIF and CIF.

The method according to the present invention preferably is executed on a programmable processor. However, the system 100 video compression scheme 110 motion estimation based on a quick search predictable movement the Oia and other items can also be run on the General-purpose computer or special purpose computer, the programmed microprocessor or microcontroller and peripheral elements of the integrated circuit, ASIC (ASIC), or other IP, in electronic or logic circuits hardware, such as discrete, programmable logic device such as PLD, PLA, FPGA or PAL, or the like. In General, any device that contains a state machine capable of implementing the flowcharts shown in the drawings, and described methods may be used to perform the functions of the processor in this invention.

Although the invention is described with reference to specific versions of its embodiments, it should be clear that many alternatives, modifications, and changes will be obvious to specialists in this field. For example, the various components of variations of the embodiments can be mutually replaced, added or substituted in other embodiments of the incarnation. Accordingly, it is assumed that the preferred variants of the embodiment of the invention, as they are here set forth are illustrative and not restrictive. Various changes may be made without departure from the essence and scope of the present invention.

1. How to search the predicted movement in a video encoder system using motion vectors representing the difference between the coord. is Tami macroblock data in the current frame of video data and coordinates of the corresponding macroblock data in the reference frame of video data, namely, that receive at least three parameters of the prediction motion vector and the prediction motion vector represent approximations of possible motion vectors for the current macroblock; define the search schema; after receiving all of the above, at least three parameters of the prediction motion vector search around each parameter prediction motion vector, at least, of the three parameters of the prediction motion vector using the search schema and determine the final motion vector.

2. The method according to claim 1, additionally containing the metric calculation, the difference representing the quality of the matching macroblocks.

3. The method according to claim 2, in which the metric difference is, at least one of the metrics of the sum of absolute differences and metrics of the sum of squared differences.

4. The method according to claim 1, in which at least three parameters of the prediction motion vector include the estimated global motion vector.

5. The method according to claim 4, in which the estimated global motion vector represents the average value of all final motion vectors in the previous frame for which the metric value of the difference is below a certain threshold.

6. The method according to claim 4, in which assessed global ve the tor movement is determined by that calculates the metric difference for each of the final motion vectors in the previous frame; comparing the metric difference for each of the final motion vectors in the previous frame with a predetermined threshold and determine a global motion vector based on each of the final motion vectors in the previous frame with the value of the metric difference is below the threshold value.

7. The method according to claim 1, wherein the step of searching further comprises the following steps: conduct a search around each parameter prediction motion vector, at least, of the three parameters of the prediction motion vector using the search schema; determine the best motion vector having the value of the metric difference is higher than a predefined threshold value, and perform the search schema around a new set of prediction motion vector.

8. The method according to claim 1, wherein the step of searching further comprises the following steps: perform the search schema for the parameters of the prediction motion vector; determine the current value of the metric difference for the current motion vector; comparing the current value of the metric difference with the previous minimum metric difference; establish new minimum metric difference, if the current value of the metric difference is below the pre is yumega minimum metric difference; and complete the search schema, if the metric value of the difference exceeds the previous minimum metric to a predetermined value.

9. The method according to claim 1, additionally containing the following steps: compute the metric difference; calculate the offset based on the prediction motion vector and the possible option of a motion vector, and determines a modified metric difference metric difference and the offset.

10. The method according to claim 1, wherein the step of determining the search schema further comprises defining a search pattern, which is more extended in the horizontal direction than in the vertical direction.

11. The method according to claim 1, in which at least three parameters of the prediction motion vector include a zero motion vector.

12. The method according to claim 1, in which at least three parameters of the prediction motion vector includes a motion vector of identically located macroblock from the previous frame.

13. The method according to claim 1, in which at least three parameters of the prediction motion vector includes a motion vector of the macroblock located to the left of the current macroblock.

14. The method according to claim 1, in which at least three parameters of the prediction motion vector includes a motion vector of the macroblock located above the current macroblock.

15. The method according to the .1, in which at least three parameters of the prediction motion vector includes a motion vector of the macroblock located above and to the right of the current macroblock.

16. The method according to claim 1, in which at least three parameters of the prediction motion vector include the median motion vector resulting from the median horizontal and vertical coordinates of the motion vector of the macroblock located to the left of the current macroblock, the motion vector of the macroblock located above the current macroblock and the motion vector of the macroblock located above and to the right of the current macroblock.

17. Device to perform a quick search of the predicted movement in a video encoder system using motion vectors representing the difference between the coordinates of the macroblock data in the current frame of video data and coordinates of the corresponding macroblock data in the reference frame of video data containing the input current macroblock image; diagram of motion estimation based on a quick search of the predicted movement associated with the input macroblock of the current image, comprising a storage unit parameters of the prediction motion vector, the block defining a search pattern, designed to determine the search pattern, the search block, at least for the three parameters prediction in Chora movement, associated with the block storage parameters of the prediction motion vector and the block schema definition of the search, the search block, at least for the three parameters of the prediction motion vector is made searchable around each parameter prediction motion vector from at least three for the current macroblock using the search schema after receiving at least three parameters of the prediction motion vector, and a unit for determining the final motion vector; and an output motion vector.

18. The device according to 17, further containing block motion compensation associated with the scheme of motion estimation based on a quick search of the predicted movement, and an adder connected to the input of the current macroblock image and associated with the block motion compensation.

19. The device according to p, optionally containing block discrete cosine transform associated with the adder; and a quantizer associated with the block discrete cosine transform.

20. The device according to 17, in which the scheme of motion estimation based on a quick search of the predicted movement further comprises a block defining a global motion vector.

21. The device according to 17, in which the scheme of motion estimation based on a quick search of the projected additional movement is but contains the block capture mode.

22. The device according to 17, in which the scheme of motion estimation based on a quick search of the predicted movement further comprises the block finishes executing the search schema, if the metric value of the difference exceeds the previous minimum metric to a predetermined value.

23. The device according to 17, in which the scheme of motion estimation based on a quick search of the predicted movement further comprises a detection circuit of the modified sum of absolute differences.

24. The device according to 17, in which the storage unit parameters prediction motion vector stores a set of parameters of the prediction motion vector.

25. The device according to 17, wherein a set of parameters of the prediction motion vector includes a zero motion vector.

26. The device according A.25, in which many parameters of the prediction motion vector includes a motion vector of identically located macroblock from the previous frame.

27. The device according A.25, in which many parameters of the prediction motion vector includes a median motion vector resulting from the median horizontal and vertical coordinates of the motion vector of the macroblock located to the left of the current macroblock, the motion vector of the macroblock located above the current macroblock and the motion vector is of the macroblock, located above and to the right of the current macroblock.

28. The mobile communication device containing a device to perform a quick search of the predicted movement in a video encoder system using motion vectors representing the difference between the coordinates of the macroblock data in the current frame of video data and coordinates of the corresponding macroblock data in the reference frame of video data containing the input current macroblock image; the scheme of assessment data based on a quick search of the predicted movement associated with the input current macroblock image, which includes the storage unit parameters prediction motion vector, the block defining a search pattern, designed to determine the search pattern, the search block many parameters of the prediction motion vector associated with block storage parameters of the prediction motion vector and block schema definition of the search, and the search block many parameters of the prediction motion vector is made searchable around each parameter prediction motion vector from the set of parameters of the prediction motion vector of the current macroblock using the search schema after receiving numerous parameters of the prediction motion vector, and a unit for determining the final vector movement is to be placed; and the output data of the motion vector.



 

Same patents:

FIELD: video encoding, in particular, methods and devices for ensuring improved encoding and/or prediction methods related to various types of video data.

SUBSTANCE: the method is claimed for usage during encoding of video data in video encoder, containing realization of solution for predicting space/time movement vector for at least one direct mode macro-block in B-image, and signaling of information of space/time movement vector prediction solution for at least one direct mode macro-block in the header, which includes header information for a set of macro-blocks in B-image, where signaling of aforementioned information of space/time movement vector prediction solution in the header transfers a space/time movement vector prediction solution into video decoder for at least one direct mode macro-block in B-image.

EFFECT: creation of improved encoding method, which is capable of supporting newest models and usage modes of bi-directional predictable (B) images in a series of video data with usage of spatial prediction or time distance.

2 cl, 17 dwg

FIELD: compensation of movement in video encoding, namely, method for encoding coefficients of interpolation filters used for restoring pixel values of image in video encoders and video decoders with compensated movement.

SUBSTANCE: in video decoder system for encoding a video series, containing a series of video frames, each one of which has a matrix of pixel values, interpolation filter is determined to restore pixel values during decoding. System encodes interpolation filter coefficients differentially relatively to given base filter, to produce a set of difference values. Because coefficients of base filter are known to both encoder and decoder and may be statistically acceptably close to real filters, used in video series, decoder may restore pixel values on basis of a set of difference values.

EFFECT: efficient encoding of values of coefficients of adaptive interpolation filters and ensured resistance to errors of bit stream of encoded data.

5 cl, 17 dwg

FIELD: video decoders; measurement engineering; TV communication.

SUBSTANCE: values of motion vectors of blocks are determined which blocks are adjacent with block where the motion vector should be determined. On the base of determined values of motion vectors of adjacent blocks, the range of search of motion vector for specified block is determined. Complexity of evaluation can be reduced significantly without making efficiency of compression lower.

EFFECT: reduced complexity of determination.

7 cl, 2 dwg

The invention relates to the field of digital signal processing

The invention relates to the formation, transmission and processing of the television program guide for broadcast television service

The invention relates to the field of digital signal processing
The invention relates to the field of digital signal processing image and can be used when transmitting video over narrowband communication channels and implementing quick view large archival databases

FIELD: engineering of systems for encoding digital video signals, in particular, indication of values of quantization parameters in video encoding system.

SUBSTANCE: method and device for encoding a digital video series are claimed, where indication of quantization parameter is given out in encoded bit stream for use during decoding. Indication of information concerning the quantization parameter is ensured by insertion of SQP value - series level quantization parameter value. In particular, instead of encoding absolute values of parameters of quantization of image/section, indication of difference ΔQP between series level quantization parameter SQP and QP of image/section, is given out.

EFFECT: increased efficiency when encoding digital video signals and reduced speed of data transmission in bits.

4 cl, 8 dwg

FIELD: optics.

SUBSTANCE: method of optical registration of process, changing in time, is realized due to frame-by-frame shooting of digital camera with CCD array to get time dependence of at least one cinematic characteristic of tested process. During frame-by-frame shooting, registration is carried out in area of one or row of spatially fixed fragments of field of any frame. Video camera reads out information at any field from those columns or lines of CCD array only which are disposed in field of specified fragment. After that images of any registered fragment are combined to get time dependence in form of time-base.

EFFECT: improved reliability.

5 cl, 3 dwg

FIELD: method for interpolating values of sub-pixels during encoding and decoding of data.

SUBSTANCE: method of interpolation during video data encoding is claimed, which features an image, containing pixels ordered in rows and columns and represented by values having given dynamic range, where pixels in rows are in integral horizontal positions, and pixels in rows are in integral vertical positions, which image is interpolated in such a way that values of sub-pixels are generated in fractional horizontal and vertical positions, aforementioned method containing following stages: a) when values are required for sub-pixels in half-integral horizontal positions and integral vertical positions and in integral horizontal positions and half-integral vertical positions, such values are interpolated directly using weighted sums of pixels located in integral horizontal and integral vertical positions; b) when values are required for sub-pixels in half-integral horizontal positions and half-integral vertical positions, such values are interpolated directly using a weighted sum of values for sub-pixels located in half-integral horizontal positions and integral vertical positions, computed in accordance with stage a); and c), when values are required for sub-pixel in quaternary horizontal position and quaternary vertical position, such values are interpolated by averaging of at least one pair from first pair of values of sub-pixel located in half-integral horizontal position and half-integral vertical position, and of sub-pixel, located in integral horizontal position and integral vertical position, and second pair of values of pixel, located in integral horizontal position and integral vertical position, and of sub-pixel, located in semi-integral horizontal position and semi-integral vertical position.

EFFECT: creation of improved method for interpolating values of sub-pixels during encoding and decoding of data.

13 cl, 26 dwg, 2 tbl

FIELD: observation of moving objects.

SUBSTANCE: method includes using movement sensors, capable of recording two-dimensional distributions of intensity in form of images, where sensors are positioned with known spatial orientation, making it possible to perform simultaneous observation of one and the same scene, periodical query of sensors is performed during whole time period after their enabling, processing and analysis of data received from sensors is performed, which constitutes series of images, and output signal is generated in case of detection of three-dimensional moving object and determining of its spatial position, which signal is injected into output device.

EFFECT: increased trustworthiness when determining spatial position of a moving object.

3 cl, 1 dwg

FIELD: systems for automatic video surveillance of an object.

SUBSTANCE: system for automatic detection and tracking of individuals on basis of images and biometric identity recognition based on target list, realizes following operations: on basis of three-dimensional data about scene and two-dimensional data, characterizing optical flow, detection of objects-noises of scene is performed, static background objects are selected, and regular dynamic object-noises; on basis of comparison of two-dimensional and two-dimensional data about the scene in current frame with reference data on previous frames and a map of object-noises changes are determined on a scene, in three-dimensional zones of interest, preliminary check of presence of human-like objects is performed, zones of interest are determined more precisely and their changes are tracked: a contour of separate elements of human body is singled out, zones of interest are divided onto a set of sub-zones of interest for elements, detection of three-dimensional head of individual is performed and it is tracked in each zone of interest; face of individual is tracked in each zone of interest; images of detected face are normalized in terms of dimensions, angles and brightness; recognition is performed.

EFFECT: objectivity and stability of system operation.

1 dwg

FIELD: video encoding, in particular, methods and devices for ensuring improved encoding and/or prediction methods related to various types of video data.

SUBSTANCE: the method is claimed for usage during encoding of video data in video encoder, containing realization of solution for predicting space/time movement vector for at least one direct mode macro-block in B-image, and signaling of information of space/time movement vector prediction solution for at least one direct mode macro-block in the header, which includes header information for a set of macro-blocks in B-image, where signaling of aforementioned information of space/time movement vector prediction solution in the header transfers a space/time movement vector prediction solution into video decoder for at least one direct mode macro-block in B-image.

EFFECT: creation of improved encoding method, which is capable of supporting newest models and usage modes of bi-directional predictable (B) images in a series of video data with usage of spatial prediction or time distance.

2 cl, 17 dwg

FIELD: mobile robot, such as cleaner robot, and, in particular, device for tracking movement of mobile robot.

SUBSTANCE: suggested device for tracking movement of mobile robot includes: video camera for filming an individual object; unit for tracking movement and creation of image for setting support one in an image for current moment by means of filming of individual object by video camera and creation of image in current moment, for which support zone is set; unit for selecting image of difference of pixels of image support zone limit based on difference between pixels present only at limit of support zone of aforementioned images; and micro-computer for tracking movement of separate object on basis of selected image of difference.

EFFECT: decreased time of pixel comparison operation and increased efficiency of room perception.

5 cl, 4 dwg

FIELD: system for encoding moving image, in particular, method for determining movement vector being predicted, of image block in B-frame in process of decoding of moving image.

SUBSTANCE: in accordance to method, at least one movement vector is produced for at least one block, different from current block, while aforementioned at least one block is related to one, at least, supporting frame in a row of supporting frame, movement vector is predicted for current block on basis of received one, at least, movement vector, while prediction operation includes also operation of comparison of value of order number of B-frame to value of order number of one, at least, supporting frame, while movement vector for current block and aforementioned one, at least, movement vector are vectors of forward movement.

EFFECT: increased efficiency.

2 cl, 1 dwg

FIELD: technology for processing images of moving objects, possible use, in particular, in theatric art, show business when registration/recording is necessary or repeated reproduction of scenic performance.

SUBSTANCE: method includes inserting enumeration system for each object and performing projection of enumerated objects onto plane, while projection is displayed in form of graph with trajectories of movement of enumerated objects in each staging.

EFFECT: spatial-temporal serial graphic display of scenic action for its further identification and repeated reproduction.

2 dwg

FIELD: device and method for recognizing gestures in dynamics from a series of stereo frames.

SUBSTANCE: method includes producing a series of stereo-images of object, on basis of which map of differences in depths is formed. System is automatically initialized on basis of probability model of upper portion of body of object. Upper portion of body of object is modeled as three planes, representing body and arms of object and three gauss components, representing head and wrists of object. Tracking of movements of upper part of body is performed with utilization of probability model of upper part of body and extraction of three-dimensional signs of performed gestures.

EFFECT: simplified operation of system, high precision of gesture interpretation.

3 cl, 12 dwg

FIELD: television.

SUBSTANCE: support frame is assigned with sign, showing information about direction of support frame, and during determining of predicted vector of movement of encoded block averaging operation is performed with use of vectors of movement of neighboring blocks, during which, if one of aforementioned blocks has movement vectors, information about direction of support frames is received, to which these movement vectors are related, and one of movement vectors is selected with reference to received information about direction, than averaging operation is performed with use of selected movement vector to receive subject movement vector of encoded block.

EFFECT: higher precision, higher reliability.

3 cl, 1 dwg, 3 ex

Up!