Controlling deblocking filtering

FIELD: physics, video.

SUBSTANCE: invention relates to controlling filtering and particularly to controlling deblocking filtering on block boundaries in a video frame. A block-specific filter decision value is calculated for a pixel block in a video frame. If the block-specific filter decision value is below a block-specific threshold, each line or column in the block is individually processed in order to select between a strong and a weak deblocking filter. A respective line-specific filter decision value is thereby calculated for each row or column in the block and compared to a line-specific threshold. If the line-specific filter decision value calculated for a row or column is below the line-specific threshold a strong deblocking filter is selected for the row or column, otherwise a weak deblocking filter is instead selected to combat any blocking artefacts.

EFFECT: high efficiency of deblocking filtering by eliminating or reducing blocking artfacts.

11 cl, 11 dwg

 

The technical field TO WHICH the INVENTION RELATES

The present invention relates to the management of filtration and, in particular, to the management delacroy filtering at the boundaries of blocks in the video frame.

The LEVEL of TECHNOLOGY

Encoding the video frames may introduce block artifacts in coded data. Similar blocky artifacts mainly arise from the discrete cosine transformation encoding interframe error (intra) and intraframe (inter) predictions. As a result, for the viewer during recovery may become visible inhomogeneities at the boundaries between blocks. Another known source of blocking artifacts is the prediction with motion compensation.

The traditional approach to combat this type of block artifacts is the use of delacroy filtration. In the prior art for encoding, for example, in H. 264, cyclical filtering with adaptive deblocker filter is performed after the prediction and residual encoding, but before saving the recovered frame for later use in encoding subsequent frames, see List et al., Adaptive Deblocking Filter, IEEE Transactions on Circuits and Systems for Video Technology, 2003, 13(7):614-619. Cyclical filtering consists of decisions about filtering, filtering operations, the functions of clipping and changes of pixel values. Decisions� about exercise or no filtering of the border, is made on the basis of an assessment of multiple conditions. The decision of filtration depends on the type of macroblock, the difference motion vector (MV) between neighboring blocks if one of the neighboring blocks is encoded residue, and the local structure of the current block or the neighboring block.

Further, the amount of filtering depends on the position of the pixel relative to the block boundary and the quantization parameter used for residual coding for the current block.

In H. 264 the decision to filter is made on the basis of pixel values at the boundary between two adjacent blocks blocks. This applies both to a vertical block boundary and the horizontal boundary of the block. The boundary can be represented by pixels a, b, c and d in the same block and e, f, g and h in another block, where the block boundary is between d and e, see below:

abcd|efgh

The decision to filter is based on the comparison of the three differences of pixels with different thresholds. Thresholds adapted to the quantization parameter (QP). If the following conditions are met, the decision to filter is positive |d-e|<T1, |c-d|<T2and |e-f|<T2where T1and T2are selected on the basis of QP.

In H. 264 there are two modes of filtration. In the first mode filter (normal filtration) filtration can opisyvalis� the Delta value (∆), the filter modifies the current value. Filtering for closest to the border of the pixel block is:

d' =d+∆cand e' =e-∆c

where ∆cit was clipped to the threshold value ±T3and constrained QP. For high QP is allowed one double filtration than for low QP. Cutoff can be described as:

c=Max(-T3, Min(T3, ∆))

Filtering strength may increase if any of the following conditions is |b-d|< T2and |e-g|< T2. Power filtering is also adjusted cutoff by less than the Delta value, for example to provide more variations.

The second (strong) mode filtering is applied only to the borders of intramacrophage when the following condition |d-e|<T1/4.

A significant limitation associated with adaptive deblocker filter used in H. 264, is that second, a strong filtering mode can be used only for boundary macroblocks, if at least one of the blocks is intrablock. Computation of decisions about filtering in H. 264, thus, represents an additional computational complexity, since multiple decisions about filtering should be checked for each row or column in the block in order to determine whether or not to apply ablocnuu filtering or not.

In US 2006/0078048 R�hiding simplification, applied to delacroy filtering in H. 264, which reduces the computational complexity in comparison with standard solutions of filtering H. 264. Check the solution for conducting normal filtering or not filtering is performed on the basis of a single row or column or a subset of rows or columns crossing the border between the two macroblocks. This solution is then applied to all rows or columns that intersect this boundary. As a consequence, the only solution on the filter is calculated for each boundary macroblock, and it is the only solution on filtering is applied to all lines that intersect the boundary of the macroblock. A significant limitation associated with adaptive delacroy filtering disclosed in US 2006/0078048, is that is only normal filtering, which can lead to visible artifacts on the block boundaries, since a stronger filtering is not possible.

Disclosure of the INVENTION

The overall objective is to ensure effective delacroy filtration to remove or reduce blocky artifacts.

This and other objectives are achieved in variants of the implementation disclosed in this document.

Aspect of the embodiments defines a method of controlling the filtering applied to a block of multiple pixels in a video frame. Method should�trivet specific calculation for unit values of the solution on the filter for the current block based on pixel values in a predefined subset of the lines of pixels in the block and pixel values of a previously a relevant subgroup of corresponding lines of pixels in the neighboring block of multiple pixels in a video frame. This specific unit value decisions about filtering is applied to determine whether to apply any ablocnuu filtering to the current block and the border with the neighbouring unit, or that no deblocat filtering is not required. If deblocat filtering should be applied to the current block that is determined on the basis of a comparison-specific unit values decisions about filtering and specific to the block threshold value, the corresponding specific to a line, the value of the solution on the filter is calculated for each line of pixels in the block in relation to the border. This specific line is the value of the solution on the filter is calculated on the basis of at least one pixel value in the current line and at least one value of the corresponding pixel in the current line of the neighboring block. Specific to line the decision to filter is compared with a specific threshold for line value and is used to determine whether to choose a strong zablocky filter or weak zablocky filter for delacroy filtering of the current line. Weak zablocky filter has a relatively lower power filter compared to a strong deblocker �ultram.

Another aspect of the embodiments relates to a device control filter, which includes a transmitter-specific unit values of the solution on the filter, configured to calculate specific unit value decisions about filtering for a block of multiple pixels in a video frame. Specific to unit value of the solution on the filter is calculated on the basis of pixel values in a predefined subset of the lines of pixels in the block and pixel values in the corresponding pre-defined sub-group of lines of pixels in the neighboring block of multiple pixels in a video frame. If the calculated specific to the unit value of the solution on filtering below are specific to the block threshold value, the transmitter-specific line, the values of the solution on filtering, calculates the corresponding specific line value decisions about filtering for each line of pixels in the block. Specific line value decisions about filtering for the line is calculated on the basis of at least one pixel value in the line and at least one pixel value in a corresponding line of pixels in the neighboring block. The comparator threshold values is made with the possibility to compare specific line for the value of the decision to filter specific for Lee�AI threshold value. If a specific line for the value of the solution on filtering below for specific line threshold, the filter selector selects a strong zablocky filter to apply to the current line, otherwise the filter selector instead chooses weak zablocky filter.

Additional aspects of embodiments relate to the encoder and the decoder, which includes the device control filter, and a multimedia terminal comprising a decoder.

Aspects of embodiments of specific use to block the decision on the filter button to choose whether or not to apply ablocnuu filtering to the boundary of the current block or not. This means that you need only one such value decisions about filtering, to make a decision about filtering or no filtering. Then specific to the decision block matched by the filter specific lines solutions for each line in the block to make a choice between strong and weak delacroy filtering. This leads to more efficient and improved delacroy filtering.

BRIEF description of the DRAWINGS

The invention, together with further objectives and advantages is illustrated in the following description with reference to the drawings, in which:

F�G. 1 - schematic illustration of the solution on filtering, block-based and string-based, in accordance with a variant implementation;

Fig.2 is a block diagram of the sequence of actions illustrating the method of controlling the filtering in accordance with a variant implementation;

Fig.3A and 3B are two options for the implementation of the neighboring blocks and border blocks, which can be applied deblocat filtration;

Fig.4 is a block diagram of the sequence of actions illustrating an additional method step of Fig.2 in accordance with a variant implementation;

Fig.5 is a block diagram of the sequence of actions illustrating an additional method step of Fig.2 in accordance with a variant implementation;

Fig.6 is a block diagram of an embodiment of a device for filtering management;

Fig.7 - implementation of the device control filter in accordance with a variant implementation;

Fig.8 is a block diagram of the encoder in accordance with a variant implementation;

Fig.9 is a block diagram of a decoder in accordance with a variant implementation; and

Fig.10 is a block diagram of the multimedia terminal in accordance with a variant implementation.

The IMPLEMENTATION of the INVENTION

