CN101878648A - Fixed-point implementation of an adaptive image filter with high coding efficiency - Google Patents

Fixed-point implementation of an adaptive image filter with high coding efficiency Download PDF

Info

Publication number
CN101878648A
CN101878648A CN200880117955.8A CN200880117955A CN101878648A CN 101878648 A CN101878648 A CN 101878648A CN 200880117955 A CN200880117955 A CN 200880117955A CN 101878648 A CN101878648 A CN 101878648A
Authority
CN
China
Prior art keywords
convolution
integer quotient
image filter
adaptive image
restricted
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.)
Pending
Application number
CN200880117955.8A
Other languages
Chinese (zh)
Inventor
K·厄古尔
A·O·哈拉普罗
D·拉萨诺维斯基
J·莱纳玛
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Nokia Oyj
Original Assignee
Nokia Oyj
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Priority claimed from US11/872,024 external-priority patent/US20090097545A1/en
Application filed by Nokia Oyj filed Critical Nokia Oyj
Publication of CN101878648A publication Critical patent/CN101878648A/en
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/42Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/80Details of filtering operations specially adapted for video compression, e.g. for pixel interpolation
    • H04N19/82Details of filtering operations specially adapted for video compression, e.g. for pixel interpolation involving filtering within a prediction loop

Abstract

In accordance with an embodiment of the present invention, a method comprising: representing coefficients of an adaptive image filter in binary words wherein the coefficients are restricted and the binary words have a maximum number of bits defined at least in part by a precision index; computing at least one of a convolution sum and multiple partial convolution sums of the adaptive image filter wherein the at least one of a convolution sum and multiple partial convolution sums having a constrained value range and having a binary representation with a fixed maximum number of bits; and generating the output of the adaptive image filter based at least in part on the at least one of a convolution sum and multiple partial convolution sums, is disclosed.

Description

