FELIK - FELICS

FELICS , som står för Fast Efficient & Lossless Image Compression System, är en förlustfri bildkomprimeringsalgoritm som utförs fem gånger snabbare än den ursprungliga förlustfria JPEG- codec och uppnår ett liknande kompressionsförhållande .

Historia

Den uppfanns av Paul G. Howard och Jeffrey S. Vitter från Institutionen för datavetenskap vid Brown University i Providence, Rhode Island, USA, och presenterades först vid IEEE Data Compression Conference 1993 i Snowbird, Utah. Det implementerades framgångsrikt i hårdvara och distribuerades som en del av HiRISE på Mars Reconnaissance Orbiter.

Princip

Image
Pixel förutsägelse stadsdelar.

Liksom andra förlustfria codecs för bilder med kontinuerlig ton fungerar FELICS genom att avkorrelera bilden och koda den med en entropikodare . Dekorrelationen är sammanhanget var och var är pixelns två närmaste grannar ( kausal , redan kodad och känd vid avkodaren) som används för att tillhandahålla sammanhanget för att koda den aktuella pixeln . Med undantag för de övre och vänstra kanterna är dessa pixlarna ovan och pixlarna till vänster. Till exempel är grannarna till pixel X i diagrammet A och B, men om X var på vänster sida skulle dess grannar vara B och D.

P ligger inom det slutna intervallet [L, H] ungefär hälften av tiden. Annars ligger den över H eller under L. Dessa kan kodas som 1, 01 respektive 00 (s. 4). Följande figur visar (idealiserat) histogram för pixlarna och deras intensitetsvärden längs x-axeln och förekomstfrekvensen längs y-axeln. FELICS predictor.png

Fördelningen av P inom intervallet [L, H] är nästan enhetlig med en mindre topp nära centrum för detta område. När P faller inom området [L, H] kodas P - L med en justerad binär kod så att värden i mitten av området använder golv (log 2 (Δ + 1)) bitar och värden i ändarna använder tak (log 2 (Δ + 1)) bitar (s. 2). Till exempel, när A = 11, kan koderna för P - L i O till 11 vara 0000, 0001, 0010, 0011, 010, 011, 100, 101, 1100, 1101, 1110, 1111.

Utanför intervallet tenderar P att följa en geometrisk fördelning på varje sida (s. 3). Den kodas med en riskod med parametrar valda baserat på tidigare val. För varje A och varje möjlig riskodsparameter k håller algoritmen koll på det totala antalet bitar som skulle ha använts för att koda pixlar utanför intervallet. För varje pixel väljer den sedan riskoden med basen på Δ vid pixeln.

Förbättringar

FELICS-förbättringar inkluderar metoder för att uppskatta Δ och uppskatta k . Till exempel erkänner Howard och Vitter's artikel att relativt plana områden (med små Δ, särskilt där L = H) kan ha lite brus, och komprimeringsprestanda i dessa områden förbättras genom att vidga intervallet, vilket ökar den effektiva Δ. Det är också möjligt att uppskatta den optimala k för en given A baserat på medelvärdet av alla prediktionsrester som hittills sett, vilket är snabbare och använder mindre minne än att beräkna antalet bitar som används för varje k .

Se även

Referenser