Throughout the drawings the same reference positions are used to denote similar or corresponding elements.

Implementation options primarily relate to ADAP�guidance delacroy filtering or adaptive cyclic filtration, as it is sometimes called, in order to remove the block artifacts on the block boundaries in a video frame. Implementation options offer special solutions of filtration, which are used to determine whether or not to apply any ablocnuu filtering and whether to apply a strong filter or a weak filter to the respective lines of pixels in the block. Specific decisions about filtering along with the ability to use strong or weak filtering provides the ability to effectively reduce blocky artifacts, but without increasing the computational complexity.

Fig.1 schematically represents a variant implementation delacroy filtration. Variant implementation defines two different types of values decisions about filtering for a block of multiple pixels in a video frame. The first value of the solution on the filter represents the value of the solution on the filter, which is specific to the unit or based on the unit value, which is calculated once for the current block and the current border with a neighboring block of multiple pixels in a video frame. This specific unit value decisions about filtering is used to determine whether or not to apply any ablocnuu filtering to the current block relative to the border with the neighboring block. If on the basis of specifications�ical for unit values of the solution on filtering concludes, what ablocnuu filtering must be applied, calculates the second value type decisions about filtering for each line of pixels in the block of pixels. Thus, the second type of decision about filtering is based on a line or specific line for the decision to filtering used to select whether to apply a strong ablocnuu filtering or weak ablocnuu filtering to the current line of pixels in the block of pixels. Thus, specific to the unit value of the solution on the filter is calculated once and applied to all lines in the block relative to the border with the neighboring block. If ablocnuu filtering must be applied that is determined based on the specific unit values of the solution on the filter, the corresponding specific to a line, the value of the solution on the filter is calculated for each line, to make a choice between strong and weak delacroy filtering. This means the possibility that a strong deblocat filtering is selected for all lines in the block that weak deblocat filtering is selected for all lines or some lines will use strong ablocnuu filtering, while others will use a weak ablocnuu filtering.

Further variants of the implementation described in more detail with reference to Fig.2, illustrating�Trichet a block diagram of the sequence of operations of a method of controlling the filtering in accordance with a variant implementation, applicable to a block of multiple pixels in a video frame. As is well known in the art, the video frame is divided into non-overlapping blocks of pixels that are encoded and decoded in accordance with the various available modes of inter - and intracoronary. Typically, a video frame is divided into non-overlapping macroblocks of 16×16 pixels. Such a macroblock, in turn, can be divided into smaller blocks of different sizes, such as 4×4 or 8×8 pixels. However, in accordance with the variants of implementation are also possible rectangular blocks, such as 4×8, 8×4, 8×16 or 16×8. Embodiments of the invention can be applied to any similar blocks of pixels, including macroblocks or even larger blocks of pixels. In a particular embodiment of the method of controlling the filtering applies to all blocks of a plurality of pixels having at least 8 pixels in the vertical direction and/or horizontal direction. In the art are often used unitisation predictions and units conversion to denote such a block of the plurality of pixels.

The new standard high-efficiency encoding (HEVC) uses the coding unit (CU). The amount of CU in the present time varies from 64×64 pixels (largest) to 4×4 pixels (smallest). Thus,�more CU can be split into smaller CU c "level of granularity", depending on local characteristics of the frame. This means that the highest CU can be split into smaller CU in various sizes. Implementation options can also be used in connection with such units of coding, which can be viewed as falling under the definition of "block of pixels" as used in this document.

Each pixel in the block has a respective pixel value. The video, in General, have color values that are assigned to the pixels, where the color values are represented in different color formats. One of the known color format uses one brightness component and two color components for each pixel, although other formats, such as using red, green and blue components for each pixel.

