MX2008015960A - Proporcion de representaciones multiples y de origen de una imagen. - Google Patents

Proporcion de representaciones multiples y de origen de una imagen.

Info

Publication number
MX2008015960A
MX2008015960A MX2008015960A MX2008015960A MX2008015960A MX 2008015960 A MX2008015960 A MX 2008015960A MX 2008015960 A MX2008015960 A MX 2008015960A MX 2008015960 A MX2008015960 A MX 2008015960A MX 2008015960 A MX2008015960 A MX 2008015960A
Authority
MX
Mexico
Prior art keywords
image
transformations
processing command
image processing
transformation
Prior art date
Application number
MX2008015960A
Other languages
English (en)
Inventor
Robert A Wlodarczyk
Rajat Goel
Margaret L Goodwin
Radu C Margarint
Thomas W Olsen
Wei-Chung Jones Wang
Original Assignee
Microsoft Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Microsoft Corp filed Critical Microsoft Corp
Publication of MX2008015960A publication Critical patent/MX2008015960A/es

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T3/00Geometric image transformations in the plane of the image
    • G06T3/02Affine transformations
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T3/00Geometric image transformations in the plane of the image
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T3/00Geometric image transformations in the plane of the image
    • G06T3/40Scaling of whole images or parts thereof, e.g. expanding or contracting

Landscapes

  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Image Processing (AREA)
  • Editing Of Facsimile Originals (AREA)

Abstract

Se describen en varias modalidades que se relacionan a proporcionar múltiples representaciones y de origen de una imagen. De acuerdo con una modalidad ilustrativa, múltiples realizaciones de una imagen pueden generarse y proporcionarse, en lugar de sólo una realización individual, por ejemplo. También, en otra modalidad, la generación y salida de múltiples realizaciones pueden utilizar uno o más objetos de origen para realizar originalmente las transformaciones o procedimiento de imagen para proporcionar las imágenes o realizaciones.

Description

