Zum Inhalt springen
uencoder

Rice Coding

Die Rice-Kodierung ist der Spezialfall der Golomb-Kodierung mit m = 2^k, der Division durch Schiebeoperationen ersetzt; sie ist einfach und effizient und wird vielfach für die Restkodierung von Audio und Bildern eingesetzt.

Zweck

Erreicht nahezu optimale Kodierung mit minimalem Rechenaufwand für geometrische Verteilungen mit Zweierpotenz-Parameter, geeignet für Echtzeitsysteme.

Mechanismus

Für eine ganze Zahl n werden q = n >> k und r = n & (2^k - 1) berechnet; q wird unär kodiert (q Einsen gefolgt von einer Null) und r in k Binärbits. Der Parameter k wird adaptiv aus Verteilungsstatistiken gewählt.

Anwendungsfälle

  • FLAC-Audio-Restkodierung
  • JPEG-LS-Reste
  • Kompression räumlicher Daten

Verwandte Tools

References