ES2210461T3 - Metodos y aparatos para transmitir datos de imagenes, tratamiento de imagenes y medios de registro para ello. - Google Patents
Metodos y aparatos para transmitir datos de imagenes, tratamiento de imagenes y medios de registro para ello.Info
- Publication number
- ES2210461T3 ES2210461T3 ES97307333T ES97307333T ES2210461T3 ES 2210461 T3 ES2210461 T3 ES 2210461T3 ES 97307333 T ES97307333 T ES 97307333T ES 97307333 T ES97307333 T ES 97307333T ES 2210461 T3 ES2210461 T3 ES 2210461T3
- Authority
- ES
- Spain
- Prior art keywords
- data
- image
- pixel
- transparent
- value
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Lifetime
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/90—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using coding techniques not provided for in groups H04N19/10-H04N19/85, e.g. fractals
- H04N19/94—Vector quantisation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/23—Processing of content or additional data; Elementary server operations; Server middleware
- H04N21/236—Assembling of a multiplex stream, e.g. transport stream, by combining a video stream with other content or additional data, e.g. inserting a URL [Uniform Resource Locator] into a video stream, multiplexing software data into a video stream; Remultiplexing of multiplex streams; Insertion of stuffing bits into the multiplex stream, e.g. to obtain a constant bit-rate; Assembling of a packetised elementary stream
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/169—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
- H04N19/186—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being a colour or a chrominance component
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/46—Embedding additional information in the video signal during the compression process
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/60—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
- H04N19/61—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding in combination with predictive coding
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
- H04N21/434—Disassembling of a multiplex stream, e.g. demultiplexing audio and video streams, extraction of additional data from a video stream; Remultiplexing of multiplex streams; Extraction or processing of SI; Disassembling of packetised elementary stream
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F2300/00—Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game
- A63F2300/20—Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterised by details of the game platform
- A63F2300/203—Image generating hardware
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F2300/00—Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game
- A63F2300/60—Methods for processing data by generating or executing the game program
- A63F2300/66—Methods for processing data by generating or executing the game program for rendering three dimensional images
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/20—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using video object coding
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/70—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by syntax aspects related to video coding, e.g. related to compression standards
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
- Image Processing (AREA)
- Compression Of Band Width Or Redundancy In Fax (AREA)
- Image Generation (AREA)
- Television Signal Processing For Recording (AREA)
- Compression, Expansion, Code Conversion, And Decoders (AREA)
Abstract
UN SISTEMA DE PROCESAMIENTO DE DATOS EN DONDE LOS DATOS DE UNA IMAGEN, EN LOS CUALES ESTA ASIGNADO UN VALOR REPRESENTATIVO DE LA TRANSPARENCIA COMO UN VALOR DE PIXEL, SE TRANSMITEN DESPUES DE HABER SIDO COMPRIMIDOS, EN TERMINOS DE DATOS DE LA IMAGEN CORRESPONDIENTE A UN TAMAÑO PREDETERMINADO Y PREESTABLECIDO DE UN AREA DE LA IMAGEN, COMO UNA UNIDAD. LOS DATOS AUXILIARES, QUE ESPECIFICAN SI CADA UNO DE LOS PIXELES DE LOS DATOS DE LA IMAGEN ORIGINAL DE LA UNIDAD DE DATOS DE LA IMAGEN ES TRANSPARENTE U OPACO, SE TRANSMITEN EN CORRELACION CON LOS DATOS COMPRIMIDOS DE LA IMAGEN, COMO LA UNIDAD. AL EXPANDIRSE LOS DATOS DE LA IMAGEN COMPRIMIDA, UN PIXEL QUE ESTABA CONFIGURADO COMO UN PIXEL TRANSPARENTE POR MEDIO DE LOS DATOS AUXILIARES, SE ESTABLECE FORZOSAMENTE COMO UN PIXEL TRANSPARENTE, SIN CONSIDERAR LOS DATOS EXPANDIDOS DE LA IMAGEN.
Description
Métodos y aparatos para transmitir datos de
imágenes, tratamiento de imágenes y medios de registro para
ello.
Este invento se refiere en general a métodos y
aparatos para el tratamiento de datos de imagen y, más en particular
pero no con carácter exclusivo, a sistemas para presentación en
tiempo real de objetos tridimensionales.
En una máquina típica de juegos de TV para uso
doméstico, en un ordenador personal o en un ordenador para gráficos,
un dispositivo de tratamiento de imagen para generar datos de imagen
entregados como salida a un receptor de TV o a un monitor que reciba
datos para presentación visual, está constituido por una memoria de
uso general, una unidad de tratamiento central (en adelante CPU) y
otros equipos para integración a gran escala (en adelante LSI) para
tratamiento, interconectados sobre un bus. Un dispositivo
especializado para dibujo de imagen está instalado entre la CPU y
una memoria intermedia de tramas mirando en la dirección del flujo
de datos de imagen para dibujo, con el fin de facilitar el
tratamiento a gran velocidad.
En el sistema anteriormente descrito, la CPU no
accede directamente a una memoria intermedia de tramas como una
memoria de presentación visual asociada con una pantalla de
presentación visual. En su lugar, la CPU realiza un tratamiento de
geometría, tal como una transformación de coordenadas, recortaduras
o cálculos de fuente de luz, para definir un modelo tridimensional
como una combinación de figuras unitarias básicas (polígonos) tales
como triángulos o cuadriláteros, con el fin de producir una orden
de dibujo de una imagen tridimensional. La CPU envía la orden de
dibujo de imagen sobre un bus externo a un dispositivo adecuado de
dibujo.
La orden de dibujo incluye información tal como
la forma, posición, dirección, color o la pauta del polígono a
dibujar. La forma, posición o la dirección del polígono vienen
determinadas por las coordenadas de los puntos de vértice del
polígono.
Para presentar visualmente un objeto
tridimensional, en primer lugar se descompone el objeto en una
pluralidad de polígonos. La CPU produce una orden de dibujo para
cada uno de estos polígonos. Las órdenes de dibujo así generadas se
transmiten entonces sobre un bus a un dispositivo de dibujo de
imagen que ejecuta las órdenes de dibujo con el fin de escribir
datos de presentación visual en la memoria intermedia de tramas para
presentar visualmente el objeto tridimensional elegido como
objetivo.
Para representar el objeto de un modo más
realista, se usa una técnica conocida como un establecimiento de
correspondencia de textura o establecimiento de correspondencia
mip, en la que se lee una pauta de imagen prefijada y se modifica el
interior del polígono usando la pauta de imagen.
Existe también una técnica bien conocida de
variar el color de la presentación visual mediante la conversión de
los datos de color de una imagen por medio de una tabla de consulta
de color (en adelante CLUT) que tiene registrados en ella datos para
consulta de color.
En la máquina de juego de TV para uso doméstico o
en un LSI de tratamiento que constituye un ordenador personal, se
han hecho intentos de perfeccionar las prestaciones mediante la
aceleración de la frecuencia de funcionamiento o la reducción de la
escala de circuito sin aumentar el coste. Sin embargo, la capacidad
usual de una memoria de bajo coste de uso general no aumenta
significativamente mediante el aumento de la velocidad de entrada.
Por tanto, en una máquina de juegos de TV para uso doméstico, o en
un ordenador personal, la capacidad de memoria demuestra ser un
cuello de botella.
En particular, para el establecimiento de
correspondencia de textura que use una imagen de gran calidad
preparada con antelación en una estación de trabajo de alta calidad
(pauta de pre-reproducción) como una pauta de
textura, es necesario retener en una memoria todas las pautas que
constituyen un segmento de una imagen móvil. Sin embargo, en este
caso, cuanto más alta sea la resolución de la pauta de textura, más
significativamente se reducirá la capacidad disponible de
memoria.
Por consiguiente, se emplea un método para
retener la pauta de textura en una memoria de una forma comprimida
y leer los datos de la pauta comprimida de textura cada vez que se
usan los datos, y de expandir (descongelar) los datos comprimidos
usando un dispositivo especializado de expansión de imagen.
A título de ejemplo, una pauta típica de textura
está constituida por datos de imagen de un área de imagen
dimensionada con 64 píxeles verticales por 64 píxeles horizontales.
Sin embargo, como la pauta de textura no es necesariamente de forma
rectangular, los píxeles no dibujados, es decir, los píxeles
transparentes, no necesitan configurarse en los datos de imagen del
área rectangular de imagen para representar la pauta requerida de
textura.
Así, en el dispositivo de dibujo, se requiere un
método para discriminar estos píxeles no dibujados en los datos de
la textura del área rectangular. Con ese fin, se proporciona por
separado la información denominada un plano \alpha, de la misma
área de pantalla para representar transparencia.
\newpage
No obstante, como el dispositivo de dibujo
necesita realizar el tratamiento para dibujo usando el plano
\alpha, la información sobre el plano \alpha necesita
almacenarse conjuntamente con los datos de imagen de textura en la
memoria, lo cual exige una mayor capacidad de memoria.
Con el fin de evitar dichos requisitos de aumento
de capacidad de memoria, se ha propuesto también prefijar valores
especiales que representen la transparencia para cada valor de
píxel, tales como (R, V, A) = (0, 0, 0) en el caso en que los
valores de píxel estén representados por tres colores fundamentales
de rojo (R), verde (V) y azul (A). El dispositivo de dibujo no
reescribe entonces el valor de la memoria intermedia de trama si el
valor de píxel es el valor anterior para la imagen de presentación
visual, siendo entonces transparente el píxel en la imagen de
textura.
Sin embargo, en general es irreversible la
compresión de alto rendimiento para datos de imagen, tales como
datos de imagen de textura, de tal manera que ocasionalmente se
pueden descodificar partes transparentes como si fuesen opacas, en
cuyo caso las partes de píxel opacas se presentan como ruido en el
borde periférico de la pauta de textura.
Por otra parte, en un sistema en el que se usa un
valor especial como un valor de píxel para representar
transparencia, y un píxel opaco se cambia repentinamente a un píxel
transparente no dibujado, en ocasiones se produce un ruido
distorsionado, o el ruido denominado "de distorsión", en un
borde de una pauta de textura cundo se presenta visualmente una
pauta de textura a una escala reducida o a una escala ampliada. Esto
es similar al fenómeno que ocurre en el caso de una síntesis
insatisfactoria de imagen que emplea un fondo azul de una tonalidad
croma en emisiones de televisión.
De acuerdo con lo anterior, ha existido durante
mucho tiempo una necesidad de métodos y aparatos perfeccionados para
solucionar el problema anteriormente expuesto en el que una imagen
de gran calidad, tal como una pauta de textura
pre-reproducida, suministrada como una imagen, se
deteriora cuando se dibuja para presentación visual. El presente
invento satisface claramente esta necesidad.
El documento
JP-A-07/240845 (en el que se basan
las partes de pre-caracterización de las
reivindicaciones 1 y 12 de la presente memoria) describe un
compresor y expansor de imagen que se ha diseñado para evitar la
aparición de ruido en un elemento transparente de imagen. El
documento US-A- 5 327 509 describe un generador de
imagen para reproducción de textura que permite generar píxeles
reproducidos de forma translúcida.
En las reivindicaciones 1, 12 y 19 se exponen
aspectos respectivos del presente invento.
A título de ejemplo, y no necesariamente con
carácter limitativo, una característica de la realización preferida
del presente invento descrita más adelante en la presente memoria
proporciona un sistema de transmisión de datos de imagen para
transmitir datos de imagen en el que se asigna un valor que
representa transparencia de un píxel, comprimiéndose los datos de
imagen en función de datos de imagen que corresponden a un tamaño
prefijado y predeterminado de un área de imagen como una unidad, y
para transmitir datos auxiliares especificando si cada píxel de los
datos de imagen originales de la unidad de datos de imagen es
transparente u opaco en correlación con los datos comprimidos de
imagen.
De acuerdo con esta característica de la
realización preferida del invento, un píxel configurado como un
píxel transparente por los datos auxiliares en la expansión de los
datos comprimidos de imagen se configura obligatoriamente como un
píxel transparente sin tener en cuenta los datos expandidos de
imagen.
Con dicho método de transmitir datos de imagen,
si un píxel que debería ser transparente se convierte en opaco por
error en la expansión y descodificación de datos de imagen de datos
comprimidos, dicho píxel se convierte obligatoriamente en un píxel
transparente. Los datos expandidos de imagen, corregidos de ese
modo, se guardan en la memoria y se usan para dibujar mediante un
dispositivo de dibujo. Por tanto, resulta innecesario guardar los
datos auxiliares en una memoria, por lo que se puede eliminar la
capacidad de memoria correspondiente a los datos auxiliares.
Adicionalmente, puesto que la parte inherentemente transparente se
dibuja siempre como una parte transparente, se reduce el ruido
debido a compresión irreversible en la imagen regenerada.
La realización preferida del presente invento
proporciona también un sistema de tratamiento de imágenes en el que
se asigna un valor que representa transparencia como un valor de
píxel y el dibujo realizado incluye transparencia, en el que un
píxel opaco que esté próximo al píxel transparente se dibuja como un
píxel semitransparente.
Con dicho sistema de tratamiento de imágenes, un
píxel que sea vecino al píxel transparente se convierte
obligatoriamente en un píxel semitransparente, con lo que se reduce
el ruido de distorsión.
En consecuencia, las realizaciones del presente
invento satisfacen una necesidad existente hace mucho tiempo en la
técnica de un método y aparato para transmitir y tratar datos de
imagen, y un medio de registro para los mismos, que obvian los
problemas anteriormente mencionados de ruido de imagen y la
manipulación de los datos de transparencia de píxel.
A continuación se describe el invento a título de
ejemplo y con referencia a los dibujos adjuntos, a lo largo de los
cuales a las partes análogas se les hace referencia por referencias
análogas, y en los que:
La Figura 1 es un diagrama de bloques que ilustra
una máquina de juego que lleva a la práctica un dispositivo de
tratamiento de imágenes de acuerdo con el presente invento;
La Figura 2 muestra el aspecto físico externo de
la máquina de juego mostrada en la Figura 1;
La Figura 3 ilustra un sistema para tratar datos
comprimidos de imagen de acuerdo con una realización del presente
invento;
La Figura 4 es un diagrama de bloques para un
procesador de registro en un sistema de transmisión de datos de
imagen de acuerdo con el presente invento;
La Figura 5 ilustra una imagen original y una
unidad de tratamiento para la misma en una realización del presente
invento;
La Figura 6 ilustra datos auxiliares usados para
el tratamiento de la imagen de la Figura 5;
La Figura 7 ilustra datos cuando se registra la
imagen original de la Figura 5;
La Figura 8 ilustra una unidad de tratamiento de
datos comprimidos de imagen en una realización del presente
invento;
La Figura 9 ilustra un ejemplo de la pauta de
imagen original de una unidad de tratamiento de datos comprimidos de
imagen en una realización del presente invento;
La Figura 10 ilustra datos auxiliares anexados a
la pauta de imagen de la Figura 9;
La Figura 11 ilustra una tabla de conversión de
color para el formulario de color de índice;
La Figura 12 ilustra un ejemplo de un formato de
datos durante el registro de datos comprimidos de imagen en una
realización del presente invento;
La Figura 13 es un diagrama de bloques para
ilustrar la manipulación de datos durante el registro de los datos
comprimidos de imagen, en una realización del presente invento;
La Figura 14 ilustra el ruido generado en los
datos de imagen por compresión irreversible;
La Figura 15 ilustra una pauta de imagen después
de eliminar el ruido generado por compresión irreversible, en una
realización del presente invento;
La Figura 16 es un diagrama de flujo para
conversión a unos datos de formulario de color de índice;
La Figura 17 es un diagrama de flujo para
tratamiento de dibujo que incluye tratamiento semitransparente;
y
La Figura 18 ilustra el tratamiento
semitransparente.
Refiriéndose ahora a los dibujos, los números
análogos de referencia designan partes análogas o correspondientes a
lo largo de todas las figuras de los dibujos.
El presente invento se explica, a título de
ejemplo, en el contexto de una máquina de juego de televisión.
En la Figura 1 se muestra una realización de una
máquina de juego de televisión que tiene una función tridimensional
de gráficos y una función de reproducción de imágenes móviles de
acuerdo con el presente invento.
En la Figura 2, se muestra una máquina 1 de juego
que incluye una parte principal de cuerpo de la máquina de juego y
un terminal 2 de control que constituye una parte de entrada de
usuario. El terminal 2 de control está conectado a la parte
principal de cuerpo de la máquina 1 de juego mediante la
interconexión de un enchufe conector 4 fijado en un parte delantera
de un cable 3 conectada a su vez al terminal 2 de control y a una
clavija conectora 5A de la parte principal de cuerpo de la máquina 1
de juego. En la presente realización, se han provisto dos clavijas
conectoras 5A y 5B en la parte principal de cuerpo de la máquina 1
de juego, por lo que se conectarán dos terminales 2 de control a la
parte principal de cuerpo de la máquina 1 de juego para proporcionar
un juego para los rivales.
Con este tipo de máquina de juego, se puede
disfrutar del juego cargando en la parte principal de cuerpo de la
máquina 1 de juego un dispositivo auxiliar de almacenamiento, tal
como un disco CD-ROM 6, en el que se habrán escrito
un programa de juego o datos de imagen.
Con referencia de nuevo a la Figura 1, la máquina
de juego de la presente realización tiene dos buses de sistema, a
saber, un bus principal 10 y un bus auxiliar 2. El intercambio de
datos entre el bus principal 10 y el bus auxiliar 20 se controla
mediante un controlador 30 de bus.
Al bus principal 10 están conectados una CPU
principal 11, un descodificador 13 de expansión de imagen, un
pre-procesador 14, un procesador 15 de dibujo y un
controlador principal de acceso directo de memoria (en adelante
DMA) 16. Una memoria 17 de tratamiento está conectada al procesador
15 de dibujo incluyendo una memoria intermedia de tramas para datos
de presentación visual (memoria de tramas) y un convertidor digital
analógico (en adelante D/A). Una señal analógica de vídeo procedente
del procesador 15 de dibujo se descarga como salida a un terminal 18
de salida de vídeo. Este terminal 18 de salida de vídeo está
conectado a un dispositivo de presentación visual, tal como una
pantalla de tubo de rayos catódicos, de una manera no mostrada.
Al bus auxiliar 10 están conectados una CPU
auxiliar 21, una submemoria 22, un accesorio 23 de memoria de sólo
lectura (en adelante ROM), un controlador auxiliar DMA 24, un
procesador 25 para tratamiento de sonido, una unidad 26 de entrada,
un dispositivo 27 de almacenamiento auxiliar y una unidad 28 de
interfaz de comunicación para la expansión del sistema. En la
presente realización, el dispositivo 27 de almacenamiento auxiliar
incluye un descodificador 41 de CD-ROM y un
activador 42 de CD-ROM. En el accesorio ROM 23 está
almacenado un programa para iniciar el funcionamiento como la
máquina de juego. Al procesador 25 de sonido está conectada una
memoria 25M para tratamiento de sonido. El procesador 25 de sonido
incluye un convertidor D/A que suministra una señal analógica de
sonido que se descarga como salida a un terminal 29 de salida de
sonido.
El dispositivo 27 de almacenamiento auxiliar
descodifica un programa de aplicación, tal como un programa de
juego, y datos, registrados en el disco CD-ROM 6, se
cargan en el activador 42 de CD-ROM. En el disco 6
de CD_ROM, hay también registrados datos de imagen de una imagen
móvil comprimida o de una imagen fija, y datos de imagen de la
imagen de textura que modifica el polígono. El programa de
aplicación del disco CD-ROM 6 incluye también una
orden de dibujo de polígono.
La unidad 26 de entrada incluye también un
terminal 2 de control como los medios de entrada de usuario
anteriormente mencionados, un terminal de entrada para señales de
vídeo y un terminal de entrada para señales de sonido.
La CPU principal 11 gestiona y controla diversas
partes del lado del bus principal. La CPU principal realiza también
parte del tratamiento en el caso de dibujar un objeto como un
conjunto de una gran cantidad de polígonos. La CPU principal 11
formula en la memoria principal 12 una cadena de órdenes de dibujo
para generar una imagen de dibujo para una pantalla, como se
explicará subsiguientemente. El intercambio de datos entre la CPU
principal 11 y el bus principal 10 se realiza basándose en el
paquete de datos para permitir transferencia de
ráfagas.
ráfagas.
La memoria principal 12 incluye, para datos de
imagen de la imagen móvil y de la imagen fija, un área de memoria
para datos comprimidos de imagen y un área de memoria para datos
expandidos y descodificados de imagen. La memoria principal 12
incluye también un área de memoria para datos de gráficos, tales
como una cadena de órdenes de dibujo (denominada una memoria
intermedia de paquetes). Esta memoria intermedia de paquetes se usa
para configurar una cadena de órdenes de dibujo mediante la CPU 11 y
para transferir la cadena de órdenes de dibujo al procesador de
dibujo. Esta memoria intermedia de paquetes se usa para configurar
la cadena de órdenes de dibujo mediante la CPU principal 11 y para
transferir la cadena de órdenes de dibujo al procesador 15 de
dibujo.
El descodificador 13 de expansión de imágenes
expande datos comprimidos de imagen móvil reproducidos del disco
CD-ROM 6 y transferidos a la memoria principal, y
datos comprimidos de pautas de textura contenidos en la memoria
principal 12. Como en la presente realización se usa el sistema de
compresión de imágenes del Grupo 2 de Expertos en Imágenes Móviles
(en adelante MPEG2 ), el descodificador 13 de expansión de imágenes
tiene también una pauta correspondiente de descodificador, como
también se explicará subsiguientemente.
En una etapa de salida del descodificador 13 para
expansión de imagen, se ha provisto una unidad 50 de compresión
instantánea capaz de efectuar compresión/expansión instantánea
(sustancialmente en tiempo real) que tiene una velocidad de
compresión de, por ejemplo, 1/4 a 1/2. El descodificador 13 para
expansión de imagen puede seleccionar, como un formulario de salida
de sus datos de imagen de salida, un primer formulario de datos de
salida de recuantificación de los valores de los píxeles de los
datos de imagen y entregar como salida los valores recuantificados
de píxeles o un segundo formulario de datos de salida de convertir
los píxeles a datos de índice que especifiquen los colores próximos
a los píxeles a partir de un número prefijado de colores limitados
de reproducción, cualquier cosa que sea adecuada al tratamiento
ejecutado por el procesador 15 de dibujo. Al primer formulario de
datos de salida y al segundo formulario de datos de salida se les
denominará en la presente memoria un formulario de color directo y
un formulario de color de índice, respectivamente.
El procesador 15 de dibujo ejecuta la orden de
dibujar transferida de la memoria principal 12 para almacenar los
resultados en la memoria de tramas. Los datos de salida leídos de la
memoria de tramas se descargan como salida a través de un
convertidor D/A a un terminal 18 de salida de vídeo de manera que se
presenten visualmente en la pantalla del dispositivo de monitor de
imágenes.
Si el formulario de salida de los datos de imagen
recibidos de la memoria principal 12 es de la forma de un
formulario de color directo, el procesador 15 de dibujo almacena
directamente los valores recuantificados de píxeles en la memoria de
tramas. Si el formulario de salida de los datos de imágenes
recibidos de la memoria principal 12 es de la forma de un
formulario de color de índice, el procesador 15 de dibujo realiza el
tratamiento de convertir los datos de imagen en datos
correspondientes de color representativo. Para este fin, el
procesador 15 de dibujo puede almacenar una tabla de consulta de
color (en adelante CLUT) que es una tabla de conversión entre los
datos de índice y los datos de color representativo.
El pre-procesador 14 está
construido como un procesador que tiene la CPU y se ha diseñado para
compartir una parte del tratamiento realizado por la CPU principal
11. Por ejemplo, el pre-procesador 14 puede realizar
ocasionalmente el tratamiento que consiste en convertir los datos
de polígonos en datos de coordenadas bidimensionales para
presentación visual.
En la presente realización, se ha provisto una
unidad 60 de descongelación instantánea entre el
pre-procesador 14 y el bus principal 10 para
descongelar la compresión realizada por la unidad 50 de compresión
instantánea.
A continuación se describe el tratamiento básico
realizado por la presente máquina de juego.
Si se ha conectado la fuente de alimentación para
la máquina de juego mostrada en la realización de la Figura 1, y se
ha cargado un disco CD-ROM en la parte principal de
cuerpo de la máquina 1 de juego, la CPU auxiliar ejecuta un programa
de inicialización para ejecutar el programa. Los datos de registro
del disco CD-ROM 6 se toman entonces mediante las
siguientes etapas del procedimiento.
Es decir, en el dispositivo 27 de almacenamiento
auxiliar, los datos comprimidos de imagen, orden de dibujar y el
programa a ejecutar por la CPU principal 11 se leen del disco
CD-ROM 6 por medio de un activador 42 de
CD-ROM y de un descodificador 41 de
CD-ROM con el fin de ser cargados temporalmente por
el controlador sub-DMA 24 en la
sub-memoria 22.
Los datos tomados por la
sub-memoria 12 son transferidos por el controlador
sub-DMA, controlador 30 de bus y controlador
principal DMA a la memoria principal 12. Entretanto, la CPU auxiliar
se configura para acceder directamente la trama del procesador 15
de dibujo para que la sub-CPU 21 pueda también
modificar el contenido de la imagen presentada visualmente,
independientemente del control realizado por el procesador 15 de
dibujo.
La Figura 3 es una vista en bloques que ilustra
el flujo de los datos de imágenes en el diagrama de bloques de la
Figura 1 con más detalle. En la Figura 3, la flecha dibujada con
líneas de trazos especifica el flujo de datos de imágenes.
Refiriéndose ahora a la Figura 3, la unidad 13 de
descodificación para expansión de imagen de la presente realización
incluye un controlador DMA 131, una memoria "primero en
entrar-primero en salir" (en adelante memoria
FIFO), un descodificador de MPEG (MDEC) 133, un empaquetador 134,
una memoria FIFO 135 y una unidad 50 de compresión instantánea. La
unidad 50 de compresión instantánea está constituida por una tabla
de conversión 52 para efectuar la compresión instantánea, y por un
controlador DMA 51.
Los controladores DMA 131 y 51 realizan el
arbitraje para el bus principal 10 con el fin de transferir de las
memorias de acceso directo ( DMA) los datos comprimidos de imagen
y los datos de imagen expandidos y comprimidos instantáneamente
entre la memoria principal 12 y el descodificador 13 de expansión de
imagen mediante la explotación del tiempo vacante del bus principal
10. Las memorias FOFO 132 y 135 son memorias intermedias de un
número mínimo de etapas para impedir que se pierdan datos en la
colisión de peticiones plurales de bus.
El descodificador MDEC 133 expande los datos de
imagen, comprimidos de acuerdo con el sistema MPEG2, por medio de la
expansión de datos.
Antes de proceder a la descripción de la
descodificación para expansión realizada por el descodificador 133,
se explica la manera en que se registran los datos de imagen en una
forma comprimida en el CD-ROM 6 refiriéndose al
diagrama de bloques de la Figura 4, que muestra el caso de los datos
de imagen de pauta de textura.
En el ejemplo presente, los datos de pauta de
textura son los datos de imagen bidimensional de un área rectangular
constituida por 64 píxeles por 64 píxeles, como se ha descrito
anteriormente. Cada dato de píxel está formado por 8 bits cada uno
de los colores rojo (R), verde (V) y azul (A). Nótese que a un píxel
asignado a (R, V, A) = (0, 0, 0) se le asigna de manera que se
construya como siendo de un color transparente. La Figura 5 muestra
un ejemplo de una pauta original de textura de alta calidad obtenida
en pre-reproducción.
Los datos originales de pauta de textura que
entran en un terminal 101 de entrada en la Figura 4 se fraccionan en
una unidad 102 de fraccionamiento de bloques en 16 áreas
rectangulares, cada una de las cuales está constituida por 16 por 16
píxeles, como se muestra en la Figura 5. Este área rectangular se
denomina un macrobloque. Aguas abajo de la unidad 102 de
fraccionamiento de bloques, se tratan los datos de pauta de textura
sobre la base de macrobloques.
En la realización presente, la unidad 102 de
fraccionamiento de bloques elimina previamente aquéllos de entre
los 16 macrobloques para los que los valores de píxel son de un
color transparente, y empaqueta los macrobloques restantes para dar
como salida los paquetes resultantes. Simultáneamente, en la unidad
102 de fraccionamiento de bloques se genera una tabla Ptb que
especifica la información de posición de los macrobloques en la
pauta de textura, y se suministra a una unidad 108 generadora de
señal de registro con el fin de registrarla como una parte de la
información de cabecera que es una información auxiliar de los datos
de pauta de textura.
Si la pauta de textura es como la mostrada en la
Figura 5, la tabla de posición Ptb del macrobloque es como la
mostrada en la Figura 6. Es decir, la tabla de posición Ptb de los
macrobloques es una tabla de 4X4X1 bits en la que "0" y
"1" responden a una posición de un macrobloque constituido
solamente por píxeles de colores transparentes y a una posición de
un macrobloque donde existe al menos un píxel opaco. En el caso de
la presente realización, los datos de imágenes de salida de pauta de
textura, empaquetados tras la eliminación de los macrobloques de los
valores de píxel de los que todos son de un color transparente,
están formados por diez macrobloques, como se ha mostrado en la
Figura 7.
Los datos empaquetados de pauta de textura se
envían a una unidad de compresión 103, donde cada macrobloque se
convierte a partir de una representación de señales de tres colores
a una representación constituida por señales de luminancia y señales
de croma. Esta representación se denomina de ahora en adelante
conversión espacial de color (CEC). La Tabla 1 muestra ejemplos de
los coeficientes CEC usados en este caso, para convertir una señal
tricolor en una señal de luminancia y control.
\dotable{\tabskip\tabcolsep#\hfil\+\hfil#\+\hfil#\+\hfil#\+\hfil#\+\hfil#\+\hfil#\+\hfil#\+\hfil#\+\hfil#\+\hfil#\+\hfil#\+\hfil#\tabskip0ptplus1fil\dddarstrut\cr}{ Y \+ \+ \+ 0,299 \+ \+ \+ 0,587 \+ \+ \+ 0,114 \+ \+ \+ R\cr Cb \+ = \+ \+ -0,16871 \+ \+ \+ -0,33130 \+ \+ \+ -0,5 \+ \+ X \+ G\cr Cr \+ \+ \+ 0,5 \+ \+ \+ -0,4187 \+ \+ \+ -0,0813 \+ \+ \+ B\cr}
En cuanto a los componentes de señal de
luminancia, cada macrobloque se fracciona en cuatro, de tal manera
que esté formado por 4 bloques de luminancia Y0, Y1, Y2 e Y3, cada
uno de los cuales está constituido por 8X8 píxeles, como se muestra
en la Figura 8. En cuanto a un macrobloque constituido por
componentes de señal de croma, se agrupan juntos cuatro píxeles
vecinos para formar dos bloques de señales de croma, cada uno de los
cuales está constituido por 8X8 píxeles. De esta manera, cada
macrobloque está fraccionado en seis bloques.
La unidad de compresión 103 aplica una
transformada discreta coseno (DCT) a este macrobloque. La DCT es una
clase de transformada similar denominada transformada ortogonal, y
designa una transformada definida por un formulario
Y + P \cdot X \cdot Pi
donde X es una matriz de 8X8 píxeles que tienen
valores de luminancia del bloque como componentes, P es una matriz
DCT, y Pi designa su matriz inversa. En la Tabla 2 se muestran los
coeficientes de la matriz DCT
P.
\vskip1.000000\baselineskip
4096 | 4096 | 4096 | 4096 | 4096 | 4096 | 4096 | 4096 | ||
5681 | 4816 | 3218 | 1130 | -1130 | -3218 | -4816 | -5681 | ||
5532 | 2217 | -2217 | -5352 | -5352 | -2217 | 2217 | 5352 | ||
4816 | -1120 | -5681 | -3218 | 3218 | 5681 | 1130 | -4816 | ||
P = | 4096 | -4096 | -4096 | 4096 | 4096 | -4096 | -4096 | 4096 | X 1/64 |
3218 | -5681 | 1120 | 4816 | -4816 | -1130 | 5681 | -3218 | ||
2217 | -5352 | 5352 | -2217 | -2217 | 5352 | -5352 | 2217 | ||
1130 | -3218 | 4816 | -5681 | 5681 | -481653218 | -1130 |
Los bloques DCT se cuantifican con una resolución
diferente de uno a otro componente. Una tabla que designa un anchura
de cuantificación de uno a otro componente se denomina tabla de
cuantificación (tabla Q). En la Tabla 3 de cuantificación se muestra
un ejemplo de esta clase de tabla.
\vskip1.000000\baselineskip
\dotable{\tabskip\tabcolsep\hfil#\hfil\+\hfil#\hfil\+\hfil#\hfil\+\hfil#\hfil\+\hfil#\hfil\+\hfil#\hfil\+\hfil#\hfil\+\hfil#\hfil\+\hfil#\hfil\+\hfil#\hfil\+\hfil#\hfil\+\hfil#\hfil\+\hfil#\hfil\+\hfil#\hfil\+\hfil#\hfil\+\hfil#\hfil\+\hfil#\hfil\tabskip0ptplus1fil\dddarstrut\cr}{ \+ 2 \+ \+ 16 \+ \+ 19 \+ \+ 22 \+ \+ 26 \+ \+ 27 \+ \+ 29 \+ \+ 34\+\cr \+ 16 \+ \+ 16 \+ \+ 22 \+ \+ 24 \+ \+ 27 \+ \+ 29 \+ \+ 34 \+ \+ 37\+\cr \+ 19 \+ \+ 22 \+ \+ 26 \+ \+ 27 \+ \+ 29 \+ \+ 34 \+ \+ 34 \+ \+ 38\+\cr \+ 22 \+ \+ 22 \+ \+ 26 \+ \+ 27 \+ \+ 29 \+ \+ 34 \+ \+ 37 \+ \+ 40\+\cr Tab. Q = \+ 22 \+ \+ 26 \+ \+ 27 \+ \+ 29 \+ \+ 32 \+ \+ 35 \+ \+ 40 \+ \+ 48 \+ X 1/16\cr \+ 26 \+ \+ 27 \+ \+ 29 \+ \+ 32 \+ \+ 35 \+ \+ 40 \+ \+ 48 \+ \+ 58\+\cr \+ 26 \+ \+ 27 \+ \+ 29 \+ \+ 34 \+ \+ 38 \+ \+ 46 \+ \+ 56 \+ \+ 69\+\cr \+ 27 \+ \+ 29 \+ \+ 35 \+ \+ 38 \+ \+ 46 \+ \+ 56 \+ \+ 69 \+ \+ 83\+\cr}
En realidad, la cuantificación se lleva cabo
dividiendo el valor de la tabla Q para cada componente por el
producto de un valor QANT que determina la etapa de cuantificación
total.
Si se aumenta el valor QANT de la etapa de
cuantificación total, se deteriora la calidad de la imagen tal como
se ha descodificado. Sin embargo, aumenta el número de componentes 0
contenidos en un bloque, mejorando de ese modo la velocidad de
compresión.
El bloque cuantificado se numera
unidimensionalmente mediante una secuencia denominada un orden en
zigzag, de tal manera que entonces sea codificado con longitud
variable por codificación Huffman. Los datos comprimidos de imagen
procedentes de la unidad 103 de compresión se envían a una unidad
109 generadora de señal de registro.
Los datos empaquetados de imagen de pauta de
textura de la unidad 102 de división de bloques se envían también a
una unidad 104 generadora de pauta de máscara. Para cada pauta
empaquetada de macrobloque, se proporciona una
pauta-\alpha (pauta de máscara) de 16X16X1 bits,
en la que un bit asociado con un color transparente se convierte en
un 1, y se envía a través de una memoria intermedia 105 de pauta de
máscara a la unidad 109 generadora de señal de registro.
Si un macrobloque de una pauta de textura tiene
una pauta como la que se muestra en la Figura 9, la pauta de máscara
Msk del macrobloque se muestra en la Figura 10. En el lado derecho
de la Figura 9 se muestran valores de nivel cuando los valores de
píxeles están representados por 8 bits. El valor de píxel = 0
corresponde a los valores de píxeles de los tres colores
fundamentales (R, V, A) = (0, 0, 0) que significan transparencia,
como se ha explicado anteriormente. Los datos de la pauta de máscara
Msk son 16X16X1 bits donde "0" y "1" corresponden a un
píxel transparente y a un píxel opaco, respectivamente.
En la realización presente, se genera una tabla
de consulta de color (CLUT) para llevar a cabo el tratamiento de
datos de color de índice, y los datos de la CLUT así generada se
registran en el CD-ROM 6. Los datos de imagen
basados en macrobloque procedentes de la unidad 102 de
fraccionamiento de bloques se envían a un generador de CLUT 106, que
entonces selecciona los colores representativos usados para el
macrobloque por cuantificación vectorial de uno a otro macrobloque.
Se genera la CLUT constituida por los colores representativos y el
índice, como se muestra en la Figura 11.
Como técnica para cuantificación vectorial por la
unidad 106 de generación de CLUT, se utiliza dicho método en el que
tres componentes de señal de color fundamental rojo (R), verde (V) y
azul (A) se toman en direcciones mutuamente ortogonales para suponer
un espacio tridimensional, se calculan las distancias entre píxeles
respectivos en el espacio de los colores, se agrupan juntos los
píxeles con distancias más cortas, y se redondean los datos de píxel
de tal manera que los colores de los píxeles contenidos en un
macrobloque se compriman dentro de 16 colores representativos. Por
supuesto, se pueden usar una variedad de técnicas conocidas de
cuantificación vectorial además del método descrito anteriormente.
Si, en la presente realización, los píxeles del color transparente
se incluyen en un macrobloque, uno de los colores representativos
necesita ser un color transparente, con independencia del método
particular de cuantificación vectorial que se hay usado.
Si los datos de píxel se pueden redondear hasta
16 o menos colores representativos de esta manera, se formula la
tabla de consulta de color (CLUT) constituida por los 10 o menos
colores representativos y el índice de cada uno de los colores
representativos. La CLUT así formulada, se envía a través de una
memoria intermedia 107 de CLUT a la unidad 108 de generación de
señal de registro.
La unidad 108 de generación de señal de registro
agrupa los resultados anteriores con base en macrobloque para
escribir en el CD-ROM 6 por medio de una unidad de
escritura 109. En este caso, el formato de datos es tal que los
datos comprimidos de imagen basados en macrobloque van seguidos por
la pauta de máscara Msk para los datos de macrobloque y de CLUT,
como se muestra en la Figura 12. Estos datos se denominan una
corriente de bits. Una serie de conjuntos de los datos comprimidos
de imagen basados en macrobloque y de los datos de pauta de máscara
forman los datos de pauta de textura de 64X64 píxeles que se
registran en un CD-ROM 6. La información de cabecera
se añade como apéndice en el extremo delantero de cada uno de los
datos de pauta de textura. En la información de cabecera, se
registran como parte de la misma no sólo los datos de identificación
que testifican que los datos son los datos de pauta de textura, sino
también la tabla Ptb de posición de macrobloque que especifica la
información contenida en la posición de macrobloque en la pauta de
textura, como se ha descrito con referencia a la Figura 6.
La secuencia de la descodificación para expansión
de los datos de imagen, registrada en la forma comprimida en el
CD-ROM 6 como se ha descrito anteriormente, es la
inversa de la secuencia anteriormente descrita de compresión de
imagen. Como en este caso la compresión es irreversible, la unidad
13 de descodificación para expansión de imagen usa la pauta de
máscara Msk registrada después de la intercalación en los datos
comprimidos de los valores de píxel para convertir obligatoriamente
los píxeles descodificados del bit "0" de la pauta asociada de
máscara Msk, en un color transparente con el fin de descodificar
correctamente los píxeles de color transparente del macrobloque
expandido, como se explicará subsiguientemente.
Un descodificador MDEC 133 de la unidad 13 de
descodificación para expansión de imagen se comporta de la manera
siguiente:
(1) En el CD-ROM 6, está
registrada la información de imagen comprimida y la información
auxiliar (tal como la información de geometría) en el estado
intercalado. Estos items de la información son leídos continuamente
por el activador 42 del CD-ROM y por el
descodificador 41 de CD-ROM para almacenamiento
temporal en la memoria principal 12. Entonces, solamente la
información de imágenes comprimidas es fraccionada y transferida a
la unidad 13 de descodificación para expansión de imágenes. La
pauta de máscara Msk se añade como apéndice a la información de
imágenes comprimidas. Entretanto, la información auxiliar, tal como
la información de geometría, se trata en la CPU 11 para calcular la
información de posición de un objeto en el que se use como una
textura la imagen descongelada.
(2) El descodificador MDEC 133 tiene un
descodificador de longitud variable y descodifica un bloque
codificado en Huffman. Aunque el árbol del Huffman es fijo, los
valores de los códigos asociados se pueden cambiar.
(3) El MDEC 133 tiene también un descuantificador
que descuantifica el bloque descodificado para cambiar la secuencia
de bloque a la orden de zigzag anteriormente mencionada. La
descuantificación se lleva a cabo en las etapas diferentes sobre la
base de coeficiente.
(4) El MDEC tiene también una unidad de
tratamiento de CEC que realiza la transformada inversa ortogonal de
píxeles de 8X8.
(5) El MDEC 133 tiene también un procesador CEC
que convierte la imagen de macrobloque representada por las señales
de luminancia y las señales de croma en una representación de tres
señales de colores fundamentales R, V y A.
Así, de los datos de entrada transferidos desde
la unidad 27 de almacenamiento auxiliar a la memoria principal 12,
los datos comprimidos de imagen se transfieren mediante el
controlador DMA 131 desde la memoria principal 12 a la unidad 13 de
descodificación para expansión de imagen, en la que el
descodificador MDEC 133 efectúa la descodificación asociada con el
MPEG 2 para descongelar los datos comprimidos de imagen con el fin
de descodificar los píxeles respectivos como datos de imagen de
formulario de color directo constituidos por las tres señales de
colores fundamentales R, V y A, como se ha descrito
anteriormente.
Estos datos de imagen se suministran a un
empaquetador 134 configurado para empaquetar los datos expandidos y
descodificados de imagen en una forma adecuada para el procesador
15 de dibujo sobre la base de píxel. En la presente ejecución, el
formulario de salida de los datos de imagen enviados al procesador
15 de dibujo se puede ajustar al sistema de color directo o al
sistema de color de índice. Es el empaquetador 134 el que realiza la
conversión del formulario de salida. Este empaquetador 134 convierte
píxeles obligatoriamente opacos en píxeles transparentes usando la
pauta de máscara Msk sobre los píxeles incluidos en el macrobloque,
independientemente de cambiar el píxel transparente a un píxel opaco
mediante la codificación/descodificación irreversibles.
El empaquetador 134 tiene la pauta que se muestra
en la Figura 13. Específicamente, el empaquetador 134 tiene una
unidad 71 de vibración para llevar a cabo la vibración basándose en
una tabla 72 de matriz de vibración, un cuantificador vectorial 73
para agrupar los datos de píxel en colores representativos de la
CLUT provista en una unidad 74 de almacenamiento de CLUT, con el fin
de convertir datos de formulario de color directo a datos de
formulario de color de índice siempre que se descarguen como salida
datos de salida en el formulario de color de índice, un procesador
75 de paquete y una unidad 76 de almacenamiento de pauta de máscara
para almacenar la pauta de máscara Msk.
La tabla CLUT basada en macrobloque, añadida como
apéndice en un estado intercalado en los datos de imagen de pauta de
textura, se transfiere desde la memoria principal 12 a la unidad 74
de almacenamiento de CLUT para almacenamiento en la misma.
Similarmente, la pauta de máscara Msk basada en macrobloque, añadida
como apéndice en un estado intercalado en los datos de imagen de
pauta de textura, se transfiere desde la memoria principal 12 a la
unidad 76 de almacenamiento de pauta de máscara para el
almacenamiento en la misma. Entretanto, la CLUT y la pauta de
máscara Msk se pueden transferir también directamente a las unidades
de almacenamiento 74 ó 76 sin hacerlas pasar a través de la memoria
principal.
El procesador 75 de empaquetado empaqueta los
datos descodificados sobre la base de píxel para dar como salida los
datos empaquetados. En este instante, se lleva a cabo la operación
de convertir obligatoriamente los datos expandidos del píxel
transparente contenido en la imagen de textura
pre-compresión en los valores de colores
transparentes, usando una pauta de máscara Msk almacenada en la
unidad 76 de almacenamiento de pauta de máscara.
Ahora se supone que, por ejemplo, si la pauta
original de macrobloque pre-compresión es tal como
la que se muestra en la Figura 9 y la pauta de máscara Msk es como
la mostrada en la Figura 10, la pauta de la pauta de macrobloque
expandida y descodificada se ha expandido mediante
codificación/descodificación irreversibles por el MPEG2 de tal
manera que el píxel transparente se ha expandido como un píxel
opaco, como se ha mostrado en la figura 14.
En este caso, los datos de macrobloque como se
muestra en la Figura 14 se introducen en el procesador 75 de
paquete, mientras que la pauta de máscara Msk mostrada en la Figura
10 se almacena en la unidad 76 de almacenamiento de pauta de
máscara. Por tanto, el procesador 75 de paquete convierte el píxel
que es "0" en la pauta de máscara Msk de la Figura 10 en (R; V;
A) = (0, 0, 0) especificando el color transparente con independencia
de los valores de píxel de los datos expandidos de entrada de
imagen. De esta manera, el procesador 75 de paquete da como salida
datos expandidos de imagen en los que los píxeles con un color
inherentemente transparente se ajustan todos correctamente al color
transparente.
Si los datos expandidos de imagen salen del
empaquetador 134 en el formulario de color directo, y el número de
bits del píxel de entrada es igual al de los píxeles de salida, la
unidad 71 de vibración y el cuantificador vectorial 73 se puentean,
y los datos descodificados se descargan como salida después de
haberlos empaquetado mediante el procesador 75 de empaquetado sobre
la base de píxel.
Si los datos expandidos de imagen se descargan
como salida en el formulario de color directo, pero si el número
n de bits de los píxeles de salida es menor que el de los
píxeles de entrada, la unidad 71 de vibración lleva a cabo un
redondeo adecuado. En la presente realización, se obtienen mediante
el descodificador MDEC 133 datos descodificados de 16 bits con coma
decimal fija. En la presente realización, se usa una de las tres
operaciones de redondeo siguientes
a) Los píxeles de entrada se recortan de modo que
estén comprendidos dentro de N bits, después de lo cual se descargan
como salida los bits de n más bajo de una parte entera de los
valores de píxeles de entrada;
b) Los bits superiores (N+1) del píxel de
entrada se truncan mediante semiajuste, y los bits superiores N se
descargan como salida; o
c) El píxel de entrada se multiplica con una
vibración ordenada de una tabla 72 de matriz de vibración fija, los
bits superiores (N+1) se truncan por semiajuste, y los bits
superiores N se descargan como salida.
Entonces, en las salidas del sistema de color de
índice, la cuantificación vectorial inversa empleando los colores
representativos almacenados en la unidad 74 de almacenamiento de
CLUT como se muestra en la figura 11 se realiza mediante el
cuantificador vectorial 73, para dar como salida datos de índice del
color representativo, en lugar de cada valor de píxel.
Como una técnica para cuantificación vectorial,
los valores de los píxeles expandidos- descodificados (datos de
color de, por ejemplo, 8 bits, para cada uno de los componentes de
color de los tres colores fundamentales R, V y A), se comparan con
los 16 colores representativos dados como CLUT (constituidos, por
ejemplo, por cuatro bits para cada uno de los tres colores
fundamentales R, V y A), y el índice de los datos de color de la
unidad 74 de almacenamiento de CLUT que tenga una afinidad de color
más próxima se entrega como salida en lugar del valor de píxel.
La Figura 16 es un diagrama de flujo que muestra
la operación de tratamiento realizada por el cuantificador vectorial
3.
Primero, en la etapa 201, se extrae el primer
píxel de datos del macrobloque expandido y descodificado. En la
etapa siguiente 202, se leen los valores de píxel (R, V y A) del
píxel Px,y. La siguiente etapa es la inicialización para
cuantificación vectorial. Para esta inicialización, se ajusta a un
valor inicial un indicador k (= número de índice en la Figura 11) de
una columna de referencia de la CLUT, mientras que el valor mínimo
Dmín de la distancia D entre los datos de color representativo de la
CLUT y los valores de píxel de los píxeles Px,y, (que es la
distancia entre R, V y A en el espacio de colores o el grado de
similaridad de color) se ajusta a un valor prefijado.
Luego, el tratamiento pasa a la etapa 204 para
referirse a los datos de color representativo de la CLUT
especificados por el indicador k. Después, en la etapa 205, se
calcula la distancia D entre el píxel Px,y y los datos de color
representativos. de referencia.
En este caso, la distancia D entre dos colores
(R1, G1, B1) y (R2, G2, B2) se puede calcular por la siguiente
ecuación:
(Q1)D = (R1 - R2) * (R1 -
R2) + (G1 - G2) * (G1 - G2) + (B1 - B2) * (B1 –
B2)
en la que el asterisco * indica
multiplicación.
En la etapa siguiente 206, se compara la
distancia calculada D con la distancia mínima Dmín. Si la distancia
calculada D es menor que la distancia mínima, se reemplaza la
distancia calculada D por la mínima distancia Dmín, mientras que se
reemplaza un valor de indicador k de una columna del color
representativo por el valor de índice que se va a calcular en la
etapa 207 (kmín). Recíprocamente, si la distancia D es mayor que la
mínima distancia Dmín, el tratamiento pasa a la etapa 208 en la que
se mantienen los valores vigentes de la mínima distancia Dmín y del
valor de índice kmín que se va a calcular.
Después de las etapas 207 y 208, el tratamiento
pasa a la etapa 209 para determinar si se ha hecho o no referencia a
todos los colores representativos de la CLUT. Si todavía existe
cualquier color representativo al que no se haya hecho referencia,
el tratamiento pasa a la etapa 210 para incrementar el valor del
indicador k. El tratamiento vuelve entonces a la etapa 204
para repetir la operación desde la etapa 204 hasta la etapa 209.
Si en la etapa 209 se determina que la referencia
a todos los valores representativos de la CLUT ha llegado a su fin,
el proceso pasa a la etapa 211 donde se descarga como salida el
valor de índice kmín como dato para el píxel. Luego, el proceso pasa
a la etapa 212, donde se comprueba si la conversión de los datos de
índice que emplean la CLUT anterior para todos los píxeles
contenidos en el macrobloque ha llegado a su fin. Si no hay ningún
píxel siguiente para el que la conversión anterior no ha llegado a
su fin, el proceso pasa a la etapa 213 para leer el píxel siguiente.
Luego, el proceso vuelve a la etapa 202 con el fin de llevar a cabo
el tratamiento anterior para el píxel. Si se considera que el
tratamiento para todos los píxeles ha llegado a su fin, se inicia el
tratamiento del macrobloque siguiente.
De esta manera, la unidad 13 de descodificación
para expansión convierte el valor de píxel de 14 bits después de la
expansión y descodificación en los datos de índice de 4 bits en el
sistema de índice, y da como salida los datos comprimidos
resultantes. Por supuesto, los datos de la pauta de máscara Msk o
los datos de la CLUT no están incluidos en los datos expandidos de
imagen de salida.
Los datos de píxel empaquetados de esta manera
por el empaquetador 134 se envían por medio de la memoria FIFO 135 a
la unidad de compresión instantánea 50, donde los datos de imagen se
comprimen instantáneamente. A diferencia de la compresión de alto
rendimiento de MPEG2, la compresión instantánea tiene un rendimiento
de 1/4 a 1/2. Sin embargo, se usa esta compresión instantánea en la
que la compresión/descodificación reversibles se pueden llevar a
cabo mediante un circuito de compresión/descodificación que tiene
una escala de hardware más pequeña a pesar de la baja relación de
compresión de 1/4 a 1/2.
En la presente realización, la codificación de
longitud de carrera y la codificación Huffman se usan
simultáneamente para la compresión. En la unidad de compresión
instantánea 50 se ha provisto una tabla de conversión 52, como un
manual de código que funciona como un diccionario para compresión.
La tabla de conversión 52, como manual de código, se genera y
mantiene previamente.
Desde el punto de vista funcional, la unidad de
compresión instantánea 50 dispone de un controlador DMA 51, como se
muestra en la Figura, y transfiere los datos
expandidos/descodificados de imagen de MPEG a la memoria principal
12 cuando efectúa simultáneamente la codificación de longitud de
carrera y la codificación Huffman usando la tabla de conversión 52.
Lo anteriormente expuesto es el funcionamiento de la unidad 13 de
expansión/descodificación de imagen. En este caso, como los datos
comprimidos son los datos de imagen a los que se les da un valor
especificado como un color transparente, no es necesario almacenar
el plano-\alpha que representa la transparencia en
la memoria principal 12, por lo que se puede reducir en una magnitud
correspondiente la capacidad de memoria. Adicionalmente, como los
datos comprimidos se guardan en la presente realización en la
memoria principal 12 mediante la unidad 50 de compresión
instantánea, se puede reducir el volumen de los datos.
Entretanto, si se lleva a cabo la compensación de
movimiento, no se realiza compresión instantánea reversible por
parte de la unidad 50 de compresión instantánea. En este caso, la
unidad 13 de descodificación para expansión de imagen, cuando lee en
la corriente de bits, simultáneamente lee en los datos de imagen de
la trama anterior desarrollado en la memoria principal 12 para
tratamiento.
Dibujando secuencialmente polígonos que
constituyan caras de un objeto, empezando desde un polígono que esté
situado en una posición distante a lo largo de la dirección de
profundidad de acuerdo con los datos Z que representan la
información tridimensional de profundidad, se puede presentar
estereoscópicamente una imagen en una superficie bidimensional de
presentación visual de imágenes.
La CPU principal 11 calcula un objeto o el
movimiento de un punto de visión, basada en una entrada de usuario
desde el terminal de control de la unidad 26 de entrada, y formula
una cadena de órdenes de dibujo de polígonos en la memoria principal
12.
Esta cadena de órdenes de dibujo de imagen, si se
completa, se transmite mediante el DMAC principal 16 desde la unidad
de pre-tratamiento 14 de la memoria principal 12
hasta la unidad 15 de tratamiento de dibujo de imagen de una orden
de dibujo a otra.
La unidad 15 de tratamiento de dibujo de imagen
ejecuta secuencialmente los datos enviados a la misma para almacenar
los resultados en un área de dibujo de imagen de la memoria de
trama. Para dibujar el polígono, se envían los datos a una unidad de
cálculo de gradiente de la unidad 15 de dibujo de imagen, a fin de
calcular el gradiente. Los cálculos de gradiente son los necesarios
para determinar el gradiente del plano de los datos de
establecimiento de correspondencia en el transcurso de la inclusión
de los datos de establecimiento de correspondencia en el interior
del polígono por dibujo del polígono. Si se dibuja una textura, el
polígono se rellena con los datos de imagen de textura, mientras
que, en el caso de sombreado de brillo, el polígono se rellena con
valores de luminancia.
También es posible el tratamiento de la textura
de una imagen móvil. Es decir, en el caso de la textura de la imagen
móvil, los datos comprimidos de la imagen móvil procedentes del
CD-ROM 6 se almacenan transitoriamente en la memoria
principal 12. Los datos comprimidos de imagen se envían a la unidad
13 de descodificación para expansión de imagen. La unidad 13 de
descodificación para expansión de imagen expande los datos de
imagen.
Los datos expandidos de imagen móvil se envían a
un área de textura situada en la memoria de trama del procesador 15
de dibujo. Como el área de textura se encuentra en la memoria
intermedia de trama del procesador de dibujo, la propia pauta de
textura se puede re-escribir sobre la base de trama.
De ese modo, si se envía una imagen móvil a un área de textura, la
textura se re-escribe dinámicamente de trama a
trama. Mediante la imagen móvil del área de textura, se puede
realizar la textura de la imagen móvil mediante el establecimiento
de correspondencia de la textura al polígono.
En un punto en el tiempo en el que una cantidad
prefijada de los datos expandidos de imagen basados en macrobloque
esté almacenada en la memoria principal 12, la CPU principal 11 hace
que los datos expandidos sean transmitidos sobre el bus principal
10 a la memoria intermedia de tramas del procesador 15 de dibujo por
medio de la unidad 60 de descongelación instantánea y del
pre-procesador 14. Si los datos expandidos de imagen
se transmiten al área de memoria de imagen de la memoria intermedia
de tramas, se presentan directamente como la imagen móvil de fondo
en el dispositivo monitor de imagen. Si los datos de imagen se
transmiten a un área de textura de la memoria intermedia de tramas,
los datos de imagen del área de textura se usan como una imagen de
textura para el establecimiento de correspondencia con un
polígono.
La unidad 60 de descongelación instantánea está
constituida por un controlador DMA 61, como un bloque funcional, y
una tabla de conversión 62 para llevar a cabo la conversión inversa
de la conversión realizada por la tabla de conversión 52 de la
unidad 50 de compresión instantánea. Específicamente, la unidad 60
de descongelación instantánea descongela los datos de imagen
comprimidos instantáneamente de la memoria principal 12, usando la
tabla de conversión 62, para formar datos expandidos/descodificados
MPEG, que se suministran por medio del
pre-procesador 14 al procesador 15 de dibujo.
Si, en la presente realización, el formulario de
salida es el formulario de color directo, los datos de imagen de
píxeles cuyos datos estén constituidos por las tres señales de
colores fundamentales de R, V y A de un número designado y prefijado
de bits se envían desde el pre-procesador 14 al
procesador 15 de dibujo para ejecutar el tratamiento para
dibujo.
En el caso del formulario de color de índice,
los datos de índice anteriormente mencionados se suministran al
procesador 15 de dibujo. La CLUT, que es la misma que la almacenada
en la unidad 74 de almacenamiento de CLUT, se transfiere al
procesador 15 de dibujo y se almacena en él. El procesador 15 de
dibujo convierte los datos de imagen del formulario de color de
índice en datos correspondientes representativos de color, usando la
CLUT, para recuperar los datos de imagen. Luego, el procesador 15 de
dibujo ejecuta el tratamiento de dibujo usando los datos de imagen
recuperados.
En la realización del establecimiento de
correspondencia de textura usando la pauta de textura anteriormente
descrita, el procesador 15 de dibujo lleva a cabo también el
tratamiento de dibujo de tal manera que los píxeles opacos que sean
vecinos a un píxel transparente se dibujen a un color
semitransparente.
La Figura 17 muestra, en un diagrama de flujo, un
ejemplo de tratamiento semitransparente ejecutado por el procesador
15 de dibujo.
Específicamente, en la etapa 301, se extrae el
primer píxel de los datos de macrobloque. En la etapa siguiente 302,
se leen los valores de píxel de los píxeles Px,y. En el caso de los
datos de índice, este valor de píxel es el dato de color
representativo obtenido de la CLUT. Luego, en la etapa 303, se
comprueba si el píxel es o no es transparente. La decisión de si el
píxel es o no es transparente se toma dependiendo de si el valor de
píxel es de un color transparente prefijado (R, V, A) = (0, 0,
0).
Si el píxel Px,y es transparente, el procesador
15 de dibujo pasa a la etapa 307 donde el píxel Px,y se dibuja como
un píxel transparente. Es decir, los datos de píxel en la posición
del píxel Px,y en la memoria intermedia de trama no se
re-escriben, sino que se mantienen como el color de
fondo.
Si, en la etapa 303, se averigua que el píxel
Px,y es opaco, el tratamiento pasa a la etapa 304 para comprobar si
el píxel Px,y es el píxel extremo en la dirección horizontal de un
macrobloque. Si el píxel es el píxel extremo, el tratamiento pasa a
la etapa 309 para dibujar el píxel como si fuese un píxel
semitransparente. Es decir, los datos de píxel en la posición Px,y
de la memoria intermedia de trama son una mezcla 1:1 del color de
fondo y del color del píxel Px,y.
Si, en la etapa 304, se averigua que el píxel
Px,y no es un píxel extremo en la dirección horizontal de un
macrobloque, el tratamiento pasa a la etapa 305 para juzgar si es o
no transparente el píxel Px-1,y que es vecino hacia
delante al píxel Px,y en la dirección horizontal. Si el píxel
Px-1,y es transparente, el tratamiento pasa a la
etapa 309 para dibujar el píxel Px,y como si fuese un píxel
semitransparente. A partir de entonces, el tratamiento pasa a las
etapas 310 y 311.
Si en la etapa 305 se averigua que el píxel
Px-1,y no es transparente, el proceso pasa a la
etapa 306. En la etapa 306, se comprueba si es o no es transparente
el píxel Px+1,y que es vecino hacia atrás del píxel Px,y en la
dirección horizontal. Si el píxel Px+1,y es transparente, el proceso
pasa a la etapa 309 para dibujar el píxel Px,y como si fuese un
píxel semi-transparente. A partir de ese momento, el
proceso pasa a las etapas 310 y 311.
Si, en la etapa 306, se averigua que el píxel
Px-1,y no es transparente, los dos píxeles vecinos
horizontalmente al píxel Px,y son ambos opacos, por lo que el
proceso continúa a la etapa 308 para dibujar el píxel Px,y como si
fuese opaco. Es decir, el valor del píxel correspondiente se
re-escribe al valor del píxel Px,y. Después de esto
el proceso pasa a las etapas 310 y 311.
En la etapa 310, se determina si se han tratado o
no todos los píxeles incluidos en el macrobloque. Si no se han
tratado aún todos los píxeles, el proceso pasa a la etapa 311. En
esta etapa, se toma el siguiente píxel incluido en el macrobloque,
después de lo cual se vuelve a la etapa 302 y se repite la misma
operación descrita anteriormente. Por el contrario, si se han
tratado todos los píxeles, esta operación ha terminado.
Si la relación de mezcla del píxel Px,y es
\alpha, \alpha = 0,0, \alpha = 0,5 y \alpha = 1,0
especifican dibujo transparente, semi-transparente y
opaco, respectivamente. La Figura 18 muestra un ejemplo del
resultado de la aplicación del tratamiento
semi-transparente antes mencionado a una pauta de
macrobloque mostrada en la Figura 9. Se puede ver que se ha reducido
el ruido de dispersión en el establecimiento de correspondencia de
textura.
En el tratamiento
semi-transparente descrito anteriormente, un píxel
opaco se dibuja semi-transparentemente si
exclusivamente los píxeles vecinos horizontalmente son
transparentes. Sin embargo, podría tenerse que hacer referencia
sólo a píxeles vecinos verticalmente para determinar si el píxel
opaco debería ser semi-transparente. Como
alternativa, el píxel opaco puede dibujarse de forma opaca si uno de
los dos píxeles, el vecino horizontalmente o el vecino
verticalmente, son transparentes. Todavía como alternativa, se
podría realizar el tratamiento semi-transparente
teniendo referencia a píxeles vecinos oblicuamente.
En lugar de llevar a cabo un tratamiento
semi-transparente dependiendo simplemente de si los
píxeles vecinos son transparentes, también es posible dibujar un
primer píxel opaco en la transición desde píxeles vecinos horizontal
o verticalmente a píxeles opacos como un píxel
semi-transparente, o bien dibujar un primer píxel
opaco en la transición desde píxeles vecinos opacos a píxeles
transparentes como un píxel semi-transparente.
En la realización descrita anteriormente, en la
que los datos de imagen a los píxeles de color transparente de los
que se da por adelantado un valor de píxel especificado se
comprimen a un rendimiento alto mediante un sistema de compresión
irreversible, y en la que una pauta de máscara Msk que tiene un bit
por píxel se añade como apéndice como un dato auxiliar a los datos
comprimidos de imagen para reconocer el píxel de color transparente
y el píxel opaco, de tal manera que, a la expansión de los datos
comprimidos de imagen, un píxel inherentemente transparente se
cambia obligatoriamente a un dato de píxel transparente usando la
pauta de máscara Msk, y se puede dibujar correctamente un píxel
transparente siempre como píxel transparente.
Además, como el plano \alpha es innecesario, se
puede reducir correspondientemente la capacidad de la memoria
principal 12.
Además, por dibujar un píxel opaco que sea vecino
al píxel transparente como un píxel
semi-transparente, se pueden reducir el ruido de
dispersión o las partes de contorno de la imagen dibujada.
En la presente realización, los datos expandidos
de imagen se comprimen instantáneamente y se transfieren a la
memoria principal sobre el bus principal 10. De ese modo, se puede
mejorar el rendimiento de utilización de la memoria en una magnitud
correspondiente a la compresión de datos. Además, si se usa el
formulario de color de índice como un formulario de salida de los
datos expandidos de imagen, se reduce el volumen de los datos,
porque los datos de píxel están constituidos por datos de índice, de
tal manera que se puede reducir el volumen de los datos y mejorarse
el rendimiento de utilización de la memoria en una magnitud
correspondiente a la compresión de los datos.
Los datos expandidos de imagen transmitidos sobre
el bus principal 10 desde la unidad 13 de descodificación para
expansión de imagen a la memoria principal 12, y los datos
expandidos de imagen transmitidos desde la memoria principal 12
sobre el bus principal 10 al procesador 15 de dibujo, son datos
comprimidos instantáneamente, y el volumen de datos se reduce,
mejorando de ese modo la velocidad de transmisión del bus.
Asimismo, en la presente realización, se pueden
seleccionar el formulario de color directo o el formulario de color
de índice como el formulario de salida de la unidad 13 de
descodificación para expansión de imagen, aunque solamente exista
un formulario de los datos comprimidos de entrada de imagen, de tal
manera que no hay necesidad de proporcionar datos separados de
entrada de imagen para conseguir formularios separados de salida,
mejorando así adicionalmente el rendimiento de utilización de la
memoria principal.
Adicionalmente, en el formulario de color
directo, se pueden redondear los datos de píxel mediante la
vibración hasta el número de bits adecuado al tratamiento por el
procesador 15 de dibujo, y aún en el caso del formulario de color
directo, se pueden obtener fácilmente datos de salida de un número
deseado de bits.
Aunque en la descripción anteriormente expuesta
se ha hecho referencia a la aplicación del dispositivo de
tratamiento de imágenes del presente invento a una máquina de juego,
hay que hacer notar que el dispositivo de tratamiento de imágenes
del presente invento se puede usar para una variedad de
aplicaciones.
Por tanto, de acuerdo con el presente invento,
los píxeles transparentes se pueden dibujar siempre correctamente
como un píxel transparente. Además, como los datos auxiliare tales
como el plano á no se usan para dibujo transparente, no hay
necesidad de guardar dichos datos auxiliares en una memoria.
Más aún, se pueden dibujar cada uno de los
píxeles opacos que sean vecinos a los píxeles transparentes como un
píxel semi-transparente con el fin de reducir ruido
de dispersión.
Como se ha mencionado anteriormente, el disco
CD-ROM se hace registrando la corriente de bits en
un disco principal. Luego se hace una matriz a partir del disco
principal. Después de esto, a partir de la matriz se fabrica un
gran número de discos para venderlos.
Por tanto, el presente invento satisface una
necesidad existente desde hace mucho tiempo en la técnica de un
método y aparato para transmitir y tratar datos de imagen, y un
medio de registro para los mismos, que obvia los problemas
anteriormente mencionados de ruido de imagen y la manipulación de
datos de transparencia de píxel.
A partir de lo anterior, resultará aparente que,
si bien se han ilustrado y descrito formas particulares del invento,
se pueden hacer diversas modificaciones sin apartarse del alcance
del invento. De acuerdo con ello, no se pretende que el invento
tenga carácter limitativo, excepto según las reivindicaciones
adjuntas.
Claims (21)
1. Un método para el tratamiento de datos de
imagen que representan una pluralidad de píxeles que tienen valores
de imagen, cuyo método comprende las etapas de:
dividir (102) los datos de imagen en una
pluralidad de áreas de imagen, siendo cada área de un tamaño
predeterminado e incluyendo una pluralidad de píxeles;
codificar (103) los datos de imagen para cada
área de imagen;
generar (104) datos adicionales que especifican
si cada valor de píxel de los datos de imagen es transparente u
opaco; y
transmitir (108) los datos codificados de imagen
junto con datos adicionales;
caracterizado porque:
se genera una tabla de consulta de color (106)
para cada área de imagen, cuya tabla de consulta de color tiene una
pluralidad de colores representativos; y
dicha etapa de transmisión transmite información
de la citada tabla de consulta de color.
2. Un método de acuerdo con la reivindicación 1,
en el que dicha etapa de transmitir transmite solamente dichos datos
adicionales si todos los valores de píxel del área de imagen
representan transparencia.
3. Un método de acuerdo con la reivindicación 1,
en el que dicha etapa de transmitir incluye generar una corriente de
bits mediante la intercalación de dichos datos adicionales y de los
citados datos de consulta de color en dichos datos codificados de
imagen, y transmitir la corriente de bits resultante.
4. Un método de acuerdo con la reivindicación 1,
cuyo método comprende las etapas de:
descodificar (133) los datos codificados de
imagen para cada área de imagen;
corregir un valor de píxel (134) de cada píxel de
los datos descodificados de imagen de acuerdo con los datos
adicionales para cada área de imagen; y
dibujar (15) los datos descodificados de la
imagen original.
5. Un método de acuerdo con la reivindicación
4,en el que dicha etapa de corregir corrige obligatoriamente el
valor de píxel del píxel como un píxel transparente, siempre que los
datos adicionales correspondientes al píxel especifican que el píxel
es un píxel transparente.
6. Un método de acuerdo con la reivindicación 4,
en el que:
se genera dicho dato adicional para cada área
de imagen; y
dicha etapa de corregir genera un valor de píxel
para todos los datos de píxel incluidos en el área de imagen como un
píxel transparente, cuando solamente se reciben datos adicionales
que especifican que un valor de píxel contenido en los datos de
píxel es transparente.
7. Un método de acuerdo con las reivindicaciones
1 ó 4, en el que dichos datos de imagen son datos de textura.
8. Un método de acuerdo con la reivindicación 4,
que comprende la etapa adicional de:
convertir los datos descodificados de imagen para
cada área de imagen en un valor representativo usando la tabla de
consulta de color;
en el que dicha etapa de dibujar dibuja los datos
descodificados de imagen de acuerdo con el valor representativo para
cada área de imagen.
9. Un método de acuerdo con la reivindicación 8,
en el que:
dicha tabla de consulta de color incluye una
pluralidad de valores representativos e índices, correspondiendo
cada valor representativo a cada índice;
\newpage
dicha etapa de convertir convierte valores de
imagen de los datos descodificados de imagen para cada área de
imagen en un valor representativo usando la tabla de consulta de
color, y genera el índice que representa el valor representativo;
y
dicha etapa de dibujar dibuja los datos
descodificados de imagen de acuerdo con el valor representativo que
corresponde al índice para cada área de imagen, usando dicha tabla
de consulta de color.
10. Un método de acuerdo con la reivindicación 4,
en el que dicha etapa de dibujar incluye detectar si un píxel que es
vecino a un píxel que se está considerando es transparente u
opaco, y dibuja el píxel que se está considerando como un píxel
semi-transparente de acuerdo con el resultado
detectado.
11. Un método de acuerdo con la reivindicación
10, en el que dicha etapa de dibujo dibuja un píxel opaco que es
vecino a un píxel transparente como un píxel
semi-transparente.
12. Un aparato de tratamiento de datos para
restablecer datos de imagen original a partir de datos recibidos de
imagen, cuyos datos recibidos de imagen incluyen datos
descodificados de imagen que codifican los datos originales de
imagen para cada área de imagen y datos adicionales, cada una de
cuyas áreas de imagen se proporciona mediante la división (102) de
los datos originales de imagen, incluyendo cada área de imagen una
pluralidad de píxeles, cada uno de los cuales tiene un valor de
píxel, cuyos datos adicionales especifican si cada valor de píxel de
los datos de imagen es transparente u opaco, cuyo aparato
comprende:
medios (133) para descodificar los datos
codificados de imagen para cada área de imagen;
medios (134) para corregir un valor de píxel de
cada píxel de los datos descodificados de imagen de acuerdo con los
datos adicionales para cada área de imagen; y
medios (15) para dibujar los datos descodificados
de la imagen original;
caracterizado por:
medios (74) para recibir datos de una tabla de
consulta de color, cuya tabla de consulta de color tiene una
pluralidad de colores representativos, generándose dicha tabla de
consulta de color para cada área de imagen; y
medios para convertir los datos descodificados de
imagen para cada área de imagen en un valor representativo usando la
tabla de consulta de color;
cuyos medios de dibujo funcionan para dibujar los
datos descodificados de imagen de acuerdo con el valor
representativo para cada área de imagen.
13. Un aparato de acuerdo con la reivindicación
12, en el que dichos medios de corrección (134) corrigen
obligatoriamente el valor de píxel del píxel como un píxel
transparente, siempre que los datos adicionales correspondientes al
píxel especifican que el píxel es un píxel transparente.
14. Un aparato de acuerdo con la reivindicación
12, en el que:
se generan dichos datos adicionales para cada
área de imagen; y
dichos medios de corrección (134) generan un
valor de píxel para todos los datos de píxel incluidos en el área de
imagen como un píxel transparente, cuando solamente se reciben datos
adicionales que especifican que un valor de píxel contenido en el
área de píxeles es transparente.
15. Un aparato de acuerdo con la reivindicación
12, en el que dichos datos de imagen son datos de textura.
16. Un aparato de acuerdo con la reivindicación
12, en el que:
dicha tabla de consulta de color incluye una
pluralidad de valores representativos e índices, correspondiendo
cada valor representativo a cada índice;
dichos medios de conversión convierten los
valores de imagen de los datos descodificados de imagen para cada
área de imagen en un valor representativo usando la tabla de
consulta de color, y generan el índice que representa el valor
representativo; y
dichos medios de dibujo dibujan los datos
descodificados de imagen de acuerdo con el valor representativo
correspondiente al índice para cada área de imagen, usando la tabla
de consulta de color.
17. Un aparato de acuerdo con la reivindicación
12, en el que dichos medios de dibujo incluyen medios para detectar
si un píxel que es vecino de un píxel que se está considerando es
transparente u opaco, y dibujar el píxel que se está considerando
como un píxel semi-transparente de acuerdo con el
resultado detectado.
18. Un aparato de acuerdo con la reivindicación
17, en el que dichos medios de dibujo dibujan un píxel opaco que es
vecino de un píxel transparente como un píxel
semi-transparente.
19. Un medio de registro que almacena un programa
para realizar las etapas de:
dividir (102) datos de imagen en una pluralidad
de áreas de imagen, cada una de cuyas áreas tiene un tamaño
predeterminado e incluye una pluralidad de píxeles;
codificar (103) los datos de imagen para cada
área de imagen;
generar (104) datos adicionales que especifican
si cada valor de píxel de los datos de imagen es transparente u
opaco;
transmitir (108) los datos codificados de imagen
junto con los datos adicionales; y
generar (106) una tabla de consulta de color para
cada área de imagen, cuya tabla de consulta de color tiene una
pluralidad de colores representativos;
transmitiendo dicha etapa de transmisión
información de dicha tabla de consulta de color.
20. Un medio de registro de acuerdo con la
reivindicación 19, en el que dichos datos de imagen son datos de
textura.
21. Un medio de registro de acuerdo con la
reivindicación 19, en el que dicha etapa de transmisión transmite
solamente dichos datos adicionales, si todos los valores de píxel de
dicha área de imagen representan transparencia.
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP27190996A JP3886184B2 (ja) | 1996-09-20 | 1996-09-20 | 画像データの処理方法および画像処理装置 |
JP27190996 | 1996-09-20 |
Publications (1)
Publication Number | Publication Date |
---|---|
ES2210461T3 true ES2210461T3 (es) | 2004-07-01 |
Family
ID=17506580
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
ES97307333T Expired - Lifetime ES2210461T3 (es) | 1996-09-20 | 1997-09-19 | Metodos y aparatos para transmitir datos de imagenes, tratamiento de imagenes y medios de registro para ello. |
Country Status (9)
Country | Link |
---|---|
US (1) | US6071193A (es) |
EP (2) | EP1283500A3 (es) |
JP (1) | JP3886184B2 (es) |
KR (1) | KR100609614B1 (es) |
CN (1) | CN1149851C (es) |
AU (1) | AU719650B2 (es) |
CA (1) | CA2215634A1 (es) |
DE (1) | DE69727109T2 (es) |
ES (1) | ES2210461T3 (es) |
Families Citing this family (33)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20030008715A1 (en) * | 1995-06-01 | 2003-01-09 | Anton Huber | Program-controlled, money-operated entertainment and gaming apparatus |
JP3524247B2 (ja) * | 1995-10-09 | 2004-05-10 | 任天堂株式会社 | ゲーム機およびそれを用いたゲーム機システム |
JP3886184B2 (ja) * | 1996-09-20 | 2007-02-28 | 株式会社ソニー・コンピュータエンタテインメント | 画像データの処理方法および画像処理装置 |
US6639945B2 (en) * | 1997-03-14 | 2003-10-28 | Microsoft Corporation | Method and apparatus for implementing motion detection in video compression |
US6775417B2 (en) | 1997-10-02 | 2004-08-10 | S3 Graphics Co., Ltd. | Fixed-rate block-based image compression with inferred pixel values |
US6610917B2 (en) | 1998-05-15 | 2003-08-26 | Lester F. Ludwig | Activity indication, external source, and processing loop provisions for driven vibrating-element environments |
JP3898347B2 (ja) * | 1998-06-30 | 2007-03-28 | 富士通株式会社 | 動画データ制御装置、動画データ制御方法、及び動画データ制御プログラムを記録したコンピュータ読みとり可能な記録媒体 |
US6298169B1 (en) * | 1998-10-27 | 2001-10-02 | Microsoft Corporation | Residual vector quantization for texture pattern compression and decompression |
JP2001148833A (ja) | 1999-09-12 | 2001-05-29 | Sony Computer Entertainment Inc | 圧縮画像データを復号処理する方法及び電子装置、並びに補助記録装置 |
US6463481B1 (en) * | 1999-12-02 | 2002-10-08 | Xerox Corporation | Direct memory access control system for a digital scanner |
US6401143B1 (en) * | 1999-12-02 | 2002-06-04 | Xerox Corporation | Loopback direct memory access control system for a digital scanner |
US7102651B1 (en) * | 1999-12-22 | 2006-09-05 | Adobe Systems Incorporated | Hierarchical 2-D color compositing with blending mode and opacity controls at all levels |
US7151546B1 (en) | 1999-12-22 | 2006-12-19 | Adobe Systems Incorporated | Restricting scope of blending modes in 2-D compositing using isolated groups |
US7505046B1 (en) | 2000-05-02 | 2009-03-17 | Adobe Systems Incorporated | Preserving opaque-like rendering in transparent 2D graphics using knockout groups |
JP4530314B2 (ja) * | 2000-09-20 | 2010-08-25 | 株式会社バンダイナムコゲームス | ゲームシステム、情報記憶媒体及び圧縮データの生成方法 |
US6842177B2 (en) * | 2001-12-14 | 2005-01-11 | University Of Washington | Macroblock padding |
US7050067B2 (en) * | 2003-01-13 | 2006-05-23 | Microsoft Corporation | Hardware accelerated anti-aliased primitives using alpha gradients |
JP4704348B2 (ja) * | 2004-09-06 | 2011-06-15 | パナソニック株式会社 | 画像生成装置および画像生成方法 |
GB0504570D0 (en) * | 2005-03-04 | 2005-04-13 | Falanx Microsystems As | Method of and apparatus for encoding data |
JP4968686B2 (ja) * | 2008-01-25 | 2012-07-04 | サミー株式会社 | 画像圧縮装置、画像再生装置、および画像圧縮プログラム |
JP5024831B2 (ja) * | 2008-01-28 | 2012-09-12 | サミー株式会社 | 画像作成装置及びプログラム |
US8345014B2 (en) | 2008-07-12 | 2013-01-01 | Lester F. Ludwig | Control of the operating system on a computing device via finger angle using a high dimensional touchpad (HDTP) touch user interface |
CN101754034B (zh) * | 2008-12-05 | 2012-08-22 | 凌阳多媒体股份有限公司 | 透明属性的离散余弦转换压缩图数据的解压缩系统及方法 |
JP5642457B2 (ja) * | 2010-08-31 | 2014-12-17 | オリンパス株式会社 | 表示制御装置および表示制御方法 |
US8797288B2 (en) * | 2011-03-07 | 2014-08-05 | Lester F. Ludwig | Human user interfaces utilizing interruption of the execution of a first recognized gesture with the execution of a recognized second gesture |
JP5540200B2 (ja) * | 2011-09-28 | 2014-07-02 | 株式会社アクセル | 画像圧縮方法及び画像処理方法 |
CN103974062B (zh) * | 2013-06-24 | 2018-10-26 | 福州瑞芯微电子股份有限公司 | 图像显示装置、图像显示系统和图像显示方法 |
CN105393541B (zh) | 2013-07-19 | 2018-10-12 | 华为技术有限公司 | 使用基于深度的块分割编解码纹理块的方法和装置 |
JP6249734B2 (ja) * | 2013-11-20 | 2017-12-20 | キヤノン株式会社 | 画像処理装置、画像処理方法及びプログラム |
CN104715441A (zh) * | 2015-03-13 | 2015-06-17 | 小米科技有限责任公司 | 图片处理方法及装置 |
US11430141B2 (en) | 2019-11-04 | 2022-08-30 | Facebook Technologies, Llc | Artificial reality system using a multisurface display protocol to communicate surface data |
US11145107B2 (en) | 2019-11-04 | 2021-10-12 | Facebook Technologies, Llc | Artificial reality system using superframes to communicate surface data |
CN112019278B (zh) * | 2020-08-18 | 2022-05-27 | 南京信息工程大学 | 三维mamsk-cap光子接入方法 |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5327509A (en) * | 1992-04-27 | 1994-07-05 | Star Technologies, Inc. | Compressed image system for texture patterns |
JPH0728986A (ja) * | 1993-07-09 | 1995-01-31 | Fuji Xerox Co Ltd | 画像合成処理装置 |
JPH07240845A (ja) * | 1994-02-28 | 1995-09-12 | Fuji Film Micro Device Kk | 画像のデータ圧縮および伸張 |
US5568167A (en) * | 1994-09-23 | 1996-10-22 | C-Cube Microsystems, Inc. | System for providing antialiased video overlays |
JP3334384B2 (ja) * | 1994-12-20 | 2002-10-15 | 松下電器産業株式会社 | 画像予測符号化方法 |
US5892518A (en) * | 1995-07-28 | 1999-04-06 | Matsushita Electric Industrial Co., Ltd. | Image generating apparatus with pixel calculation circuit including texture mapping and motion compensation |
JP3764765B2 (ja) * | 1995-09-06 | 2006-04-12 | インターナショナル・ビジネス・マシーンズ・コーポレーション | ディジタル画像の処理方法及びシステム |
JP3886184B2 (ja) * | 1996-09-20 | 2007-02-28 | 株式会社ソニー・コンピュータエンタテインメント | 画像データの処理方法および画像処理装置 |
-
1996
- 1996-09-20 JP JP27190996A patent/JP3886184B2/ja not_active Expired - Lifetime
-
1997
- 1997-09-12 AU AU37499/97A patent/AU719650B2/en not_active Ceased
- 1997-09-16 CA CA 2215634 patent/CA2215634A1/en not_active Abandoned
- 1997-09-17 US US08/932,226 patent/US6071193A/en not_active Expired - Lifetime
- 1997-09-19 EP EP20020079439 patent/EP1283500A3/en not_active Withdrawn
- 1997-09-19 EP EP19970307333 patent/EP0831424B1/en not_active Expired - Lifetime
- 1997-09-19 CN CNB971141460A patent/CN1149851C/zh not_active Expired - Fee Related
- 1997-09-19 ES ES97307333T patent/ES2210461T3/es not_active Expired - Lifetime
- 1997-09-19 DE DE1997627109 patent/DE69727109T2/de not_active Expired - Lifetime
- 1997-09-20 KR KR1019970047879A patent/KR100609614B1/ko not_active IP Right Cessation
Also Published As
Publication number | Publication date |
---|---|
EP0831424B1 (en) | 2004-01-07 |
DE69727109D1 (de) | 2004-02-12 |
JP3886184B2 (ja) | 2007-02-28 |
EP0831424A3 (en) | 1998-12-02 |
CN1189654A (zh) | 1998-08-05 |
AU3749997A (en) | 1998-03-26 |
KR100609614B1 (ko) | 2006-12-07 |
EP0831424A2 (en) | 1998-03-25 |
DE69727109T2 (de) | 2004-11-18 |
EP1283500A3 (en) | 2004-11-03 |
JPH1098719A (ja) | 1998-04-14 |
CA2215634A1 (en) | 1998-03-20 |
CN1149851C (zh) | 2004-05-12 |
US6071193A (en) | 2000-06-06 |
KR19980024801A (ko) | 1998-07-06 |
AU719650B2 (en) | 2000-05-11 |
EP1283500A2 (en) | 2003-02-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
ES2210461T3 (es) | Metodos y aparatos para transmitir datos de imagenes, tratamiento de imagenes y medios de registro para ello. | |
US6246418B1 (en) | Data processing method and apparatus | |
US6411290B1 (en) | Device, method and distribution medium for drawing images to be displayed on image devices | |
KR100392808B1 (ko) | 화상데이터생성방법과화상데이터처리장치및기록매체 | |
US6380944B2 (en) | Image processing system for processing image data in a plurality of color modes | |
KR100535163B1 (ko) | 정보처리장치와방법및기록매체 | |
US6478680B1 (en) | Game apparatus, method of displaying moving picture, and game program product | |
JP2000132706A (ja) | 記録媒体、画像処理装置および画像処理方法 | |
KR100363504B1 (ko) | 영상처리장치 | |
JPH05207517A (ja) | 多ビットディジタルピクセルデータの圧縮拡張方法及び装置 | |
EP1104199A1 (en) | Image coding/decoding method and recorded medium on which program is recorded | |
US7212215B2 (en) | Apparatus and method for rendering an antialiased image | |
KR100818034B1 (ko) | 데이터 전송 방법, 회로 장치 및 데이터 전송 장치 | |
JPH10124688A (ja) | 画像生成方法、画像生成装置、記録媒体および疑似乱数発生装置 | |
US6970642B1 (en) | Method and electronic device for decoding compressed image data and auxiliary recording device | |
US6396499B1 (en) | Image displaying method, device, and computer-readable storage medium | |
JP3556777B2 (ja) | 画像処理装置 | |
JP3547236B2 (ja) | 画像情報生成装置及び方法、並びに画像情報処理装置及び方法 | |
JP3326128B2 (ja) | ゲーム装置、画像表示方法、及び、プログラムを記録した機械読み取り可能な情報記録媒体 | |
JP4364729B2 (ja) | 画像データ圧縮/伸張方法および画像処理装置 | |
JP2000201350A (ja) | 動画圧縮変換装置、動画復号変換装置、および記録媒体 | |
NZ500121A (en) | Reduction of aliasing in 3D images by multiple small shifts of pixel values. |