Traditionally, filtering brightness component and the filtering component of the chromaticity is realized separately, possibly with the use of different decisions about filtering and various deblocked filters. Implementation options can be used to filter the brightness component, filter component(s) of the color filter as a component of the brightness and component(s chroma. In a specific embodiment of the implementation options are used to implement filtering, brightness or armstrog� signal.

Adaptive deblocat filtering is performed along the boundary, edge or partition between adjacent blocks. As a result, these boundaries can be vertical boundaries 1, see Fig.3A, between two adjacent blocks 10, 20, located side by side in the video frame. Alternatively, the boundaries are horizontal boundaries 1, see Fig.3B, between two adjacent 10, 20, where one unit 10 is located over another unit 20 in the video frame. In a particular embodiment of the first filtered vertical boundaries, starting from the left border and continuing through the borders towards the right side in their geometrical order. Then horizontal edges are filtered, from the border at the top and continuing on the limits down in their geometrical order. However, options for implementation are not limited to this particular order filter and can essentially be used with any pre-defined order. In a specific embodiment, the border on the edge of the video frame is preferably not filtered and, therefore, are excluded from delacroy filtering.

The method of this embodiment begins in step S1 where a specific unit value decisions about filtering is computed for this block. Specific to unit value of the solution on the filter is calculated on the basis of Zn�values of the pixels in a predefined subset of the lines of pixels in the block and on the basis of pixel values in the corresponding pre-defined subset of corresponding lines of pixels in the neighboring block. Line of pixels in the current block and the corresponding line of pixels in the neighboring block belongs to the same horizontal line, i.e. the line continuing through the vertical border, or belong to the same vertical line, i.e., the column continued through the horizontal border.

Each pre-defined pre-defined subgroups and the corresponding subgroup comprises at least one line on a pre-defined position in the block and the neighboring block, respectively. For example, if specific to the unit value of the solution on the filter is calculated based on the values of the pixels in a predetermined line in the block and corresponding to a pre-defined line in the neighboring block, these pre-defined lines are defined by a row number and a column number. For example, a pre-defined line can correspond to the number j of the row or column number j in the block, and the corresponding pre-defined line then he will have the number j of the row or column number j in the neighboring block. This will mean that the pre-defined line of another block, which you need to consistently filter will also match the number j of the row or column number j in this block. Ώ�tively, if specific unit value decisions about filtering is calculated based on the values of pixels in the set of predefined line of pixels in the relevant set of pre-defined lines of pixels, then the pre-defined lines can be numbered j,j+k strings or numbers j,j+k columns, where k is a given positive integer.

In accordance with the variants of implementation-specific unit value decisions about filtering is calculated on the basis of pixel values in a predefined subset of the lines in the block and pixel values in a corresponding pre-defined subgroup of the relevant lines in an adjacent block. This means that if the block and the neighboring block, for example, contains eight rows or columns, not all of these eight rows or columns are used in the calculation of the specific unit values of the solution on the filter, but rather a subset of them. In specific embodiments, pre-defined subgroup contains a single predetermined line of pixels or the first predetermined line of pixels and a second predetermined line of pixels. Then specific for the unit value of the solution on the filter is calculated based on the value of pixel I, at IU�e, one, preferably a plurality of pixels in a predetermined(different) lines(ies) of pixels, and pixel values at at least one, preferably a plurality of corresponding pixels in(their) pre-defined(different) lines(ies) pixels.

The next step S2 compares the specific unit value decisions about filtering (BS FDV) specific to block threshold value (TBS). If specific unit value decisions about filtering below for specific block threshold, the method continues to step S3. However, if specific to the unit value of the decision to filter is not below a specific block of the critical value, then deblocat filtering should not be applied to the unit in relation to the corresponding boundary. This means that the method ends or returns to step S1, where the processing of the next block of multiple pixels in a video frame that is schematically illustrated by the line L2.

If specific unit value decisions about filtering below are specific to the block threshold value that is determined in step S2, zablocka filtering should be applied to the block and the corresponding boundary. Then the method continues at step S3. Step S3 forms, together with the steps S4-S6, the cycle that is executed for each line of pixels in the block,�. row or column, depending on whether the vertical or horizontal border. In step S3 is calculated specific to a line, the value of the solution on filtering for the current line in the block. Specific to a line, the value of the solution on the filter is calculated on the basis of at least one pixel value in the current line and at least one pixel value in a corresponding line in the neighboring block. In a variant implementation, only a single pixel value in a line, and a single pixel value in a corresponding line are used in the calculation. In other embodiments, the implementation used a lot, i.e., at least two pixel values in the line and the set of values of the pixels in a corresponding line. At least one pixel value in the line is a pixel value for at least one pixel in a predetermined(s) position(s) in line, relative to the border. For example, if using only the pixel value may correspond to the pixel value of the pixel to the nearest boundary line. Non-limiting examples of applications of a plurality of pixel values include the use of pixel values of two pixels closest to the boundary line, the three pixels closest to the boundary line or closest to the line �of exile and third nearest to the line of the pixel.

The calculated specific to a line, the value of the solution on the filter (LS FDV) is compared with a specific threshold for line value (TLS) in step S4. If a specific line for the value of the solution on filtering below for specific line threshold, the method continues to step S5, where the selected second or strong zablocky a filter to apply to pixels in the current line of pixels to be subjected to filtering, and change the value of at least one pixel value in the current line. However, if a specific line for the value of the decision to filter is not below a specific line for the threshold value in step S4, the method instead continues to step S6, where you select the first, normal or weak zablocky filter. Then weak zablocky the filter is applied to pixels in the current line of pixels to be subjected to filtering, and change the value of at least one pixel value in the current line. Strong zablocky the filter selected in step S6, in this case has a relatively higher power filtering compared to the weak deblocker filter selected in step S6.

The loop of steps S3 through S5/S6 is repeated for each line in the block, which is schematically illustrated by the line L1. This means that for a given block, there is a possibility that a strong deblo�filter is selected for all lines weak zablocky filter is selected for all lines or strong zablocky filter is chosen for some lines, whereas weak zablocky filter is selected for other lines in this block. Different row of pixels or columns of pixels may be processed sequentially, starting, for example, the top row or the leftmost column and then continuing towards the bottom row or the right-most column in the block. Alternative, different lines of pixels in the block can be processed in parallel to speed up the method of controlling the filtering.

Once all lines of the block will be processed by the loop of steps S3-S5/S6, the method ends or returns to step S1 to start again for another block of pixels in the video frame.

Thus, embodiments of the invention provide a simple and efficient from a computational point of view, the decision whether to apply ablocnuu filtering or not for this block and border. It is combined with specific lines for decisions about the choice between strong and weak delacroy filtering for these blocks, when the specific block decision about filtering led to the conclusion that deblocat filtering should be applied.

Various embodiments of the decisions about filtering hereinafter described in greater detail.

Such clicks�zoom, specific to unit value decisions about filtering mainly shows how smooth are the values of the pixels in the first predefined line of pixels in the block and in a corresponding predetermined first line of pixels in the neighboring block in the video frame in the direction parallel to the direction of filtration, and how smooth are the values of the pixels in the second predefined line of pixels in the block and in a corresponding predetermined second line of pixels in the neighboring block in the video frame in the direction parallel to the direction of filtration.

Thus, specific to the decision block filtration is mostly smooth pixel values in a direction parallel to the filtering. In other words, specific to the decision block filter receives information about whether the pixel values in the first/second pre-defined lines in the block and the pixel values in the respective first/second rows of the neighboring block is smooth, i.e. whether they vary to a small degree, or at least, not more than a certain maximum value, from the direction parallel to the direction of filtering on the block boundary. Such smooth pixel values will produce a zero or low specific Blo�and the value decisions about filtering consequently, will be subject to delacroy filtering, since the pixel values are smooth with no, or very small structures.

In a specific embodiment, the specific implementation for the unit value of the solution on the filter is calculated based on the values of the pixels in the first predetermined line 14 in the block 10 and the corresponding first predefined line 24 in the neighboring block 20, and a second predetermined line 16 in the block 10 and the corresponding second predefined line 26 in the neighboring block 20. The first and second pre-defined lines 14, 16 mainly correspond to pre-defined number of rows in the block 10 (Fig.3A) or pre-defined column (Fig.3B), and corresponding first and second pre-defined lines 24, 26 represent a corresponding pre-defined number of rows or number of columns in the neighboring block 20.

Two pre-defined lines are preferably spaced. Therefore, the first value of the solution on the filter can be calculated as |p22-2p12+p02|+|q22-2q12+q02|+ |p25-2p15+p05|+|q25-2q15+q05|. In this formula, and then here pkidenotes the pixel value DL� pixel number i of the row and k the column in the block 10, see Fig.3A, or the pixel value of the pixel number i of the row and k the column in the block 10, see Fig.3B. qkiaccordingly denotes the pixel value of the pixel in the neighboring block 20. In a specific embodiment of the block illustrated in Fig.3A and 3B, k=0, 1, 2, 3, i=0, 1, 2, 3, 4, 5, 6, 7. This means that the absolute value is calculated for the row/column with the number two 14, and the row/column number five and 16 in the block 10, and the row/column with the number two 24, and row/column number five and 26 in the neighboring block 20. Each absolute value is defined as the absolute value of the pixel value of the pixel closest to the boundary of unit 1 in the corresponding row/column 14, 16, 24, 26, plus the value of the pixel for the second nearest pixel to the boundary of unit 1 in the corresponding row/column 14, 16, 24, 26, less than the doubled value of a pixel next closest pixel to the boundary of unit 1 in the corresponding row/column 14, 16, 24, 26.

Alternative implementation options to calculate specific unit values decisions about filtering include |p22-2p13+p04|+|q22-2q13+q04|+|p25-2p14+p03|+|q25-2q14+q03| or |p22-2p13+p04+p25-2p14+p03|+|q22-2q13+q04+q25-2q14+q03|. In these two versions of OS�span lines in the block 10 and the corresponding line in the neighboring block 20 represents the diagonal line of the plurality of pixels.

In embodiments, it is anticipated that in some embodiments of the application for each block is computed more than one specific unit values of the solution on the filter. In such a case deblocat filtering will be applied to the block and the border only if you are satisfied, all such specific to block decisions about filtering, i.e. when each of the calculated specific to the unit value of the solution on filtering below their respective specific to the block threshold value.

An additional alternative is the calculation of the specific unit values decisions about filtering based on the values of the pixels in the two previously defined lines and corresponding pre-defined lines, as described above, and based on the values of four pixels in predetermined rows in the block and four corresponding pre-defined lines in an adjacent block:

Variations on this embodiment include the use of rooms and row/column zero, three, five and seven, numbers of row/column, one, two, five and six, numbers of row/column zero, three, five and six rooms or a row/column, one, two, four and seven. These options for implementation may also be applied in case required�of only two pre-defined lines and two corresponding pre-defined lines, such as rows/columns number two and five.

A method of controlling the filtering can be applied to different variants of implementation of calculations specific to line the values of the solution on the filter. For example, specific to a line, the value of the solution on the filter can be calculated based on the pixel value of the pixel 11 closest to the boundary 1 in the line 12 of pixels 11, 13, 15, 17, and the pixel value of the pixel 21 closest to the boundary 1 in the corresponding line 22 of pixels 21, 23, 25, 27 in the neighboring block 20: |p0i-q0i|. Alternative-specific line value decisions about filtering that can be used in accordance with embodiments of the invention, is a |p3i-p0i|+|q0i-q3i|, i.e. equal to the sum of absolute differences between pixel values of the pixel 11 closest to the border and pixel 17, fourth nearest to the boundary 1 in the line 12, and the absolute difference between the pixel values of the pixel 21 closest to the border and pixel 27, the fourth closest to the boundary 1 in the corresponding line 22 of the neighboring block 20. An additional specific example for line decisions about filtering is a |2p3i-p2i-2p1i|+|q0i-2q1i-q2i-2q3i|.

Specific to a line, the value of the solution on the filter, calculated on et�PE S3, may be one of at least two specific lines of the values of the solution on the filter, which is calculated for all lines in the block in step S3. For example, the decision whether to apply a strong ablocnuu filtering may be based on one, two or three different specific line for the values of the solution on the filter.

The first such specific line value decisions about filtering may indicate how close pixel values in a current line of pixels approximate a smooth line and how close pixel values in a corresponding line of pixels in the neighboring block approximate a smooth line. In a particular embodiment of the first specific to line the decision to filter is calculated as |p3i-p0i|+|q0i-q3i|. This is a specific line for a solution on the filter can then be supplemented with at least one additional specific line decision about filtering. The reason for this is that any changes in the pixel values due to a strong filtering (step S5 in Fig.2) are not limited. For example, if at least the pixel values in the current line block and the pixel values in a corresponding current line of the neighboring block are almost equal, the first specific lines p value�concerned about filtering will be equal or close to zero. However, it is possible that the values of the pixels in the current line, while being roughly equal, quite different from the values of corresponding pixels in the current line. This situation may occur if there is a real structure or edge coinciding with the edge of the block. This means that the edge occurs not because of the blocky artifact, but is the original identity of the particular video frame, and so you do not need to filter. As a consequence, may be preferential addition of a second specific line decisions about filtering, in order to detect such edges coinciding with the boundary of the block.

The second is specific to a line, the value of the solution on the filter mainly shows the absolute difference between the pixel value of the pixel closest to the block boundary in the current line, and the pixel value of the pixel closest to the block boundary in a corresponding current line in the neighboring block. In other words, the second specific to a line, the value of the solution on the filter mainly is |p0i-q0i|. Then, the step S4 compares the first specific line value decisions about filtering specific to the first line of the threshold value and compares the second specific to a line, the value of the solution on the filter with the second specific line then�govem value. If both specific to line the values of the solution on the filter are below their respective associated specific line threshold, then the method continues in step S5 of Fig.2, where a strong zablocky the filter is taken to apply to pixels in the current line. Otherwise, the method continues in step S6 of Fig.2, which is selected instead of the weak zablocky filter.

Implementation options also include the use of other second specific line for the values of the decision on filtering criteria that can be used in conjunction with the first specific line value decisions about filtering discussed above. Alternative, is another second specific line value decisions about filtering can be used as a third specific line for the values of the solution on the filter together with the above-described first and second specific line values decisions about filtering. This is more specific to a line, the value of the solution on the filter mainly shows how smooth are the pixel values of at least one, preferably two, predetermined rows of pixels in the block and at least one, preferably two, of the relevant pre-defined strategically in the neighboring block in the direction parallel to the direction of filtration. In the preferred embodiment, the implementation is specific to a line, the value of the solution on the filter is calculated as |p22-2p12+p02|+|q22-2q12+q02|+|p25-2p15+p05|+|q25-2q15+q05|. This example is specific to line the values of the solution on filtering, in fact, such a specific embodiment of the block values of the solution on the filter calculated in step S1. However, even if these values are solutions of filtration equal, specific to the block threshold value used in step S2, and specific to the line of the threshold value used in step S4, for this example, specific to line the values of the solution on the filter are mostly different.

Fig.4 is a block diagram of the sequence of operations illustrating an additional method step filtering management. The method starts in step S10 where specific block threshold value and specific(s) for line threshold(s) value(I) filtration shall be determined on the basis of the quantization parameter selected for the block. The quantization parameter selected for residual coding unit and controls the quality of video compression, which is well known in the art and therefore further here is not about�anywaysa.

In a specific embodiment, the specific implementation for the block threshold value is defined as TBS=β, where the parameter β is determined on the basis of the quantization parameter (QR) block. Table 1 below defines the possible values of β for different possible values of the quantization parameter.

Table 1
The relationship between QP, tcand β
QP01234567891011121314
tc00000000000000 0
β000000000000000
QP151617181920212223242526272829
tc000111111111 222
β0679910111213141516171820
QP303132333435363738394041424344
tc2333344455 66789
β222426283032343638404244464850
QP4546474849505152535455
tc910101111121213 131414
β52545657586264

Specific(s) specific(s) for line threshold(s) value(s) defined in step S10 on the basis of the quantization parameter depends on(Yat) specific(s) decision(s) on the filter used in the method of controlling the filtering. For example, if a specific line for the value of the decision to filter is a |p3i-p0i|+|q0i-q3i|, TBS=β>>3, where X>>Y means the right shift of X by 2Yi.e. X/2Y.

If a specific line for the value of the solution on the filter is calculated as |p0i-q0i|, specific to the line of the threshold value is advantageously defined as TBS=a1×tc. The parameter tcbefore�provide a cutoff threshold, selected for the block based on the quantization parameter in accordance with the above Table 1. The parameter a1represents the multiplier is selected to prevent the selection of a strong deblocage filter if strong filtering with a strong deblocker filter modifies the pixel value of the pixel closest to the block boundary in the current line, by an amount which is greater of the amount by which the weak filtering with weak deblocker filter and threshold cutoff modify this pixel value. There have been experimental tests, which confirmed that a1=2,5 works well. Additionally, the value of 2.5 implies that the specific line of the threshold value can be calculated without any division operations, as TBS=(tc×5+1)>>1. If a specific line for the value of the solution on the filter is calculated as |p22-2p12+p02|+|q22-2q12+q02|+|p25-2p15+p05|+|q25-2q15+q05|, specific to the line of the threshold value is mainly TBS=β>>2.

Therefore, a simple reference table similar to Table 1 can be used to extract all the threshold values that apply to specific units or specific lines of threshold values for the variants of implementation, �reported above.

In an embodiment, the implementation of additional conditions or criteria may be used in addition to specific unit decision about filtering to decide whether to filter a block boundary between the current block and A neighboring block B. Examples of such additional conditions include:

(i) block a or block b has a prediction mode (PredMode) is equal to intra (MODE_INTRA);

(ii) block a or block b has non-zero transform coefficients;

(iii) block a or block To use different reference frames or a different number of motion vectors;

(iv) one motion vector used for prediction of block A, and one motion vector is used for prediction of the block In, and used the absolute difference between the horizontal and the vertical component of the motion vector is greater or equal to four in units of quarter samples the luminance signal frame;

v) two motion vectors and two different reference pictures are used for prediction of block A, and two motion vectors for the same reference image used for the prediction block, and used in the prediction of the two blocks for the same reference image, the absolute difference between the horizontal and the vertical component of the two motion vectors is greater or equal to four in units of quarter samples of the signal I�bone frame;