Fixed point with adaptive image filter of high coding efficiency realizes
Technical field
The application relates generally to video coding, and more specifically, the fixed point that relates to the adaptive image filter with high coding efficiency realizes.
Background technology
Video Codec comprises the encoder that input video sequence is transformed to the compression expression that is suitable for storage/transmission, and the visible decoder of the representation of video shot decompress(ion) of this compression can being withdrawn.Usually, encoder abandons some information in the original input video sequence, so that represent video with compacter form (for example, with lower bit rate).
H.263 and H.264 the mixed video codec, for example ITU-T encodes to video information by two stages.At first, the pixel value in the prediction particular picture zone (for example, piece) for example by the motion compensation mode, for example finds and indicates in one of frame of video of encoding before corresponding to the zone near the piece of encoding; Perhaps, for example use the piece to be encoded value of encoded pixels on every side according to specific mode by the space mode.Secondly, predicated error (for example between predict pixel piece and the original pixels piece poor) is encoded.This is usually by using specify transformations (for example, discrete cosine transform (DCT) or its variant) that the difference of pixel value is carried out conversion, the DCT coefficient is quantized and the coefficient that quantizes carried out entropy coding realize.By changing the fidelity of quantizing process, encoder can be controlled the balance between the size (for example, file size or transmission bit rate) that pixel accuracy of representing (for example, picture quality) and the encoded video that obtains represent.
Decoder comes reconstruct output video sequence by using with the similar prediction mode of encoder.In treating the present frame of reconstruct, the prediction of given block of pixels is represented to be used motion and the spatial information be coded in the compression expression and come the pixel value of the image block of decoding before the comfortable given block of pixels to form by decoder.Decoder is also by using the entropy decoding to being coded in DCT coefficient in the compression expression, going to quantize and inversion brings and remedies predicated error.After having used the decoding of prediction and predicated error, decoder is sued for peace to form output video frame to prediction and predictive error signal (pixel value).Decoder and encoder also can be used additional filtering to improve the quality of output video sending output video for before demonstration and/or being stored as the prediction reference that is used for the video sequence subsequent frame.
Summary of the invention
According to an exemplary embodiment of the present invention, a kind of method is disclosed, comprise: represent the coefficient of adaptive image filter with binary word, wherein said coefficient is restricted, and described binary word has at least in part the maximum number of digits by index of precision definition; Calculate adaptive image filter convolution and with a plurality of part convolution and at least one, wherein convolution and with a plurality of part convolution and in described at least one have affined value scope and have the fixedly binary representation of maximum number of digits; And at least in part based on convolution and with a plurality of part convolution and in described at least one generate the output of adaptive image filter.
According to another illustrative embodiments of the present invention, a kind of device is disclosed, comprise: adaptive image filter is characterized in that: the coefficient of adaptive image filter is restricted and has at least in part binary representation by the maximum number of digits of index of precision definition; Having fixedly, the integer arithmetic of maximum number of digits realizes, wherein said realization comprise use at least described coefficient and image data samples calculate convolution and with a plurality of part convolution and at least one, wherein convolution and with a plurality of part convolution and in described at least one have affined value scope; Processor; And memory cell, it can be connected to processor communicatedly, and is enough to store described coefficient and a plurality of image data samples.
According to another illustrative embodiments of the present invention, a kind of computer program that is implemented on the computer-readable medium is disclosed, comprise: computer code, be arranged to the convolution utilizing integer arithmetic, calculate sef-adapting filter based on the coefficient and the image data samples of sef-adapting filter with fixing maximum number of digits and with a plurality of part convolution and at least one, wherein said coefficient is restricted and has at least in part binary representation by the maximum number of digits of index of precision definition; And at least in part based on convolution and with a plurality of part convolution and in described at least one generate the output of adaptive image filter, wherein said output has the fixedly binary representation of maximum number of digits.
Description of drawings
Illustrative embodiments for a more complete understanding of the present invention and purpose thereof and potential advantages, with reference now to description taken together with the accompanying drawings hereinafter, wherein:
Fig. 1 is the synoptic chart that can realize the example system of embodiments of the present invention within it;
Fig. 2 is the perspective view that can realize the exemplary means of embodiments of the present invention within it;
Fig. 3 is the schematic diagram of exemplary circuit of the device of Fig. 2;
Fig. 4 is the block diagram of exemplary hybrid video coders;
Fig. 5 is the block diagram of exemplary mixed video decoder;
Fig. 6 is the flow chart that filter output generates that is used for according to an exemplary embodiment of the present invention;
Fig. 7 is the block diagram of floating-point filter coefficient to the exemplary realization of the conversion of integer filter coefficient;
Fig. 8 is the block diagram according to the exemplary realization of the sef-adapting filter of one embodiment of the present invention;
Fig. 9 is the block diagram according to the exemplary realization of the sef-adapting filter of another execution mode of the present invention;
Figure 10 is the block diagram according to the exemplary realization of the sef-adapting filter of the another execution mode of the present invention;
Figure 11 is the schematic diagram according to exemplary reduction (clipping) operation of one embodiment of the present invention; And
Figure 12 is the block diagram according to the exemplary realization of the sef-adapting filter of another execution mode of the present invention.
Embodiment
Can understand illustrative embodiments of the present invention and potential advantages thereof by the Fig. 1 with reference to the accompanying drawings best to Figure 12, similar label is used for the similar and corresponding part of each accompanying drawing in the accompanying drawing.
Fig. 1 is the synoptic chart of the embodiments of the present invention example system 10 that can realize therein.System 10 can comprise the combination in any of wired or wireless network, and wherein these networks include but not limited to mobile telephone network, WLAN (wireless local area network) (LAN), a bluetooth territory net, ethernet lan, token ring lan, wide area network, internet etc.System 10 can comprise wire communication facility and Wireless Telecom Equipment.
For example, system shown in Fig. 1 10 comprises mobile telephone network 11 and internet 28.The connection of leading to internet 28 can include but not limited to that long distance wireless connects, short-distance radio connects, and various wired connection, and wired connection includes but not limited to telephone wire, cable circuit, power line, TV broadcasting etc.
The exemplary communication device of system 10 can include but not limited to combination 14, mobile phone 12, PDA 16, integrated information receiving and transmitting equipment (IMD) 18, desktop computer 20, notebook 22 of PDA(Personal Digital Assistant) and mobile phone etc.Communication equipment can be fix or when carrying, move by the people in advancing.Communication equipment can also be in the travel pattern, includes but not limited to automobile, truck, taxi, bus, train, ship, aircraft, bicycle, motorcycle etc.Some or all of communication equipment can send by the wireless connections 25 of leading to base station 24 with receipt of call and message and with the service provider and communicate.Base station 24 can be coupled to the webserver 26, the communication that this webserver 26 allows between mobile telephone network 11 and the internet 28.System 10 can comprise additional communication equipment and dissimilar communication equipments.
Communication equipment can use various transmission technologys to communicate, include but not limited to code division multiple access (CDMA), global system for mobile communications (GSM), Universal Mobile Telecommunications System (UMTS), time division multiple access (TDMA), frequency division multiple access (FDMA), transmission control protocol/Internet protocol (TCP/IP), sending and receiving short messages service (SMS), Multimedia Message transmitting-receiving service (MMS), Email, instant message transrecieving service (IMS), bluetooth, IEEE 802.11 etc.Related communication equipment can use various media to communicate in realizing various execution modes of the present invention, and described medium includes but not limited to radio, infrared ray, laser, cable connection etc.
Fig. 2 is the perspective view of the embodiments of the present invention exemplary means that can realize therein, and Fig. 3 is the schematic diagram of the exemplary circuit of Fig. 2 device.Yet, should be appreciated that the present invention is not intended to be limited to a kind of mobile device 12 or other electronic equipments of particular type.The Partial Feature of drawing among Fig. 2 and Fig. 3 or whole feature can be included in any or armamentarium that presents among Fig. 1.The mobile device 12 of Fig. 2 and Fig. 3 comprises shell 30, display 32, keypad 34, microphone 36, earphone 38, battery 40, infrared port 42, antenna 44, smart card 46, card reader 48, wireless interface circuit 52, codec circuit 54, controller 56 and memory 58 according to an embodiment of the invention.Independent circuit and element can be all types well known in the art, for example the mobile phone in the Nokia scope.
Fig. 4 is the block diagram of exemplary hybrid video coders 200.Encoder 200 can be the part of electronic equipment (for example, mobile device 12).At the encoder layer, image or frame piece in the present frame (for example, current frame of just being encoded by encoder) for example carry out inter prediction by inter predictor 206.Alternatively, image or frame piece can for example carry out infra-frame prediction by intra predictor generator 208.In inter prediction, image or frame piece are based on being predicted by another image block in the reference frame of encoder stores.The motion vector of describing the alternate position spike between two image blocks is coded in the compression expression.In infra-frame prediction, the pixel value of encoding before image that just is being encoded or frame piece in the present frame is used to align the image that is encoded or the pixel value of frame piece is predicted.Mode selector 210 decisions are to use inter prediction or infra-frame prediction.From actual frame data, deduct the view data of prediction, obtain residual error.Residual error is used conversion such as discrete cosine transform DCT 222 to generate the DCT coefficient.This DCT coefficient can quantize and carries out entropy coding by entropy coder 226 by quantizer 224.Also can should spend quantizer 228 and inverse converter 230 to the coefficient that quantizes to generate residual error.With the view data of the residual sum prediction that generates reconstructed reference frame in addition mutually.The reference frame of reconstruct can further carry out filtering to improve picture quality by filter 216.Reference frame through filtering can be stored in the reference frame storing device 218 then to be used for the inter prediction when subsequent frame is encoded.At the encoder layer, can be to the area applications interpolation of image or frame.In the zone of institute's interpolation, the coordinate of motion vector can have the value of band pixel fraction.For example, H.264 video standard can have the motion vector of describing coordinate with half-pixel and 1/4th pixels.Illustrative embodiments of the present invention has instructed the sef-adapting filter with high coding efficiency to realize.In an illustrative embodiments, sef-adapting filter can be applied to interpolation so that strengthen code efficiency, and filter coefficient can transmit to decoder in bit stream.If selective filter coefficient from the known tabulation of encoder 200 and decoder, then it also can send with signal in bit stream, for example indicate the filter coefficient of selection from this tabulation.
Fig. 5 is the block diagram of exemplary mixed video decoder 300.Decoder 300 can be the part of electronic equipment (for example, mobile device 12).At the decoder place, bit stream can at first for example carry out the entropy decoding by entropy decoder 304.DCT coefficient from entropy decoder 304 can for example be reversed quantification by inverse quantizer 306.Inverse quantization DCT coefficient from inverse quantizer 306 can carry out inverse transformation to generate residual error by inverse dct transform 308.For example can by fallout predictor 312 use information of forecastings (for example motion vector) come from the reference frame of storage or present frame before the pixel generation forecast data of decoding.Fallout predictor can be used inter prediction or infra-frame prediction.The type of the inter prediction that will use sends to decoder 300 with signal in bit stream usually.Prediction data and residual error are sued for peace to generate preliminary reconstructed image.Preliminary reconstructed image can be used for the generation forecast data by fallout predictor 312.Can use filtering so that eliminate block (blocking) and other influences of not expecting by 318 pairs of preliminary reconstructed images of filter, and generate final reconstruct coded frame.300 layers of decoders, can obtain filter coefficient from bit stream.Decoder 300 can use filter coefficient to come interpolation is carried out in the zone of image or frame then.In an illustrative embodiments, described sef-adapting filter can be used for video encoding standard, such as H.263, MPEG 4 part 2s, H.264, H.265 or the like.
Various execution mode of the present invention provides the equipment and the method for the fixed point realization that is used for adapting to image filtering.Image or frame interpolation are the exemplary application of adapting to image filtering in video coding or the video decode.Under the situation that the motion vector coordinate defines with the mark of pixel, use in this position adjacent pixel values and may other the value of interpolation come image value is carried out interpolation.Video Codec H.264 in, for example use 6 tap interpolation filters, for example have the filter of 6 coefficients.In video compression, the code efficiency of video coding system, for example the bit rate of compression expression or file size can be improved by using adaptive interpolation filters the visual quality of video sequence.Adaptive interpolation filters has the filter coefficient of can be at each frame place or changing in each macroblocks.In video coding, be used for the sef-adapting filter of interpolation, the non-static attribute of capturing video signal more accurately by use.When using sef-adapting filter, video encoder 200 for example can be to decoder transmission filter coefficient in bit stream.Encoder 200 can change filter coefficient in frame, sheet or macro block rank by analyzing vision signal.Decoder 300 uses the filter coefficient that is received, rather than the predefine filter in the inter prediction process.
In the fixed point integer of sef-adapting filter was realized, for the structure of determining to provide the n position to realize, wherein n was an integer, even filter coefficient can be got any value.Might can utilize low accuracy to define by filter coefficient, make and carry out interpolation and can not overflow the n bit accumulator with n position integer arithmetic.Yet the method is unsatisfactory, because its accuracy that reduces owing to filter coefficient causes tangible code efficiency loss.Embodiments of the present invention are described the fixed point that can realize high coding efficiency and are realized.Various execution mode of the present invention can be realized at encoder and at the decoder layer.In an illustrative embodiments, use 16 realizations.
Although described exemplary 6 tap filters, the invention is not restricted to 6 tap filters.The selection of 6 tap filters is the examples that are used to explain various execution modes, and it not should be understood to the constraint of any execution mode of the present invention or requirement.Based on execution mode described herein and/or instruction, be clearly to those skilled in the art to the summary of any tap length and/or the non-separable filter of bidimensional.
At having floating-point filter coefficient C 0', C 1' ..., C 5' filter, corresponding to image sampling X k, X K-1..., X K-5Filter be output as:
Y ′ = Σ i = 0 5 C i ′ · X k - i , - - - ( 1 )
K wherein, k-1 ..., k-5 is the index of image data samples.In order to carry out filtering with integer arithmetic, at first the floating-point filter coefficient is mapped as integer value, it is:
C i = int ( C i &prime; < < N ) , - - - ( 2 )
Wherein int (.) indication is converted to the type conversion operator (casting operator) of integer by removing floating part with floating number,<<the indication operator that moves to left, N is the move to left positive integer of number of expression.The accuracy of Integer N decision integer filter coefficient, for example the value of N is big more, and the accuracy of integer filter coefficient is just good more.Yet, in an illustrative embodiments, overflowing during N should realize with the integer arithmetic of avoiding sef-adapting filter enough for a short time.Filtering with integer arithmetic can be defined as:
Y = ( &Sigma; i = 0 5 C i X k - i + R ) / M , - - - ( 3 )
Wherein M equals 2 N, R is the skew of rounding off, in an illustrative embodiments, R equals M/2.In order to simplify, the skew of supposing hereinafter to round off is 0.This is because the result in the described execution mode is not subjected to the influence of the value of R.Yet, in other embodiments, if the bias effect result that rounds off can include it in consideration.In replacing using the illustrative embodiments of calculating expensive divisor operator, use the operator that moves to right.Therefore:
Y = ( &Sigma; i = 0 5 C i X k - i ) > > N . - - - ( 4 )
Fig. 8 has described the integer of exemplary 6 tap filters and has realized.In order to carry out the computing in the equations (4) with 16 arithmetic, convolution and value
S = &Sigma; i = 0 5 C i X k - i - - - ( 5 )
Be placed in 16 bit registers, and not considered pixel and coefficient value.Avoid just overflowing and bear that to overflow be desired in 16 bit arithmetics.In an illustrative embodiments, can pass through (positive C with 255x iSum) is placed in 16 bit registers of symbol and avoids just overflowing, wherein i=0 to 5.In an illustrative embodiments, can be by 255x (be born C iSum) is placed in and avoids negative overflowing, wherein i=0 to 5 in 16 bit registers of symbol.Suppose that pixel sampling defines with 8, then maximum and the minimum value that can get of pixel is 255 and 0.In order to prevent just to overflow,
255x (positive C iSum)≤2 15-1 (i=0 to 5)
(positive C iSum)≤128 (i=0 to 5)
C i<16 (supposing that all coefficients all are positive worst case).Overflow in order to prevent to bear,
255x (negative C iSum) 〉=-(2 15-1) (i=0 to 5)
(negative C iSum) 〉=-128 (i=0 to 5)
C i>-16 (supposing that all coefficients all are negative worst case).
As implied above, if for all filter coefficients-16<C i<16, then guaranteed 16 bit arithmetics.If the value of N is 4, then the value of filter coefficient can be-15/16 ,-14/16...14/16,15/16.The accuracy that this means filter coefficient is 1/16.1/16 filter coefficient accuracy is too low, because it has reduced the code efficiency of adaptive-interpolation scheme.
Fig. 6 is the flow chart that filter output generates that is used for according to an exemplary embodiment of the present invention.Have at filter coefficient under the situation of floating point values, in frame 410, the value of filter coefficient can be converted to integer.The accuracy of conversion can be defined by the index of precision.Higher accuracy can utilize the bigger index of precision to realize.In frame 420, integer value filter coefficient and image data samples can be used to calculate convolution and or a plurality of part convolution and.The big index of precision with n position algorithm calculations convolution and or the part convolution and the time may cause just overflowing or negative overflowing, wherein n is an integer.For fear of just overflowing or negative overflowing, can the restriction filter coefficient, for example by preventing from just to overflow and/or negative constraint of overflowing or the upper bound and lower bound come the restriction filter coefficient.In frame 430, generate filter output.In the exemplary embodiment, based on the convolution of in frame 420, calculating with generate filter output.In another illustrative embodiments, based on a plurality of part convolution of in frame 420, calculating with generate filter output.The computing of carrying out in frame 420 can be depended on the realization of filtering.
Fig. 7 is the block diagram of floating-point filter coefficient to the exemplary realization of the conversion of integer filter coefficient.In this illustrative embodiments, estimator 510 can generate floating-point filter coefficient C 0', C 1' ..., C 5'.For index of precision N, floating-point can be with floating-point coefficient convergent-divergent 2 to integer value transducer 520 N, N also promptly moves to left.In an illustrative embodiments, the integer value filter coefficient equals the integer part through floating-point coefficient convergent-divergent or through moving to left.Although figure 7 illustrates a plurality of transducers 520, in the alternative, can use same transducer that a more than floating-point filter coefficient is converted to the integer filter coefficient.In another illustrative embodiments, the conversion from the floating-point coefficient to the integer quotient can realize in estimator 510.For example, if use recursive algorithm (for example, lowest mean square LMS algorithm) to come the estimation filter coefficient, then can use conversion at each iteration place of this algorithm.
Fig. 9 is the block diagram according to the exemplary realization of the sef-adapting filter of another execution mode of the present invention.Be stored in the image data samples X in the register 710 k, X K-1..., X K-5Integer quotient C with correspondence 0, C 1..., C 5Use integer multiplier 720 to multiply each other.Two subclass of product, for example output of integer multiplier is fed to two different accumulators 730 and 730 '.Accumulator 730 and 730 ' is generating portion convolution and S1 and S2 respectively.Each of S1 and S2 be the convolution that is associated with the subclass of filter coefficient and, for example S1 and C 0, C 1And C 2And corresponding pixel value is associated, and S2 and C 3, C 4And C 5And corresponding pixel value is associated.S1 and S2 move to right through shift operator 740, for example move to right 1.To the result summation after the displacement, and shift operator 750 N that should and moves to left, generate filter and export Y.Filter output Y equal (S1+S2)>>N, wherein N is the index of precision of the accuracy of decision integer filter coefficient.In this illustrative embodiments, the index of precision defines avoiding based on the constraint to S1 and S2 overflows.In 16 realizations, for fear of overflowing and underflow:
-(2 15-1)≤S 1≤2 15-1 and-(2 15-1)≤S2≤2 15-1.
Since image pixel value normally positive and have integer range [0,255], therefore
255x (positive C iSum)≤2 15-1, for i=0 to 2 or i=3 to 5; And
255x (negative C iSum) 〉=-(2 15-1), for i=0 to 2 or i=3 to 5.
Also promptly, positive C iSum≤128 and negative C iSum 〉=-128.Therefore ,-32<C i<32.If N is 5, then the value of filter coefficient can be-31/32 ,-31/32...30/32,31/32.The accuracy that this means filter coefficient is 1/32, and this is according to the execution mode of describing among Fig. 8 and to filter coefficient without limits and the twice of the accuracy of the filter coefficient that interpolation obtained that carries out.In other words, with utilize a convolution with and the realization of not having a sef-adapting filter of the restriction forced compare, by restriction positive coefficient sum and negative coefficient sum, the execution mode of describing among Fig. 9 provides 16 realizations of the filtering of the filter coefficient accuracy with twice.
Fig. 8 is the block diagram according to the exemplary realization of the sef-adapting filter of one embodiment of the present invention.According to this illustrative embodiments, be stored in the image data samples X in the register 610 k, X K-1..., X K-5And corresponding integer quotient C 0, C 1..., C 5Use integer multiplier 620 to multiply each other.Product, for example output of integer multiplier is fed to accumulator 630.Accumulator 630 calculate corresponding to the convolution of all filter coefficients and, but restricted to coefficient, for example:
255x (positive C iSum)≤2 15-1, for i=0 to 5; And
255x (negative C iSum) 〉=-(2 15-1), for i=0 to 5.Perhaps similarly
(positive C iSum)≤128, for i=0 to 5; And
(negative C iSum) 〉=-128, for i=0 to 5.
In this case, N can be greatly as 6.For N=6, filter coefficient can value-63/64 ,-62/64...62/64,63/64.If use higher accuracy, for example N=7 then for example has at least one filter coefficient and may cause overflowing for negative filter.4 times of accuracy when being N=4 at the accuracy that N=6 reached.
Figure 10 is the block diagram according to the exemplary realization of the sef-adapting filter of the another execution mode of the present invention.According to this illustrative embodiments, be stored in the image data samples X in the register 810 k, X K-1..., X K-5And corresponding integer quotient C 0, C 1..., C 5Use integer multiplier 820 to multiply each other.Two subclass of product, for example output of integer multiplier is fed to two different accumulators 830 and 830 '.Accumulator 830 and 830 ' is generating portion convolution and S1 and S2 respectively.S1 is corresponding to equaled filter coefficient C by input 0, C 1And C 2And corresponding data sampling (X for example k, X K-1And X K-2) the product that generates of multiplier 820.Part and S2 are corresponding to equaled filter coefficient C by input 3, C 4And C 5And corresponding data sampling (X for example K-3, X K-4And X K-5) the product that generates of multiplier 820.For fear of overflowing:
Positive C 0-C 1-C 2Sum≤128 and negative C 0-C 1-C 2Sum 〉=-128, and
Positive C 3-C 4-C 5Sum≤128 and negative C 3-C 4-C 5Sum 〉=-128.
Part convolution and S1 use has the arithmetic of symbol to calculate, because filter coefficient C 0, C 1And C 2Arbitraryly can be positive or can bear.For typical image filter, interpolation filter for example, filter output is normally positive, because filter output presentation video pixel value.In part convolution and S1 and S2 are generally positive illustrative embodiments, for example when the filter symmetry, C wherein 0=C 5, C 1=C 4And C 2=C 3, part convolution and S1 and/or part convolution and S2 can utilize reduction operator 840 or 840 ' to cut down.Also promptly, if S1 bears, then S1 is reduced to 0, if and/or S2 bear, then S2 is reduced to zero.In convolution that will be negative be reduced to after 0, the sign bit that is used for S1 and S2 is generally 0.To the part convolution with after cutting down, can use signless addition operator 850 to calculate S1+S2.Cut down and use no symbol addition rather than have the symbol addition to calculate S1+S2, feasiblely might increase by 1 accuracy.Utilize this interpolation process, N can equal 7 and coefficient now can value-127/128 ,-126/128...126/128,127/128, its accuracy is 1/128.
Figure 11 is a schematic diagram of signed integer being cut down into the exemplary realization of signless integer.If the signed integer that is stored in 16 bit registers 841 is born, then symbol position 842 equals 1.If signed integer is positive, then symbol position 842 is 0.Reduction operation becomes 0 and every other position become 0 with the value of sign bit.In other words, reduction becomes 0 with negative integer.Therefore after cutting down, the sign bit of having cut down integer all is zero.
Figure 12 is the block diagram according to the exemplary realization of the sef-adapting filter of another execution mode of the present invention.In this exemplary realization, integer multiplier 920 is with the image data samples X in the register 910 k, X K-1..., X K-5Integer quotient C with correspondence 0, C 1..., C 5Multiply by mutually and generate 6 products, for example for each filter coefficient C iGenerate product C iX K-iAccumulator 930 uses corresponding to filter coefficient C 0, C 1, C 2Product come calculating section convolution and S1, for example S1=C 0X k+ C 1X K-1+ C 2X K-2Another accumulator 930 ' calculates corresponding to coefficient C 3, C 4, C 5Another convolution and S2, S2=C for example 3X K-3+ C 4X K-4+ C 5X K-5Respectively part convolution and S1 and S2 are used the operator 940 and 940 ' that moves to right.Accumulator 950 calculating and (S1>>1)+(S2>>1)-(K<<N), wherein K is an integer, N is the index of precision of filter coefficient.Shift operator 960 will with (S1>>1)+(S2>>1)-(K<<N) mobile N.This result [(S1>>1)+(S2>>1)-(K<<N)]>>N increases K to generate filter output.For many filters, interpolation filter for example, the amplitude of positive filter coefficient is usually greater than the amplitude of negative filter coefficient.In this illustrative embodiments, the part convolution and the value scope be shifted.To the part convolution and the value scope binary word of can avoiding waste that is shifted, for example the part convolution and binary representation, for example, for typical interpolation filter, negative part convolution and may not can taking place.In other words, for positive part convolution and the value binary word of distributing number greater than for negative part convolution and the number of the value binary word of distributing.Filter output is Y=[(C 0.X k+ C 1.X K-1+ C 2.X K-2The 1+ of)>>(D.X3+E.X4+F.X5)>>1-(K<<N)]>>N+K.In this illustrative embodiments, for example for K=128=2 7And N=7 overflows for fear of just overflowing and bearing,
255x (positive C iSum)≤(2 15-1)+2 14For i=0 to 2 or i=3 to 5
255x (negative C iSum) 〉=-(2 15-1)+2 14For i=0 to 2 or i=3 to 5.Also promptly,
(positive C iSum)≤2 7+ 2 6=192 for i=0 to 2 or i=3 to 5
(negative C iSum) 〉=-2 7+ 2 6=-64 for i=0 to 2 or i=3 to 5.
Utilize this interpolation process, N can be given as 7, and coefficient now can value-63/128 ,-62/128...190/128, and 191/128, accuracy is 1/128.The advantage of this scheme is: the number of value that is used to represent positive filter coefficient is greater than the number of the value that is used to represent negative filter coefficient, and for example the value of the negative filter coefficient of expression is-63/128 ...,-1/128, and the value of representing positive filter coefficient is 1/128 ..., 192/128.In another illustrative embodiments, the displacement in the value scope also can be applied to convolution and the S of Fig. 8.Median (for example, convolution and, the part convolution and or the part convolution of convergent-divergent and) scope in to use displacement be clearly to those skilled in the art.
As the image interpolation filter or comprise the illustrative embodiments of image interpolation filter, for different interpolation points, for example coordinate is defined as the point of several pixels of branchs (it is also referred to as sub-pixel usually) according to sef-adapting filter, and index of precision N can difference.For example, for an interpolation sub-pixel point, its index of precision can be 4, and for another interpolation sub-pixel point, its index of precision can be 6.In another execution mode, the index of precision can define based on the floating point values of filter coefficient.For example, if filter coefficient is less relatively, then can be used for integer representation by preferably big N.For example, if filter coefficient in scope [1,1], then the index of precision can be 7, and if filter coefficient in scope [0.5,0.5], then the index of precision can be 8.Other realizations also can use different modes to decide the value of the N that is used for different interpolation points.
Illustrative embodiments of the present invention has instructed 16 arithmetic of the adaptive interpolation filters with high coding efficiency to realize.By to the filter coefficient application limitations, for example the upper bound and following bound constrained have obtained the higher accuracy of filter coefficient.Illustrative embodiments of the present invention should not make an explanation with restrictive meaning.For example, the instruction of embodiments of the present invention can be applied in image or the frame interpolation, also can be applied to include but not limited to that piece decomposes (deblocking) filter, image and video enhancing and video and picture editting in other video codings, Video processing and the image processing application.It is apparent that for those skilled in the art, can be based on illustrative embodiments of the present invention and instruction, the n position arithmetic that exemplary 16 realizations of the sef-adapting filter described among the present invention is expanded to more general sef-adapting filter is realized.
Embodiments of the present invention can realize with the combination of software, hardware, applied logic or software, hardware and applied logic.Software, applied logic and/or hardware can reside on chipset, mobile device, desktop PC, laptop computer or the server.Applied logic, software or instruction set preferably maintain on any one of various conventional computer-readable mediums.In the context of this article, " computer-readable medium " can be any medium or device, and it can comprise, storage, transmission, propagation or transfer instruction be so that used or be used in combination with it by instruction execution system, device or equipment.
If expectation, the difference in functionality that discuss in this place can be by any orders and/or are carried out concomitantly mutually.And if expectation, above-mentioned functions one or more can be optionally or can make up.
Under the situation of the scope, explanation or the application that do not limit claims by any way, the technical advantage of one or more illustrative embodiments disclosed herein can be a high coding efficiency.Another of one or more illustrative embodiments disclosed herein may technical advantage can be that the sef-adapting filter with low computation complexity is realized.Another technical advantage of one or more illustrative embodiments disclosed herein can be to be used for the simple of video coding and image processing and efficient adaptive filtering.
Although it shall yet further be noted that and above described illustrative embodiments of the present invention herein, these descriptions should not be considered as limitation.But, can make some kinds of variants and modification and do not depart from the defined scope of the present invention of claims.