PROPORCION DE REPRESENTACIONES MULTIPLES Y DE ORIGEN DE UNA IMAGEN ANTECEDENTES Las imágenes pueden proporcionarse en una variedad de formatos y resoluciones. Algunas aplicaciones de procesamiento de imagen permiten una imagen sea procesada, o se convierta a un formato diferente, etc. Este procesamiento típicamente puede realizarse a través de una o más transformaciones realizadas en la imagen. En algunos casos, tal procesamiento de imagen puede generar una imagen deseada, pero puede evitar procesamiento adicional sin pérdida de resolución ya que la imagen original típicamente puede descartarse en el procedimiento. También, tales técnicas de procesamiento de imagen típicamente están muy limitadas.
BREVE DESCRIPCION DE LA INVENCION Se describen varias modalidades que se refieren a proporcionar múltiples representaciones y de origen de una imagen. De acuerdo con la modalidad ilustrativa, múltiples realizaciones de una imagen pueden generarse y proporcionarse, en lugar de solamente una realización individual, por ejemplo. También, la generación y salida de realizaciones múltiples pueden utilizar objetos de origen para realizar originalmente las transformaciones o procesamiento de imagen para proporcionar las imágenes o realizaciones. De acuerdo con una modalidad ilustrativa, se proporciona un método. El método puede incluir recibir una imagen, recibir un comando de procesamiento de imagen para la imagen recibida, y realizar originalmente una pluralidad de transformaciones en la imagen basándose en el comando de procesamiento de imagen para proporcionar una o más realizaciones de la imagen. De acuerdo con otra modalidad ilustrativa, se proporciona un método. El método puede incluir recibir una imagen, recibir un comando de procesamiento de imagen para la imagen, y realizar una pluralidad de transformaciones en la imagen basándose en el comando de procesamiento de imagen para proporcionar una pluralidad de realizaciones de la imagen. Cada una de la pluralidad de realizaciones puede incluir al menos una transformación realizada originalmente en la imagen. De acuerdo incluso con otra modalidad ilustrativa, se proporciona un método. En método puede incluir recibir una imagen, recibir un comando de procesamiento de imagen, y determinar, basándose en el comando de procesamiento de imagen, una o más transformaciones y una distribución para las transformaciones para procesar la imagen y para proporcionar múltiples realizaciones de la imagen de acuerdo con el comando de procesamiento de imagen. Esta breve descripción se proporciona para introducir una selección de conceptos en una forma simplificada que además se describe más adelante en la descripción detallada. Esta breve descripción no pretende identificar características clave o características esenciales del tema reclamado, ni pretende utilizarse como un auxiliar al determinar el alcance del tema reclamado.
BREVE DESCRIPCION DE LOS DIBUJOS La Figura 1 es un diagrama de bloques de un sistema de cómputo de acuerdo con una modalidad ilustrativa. La Figura 2 es un diagrama de bloques de un sistema de acuerdo con otra modalidad ilustrativa. La Figura 3A es un diagrama de un sistema 300A en donde se procesa una imagen para proporcionar múltiples realizaciones de acuerdo con una modalidad ilustrativa. La Figura 3B es un diagrama de bloques de un sistema 300B en donde se procesa una imagen para proporcionar múltiples realizaciones de acuerdo con otra modalidad ilustrativa. La Figura 4 es un cuadro de flujo que ilustra un procedimiento para realizar una pluralidad de transformaciones en una imagen para producir una o más realizaciones, de acuerdo con una modalidad' ilustrativa. La Figura 5 es un cuadro de flujo que ilustra un procedimiento para realizar una pluralidad de transformaciones para producir una o más realizaciones de acuerdo con otra modalidad ilustrativa. La Figura 6 es un cuadro de flujo que ilustra un procedimiento para realizar una o más transformaciones en una imagen para producir una o más realizaciones de acuerdo incluso con otra modalidad ilustrativa.
DESCRIPCION DETALLADA Haciendo referencia a las Figuras en donde números similares indican elementos similares, la Figura 1 es un diagrama de bloques de un sistema de cómputo 100 de acuerdo con una modalidad ilustrativa. Varias modalidades pueden practicarse o implementarse dentro del sistema de cómputo 100 u otro sistema de cómputo, de acuerdo con una modalidad ilustrativa. El sistema de cómputo 100 puede incluir, por ejemplo, una computadora portátil, una computadora de escritorio, una computadora personal (PC), un servidor, un dispositivo de red (por ejemplo, conmutador, enrutador), teléfono celular, asistente digital personal (PDA), dispositivo de juegos, dispositivo de comunicaciones portátiles, u otro dispositivo de cómputo. Estos simplemente pueden ser algunos ejemplos, y las varias modalidades no se limitan a estos. El sistema 100 puede incluir una unidad de procesamiento central ("CPU") 102, una memoria de sistema 104 que incluye una memoria de acceso aleatorio 106 ("RAM") y una memoria de sólo lectura 108 ("ROM"). La CPU 102 puede interpretar instrucciones y procesar datos en aplicaciones de computadora. Por ejemplo, la CPU 102 puede ser un microprocesador e incluir un número de circuitos integrados, y puede ejecutar software o instrucciones y proporcionar control total al sistema de cómputo 100. La RAM 106 puede permitir que los datos almacenados en la RAM se accedan en cualquier orden, el sistema 100 también por ejemplo puede escribir a y leer de la RAM 106. Por ejemplo, un archivo de datos puede almacenarse en la RAM 106 en un tiempo X, y en un tiempo Y el archivo de datos puede leerse de la RAM 106. La ROM 108 puede contener datos o sistemas que pueden leerse de la ROM 108 por el sistema 100 (como opuesto a la RAM 106 y generalmente puede escribirse a leerse por el sistema 100). Por ejemplo la ROM 108 puede comprender un código de software del sistema de entrada/salida básico (BIOS) para correr por el sistema 100 cuando el sistema 100 primero se enciende. La ROM 108 primero puede ser por ejemplo acoplada a un reloj 110. El reloj 110, por ejemplo, puede proporcionar el tiempo al sistema 100 a través de la ROM 108. El sistema 100 también puede incluir un controlador de entrada/salida 128 y un dispositivo de presentación 130. El controlador de entrada/salida (l/O) 128 puede conectarse a uno o más dispositivos de l/O, tal como un dispositivo de presentación 130. El controlador de entrada/salida 128, por ejemplo, puede proporcionar salida al dispositivo de presentación 130. El dispositivo de presentación 130 puede ser un dispositivo configurado para recibir datos del controlador de entrada/salida 128 y proporcionar o presentar los datos a un usuario. Aunque no se muestra, el controlador de entrada/salida 128 puede acoplarse a una variedad y dispositivos de entrada, tal como un teclado, ratón, palanca de mandos, o cualquier otro dispositivo de entrada configurado para proporcionar entrada al sistema 100. El sistema 100 también puede incluir un dispositivo de almacenamiento de datos 114 para almacenar datos, instrucciones u otra información. El dispositivo de almacenamiento de datos 114 puede ser, por ejemplo, una unidad de disco duro que almacena datos en una superficie magnética, un CD-ROM, o cualquier otro dispositivo de almacenamiento de medios disponibles accesible por el sistema 100. A manera de ejemplo, y no de limitación, el dispositivo de almacenamiento de datos 114 puede incluir cualquier medio legible por computadora. El medio legible por computadora puede, por ejemplo, incluir medios de almacenamiento de computadora y medios de comunicación. Los medios de almacenamiento por computadora pueden incluir medios implementados en cualquier método o tecnología para almacenamiento de información tal como instrucciones legibles por computadora, estructuras de datos, módulos de programa u otros datos. Los medios de almacenamiento por computadora incluyen, pero no se limitan a, RAM, ROM, EPROM, EEPROM, memoria flash u otra tecnología de memoria de estado sólido, CD-ROM, DVD, u otro almacenamiento óptico, cassettes magnéticos, cinta magnética, almacenamiento de disco magnético u otros dispositivos de almacenamiento magnético, o cualquier otro medio que puede utilizarse para almacenar la información deseada y que puede accederse por ia computadora. Uno o más programas o bloques de software pueden almacenarse en el dispositivo de almacenamiento de datos 114, tal como una aplicación 116, un procesador de imagen 118, un sistema operativo 120, y una pila 122. La aplicación 116 puede ser un navegador web, procesador de palabras, una aplicación multimedia, u otra aplicación. Por ejemplo, la aplicación 116 puede, por ejemplo, ser una aplicación de imagen configurada para enviar imágenes y comandos de procesamiento de imagen (o procedimientos) y recibir imágenes procesadas que incluyen una o más realizaciones. La aplicación 116 puede enviar y recibir imágenes, procesar comandos, imágenes procesadas, y/o realizaciones basándose en una entrada de usuario, por ejemplo. Por ejemplo, la aplicación 116 puede, recibir una imagen de una cámara digital. Entonces por ejemplo, la aplicación 116 puede enviar la imagen al procesador de imagen 118 para realizar una transformación, tal como una transformación de giro/rotación, después de la cual el procesador de imagen 118 puede regresar a la aplicación 116 una imagen procesada 214 que incluye una realización 216. El procesador de imagen 118 puede ser un programa que realiza procesamiento de imagen. Por ejemplo, el procesador de imagen 118 puede ser una aplicación configurada para recibir una imagen y un comando de procesamiento de imagen y puede realizar una o más transformaciones en la imagen recibida basándose en el comando para generar una o más realizaciones de la imagen. Por ejemplo, el procesador de imagen 118 puede recibir una imagen y un comando para girar la imagen. El procesador de imagen 118 entonces puede realizar la rotación y sacar la imagen procesada, que incluye la realización de imagen girada. El sistema operativo 120 puede ser un programa de software que maneja el hardware y software de sistema 100, y puede ser cualquier tipo de sistema operativo. Por ejemplo, el sistema operativo puede ser Microsoft Windows, Linux, etc. La pila 122 puede ser una estructura de datos temporal utilizada para almacenar datos del dispositivo de almacenamiento de datos 114. Por ejemplo, la pila puede almacenar la imagen y comandos de procesamiento correspondientes de la aplicación 116 al procesador de imagen 118, el procesador de imagen 118 entonces puede acceder a los artículos almacenados en la pila 122. De acuerdo con una modalidad ilustrativa el sistema 100 puede operar en un ambiente en red que utiliza conexiones lógicas para comunicarse con computadoras remotas a través de una red, tal como una red de TCP/IP 124, como un ejemplo. Por ejemplo, la red de TCP/IP 124 puede ser Internet, intranet corporativa, una red de área local, una red inalámbrica, una red de área ancha, y/o cualquier otra red. El sistema 100 puede comunicar a la red de TCP/IP 124 a través de una unidad de inferíase de red 126. La unidad de inferíase de red 126 puede ser un dispositivo y/o programa de software configurado para permitir que el sistema 100 se comunique con la red de TCP/IP 124. Por ejemplo, la unidad de inferíase de red 126 puede ser una tarjeta de red, controlador de interfase de red (NIC), un módem, o cualquier otro dispositivo de habilitación de comunicación. Un conductor común de sistema 112 puede acoplarse a la CPU 102, la memoria de sistema 104, dispositivo de almacenamiento de datos 114, unidad de interfase de red 126, y controlador de entrada/salida 128. El conductor común de sistema 112 puede permitir transferencia de datos entre dos o más componentes de sistema. Por ejemplo el conductor común de sistema 112 puede permitir transferencia de datos hacia y desde la memoria de sistema 104 y CPU 102. El conductor común de sistema 112 también, por ejemplo, puede acoplar otras partes del sistema 100 juntas, tal como el dispositivo de almacenamiento de datos 114 al controlador de entrada/salida 128. La Figura 2 es un diagrama de bloques de un sistema 200 de acuerdo con otra modalidad ilustrativa. El sistema 200 puede incluir una aplicación 116 y un procesador de imagen 118, como se describió anteriormente. Por ejemplo, la aplicación 116 puede configurarse para proporcionar una imagen 202 a través de la línea 204 y un comando de procedimiento de imagen (o procesamiento de imagen) 206 a través de la línea 208 al procesador de imagen 118. La imagen 202 y comando de procedimiento 206 pueden proporcionarse, por ejemplo, por aplicación 116 que pasa un comando y uno o más parámetros al procesador de imagen 118. El procesador de imagen 118 puede ser un programa de 1 o software y/o dispositivo configurado para recibir la imagen 202 y el comando de procedimiento 206. El procesador de imagen 118 puede realizar el comando de procedimiento 206 en la imagen 206, por ejemplo, al iniciar un objeto de descod if icador 220 y uno o más objetos de transformación, tal como objeto de transformación 222, 224, 226, 228, y proporcionar una o más imagen(es) procesada 214 que incluye una o más realizaciones (216, 218) de la imagen. De esta forma, el procesador de imagen 118 puede procesar la imagen 202 basándose en el comando de procedimiento 206 para proporcionar una o más realizaciones de la imagen, tal como realizaciones 216, 218, como ejemplos. La imagen 202 puede estar en un archivo de un tipo de archivo particular 203. El tipo de archivo 203 puede ser un formato de archivo o una forma de comprimir datos de imagen y puede ser cualquier tipo de archivo aceptable, tal como un tipo de archivo de gráficos de rectángulo, un tipo de archivo digital, u otro tipo de archivo. Por ejemplo, el tipo de archivo 203 puede ser un tipo de archivo JPEG, Formato intercambiable de gráficos (GIF), Gráficos de red portátiles (PNG), Incompletos (o no codificados), o cualquier otro tipo de archivo. La imagen 202 puede estar en un archivo que incluye un tipo de archivo aceptable 203. La imagen 202 también puede incluir una o múltiples imágenes. Cada imagen también puede incluir un formato de imagen (o pixel) 205. Por ejemplo, el formato de imagen 205 puede estar de un RGB, CMYK, YCbCr, o cualquier otro espacio de color o formato de pixel.
El comando de procedimiento 206 puede ser un comando de procedimiento individual 206 ó comandos de procedimiento múltiples. El comando de procedimiento 206 puede incluir, por ejemplo, un valor de transformaciones 210, un valor de realizaciones 212, o ambos. El comando procedimiento 206 puede asociarse con la imagen 202. El valor de transformaciones 210 por incluir, por ejemplo, indicar que transformación(es) realizada en la imagen, y también puede indicar un orden especificado de aplicación de la transformación(es). Una transformación puede ser cualquier modificación o procesamiento potencial que puede realizarse en la imagen 202, que incluye pero no se limita a, por ejemplo, una transformación de escalar, una transformación de convertidor de formato, y/o una transformación de giro/rotación. Transformaciones adicionales y/o diferentes también pueden utilizarse. El valor de realizaciones 212 puede identificar el número de realizaciones, y/o puede identificar las realizaciones y/o imagen(es) procesadas para sacarse por el procesador de imagen 118. Las realizaciones 216, 218 cada una puede ser una versión de la imagen 202 antes o después de la aplicación de una o más transformaciones a la imagen 202. El valor de realizaciones 212 puede, por ejemplo, también indicar que transformaciones realizar para que realizaciones 216, 218, y también puede identificar el orden en el cual realizar las transformaciones. La imagen(es) procesada 214 también puede ser una o más imágenes sacadas del procesador de imagen 118, antes o después de la aplicación de una o más transformaciones a la imagen 202. Cada imagen(es) procesada 214 puede incluir una o más realizaciones 216, 218, o puede denominarse como una realización. Por ejemplo, la aplicación 116 puede enviar una imagen 202 con un formato 205 de YCbCr al procesador de imagen 118. La aplicación 116 también puede enviar un comando de procedimiento 206 al procesador de imagen 118. El comando de procedimiento 206 puede incluir por ejemplo, un valor de transformaciones 210 y un valor de realizaciones 212, aunque es simplemente un ejemplo, y las modalidades no se limitan a eso. El valor de transformaciones 212 puede identificar una transformación de escalar, una transformación de convertidor de formato y una transformación de giro/rotación, y/u otra transformación, para revisarse en la imagen. El valor de realizaciones 212, por ejemplo, puede indicar la realización 216 que debe generarse al escalar la imagen recibida 202 (por ejemplo, por 30%), y realización 218 debe generarse al convertir formato (por ejemplo, YCbCr a RGB) y entonces girar la imagen recibida 202 (por ejemplo, 90 grados), como un ejemplo. Estos son simplemente algunos ejemplos, y las varias modalidades no se limitan a esto. El procesador de imagen 118, entonces por ejemplo, puede realizar las transformaciones especificadas al iniciar el objeto de escalador 222, el objeto de convertidor de formato 224 y/o el objeto de giro/rotación 226 para procesar la imagen y sacar la imagen(es) procesada 214 que incluye las dos realizaciones 216, 218. El procesador de imagen 118 puede incluir un objeto de descodificador 220 y un número de objetos de transformación, tal como, por ejemplo, un objeto de escalador 222, un objeto de convertidor de formato 224 y/o un objeto de giro/rotación 226. El objeto de descodif icador 220 puede codificar y/o descomprimir la imagen 202 de su tipo de archivo actual 203 para que el procesador de imagen 118 ó uno o más objetos de transformación puedan realizar transformaciones en la imagen 202, por ejemplo. El objeto de escalador 222 puede configurarse para realizar una transformación de escalador en la imagen 202. El objeto de escalador 222 (o transformación de escalador) puede escalar una imagen, que puede incluir aumentar o disminuir el tamaño de una imagen 202, ya sea en todo o en parte. La escalada realizada por el objeto de escalador 222 puede realizarse sin cambiar la resolución de la imagen, o puede incluir cambiar o alterar la resolución de la imagen. Por ejemplo el valor de transformaciones 210 puede indicar realizar transformación de escalador para aumentar el tamaño de la imagen 202 por 50%. En respuesta a tal comando de procedimiento de imagen, el procesador de imagen 118 y/u objetos de escalador 222 típicamente pueden escalar la imagen al 50%, para generar la realización escalada de 50%. El objeto de convertidor de formato 224 puede cambiar el formato 205 de la imagen recibida 202, o convertir el formato 205 de la imagen 202 a un formato diferente. Por ejemplo, la imagen 202 puede proporcionarse al procesador de imagen 118 con un formato de RGB, y el valor de transformaciones 210 puede identificar una transformación de convertidor de formato para convertir la imagen en un CMYK. En respuesta a tal comando de procedimiento, el procesador de imagen 118 y/o objeto de convertidor de formato 224 de procesador de imagen 118 puede convertir el formato 205 de la imagen recibida 202 de RGB a CMYK, por ejemplo. El objeto de giro/rotación 226 puede girar o rotar la imagen 202. El objeto de giro/rotación 226 (o transformación) puede girar la imagen 202 de arriba hacia abajo o derecha a izquierda o puede girar la imagen 202 un número de grados. Por ejemplo el valor de transformación 210 puede identificar una transformación de giro/rotación para girar la imagen 202 de arriba a abajo o para girar la imagen 30 grados en contra del sentido de las manecillas del reloj. En respuesta a tal comando de procedimiento de imagen, el procesador de imagen 118 y/o el objeto de giro/rotación 226 entonces puede girar o rotar la imagen 202 como se solicitó. Como se describió anteriormente, el objeto de descodif icador 220 puede descodificar una imagen recibida. Además de configurarse para descodificar una imagen 202, el objeto de descodif icador 220 también puede incluir un objeto de transformación de origen 228. El objeto de transformación de origen 228 puede incluir cualquier objeto de transformación (u objeto de procesamiento de imagen) que puede realizarse originalmente, tal como un objeto de escalador de origen, un objeto de convertidor de formato de origen, y/o un objeto de giro/rotación de origen, como ejemplos. El objeto de transformación de origen 228 puede realizar cualquier transformación o combinación de transformaciones originalmente dentro del objeto de descodificador 220, si el objeto de transformación de origen 228 incluye la capacidad de transformación. En una modalidad ilustrativa, el objeto de transformación de origen 228 del objeto de descodificador 220 puede realizar una o más transformaciones de origen en la imagen al mismo tiempo o aproximadamente al mismo tiempo que el objeto de descodificador 220 descodifica la imagen recibida 202. Al realizar la transformación(es) originalmente dentro del objeto de descodificador 220 ó el objeto de transformación de origen 228, esto, por ejemplo, típicamente puede incluir realizar la transformación solicitada en la imagen sin volver a muestrear la imagen recibida. Esto, en algunos casos, puede proporcionar calidad a la imagen mejorada cuando se compara con una transformación no de origen, en donde puede ocurrir el remuestreo o muestreo hacia abajo de la imagen, por ejemplo. Un objeto de transformación de origen 228 puede permitir a una o más transformaciones aplicarse a la imagen originalmente, por ejemplo, sin la necesidad de remuestrear o muestrear hacia abajo la imagen. De esa forma, en algunos casos, las transformaciones nativas ventajosamente pueden proporcionar calidad de imagen mejorada o evitar pérdida de calidad de imagen, por ejemplo. El objeto de transformación de origen 228 puede incluir cualquier número de objetos de transformación. Por ejemplo, el objeto de transformación de origen 228 puede incluir un objeto de escalador de origen, un objeto de convertidor de formato de origen y/o un objeto de giro/rotación de origen para que todas las transformaciones solicitadas puedan realizarse originalmente en la imagen 202. En algunos casos, después de recibir un comando de procedimiento 206 de la aplicación 116, el objeto de descodificador 220 puede iniciar uno o más objeto de transformación para realizar el procesamiento solicitado en la imagen 202. Si un objeto de transformación de origen 228 está disponible para realizar la transformación o procesamiento solicitado, entonces la imagen puede procesarse originalmente al utilizar el objeto de origen. De otra forma, si la transformación solicitada no está disponible como una transformación de origen, entonces un objeto de transformación iniciado, por ejemplo, objetos 222, 224 ó 226, puede realizar (por ejemplo, no origen) procesamiento de imagen, que en algunos casos puede incluir remuestrear la imagen. De esa forma, algunas (o incluso todas) las transformaciones solicitadas pueden realizarse en una imagen originalmente, mientras las otras transformaciones (o incluso todas) subsecuentemente pueden realizarse no originalmente por otros objetos de transformación, por ejemplo. En una modalidad ilustrativa, un comando de procedimiento recibido 206 puede solicitar dos transformaciones para realizarse en una imagen 202, tal como al escalar 25%, y convertir de formato de imagen YCbCr a RGB. En este ejemplo, un objeto de descodificador 220 puede iniciarse por el procesador de imagen 118. También, basándose en el comando de procedimiento 206, un objeto de escalador y un objeto de convertidor de formato pueden iniciarse y asociarse con el objeto de descodificador 220. En este ejemplo, la escalada puede realizarse originalmente por objetos de transformación de origen 228, mientras la conversión de formato solicitada de YCbCr a RGB puede no estar disponible originalmente. Esto es simplemente un ejemplo. De esa forma, al recibir la imagen, el objeto de descodificador 220 puede descodificar la imagen y objeto de transformación de origen 228 puede escalar originalmente la imagen por 25% como se solicitó. Después, la imagen descodificada y escalada puede pasarse al objeto de convertidor de formato 224 en donde la imagen puede convertirse a formato de RGB, por ejemplo, y sacarse como una realización de la imagen (descodificada, escalada y convertida de formato). En otra modalidad ilustrativa, el procesador de imagen 118 puede sacar múltiples realizaciones de una imagen. Cada realización puede ser una versión diferente de la imagen, por ejemplo, en donde transformaciones diferentes se realizaron en la imagen para cada realización. Por ejemplo, el procesador de imagen 118 puede sacar una primera realización de imagen que puede ser la imagen original 202, una segunda realización que puede ser la imagen 202 después de descodificarse, y una tercera imagen después de descodificarse, escalada por 25% y convertida a RGB. En una modalidad ilustrativa, una o más (o incluso todas) las transformaciones en este ejemplo pudieron realizarse originalmente. Esto es simplemente un ejemplo. El comando de procedimiento 206 puede identificar una o más realizaciones para proporcionarse o generarse, por ejemplo, a través del valor(es) de realizaciones 212, por ejemplo. La Figura 3A es un diagrama de un sistema 300A en donde se procesa una imagen para proporcionar múltiples realizaciones de acuerdo con una modalidad ilustrativa. El sistema 300A puede incluir una imagen 202 y un comando de procedimiento 206 que se recibe por un objeto de descodificador 220. La imagen 202 puede ser un archivo y puede incluir cualquier imagen o varias imágenes en cualquier formato de imagen 205, como se discutió anteriormente. El comando de procedimiento 206 como se discutió anteriormente puede incluir un valor de transformaciones y/o un valor de realizaciones, por ejemplo, u otra información que identifica una o más realizaciones de imagen para proporcionarse o generarse. El comando de procedimiento 206 puede indicar por ejemplo cuantas realizaciones sacar de la imagen 202, transformación(es) realizar para cada realización y en qué orden realizar la transformación(es) para generar las realizaciones, por ejemplo. El objeto de descodificador 220 puede incluir una memoria de imagen 302. El objeto de descodificador 220 puede acoplarse o asociarse con un objeto de escalador 222, un objeto de convertidor de formato 224, y/o un objeto de giro/rotación 226. Como se discutió anteriormente, el objeto de descodificador 220 puede descodificar o descomprimir una imagen recibida 202 como se discutió anteriormente. También, el objeto de escalador 222 puede escalar una imagen. El objeto de convertidor de formato 224 puede convertir el formato 205 de la imagen a un formato diferente, y/o el objeto de giro/rotación 226 puede girar o rotar una imagen. Pueden proporcionarse otros objetos de transformación. De acuerdo con una modalidad ilustrativa, el procesador de imagen 118 puede sacar una o más realizaciones de imagen, tal como realizaciones 304A, 304B, 304C y 304D, por ejemplo. Cada realización puede comprender la imagen 202 después de tener cero o más transformaciones realizadas en esta. En el caso de sacarse después de cero transformaciones, esto puede ser la salida de la imagen recibida original 202. La memoria de imagen 302, del objeto de descodif icador 220, puede almacenar la imagen recibida 202 para que la imagen original 202 esté disponible incluso después de una transformación que se realiza en ésta. La memoria de imagen 302, por ejemplo, puede almacenar una o más realizaciones de etapa intermedia después de una o más de las transformaciones que se realizan en la imagen. Estas realizaciones de etapa intermedia pueden sacarse como realizaciones, y/o además pueden procesarse por otras transformaciones para sacarse como otras realizaciones. En una modalidad ilustrativa, la memoria de imagen 302 puede ser parte del objeto de descodif icador 220, o puede proporcionarse dentro de la memoria de sistema 104, por ejemplo, dentro de RAM 106, Figura 1, por ejemplo. Por ejemplo, la imagen original 202 puede ser de un perro u otro objeto, y el comando de procedimiento puede comprender una primera realización para escalar el tamaño de la imagen a 150% del tamaño original, y una segunda realización para girar la imagen de arriba a abajo. Entonces, la memoria de imagen 302 puede almacenar la imagen de perro original 202 para que después que se escala la imagen a 150% para la primera realización, la segunda realización aún puede utilizar la imagen original, 202 como almacenada en la memoria de imagen 302, con el fin de girar la imagen original 202 de arriba a abajo. La imagen original almacenada en la memoria de imagen 302 puede utilizarse para sacar una realización de la imagen original. En una modalidad ilustrativa, la memoria de imagen 302 también puede almacenar información de estado que identifica el estado de la imagen 202 que se procesa y/o una realización de estado intermedia después de una o más transformaciones que se realizan en la imagen. Por ejemplo, al proporcionar la segunda realización 304B, la memoria de imagen 302 puede almacenar la imagen o información de estado de imagen después que el objeto de escalador 222 realiza la transformación de escalador. Entonces, por ejemplo, el objeto de convertidor de formato 224 puede recuperar la información de estado de imagen de la memoria de imagen 302 para realizar la transformación de convertidor de formato en la imagen escalada. El procesamiento de imagen realizado por el sistema 300A en la Figura 3A ahora se describirá brevemente. El objeto del descodif icador 220 típicamente puede proporcionarse primero, en una modalidad ilustrativa. Después del objeto de descodificador 220, uno o más objetos de transformación, tal como el objeto de escalador 222, el objeto de convertidor 224, y el objeto de giro/rotación 226 del sistema 300A pueden organizarse en serie, en paralelo, o en una combinación de ambos basándose en el comando de procedimiento 206, tal como basándose en un valor de realizaciones 212 del comando de procedimiento 206. Por ejemplo, como se muestra en el ejemplo de la Figura 3A, el objeto de descodif icador 220 puede recibir una imagen 202 de un perro en un formato de RGB. El objeto de descodificador 220 también puede recibir un comando de procedimiento 206 asociado con la imagen 202, en donde el comando de procedimiento puede incluir 206 un comando para producir cuatro realizaciones de la imagen, por ejemplo. La primera realización solicitada 304A puede incluir la imagen 202 que se descodificó por el objeto de descodificador, y se escaló (por ejemplo, por 50%) por el objeto de escalador. La segunda realización solicitada 304B puede incluir la imagen que se descodificó por un objeto de descodificador, escaló (por ejemplo, por 50%) por el objeto de escalador, y entonces convirtió por formato (por ejemplo, de RGB a CMYK) por el objeto de convertidor de formato. La tercera realización solicitada 304C puede incluir la imagen que se descodificó por el objeto de descodificador y entonces giró (por ejemplo, 90 grados) por el objeto de giro/rotación. Y la cuarta realización 304D puede incluir una imagen 202 que se descodificó por el objeto de descodificador, giró (por ejemplo, por 30 grados) por el objeto de giro/rotación, y convirtió en formato (por ejemplo, de RGB a CMYK) por objeto de convertidor de formato, por ejemplo, en cualquier orden. Al recibir la imagen 202 por ejemplo, el objeto de descodificador 220 puede almacenar una copia de la imagen original 202 en la memoria de imagen 302, para además procesar y/o para posible salida como una realización no procesada. En la modalidad ilustrativa ilustrada en la Figura 3A, el objeto de descodificador 220 del sistema 300A no contiene, por ejemplo, un objeto de transformación de origen 228 para el objeto de escalador, objeto de convertidor de formato, o el objeto de giro/rotación como se solicitó por el comando de procedimiento. Por lo tanto, en este ejemplo, las transformaciones solicitadas pueden realizarse por objetos de transformación no originales. Al recibir la imagen 222, un objeto de descodificador 220 puede iniciarse para realizar la descodificación de la imagen recibida. También, uno o más objetos adicionales pueden iniciarse y acoplarse a o asociarse con el objeto de descodificador 220 basándose en el comando de procedimiento 206. Esto puede incluir determinar uno o más objetos y determinar una distribución, por ejemplo, distribución en serie y/o paralela y/o orden, para los objetos para procesar la imagen para generar las realizaciones de imagen solicitadas de acuerdo con el comando de procedimiento. Por ejemplo, como se muestra en la Figura 3A, esto puede incluir determinar el objeto de escalador 222 y objeto de convertidor de formato 224 debe proporcionarse en serie para producir la segunda realización 304B, mientras coloca el objeto de giro/rotación 226 en paralelo (a objetos utilizados para generar la segunda realización) para generar la tercera realización 304C, como un ejemplo. Después que el objeto de descodificador 220 descodifica originalmente la imagen 202, pueden generarse las cuartas realizaciones ilustrativas. Como se notó, para la segunda realización 304B en la Figura 3A, la imagen descodificada puede escalarse por el objeto de escalador 222 y convertirse en formato por el objeto de convertidor de formato 224 para producir la segunda realización 304B. Los objetos 222 y 224, por ejemplo, pueden ser transformaciones no de origen. Por ejemplo, las transformaciones no de origen pueden involucrar remuestrear o incluso muestrear hacia bajo la imagen descodificada, por ejemplo. En otra modalidad ilustrativa, tanto el objeto de escalador 222 como el objeto de convertidor de formato 224 pueden estar disponibles originalmente, y por lo tanto realizarse originalmente dentro del objeto de descodificador 220. Se debe notar que una realización de etapa intermedia puede almacenarse después que la imagen descodificada se escala por el objeto de escalador 222. La salida de realización de etapa intermedia del objeto de escalador 222 entonces puede sacarse como la primera realización 304A. Para producir la tercera realización 304C por ejemplo, la imagen descodificada, como almacenada en la memoria de imagen 302, puede girarse por el objeto de giro/rotación 226 para generar la tercera realización 304C. Finalmente, para producir la cuarta realización 304D la imagen descodificada almacenada en la memoria de imagen 302 puede convertirse en formato por el objeto de convertidor de formato 224 primero (por ejemplo, como opuesto al último como en la segunda realización 304B) y entonces girar por el objeto de giro/rotación 226 para generar la cuarta realización 308D. En otra modalidad ilustrativa, todos los objetos utilizados para generar la cuarta realización 304D, que incluye objeto de convertidor de formato 224, objeto de giro/rotación 226, pueden proporcionarse originalmente, lo que significa en una modalidad ilustrativa que el procesamiento de origen puede realizarse por el objeto de descodificador 220 para generar la cuarta realización 304D de la imagen. En el sistema 300A, el objeto de escalador 222, el objeto de convertidor de formato 224 y el objeto de giro/rotación 226, por ejemplo, puede realizar sus transformaciones respectivas no originalmente en la imagen (es decir pueden remuestrear, muestrear hacia abajo y/o perder calidad de imagen), como se discutió anteriormente, al menos en algunos casos. También, las transformaciones, el orden de las transformaciones y el número de realizaciones aplicadas, al sistema 300A, como se discutió anteriormente, son para propósitos ilustrativos solamente. En modalidades alternativas las transformaciones, el orden de las transformaciones y el número de realizaciones aplicadas al sistema 300A puede variar. También, cada realización no necesita procesar separadamente, como la discusión anterior fue simplemente ilustrativa, múltiples realizaciones pueden procesarse simultáneamente. En modalidades alternativas, múltiples imágenes 202 y múltiples comandos de procedimiento 206 también pueden recibirse. La Figura 3B es un diagrama de bloques de un sistema 300B en donde una imagen se procesa para proporcionar múltiples realizaciones de acuerdo con otra modalidad ilustrativa. El sistema 300B puede incluir una imagen 202 y un comando de procedimiento 206 que se recibe por un objeto de descodif icador 220. El sistema 300B (Figura 3B) puede ser muy similar al sistema 300A (Figura 3A), y las diferencias entre las dos figuras se describirán. La imagen 202 puede ser un archivo con un tipo de archivo aceptable 203 y/o puede ser cualquier imagen o varias imágenes en cualquier formato de imagen compatible 205, como se discutió anteriormente. El comando de procedimiento 206 como se discutió anteriormente puede incluir un valor de transformaciones 210 y valor de realizaciones 212. El comando de procedimiento 206 puede indicar por ejemplo cuantas realizaciones sacar de la imagen 202, que transformaciones realizar para cada realización y en qué orden realizar la transí ormación(es) .
El objeto de descod if icador 220 puede incluir, por ejemplo, una memoria de imagen 302, un objeto de giro/rotación de origen 306, y un objeto de convertidor de formato de origen 308. En el sistema 300B sin embargo el objeto de giro/rotación de origen 306 y el objeto de convertidor de formato de origen 308 pueden realizar una transformación de giro/rotación y una transformación de convertidor de formato de imagen 202, respectivamente, en lugar del objeto de giro/rotación 226 y el objeto de convertidor de formato 224 que realizan sus transformaciones respectivas. De esa forma, en este ejemplo, un aspecto de giro/rotación de origen 306 y un objeto de convertidor de formato de origen 308 si están disponibles, y pueden utilizarse para procesar la imagen en lugar de los objetos no de origen 226 y 224, respectivamente. En el sistema 300B, si un objeto de origen está disponible para realizar una transformación en una imagen 202 entonces el objeto de origen preferiblemente puede utilizarse en lugar del objeto no de origen. Entonces, por ejemplo, la imagen procesada puede pasarse (o evitarse) por el objeto no de origen por el cual está disponible el objeto de origen, por ejemplo. Por lo tanto, las cuatro realizaciones 304E, 304F, 304G y 304H pueden generarse basándose en objeto de origen, objetos no de origen o una combinación de objetos de origen y no de origen, con el fin de generar múltiples realizaciones de acuerdo con el comando de procedimiento. Como en el sistema 300A, el objeto de escalador 222, el objeto de convertidor de formato 224, y el objeto de giro/rotación 226, y/u otros objetos del sistema 300B pueden organizarse en serie, en paralelo o en una combinación de ambos basándose en el comando de procedimiento 206. Por ejemplo, el comando de procedimiento 206 puede incluir un comando para producir cuatro realizaciones (304E-H). La solicitud o comando de procedimiento para realizaciones 304E-H, por ejemplo, puede ser el mismo comando de procedimiento para realizaciones 304A-D (Figura 3A), para el sistema 300B ventajosamente puede utilizar uno o más objetos de origen para realizar procesamiento de imagen y generar las múltiples realizaciones solicitadas. La primera realización 304E puede generarse al utilizar un descodif icador de origen 220, un objeto de escalador no de origen 222, ya que ningún objeto de escalador de origen puede estar disponible (aunque puede estar disponible en una modalidad alternativa). Sin embargo, la segunda realización 304F puede generarse al utilizar un descodificador de origen 220, un objeto de escalador no de origen 222 (por ejemplo, ya que ningún objeto de escalador de origen está disponible), y un objeto de convertidor de formato de origen 308. Debido a que un objeto de convertidor de formato de origen 308 está disponible para realizar la conversión de formato solicitada, el convertidor de formato de origen 308 puede utilizarse en lugar del objeto de convertidor de formato no de origen iniciado 224 para generar la segunda realización de imagen 304F. En una modalidad ilustrativa, sin embargo, cualquiera de las transformaciones de origen típicamente pueden realizarse previo a transformaciones no de origen. Por ejemplo, para producir la realización 304F, el objeto de convertidor de formato de origen 308 puede realizarse previo al objeto de escalador no de origen 222. De forma similar, una tercera realización 304G puede generarse al utilizar un objeto de descodificador de origen 220 y un objeto de giro/rotación de origen 306. El objeto de giro/rotación de origen 306 puede utilizarse en este ejemplo en lugar de un objeto de gira/rotación no de origen 226. Una cuarta realización de imagen 404H también puede generarse al utilizar todos los objetos de origen, que incluyen un objeto de descodificador de origen 220, un objeto de convertidor de formato de origen 308, y un objeto de giro/rotación de origen 306. Los objetos de origen 308 y 306, cuando están presentes o disponibles, pueden utilizarse en lugar de los objetos no de origen correspondiente 224 y 226, respectivamente. Por ejemplo, después que la imagen se procesa por el objeto de descodificador 220 (que incluye procesarse por objetos de origen 306 y 308), la imagen procesada puede pasarse a través de objetos no de origen 224 y 226 sin procesamiento (ya que la conversión de formato y rotación ya se realizaron por el convertidor de formato de origen 308 y el objeto de giro/rotación de origen 306). Como se notó, el uso de objetos de origen, cuando están disponibles, pueden proporcionar el procesamiento solicitado originalmente, por ejemplo, sin remuestrear la imagen y/o pérdida de calidad, en algunos casos. De esta forma, de acuerdo con una modalidad ilustrativa, múltiples realizaciones de una imagen pueden crearse y proporcionarse, en lugar de sólo una realización individual. También, la generación y salida de las múltiples realizaciones pueden utilizar objetos de origen para realizar las transformaciones o procesamiento de imagen para mejorar la calidad de las imágenes o realizaciones sacadas. En modalidades alternativas las transformaciones, el orden de las transformaciones el número de realizaciones aplicadas al sistema 300B puede variar. También, cada realización no necesita procesarse de forma separada, como la discusión anteriormente fue simplemente ilustrativa, pueden procesarse simultáneamente múltiples realizaciones. En modalidades alternativas, múltiples imágenes 202 y múltiples comandos de procedimiento 206 también pueden utilizarse. Las Figuras 4-6 ilustran varios ejemplos de flujos operacionales o cuadros de flujo, con respecto a los ejemplos antes descritos de las Figuras 1, 2, y 3, y/o con respecto a otros ejemplos y contextos. Sin embargo, se debe entender que los flujos operacionales pueden ejecutarse en un número de otros ambientes y contextos, y/o en versiones modificadas de la Figura 1, 2, y 3. También, aunque los varios flujos operacionales se presentan en la secuencia(s) ilustrada, se debe entender que las varias operaciones pueden realizarse en otros órdenes a aquellos que se ilustran, o pueden realizarse concurrentemente. La Figura 4 es un cuadro de flujo que ilustra un procedimiento para realizar una pluralidad de transformaciones en una imagen para producir una o más realizaciones, de acuerdo con una modalidad ilustrativa. Después de una operación de inicio, el flujo operacional 400 se mueve a una operación de recepción 410 en donde puede recibirse una imagen. Por ejemplo, el procesador de imagen 118 puede recibir la imagen 202 de la aplicación 116. En otra modalidad ilustrativa, la aplicación 116 y el procesador de imagen 118 puede ser parte del mismo sistema total 200, aplicación, o dispositivo, aunque no se requiere. Entonces en la operación de recepción 420, un comando de procesamiento de imagen (o comando de procedimiento) puede recibirse para la imagen. Por ejemplo, como se muestra en la Figura 2, el procesador de imagen 118 puede recibir un comando de procedimiento 206 de la aplicación 116. El comando de procedimiento 206 puede asociarse con la imagen 202 e indicar como procesar la imagen 202. El comando de procedimiento 206, por ejemplo, puede incluir un valor de transformaciones 210 y/o un valor de realizaciones 212, aunque es simplemente una modalidad ilustrativa. Entonces en la operación de realización 430, una pluralidad de transformaciones pueden realizarse originalmente en la imagen basándose en el comando de procesamiento de imagen o comando de procedimiento para proporcionar una o más realizaciones de la imagen. Por ejemplo, como se muestra en la Figura 2, basándose en el comando de procedimiento 206, el procesador de imagen 118 puede realizar las transformaciones en la imagen 202 para proporcionar la realización(es) 216, 218 de la imagen(es) procesado a 214. O, como se muestra en la Figura 3B, la imagen 202 y comando de procedimiento 206 pueden recibirse por el descodif icador 220, y después realizar una pluralidad de transformaciones, originalmente con el objeto de giro/rotación de origen 306 y el objeto de convertidor de formato de origen 308, por ejemplo, una o más realizaciones pueden proporcionarse, que incluyen realizaciones 304G y 304H. La Figura 5 es un cuadro de flujo que ¡lustra un procedimiento para realizar una pluralidad de transformaciones de acuerdo con una modalidad ilustrativa. Después de una operación de inicio, el flujo operacional 500 se mueve a una operación de recepción 510 en donde puede recibirse una imagen. Por ejemplo, el procesador de imagen 118 puede recibir la imagen 202 de la aplicación 116. Entonces en operación de recepción 520, un comando de procesamiento de imagen (o comando de procedimiento) puede recibirse para la imagen. Por ejemplo, como se muestra en la Figura 2, el comando de procedimiento 206 puede recibirse de la aplicación 116 por el procesador de imagen 118. El comando procedimiento 206 puede asociarse con la imagen 202 e indicar como procesar la imagen 202, y puede identificar una o más realizaciones de la imagen para proporcionarse o generarse. Entonces en operación de realización 530, puede realizarse una pluralidad de transformaciones en la imagen basándose en el comando de procesamiento de imagen para proporcionar una pluralidad de realizaciones. Cada una de la pluralidad de realizaciones puede incluir al menos una transformación realizada originalmente en la imagen. Por ejemplo, como se muestra en la Figura 3B, la imagen 202 y comando de procedimiento 206 pueden recibirse por el descodificador 220. Después que el objeto de descodif icador 220 descodifica la imagen, una transformación de convertidor de formato puede realizarse por el objeto de convertidor de formato de origen 308, y entonces una transformación de escalador no de origen realizada por el escalador no de origen 222 para producir la segunda realización 304F. Alternati amente, la conversión de formato de origen realizada por el objeto de convertidor de formato de origen 308 puede realizarse al mismo tiempo que la imagen se descodifica por el descodif icador 220. Como se discutió anteriormente, las transformaciones de origen pueden realizarse previo a las transformaciones no de origen. En una modalidad ilustrativa, las transformaciones de origen típicamente pueden realizarse en cualquier orden, pero típicamente previo a transformaciones no de origen. Las transformaciones no de origen también típicamente pueden realizarse en cualquier orden. También, para producir la tercera realización 304G, la imagen puede descodificarse por el objeto de descod if icador 220, y entonces, o al mismo tiempo, una transformación de rotación puede realizarse en la imagen por el objeto de giro/rotación de origen 306, por ejemplo. De esa forma, ya que pueden proporcionarse realizaciones múltiples, con cada una de las realizaciones que incluye al menos una transformación de origen realizada en la imagen para generar la realización. La Figura 6 es un cuadro de flujo que ilustra un procedimiento para realizar una o más transformaciones en una imagen para producir una o más realizaciones de acuerdo incluso con otra modalidad ilustrativa. Después de una operación de inicio, el flujo operacional 600 se mueve a una operación de recepción 610 en donde puede recibirse una imagen. Entonces en operación de recepción 620, puede recibirse un comando de procesamiento de imagen.
Entonces en operación de determinación 630, basándose en el comando de procesamiento de imagen (o comando de procedimiento), una o más transformaciones y una distribución para las transformaciones puede determinarse para procesar la imagen y para proporcionar múltiples realizaciones de la imagen de acuerdo con el comando de procesamiento de imagen. Por ejemplo, basándose en el comando de procesamiento de imagen, una o más transformaciones (u objetos) pueden determinarse. Además, una distribución, tal como una serie y/o distribución en paralelo de las transformaciones u objetos pueden determinarse para procesar la imagen con el fin de procesar la imagen y generar las realizaciones de la imagen de acuerdo con el comando de procesamiento de imagen. Por ejemplo, en la Figura 3A, esto puede incluir determinar una distribución en serie de un objeto de escalador 222 y un objeto de convertidor de formato 224 (después del objeto descodif icador 220) para procesar la imagen con el fin de producir la realización solicitada 304B de la imagen recibida 202. De forma similar, esta determinación puede incluir determinar una distribución en paralelo y un orden de transformaciones u objetos para procesar la imagen recibida para producir otras realizaciones solicitadas, tal como 304A, 304C y 304D, por ejemplo. Mientras ciertas características de las implementaciones descritas se ilustraron como aquí descritas, muchas modificaciones, sustituciones, cambios equivalentes pueden ahora ocurrir para aquellos expertos en la técnica. Por lo tanto, se debe entender que las reivindicaciones anexas pretenden cubrir todas tales modificaciones y cambios que caen dentro del espíritu y alcance de las varias modalidades.