(vi) two motion vectors for the same reference picture are used to predict the block A, and two motion vectors for the same reference picture are used to predict the block In, and used in the prediction of two parts, the absolute difference between the horizontal and the vertical component of the two motion vectors is greater or equal to four in units of quarter samples of the luminance signal of one frame.

The above conditions (i) through (vi) are preferably alternative. This means that if any of the conditions i) to vi) is performed for the current block, and if there are any specific to the decision block filtration is positive, then deblocat filtering should be applied at the boundary of the block, and strong or weak zablocky filter must be selected for each line of pixels in the block. This also implies that if none of the conditions i) to vi) is not performed for the current block And then mostly no filtering is not performed for the block A and the corresponding border.

Fig.5 is a block diagram illustrating an additional step of the method illustrated in Fig.2. The method continues at step S5 or S6 in Fig.2. The next step S20 performs filtering to the pixel values in the current row of pixels selected deblocker filter. This means that if �] continues with step S5 in Fig.2, then in step S20, the pixel values are filtered strong deblocker filter.

Implementation options can be used in connection with any strong deblocker the filter used in the art to combat blocky artifacts. In a specific embodiment, the implementation of strong deblocat filtering is performed with the following set of operations:

where i represents the current line in the block. Therefore, as shown in Fig.3A and 3B, i=0,...,7. In the above equations, pki', qki', k=0...2 are modified pixel values in the block and the neighboring block, respectively, after filtering.

Modified pixel values are also predominantly cut-off, so be sure to be within the allowed range of pixel values. In specific embodiments, the cutoff operation is forcing the modified pixel values to be within the range [0, 255], making it possible 256 different pixel values. This means that if the modified pixel value after filtering is less than 0 or greater than 255, then it is replaced with 0 or 255, respectively.

If the comparison in step S4 in Fig.2 leads to the fact that the method is continued in step S6 of Fig.2, in step S20, the pixel values of the filtered�weak I deblocker filter.

Implementation options can be used in connection with any weak deblocker the filter used in the art to combat blocky artifacts. In a particular embodiment of the weak deblocat filtering is performed with the following set of operations:

p0i'= p0i+∆0

q0i'= q0i-∆0

The value of ∆0is calculated in a two-stage process with the initial calculation ∆0i value and then performing the cutoff for this value before it is used in the above equations. In a particular embodiment of the ∆0i=(p1i-4p0i+4q0i-qi+4)>>3. Impulse response of the weak deblocage filter is a(1, 4, 4-1)/8. The range of cutoff ∆0i determined based on the quantization parameter of the block.

In this embodiment, the values p1i, q1imodified, if additional conditions are satisfied filtering, otherwise the pixel values are not modified. In a variant implementation p1imodified, if |p2i-p0i|<T, where T is a threshold value and is mainly determined on the basis of the quantization parameter of the block. If this condition is true, then p1i'=p1i+∆p1. The value of ∆p1also calculated in the TLD�step process beginning with the calculation of the initial values ∆p1i=(p2i+((p0i+q0i+1)>>1)-2p1i)>>1. The corresponding impulse response is a(1, 0, 0,5)/2. Then ∆p1is defined as ∆p1=(Min(Max(-tCthat ∆p1i),tC), where tCis determined on the basis of the quantization parameter of the block and can be determined for a reference table, such as the aforementioned table 1.

Accordingly, q1imodified if |q2i-q0i|<T. If the condition is true, then q1i'=q1i+∆q1. The value of ∆q1also computed in a two-stage process, starting with the calculation of the initial values ∆q1i=(q2i+((q0i+p0i+1)>>1)-2q1i)>>1 with impulse response(0,5, 0,5, 0, 1)/2. Then ∆q1is defined as ∆q1=(Min(Max(-tCthat ∆q1i),tC).