Claims (22)

1. device comprises:
Adaptive image filter, at least one integer quotient of wherein said adaptive image filter is restricted, at least in part based on described at least one integer quotient determine described adaptive image filter convolution and with a plurality of part convolution and at least one, convolution and with a plurality of part convolution and in described at least one have the fixedly binary representation of maximum number of digits, and described at least one integer quotient has the binary representation by the figure place of index of precision definition.
2. device as claimed in claim 1, wherein said adaptive image filter comprises the adaptive interpolation filters of video encoder, and in the described index of precision and described at least one integer quotient at least one is encoded in the bit stream.
3. device as claimed in claim 1, wherein said adaptive image filter comprises the adaptive interpolation filters of Video Decoder, and in the described index of precision and described at least one integer quotient at least one decoded from bit stream.
4. device as claimed in claim 1, wherein said device is a chipset.
5. device as claimed in claim 4 further comprises processor, and it is arranged to and carries out add operation and binary shift computing at least.
6. device as claimed in claim 5 further comprises memory cell, and it can be connected to described processor communicatedly and be arranged to described at least one integer quotient of storage.
7. device as claimed in claim 1, wherein said adaptive image filter comprises the adaptive interpolation filters of video encoder, and the described index of precision is different at different interpolation points.
8. device as claimed in claim 1, wherein said adaptive image filter comprises the adaptive interpolation filters of Video Decoder, and the described index of precision is different at different interpolation points.
9. method comprises:
At least in part based at least one restricted integer quotient of adaptive image filter determine convolution and with a plurality of part convolution and at least one, convolution and with a plurality of part convolution and in described at least one be restricted to and have the fixedly binary representation of maximum number of digits; And
At least in part based on convolution and with a plurality of part convolution and in described at least one generate the output of described adaptive image filter.
10. method as claimed in claim 9, wherein said adaptive image filter comprises interpolation filter.
11. as the method for claim 10, wherein said at least one restricted integer quotient has different arithmetic accuracy at different interpolation points.
12. method as claimed in claim 9, further comprise: at least one the corresponding integer quotient that at least one floating-point coefficient of described adaptive image filter is converted to described adaptive image filter, described at least one corresponding integer quotient has the second fixing binary representation of maximum number of digits, and described conversion further comprises described at least one the corresponding integer quotient of restriction.
13. method as claimed in claim 9, wherein said generation comprise described convolution and are shifted.
14. method as claimed in claim 9, wherein said generation comprises:
To described a plurality of part convolution and moving to right;
Calculate described a plurality of part convolution and the sum that moves to right; And
To the described a plurality of part convolution that move to right and described calculating and move to right.
15. method as claimed in claim 9, wherein said generation comprises:
With described a plurality of part convolution and in any negative part convolution and being reduced to after zero, calculate described a plurality of part convolution and sum; And
To described a plurality of part convolution and described calculating and move to right.
16. method as claimed in claim 9, wherein said generation comprises:
To described a plurality of part convolution and moving to right;
Calculate the described a plurality of part convolution that move to right and with the negative sum; And
To the described a plurality of part convolution that move to right with the described calculating of described negative with move to right.
17. method as claimed in claim 9, wherein said at least one restricted integer quotient is limited so that the one or more positive restricted integer quotient sum at least one subclass of described at least one restricted integer quotient has the upper bound, and the one or more negative integer quotient sum at least one subclass of described at least one restricted integer quotient has lower bound.
18. as the method for claim 17, wherein said generation comprises:
To described a plurality of part convolution and moving to right;
Calculate described a plurality of part convolution and the sum that moves to right; And
To the described a plurality of part convolution that move to right and described calculating and move to right.
19. as the method for claim 17, wherein said generation comprises:
With described a plurality of part convolution and in any negative part convolution and being reduced to after zero, calculate described a plurality of part convolution and sum; And
To described a plurality of part convolution and described calculating and move to right.
20. method as claimed in claim 9, at least one subclass of wherein said at least one restricted integer quotient have the value scope that another subclass is different at least with described at least one restricted integer quotient.
21. method as claimed in claim 9, wherein have on the occasion of described at least one restricted integer quotient sum have and the different value scope of described at least one restricted integer quotient sum with negative value.
22. a computer program that is implemented on the computer-readable medium comprises:
Computer code, be arranged at least in part based at least one restricted integer quotient of adaptive image filter determine convolution and with a plurality of part convolution and at least one, convolution and with a plurality of part convolution and in described at least one be restricted to and have the fixedly binary representation of maximum number of digits; And
Computer code, be arranged at least in part based on convolution and with a plurality of part convolution and in described at least one generate the output of described adaptive image filter.
CN200880117955.8A 2007-10-14 2008-10-13 Fixed-point implementation of an adaptive image filter with high coding efficiency Pending CN101878648A (en)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US11/872,024 2007-10-14
US11/872,024 US20090097545A1 (en) 2007-10-14 2007-10-14 Fixed-Point Implementation of an Adaptive Image Filter with High Coding Efficiency
US1965908P 2008-01-08 2008-01-08
US61/019,659 2008-01-08
PCT/IB2008/002709 WO2009050557A2 (en) 2007-10-14 2008-10-13 Fixed-point implementation of an adaptive image filter with high coding efficiency

