A digitális rádiós képátvitel alapjai

Az előzőekben láttuk, miként tudunk adatot átvinni. Ebben a részben azzal ismerkedünk meg, hogy miként érdemes képet átvinni.

Ajánlott képformátumok éles kontúrok, rajzok átvitelére

GIF-87a, GIF-89: LZW (Lempel Ziv Welch) tömörített bitmap, amelybe maximum 8 bites színpaletta kódolható. A GIF89 fájlba több kép is belekódolható, ezáltal "mozgógif" hozható létre, továbbá transzparens képet és a 8 soronkénti interlace opciót támogatja.
Az interlace azonban csak soronként értelmezett (a kisebb számjegyű sorok lesznek hamarabb továbbítva):

1 1 1 1 1 1 1 1
4 4 4 4 4 4 4 4
3 3 3 3 3 3 3 3
4 4 4 4 4 4 4 4
2 2 2 2 2 2 2 2
4 4 4 4 4 4 4 4
3 3 3 3 3 3 3 3
4 4 4 4 4 4 4 4

PNG: LZ77 tömörített bitmap, amely maximálisan 48 bites színkódolást képes átvinni. Általában egy picit nagyobb a mérete, mint a GIF formátumnak. Interlace-t (adatmennyiség függvényében a fokozatos megjelenést) ismeri.
A PNG 8x8 pixeles képecskékből áll, amelyet a fokozatos megjelenítés esetén az un. Adam7 algoritmus alapján továbbítanak (a kisebb számjegyek lesznek az összes képecske esetén hamarabb továbbítva):

1 6 4 6 2 6 4 6
7 7 7 7 7 7 7 7
5 6 5 6 5 6 5 6
7 7 7 7 7 7 7 7
3 6 4 6 3 6 4 6
7 7 7 7 7 7 7 7
5 6 5 6 5 6 5 6
7 7 7 7 7 7 7 7
Ebből látszik, hogy interlace PNG átvitel esetén a kép adatfolyamának első néhány %-ából már összeállítható egy kis ikon, illetve 25%-ából már egy nem végleges részletességű kép, tehát nem szükséges megvárni a teljes kép megérkezését ahhoz, hogy lássuk, mit fog ábrázolni.

Ajánlott képformátumok lágy átmenetek, fényképek átvitelére

JPEG, JPEG-2000: 24 bit színmélység, veszteséges tömörítés. DCT (JPEG) vagy DWT (JPEG-2000) transzformációt használnak, ezért inkább lágy átmenetet tartalmazó fényképszerű képek számára biztosítja a legkisebb méretet. A kép adatmennyisége a magasabb frekvenciájú harmonikusok durvább kvantálásával csőkkenthető, azonban ekkor a kép jobban elmosódik. Az együtthatókat a sorbarendezés után adaptív Huffman algoritmussal tömörítik.

Az interlace itt is megoldható, méghozzá úgy, hogy a 8x8 pixeles blokk együtthatóiból a magasabb frekvenciájú komponenseit később továbbítják, így a kép fokozatosan élesíthető.

Az alábbi ábrán látható egy 8x8 pixeles képecske, ahol vízszintes és függőleges irányban is DCT-zett sorok és oszlopok együtthatói láthatóak, és a továbbítás fontossági sorrendjében vannak 1-63 -ig beszámozva:
00 01 05 06 14 15 27 28
02 04 07 13 16 26 29 42
03 08 12 17 25 30 41 43
09 11 18 24 31 40 44 53
10 19 23 32 39 45 52 54
20 22 33 38 46 51 55 60
21 34 37 47 50 56 59 61
35 36 48 49 57 58 62 63
Mint az előzőekben ismertetve lett, nem feltétlenül kell a 8x8 pixeles képecskén belüli 00 01 02 03 04 sorrendet az átvitel folyamán tartani, a kép továbbítható úgy is, hogy minden képecske 00-ja, majd minden képecske 01-e, ... lesz továbbítva, így a kép a vétel folyamán folyamatosan élesedik.

Hogyan érdemes rádión képet továbbítani ?

Az előzőekben a képformátumokról esett szó, most a továbbításról, amely háromféle lehet:
  1. Nyugtázott 1 célállomás felé
  2. Nyugtázott több célállomás felé
  3. Nyugtázatlan egy vagy több célállomás felé

Az első esetben a klasszikus packet rádió I csomagjához (illetve TCP-hez) hasonló átvitel megfelel, FEC-ről (hibajavításról) nem szükséges gondoskodni, elég a hibadetektálás.

A második esetben összeköttetésmentes (UI illetve UDP csomag szerű) átvitel képzelhető el, a felhasználói alkalmazás csomagismétlést kér rendellenesség esetén. FEC használata ajánlott, de nem kötelező.

A harmadik esetben is összeköttetésmentes (UI illetve UDP csomag szerű) átvitel képzelhető el, a felhasználói alkalmazás azonban nem kér csomagismétlést rendellenesség esetén. Értelemszerűen ekkor erősebb hibajavításra alkalmas FEC használata (Viterbi és dupla Reed-Solomon) mindenképp ajánlott.


© Krüpl Zsolt, hg2ecz - 2003

Utolsó módosítás: 2004. jan. 2.