Claims (20)

REIVINDICACIONES
1.- Un método que comprende: recibir una imagen; recibir un comando de procesamiento de imagen para la imagen recibida; y realizar originalmente una pluralidad de transformaciones en la imagen basándose en el comando de procesamiento de imagen para proporcionar una o más realizaciones de la imagen.
2.- El método de acuerdo con la reivindicación 1, en donde la recepción de una imagen comprende: recibir un archivo que comprende una imagen de gráficos de rectángulo, una imagen digital, y/o una imagen de mapa de bits.
3. - El método de acuerdo con la reivindicación 1, en donde la recepción de un comando de procesamiento de imagen comprende: recibir un comando de procesamiento de imagen para realizar una o más de las siguientes transformaciones para la imagen: descodificar o descomprimir la imagen, escalar la imagen, convertir un formato de la imagen a un formato diferente, y/o girar o rotar la imagen.
4. - El método de acuerdo con la reivindicación 1, en donde la realización comprende: realizar originalmente una primera transformación por un descodificador en la imagen basándose en el comando de procesamiento de imagen; y realizar originalmente por el descodificador una segunda transformación en la imagen basándose en el comando de procesamiento de imagen.
5. - El método de acuerdo con la reivindicación 1, en donde la realización comprende: realizar, sin remuestrear la imagen, una pluralidad de transformaciones en la imagen basándose en el comando de procesamiento de imagen para proporcionar una o más realizaciones de la imagen.
6. - El método de acuerdo con la reivindicación 1, en donde la realización comprende: iniciar un objeto de descodificador; iniciar un objeto para una o más transformaciones; y asociar el objeto para una o más transformaciones con el objeto de descodificador.
7. - El método de acuerdo con la reivindicación 6, en donde el inicio del objeto para una o más transformaciones comprende: iniciar un objeto de escalador; iniciar un objeto de convertidor de formato; o iniciar un objeto de giro/rotación.
8. - El método de acuerdo con la reivindicación 1, en donde la realización además comprende: almacenar información de estado que identifica un estado de la imagen que se procesa.
9. - El método de acuerdo con la reivindicación 1, en donde la realización además comprende: almacenar una o más realizaciones de imagen de etapa intermedia después de que se realizan una o más de las transformaciones en la imagen.
10.- El método de acuerdo con la reivindicación 1, en donde la realización comprende: realizar originalmente una pluralidad de transformaciones en la imagen basándose en el comando de procesamiento de imagen para proporcionar una pluralidad de realizaciones de la imagen.
11.- Un método que comprende: recibir una imagen; recibir un comando de procesamiento de imagen para la imagen; realizar una pluralidad de transformaciones en la imagen basándose en el comando de procesamiento de imagen para proporcionar una pluralidad de realizaciones de la imagen, en donde cada una de la pluralidad de realizaciones incluye al menos una transformación realizada originalmente en la imagen.
12.- Un método de acuerdo con la reivindicación 11, en donde la recepción de un comando de procesamiento de imagen comprende: recibir un comando de procesamiento de imagen para realizar una o más de las siguientes transformaciones a la imagen: descodificar o descomprimir la imagen, escalar la imagen, convertir un formato de la imagen a un formato diferente, y/o girar o rotar la imagen.
13. - El método de acuerdo con la reivindicación 11, en donde la realización comprende: iniciar un objeto de descodificador; iniciar un objeto para una o más transformaciones; y asociar el objeto para una o más transformaciones al objeto de descodificador.
14. - El método de acuerdo con la reivindicación 11, en donde la realización además comprende: almacenar una o más realizaciones de imagen de etapa intermedia después de que se realizaron una o más transformaciones en la imagen para proporcionar la pluralidad de realizaciones de la imagen.
15. - El método de acuerdo con la reivindicación 11, en donde la realización comprende iniciar un objeto para realizar cada una de la pluralidad de transformaciones, el inicio que incluye uno o más de: iniciar un objeto de descodificador; iniciar un objeto de escalador; iniciar un objeto de convertidor de formato; o iniciar un objeto de giro/rotación.
16.- El método de acuerdo con la reivindicación 11, en donde la realización comprende: realizar una pluralidad de transformaciones en la imagen basándose en el comando de procesamiento de imagen para proporcionar una pluralidad de realizaciones de la imagen, la pluralidad de realizaciones incl uye una imagen original o no procesada y una o más realizaciones de imagen procesadas o transformadas.
17. - El método de acuerdo con la reivindicación 11, en donde la realización comprende: sacar la pluralidad de realizaciones de la imagen.
18. - Un método que comprende: recibir una imagen; recibir un comando de procesamiento de imagen; determinar, basándose en el comando de procesamiento de imagen, una o más transformaciones y una distribución para las transformaciones para procesar la imagen y para proporcionar múltiples realizaciones de la imagen de acuerdo con el comando de procesamiento de imagen.
19. - El método de acuerdo con la reivindicación 18, en donde la determinación comprende: determinar, basándose en el comando de procesamiento de imagen, una o más transformaciones y una distribución en serie y/o paralela u orden de las transformaciones para procesar la imagen y para proporcionar múltiples realizaciones de la imagen de acuerdo con el comando de procesamiento de imagen.
20. - El método de acuerdo con la reivindicación 18 y que además comprende: realizar una o más transformaciones en la imagen en un orden y/o distribución basándose en la determinación para proporcionar las múltiples realizaciones de la imagen de acuerdo con el comando de procesamiento de imagen.
MX2008015960A 2006-07-07 2007-05-29 Proporcion de representaciones multiples y de origen de una imagen. MX2008015960A (es)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US11/482,558 US8478074B2 (en) 2006-07-07 2006-07-07 Providing multiple and native representations of an image
PCT/US2007/012641 WO2008008131A1 (en) 2006-07-07 2007-05-29 Providing multiple and native representations of an image