In an embodiment, the implementation of a range of cutoff for ∆0i, shall be based on the value of tCand analysis of conditions |p2i-p0i|<T |q2i-q0i|<T. Then, the cutoff value of tC'first is set equal to tCand then incremented for each condition |p2i-p0i|<T |q2i-q0i|<T being met. In a variant implementation of the ∆0=(Min(Max(-tC', ∆0i),tC').

In alternative imple�of estline ∆ p1i=((((( p0i+q0i+1)>>1)+p2i+1)>>1)-p1i)>>1 and ∆q1i=((((( p0i+q0i+1)>> 1)+q2i+1)>>1)-q1i)>>1. Impulse responses are(2, 4, 1, 1)/8 and(1, 1, 4, 2)/8. This filtering provides better interpolation properties for the values of the pixels p2i, q2icompared with the use of a filter with the filter coefficients(1, 0, 0,5, 0,5)/2. It also reduces the risk of inadvertently adding fake edges.

In another embodiment, the implementation of weak deblocat filtering is performed in accordance with the following operations:

Where Clip(a,b,X)=Min(Max(a,X), (b).

Fig.6 is a schematic block diagram of the device 100 control filter in accordance with a variant implementation. The device 100 control filter includes a transmitter 110 for specific unit values of the solution on the filter, configured to calculate specific unit value decisions about filtering for a block of multiple pixels in a video frame. The transmitter 110 specific to unit values of the solution on the filter calculates specific unit value decisions about filtering based on pixel values in a predefined subset of the lines of pixels in the block and on the basis of pixel values in a pre-ODA�divided by the corresponding subset of corresponding lines of pixels in the neighboring block of multiple pixels in a video frame. In a variant implementation of the transmitter 110 specific to unit values of the solution on the filter calculates specific to the unit value of the solution on the filter, which shows how smooth are the values of the pixels in the first predefined line of pixels in the block and in a corresponding first predefined line of pixels in the neighboring block in the direction parallel to the direction of filtration, and how smooth are the values of the pixels in the second predefined line of pixels in the block and in a corresponding second predefined line of pixels in the neighboring block in the direction parallel to the direction of filtration, for example like |p22-2p12+p02|+|q22-2q12+q02|+|p25-2p15+p05|+|q25-2q15+q05|.

The comparator 130 threshold values is made with the possibility to compare specific for the unit value of the solution on the filter, calculated by the calculator 110 for specific unit values of the solution on the filter, specific for the block threshold value. If specific unit value decisions about filtering below are specific to the block threshold value that is determined by the comparator 130 threshold, then the transmitter 120 specific line values resheniya filtration device 100 of the control filter calculates the corresponding specific line value decisions about filtering for each line of pixels in the block. Specific to a line, the value of the solution on the filter is calculated on the basis of at least one pixel value in the line in the block and at least one pixel value in a corresponding line in the neighboring block. The transmitter 120 specific to line the values of the solution on the filter can calculate the specific line value decisions about filtering in accordance with any of the previous described embodiments. The transmitter 120 specific to line the values of the solution on the filter is also able to calculate two, or more, for example three, different specific lines of values decisions about filtering for each line, as disclosed in this document.

Specific to line the values of the solution on the filter calculated by the calculator 120 specific to line the values of the solution on the filter are compared by the comparator 130 threshold specific to the line of the threshold value. If the transmitter 120 specific to line the values of the solution on the filter calculates many different specific lines of values decisions about filtering for each line, the comparator 130 uses thresholds specific to different lines thresholds for different specific lines of values decisions about filtering as described above.

Device�about 100 control filter includes a selector 140 of the filter, made with the possibility to choose zablocky filter to filter at least one pixel value in the current line of pixels if the specific unit value decisions about filtering below are specific to the block threshold value that is determined by the comparator 130 thresholds. The selector filter 140 then selects zablocky filter, between the strong deblocker filter and weak deblocker filter, based on the comparison between specific(their) line for the value(s) decisions about filtering for the current line and specific(their) threshold for line(s) the value(s). Therefore, if specific(s) to line(I) decisions about filtering is(they think) is below its(their) associated specific lines a threshold value, the selector 140 filter selects strong zablocky filter for the current line. Otherwise, the selector 140 of the filter is made with the possibility to choose weak zablocky filter to filter at least one pixel value in the current line of pixels.

In an optional embodiment of the device 100 control filter includes a determiner 150 threshold value, is arranged to define specific units and specific lines for the thresholds. In a specific embodiment, the OS�span determiner 150 threshold defines the threshold value for the block based on the quantization parameter, selected for residual coding of the block. Determiner 150 threshold then mainly determines the threshold value as discussed above with reference to Table 1.

The device 100 control filter may be implemented at least partially in software. Fig.7 is a block diagram of a device 100 of the control filter, implemented as a computer program product stored in memory 30, downloaded and running on your computer General purpose or specially adapted computer, processor or microprocessor is the Central processing unit (CPU) 32 at this shape.

Software tools include the code elements of a computer program or part of program codes, which implement the operation of at least the transmitter 110 specific to unit values of the solution on the filter, the transmitter 120 specific to line the values of the solution on the filter, comparator 130 threshold, the selector 140 of the filter and an optional qualifier threshold. The program may be stored completely or partially, on one or more non-volatile machine-readable media or data storage means such as magnetic disks, CD-ROM, DVD, hard disk, ROM or flash memory. Tools XP�tion data can be a local data storage, or be provided remotely, for example, on the data server. Thus, software can be loaded into computer RAM or equivalent processing system for execution by the processor. Computer/processing device does not have to be intended only for performing the above functions, but can also perform other program tasks. Non-limiting example code used to define the device 100 control filter, includes code with one command threads and multiple data stream (SIMD).

Alternatively, the filtering can be implemented in hardware. There are numerous versions of the elements of electronic circuits that can be used and combined to successfully perform the functions of the modules in the device control filter. Such options are covered by embodiments of the invention. Specific examples of implementation of the device for filtering management hardware present an implementation in hardware of a digital signal processor (DSP) and integrated circuit technology, including electronic circuits and General purpose circuits applied orientation.

Fig.8 is a block diagram of the encoder 40 to encode the block of pixels in a video frame of videopokeronline�surface in accordance with a variant implementation.

The current block of pixels is predicted by the motion estimation unit 50 estimates of traffic on already secured block of pixels in the same frame or in a previous frame. The result of the motion estimation is a motion vector or displacement associated with the reference block, in the case of interpretazione. The motion vector is used by the compensator 50 motion for issuance of interpretazione of the pixel block.

The device 49 interpretazione calculates interpretazione current block of pixels. The output of device evaluation/compensator 50 movements and devices 49 interpretazione are input to the selector 51, which selects or intraprediction or interpretazione current block of pixels. The output of selector 51 are input to computer errors, made in the form of an adder 41, which also receives the pixel values of the current block of pixels. The adder 41 calculates and outputs the residual error as the difference of pixel values between the unit pixel and its prediction.

The error is converted in the Converter 42, for example, by discrete cosine transform, and quantized by the quantizer 43 with subsequent encoding in the encoder 44, such as entropy coder. In intermediaware predicted motion vector is also n�given in encoder 44 for generating an encoded representation of the current block of pixels.

The transformed and quantized residual error for the current block of pixels is also provided to the inverse quantizer 45 and return to the transducer 46 for predicting the source of residual error. This error is added by the adder 47 to the prediction block output from the compensator 50 or motion device 49 interpretazione to create a reference block of pixels that can be used in the prediction and coding of the next block of pixels. This new reference block is first processed by the device 100 control filter in accordance with the variants of implementation, to determine whether to apply deblocat filtering, and in this case - what type deblocage filter to use. Processed new support unit and temporarily stored in the buffer 48 frames, where it is available for the device 49 interpretazione and evaluation device/compensator 50 movement.

Fig.9 is a corresponding block diagram of the decoder 60, which includes the device 100 control filter in accordance with the variants of implementation. The decoder 60 includes a decoder 61, such as entropy decoder, for decoding an encoded representation of the pixel block to obtain a set of quantized and transformed residual errors. These residual errors rescales in return �untawale 62 and converted back by the reverse Converter 63 to obtain residual errors.

These residual errors are added in an adder 64 to the pixel values of the reference block of pixels. The reference block is determined by the evaluation device/compensator 67 motion or device 66 interpretazione depending on whether inter - or interpretazione. In this regard, the selector 68 is connected with the adder 64 and the evaluation device/compensator 67 motion and device 66 interpretazione. The resulting output of the decoded block of pixels are input to the device 100 control filter in accordance with the variants of implementation, in order Deboche to filter any blocky artifacts. The filtered block of pixels is output from the decoder 60, and additionally, mainly is temporarily in the buffer 65 frames and can be used as a reference block of pixels for a subsequent block of pixels that should be decoded. In this regard, the buffer 65 of the frame is connected to the evaluation device/compensator 67 motion to make available the stored blocks of pixels for the device evaluation/compensator 67 movement.

The output of the adder 64 are input to the device 66 interpretazione, subject to the use as not filtered reference block �of the pixel.

Fig.10 is a block diagram of a multimedia terminal 70, which is the decoder 60 with the device control filter. Multimedia terminal 70 may be any device having a function of decoding media, which works with the encoded video stream of encoded video frames to decode the frames and make the video available. Non-limiting examples of such devices include mobile phones and other portable multimedia players, computers, decoders, game consoles, etc. Multimedia terminal 70 includes a memory 72, configured to store encoded video frames. These encoded video frames can be generated by the multimedia terminal 70. In this case, the multimedia terminal 70 mainly includes a multimedia processor or recording device with a connected encoder such as the encoder of Fig.8. Alternatively, the encoded video frames are generated by some other device and transmitted wirelessly or by wire multimedia terminal 70. Multimedia terminal 70 also includes a transceiver (transmitter and receiver) or an input and output port to perform data transfer.

The encoded video frames shifting�Xia from the memory 72 to the decoder 60, such a decoder as illustrated in Fig.9. Then, the decoder 60 decodes the encoded video frames into decoded video frames. The decoded video frames are provided to the media player 74, which is arranged to reproduce the decoded video frames into video data displayed on the display or screen 76 multimedia terminal 70 or attached to it.

Fig.10 multimedia terminal has been illustrated includes a decoder 60 and multimedia player with decoder 74 60 implemented as part of the media player 74. However, this should be viewed simply as an explanatory but not limiting example of implementation of the embodiment of the multimedia terminal 70. It is also possible distributed implementations, where the decoder 60 and multimedia player 74 is presented on two physically separated devices, and possibly in the multimedia terminal 70, as used here. The display 76 may also be provided as a separate device connected to the multimedia terminal 70, where the actual data processing.

The above-described variants of implementation should be understood as a few illustrative examples of the present invention. Specialists in the art it should be clear that various modifications, combinations�tions and changes can be made to variants of implementation, without leaving the scope of the present invention. In particular, different part solutions in the different embodiments can be combined in other configurations, where it is technically possible. However, the scope of the present invention is defined by the appended claims of the invention.

1. A method of controlling the filtering applied to the block (10) of a plurality of pixels (11, 13, 15, 17) in a video frame, each pixel (11, 13, 15, 17) has a corresponding pixel value, and the mentioned method contains:
computation (S1) - specific unit values decisions about filtering for the block (10) on the basis of pixel values in a predefined subset of the lines (14, 16) of pixels in said block (10) and pixel values in a corresponding pre-defined subset of corresponding lines (24, 26) of pixels in said neighboring block (20);
calculating (S3), if said specific unit value decisions about filtering below for specific block thresholds for each line (12) of pixels (11, 13, 15, 17) in said block (10) specific to the line of decision-based filtering at least one pixel value in said line (12) and at least one pixel value in a corresponding line (22) of pixels (21, 23, 25, 27) in said neighboring block (20);
comparing (S4), if the specific block is meant�e decisions about filtering below mentioned are specific to the block threshold value, for each line (12) of pixels (11, 13, 15, 17) in said block (10) referred to a specific line for the values of the solution on the filter with a specific line threshold value; and
the selection (S5), if said specific unit value decisions about filtering below mentioned are specific to the block threshold value, for each line (12) of pixels (11, 13, 15, 17) in said block (10), strong deblocage filter for filtering at least one pixel value in said line (12), if said specific line for the value of the solution on filtering below mentioned are specific to the line of the threshold value, and otherwise, selecting (S6) weak deblocage filter for filtering at least one pixel value in said line (12), and referred to a strong zablocky filter has a comparatively higher power filtering, compared to the mentioned weak deblocker filter.

2. A method according to claim 1, wherein calculating (S1) mentioned specific unit values decisions about filtering involves the computation referred to specific unit values of the solution on the filter representing how smooth are the values of the pixels in the first predefined line (14) of pixels in said block (10) and a corresponding first preliminary�about a certain line (24) of pixels in said neighboring block (20) in the direction of parallel to the direction of filtration, and how smooth are the values of the pixels in the second predefined line (16) of pixels in said block (10) and a corresponding second predefined line (26) of pixels in said neighboring block (20) in a direction parallel to the said direction of filtration.

3. A method according to claim 2, wherein the calculating (S1) mentioned specific unit values decisions about filtering involves the computation referred to specific unit values decisions about filtering
|p22-2p12+p02|+|q22-2q12+q02|+|p25-2p15+p05|+|q25-2q15+q05|
where p02denotes the pixel value for the pixel in said predetermined line (14) closest to the border (1) unit with said neighboring block (20), p12denotes the pixel value for the pixel in said predetermined line (14), the next closest to the border (1) block, p22denotes the pixel value for the pixel in said predetermined line (14), the second next closest to the border (1) unit q02denotes the pixel value for a pixel in said neighboring block (20), in said corresponding first predefined �inii (24), closest to the border (1) unit q1jdenotes the pixel value of the pixel referred to the neighboring block (20), in said corresponding first predefined line (24), the next closest to the border (1) unit, q22denotes the pixel value of the pixel referred to the neighboring block (20), in said corresponding first predefined line (24), the second next closest to the border (1) the block p05denotes the pixel value for the pixel in said second predefined line (16) closest to the border (1) the block p15denotes the pixel value for the pixel in said second predefined line (16), the next closest to the border (1) block, p25denotes the pixel value for the pixel in said second predefined line (16), the second next closest to the border (1) unit q05denotes the pixel value of the pixel referred to the neighboring block (20), in said corresponding second predefined line (26) closest to the border (1) unit q15denotes the pixel value of the pixel referred to the neighboring block (20), in said corresponding second predefined line� (26), the next closest to the border (1) block, and q25denotes the pixel value of the pixel referred to the neighboring block (20), in said corresponding second predefined line (26), the second next closest to the border (1) block.

4. A method according to any one of claims. 1-3, further comprising determining (S10) of the said specific block thresholds and mentioned specific line threshold values based on the quantization parameter selected for residual coding of the mentioned block (10).

5. The device (100) of the control filter, which includes:
the transmitter (110) - specific unit values of the solution on the filter, configured to calculate specific unit value decisions about filtering for the block (10) of a plurality of pixels (11, 13, 15, 17) in a video frame, each pixel (11, 13, 15, 17) has a corresponding pixel value based on pixel values in a predefined subset of the lines (14, 16) pixels of the mentioned block (10) and pixel values in a corresponding pre-defined sub lines (24, 26) of the pixels of the neighboring block (20) of a plurality of pixels (21, 23, 25, 27) in said video frame;
the transmitter (120) for specific lines of value of the decision to filter is made feasible with�STU calculate if the specific unit value decisions about filtering, calculated mentioned by the evaluator (110, 210) - specific unit values of the solution on the filter, below are specific to the block threshold value, for each line (12) of pixels (11, 13, 15, 17) in said block (10) specific to the line value decisions about filtering based on at least one pixel value in said line (12) and at least one pixel value in a corresponding line (22) of pixels (21, 23, 25, 27) in said neighboring block (20);
a comparator (130) thresholds, made with the ability to compare, if said specific unit value decisions about filtering, calculated mentioned by the evaluator (110) - specific unit values decisions about filtering, below mentioned are specific to the block threshold value, for each line (12) of pixels (11, 13, 15, 17) in said block (10) of the said specific line value decisions about filtering, calculated mentioned by the evaluator (120) specific to line the values of the solution on the filter with a specific line threshold value;
a selector (140) filter, configured to select, if said specific unit value decisions about filtering below mentioned are specific to the block threshold value�tion, for each line (12) of pixels (11, 13, 15, 17) in said block (10) strong zablocky filter for filtering at least one pixel value in said line (12), if said specific line for the value of the solution on filtering below mentioned are specific to the line of the threshold value that defines the comparator (130) threshold, and otherwise, to choose weak zablocky filter for filtering at least one pixel value in said line (12), over and above strong zablocky filter has a comparatively higher power filtering, compared to the mentioned weak deblocker filter.

6. The device according to claim 5 in which the said transmitter (110) - specific unit values of the solution on the filter is arranged to calculate specific to the unit value of the solution on the filter representing how smooth are the values of the pixels in the first predefined line (14) of pixels in said block (10) and the corresponding first predefined line (24) of pixels in said neighboring block (20) in the direction parallel to the direction of filtration, and how smooth are the values of the pixels in the second predefined line (16) of pixels in said block (10) and in the relevant WTO�th predetermined line (26) of pixels in said neighboring block (20) in the direction of parallel to the aforementioned direction of filtration.

7. The device according to claim 6 in which the said transmitter (110) - specific unit values of the solution on the filter is arranged to calculate the mentioned specific unit value decisions about filtering
|p22-2p12+p02|+|q22-2q12+q02|+|p25-2p15+p05|+|q25-2q15+q05|
where p02denotes the pixel value for the pixel in said predetermined line (14) closest to the border (1) unit with said neighboring block (20), p12denotes the pixel value for the pixel in said predetermined line (14), the next closest to the border (1) block, p22denotes the pixel value for the pixel in said predetermined line (14), the second next closest to the border (1) unit q02denotes the pixel value for a pixel in said neighboring block (20), in said corresponding first predefined line (24) closest to the border (1) unit q1jdenotes the pixel value of the pixel referred to the neighboring block (20), in said corresponding first predefined line (24), the next closest to the border (1) unit, q22code no�denotes the pixel value of the pixel referred to the neighboring block (20), in said corresponding first predefined line (24), the second next closest to the border (1) the block p05denotes the pixel value for the pixel in said second predefined line (16) closest to the border (1) the block p15denotes the pixel value for the pixel in said second predefined line (16), the next closest to the border (1) block, p25denotes the pixel value for the pixel in said second predefined line (16), the second next closest to the border (1) unit q05denotes the pixel value for a pixel in said neighboring block (20), in said corresponding second predefined line (26) closest to the border (1) unit q15denotes the pixel value of the pixel referred to the neighboring block (20), in said corresponding second predefined line (26), the next closest to the border (1) block, and q25denotes the pixel value for a pixel in said neighboring block (20), in said corresponding second predefined line (26), the second next closest to the border (1) block.

8. Device according to any one of claims. 5-7, further includes�containing a determiner (150) threshold made with the ability to discern the specific block threshold value and referred to specific line threshold value based on a quantization parameter selected for residual coding of the mentioned block (10).

9. The encoder (40) comprising a device (100) of the control filter according to any one of claims. 5-8.

10. The decoder (60) that includes a device (100) of the control filter according to any one of claims. 5-8.

11. Multimedia terminal (70), which includes:
memory (72), configured to store encoded video frames;
the decoder (60) according to claim 10, arranged to be mentioned decode the encoded video frames into decoded video frames; and
multimedia player (74), made with the ability to reproduce mentioned the decoded video frames in the video data displayed on the display (76).



 

Same patents:

FIELD: radio engineering, communication.

SUBSTANCE: device contains a receiver receiving and syntactically analyzing a bit flow of a coded image; a processor forming a coding unit which is included into a maximum coding block which has hierarchical structure by means of use of the information which indicates this hierarchical structure, syntactically analyzed from the accepted bit flow and forms one sub-block for prediction of a coding block from the coding block, by means of use of information on blocks of a prediction of the named coding block, an image recovery decoder.

EFFECT: higher efficiency of decoding of high-resolution images by determining the depth of the coding unit and the operating mode of the encoding tool according to data characteristics of the image.

5 cl, 8 tbl, 23 dwg

FIELD: information technology.

SUBSTANCE: in the method, after using a modified LBP technique, calculation of LBP code values and search for equivalent LBP code values are performed in rank and domain regions, formed by the same number of pixels located on a circle, where the radius of the circle of the domain region is greater than the radius of the circle of the rank region; the number of pixels, the radius of the circle and the coordinates of the position of the centre pixel for the rank and domain regions are stored.

EFFECT: faster encoding through selection of image characteristics which describe the domain and rank regions.

4 dwg

FIELD: physics.

SUBSTANCE: adaptation is performed by rearranging fragments of discrete cosine transform (DCT) coefficients obtained after two-dimensional DCT on the time axis and subsequent one-dimensional DCT such that the total number of non-zero transform coefficients after three-dimensional DCT is less than the number of non-zero DCT coefficients obtained after three-dimensional DCT without rearranging two-dimensional DCT fragments. In the disclosed method, after forming a domain measuring n×n×n pixels, DCT coefficients are calculated on spatial coordinates x and y for each fragment of the domain. The fragments are then rearranged in the form of a rearrangement vector and a time DCT operation is performed. The DCT coefficients are sampled, encoded and transmitted over a communication channel with the rearrangement vector. At reception, said procedures are performed in reverse order and the original video stream is restored.

EFFECT: high degree of compression of video data with a given image reconstruction error at reception owing to adaptation to variation of static properties of images.

3 cl, 9 dwg

FIELD: information technologies.

SUBSTANCE: method of coding of video data is offered which comprises the obtaining from the coded stream of bits of one or more units of network abstraction level (NAL) for each component of view from a set of components of view of the coded video data where each component of view from the set of components of view corresponds to the common temporary location and where one or more NAL units encapsulate at least a part of the coded video data for the respective components of view and comprise an information specifying the sequence of decoding of the respective components of view. The method also comprises the received information separate from NAL units specifying the relations between the view identifiers for these views and sequence of decoding of components of view. One or more NAL units also comprise the information specifying, whether the first view component of the first view as the reference for prediction between the views of the second component of view for the second different view is used.

EFFECT: coding efficiency improvement.

68 cl, 18 tbl, 12 dwg

FIELD: physics, computer engineering.

SUBSTANCE: invention relates to computer engineering. A method of coding video data comprises maintaining a plurality of context models for entropy coding transform coefficients of the video data, wherein the plurality of context models includes one or more context models that are each used for a different transform unit size and at least one joint context model used for two or more transform unit sizes; selecting the joint context model shared by a first transform unit and a second transform unit; selecting contexts for the transform coefficients associated with one of the first transform unit or the second transform unit according to the joint context model; and entropy coding the transform coefficients of said one of the transform units using context adaptive binary arithmetic coding (CABAC) based on the selected contexts.

EFFECT: reduced amount of memory needed to store contexts and probabilities on video coders and decoders.

34 cl, 9 dwg

FIELD: physics, video.

SUBSTANCE: invention relates to image processing means. The method includes creating a plurality of frames of a picture and related prediction reference frames; for each frame and related prediction reference frame, calculating the intensity value and the colour value in a first colour domain; for each frame and related prediction reference frame, calculating weighted prediction gains; if said gains are non-negative, determining that a global transition with zero offset is occurs in a second colour domain; and if not all of said gains are non-negative, determining that a global transition with gradual change in illumination does not occur.

EFFECT: high efficiency of an image display means when encoding and processing video.

28 cl, 16 dwg

FIELD: physics, video.

SUBSTANCE: invention relates to the field of digital signal processing and, in particular, to the field of video signal compression using the movement compensation. The coding method includes the obtaining of target number of movement information predictors to be used for the coded image section and generation of the set of movement information predictors using the obtained target quantity. The set is generated by means of: obtaining of the first set of movement information predictors, each of which is connected with the image section having the pre-set spatial and/or time ratio with the coded image section; modifications of the first set of movement information predictors by removal of the duplicated movement information predictors for obtaining of the reduced set of movement information predictors containing the first number of movement information predictors, and each movement information predictor from the reduced set differs from any other movement information predictor from the reduced set; comparisons of the first number of movement information predictors with the target quantity obtained, and if the first quantity is less than the target quantity, obtaining of the additional movement information predictor and its addition to the reduced set of movement information predictors.

EFFECT: decrease of spatial and time redundancies in video flows.

26 cl, 8 dwg

FIELD: physics, video.

SUBSTANCE: invention relates to a broadcasting system for transmitting a digital television program, particularly a transmission device and a transmission method, in which content which meets needs can be acquired. A server generates a script PDI-S for obtaining a user side PDI-A representative of an answer of a user to a question about user preferences; generates launch information for executing the PDI-A; and transmits the launch information and PDI-S in response to the delivery of broadcast content, and transmits to the client in response to the delivery of reference content a provider side PDI-A representative of an answer set by a provider to the question. The client executes the PDI-S based on detection of launch information and carries out matching between the user side PDI-A and the provider side PDI-A to determine acquisition of reference content delivered by the server.

EFFECT: facilitating delivery of content to a client which satisfies the needs thereof at that time.

10 cl, 48 dwg

FIELD: physics, computer engineering.

SUBSTANCE: invention relates to computer engineering. An apparatus for encoding an image using intraframe prediction comprises a unit for determining an intraframe prediction mode, which determines the intraframe prediction of the current unit to be encoded, wherein the intraframe prediction mode indicates a defined direction from a plurality of directions, wherein the defined direction is indicated by one number dx in the horizontal direction and a constant number in the vertical direction and a number dy in the vertical direction and a constant number in the horizontal direction; and a unit for performing intraframe prediction, which performs intraframe prediction applied to the current unit in accordance with the intraframe prediction mode, wherein the intraframe prediction includes a step of determining the position of adjacent pixels through a shift procedure based on the position of the current pixel and one of the parameters dx and dy, indicating the defined direction, wherein adjacent pixels are located on the left side of the current unit or on the upper side of the current unit.

EFFECT: high efficiency of compressing images through the use of intraframe prediction modes having different directions.

9 cl, 21 dwg, 4 tbl

FIELD: physics, computer engineering.

SUBSTANCE: invention relates to a method for bit-plane coding of signals, for example, an image or video signal in the DCT transform domain. The bit planes of the DCT blocks are transmitted plane by plane in order of significance. As each plane contains more signal energy than the less significant layers together, the resulting bitstream is scalable in the sense that it may be truncated at any position. The later the bitstream is truncated, the smaller the residual error when the image is reconstructed. For each bit plane, a zone or partition of bit plane is created that encompasses all the non-zero bits of the DCT coefficients in that bit plane. The partition is created in accordance with a strategy which is selected from a number of options depending on the content of the overall signal and/or the actual bit plane. A different zoning strategy may be used for natural images than for graphic content, and the strategy may vary from bit plane to bit plane. The form as well as other properties such as the size of each partition can thus be optimally adapted to the content. Two-dimensional rectangular zones and one-dimensional zigzag scan zones may be mixed within an image or even within a DCT block. The selected zone creating strategy is embedded in the bitstream, along with the DCT coefficient bits in the actual partition.

EFFECT: high efficiency of a scalable method of compressing signal content.

13 cl, 5 dwg

FIELD: information technology.

SUBSTANCE: like or dislike of a content element played on a personalised content channel is determined based on feedback from the user; the profile is updated based on the determined like or dislike, wherein that profile is associated with the personalised content channel and contains a plurality of attributes and attribute values associated with said content element, where during update, if like has been determined, a classification flag associated with each of said attributes and attribute values is set; the degree of liking is determined for at least on next content element based on said profile; and that at least one next content element is selected for playing on the personalised content channel based on the calculated degree of liking.

EFFECT: method for personalised filtration of content elements which does not require logic input or user identification procedures.

5 cl, 1 dwg

FIELD: information technology.

SUBSTANCE: like or dislike of a content element played on a personalised content channel is determined based on feedback from the user; the profile is updated based on the determined like or dislike, wherein that profile is associated with the personalised content channel and contains a plurality of attributes and attribute values associated with said content element, where during update, if like has been determined, a classification flag associated with each of said attributes and attribute values is set; the degree of liking is determined for at least on next content element based on said profile; and that at least one next content element is selected for playing on the personalised content channel based on the calculated degree of liking.

EFFECT: method for personalised filtration of content elements which does not require logic input or user identification procedures.

5 cl, 1 dwg

FIELD: information technologies.

SUBSTANCE: method of a conversion system operation to manage digital rights to grant a license to a client's device corresponding to coded content consists in the following. The first content of the first type of digital rights content and the first license corresponding to the first content are converted to manage digital rights in order to generate the second content of the second type of digital rights content and the second license corresponding to the second content. A license request is received, corresponding to the second content distributed by means of superdistribution to a third party. The second license corresponding to the second content distributed by means of superdistribution is requested from a server corresponding to the second management of digital rights. The second license corresponding to the second content distributed by means of superdistribution is received and sent to a third party.

EFFECT: expansion of functional resources due to development of a license granting mechanism for appropriate content distributed by means of superdistribution.

17 cl, 6 dwg

FIELD: information technology.

SUBSTANCE: network server of television server sets in random manner according to Internet protocol (IPTV) time of request for receiving main license within time period starting from time of broadcast transmission and ending at preset time in accordance with request for receiving license for playback of encrypted content, where request for receive comes from IPTV client terminal, and transmits to IPTV client terminal information about time of request for receiving main license and temporary license comprising temporary key of content which key corresponds to playback of broadcast transmission content from time of broadcast transmission start till preset time. License server transmits main license including content main key which corresponds to full playback of content according to request for receiving main license which request is executed using IPTV client terminal based on information about request for receive.

EFFECT: stabilisation of license server operation by eliminating concentration of license receive requests from large number of clients during time just after starting broadcast transmission of content.

6 cl, 11 dwg

FIELD: information technology.

SUBSTANCE: multimedia content purchasing system comprising: a memory area associated with a multimedia service; a multimedia server connected to the multimedia service via a data communication network; a portable computing device associated with a user; and a processor associated with the portable computing device, said processor being configured to execute computer-executable instructions for: establishing a connection to the multimedia server when the multimedia server and the portable computing device are within a predefined proximity; authenticating the multimedia server and the user with respect to the authenticated multimedia server; transmitting digital content distribution criteria; receiving, in response, promotional copies of one or more of the multimedia content items and associated metadata; and purchasing, when the multimedia server and the portable computing device are outside the predefined proximity, at least one of said one or more multimedia content items.

EFFECT: enabling flexible sharing of multimedia content between subjects.

17 cl, 9 dwg

FIELD: information technologies.

SUBSTANCE: device (600) to process stored data packets (110; 112) in a container of media data (104) and stored related meta information in a container of meta data (106); related meta information, including information on timing of transportation and information on location, indicating location of storage of saved data packets in the media data container (104); a device, comprising a processor (602) for detection, based on stored data packets (110; 112) and stored related meta information (124; 128); information on decoding (604; 704) for media useful load of stored data packets (110; 112), where information on decoding (604; 704) indicates, at which moment of time to repeatedly reproduce which useful load of stored data packets.

EFFECT: immediate accurate timing of synchronisation between different recorded media streams without complicated processing during each reproduction of recorded media streams.

21 cl, 12 dwg

FIELD: information technology.

SUBSTANCE: provided is an integrated interface device for performing a hierarchical operation for specifying a desired content list. The interface device has a function to display a content list, content specified by the content list, or the like by efficiently using a vacant area in the lower part of the display by displaying icons which display a hierarchical relationship, for example, "display in a row", in the upper part of the screen, thereby freeing a large space in the lower part of the display.

EFFECT: efficient use of the entire screen even after displaying an interface for performing an operation.

17 cl, 42 dwg

FIELD: radio engineering, communication.

SUBSTANCE: channel of individualised content makes it possible to play multiple elements of content (programs) meeting multiple selection criteria. At least one additional element of content is recommended by a mechanism (107) of recommendations, besides, at least one additional element of content meets less quantity of criteria. In the version of realisation at least one recommended additional element of content is selected, and multiple selection criteria are corrected by a planner (109) on the basis of at least one characteristic of a selected recommended additional element of content.

EFFECT: provision of a method to generate a recommendation for an additional element of content, the method is specially adapted for use with channels of individualised content.

13 cl, 1 dwg

FIELD: radio engineering, communication.

SUBSTANCE: channel of individualised content makes it possible to play multiple elements of content (programs) meeting multiple selection criteria. At least one additional element of content is recommended by a mechanism (107) of recommendations, besides, at least one additional element of content meets less quantity of criteria. In the version of realisation at least one recommended additional element of content is selected, and multiple selection criteria are corrected by a planner (109) on the basis of at least one characteristic of a selected recommended additional element of content.

EFFECT: provision of a method to generate a recommendation for an additional element of content, the method is specially adapted for use with channels of individualised content.

13 cl, 1 dwg

FIELD: information technology.

SUBSTANCE: wireless transmission system includes: a device (1) which wirelessly transmits AV content and a plurality of wireless recipient devices (5, 6) for reproducing the transmitted AV content. The device (1) for transmitting content has a group identification table which stores a group identifier for identification of a group formed by the wireless recipient device (5, 6). The device (1) adds the group identifier extracted from the group identification table to a control command for controlling recipient devices (5, 6) and wirelessly transmits the control command having the group identifier. The recipient devices (5, 6) receive the wirelessly transmitted control command from the device (1) if the corresponding group identifier has been added to the control command. The device (1) for transmitting content consists of a wired source device and a relay device which is connected by wire to the wired source device, and the relay device is wirelessly connected to the wireless recipient device and mutually converts the wired control command transmitted to the wired source device, and the wireless control command transmitted to the wireless recipient device, wherein the wired source device and the relay device are connected via HDMI (High-Definition Multimedia Interface).

EFFECT: providing the minimum required volume of transmitting control commands during wireless audio/video transmission.

21 cl, 13 dwg

Up!