Flexible Macroblock Ordering - Wikipedia, the free encyclopedia

来源:百度文库 编辑:神马文学网 时间:2024/10/02 18:03:30
Flexible Macroblock Ordering
From Wikipedia, the free encyclopedia
Jump to:navigation,search
H.264/MPEG-4 AVC is a new standard for digitalvideo compression jointly developed by ITU-T’s Video Coding Experts Group (VCEG) and ISO/IEC’s Moving Picture Experts Group (MPEG).Next to efficient coding algorithms, the H.264/AVC specificationsdefine a set of error resilience tools. The most striking one isFlexible Macroblock Ordering or FMO, a technique which is described inthis article.
Contents
[hide]
1 Description
2 Type
3 Applications
4 Experimental Results
5 Conclusions
6 See also
7 External links
[edit] Description
One of the new characteristics of the H.264/AVC standard is thepossibility of dividing an image in regions called slice groups. Eachslice group can also be divided in several slices; therefore, we needto define the wordslice as a sequence ofmacroblocksthat belong to the same slice group. These macroblocks are processed ina scan order (left to right and top to bottom). A slice can be decodedindependently.
FMO consists of deciding to which slice each macroblock of the imagebelongs. Each macroblock can be assigned freely to a slice group usingan MBAmap (MacroBlock Allocation map). The MBAmap consists of anidentification number for each macroblock of the image that specifiesto which slice group that macroblock belongs. The number of slicegroups is limited to 8 for each picture to prevent complex allocationschemes.
If we deactivate the FMO, the images will be composed of a singleslice with the macroblocks in a scan order. The use of FMO is totallycompatible with any type ofinter-frame prediction.
With this technique, we can correct errors easily by exploiting the spatialredundancyof the images. It’s a good idea to choose the slice groups in a waythat no macroblock and its neighbors belong to the same group.Therefore, if a slice is lost duringtransmission,it’s easy to reconstruct the lost blocks with the information of theneighboring blocks. We have to consider the transmissioncharacteristics of these slices: each slice is transmittedindependently in separate units calledpackets. Each packet contains in its ownheader the information to decode itself without any other packet’s information (if the images used as reference are the same in theencoder and thedecoderside). The use of FMO together with advanced error resilience tools cankeep the visual quality even with a packet loss rate of 10%.
[edit] Type
When using FMO, the image can be divided in different scan patternsof the macroblocks. FMO consists of 7 different types, labeled Type 0 to Type 6.Type 6 is the most random one and allows full flexibility to the user.All the other ones contain a certain pattern. These patterns can beexploited when storing and transmitting the MBAmap:
Type 0: uses runlengths which are repeated to fill the frame. Therefore only those runlengths have to be known to rebuild the image on the decoder side.
Type 1: also known as scattered slices; it uses amathematical function, which is known in both the encoder and the decoder, to spread the macroblocks. The distribution in the figure, in which the macroblocks are spread forming a chess board, is very common (see Applications).
Type 2: is used to mark rectangular areas, so called regions of interest. In this case thecoordinates top-left and bottom-right of the rectangles are saved in the MBAmap.
Type 3-5: are dynamic types that let the slice groups grow and shrink over the different pictures in a cyclic way. Only the growth rate, the direction and the position in the cycle have to be known.

Note: Each color represents a slice group
[edit] Applications
In this section we describe some of the possible applications of FMO in H.264/AVC video coding:
The FMO Type 1 can be useful to maintain privacy invideoconferences.The image is divided into 2 slice groups with the macroblocks spreadforming a chess board. Each slice group is sent in a different packet.This way, if ahacker wants to decode the videoconference, he or she will have to know exactly in which two packets the information is being sent.
The FMO Type 1 can also be used in transmission environments with a high packet loss rate (example seen in Experimental Results).
The FMO Type 2 can also be very useful. Let’s imagine we want to transmit a news bulletin video with a lowbit rate.If we encode the whole image with the bit rate distributed equally forall the macroblocks we‘ll get some bad results. Humans are particularlysensitive to image errors in faces, so we can mark the region of the newsreader’s faceso it‘s encoded with more bits. Therefore, the background of the setwill be encoded with less bits and the newsreader with a lot more bits(maintaining the total bit rate as we had before). This way, thesubjective visual quality will be enhanced significantly.
[edit] Experimental Results
To do these experiments we have used reference software of theH.264/AVC standard [1]. In the images below we can see two frames ofthe Stefan.yuv sequence, the first one without using FMO and the second one using FMO Type 1:

We can clearly see in the bottom-right corner of the image that somepackets were lost during transmission and the macroblocks of the imagecouldn’t be decoded. But when we use FMO Type 1, we have two slicegroups dividing the image like a chess board. Therefore, when a packetof the slice group 0 is lost, we can recover that part of the imageinterpolating the neighboring macroblocks that have not been lost because they belong to slice group 1.
[edit] Conclusions
This overview of FMO and the experimental results appearing in thisarticle clearly show that FMO is a very useful error resilience tool.Its use can enhance visual quality, both subjective and objective (SNR orMSE),when the packets are being transmitted in an environment with a certainpacket loss rate. Even though we’ve been exposing the advantages ofFMO, we also have to consider its main disadvantage: we have to sendthe information of which FMO we’re using in the header of the packet.That means we have a significant increase in the number of bits we haveto send. Therefore, the use of FMO is only recommended when we knowthat the transmission environment is likely to have a rather highpacket loss rate.
[edit] See also
Video coding
MPEG-2
[edit] External links
[1] Software H.264:http://iphome.hhi.de/suehring/tml/download/
T.Wiegand, G.J. Sullivan, G. Bjøntegaard, A.Luthra: Overview of the H.264/AVC Video Coding Standard. IEEE Transactions on Circuits and Systems for Video Technology, Vol. 13, No. 7, July 2003
Y.Dhondt, P.Lambert: Flexible Macroblock Ordering, an error resilience tool in H.264/AVC. Fifth FTW PhD Symposium, Faculty of Engineering, Ghent University, Desembre 2004, Paper No. 106