Kodiranje z dolžinami čet (ang. Run length encoding – RLE) je tehnika stiskanja besedilnih, slikovnih, zvočnih in video podatkov, ki se danes ne uporablja več tako pogosto. Kljub temu predstavlja odličen način, da dobiš občutek nekaterih težav, ki se pojavljajo pri uporabi stiskanja slikovnih podatkov.
Predstavljaj si, da imaš naslednjo preprosto črno-belo sliko.
Enostaven način, kako lahko računalnik shrani to sliko v dvojiški obliki je, da uporabi obliko, pri kateri »0« pomeni belo in »1« pomeni črno barvo (to je »bitna slika«, ker smo sliko preslikali na vrednosti bitov). Z uporabo te metode bi zgornjo sliko predstavili na naslednji način:
011000010000110 100000111000001 000001111100000 000011111110000 000111111111000 001111101111100 011111000111110 111110000011111 011111000111110 001111101111100 000111111111000 000011111110000 000001111100000 100000111000001 011000010000110
Ključno vprašanje pri stiskanju slik je, ali lahko predstavimo isto sliko z manj biti in kljub temu obnovimo izvirno sliko. Izkaže se, da lahko. Najprej si bomo ogledali metodo, imenovano kodiranje z dolžinami čet.
To je osnovna ideja metode kodiranja z dolžinami čet, ki se uporablja za prihranek prostora za shranjevanje digitalnih slik. V kodiranju z dolžinami čet zamenjamo vsako vrstico s številkami, ki določajo, koliko zaporednih pikslov je enake barve – kot število vojakov v četi (od tod tudi ime). Vsaka vrstica se vedno začne s številom belih pikslov. Na primer, prva vrstica na zgornji sliki vsebuje en bel, dva črna, štiri bele, en črn, štiri bele, dva črna in en bel piksel.
011000010000110
To lahko predstavimo kot:
1, 2, 4, 1, 4, 2, 1
Pri drugi vrstici moramo najprej izrecno povedati, da je na začetku vrstice nič belih pikslov (saj moramo vedno začeti z belimi piksli), preden povemo število črnih pikslov.
100000111000001
0, 1, 5, 3, 5, 1
Morda te zanima, zakaj moramo najprej povedati število belih pikslov, ki je v zgornjem primeru nič. Razlog je, da moramo imeti jasno pravilo, s katero barvo začeti, sicer računalnik ne ve, katera barva je katera!
Tretja vrstica vsebuje pet belih, pet črnih in pet belih pikslov.
000001111100000
To predstavimo kot:
5, 5, 5