Publications (1)

Publication Number Publication Date
CN101878648A true CN101878648A (en) 2010-11-03

Family

ID=40344364

Family Applications (1)

Application Number Title Priority Date Filing Date
CN200880117955.8A Pending CN101878648A (en) 2007-10-14 2008-10-13 Fixed-point implementation of an adaptive image filter with high coding efficiency

Country Status (6)

Country Link
EP (1) EP2208352A2 (en)
KR (1) KR20100074272A (en)
CN (1) CN101878648A (en)
MX (1) MX2010004071A (en)
RU (1) RU2010119176A (en)
WO (1) WO2009050557A2 (en)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102469310A (en) * 2010-11-19 2012-05-23 深圳市融创天下科技股份有限公司 Sub-pixel interpolation method and system
WO2013029474A1 (en) * 2011-08-31 2013-03-07 Mediatek Inc. Method and apparatus for adaptive loop filter with constrained filter coefficients
CN107431491A (en) * 2014-11-26 2017-12-01 科立康公司 Improved compressing file and encryption
CN111869208A (en) * 2018-03-09 2020-10-30 华为技术有限公司 Method and apparatus for image filtering using adaptive multiplier coefficients

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0474226A3 (en) * 1990-09-06 1993-01-20 Matsushita Electric Industrial Co., Ltd. Digitial filter composing apparatus and digital filter composing method therefor
EP0644684B1 (en) * 1993-09-17 2000-02-02 Eastman Kodak Company Digital resampling integrated circuit for fast image resizing applications
US5729483A (en) * 1995-11-14 1998-03-17 Advanced Micro Devices Implementation of a digital interpolation filter and method
GB2373661B (en) * 2001-03-23 2005-05-11 Advanced Risc Mach Ltd A data processing apparatus and method for performing an adaptive filter operation on an input data sample
TW200501565A (en) * 2003-05-15 2005-01-01 Neuro Solution Corp Digital filter and design method, design apparatus, and digital filter design program thereof

