CN1233171C - A simplified loop filtering method for video coding - Google Patents
A simplified loop filtering method for video coding Download PDFInfo
- Publication number
- CN1233171C CN1233171C CN 200410000671 CN200410000671A CN1233171C CN 1233171 C CN1233171 C CN 1233171C CN 200410000671 CN200410000671 CN 200410000671 CN 200410000671 A CN200410000671 A CN 200410000671A CN 1233171 C CN1233171 C CN 1233171C
- Authority
- CN
- China
- Prior art keywords
- filtering
- video
- frame
- filter
- coding
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Images
Landscapes
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
The present invention relates to a simple loop filtering method for a video coding technique, which relates to the field of digital video coding techniques. In the method, video data flow which is obtained from a camera and a video collecting card is inputted into a computer; the video data flow which is orderly transformed and quantified in the computer is fed back to an input section after passing through a video processing subprogram; the video data flow continues to be transformed and quantified; then, entropy coding is made; at last, the video data flow which is coded is outputted. The video processing subprogram mainly carries out motion compensation and prediction to video on the basis of a JVT video coding technique. The present invention is characterized in that a filtering intensity judging method and a filter in the original loop filter are changed by a loop filtering subprogram; the current filtering strength is determined by distinguishing the types of different coded frames; simultaneously, one simple filter is used for filtering the boundary of a coding block. The method can eliminate block effect which is brought by block change coding. The present invention has the characteristics of high coding efficiency, favorable effect, simple hardware realization, etc.
Description
Technical field
Patent of the present invention relates to the computer digit technical field of video coding, at be video coding system.Concrete research summary of the invention is the loop filtering technology.
Background technology
Existing video image before through transmission, needs earlier video to be held compressed encoding, just can transmit then.The quality of video coding technique will directly influence decoded video effect.At present, domestic and international most of technical schemes of relevant video coding all are based on MPEG4 or standard H.26L.Wherein the video encoding standard provided of JVT (this tissue is to unite an audio and video standard tissue that forms by ITU-and these two International Standards Organization of ISO/IEC JTC1) then is a kind of coding standard technology all the fashion both at home and abroad at present.
In the video coding technique that JVT provided, relevant loop filtering technology is as described below: adopt the circle filtering interpolating function that obtains through statistics, and, formulate different filtering strengths and corresponding with it filter respectively at different frame types and different type of prediction.The disadvantage of this technology is exactly the filter more complicated, and hardware implementation cost is higher.
Summary of the invention
Main purpose of the present invention is to provide a kind of loop filtering scheme that is used for the simplification of video coding, this scheme not only can be eliminated well because piecemeal changes the blocking effect that coding is brought, to reach very high code efficiency and the effect of better encoding, and the hardware realization is fairly simple, and cost is lower.
The present invention has mainly changed the filter of loop filtering and the decision method of filtering strength.Its concrete innovative point is directly to judge filtering strength by the judgment frame type, has reduced the hardware implementation complexity of filter simultaneously significantly.Comprised following technology contents in the scheme:
1, simple filter: the filter interpolation calculation coefficient that the present invention adopts is 1,2,1.Utilize the input system value, according to 1,2,1 specified ratio, with the interpolation result that calculates be substituted into the relevant position in video image.
2, the judgement of filtering strength: since the filtering strength that the scheme of current JVT is judged current block by the interpolation of motion vector not only hardware realize cumbersomely, and adopted two kinds of diverse filters.The present invention is only by judging that the present frame type decides corresponding filtering strength.Under the different situation of filtering strength, use same filter to realize by different filter ranges.If the I frame, then formulating filtering strength is 2; If the P frame, then formulating filtering strength is 1; All the other filtering strengths are 0.
3, the association between filtering strength and the filter: if filtering strength is 2, then filter length is two pairs of pixels; If filtering strength is 1, then filter length is a pair of pixel; If filtering strength is 0, then not filtering.
Technical scheme of the present invention such as Fig. 2-shown in Figure 5.Be in method for video coding, to have adopted a kind of simple loop filtering to finish based on video content; This be used for video coding loop circuit filtering method, its video coding is to obtain original video stream as input by video camera, enter computer by becoming video data stream behind the video frequency collection card, and adopt the video coding technique of 6.0 versions that JVT provides, handle and computing by computer, its method step is: computer system is accepted the original video stream that capture card is handled well, through behind the transform and quantization, and feed back to the importation again by resulting data flow after the Video processing subprogram, mainly doing coding proofreaies and correct, continue to participate in transform and quantization, do entropy coding then, the last good video data stream of output encoder; Described Video processing subprogram mainly is that video is carried out motion compensation and prediction, its method step is: after video is taken turns doing new inverse quantization, inverse transformation processing, enter the circle filtering subprogram, frame of video after the stores processor then, to frame of video take exercises compensation and estimation, the resulting result of motion compensation is used for auxiliaring coding, feeds back in the circle filtering subprogram, make estimation at last, the data that obtain are as the output of subsystem;
This method is characterised in that the method that is adopted is on the basis of JVT video coding technique in aforesaid circle filtering subprogram, directly determine corresponding filtering strength video coding by judging the present frame type; Under the different situation of filtering strength, use same filter to realize by different filter ranges, if the I frame, then specifying filtering strength is 2, if the P frame, then specifying filtering strength is 1, all the other filtering strengths are 0; The filter interpolation calculation coefficient that is adopted is 1,2,1, utilizes the input system value, and the specified ratio according to 1,2,1 is substituted into the interpolation result that calculates in the relevant position of video image; And proposed to come the boundary pixel of encoding block is carried out filtering with a filter, if filtering strength is 2, then filter length is two pairs of pixels, if filtering strength is 1, then filter length is a pair of pixel, if filtering strength is 0, and then not filtering.
In the aforesaid circle filtering subprogram of the present invention is on the basis of JVT video coding technique, defined the filtering strength of oneself, directly determine filtering strength by the judgment frame type, and proposed a foolproof filter and be used for the boundary pixel of encoding block is carried out filtering; Method step according to the performed circle filtering program of circle filtering method is as follows:
1) type of judgement current encoded frame, if be the B frame, promptly bi-directional predicted frames is not then done circle filtering, withdraws from the circle filtering subprogram; If be not the B frame, then carry out next step;
2) judge the type of current encoded frame, if for the I frame, be the infra-frame prediction frame, then filtering strength is 2; If be the P frame, be predictive frame, then filtering strength is 1;
3) if filtering strength is 2, then filter range is two pairs of pixels on border; If filtering strength is 1, then filter range is a pair of pixel on border; Using filter factor is 1,2,1 filter, weight be 1 be respectively the left and right sides adjoint point of current pixel point, weight be 2 then be current pixel point.
Wherein, the computing formula of described circle filtering subprogram median filter is:
When boundary intensity is 2, and the pixel value difference of p0 and q0 is greater than certain threshold value, then: (P0, P1, q0, q1 are respectively two pairs of pixels on encoding block border)
P0=(p1+2×p0+q0+2)/4;
P1=(p2+2×p1+p0+2)/4;
If the pixel value difference of p0 and q0 is less than this threshold value, then:
P0=(2×p1+p0+q0+2)/4;
P1=(p2+2×p1+p0+2)/4;
As for q0, q1 then handles according to above rule equally.
When boundary intensity is 1:
P0=(p1+2×p0+q0+2)/4;
As for q0, then handle according to above rule equally.
Wherein, q1 and p1 do not make Filtering Processing.
In the formula, p0, p1, p2, q0, q1, q2 are respectively two pairs of pixels on encoding block border.Wherein, p0 is a current pixel point, and p1 is the neighbor on the p0 left side, and p2 is the neighbor on the p1 left side; Q0 is the adjacent pixels point on p0 point the right, and q1 is the neighbor on q0 the right, and q2 is the neighbor on q1 the right.P0 and P1 have represented p0 and p1 pixel through filtered end value respectively, and its position is identical with p1 with p0.
Experiment effect of the present invention is remarkable, can effectively improve the code efficiency of digital video.
Description of drawings:
Fig. 1: system block diagram;
Fig. 2: computer code flow chart;
Fig. 3: Video processing subroutine flow chart;
Fig. 4: circle filtering theory diagram;
Fig. 5: circle filtering subroutine flow chart;
Embodiment:
Dispose one embodiment of the present of invention according to Fig. 1-Fig. 5 and be used for explanation.Computer is Pentium 3 above CPU in this example, the above hard disk of 10G, the common Desktop Computer with general pattern disposal ability.Coding standard 6.0 versions that adopt existing JVT to provide, conversion described in the flow chart and quantification are respectively:
The form of video flowing is generally yuv format, and (be brightness, colourity and saturation component, its ratio generally is 4: 2: 2 or 4: 2: 0), the variation of employing is generally DCT and changes.At present, H.264 in the integer transform and the quantization method of 4 * 4 residual blocks be specially:
1, integer transform and quantification
For 4 * 4 residual error data behind motion compensated prediction or the infra-frame prediction, carry out following conversion:
More than the just theoretical explanation of the direct transform of integer transform in application H.264, is being carried out two-dimensional core conversion C
fXC
f TAfter, the convergent-divergent process combines with quantizing, and has so just reduced operand.
H.264 the quantization method in is as follows:
Y
q(i,j)=sign{Y(i,j)}(|Y(i,j)|A(Q
M,i,j)+f)>>(15+Q
E)
Q
M≡QPmod6,Q
E≡QP/6,A(Q
M,i,j)=M(Q
M,r)。When r=0, (i, j)={ (0,0), (0,2), (2,0), (2,2) }, when r=1, (i, j)={ (1,1), (1,3), (3,1), (3,3) }, when r=2, (i j) is other value.M (Q
M, value r) is as follows:
In decoding end, the method for inverse quantization is:
Y
r′(i,j)=Y
q(i,j)B(Q
M,i,j)<<Q
E
Y
r(i,j)=Y
r′(i,j)>>6
B(Q
M,i,j)=S(Q
M,r)。When r=0, (i, j)={ (0,0), (0,2), (2,0), (2,2) }, when r=1, (i, j)={ (1,1), (1,3), (3,1), (3,3) }, when r=2, (i j) is other value.S (Q
M, value r) is as follows:
The inverse transformation process is:
C
i TYC
iBe the core of two-dimensional transform, E
iIt is the zoom factor matrix.
More than the just theoretical explanation of the inverse transformation of integer transform in application H.264, is being carried out two-dimensional core inverse transformation C
i TYC
iBefore, the convergent-divergent process combines with quantification, has so just reduced operand.
In like manner, in inverse quantization that relates to the back and anti-change, then be the inverse transformation of the above process just.
Program to this link of circle filtering is replaced fully.Here revised the interpolating function of filter, and revised filtering strength later and judge way.Specific embodiments is:
The neighbor filtering signal of 1 bounds:
Each macro block of video image is made interpolation to adjacent 3 pairs of pixels when doing circle filtering.Particular location concerns as shown in the figure:
。P0 among the figure, p1, p2, q0, q1,6 location of pixels of q2 presentation code block boundary.
p2 | p1 | p0 | q0 | q1 | q2 |
The formulation of 2 filtering strengths:
Directly judge the type of current encoded frame, if alternating binary coding frame (B frame), then filtering strength is 0, does not do filtering.If current encoded frame is predictive frame (a P frame), then filtering strength is 1, and a pair of pixel on border is carried out filtering.If current encoded frame is intracoded frame (an I frame), then filtering strength is 2, and two pairs of pixels on border are carried out filtering.
3 summaries
The consideration of comprehensive above several factors, specific implementation is:
At first, at different current video coded frame, by different filtering strengths, concrete filtering is as follows:
● when boundary intensity is 2, and p0 and (pixel value difference of q0 is greater than certain threshold value M, then:
P0=(p1+2×p0+q0+2)/4;
P1=(p2+2×p1+p0+2)/4;
If the pixel value difference of p0 and q0 is less than this threshold value M, then:
P0=(2×p1+p0+q0+2)/4;
P1=(p2+2×p1+p0+2)/4;
As for q0, q1 then handles according to above rule equally.
● when boundary intensity is 1:
P0=(p1+2×p0+q0+2)/4;
As for q0, then handle according to above rule equally.
Wherein, q1 and p1 do not make Filtering Processing.
The present invention is remarkable through repeatedly testing its effect, and concrete experiment effect data are as follows:
The test result of HD video sequence Flamingo.yuv: (frame per second: 30Hz, 20 frames, 1920*1088)
QP=27 | QP=30 | QP=35 | QP=40 | |||||
PSNR | Bitrate | PSNR | Bitrate | PSNR | Bitrate | PSNR | Bitrate | |
Existing scheme | 39.93 | 52462.49 | 38.31 | 40684.97 | 35.62 | 25676.37 | 33.04 | 15419.32 |
Improvement project | 39.94 | 52526.29 | 38.32 | 40743.17 | 35.63 | 25687.28 | 33.05 | 15409.22 |
The test result of HD video sequence Harbour.yuv: (frame per second: 30Hz, 300 frames, 1280*720)
QP=27 | QP=30 | QP=35 | QP=40 | |||||
PSNR | Bitrate | PSNR | Bitrate | PSNR | Bitrate | PSNR | Bitrate | |
Existing scheme | 39.99 | 16819.39 | 38.16 | 11336.97 | 35.71 | 5668.35 | 33.74 | 3226.02 |
Improvement project | 39.98 | 16780.33 | 38.15 | 11313.00 | 35.70 | 5646.21 | 33.73 | 3210.45 |
Claims (3)
1, a kind of be used for video coding loop circuit filtering method, its video coding is to obtain original video stream as input by video camera, enter computer by becoming video data stream behind the video frequency collection card, and adopt the video coding technique of 6.0 versions that joint video team provides, handle and computing by computer, its method step is: computer system is accepted the original video stream that capture card is handled well, through behind the transform and quantization, and feed back to the importation again by resulting data flow after the Video processing subprogram, mainly doing coding proofreaies and correct, continue to participate in transform and quantization, do entropy coding then, the last good video data stream of output encoder; Described Video processing subprogram mainly is that video is carried out motion compensation and prediction, its method step is: after video is taken turns doing new inverse quantization, inverse transformation processing, enter the circle filtering subprogram, frame of video after the stores processor then, to frame of video take exercises compensation and estimation, the resulting result of motion compensation is used for auxiliaring coding, feeds back in the circle filtering subprogram, make estimation at last, the data that obtain are as the output of subsystem;
The invention is characterized in that the method that is adopted is on the basis of JVT video coding technique in aforesaid circle filtering subprogram, directly determine corresponding filtering strength video coding by judging the present frame type; Under the different situation of filtering strength, use same filter to realize by different filter ranges, if the I frame, i.e. infra-frame prediction frame, then specifying filtering strength is 2, if the P frame, i.e. predictive frame, then specifying filtering strength is 1, all the other filtering strengths are 0; The filter interpolation calculation coefficient that is adopted is 1,2,1, utilizes the input system value, the specified ratio according to 1,2,1, with the interpolation result that calculates be substituted into the relevant position in video image; And proposed to come the boundary pixel of encoding block is carried out filtering with a filter, if filtering strength is 2, then filter length is two pairs of pixels, if filtering strength is 1, then filter length is a pair of pixel, if filtering strength is 0, and then not filtering.
2, according to claim 1 a kind of be used for video coding loop circuit filtering method, it is characterized in that, as follows according to the method step of the performed circle filtering program of circle filtering method:
1) type of judgement current encoded frame, if be the B frame, promptly bi-directional predicted frames is not then done circle filtering, withdraws from the circle filtering subprogram; If be not the B frame, then carry out next step;
2) judge the type of current encoded frame, if for the I frame, be the infra-frame prediction frame, then filtering strength is 2; If be the P frame, be predictive frame, then filtering strength is 1;
3) if filtering strength is 2, then filter range is two pairs of pixels on border; If filtering strength is 1, then filter range is a pair of pixel on border; Using filter factor is 1,2,1 filter, weight be 1 be respectively the left and right sides adjoint point of current pixel point, weight be 2 then be current pixel point.
3, according to claim 1 a kind of be used for video coding loop circuit filtering method, it is characterized in that the technical parameter of described circle filtering subprogram median filter is:
The computing formula of filter is:
1) when boundary intensity is 2, and the pixel value difference of p0 and q0 is greater than certain threshold value M, then:
P0=(p1+2×p0+q0+2)/4;
P1=(p2+2×p1+p0+2)/4;
If the pixel value difference of p0 and q0 is less than this threshold value M, then:
P0=(2×p1+p0+q0+2)/4;
P1=(p2+2×p1+p0+2)/4;
As for q0, q1 then handles according to above rule equally;
2) when boundary intensity is 1:
P0=(p1+2×p0+q0+2)/4;
As for q0, then handle according to above rule equally;
Wherein, q1 and p1 do not make Filtering Processing;
In the formula, p0, p1, p2, q0, q1, q2 are respectively two pairs of pixels on encoding block border, and wherein, p0 is a current pixel point, and p1 is the neighbor on the p0 left side, and p2 is the neighbor on the p1 left side; Q0 is the adjacent pixels point on p0 point the right, and q1 is the neighbor on q0 the right, and q2 is the neighbor on q1 the right; P0 and P1 have represented p0 and p1 pixel through filtered end value respectively, and its position is identical with pl with p0.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN 200410000671 CN1233171C (en) | 2004-01-16 | 2004-01-16 | A simplified loop filtering method for video coding |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN 200410000671 CN1233171C (en) | 2004-01-16 | 2004-01-16 | A simplified loop filtering method for video coding |
Publications (2)
Publication Number | Publication Date |
---|---|
CN1558680A CN1558680A (en) | 2004-12-29 |
CN1233171C true CN1233171C (en) | 2005-12-21 |
Family
ID=34350451
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN 200410000671 Expired - Fee Related CN1233171C (en) | 2004-01-16 | 2004-01-16 | A simplified loop filtering method for video coding |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN1233171C (en) |
Families Citing this family (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TWI308841B (en) * | 2005-01-24 | 2009-04-11 | Via Tech Inc | Method and system for reducing the bandwidth access in video encoding |
US7792385B2 (en) * | 2005-01-25 | 2010-09-07 | Globalfoundries Inc. | Scratch pad for storing intermediate loop filter data |
CN100438629C (en) * | 2005-09-19 | 2008-11-26 | 华为技术有限公司 | Loop filtering method in image coding processing |
WO2007081838A1 (en) * | 2006-01-09 | 2007-07-19 | Thomson Licensing | Method and apparatus for providing reduced resolution update mode for multi-view video coding |
TWI444047B (en) * | 2006-06-16 | 2014-07-01 | Via Tech Inc | Deblockings filter for video decoding , video decoders and graphic processing units |
CN101207812B (en) * | 2007-12-10 | 2010-04-07 | 海信集团有限公司 | Method for filtering video loop |
CN101472172B (en) * | 2007-12-29 | 2012-04-04 | 安凯(广州)微电子技术有限公司 | Method for processing filtering previous data of video decode as well as decoder |
JP5597968B2 (en) | 2009-07-01 | 2014-10-01 | ソニー株式会社 | Image processing apparatus and method, program, and recording medium |
CN102098515B (en) * | 2011-02-18 | 2012-12-12 | 杭州海康威视数字技术股份有限公司 | Realizing method of loop filtering parallel |
CN102857746B (en) * | 2011-06-28 | 2017-03-29 | 中兴通讯股份有限公司 | Loop filtering decoding method and device |
CN104780383B (en) * | 2015-02-02 | 2017-09-19 | 杭州电子科技大学 | A kind of 3D HEVC multi-resolution video coding methods |
EP3379820B1 (en) | 2017-03-24 | 2020-01-15 | Axis AB | Controller, video camera, and method for controlling a video camera |
EP3379830B1 (en) | 2017-03-24 | 2020-05-13 | Axis AB | A method, a video encoder, and a video camera for encoding a video stream |
CN111064958B (en) * | 2019-12-28 | 2021-03-30 | 复旦大学 | Low-complexity neural network filtering algorithm for B frame and P frame |
-
2004
- 2004-01-16 CN CN 200410000671 patent/CN1233171C/en not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
CN1558680A (en) | 2004-12-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN1233171C (en) | A simplified loop filtering method for video coding | |
CN100348051C (en) | An enhanced in-frame predictive mode coding method | |
CN1225127C (en) | A coding/decoding end bothway prediction method for video coding | |
CN1933601A (en) | Method of and apparatus for lossless video encoding and decoding | |
CN1809168A (en) | Prediction intra-mode selection in an encoder | |
CN1607836A (en) | De-blocking filter processing apparatus and de-blocking filter processing method | |
CN1431828A (en) | Optimum scanning method for change coefficient in coding/decoding image and video | |
CN1383684A (en) | Color video encoding and decoding method | |
CN1287598C (en) | Filtering method and apparatus for removing blocking artifacts and/or ringing noise | |
CN1805546A (en) | Apparatus and method for compensating images in display device | |
CN106303521B (en) | A kind of HEVC Rate-distortion optimization method based on sensitivity of awareness | |
CN1183491C (en) | Method and system for compressing image data with wavelet transform and quadtree coding for telecommunication | |
CN101047859A (en) | Image encoding apparatus and decoding apparatus | |
CN1275469C (en) | Method for pridicting sortable complex in frame | |
CN1777285A (en) | Video/image processing devices and methods | |
CN102572435A (en) | Compressive sampling-based (CS-based) video coding/decoding system and method thereof | |
TW200307463A (en) | Animation encoding method, animation encoding device, and animation encoding processing program | |
CN1794816A (en) | Moving picture compression encoding method, apparatus and program | |
CN1213613C (en) | Prediction method and apparatus for motion vector in video encoding/decoding | |
CN1675929A (en) | Method and apparatus for reducing computational complexity in video encoders | |
CN1193621C (en) | Approximate IDCT for scalable video and image decoding of computational complexity | |
CN1878308A (en) | Orthogonal transformation method for image and video compression | |
CN1310190C (en) | Discrete wavelet transform unit and method for adaptively encoding still image based on energy of each block | |
CN1757238A (en) | Method for coding a video image taking into account the part relating to a component of a movement vector | |
CN1240025C (en) | Video coding method based on video content |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20051221 Termination date: 20130116 |
|
CF01 | Termination of patent right due to non-payment of annual fee |