La descarga está en progreso. Por favor, espere

La descarga está en progreso. Por favor, espere

Representación RUNS conversiones entre representaciones matriz binaria y secuencia Juan Manuel García Sánchez Pablo de la Torre Moreno.

Presentaciones similares


Presentación del tema: "Representación RUNS conversiones entre representaciones matriz binaria y secuencia Juan Manuel García Sánchez Pablo de la Torre Moreno."— Transcripción de la presentación:

1

2 Representación RUNS conversiones entre representaciones matriz binaria y secuencia Juan Manuel García Sánchez Pablo de la Torre Moreno

3 Objetivos Características de representación Operaciones Características de compresión

4 Representación en secuencia Ejemplo de matriz simple 101111111111100 000011101110000 000000111000000 000011101110000 001110000011100 Ejemplo de correspondencia runs 1 : 1 1 11 2 0 : 4 3 1 3 4 0 : 6 3 6 0 : 4 3 1 3 4 0 : 2 3 5 3 2 Características de representación

5 Algoritmo de paso a Runs (I) Definición del tipo ArrayRuns como array de enteros sin signo Estructura de ArrayRuns: número filas y columnas de la matriz original primer bit de la primera fila frecuencias de la fila separador de filas (0) primer bit de la segunda fila... Características de representación

6 Algoritmo de paso a Runs (II) Ejemplo de matriz Runs 1 : 1 1 11 2 0 : 4 3 1 3 4 0 : 6 3 6 0 : 4 3 1 3 4 0 : 2 3 5 3 2 Ejemplo de correspondencia ArrayRuns 5 15 1 1 1 11 2 0 0 4 3 1 3 4 0 0 6 3 6 0 0 4 3 1 3 4 0 0 2 3 5 3 2 0 Características de representación

7 Algoritmo de paso a Runs (III) Pasos del algoritmo: –leer matriz en representación simple (obtención de número de filas y columnas) –codificar matriz a ArrayRuns –codificar ArrayRuns a bits Características de representación

8 Algoritmo de paso a Runs (IV) Pasos de la codificación a bits: –codificar cada elemento en tantos bits como los necesarios para codificar el número de columnas (existen codificaciones mucho más eficientes) –utilizar un TAD adecuado para trabajar con bits –se necesita guardar el número de filas y columnas de la matriz original Características de representación

9 Algoritmo de paso a Runs (V) Ejemplo de secuencia ArrayRuns 5 15 1 1 1 11 2 0 0 4 3 1 3 4 0 0 6 3 6 0 0 4 3 1 3 4 0 0 2 3 5 3 2 0 Ejemplo de correspondencia en bits (sólo datos) 1 0001 0001 1011 0010 0 0100 0011 0001 0011 0100 0 0110 0011 0110 0 0100 0011 0001 0011 0100 0 0010 0011 0101 0011 0010 Características de representación

10 Algoritmo inverso Pasos del algoritmo: –tomar el conjunto de bits Runs y la información del número de filas y columnas –con el número de columnas, calcular el número de bits con el que se codifica cada número y decodificar las frecuencias –codificar de bits a ArrayRuns –codificar de ArrayRuns a representación simple Características de representación

11 Esquema de representación (resumen) Ejemplo de matriz simple 101111111111100 000011101110000 000000111000000 000011101110000 001110000011100 Características de representación Ejemplo de correspondencia Runs en bits (sólo datos) 1 0001 0001 1011 0010 0 0100 0011 0001 0011 0100 0 0110 0011 0110 0 0100 0011 0001 0011 0100 0 0010 0011 0101 0011 0010

12 Operaciones Complementaria Unión Intersección Diferencia Rotación Traslación Otras transformaciones Operaciones

13 Complementaria (I) Algoritmo en representación simple –para cada bit de la matriz, invertirlo es necesario recorrer toda la matriz Algoritmo en representación Runs –por cada fila de la matriz, invertir el primer bit muy eficiente Operaciones

14 Complementaria (II) Ejemplo de matriz en representación simple 101111111111100 000011101110000 000000111000000 000011101110000 001110000011100 Ejemplo complementaria 010000000000011 111100010001111 111111000111111 111100010001111 110001111100011 Operaciones

15 Complementaria (III) Ejemplo de matriz en representación Runs 1 : 1 1 11 2 0 : 4 3 1 3 4 0 : 6 3 6 0 : 4 3 1 3 4 0 : 2 3 5 3 2 Ejemplo complementaria 0 : 1 1 11 2 1 : 4 3 1 3 4 1 : 6 3 6 1 : 4 3 1 3 4 1 : 2 3 5 3 2 Operaciones