Cited By (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102469310A (en) * 2010-11-19 2012-05-23 深圳市融创天下科技股份有限公司 Sub-pixel interpolation method and system
WO2012065447A1 (en) * 2010-11-19 2012-05-24 深圳市融创天下科技股份有限公司 Sub pixel interpolation method and system
CN102469310B (en) * 2010-11-19 2015-02-04 深圳市云宙多媒体技术有限公司 Sub-pixel interpolation method and system
WO2013029474A1 (en) * 2011-08-31 2013-03-07 Mediatek Inc. Method and apparatus for adaptive loop filter with constrained filter coefficients
CN103703784A (en) * 2011-08-31 2014-04-02 联发科技股份有限公司 Method and apparatus for adaptive loop filter with constrained filter coefficients
CN103703784B (en) * 2011-08-31 2018-06-01 联发科技股份有限公司 Use the method and its device of adaptive loop filter processing encoding and decoding video
CN107431491A (en) * 2014-11-26 2017-12-01 科立康公司 Improved compressing file and encryption
CN111869208A (en) * 2018-03-09 2020-10-30 华为技术有限公司 Method and apparatus for image filtering using adaptive multiplier coefficients
CN111869208B (en) * 2018-03-09 2021-10-26 华为技术有限公司 Method and apparatus for image filtering using adaptive multiplier coefficients
US11265538B2 (en) 2018-03-09 2022-03-01 Huawei Technologies Co., Ltd. Method and apparatus for image filtering with adaptive multiplier coefficients
US11765351B2 (en) 2018-03-09 2023-09-19 Huawei Technologies Co., Ltd. Method and apparatus for image filtering with adaptive multiplier coefficients

Also Published As

Publication number Publication date
KR20100074272A (en) 2010-07-01
WO2009050557A3 (en) 2009-06-11
EP2208352A2 (en) 2010-07-21
RU2010119176A (en) 2011-11-20
MX2010004071A (en) 2010-06-01
WO2009050557A2 (en) 2009-04-23

Similar Documents

Publication Publication Date Title
US8416861B2 (en) Fixed-point implementation of an adaptive image filter with high coding efficiency
RU2577207C2 (en) Video encoding method and device
US20090097545A1 (en) Fixed-Point Implementation of an Adaptive Image Filter with High Coding Efficiency
CN100579224C (en) Method and apparatus for lossless video encoding and decoding
US8204119B2 (en) Moving picture prediction method, moving picture coding method and apparatus, and moving picture decoding method and apparatus
US8576097B2 (en) Coding using a mapping between a syntax element and a code word
US20230217028A1 (en) Guided probability model for compressed representation of neural networks
CN102845063A (en) An apparatus, a method and a computer program for video coding
CN102318342A (en) Joint coding of multiple transform blocks with reduced number of coefficients
CN102870411A (en) An apparatus, a method and a computer program for video processing
US20030103572A1 (en) Method and apparatus for encoding and decoding key data
US10609421B2 (en) Context derivation for coefficient coding
US8077991B2 (en) Spatially enhanced transform coding
US20120243606A1 (en) Methods, apparatuses and computer programs for video coding
US9432699B2 (en) Methods, apparatuses and computer programs for video coding
CN101878648A (en) Fixed-point implementation of an adaptive image filter with high coding efficiency
CN116886918A (en) Video coding method, device, equipment and storage medium
CN104365107A (en) Image encoding device, image encoding method, image encoding program, transmission device, transmission method, transmission program, image decoding device, image decoding method, image decoding program, receiving device, receiving method, and receiving program
KR20160118365A (en) Method for coding and an apparatus
CN115103191A (en) Image processing method, device, equipment and storage medium
KR101540510B1 (en) Method of intra prediction using additional prediction candidate and apparatus thereof
US11645079B2 (en) Gain control for multiple description coding
CN115442617A (en) Video processing method and device based on video coding
CN116095310A (en) Image encoding and decoding method and device, electronic equipment and storage medium

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C02 Deemed withdrawal of patent application after publication (patent law 2001)
WD01 Invention patent application deemed withdrawn after publication

Application publication date: 20101103