FMO: diferència entre les revisions

Contingut suprimit Contingut afegit
m Corregit: - de la ISO/IEC. + de l'ISO/IEC.
m Canvis menors, neteja, replaced: s'utilitza → es fa servir AWB
Línia 1:
L'[[H.264/MPEG-4 AVC]] és el nou estàndard de compressió de vídeo digital desenvolupat conjuntament pel Grup d'Experts en Codificació de Vídeo (VCEG) de la [[ITU-T]] i el Grups d'Experts en Imatges en Moviment ([[MPEG]]) de l'[[ISO]]/[[IEC]]. A part d'utilitzar algorismes de codificació eficients, les especificacions de l'H.264/AVC defineixen una sèrie d'eines per a combatre els errors en transmissió. La més innovadora és l'anomenada '''Ordenació flexible dels macroblocs'' ('''FMO''', ''Flexible Macroblock Ordering'') que es descriu tot seguit en aquest article.
 
Una de les característiques noves que s'ha introduït en l'estàndard H.264/AVC és la possibilitat de dividir la [[Imatge (arts visuals)|imatge]] en regions anomenades grups de ''slices''. Cada grup de ''slices'' es pot dividir alhora en diverses ''slices''; així doncs, hem de definir el terme ''slice'' com a seqüència de macroblocs dins del mateix grup de ''slices'' que es processa en ordre d'escanejat (d'esquerra a dreta i de dalt a baix) dins del conjunt de macroblocs del grup. Un ''slice'' sempre es pot descodificar de forma independent.
 
El FMO consisteix a decidir a quin ''slice'' pertany cada macrobloc de la imatge.
Cada macrobloc s'assigna lliurement a un grup de ''slices'' mitjançant un MBAmap (mapa de situació dels macroblocs) que consisteix en un número d'identificació per a cada macrobloc de la imatge que especifica a quin grup de slice pertany cada macrobloc. El nombre de grups de ''slices'' per a cada imatge està limitat a 8 per tal de no complicar excessivament els esquemes de situació de macroblocs.
 
Si desactivem el FMO, les imatges estaran formades per una sola ''slice'' amb els macroblocs en ordre d'escanejat.
Línia 14:
== Tipus ==
 
En usar FMO, la imatge es pot dividir en diverses pautes d'escanejat de macroblocs. Hi ha set tipus diferents de FMO, etiquetats com a '''Type 0''' fins a '''Type 6'''. El '''Type 6''' és l'únic que permet ordenar els macroblocs de forma aleatòria, donant així molta flexibilitat a l'usuari. La informació sobre quin tipus de FMO estem fent servir s'ha d'incorporar a la capçalera dels paquets.
 
A continuació es descriuen les pautes dels FMO no aleatoris:
 
* '''Type 0''': utilitza tires de macroblocs que es repeteixen fins a omplir tota la imatge. Per a reconstruir el MBAmap només cal conèixer la longitud d'aquestes tires.
 
* '''Type 1''': utilitza una [[funció matemàtica]], coneguda tant en el codificador com en el descodificador, per a repartir els macroblocs. La distribució de la figura, en què els macroblocs es distribueixen en forma d'escaquer, és molt utilitzada (vegeu Aplicacions).
* '''Type 2''': s'utilitzaes fa servir per a marcar àrees rectangulars anomenades d'interès. En aquest cas es guarden en els MBAmaps les [[coordenades]] superior-esquerra i inferior-dreta dels rectangles.
 
* '''Type 2''': s'utilitza per a marcar àrees rectangulars anomenades d'interès. En aquest cas es guarden en els MBAmaps les [[coordenades]] superior-esquerra i inferior-dreta dels rectangles.
 
* '''Type 3-5''': són tipus dinàmics que deixen créixer o disminuir de manera cíclica els grups de slices de les diferents imatges consecutives. Així doncs, només s'ha de conèixer la direcció, la taxa de creixement i la posició en el cicle per tal de tenir ben definits els grups de slices.
 
 
[[Fitxer:Tipos_FMO.jpg|Tipus de FMO]]
 
 
''Nota: Cada color representa un grup de slices''
 
 
== Aplicacions ==
Linha 37 ⟶ 31:
En aquest apartat es descriuen algunes de les possibles aplicacions del FMO:
 
* El Type 1 és útil per a '''mantenir la privadesa de les [[videoconferències]]'''. La imatge es divideix en 2 grups de slices amb els macroblocs distribuïts com un escaquer i cada grup de slices s'envia en un paquet diferent. D'aquesta manera, si una persona vol descodificar la videoconferència haurà de saber exactament en quins dos paquets s'està enviant.
 
* El Type 1 també es pot utilitzar en '''mitjans de transmissió on hi ha una alta taxa de pèrdues de paquets''' (exemple en l'apartat Resultats experimentals).
 
* El Type 2 també pot ser molt útil. Imaginem que volem transmetre un telenotícies amb una taxa de bits baixa. Si codifiquem la imatge amb la taxa de bits distribuïda homogèniament en tota la imatge tindrem uns mals resultats. Com que les persones som particularment sensibles als errors d'imatge de les cares, podem '''marcar la regió''' de la cara del presentador de televisió per tal que sigui codificada amb més bits. Així doncs, el fons del plató serà codificat amb menys bits i el presentador amb molts més bits (mantenint la taxa total de bits del principi). D'aquesta manera la qualitat visual subjectiva haurà augmentat significativament.
 
 
== Resultats experimentals ==
Linha 50 ⟶ 41:
 
[[Fitxer:Stefan_CAT.jpg|Sense FMO i amb FMO de tipus 1]]
 
 
Veiem clarament a la part inferior dreta de la imatge com s'han perdut paquets (sense FMO els macroblocs s'envien per ordre d'escanejat) i no s'han pogut descodificar els macroblocs de la imatge.
En utilitzar FMO Type 1, en canvi, tenim dos tipus de grups de slices dividint la imatge com un escaquer. Així doncs, quan es perd un tros de paquet del grup de slices 0 podem recuperar el tros d'imatge interpolant els macroblocs veïns que no s'han perdut perquè pertanyien al grup de slices 1.
 
 
== Conclusions ==
Linha 73 ⟶ 62:
== Enllaços externs ==
* [[:en:Mse|Mse]] {{en}}
* [[:en:Video compression|Video compression]] {{en}}
 
 
[[Categoria:Vídeo]]