Publications (1)

Publication Number Publication Date
MX2008015960A true MX2008015960A (es) 2009-01-09

Family

ID=38919187

Family Applications (1)

Application Number Title Priority Date Filing Date
MX2008015960A MX2008015960A (es) 2006-07-07 2007-05-29 Proporcion de representaciones multiples y de origen de una imagen.

Country Status (8)

Country Link
US (1) US8478074B2 (es)
EP (1) EP2044569A4 (es)
JP (1) JP5631590B2 (es)
KR (1) KR20090031408A (es)
CN (1) CN101484915B (es)
MX (1) MX2008015960A (es)
TW (1) TW200809687A (es)
WO (1) WO2008008131A1 (es)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI475509B (zh) * 2008-04-18 2015-03-01 High Tech Comp Corp 圖像載入方法及電子裝置與數位資料儲存媒體
JPWO2009153851A1 (ja) * 2008-06-16 2011-11-17 Necディスプレイソリューションズ株式会社 画像選択システム、画像出力装置、携帯端末、画像選択方法及びプログラム
US8610830B2 (en) * 2008-09-11 2013-12-17 Apple Inc. Video rotation method and device
CN103123718B (zh) * 2011-11-21 2016-06-22 腾讯科技(深圳)有限公司 一种图像处理方法和系统
US9489711B2 (en) * 2014-08-21 2016-11-08 Facebook, Inc. Systems and methods for recipient-side image processing
US11094030B2 (en) * 2018-12-21 2021-08-17 Microsoft Technology Licensing, Llc Methods of transforming image misalignment

