Aparato de procesamiento de imágenes, aparato y método de procesamiento de datos
Descripción general
 Cuando se codifica por la conmutación del método de codificación para los datos de codificación objetivo cada la pequeña unidad también realiza la codificación de entropía basa en una combinación del método de codificación utilizado para cada la unidad pequeña. ] La pluralidad de datos codificados a la codificación de entropía (104), codificados selectivamente de dicha pluralidad de datos codificados de acuerdo con un resultado de la cantidad de datos de cada uno de la entropía de datos codificados codificados y se compara con el uno al otro Extraer datos (105, 108), decidir un método de codificación según el contenido de los datos de destino de codificación extraídos (109) y codificar los datos de destino extraídos utilizando el método de codificación de entropía determinado como Y realiza codificación de entropía (109).
Campo técnico
La presente invención se refiere a un aparato de procesamiento de imágenes, un aparato de procesamiento de datos y un método del mismo.
Antecedentes de la técnica
Convencionalmente, como un método para codificar datos de imagen se conoce un número de métodos de codificación, tales como de longitud de gestión de codificación para codificar la codificación de predicción o de longitud de secuencia de codificación del valor de diferencia entre los píxeles, una codificación Existen múltiples métodos de codificación porque hay muchos métodos de generación de valores de diferencia entre píxeles incluso con codificación predictiva como método.
Por otra parte, la conmutación de una pluralidad de métodos de codificación descritos anteriormente para cada unidad pequeña, como 8 × 8 bloques de píxeles, por ejemplo, el aparato de codificación se ha propuesto que lleva a cabo la codificación usando la tabla de Huffman predeterminado.
Tarea de solución
Sin embargo cuando se utiliza en la conmutación del método de codificación en una pequeña unidad de dispositivos de codificación propuestos en la técnica anterior tal, sin necesidad de utilizar una tabla de Huffman óptimo basado en una combinación del método de codificación utilizado para cada las pequeñas unidades, de codificación Estaba haciendo.
Por lo tanto, la presente invención tiene como objetivo realizar una codificación de entropía basada en una combinación de métodos de codificación utilizados para cada unidad, incluso cuando la codificación de datos de destino se codifica cambiando el método de codificación para cada unidad pequeña. .
Aparato de procesamiento de datos de acuerdo con la reivindicación 1 para resolver el problema antes mencionado, un primer medio de codificación de entropía para la entropía codifica una pluralidad de datos codificados, la entropía de codificación por dicho primer entropía medios de codificación Medios de comparación para comparar las cantidades de datos de los datos codificados entre sí; medios de extracción para extraer selectivamente datos de destino de codificación de la pluralidad de datos de destino de codificación de acuerdo con el resultado de los medios de comparación; dependiendo del contenido de los datos codificados extraídos por los medios de extracción, ha sido extraído y medios de determinación para determinar la entropía método de codificación, por los medios de extracción mediante el uso de una entropía método determinado por el código de unidad de determinación de la codificación Y la segunda codificación de entropía significa para la entropía que codifica los datos que se codificarán.
Un aparato de procesamiento de imagen según un séptimo aspecto de la presente invención comprende primeros medios de generación para generar una cantidad de código cuando los datos de imagen están codificados por un primer método de codificación, primeros medios de generación para generar datos de imagen y un segundo método de codificación los segundos medios de generación para generar una cantidad de código cuando se codifica, el, primero, medios de determinación para determinar un procedimiento de codificación basado en la cantidad de código generado por los segundos medios de generación, por dicho medio de determinación Medios informáticos para calcular estadísticas de datos relacionados con los datos de imágenes de acuerdo con el método de codificación determinado y medios de codificación para realizar la codificación en base a las estadísticas calculadas por los medios informáticos.
(Realización 1) La Fig. 1 es un diagrama de bloques de un aparato de codificación utilizado en la Realización 1 de la presente invención. En la figura 1, el número de referencia 100 indica un dispositivo de entrada de imágenes, 101 una memoria de imágenes, 111 un circuito de corte de bloques, 102 y 103 circuitos de generación de valores diferenciales, y memorias intermedias 112 y 113.
El número de referencia 104 indica un codificador Huffman, 105 un comparador de cantidad de código, 106 una memoria y 108 un selector.
El número de referencia 114 indica una memoria de valor de diferencia, 107 indica un contador de frecuencia, y 109 indica un codificador de Huffman 110.
Además, la CPU 1 controla cada uno de los circuitos mencionados anteriormente usando la RAM 3 como un área de trabajo basada en el programa almacenado en la ROM.
A continuación, el método de codificación de la información de imagen en la figura 1 se describirá en detalle.
Aquí, se describirá un caso de codificación de una imagen monocromática multivaluada de 8 bits (valores de 0 a 255) como ejemplo. En el circuito de codificación Huffman 104, se establece por adelantado una tabla Huffman de referencia basada en estadísticas promedio de errores de predicción. Además, el contador de frecuencia 107 cuenta la frecuencia de ocurrencia de valores de 255 a 255, pero en el estado inicial se ingresan todos los ceros.
En primer lugar, la entrada de datos de imagen desde el dispositivo de entrada de imágenes 100 se almacena en la memoria de imágenes 101. El circuito de extracción de bloques 111 lee y almacena datos de imágenes de la memoria de imágenes 101 en unidades de bloques de 8 × 8 píxeles. En este momento, como se muestra en la figura 2, los datos de píxeles de los 8 píxeles izquierdos y los 8 píxeles superiores del bloque de 8x8 también se leen y almacenan. El circuito de generación de valor de diferencia 102 genera un valor de diferencia con respecto al píxel izquierdo para todos los píxeles en el bloque de píxeles de 8x8 y lo almacena en la memoria intermedia 112. Asimismo, el circuito de generación de valor de diferencia 103 genera un valor de diferencia con respecto a todos los píxeles en el bloque de píxeles de 8x8 desde el valor de píxel inmediatamente anterior y lo almacena en la memoria intermedia 113.
El codificador Huffman 104 Huffman codifica la cadena de datos de diferencia almacenada en la memoria intermedia 112 y la memoria intermedia 113 según una tabla de Huffman preestablecida y la envía a líneas de señal separadas. La cantidad de código comparador 105 compara la cantidad de código de la secuencia de datos codificados dos Huffman emitida desde el codificador de Huffman 104 para cada bloque, Huffman codifica los datos de valor de diferencia de salida de la diferencia circuito generador 102, es decir, la izquierda Huffman codifica los datos de la salida de valor de diferencia 0, a partir del valor de diferencia de la generación de circuito 103 cuando la cantidad de la Huffman datos codificados en unidades de bloques de la hora de tomar el píxel y la diferencia es menor que el otro, es decir, directamente por encima del pixel Y genera 1 si la cantidad de datos codificados de Huffman en unidades de bloque cuando se obtiene una diferencia es menor que la otra.
La memoria 106 almacena el valor de salida de 1 bit emitido desde el comparador de cantidad de código 105 en unidades de bloques de 8 × 8 píxeles.
Cuando el valor de salida del comparador de cantidad de código 105 es 0, el selector 108 emite la cadena de datos de valor de diferencia almacenada en la memoria intermedia 112, y cuando el valor de salida es 1, la almacena en la memoria intermedia 113 Y genera una cadena de datos de valor de diferencia que se está procesando.
El contador de frecuencia de valor de diferencia 107 cuenta la frecuencia de aparición para cada valor de diferencia de la salida de cadena de datos de valor de diferencia del selector 108 y la mantiene para una pantalla.
La memoria 114 almacena una cadena de datos de valores de diferencia de 8 × 8 unidades de bloques de píxeles emitidas desde el selector 108 para una pantalla.
Parece del circuito de bloque de extracción 111 descrito anteriormente, cuando el procesamiento hasta la memoria de valor de diferencia 114 y el contador de frecuencia valor de diferencia 107 acabados un marco, el codificador Huffman 109, el mejor en la base del valor de diferencia de valor de diferencia estadística contador de frecuencia 107 Crea una tabla de Huffman.
En la presente realización, se crea una tabla para asignar códigos cortos de Huffman en orden descendente de frecuencia de aparición.
Posteriormente, la cadena de datos de valor diferencial para una pantalla almacenada en la memoria 114 se codifica Huffman en unidades de bloques de 8 × 8 píxeles de acuerdo con la tabla de Huffman generada por el codificador Huffman 109.
Como se muestra en la Fig. 3, el generador de código 110, en relación con el Huffman datos codificados de bloque de 8 x 8 píxeles emitida desde el codificador Huffman 109, de 1 bit o el bloque tomaron en el que el valor de diferencia de pixel Información (a la que se hará referencia como información del modo de diferencia), y la emite en unidades de una pantalla. En este momento, la tabla de Huffman creada por el contador 107 de frecuencia de valor de diferencia para cada pantalla se agrega para uso en el momento de la decodificación.
En lugar de la codificación de Huffman en las realizaciones anteriores, pueden usarse otros esquemas de codificación de entropía tales como la codificación aritmética. Aunque el valor de diferencia entre los píxeles se utiliza como un objetivo de codificación, se puede aplicar a la codificación utilizando la longitud de ejecución de los valores de píxeles reales.
Además, los píxeles del bloque no son 8 × 8 píxeles, pero pueden usarse bloques de 4 × 4, 16 × 16, 32 × 32 píxeles.
Aunque se usan dos métodos de generación de valor diferentes como los circuitos de generación de valor de diferencia 102 y 103, se puede configurar un circuito de generación de valor de diferencia para preparar tres o más métodos de generación de valor de diferencia.
Aunque la imagen monocromática de múltiples valores de ocho bits se ha descrito en esta realización, se puede aplicar a imágenes binarias o imágenes en color.
(Realización 2) En la codificación de acuerdo con la Realización 1, el codificador Huffman 104 predice cuál de los circuitos de generación de valores diferenciales 102 y 103 se reducirá la cantidad de datos codificados usando la tabla Huffman de referencia, , Se determinó el método para determinar el valor de diferencia entre píxeles, es decir, el modo de diferencia.
Sin embargo, cuando se está codificando realmente, se utiliza una tabla Huffman diferente de la tabla Huffman de referencia creada por el codificador Huffman 109, para reducir la cantidad de datos codificados por el modo diferencia previamente determinado Existe la posibilidad de que no sea óptimo para.
La figura 4 es un diagrama de flujo que muestra un procedimiento de un método de codificación para compensar los inconvenientes mencionados anteriormente.
La configuración del circuito es básicamente la misma que en la primera realización. Se dará una descripción detallada de la segunda realización con referencia a las figuras 1 y 4.
La extracción del bloque y la generación de la cadena de datos de valor de diferencia en S401 y S 402 son las mismas que la generación del corte de bloque y la cadena de datos de valor de diferencia de la primera realización.
A continuación, establezca la tabla Huffman referencia en S403, pero primero establece la tabla de Huffman usada en el Ejemplo 1 que había sido preparado de antemano como una tabla Huffman referencia.
A continuación, realiza la codificación Huffman usando la tabla estándar de Huffman, una cantidad de código de la cadena de datos de código de Huffman de cada modo diferencial (cuando se toma la diferencia entre el píxel izquierdo, al tomar la diferencia entre el inmediatamente por encima de pixel) El modo de diferencia se determina para cada unidad de bloque de 8 × 8 píxeles, y el resultado de la determinación se almacena como datos de 1 bit 106 (S 404 S 406).
El selector 108 de acuerdo con la salida de la cantidad de código comparador 105, y selecciona y da salida a la cadena de datos de valor de diferencia, la cadena de datos de valor de diferencia de salida se almacena en la memoria de valor diferencial 114 para el bloque de píxeles 8 × 8.
El contador de frecuencia de valor de diferencia 107 cuenta el valor de diferencia de la cadena de datos de valor de diferencia y crea una tabla de Huffman correspondiente a una pantalla.
El procesamiento hasta aquí es exactamente el mismo que en la primera realización.
Además, en el Ejemplo 2, se compara con la tabla de Huffman referencia optimizado tabla de Huffman en el Huffman codificador 109 utilizado en el codificador Huffman 104 con la tabla de Huffman óptima y S404 cuando creado (S409).
Si el resultado de dos Huffman comparación tablas de S409 se corresponde, la determinación de modo diferencial S406, significa que se realizaron de acuerdo a la tabla óptima Huffman utilizado en la codificación final, el proceso de codificación después de este ejemplo 1, y sale del generador de códigos 110 en el orden de los datos como se muestra en la figura 5.
Además, la comparación de S409 da como resultado dos casos tabla de Huffman no coinciden, la CPU 1 almacena los datos de la tabla óptima Huffman generado por el codificador Huffman 109 en la memoria RAM 3, el período desde el bloque de extracción de circuito para el generador de código 110 Y una vez más realiza el proceso de creación de una tabla Huffman óptima de S 401 a S 408.
Aquí diferente de la transformación de S401 por primera vez a S408 es donde para establecer una tabla de Huffman referencia en S403, para la segunda y posterior S401 S408 tabla Huffman, basado, la óptima Huffman creado en el paso anterior S408 Se usa una tabla (almacenada en RAM 3).
El proceso de codificación se lleva a cabo hasta que las dos tablas de Huffman (referencia de tabla Huffman y la tabla de Huffman óptima) coinciden cuando la tabla óptima Huffman creado en S408, entonces el mismo que en el Ejemplo 1.
En el caso de dos tablas de Huffman sido predeterminados número el procesamiento desde S401 a S408 puede no coincidir y, han estado en un caso en el que la tabla de Huffman satisface una eficacia de codificación predeterminado creado en S408, el S410 de S409 Puede ser controlado para proceder. Esto concluye la descripción del proceso de codificación.
DESCRIPCIÓN DETALLADA DE LAS FORMAS DE REALIZACIÓN PREFERIDAS
Efecto de la invención
Como se describió anteriormente, de acuerdo con la presente invención, cuando se cambian los datos de destino cambiando el método de codificación para cada unidad pequeña, la codificación de entropía se basa en una combinación de métodos de codificación utilizados para cada una de estas unidades pequeñas Puede ser realizado.
La figura 1 es un diagrama de bloques de un circuito de codificación de acuerdo con las realizaciones primera y tercera.
La figura 2 es un diagrama que muestra el intervalo de píxeles extraídos por el circuito de corte de bloques 111.
La figura 3 es una vista que muestra un formato de datos codificados finalmente emitidos desde el bloque de la figura 1 en la primera realización.
La figura 4 es un diagrama de flujo que muestra el procedimiento de codificación de la segunda realización.
La figura 5 es un diagrama que muestra un formato de datos codificados que finalmente sale del bloque de la figura 1 en la segunda realización.
1 CPU
2 ROM
3 RAM
101 memoria de imagen
102 Circuito de generación de valor de diferencia
103 Circuito de generación de valor de diferencia
104 Encóder Huffman
105 comparador
106 de memoria
107 Contador de frecuencia de valor de diferencia
108 Selector
109 Encóder Huffman
Generador de código 110
Circuito de corte de 111 bloques
Buffer 112
Reclamo
Primero entropía medios de codificación, dichos primeros medios de codificación de entropía por la pluralidad codificados en entropía de medios de comparación para comparar la cantidad de datos de los datos codificados a la entropía de codificación de la reivindicación 1 una pluralidad de datos codificados cuando, de acuerdo con el resultado de dichos medios de comparación, y medios de extracción para extraer selectivamente datos codificados de dicha pluralidad de datos codificados, de acuerdo con los contenidos de los datos objetivo de codificación extraídos por los medios de extracción, Un segundo medio de codificación de entropía para entropía que codifica los datos a codificar extraídos por los medios de extracción usando el método de codificación de entropía determinado por los medios de determinación, Para el aparato de procesamiento de datos.
2. El aparato de procesamiento de datos según la reivindicación 1, en el que la pluralidad de datos de destino de codificación es datos de valor de diferencia predeterminados.
3. El aparato de procesamiento de datos según la reivindicación 1, en el que los datos de valores diferenciales predeterminados son un valor de diferencia interpíxel, y cada uno de los datos de valores de diferencia tiene un píxel correspondiente que genera un valor de diferencia.
4. El aparato de procesamiento de datos según la reivindicación 1, en el que la codificación de entropía es codificación de Huffman.
5. El aparato de codificación según la reivindicación 1, en el que el contenido de los datos de objetivo de codificación es una frecuencia de aparición de un valor de diferencia de los datos de valor de diferencia, y la determinación se realiza por los medios de determinación de acuerdo con la frecuencia de ocurrencia Aparato de procesamiento de datos.
La reivindicación 6 de datos más codificados codificación de entropía, los datos codificados selectivamente de dicha pluralidad de datos codificados de acuerdo con un resultado de la cantidad de datos de cada uno de la entropía de datos codificados codificada y en comparación con uno de otro extractos, para determinar el método de codificación de acuerdo con el contenido de los datos codificados extraídos, en el que la codificación de entropía los datos de objetos de codificación se extrajo utilizando el método de codificación de entropía determinada Aparato de procesamiento de datos.
un medio de generación para generar una cantidad de código cuando se codifica una pluralidad de codificación de reivindicaciones de método 7 datos de imagen, basándose en la cantidad de código generada por dichos medios de generación, determina un método de codificación de la pluralidad de métodos de codificación Medios informáticos para calcular estadísticas de datos relacionados con los datos de imágenes de acuerdo con el método de codificación determinado por los medios de determinación, y medios para codificar los datos de imágenes basados ​​en las estadísticas calculadas por los medios de cálculo, Y un medio de codificación para generar datos codificados en función de los datos de imagen.
8. El aparato de procesamiento de imágenes según la reivindicación 7, en el que los datos de imagen son datos de imagen multivalor.
9. El aparato de procesamiento de imágenes según la reivindicación 7, en el que la pluralidad de medios de generación usan diferentes métodos de codificación diferentes para la pluralidad de métodos de codificación.
10. El aparato de procesamiento de imágenes según la reivindicación 7, en el que en dicha pluralidad de medios de generación, se usa un método de codificación de entropía común para dicha pluralidad de métodos de codificación.
11. El aparato de procesamiento de imágenes según la reivindicación 7, en el que las estadísticas de los datos relativos a los datos de imagen son estadísticas de frecuencias de aparición de datos de valores de diferencia correspondientes al método de codificación determinado por los medios de determinación.
12. Un aparato de procesamiento de imágenes de acuerdo con la reivindicación 7, en el que la codificación de entropía se usa para la codificación por dichos medios de codificación.
13. El aparato de procesamiento de imágenes según la reivindicación 12, en el que la codificación de entropía es codificación de Huffman.
Y generar etapa de generar una cantidad de código cuando se codifica las reivindicaciones 14 datos de imagen usando una pluralidad de métodos de codificación, basándose en la cantidad de código generado por la pluralidad de etapa de generación, el código de la pluralidad de métodos de codificación Un paso de cálculo para calcular estadísticas de datos relacionados con los datos de imagen de acuerdo con el método de codificación determinado en el paso de determinación, y un paso de codificación de codificación, basado en las estadísticas calculadas en el paso de cálculo, Y un paso de codificación de codificación de los datos de imagen.
Primera etapa de codificación y dicha primera pluralidad de codificación de los datos codificados codificados por la etapa de codificación de la entropía con la reivindicación 15 una pluralidad de datos codificados a un método primera codificación de entropía una etapa de comparación de la comparación de la cantidad de datos, de acuerdo con un resultado de dicha etapa de comparación, dicha pluralidad de extracción de datos codificados selectivamente a partir de los datos codificados, y calcula las estadísticas de los datos codificados extrae , una etapa de determinación de determinación de un método de segunda codificación de entropía, una segunda etapa de codificación para codificación de entropía utilizando una entropía método determinado en la etapa de determinación, la primera etapa de codificación de la codificación, en el que Una etapa de comparación, y una etapa de iteración de iteración de dicha etapa de determinación, en la que, cuando se realiza dicha etapa de iteración, dicho paso método de procesamiento de datos caracterizado por el método de codificación de entropía y el primer método de codificación de entropía utilizada en la siguiente primera etapa de codificación.
16. Método según la reivindicación 16, en el que la etapa de iteración se realiza hasta que el primer método de codificación de entropía es igual al primer método de codificación de entropía cuando se determina el segundo método de codificación de entropía en el paso determinante 16. El método de procesamiento de datos según la reivindicación 15, caracterizado porque:
17. El método de procesamiento de datos de acuerdo con la reivindicación 15, en el que la etapa de iteración se realiza un número predeterminado de veces.
18. El método de procesamiento de datos de acuerdo con la reivindicación 15, en el que la etapa de iteración se realiza hasta que el segundo método de codificación de entropía satisface una eficiencia de codificación predeterminada.
Dibujo :
Application number :1997-009264
Inventors :キヤノン株式会社
Original Assignee :梶原浩、平林康二、吉田正