Beeld en videocodering - deel 3

MPEG

Een belangrijke standaard voor videocodering van bewegende beelden is MPEG (Moving Picture Experts Group), een samenwerkingsverband van de International Standards Organisation (ISO) en de International Electro-Technical Commission (IEC). Deze groep werkt aan de codering van bewegende beelden en de bijbehorende audio. Bij MPEG worden periodiek beelden volgens JPEG gecodeerd verzonden en voor de tussenliggende beelden worden alleen de bewegingen en de verschillen overgezonden. Daarbij wordt in de encoder ook gebruik gemaakt van beeldanalyse om bewegingen te kunnen voorspellen. Bij de voorspellingen van bewegingen wordt zowel van voorafgaande als van komende beelden gebruik gemaakt. Hiermee kan een typische reductiefactor van 100:1 worden gehaald. MPEG is asymmetrisch, dat wil zeggen dat de codering erg complex is en veel rekenkracht vereist, terwijl de decodering relatief simpel is en door een relatief goedkope decoder chip of zelfs door een hedendaagse PC in software kan worden uitgevoerd. Bij MPEG wordt gebruik gemaakt van een drietal typen gecodeerde beelden. I-beelden (Intra frames) worden JPEG-gecodeerd als een stilstaand beeld; P-beelden (Predicted frames) worden voorspeld aan de hand van het voorafgaande I of P-beeld, indien geen goede voorspelling kan worden gedaan, worden deze als een stilstaand beeld gecodeerd; B-beelden (Bidirectional) worden voorspeld aan de hand van de twee dichtstbijzijnde omliggende I- of P-beelden. Een typische beeldvolgorde voor een MPEG-stroom is als volgt: IBBPBBPBBPBBI; er zijn dus 12 beelden van I naar I.

Alhoewel bovenstaande werkingsprincipes algemeen gelden voor MPEG zijn er verschillende varianten.

MPEG-1 is ontworpen voor digitale opslag van video met een bitsnelheid tot 1.5 Mbit/s. Deze standaard wordt veel gebruikt voor de opslag van video-informatie op een CD-ROM. Op een CD-ROM kan ongeveer 72 minuten video met VHS-kwaliteit (met een beeldgrootte van 352*288, 24-30 beelden per seconde), met bijbehorend geluid, worden opgeslagen. De compressie van audio kan worden verricht met verschillende kwaliteiten en dus ook verschillende bitsnelheden van 64 , 96, 128 of 192 kbit/s.

MPEG-2 is met name bedoeld voor TV-transmissie en andere toepassingen met een bitsnelheid van 4 - 9 Mbit/s of hoger. MPEG-2 levert een zeer goede kwaliteit. Een veel gebruikt profiel levert een beeldgrootte van 720*480, 30 beelden per seconde bij een bitsnelheid van 15 Mbit/s. In HDTV resolutie wordt een beeld geleverd van 1920*1080, 30 beelden per seconde bij een bitsnelheid tot 80 Mbit/s. Voor audio kan hier van 5 kanalen gebruik worden gemaakt (links, rechts, midden en twee surround kanalen) plus een lagesnelheidskanaal of 7 verschillende commentaarkanalen. MPEG-2 decoders zijn compatibel met MPEG-1 en kunnen deze dan ook decoderen. MPEG-2 wordt gebruikt door de digitale opvolger van de analoge televisie (Digital Video Broadcast), deze standaard wordt al toegepast voor Direct Broadcast Satellite (DBS) en vindt nu ook zijn weg bij kabeltransmissie en bij aardse televisie. Daarnaast wordt MPEG-2 gebruikt door de DVD en bij HDTV.

MPEG-3 was bedoeld voor HDTV, later bleek dat MPEG-2 hiertoe geschikt was en HDTV is dan ook als apart profiel binnen MPEG-2 geschoven. MPEG-3 bestaat dan ook niet meer.