Family Cites Families (45)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH02131076A (ja) * 1988-11-11 1990-05-18 Hitachi Ltd 画像復号縮小装置
JP3238567B2 (ja) 1993-07-02 2001-12-17 株式会社ソニー・コンピュータエンタテインメント 画像生成方法及び装置
JPH0884341A (ja) * 1994-09-14 1996-03-26 Hitachi Ltd 情報変換装置
JPH08116534A (ja) * 1994-10-18 1996-05-07 Seiko Epson Corp 画像データ符号化装置およびその方法並びに画像データ復号化装置およびその方法
US7190284B1 (en) * 1994-11-16 2007-03-13 Dye Thomas A Selective lossless, lossy, or no compression of data based on address range, data type, and/or requesting agent
JPH08317184A (ja) * 1995-05-15 1996-11-29 Sanyo Electric Co Ltd 画像符号化方法、画像復号化方法および画像記録媒体
US5802373A (en) * 1996-01-29 1998-09-01 Digital Equipment Corporation Method for providing a pipeline interpreter for a variable length instruction set
US6084598A (en) 1998-04-23 2000-07-04 Chekerylla; James Apparatus for modifying graphic images
US6501861B1 (en) * 1998-09-17 2002-12-31 Samsung Electronics Co., Ltd. Scalable coding/decoding methods and apparatus for producing still image using wavelet transformation
US6906826B1 (en) 1998-11-16 2005-06-14 Seiko Epson Corporation Medium on which image modifying program is recorded, image modifying apparatus and method
KR100671098B1 (ko) 1999-02-01 2007-01-17 주식회사 팬택앤큐리텔 모양정보를 이용한 멀티미디어 데이터의 검색 방법 및 장치
US6563964B1 (en) * 1999-02-08 2003-05-13 Sharp Laboratories Of America, Inc. Image downsampling using redundant pixel removal
KR100586693B1 (ko) 1999-04-22 2006-06-08 에스케이 텔레콤주식회사 이미지 데이터의 크기를 축소하기 위한 이미지 변환 처리 장치및 이미지 데이터 크기 축소 방법
US6870944B1 (en) 1999-06-08 2005-03-22 Sony Corporation Image processing apparatus, image processing method, and storage medium
US6959098B1 (en) 1999-11-30 2005-10-25 Digimarc Corporation Method and system for determining image transformation
JP4127465B2 (ja) * 2001-05-14 2008-07-30 株式会社リコー 画像伸張装置及び方法、並びに記録媒体
WO2002045005A1 (en) 2000-12-01 2002-06-06 Lizardtech, Inc. Method for lossless encoding of image data by approximating linear transforms and preserving selected properties
KR100378222B1 (ko) 2001-04-21 2003-03-29 주식회사 마크애니 디지털 워터마크의 삽입 및 검출방법과 이를 이용한워터마크 삽입/검출 장치
US6944357B2 (en) * 2001-05-24 2005-09-13 Microsoft Corporation System and process for automatically determining optimal image compression methods for reducing file size
US20020186393A1 (en) * 2001-06-11 2002-12-12 Pochuev Denis A. Document printing using format-specific translation modules
US6819803B2 (en) 2001-07-02 2004-11-16 International Business Machines Corporation Faster lossless rotation of JPEG images
US7123777B2 (en) * 2001-09-27 2006-10-17 Eyesee360, Inc. System and method for panoramic imaging
US7058239B2 (en) * 2001-10-29 2006-06-06 Eyesee360, Inc. System and method for panoramic imaging
WO2003041011A2 (en) * 2001-11-08 2003-05-15 Eyesee360, Inc. Method and apparatus for the computation of panoramic views and _perspective projections from omnidirectional images
JP4141342B2 (ja) * 2002-08-12 2008-08-27 株式会社リコー 画像形成装置
US7149370B2 (en) * 2003-03-07 2006-12-12 Nokia Corporation Method and device for image surfing
JP2004297772A (ja) * 2003-03-12 2004-10-21 Ricoh Co Ltd 画像処理システム、画像形成装置、画像処理方法、プログラム及び記憶媒体
JP3874738B2 (ja) * 2003-04-14 2007-01-31 シャープ株式会社 画像処理システム、画像処理装置及び画像処理方法
CN100458844C (zh) * 2003-04-18 2009-02-04 深圳市朗科科技股份有限公司 数码图像处理装置及方法
KR20050030699A (ko) 2003-09-25 2005-03-31 주식회사 팬택앤큐리텔 이미지 변환 시스템 및 그 방법
EP1538844A3 (en) 2003-11-26 2006-05-31 Samsung Electronics Co., Ltd. Color image residue transformation and encoding method
JP2005235029A (ja) * 2004-02-23 2005-09-02 Fuji Photo Film Co Ltd 画像縮小方法および装置ならびにプログラム
US7657846B2 (en) * 2004-04-23 2010-02-02 Microsoft Corporation System and method for displaying stack icons
US20050251758A1 (en) * 2004-04-26 2005-11-10 Microsoft Corporation Indicating file type on thumbnail preview icon
US7506253B2 (en) * 2004-05-21 2009-03-17 Electronics For Imaging, Inc. Methods and apparatus for recording web information
US8712858B2 (en) * 2004-08-21 2014-04-29 Directworks, Inc. Supplier capability methods, systems, and apparatuses for extended commerce
US7672521B2 (en) * 2004-08-30 2010-03-02 Hewlett-Packard Development Company, L.P. System and method for improved page composition
JP4376156B2 (ja) 2004-09-16 2009-12-02 株式会社リコー 画像処理装置および画像処理方法およびプログラムおよび記録媒体
US7882413B2 (en) * 2005-01-20 2011-02-01 New Jersey Institute Of Technology Method and/or system for space-time encoding and/or decoding
GB2423613A (en) * 2005-02-25 2006-08-30 Canon Europa Nv Document print management
US20070120763A1 (en) * 2005-11-23 2007-05-31 Lode De Paepe Display system for viewing multiple video signals
US7715653B2 (en) * 2006-04-03 2010-05-11 Humberto Garduno Non-platform specific method and/or system for navigating through the content of large images, allowing zoom into or out, pan and/or rotation
US20080144066A1 (en) * 2006-10-26 2008-06-19 Andrew Rodney Ferlitsch Composition Print Method Using Translators
TWI324477B (en) * 2006-11-03 2010-05-01 Quanta Comp Inc Stereoscopic image format transformation method applied to display system
US8103654B2 (en) * 2007-06-26 2012-01-24 Mikhail Gilula System and method for querying heterogeneous data sources

