In many coding algorithms, one of the most annoying types of image deterioration occurring at lower bit rate is the so called blocking effect. It is caused by the unnatural way of dividing up images in rectangular blocks with a fixed grid. Because the coding of each block is independent, nothing assures the continuity of the coded image values at the border between blocks. This gives rise to sometimes prominent artificial edges in the coded image. In image sequenccs, a background grid of non-moving edges viewed against a moving scene, results in a very unnatural and unpleasing type of degradation.To prevent these blocking effects from occurring, a lot of algorithms have been used. However, many are not suitable for incorporation in the main codec loop, but can only be seen as a cosmetic post filter. The simple algorithm described here is usable for that purpose.
Existing deblocking schemesMany schemes have been invented to do away with blocking effects. Most of them can be assigned into one of two main types:Smoothing filters These are essentially low pass filters applied over the whole image, t o smooth it. The more clever algorithms take advantage of the fact that we know where to expect the artificial edges. Therefore, they can filter the image selectively at those places perpendicularly to the expected artifact.They are often part of the cosmetic post filter applied at the decoder site, outside of the main codec loop.Surface fitting These algorithms fit surfaces over the block, according to a set of boundary conditions. They often don't give such a good visual appearance as those of category one, but they have some advantages as they can much more easily be incorporated into the main codec loop (see further).'This research has been sponsored by the Belgian government -"Diensten voor Programmatie van het Wetenschapsbeleid" -in the framework of COST 0-7803-1772-6/94/$3.00 @ 1994 IEEE 9Reasons for incorporating the deblocking scheme inside the codec loopThere are several advantages of incorporating the deblocking scheme inside the main codec loop, rather than using them as a cosmetic post filter.To prevent more artificial edges Blocking edges move around the image after motion compensation. Then they are no longer situated at known places. A cosmetic post filtering has to smooth the complete image to get rid of them.To make better predictions Quite often, the deblockiiig itself is not such a bad representation of reality. So it rail be seen as a kind of prediction scheme by itself.
To prevent disasters If a block gets a bad treatnwntby the deblocking outside of the codec loop, it will nevrii get corrected. Incorporation in the codec loop liin~ts t l i r y dangers of this possibility, because it will be corrected aftr.1 one field or frame.
Implications of incorboration inside the codec loopThe first category of algorithms is not well suited for i i i m rporation in the main codec loop, because they modify soiiie basic, properties of a block. For instance, imagine a hybrid D(:T t y p codec. When its bitrate is for...