Codificación H (H)

H (H) Principio de codificación

La codificación de Huffman es una codificación de longitud de palabra variable con diferentes prefijos, que construye la palabra clave con la longitud promedio más corta de acuerdo con diferentes probabilidades de ocurrencia. El método básico de codificación es escanear primero los símbolos de origen, contar la probabilidad de cada símbolo y luego asignar palabras de código de diferentes longitudes según la probabilidad, a fin de construir una tabla de codificación para que la longitud promedio de los símbolos de origen sea la más corta. .

Por ejemplo, si los símbolos fuente tienen u1, u2, u3, las probabilidades correspondientes son P1=0,2, P2=0,2, P3=0,6.

Al codificar, primero ordene los tres símbolos de acuerdo con la probabilidad de menor a mayor, a partir de los dos símbolos fuente de probabilidad mínima, seleccione una de las ramas como 0 y la otra rama como 1, y luego Las probabilidades codificadas de las dos ramas se fusionan y se vuelven a poner en cola.

El proceso anterior se repite continuamente hasta que las probabilidades combinadas suman 1. Finalmente, los 0 y 1 que se encuentran en la rama se ordenan en orden inverso, y el código obtenido es la palabra de código Huffman del símbolo.

Como se muestra en la siguiente figura, la palabra en clave de Huffman de u2 es "01". La codificación de Huffman registra la palabra en clave de cada símbolo, y la relación correspondiente entre la palabra en clave y el símbolo fuente se registra como una tabla de códigos, como se muestra en la Tabla 1.

inserte la descripción de la imagen aquí
Figura 1. El código original de Huffman

Sin embargo, el resultado obtenido por la codificación de Huffman no es único. En las estadísticas de probabilidad, puede haber situaciones en las que la probabilidad de dos símbolos fuente sea igual, lo que da como resultado un método de cola no único. Otra razón es que en el proceso de codificación y marcado, 0, 1 selección de rama no es fijo, hará posible tener diferentes resultados de codificación. Pero, en general, a los caracteres con alta probabilidad de aparición se les asignarán palabras de código más cortas, y las palabras de código más largas se asignarán a caracteres con baja probabilidad de aparición, lo que garantiza que las palabras de código se asignen de acuerdo con la probabilidad y hace que la longitud promedio del código sea la más corta, alcanzando el propósito de comprimir datos sin pérdidas.

Tabla 1. Tabla de codificación de Huffman:
inserte la descripción de la imagen aquí

Supongo que te gusta

Origin blog.csdn.net/q15516221118/article/details/131357887
Recomendado
Clasificación