16 Unión (I) Algoritmo en representación simple –para cada bit de la primera matriz, realizar la operación or con el equivalente de la segunda es necesario recorrer toda la matriz Algoritmo en representación Runs –se procesa de igual manera, pero tan sólo las diferencias de frecuencias más eficiente, puesto que recorre frecuencias, no bits difícil de comprobar visualmente Operaciones

17 Unión (II) Ejemplo de matrices, representación simple 101111111111100 000011101110000 000000111000000 Ejemplo unión 101111111111100 000011111110000 Operaciones 

18 Unión (III) Ejemplo de matrices, representación Runs 1 : 1 1 11 2 0 : 4 3 1 3 4 0 : 6 3 6 Ejemplo unión 1 : 1 1 11 2 0 : 4 7 4 Operaciones 

19 Intersección (I) Algoritmo en representación simple –para cada bit de la primera matriz, realizar la operación and con el equivalente de la segunda es necesario recorrer toda la matriz Algoritmo en representación Runs –se procesa de igual manera, pero tan sólo las diferencias de frecuencias más eficiente, puesto que recorre frecuencias, no bits difícil de comprobar visualmente Operaciones

20 Intersección (II) Ejemplo de matrices, representación simple 101111111111100 000011101110000 000000111000000 Ejemplo intersección 000011101110000 000000101000000 Operaciones 

21 Intersección (III) Ejemplo de matrices, representación Runs 1 : 1 1 11 2 0 : 4 3 1 3 4 0 : 6 3 6 Ejemplo intersección 0 : 4 3 1 3 4 0 : 6 1 1 1 6 Operaciones 

22 Diferencia (I) Algoritmo en representación simple –para cada bit de la primera matriz, realizar la diferencia con el equivalente de la segunda es necesario recorrer toda la matriz Algoritmo en representación Runs –se procesa de igual manera, pero tan sólo las diferencias de frecuencias más eficiente, puesto que recorre frecuencias, no bits difícil de comprobar visualmente Operaciones

23 Diferencia (II) Ejemplo de matrices, representación simple 101111111111100 000011101110000 000000111000000 Ejemplo diferencia 101100010001100 000011000110000 Operaciones 

24 Diferencia (III) Ejemplo de matrices, representación Runs 1 : 1 1 11 2 0 : 4 3 1 3 4 0 : 6 3 6 Ejemplo diferencia 1 : 1 1 2 3 1 3 2 2 0 : 4 2 3 2 4 Operaciones 

25 Rotación Algoritmo en representación simple –para cada bit de la matriz, existen transformaciones matemáticas que modifican su posición pueden ser funciones muy complejas Algoritmo en representación Runs es necesario conocer exactamente los bits de los alrededores, por lo que resulta inevitable tener que transformar de nuevo a matriz simple Operaciones

26 Traslación (I) Algoritmo en representación simple –dependiendo de la dirección, se coloca la fila o columna primera tras la última o viceversa muy eficiente, pues sólo hay que modificar los índices Algoritmo en representación Runs –se procesa de igual manera al trasladar filas; con las columnas deben modificarse las frecuencias iniciales y finales de cada fila igual de eficiente en las filas, menos en las columnas Operaciones

27 Traslación (II) Ejemplo de matrices, representación simple 101111111111100 000011101110000 000000111000000 000011101110000 001110000011100 Ejemplo traslación (1 abajo, 2 izquierda) 111000001110000 111111111110010 001110111000000 000011100000000 001110111000000 Operaciones

28 Traslación (III) Ejemplo de matriz en representación Runs 1 : 1 1 11 2 0 : 4 3 1 3 4 0 : 6 3 6 0 : 4 3 1 3 4 0 : 2 3 5 3 2 Ejemplo traslación (1 abajo, 2 izquierda) 1 : 3 5 3 4 1 : 11 2 1 1 0 : 2 3 1 3 6 0 : 4 3 8 0 : 2 3 1 3 6 Operaciones

29 Otras transformaciones Algoritmo en representación simple –para cada grupos de bit de la matriz, se aplican las transformaciones matemáticas dadas pueden ser funciones muy complejas Algoritmo en representación Runs para cualquier grupo de bits, salvo en transformaciones lineales muy simples de un solo elemento, es necesario transformar de nuevo a matriz simple Operaciones


Descargar ppt "Representación RUNS conversiones entre representaciones matriz binaria y secuencia Juan Manuel García Sánchez Pablo de la Torre Moreno."

Presentaciones similares


Anuncios Google