MPEG-4 is een codering die bedoeld is voor multimediatoepassingen met lage bitsnelheden. Dit systeem is met name ontworpen voor lage snelheids videocommunicatie en interactieve multimediatoepassingen over vaste- en mobiele telefoonlijnen. De typische bitsnelheden die MPEG-4 Versie 1 ondersteunt liggen tussen de 5 kbit/s en 10 Mbit/s. Dergelijke hoge reductiefactoren worden gehaald door in de beelden objecten te definiëren. Ieder frame van een videostroom wordt onderverdeeld in een aantal objecten (deze worden VOP's genoemd). Bij de codering wordt gebruik gemaakt van codering van de vorm en de textuur, waarbij voorspelling van de bewegingen wordt gebruikt. Bij de codering van de VOPs wordt, vergelijkbaar met MPEG-1 en MPEG-2 gebruik gemaakt van I-VOP, P-VOP en B-VOP.

MPEG-4 is anders dan MPEG-1 en 2 een standaard voor multimedia. Naast audio en video-elementen kan het ook andere elementen bieden, zoals tekst, hyperlinks en webpagina's. Dit biedt meer interactieve mogelijkheden. Van MPEG-4 zijn verschillende implementaties die niet noodzakelijkerwijs alle mogelijkheden van de standaard omvatten.

H.261

H.261 is een ITU standaard voor videocompressie ten behoeve van videoconferentie, maar kan ook voor andere toepassingen worden gebruikt. H.261 kan worden gebruikt voor communicatiekanalen met een bitsnelheid gelijk aan een veelvoud van 64 kbit/s, dezelfde datastructuur als bij ISDN, met een maximum van 30 kanalen (30*64 kbit/s).

Net als bij MPEG beschrijft H.261 de videoinformatie in het frequentiedomein door eerst een DCT uit te voeren en alleen bepaalde beelden geheel (weliswaar gecodeerd) te verzenden en van tussenliggende beelden alleen de verschillen over te zenden. MPEG maakt hierbij gebruik van voorspelling van de beweging. Deze rekenintensieve bewerking wordt bij H.261 niet toegepast. Wel wordt gebruik gemaakt van bewegingscompensatie. In de beelden wordt gezocht naar een groep van pixels die in het volgende beeld is terug te vinden. Indien dit het geval is wordt alleen het verschil en de bewegingsvector gecodeerd. Voor de codering wordt net als bij MPEG gebruik gemaakt van een Huffman codering, waarbij veel voorkomende symbolen met weing bits worden beschreven en weinig voorkomende symbolen met veel bits worden beschreven (zie datacompressie).

Anders dan bij JPEG en MPEG, welke resolutie en beeldformaat-onafhankelijk zijn, wordt bij H.261 gewerkt met twee standaard beeldformaten; Common Interchange Format (CIF) welke overeenkomt met een beeldformaat van 352*288 en Quarter CIF (QCIF) met een beeldformaat van 176 * 144.

Bij MPEG wordt bij een bepaalde beeldkwaliteit de compressie gemaximaliseerd. H.261 daarentegen, wat bedoeld is voor gebruik over telefoonlijnen, houdt de datasnelheid constant en probeert daarbij de coderings- en decoderingsvertraging te minimaliseren. Dit houdt in dat een afweging moet worden gemaakt tussen beeldsnelheid en beeldkwaliteit. Als de beweging in een beeld toeneemt (een snel bewegend voorwerp bijvoorbeeld) moet er meer worden gerekend en gewoonlijk moet dan de beeldkwaliteit worden verslechterd om de beeldsnelheid constant te kunnen houden of vice versa.

H.263

H.263 is een verbeterde versie van H.261 en is backward compatibel met H.261. De beeldkwaliteit van H.263 is voor bitsnelheden onder de 100 kbit/s superieur ten opzichte van H.261. De belangrijkste verbetering zit in de bewegingscompensatie. Bij H.261 beperkt de bewegingscompensatie zich tot een geheel aantal pixels. Beweegt een voorwerp zodanig dat deze, tijdelijk, als het ware tussen pixels invalt dan kan deze niet goed worden gecompenseerd. Bij H.263 wordt gebruik gemaakt van interpolatie waardoor een beweging in halve pixels tussen opeenvolgende beelden wel kan worden teruggevonden en opgevangen.

H.264 en MPEG-4/AVC

De ITU en MPEG hebben besloten de krachten te bundelen. Het resultaat is de H.264 Advanced Video Codec. Deze is tevens onderdeel van de MPEG-4 standaard.

Standaarden voor videoconferentie

Voor videoconferentie zijn door de ITU verschillende standaarden ontwikkeld, die voor transport over verschillende netwerken zijn geoptimaliseerd. De belangrijkste hiervan zijn:

Dit zijn een soort kapstokstandaarden, waar de verschillende standaarden voor de communicatie, videocodering, audiocodering en voor het transport van data ondergebracht worden. Voor de codering van video wordt bij alle drie de standaarden van H.261 of H.263 gebruik gemaakt. Voor de compressie van het geluid, meestal spraak, kan gebruik worden gemaakt van een veelheid aan standaarden waaronder G.711, G.722 en G.728.

Naast deze drie standaarden, die voor nagenoeg alle beschikbare netwerken kunnen worden toegepast, heeft de ITU nog een drietal standaarden ontwikkeld specifiek ten behoeve van transport via ATM. Dit zijn:

Ook hier wordt voor de videocodering gebruik gemaakt van H.261 of H.263, met uitzondering van H.310 waar van H.261 of MPEG-2 gebruik wordt gemaakt.