Also Published As

Publication number Publication date
KR20090031408A (ko) 2009-03-25
US8478074B2 (en) 2013-07-02
WO2008008131A1 (en) 2008-01-17
CN101484915B (zh) 2013-09-18
CN101484915A (zh) 2009-07-15
EP2044569A4 (en) 2011-06-22
JP2009543253A (ja) 2009-12-03
JP5631590B2 (ja) 2014-11-26
TW200809687A (en) 2008-02-16
EP2044569A1 (en) 2009-04-08
US20080008392A1 (en) 2008-01-10

Similar Documents

Publication Publication Date Title
RU2767447C2 (ru) Процессор нейронной сети, использующий сжатие и распаковку данных активации для снижения использования пропускной способности памяти
JP4700423B2 (ja) 形状を使用する共通チャーティング
CN102246154B (zh) 基于用户模式的远程桌面协议(rdp)编码体系结构
US8295617B2 (en) Systems and methods for enhanced image encoding
US8094164B1 (en) Decompression of block encoded texture data
MX2008015960A (es) Proporcion de representaciones multiples y de origen de una imagen.
US6600840B1 (en) Image format conversion such as photometric, rotation, cropping, padding, scaling, dithering, bit padding, grayscale and color transformation, encoding and decoding using a plurality of filters
WO2023184759A1 (zh) 一种三维物体形状的补全方法、装置、设备及存储介质
WO2022005611A1 (en) Image super-resolution reconstructing
JP2008526107A (ja) リモートコンピューティングにおけるグラフィクスプロセッサの使用
CN113869138A (zh) 多尺度目标检测方法、装置及计算机可读存储介质
WO2021051562A1 (zh) 人脸特征点定位方法、装置、计算设备和存储介质
EP3846021B1 (en) Data output method, data acquisition method, device, and electronic apparatus
WO2024074042A1 (zh) 一种数据存储方法及装置、数据读取方法及装置、设备
JP4366250B2 (ja) データ変換処理装置及びプログラム
US20060184783A1 (en) System and method for providing an extensible codec architecture for digital images
WO2022134338A1 (zh) 领域适应方法、装置、电子设备及存储介质
CN114863009A (zh) 图像重新照明方法及相关装置
CN108196848B (zh) 界面嵌入显示方法、装置、用户终端及可读存储介质
JP2022024640A (ja) 情報処理装置、プログラム及び情報処理方法
US8244071B2 (en) Non-dyadic spatial scalable wavelet transform
JP2020087104A (ja) コンピュータプログラム、画像処理方法、及び画像処理装置
JP2643091B2 (ja) 共通データ・タイプを有する複数の文書書式イメージの文字認識を管理するための方法およびシステム
US20230280902A1 (en) Compression and decompression of multi-dimensional data
WO2023108568A1 (zh) 图像处理的模型训练方法及装置、存储介质、电子设备

Legal Events

Date Code Title Description
FA Abandonment or withdrawal