Mezcla programable en una unidad de procesamiento gráfico.
Un dispositivo para realizar la mezcla de una imagen de acuerdo con un modo seleccionado de una pluralidad demodos de mezcla gráficos,
comprendiendo el dispositivo:
medios para almacenar un conjunto básico de operaciones para su uso en la realización de la mezcla gráfica;
medios para especificar una secuencia de operaciones seleccionadas del conjunto básico de operaciones parael modo de mezcla gráfica seleccionado, siendo la secuencia de operaciones seleccionada del conjunto básicode operaciones distinta para los diferentes modos de mezcla gráfica;
una unidad de procesamiento para recibir la secuencia de instrucciones para la secuencia de operaciones parael modo de mezcla gráfica seleccionado y ejecutar cada instrucción en la secuencia para realizar la mezclagráfica de acuerdo con el modo de mezcla gráfica seleccionado; y
una memoria acoplada a la unidad de procesamiento.
Tipo: Patente Internacional (Tratado de Cooperación de Patentes). Resumen de patente/invención. Número de Solicitud: PCT/US2007/081952.
Solicitante: QUALCOMM INCORPORATED.
Nacionalidad solicitante: Estados Unidos de América.
Dirección: Attn: International IP Administration 5775 Morehouse Drive San Diego, CA 92121 ESTADOS UNIDOS DE AMERICA.
Inventor/es: YU, CHUN, JIAO,GUOFANG, CHEN,LINGJUN FRANK, DU,YUN.
Fecha de Publicación: .
Clasificación Internacional de Patentes:
- G06T15/50 FISICA. › G06 CALCULO; CONTEO. › G06T TRATAMIENTO O GENERACIÓN DE DATOS DE IMAGEN, EN GENERAL. › G06T 15/00 Interpretación de imagines 3D [Tridimensionales]. › Efectos de luz.
PDF original: ES-2399150_T3.pdf
Fragmento de la descripción:
Mezcla programable en una unidad de procesamiento gráfico Antecedentes
I. Campo La presente divulgación se refiere, en general, a electrónica y, más específicamente, a técnicas para realizar una mezcla en una unidad de procesamiento gráfico.
II. Antecedentes Las unidades de procesamiento gráfico (UPG) son unidades de hardware especializadas usadas para crear imágenes bidimensionales (2-D) y/o tridimensionales (3-D) para diversas aplicaciones tales como videojuegos, gráficos, diseño asistido por ordenador (CAD) , herramientas de simulación y visualización, formación de imágenes, etc. Una UPG puede realizar diversas operaciones gráficas para crear una imagen. Una de estas operaciones gráficas es la mezcla, que se denomina también comúnmente mezcla alfa, composición alfa, etc. La mezcla puede usarse para obtener efectos de transparencia en una imagen. La mezcla puede usarse también para combinar imágenes intermedias que pueden haberse creado por separado en una imagen final. La mezcla implica combinar un valor de color de la fuente con un valor de color del destino de acuerdo con un conjunto de ecuaciones. Las ecuaciones son funciones de los valores de color y valores alfa. Pueden obtenerse diferentes resultados con diferentes ecuaciones y/o diferentes valores alfa.
Los ejemplos de sistemas y procedimientos para mezclar imágenes se desvelan en los documentos EP-A-1050852 y EP-A-1696387. Estos sistemas y procedimientos dependen de funciones fijas con parámetros variables.
Una UPG puede soportar diversos modos de mezcla que pueden conseguir diferentes efectos visuales. Cada modo de mezcla usa un conjunto de ecuaciones diferente para combinar los valores de color y alfa para conseguir un efecto visual particular. Una UPG puede usar hardware especializado para implementar directamente los conjuntos de ecuaciones para todos los modos de mezcla soportados. Sin embargo, tal implementación directa de las ecuaciones de mezcla puede ser compleja y tener un coste prohibitivo.
Por lo tanto, hay una necesidad en la técnica de técnicas para implementar eficazmente ecuaciones de mezcla para los diversos modos de mezcla soportados por una UPG.
Sumario Las técnicas para realizar eficazmente la mezcla se describen en el presente documento. En un aspecto, las ecuaciones de mezcla para los modos de mezcla soportados se implementan eficazmente con un conjunto básico de operaciones. Cada ecuación de mezcla puede descomponerse en una secuencia de operaciones; tomando cada operación del conjunto básico. Pueden implementarse diferentes ecuaciones de mezcla con diferentes secuencias de operaciones. El conjunto básico de operaciones simplifica la implementación del hardware y proporciona flexibilidad para soportar diversas ecuaciones/modos de mezcla, así como otras funciones y elementos gráficos.
En un diseño, se proporciona un dispositivo como se define en la reivindicación adjunta 1.
Diversos aspectos y características de la divulgación se describen con mayor detalle a continuación.
Breve descripción de los dibujos Las Figuras 1A-1E ilustran una mezcla para cinco modos de mezcla Porter-Duff.
La Figura 2 muestra un diseño de una instrucción de mezcla.
La Figura 3 muestra un diagrama de bloques de un sistema gráfico.
La Figura 4 muestra un diagrama de bloques de una unidad de procesamiento de mezcla.
La Figura 5 muestra un procedimiento para realizar la mezcla.
La Figura 6 muestra un diagrama de bloques de un dispositivo inalámbrico.
Descripción detallada Una unidad de procesamiento gráfico (UPG) puede soportar diversos modos de mezcla para conseguir diferentes efectos visuales. Por ejemplo, una UPG puede soportar los modos de mezcla definidos en un documento "OpenVG Specification, Versión 1.0", 28 de julio de 2005, que es de acceso público y en lo sucesivo en el presente documento se denominará OpenVG. El OpenVG es una nueva norma para los gráficos vectoriales 2-D y es adecuada para dispositivos portátiles y móviles, por ejemplo, teléfonos móviles.
Un modo de mezcla está asociado con lo siguiente:
1. una ecuación/función de mezcla alfa denotada a (asrc adst) , y
2. una ecuación/función de mezcla de color denotada (csrc, Cdst, asrc, adst) ,
donde aSTC es un valor alfa de la fuente, adst es un valor alfa del destino, csrc es un valor del color de la fuente, y cdst 5 es un valor del color del destino. Un valor de color puede ser rojo (R) , verde (G) , azul (B) , etc. Las ecuaciones de mezcla alfa y de color para diversos modos de mezcla se dan a continuación.
La mezcla combina una tupla de color de fuente y alfa denotada (Rsrc, Gsrc, Bsrc, asrc) con una tupla de color de destino y alfa denotada (Rdst, Gdst, Bdst, adst) y proporciona una tupla mezclada compuesta por c (Rsrc, Rdst, asrc, adst) , c (Gsrc, Gdst, asrc, adst) , c (Bsrc, Bdst, asrc, adst) , y a (asrc, adst) . La combinación se realiza de acuerdo con las ecuaciones de mezcla alfa y de color. En particular, los valores de color de la fuente y el destino para cada componente del color se combinan de acuerdo con la ecuación de mezcla de color, y los valores alfa de la fuente y el destino se combinan de acuerdo con la ecuación de mezcla alfa. La tupla mezclada típicamente reemplaza la tupla de destino.
OpenVG soporta cinco modos de mezcla Porter-Duff que usan las siguientes ecuaciones de mezcla alfa y de color:
donde Fsrc y Fdst son los factores de mezcla de la fuente y el destino, respectivamente, y son diferentes para los diferentes modos de mezcla.
Un valor de color c puede multiplicarse con un valor alfa a para obtener un valor de color c' pre-multiplicado, de la siguiente manera:
La ecuación de mezcla de color para valores de color pre-multiplicado puede darse como:
La ecuación (4) es equivalente a la ecuación (2) . La ecuación (4) puede usarse para valores de color premultiplicados c'src y c'dst, mientras que la ecuación (2) puede usarse para valores de color no pre-multiplicados csrc y cdst.
La Tabla 1 da los factores de mezcla Fsrc y Fdst para los cinco modos de mezcla Porter-Duff en OpenVG.
Tabla 1
Modo de Mezcla Fsrc Fdst
Src 1 0
Src sobre Dst 1 1 -asrc
Dst sobre Src 1 -adst 1
Src en Dst adst 0
Dst en Src 0 asrc
Las Figuras 1A a 1E ilustran la mezcla para los cinco modos de mezcla Porter-Duff en OpenVG. En estos ejemplos, la fuente (Src) está representada por un cuadrado con rayado cruzado, y el destino (Dst) está representado por un 30 círculo con relleno sólido. La Figura 1A muestra el modo de mezcla "Src". En este modo de mezcla, la fuente (cuadrado) reemplaza al fondo, y el destino (círculo) es completamente transparente. La Figura 1B muestra el modo de mezcla "Src sobre Dst". En este modo de mezcla, la fuente reemplaza al destino y al fondo, y el destino reemplaza al fondo. La Figura 1C muestra el modo de mezcla "Dst sobre Src". En este modo de mezcla, el destino reemplaza a la fuente y al fondo, y la fuente reemplaza al fondo. La Figura 1D muestra el modo de mezcla "Src en Dst". En este modo de mezcla, la porción de la fuente que está dentro del destino reemplaza el fondo. La Figura 1E muestra el modo de mezcla "Dst en Src". En este modo de mezcla, la porción del destino que está dentro de la fuente reemplaza al fondo.
OpenVG soporta cuatro modos de mezcla adicionales. La Tabla 2 enumera los cuatro modos de mezcla adicionales y da la ecuación de mezcla de color para cada modo. Cada modo de mezcla adicional combina valores de color y proporciona el valor de color pre-multiplicado mezclado denotado c' (csrc, cdst, asrc, adst) .
Tabla 2
Modo de Mezcla Ecuación de Mezcla de Color c' (csrc, Cdst, asrc, adst)
VG_BLEND_MULTIPLY asrc*csrc (1 -adst) + adst*cdst* (1 -asrc) + asrc*csrc *adst*cdst
VG BLEND SCREEN asrc*csrc + adst*cdst asrc*csrc *adst*cdst
VG_BLEND_DARK
VG_BLEND_LIGHTEN
OpenVG soporta adicionalmente un modo de mezcla aditivo que puede usarse cuando la fuente y el destino no están superpuestos. Las ecuaciones de mezcla alfa y de color para el modo de mezcla aditivo se dan como:
Otros modos de mezcla pueden ser soportados también para gráficos 2-D. En general, una UPG puede soportar 15 cualquier conjunto de modos de mezcla para cualquier conjunto de ecuaciones de mezcla para gráficos 2-D.
Una UPG puede soportar también diversos modos de mezcla para gráficos 3-D, por ejemplo, los modos de mezcla definidos en Open Graphics Librar y (OpenGL) , Direct3D, etc. OpenGL se describe en un documento titulado "The OpenGL® Graphics System: A Specification", Versión 2.0, fecha 22 de octubre de 2004, que es de acceso público. OpenGL soporta modos de mezcla... [Seguir leyendo]
Reivindicaciones:
1. Un dispositivo para realizar la mezcla de una imagen de acuerdo con un modo seleccionado de una pluralidad de modos de mezcla gráficos, comprendiendo el dispositivo:
medios para almacenar un conjunto básico de operaciones para su uso en la realización de la mezcla gráfica; medios para especificar una secuencia de operaciones seleccionadas del conjunto básico de operaciones para el modo de mezcla gráfica seleccionado, siendo la secuencia de operaciones seleccionada del conjunto básico de operaciones distinta para los diferentes modos de mezcla gráfica; una unidad de procesamiento para recibir la secuencia de instrucciones para la secuencia de operaciones para el modo de mezcla gráfica seleccionado y ejecutar cada instrucción en la secuencia para realizar la mezcla gráfica de acuerdo con el modo de mezcla gráfica seleccionado; y una memoria acoplada a la unidad de procesamiento.
2. El dispositivo de la reivindicación 1, en el que la memoria almacena operandos y resultados para la unidad de procesamiento.
3. El dispositivo de la reivindicación 1, en el que la unidad de procesamiento comprende una unidad de ejecución de mezcla gráfica para ejecutar la secuencia de instrucciones para el modo de mezcla gráfica seleccionado.
4. El dispositivo de la reivindicación 3, en el que la unidad de procesamiento comprende adicionalmente una unidad de pre-formateo para realizar la corrección gamma y el escalado alfa de los valores de color entrantes, y una unidad de post-formateo para realizar la compresión gamma y el escalado alfa de los valores de color salientes.
5. El dispositivo de la reivindicación 4, en el que la unidad de procesamiento comprende adicionalmente uno de:
una unidad de computación que comprende al menos uno de una unidad lógica aritmética ULA, una unidad recíproca, una tabla de consulta gamma, y una tabla de consulta degamma, estando compartida la unidad de computación por la unidad de ejecución de mezcla, la unidad de pre-formateo, y la unidad de post-formateo; y un registro de control para almacenar una indicación de formato de los datos que se están procesando, y en el que la unidad de pre-formateo y la unidad de post-formateo realizan la corrección gamma, compresión gamma, y escalado alfa de acuerdo con la indicación de formato del registro de control.
6. El dispositivo de la reivindicación 1, en el que la unidad de procesamiento comprende una unidad lógica aritmética ULA para realizar al menos una operación en el conjunto de operaciones, realizando la ULA un producto escalar de dos operandos con dos factores de mezcla gráfica para una operación en el conjunto de operaciones.
7. El dispositivo de la reivindicación 6, en el que la memoria comprende una pluralidad de registros, y en el que los dos operandos para el producto escalar son dos de la pluralidad de registros, seleccionándose los dos factores de mezcla gráfica para el producto escalar, preferentemente, de dos de la pluralidad de registros.
8. El dispositivo de la reivindicación 6, en el que cada uno de los dos factores de mezcla gráfica está seleccionado entre una pluralidad de factores de mezcla gráfica.
9. El dispositivo de la reivindicación 1, en el que la unidad de procesamiento comprende uno de:
una unidad recíproca para recibir un operando y proporcionar una recíproca del operando; una tabla de consulta gamma para recibir valores de color lineales y proporcionar valores de color comprimidos; y, una tabla de consulta degamma para recibir valores de color comprimidos y proporcionar valores de color lineales.
10. El dispositivo de la reivindicación 1, en el que la memoria comprende:
registros para almacenar operandos para la secuencia de instrucciones, y en el que cada instrucción opera sobre al menos un operando almacenado en al menos uno de los registros; o, un registro de fuente para almacenar valores de color de la fuente y alfa y resultados intermedios, y un registro de destino para almacenar valores de color del destino y alfa y resultados intermedios.
11. Un circuito integrado que comprende el dispositivo de la reivindicación 1.
12. El dispositivo de la reivindicación 1, siendo el dispositivo un dispositivo inalámbrico, y siendo la unidad de procesamiento una unidad de procesamiento gráfico.
13. Un procedimiento para realizar la mezcla de una imagen de acuerdo con uno seleccionado de una pluralidad de modos de mezcla gráfica, comprendiendo el procedimiento:
almacenar un conjunto básico de operaciones para su uso en la realización de la mezcla gráfica; generar una secuencia de operaciones seleccionadas entre el conjunto básico de operaciones para el modo de
mezcla gráfica seleccionado, siendo la secuencia de las operaciones seleccionadas entre el conjunto básico de operaciones diferente para los diferentes modos de mezcla gráfica; y ejecutar la secuencia de las operaciones seleccionadas para el modo de mezcla gráfica seleccionado para realizar la mezcla gráfica de acuerdo con el modo de mezcla gráfica seleccionado.
14. El procedimiento de la reivindicación 13, en el que ejecutar la secuencia de instrucciones comprende uno de:
ejecutar una instrucción para un producto escalar de dos operandos con dos factores de mezcla gráfica; ejecutar una instrucción para una recíproca de un operando; ejecutar una instrucción para convertir color lineal en color comprimido; y ejecutar una instrucción para convertir color comprimido en color lineal.
15. Un programa informático que incluye instrucciones dispuestas para implementar, cuando se ejecuta en un ordenador, el procedimiento de acuerdo con una cualquiera de las reivindicaciones 13 o 14.
Patentes similares o relacionadas:
Sombreado de representaciones CG de materiales, del 18 de Marzo de 2020, de Chaos Software Ltd: Un aparato para escanear muestras de material, el aparato comprendiendo: una fuente de luz colimada que tiene una lente para emitir luz colimada; un segundo […]
Construcción de entornos de realidad aumentada con iluminación precalculada, del 31 de Mayo de 2019, de Microsoft Technology Licensing, LLC: En un dispositivo de pantalla, un procedimiento para mostrar una imagen de realidad aumentada que comprende efectos de iluminación, comprendiendo el procedimiento […]
Método para configurar un accesorio de iluminación en un entorno virtual, del 9 de Enero de 2019, de Signify Holding B.V: Un método implementado por ordenador para permitir la configuración de un accesorio de iluminación a través de la manipulación de un efecto de iluminación en un entorno […]
PROCEDIMIENTO DE CONFECCIÓN DE PROYECTOS Y MEDIOS MATERIALES PARA LA CONFECCIÓN DE DICHO PROYECTO, del 3 de Octubre de 2013, de GRUPO T DIFFUSION, S.A.: La invención se refiere a un procedimiento para crear mediante unos medios materiales adecuados, proyectos para la iluminación de espacios o estancias concretas, abarcando […]
Iluminación acromática en un sistema de gráficos y método, del 11 de Junio de 2013, de NINTENDO CO., LTD.: Un método de generación de imágenes gráficas en un sistema de generación de gráficos del tipo que define al menos una función de iluminación […]
PROCESO PARA GENERAR UNA IMAGEN INFORMATIZADA DE UN OBJETO TRIDIMENSIONAL DOTADO DE UN REVESTIMIENTO CON ACABADO ESPECIAL., del 16 de Octubre de 2006, de E.I. DU PONT DE NEMOURS AND COMPANY: Un proceso para la generación de una imagen informatizada de un objeto tridimensional dotado de un revestimiento con acabado especial, que conste, en el orden indicado, […]
SISTEMA GRAFICO POR ORDENADOR., del 16 de Junio de 2006, de MENTAL IMAGES GMBH & CO. KG.: Se describe un sistema gráfico informatizado en el cual un nuevo tipo de entidad, referenciado como "fenómeno", puede ser creado, instanciado y utilizado para formar una […]
MEJORAS INTRODUCIDAS EN LA PATENTE DE INVENCION N P-200602419, POR SISTEMA DE SIMULACION VIRTUAL DE ESPACIOS, DECORADOS Y SIMILARES, del 4 de Marzo de 2010, de INSCA INTERNACIONAL S.L.: Mejoras introducidas en la patente de invención nº P-200602419, por: sistema de simulación virtual de espacios, decorados y similares. Partimos de un sistema de visualización […]