ES2275788T3 - Procedimiento y dispositivo para la transformacion de una imagen de un objeto. - Google Patents

Procedimiento y dispositivo para la transformacion de una imagen de un objeto. Download PDF

Info

Publication number
ES2275788T3
ES2275788T3 ES02018869T ES02018869T ES2275788T3 ES 2275788 T3 ES2275788 T3 ES 2275788T3 ES 02018869 T ES02018869 T ES 02018869T ES 02018869 T ES02018869 T ES 02018869T ES 2275788 T3 ES2275788 T3 ES 2275788T3
Authority
ES
Spain
Prior art keywords
image
points
data
destination
memory
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
Application number
ES02018869T
Other languages
English (en)
Inventor
Werner Knee
Uwe Beutnagel-Buchner
Axel Kirschbaum
Markus Lindner
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Robert Bosch GmbH
Original Assignee
Robert Bosch GmbH
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
Priority claimed from DE10202602A external-priority patent/DE10202602A1/de
Application filed by Robert Bosch GmbH filed Critical Robert Bosch GmbH
Application granted granted Critical
Publication of ES2275788T3 publication Critical patent/ES2275788T3/es
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

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
    • G06T3/60Rotation of whole images or parts thereof

Landscapes

  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Image Processing (AREA)
  • Controls And Circuits For Display Device (AREA)

Abstract

Procedimiento para la transformación de una imagen de un objeto (OB), especialmente para una representación en una instalación de representación (1) con una disposición en forma de matriz de puntos de la imagen de destino (Zi), en el que para al menos una parte de los puntos de la imagen de destino (Zi) se calculan, a través de una transformación inversa, puntos de la imagen fuente (Qi (-beta)), se comparan los puntos de la imagen fuente (Qi (-beta)) con puntos de la imagen del objeto (Ok) previamente memorizados y a partir de esta comparación se calculan datos de los puntos de la imagen de destino (Rj, Gj, Bi, alfai) de los puntos de la imagen de destino (Zi), comprendiendo los datos de los puntos de la imagen de destino y los datos de los puntos de la imagen del objeto en cada caso valores de colores básicos (R, G, B) y un valor de transparencia (alfa) y en el cálculo de los datos de los puntos de la imagen de destino se verifica para cada punto de la imagen fuente en una etapa de decisión si cae exactamente sobre un punto de la imagen del objeto, y en el caso de que el punto de la imagen fuente coincida con un punto de la imagen del objeto, se toman los datos de los puntos de la imagen del objeto respectivos como datos de los puntos de la imagen de destino, y en el caso de que el punto de la imagen fuente no coincida con ninguno de los puntos de la imagen del objeto, se calculan los datos de los puntos de la imagen de destino a partir de los datos de los puntos de la imagen del objeto, de tal manera que los datos de los puntos de la imagen de destino son calculados a través de una interpolación lineal a partir de los datos de los puntos de la imagen del objeto adyacentes, siendo ponderados los datos de los puntos de la imagen del objeto de acuerdo con la distancia respectiva a los puntos de la imagen del objeto respectivos.

Description

Procedimiento y dispositivo para la transformación de una imagen de un objeto.
La invención se refiere a un procedimiento y a un dispositivo para la transformación, especialmente la rotación y/o la escala de una imagen de un objeto, especialmente para la representación en una instalación de representación con una disposición en forma de matriz de puntos de imagen de destino.
La transformación puede ser especialmente una rotación y/o una escala, es decir, una dilatación o bien una extensión de una imagen del objeto memorizada como fichero de píxeles o bien como mapa de píxeles. Tales procedimientos se utilizan en programas gráficos, para girar imágenes de objetos alrededor de ángulos discrecionales y para escalarlos en dirección x y/o en dirección y. Se emplean sobre todo para la representación de un puntero, de un símbolo o de un mapa en un dispositivo de representación en forma de matriz de un automóvil, por ejemplo una pantalla LCD.
Un puntero es representado en la instalación de representación de un vehículo, en general, bajo un ángulo de giro, que depende de un parámetro, en general de una variable del estado de marcha, o también del contenido del depósito o de una temperatura. La imagen del objeto a girar del puntero puede estar en este caso, en general, en color, y puede estar configurada con diferente transparencia para la reproducción delante de una imagen de fondo, de manera que a cada punto de la imagen de destino se pueden asociar varios datos de los puntos de la imagen, por ejemplo los colores básicos R, G, B y también un valor de transparencia \alpha o YUV y \alpha. En los sistemas de navegación se escalan los datos de los mapas previamente memorizados para la adaptación al tamaño o bien al número de píxeles del dispositivo de representación y el mapa de carreteras representado es alineado en parte de una manera continua a través de la rotación en la dirección de la marcha, de tal manera que la dirección vertical del dispositivo de representación corresponde a la dirección de la marcha. Además, se puede reproducir adicionalmente una representación de brújula en la
imagen.
Además, en aplicaciones gráficas, por ejemplo las imágenes escaneadas se pueden alinear en ángulo recto, las imágenes se pueden girar antes de la expresión para el aprovechamiento óptimo del tamaño del formato del papel y los símbolos gráficos se pueden colocar en programas CAD, por ejemplo en la planificación de una instalación de vivienda.
En el caso de rotación y/o de escala de imágenes de objetos, se diferencian, en principio, los procedimientos orientados a píxeles y los procedimientos orientados a vectores. Ambos procedimientos se pueden reproducir en hardware, en software o en una forma mixta de ambos.
Una reproducción de un procedimiento en una realización de hardware significa que un algoritmo está cableado fijamente en un chip, en general en el controlador gráfico. Este bloque de hardware espera parámetros reunidos sobre los datos fuente, los procesa y pone a disposición el resultado, por ejemplo, en una zona de la memoria. Por lo tanto, los algoritmos en hardware solamente son alimentados con pocos datos y procesan muy rápidamente el cometido cableado. Pero el algoritmo propiamente dicho no es ya modificable.
Una reproducción en una realización de software se lleva a cabo, por ejemplo, en una instalación de cálculo convencional, por ejemplo en un PC. Un microprocesador recibe instrucciones desde un programa de software. El programa de software contiene un algoritmo y lo procesa con el soporte del microprocesador y de sus unidades periféricas. Un algoritmo en software es muy flexible debido a la posibilidad sencilla de modificación, pero, debido al procedimiento de procesamiento puramente secuencial del microprocesador, es ejecutado más lentamente que el algoritmo de hardware.
Además, se utilizan sistemas combinados, por ejemplo, en PCs con tarjeta gráfica de apta potencia para aplicaciones de juegos, en los que, por ejemplo, el software asume la rotación de los datos de los vectores, pero el dibujo de la nueva imagen se realiza como bloque de hardware en el controlador gráfico. Esta solución combina la flexibilidad del software con la rapidez de la reproducción de hardware. En este caso, por ejemplo, un controlador gráfico, un microprocesador, una memoria de programa y una memoria de trabajo pueden estar conectados a través de un sistema de bus. El software para un microprocesador y todos los datos gráficos necesarios, incluida la imagen de píxeles fuente, son memorizados en una memoria de programa. La memoria de trabajo sirve como memoria temporal para el microprocesador y, dado el caso, para el controlador gráfico y contiene una memoria de repetición de la imagen, en la que se memoriza la imagen de destino que debe representarse en la instalación de representación. La imagen memorizada en la memoria de repetición de la imagen es leída de forma cíclica, por ejemplo 60 veces por segundo por el controlador gráfico y es enviada a la instalación de representación.
En los procedimientos orientados a loa píxeles, se describe la imagen del objeto como gráfico de mapa de píxeles. Durante la rotación y/o escala de gráficos de mapas de píxeles se calcula cada píxel individual de la imagen del objeto con un algoritmo. Durante la adaptación continua de la imagen del objeto a un ángulo de giro variable, se lleva a cabo un cálculo de este tipo en tiempo real en el caso de una ejecución de software con un gasto de cálculo alto. Las realizaciones acordes con el hardware no se utilizan especialmente en el sector de la automoción. Para la representación, por ejemplo, de punteros giratorios se puede calcular previamente para cada posición posible del puntero una imagen con datos de los puntos de la imagen de destino y se puede memorizar. De esta manera, para la posición respectiva del puntero solamente tienen que llamarse y representarse los datos de los puntos de la imagen. En un procedimiento de este tipo es un inconveniente que especialmente en el caso de una resolución elevada y de una representación transparente en color, es necesario un espacio considerable de memoria.
En los procedimientos orientados a vector, la imagen del objeto se describe a través de vectores previamente memorizados. La rotación y/o la escala del gráfico de vectores se llevan a cabo a través de nuevo cálculo de los vectores individuales con nueva representación siguiente de la imagen. Un puntero es descrito en este caso, por ejemplo, a través de su contorno de puntero. Los vectores son rotados en tiempo real para la representación del puntero en el ángulo de giro respectivo.
Puesto que en estos procedimientos solamente están memorizados los vectores del contorno del puntero, el espacio necesario de la memoria es reducido. En el caso de la representación continua del puntero, solamente hay que calcular la transformación de los vectores en función de un parámetro, de manera que también el gasto de cálculo es limitado. Con procedimientos de este tipo se pueden describir bien, sin embargo, en general, sólo representaciones más sencillas de un puntero, puesto que especialmente las configuraciones y las representaciones más costosas de los punteros con varios valores de color y valores de transparencia o bien requieren un número elevado de vectores o hacen necesaria una descripción de cada punto de la imagen a través de un vector propio. Esto conduce, en el caso de una ejecución de software, a un gasto de cálculo no que se puede realizar en la práctica en tiempo real, de manera que se utilizan en todo caso realizaciones de hardware costosas.
El documento DE 198 16 795 A1 describe un procedimiento para la representación de objetos móviles en formato de mapa de píxeles en un dispositivo de representación en forma de matriz, en el que para diferentes representaciones del objeto de una curva predeterminada de la trayectoria se calculan en cada caso de antemano y se memorizan mapas de píxeles y la posición respectiva del objeto a lo largo de la curva de la trayectoria se lleva a cabo a través de lectura y representación de los mapas de píxeles así como, dado el caso, a través del cálculo de un mapa de píxeles intermedio a través de interpolación a partir de los datos de los puntos de la imagen de los mapas de píxeles previamente memorizados. De esta manera, se combinan los procedimientos descritos anteriormente de la memorización de todos los datos de los puntos de la imagen así como del cálculo de cada imagen de destino en virtud de una imagen del objeto previamente memorizada. En este caso es un inconveniente, sin embargo, que o bien debe memorizarse previamente un número elevado de representaciones de puntero con espacio correspondiente de la memoria o se perjudica en una medida visible la calidad de la representación durante la interpolación.
Eldon y Wegner describen en "Using the TMC2301 image resampling sequencer", 2407 Microprocessors and Microsystems 14 (1990-03), Nº 2, Londres GB, XP000102973 una arquitectura de hardware para la transformación de la imagen en color, calculando para cada punto de la imagen de destino unas coordenadas de los puntos de la imagen fuente, y se presentan diferentes procedimientos de interpolación alternativos, incluida la interpolación bilineal, para la determinación de los datos de los puntos de la imagen de destino a partir de los datos de los puntos de la imagen fuente.
Siegel describe en "Realtime Polynomial Warp Hardware for Arbitrary Resolution Imagen Resampling",
ELECTRONIC IMAGING, INTERNATIONAL ELECTRONIC IMAGING EXPOSITION AND CONFERENCE, ADVANCE PRINTING OF PAPER SUMMARIES, WALTHAM, MA, US, Vol. 1 páginas: 394 - 399, XP000828170, un sistema que está en condiciones de transformar imágenes mayores, descomponiéndolas en bloques más pequeños a transformar.
El procedimiento de acuerdo con la invención con las características de la reivindicación 1 tiene el objetivo de conseguir con un gasto de hardware relativamente reducido, especialmente con una necesidad de memoria reducida y con una instalación de cálculo dimensionada pequeña y a pesar de todo con un gasto de cálculo relativamente reducido, una representación exacta de una imagen del objeto bajo una transformación discrecional, especialmente una ángulo de giro discrecional. Además, se crea una reproducción eficiente de una transformación, que comprende especialmente una rotación y/o una escala y/o una traslación, en hardware y software.
A este respecto, por un punto de la imagen se entienden las coordenadas o bien la pareja de coordenadas x_{i}, y_{i} del punto de la imagen, en cambio los datos asociados al punto de la imagen, es decir, los valores de color y la transparencia, se designan como datos de los puntos de la imagen.
De acuerdo con la invención, se parte de la misma manera de los puntos de la imagen de destino. Se transforma en cada caso inversamente al menos una parte de los puntos de la imagen de destino -es decir, las coordenadas-x, y obtenidas a través del número de las columnas y del número de las líneas- con lo que se calculan los puntos de las imágenes fuente correspondientes -es decir, las coordenadas-x, y en la imagen fuente-. En el caso de una transformación con una rotación y/o una escala la transformación inversa correspondiente es una rotación alrededor del ángulo de giro negativo y/o una escala en la medida de los valores recíprocos de los factores de escala de la dirección-x, y, lo que se puede representar a través de una matriz adecuada, en general la matriz de rotación con ángulo de giro negativo y con los valores recíprocos de los factores de escala. Los puntos de la imagen fuente calculados de esta manera presentan en la mayoría de los casos valores de coordenadas-x, y no de número entero y no coinciden con ninguno de los puntos de la imagen del objeto. Los datos de un punto de la imagen de destino son calculados ahora a partir de una comparación de un punto de la imagen fuente con los puntos de la imagen del objeto previamente memorizados.
Puesto que la imagen del objeto a transformar se describe de esta manera a través de puntos individuales de la imagen, es decir, que está memorizada como imagen de píxeles, se pueden memorizar también configuraciones más complejas con varias etapas de color y valores de transparencia en un fichero de mapas de píxeles. Si está memorizada solamente una imagen del objeto-es decir, especialmente en el caso de un ángulo de giro de cero y con un factor de escala uno-, se necesita un espacio de memoria muy reducido también en el caso de una configuración más compleja, en el caso de variaciones de color y de valores de transparencia. En este caso está prevista de acuerdo con la invención una representación de imágenes en color con valores de transparencia.
A través de una comparación de las coordenadas del punto de la imagen fuente calculado con valores mínimos y máximos se puede determinar si cae en la imagen del objeto y, por lo tanto, se pueden calcular a continuación sus datos o se encuentra fuera de la imagen del objeto y, por lo tanto, no es relevante. En el caso de que no sea relevante, se coloca un valor de transparencia presente a cero.
En el caso de que el punto de la imagen fuente calculado con sus coordenadas caiga exactamente sobre un punto de la imagen del objeto, entonces se toman directamente sus datos de los puntos de la imagen como valores R, G, B, \alpha. En otro caso, se puede llevar a cabo de una manera ventajosa un promedio sobre los datos correspondientes de los puntos de la imagen de los cuatro puntos de la imagen del objeto circundantes. A tal fin debe utilizarse de acuerdo con la invención un promedio lineal, en el que la ponderación de los datos de los puntos de la imagen de cada punto del objeto se realiza de una manera proporcional a la distancia de sus coordenadas con respecto a las coordenadas (es decir, el número de columnas y el número de líneas) del punto de la imagen fuente. Una ponderación de este tipo es especialmente bien adecuada para la aplicación en un circuito integrado (IC, por ejemplo también un ASIC (circuito integrado específico de la aplicación. En un promedio de este tipo, se obtiene esencialmente el alisamiento de los cantos (antialiasing) de la imagen del objeto -en general, a través de una modificación escalonada del valor de transparencia en el borde de la imagen del objeto- de manera que se pueden conseguir buenas representaciones del objeto transformado también sin un filtrado posterior de la imagen del objeto transformada.
De acuerdo con la invención, se puede reducir todavía de una manera ventajosa el gasto de cálculo de la transformación inversa, especialmente de una rotación hacia atrás, de los puntos de la imagen de destino, comparando ya antes del cálculo de los puntos de la imagen fuente los puntos de la imagen de destino con la imagen de destino, dentro de la cual se encuentran los puntos de la imagen de destino que son relevantes para la representación del objeto girado. A tal fin, se pueden transformar, por ejemplo, puntos de imágenes angulares de la imagen del objeto con valores de coordenadas mínimos y máximos, por ejemplo se pueden girar en la medida de ángulos de giro positivos y, por lo tanto, se forman puntos de imágenes angulares correspondientes de la imagen de destino. De esta manera, en esta forma de realización, se lleva a cabo una comparación en la imagen de destino u no en la imagen fuente. A este respecto, a través de un gasto de cálculo relativamente reducido de la transformación de cuatro puntos de la imagen del objeto, se puede reducir en una medida considerable el gasto de cálculo posterior de la transformación inversa de los puntos de la imagen de destino. En las dos formas de realización se coloca a cero un valor de transparencia eventualmente presente o se adapta el valor de la claridad o bien los valores de los colores a la imagen de
fondo.
Para conseguir en el caso de factores de escala mayores o bien en el caso de zonas mayores del factor de escala representaciones suficientemente nítidas del objeto girado, se pueden utilizar a tal fin también varias imágenes del mismo objeto, por ejemplo con diferente resolución.
Además, la imagen del objeto se puede memorizar también con una resolución local más elevada, frente a la resolución de la imagen de destino de la instalación de representación. Un supermuestreo de este tipo requiere esencialmente sólo una necesidad de espacio más elevada para la imagen del objeto con los datos de los puntos de la imagen respectivos. El gasto de cálculo para la transformación inversa de los puntos de la imagen de destino y para el promedio de sus datos a partir de los datos de la imagen del objeto es independiente del número de los datos de los puntos de la imagen del objeto memorizados, de manera que no se eleva el gasto general de cálculo en el caso de un supermuestreo de este tipo.
La imagen del objeto se puede subdividir también en varios segmentos, que se transforman en cada caso de forma individual. De esta manera, especialmente en el caso de la rotación de una imagen alargada del objeto, por ejemplo de un puntero, se puede mantener reducido la zona de la imagen de destino a calcular. Para los segmentos de la imagen del objeto se calculan en este caso en primer lugar de la manera descrita anteriormente los puntos de los segmentos de destino a través de la transformación de sus puntos angulares de los segmentos del objeto. A continuación de acuerdo con una alternativa, se puede fijar los parámetros de los bordes, que se extienden a través de estos puntos angulares de los segmentos de destino, como rectas lineales y se pueden calcular los puntos de la imagen de destino dentro de los bordes como puntos de la imagen de destino. De acuerdo con una segunda forma de realización alternativa, se puede seleccionar una zona de segmentos de destino como polígono que comprende estos puntos de segmentos de destino, especialmente un rectángulo alineado vertical/horizontal, cuyos puntos de la imagen de destino de transformar de forma inversa a continuación.
El dispositivo de acuerdo con la invención se puede realizar especialmente con un IC, por ejemplo ASIC, para el promedio lineal de los datos de los puntos de la imagen de destino a partir de los datos de los puntos de la imagen del objeto, con lo que es posible una fabricación de coste favorable con alta velocidad de cálculo.
De acuerdo con un desarrollo ventajoso, se puede llevar a cabo una realización en gran medida con hardware y, sin embargo, de coste relativamente favorable, siendo realizadas las transformaciones e interpolaciones a través de una instalación de filtro de hardware de un controlador gráfico, siendo cargados los segmentos a transformar de la imagen del objeto en una memoria Cache de entrada y siendo cargadas las zonas de segmentos de destino calculadas a través de transformación en una memoria Cache de salida del controlador gráfico, siendo integrados el controlador gráfico y eventualmente el microprocesador utilizado para el control del programa.
A continuación se explica en detalle la invención con la ayuda de los dibujos adjuntos en algunas formas de realización.
En este caso:
La figura 1 muestra una instalación de representación con imagen del objeto e imagen de destino.
La figura 2 muestra un diagrama de flujo de un procedimiento de acuerdo con una forma de realización de la invención.
La figura 3 muestra un diagrama de bloques de un dispositivo para la realización del procedimiento de la figura 2.
La figura 4 muestra un diagrama de flujo de un procedimiento de acuerdo con otra forma de realización de la invención.
La figura 5 muestra un diagrama de flujo de un dispositivo para la realización del procedimiento de la figura 4.
La figura 6 muestra una ampliación de un fragmento de la instalación de representación párale cálculo de los datos de los puntos de la imagen a partir de los puntos de la imagen del objeto.
La figura 7 muestra una representación de otra imagen del objeto con una subdivisión en varios segmentos del objeto,
La figura 8 muestra la imagen de destino a calcular a partir de la imagen del objeto de la figura 7 con una subdivisión en segmentos de destino y zonas de segmentos de destino.
La figura 9 muestra un diagrama de bloques de un dispositivo para la transformación de la imagen del objeto de la figura 7 en la imagen de destino de la figura 8.
La figura 10 muestra otro diagrama de bloques del dispositivo de la figura 9 con la indicación de las curvas de las señales.
La figura 11 muestra un diagrama de flujo de un procedimiento realizado con el dispositivo de las figuras 9 y 10.
De acuerdo con la figura 1, como instalación de representación está prevista una pantalla LCD 1 con una disposición en forma de matriz de píxeles o bien de puntos de la imagen Z_{i} con i = 1 a n. En la pantalla LCD 1 se reproduce un puntero en diferentes ángulos de giro \beta, correspondiendo el ángulo de giro \beta a un parámetro, por ejemplo una velocidad del vehículo o un número de revoluciones del motor. En la figura 1, se muestra un puntero 3 en la posición básica (\beta = 0) en una imagen del objeto OB reproducida a través de líneas de trazos y un puntero 6 girado en la medida de un ángulo de giro \beta en una imagen de destino ZB. La imagen del objeto OB y la imagen de destino ZB se describen a través de ficheros de mapas de píxeles, estando memorizados datos para cada punto de la imagen descrito a través de su número de líneas y su número de columnas, de manera que la imagen de destino ZB se puede reproducir con coloración y transparencia variables delante de un fondo, por ejemplo una escala u otras representaciones. En las formas de realización mostradas se utilizan en este caso los colores básicos R, G, B y un valor de transparencia \alpha, de una manera alternativa a ello se pueden emplear otros formatos de colores, por ejemplo YUV y \alpha. El número de las columnas y el número de las líneas se consideran a continuación como coordenadas-x, y (de número entero). Para la representación de la imagen de destino ZB deben calcularse, por lo tanto, as partir de los datos de los puntos de la imagen R_{k}, G_{k}, B_{k}, \alpha_{k} conocidos de los puntos de la imagen del objeto O_{k} y a partir del ángulo de giro \beta conocido los datos de los puntos de la imagen de destino R_{k}, G_{k}, B_{k}, \alpha_{k} correspondientes.
De acuerdo con el procedimiento mostrado en la figura 2 se introduce a tal fin en una primera etapa del procedimiento 20, durante la entrada de un ángulo de giro \beta o bien en la presencia de un ángulo de giro \beta modificado, el cálculo de los nuevos puntos de la imagen de destino y se coloca un parámetro i a cero. En el bucle formado por la segunda etapa del procedimiento 21 y la etapa de decisión 29 se llaman los puntos de la imagen de destino Zi con _{i} = 1 a n con sus coordenadas x e y de una manera sucesivas y a continuación se giran en una tercera etapa del procedimiento 22 por medio de una matriz de rotación R_{-}_{\beta} en la medida del ángulo de giro negativo -\beta. De esta manera, se calculan las coordenadas x e y del punto de la imagen fuente Q_{i}. En la etapa de decisión 23 se verifica a continuación si el punto de la imagen fuente calculado se encuentra en la imagen del objeto OB. La imagen del objeto rectangular OB mostrada en la figura 1 se establece con facilidad a través de las coordenadas-x, y mínimas y máximas, de manera que para esta comparación solamente hay que comparar las coordenadas x e y del punto de la imagen fuente Q_{i} calculada con estos valores. En el caso de que el punto de la imagen fuente Q_{i} no se encuentre en la imagen objeto OB, no se representa. A tal fin, en la representación con valor de transparencia, éste se coloca en cero de acuerdo con la etapa 24, de manera que el punto de la imagen de destino Zi correspondiente no se reconoce en la pantalla LCD 2. A continuación se termina en las etapas 29, 30 y 21 el procedimiento o se toma el punto siguiente de la imagen de destino Z _{i+1}.
En el caso de que en la etapa de decisión 23 se determine que el punto de la imagen fuente Q_{i} se encuentra en la imagen del objeto OB, se verifica en primer lugar en la etapa de decisión 25 siguiente si el punto de la imagen fuente Q_{i} calculado cae exactamente en un punto de la imagen del objeto O_{k} previamente memorizado, es decir, si coincide en sus coordenadas x e y con este punto. En este caso, en la etapa 26 se utilizan directamente los datos de los puntos de la imagen R_{k}, G_{k}, B_{k}, \alpha_{k} del punto de la imagen del objeto Ok como datos de los puntos de la imagen R_{k}, G_{k}, B_{k}, \alpha_{k} del punto de la imagen de destino Z_{i} respectivo y en las etapas 21, 29 se utiliza de nuevo el punto de la imagen de destino Z _{i+1} siguiente ose termina el procedimiento. En cambio, en el caso de que el punto de la imagen fuente Qi se encuentre entre los puntos de la imagen del objeto predeterminados, se calculan en la etapa 27 en primer lugar los puntos de la imagen del objeto adyacentes -designados para mayor claridad como O_{1}, O_{2}, O_{3}, O_{4} conocidos-. En la etapa 28 se interpolan los datos de los puntos de la imagen R_{k}, G_{k}, B_{k}, \alpha_{k} a partir de los datos de los puntos de la imagen correspondientes de estos puntos de la imagen del objeto adyacentes.
Esto se muestra en detalle en la figura 6. Las coordenadas x e y de los puntos de la imagen del objeto O_{1}, O_{2}, O_{3}, O_{4} adyacentes se obtienen, por lo tanto, como valor entero de x_{i}, y_{i} o valor incrementado a tal fin.
El promedio se puede realizar linealmente de acuerdo con la invención, ponderando los datos de los puntos de la imagen del objeto de acuerdo con la distancia respectiva a los puntos de la imagen del objeto respectivos. En este caso, especialmente en lugar de la distancia geométrica, a calcular euclidianamente, se puede llevar a cabo un promedio lineal separado sencillo sobre las coordenadas X e Y. De esta manera, para la línea inferior de los puntos de la imagen del objeto O1 y O4 se puede llevar a cabo un promedio lineal en función de la distancia de las coordenadas x, en el que, por lo tanto, se multiplican los datos de O_{1} por el factor (1-(xi - int (xi))) (es decir, la distancia entre xi y el ponto O_{4} opuesto) y de una manera correspondiente los datos de O_{4} por el factor (xi - int (xi)) y a continuación se suman. A continuación se realiza un promedio lineal correspondiente de los datos de los puntos de la imagen de la línea superior con los puntos de la imagen del objeto O_{2} y O_{3}, y a partir de los valores calculados de esta manera de la línea superior y de la línea inferior se calcula un valor promedio correspondiente sobre las coordenadas y, en el que se multiplica el valor de la línea inferior (1-(yi - int (yl))) y el valor de la línea superior por la distancia con respecto a la línea inferior, es decir, el factor (yi - int (yi)) y a continuación se suman. A este respecto, un promedio lineal de este tipo obtiene un alisamiento de los cantos (antialiasing) aplicado en la generación de los puntos de la imagen del objeto previamente memorizados, de manera que de acuerdo con la invención no es necesario un filtrado posterior.
Después de que los datos de los puntos de la imagen R_{k}, G_{k}, B_{k}, \alpha_{k} calculados han sido asociados al punto de la imagen de destino Z_{i}, se utiliza en la etapa 21 de nuevo el siguiente punto de la imagen de destino Z _{i+1}.
En el dispositivo de acuerdo con la invención para el procedimiento de la figura 2 se introduce, de acuerdo con la figura 3 de una instalación de rotación 10, un ángulo de giro \beta. De una manera más ventajosa, a tal fin se divide por el ordenador intercalado ya el valor del seno y el valor del coseno que son necesarios para la matriz de rotación. La instalación de rotación 10 recibe de una manera sucesiva el número de las líneas y el número de las columnas de cada punto de la imagen de destino Z_{i}, por ejemplo a partir de una memoria de coordenadas 9 como coordenadas de número entero, calcula los puntos de la imagen fuente Q_{i} (etapa 22 en la figura 2) y los transmite a una primera instalación de comparación 11, que compara las coordenadas del punto de la imagen fuente Q_{i} (de acuerdo con la etapa 23) con las coordenadas de los puntos A, C, D, E, que ha recibido, por ejemplo, a partir de una memoria de la imagen del objeto 8 o que ha memorizado como valores mínimos y máximos. La instalación de comparación 11 verifica si el punto de la imagen fuente calculado Qi se encuentra en la imagen del objeto OB. Si éste es el caso, se transmiten las coordenadas del punto de la imagen fuente Qi a una instalación de interpolación 12, en la que, de acuerdo con las etapas 25, 26, 27 y 28, se calculan los datos del punto de la imagen de destino Z_{i} a partir de los datos correspondientes de los puntos de la imagen del objeto O_{i} memorizados en la memoria de la imagen del objeto 8, siendo recibido a continuación por la instalación de rotación 10 el siguiente punto de la imagen de destino Z _{i+1}. Los datos R, G, B, \alpha calculados de los puntos de la imagen de destino Zi son alimentados a una memoria intermedia de imágenes (frame buffer) 13 para la representación en la instalación de representación 1.
Para un puntero con 300 x 50 puntos de la imagen con una anchura de datos de un byte, respectivamente, solamente se necesita para cada color básico R, B, G así como para la transparencia \alpha una memoria de la imagen del objeto 8 con un espacio de memoria de 60 kByte. El ángulo de giro mínimo posible depende solamente de la exactitud del cálculo del algoritmo de giro o bien de la instalación de rotación 10. Para una rotación de un punto de la imagen de destino Zi a través de la multiplicación por 2 x 2 - matriz de rotación R, solamente hay que realizar cuatro multiplicaciones y dos adiciones. En la etapa 23 deben realizarse para cada punto de la imagen de destino i = 1 a n en cada caso cuatro comparaciones de sus coordenadas con valores mínimos y máximos. En el cálculo de los datos de los puntos de la imagen de acuerdo con las etapas 24, 25, 26, 27 deben realizarse en el caso máximo -cuando no debe cumplirse nunca la condición de la etapa 23- seis multiplicaciones, seis adiciones y tres desviaciones para n puntos de la imagen de destino.
En la forma de realización mostrada en las figuras 4 y 5 no se calculan para todos los puntos de la imagen de destino Zi a través de la rotación inversa los puntos de la imagen del objeto O_{i} correspondientes, sino que se lleva a cabo en primer lugar para la reducción del gasto de cálculo una selección previa adecuada de los puntos relevantes de la imagen de destino. A tal fin, de acuerdo con la figura 4, se calculan a partir de la primera etapa del procedimiento 50 con la inscripción y, dado el caso, la comparación del ángulo de giro \beta, en la segunda etapa del procedimiento 51, en primer lugar las coordenadas de los puntos de la imagen del objeto A, C, D, E giradas en la medida del ángulo de giro \beta. De esta manera, se calculan los puntos angulares correspondientes de la imagen de destino ZB. A continuación se leen en el bucle formado a través de las etapas 52, 60, 61 de una manera sucesiva los puntos de la imagen de destino Z_{i}, i = 1 a n con su número de columnas y su número de líneas como coordenadas x e y a partir de la memoria de las coordenadas 9 y a continuación se verifica en la etapa 53 si se encuentran en la imagen de destino ZB. En el caso de que no se encuentren en ZB, se coloca en la etapa 54 el valor de la transparencia en cero (de una manera alternativa a ello se pueden adaptar, también en esta forma de realización, de nuevo los valores del color al fondo); en el caso de que se encuentren en ZB, se calculan los datos en las etapas 55, 56, 57, 58 y 59 de acuerdo con las etapas 22 y 25 a 28 descritas anteriormente.
De una manera correspondiente, la instalación de rotación 10 en la figura 5 recibe en primer lugar las coordenadas de los puntos de la imagen del objeto A, C, D, E desde la memoria de la imagen del objeto 8 y emite de una manera correspondiente a través de la rotación en la medida de \beta los valores promediados a una segunda instalación de comparación 61 para la realización de la etapa de decisión 53 respectiva. La segunda instalación de comparación 61 o bien coloca los datos en cero y los transmite directamente a la memoria intermedia 13 o provoca una rotación del punto de la imagen de destino a través de la instalación de rotación 10 y la transmisión de los puntos de la imagen fuente calculados a la instalación de interpolación 12 para la realización de las etapas 56 a 59 y la emisión de los datos calculados a la memoria de la imagen intermedia 13.
La instalación de interpolación puede estar realizada en todas las formas de realización total o parcialmente como circuito ASIC. La memoria de la imagen del objeto 8 puede estar configurada especialmente como memoria no volátil y la memoria intermedia 13 puede estar configurada como memoria volátil. Las instalaciones 11, 12 y 61 pueden estar realizadas con hardware o se pueden ejecutar como instalaciones de software.
De acuerdo con la forma de realización mostrada en las figuras 7 a 11, la imagen del objeto OB puede ser subdividida también en varios segmentos del objeto OS1 - OS9, que pueden tener diferentes tamaños y formas. Para un procesamiento de los píxeles orientado a las líneas, los segmentos del objeto OS1 a OS9 forman en este caso rectángulos alineados horizontales/verticales, cuyos cuatro puntos angulares de los segmentos del objeto -en la figura 7 se muestran los puntos angulares de los segmentos del objeto OE 1, 2, 3, 4 del primer segmento del objeto OS1- presentan las coordenadas x e y mínimas y máximas de los puntos de la imagen del objeto detectados. La segmentación se puede llevar a cabo de acuerdo con criterios diferentes; de una manera más ventajosa, el tamaño de los segmentos corresponde al tamaño de una memoria de entrada 77, descrita con más detalle con referencia a las figuras 9 y 10, de un controlador gráfico 72, de manera que el número de los segmentos depende del tamaño de la imagen
fuente.
Los segmentos del objeto OS1 - OS9 son transformados de forma separada. A tal fin, se forman en primer lugar para cada segmento del objeto a través de transformación de los puntos angulares de los segmentos del objeto OE 1, 2, 3, 4 los puntos angulares de los segmentos de destino ZE 1, 2, 3, 4. Los segmentos de destino ZS1 - ZS9 formados a través de transformación -para mayor simplicidad se muestra una rotación sin indicación de una escala- de los segmentos individuales del objeto se encuentran, en general, de acuerdo con la figura 8 bajo un ángulo con respecto al eje-x y, por lo tanto, no son adecuados para un procesamiento de los píxeles orientado a las líneas.
Por lo tanto, de acuerdo con una forma de realización, se pueden fijar los parámetros en primer lugar de los bordes o bien de las zonas de los bordes, por ejemplo se pueden fijar los parámetros linealmente, colocando rectas lineales -se muestra en la figura 8 a modo de ejemplo la recta lineal ZR12 entre Z1 y Z2- a través de los puntos angulares de los segmentos de destino y se calculan los puntos de la imagen que se encuentran dentro de los bordes.
De acuerdo con una forma de realización alternativa, se forma para cada segmento de destino ZD1 - ZS9 una zona de segmentos de destino ZSB1 a ZSB8 rectangular, alineada horizontal/vertical y que al segmento de destino. Las zonas de segmentos de destino ZSB1 a ZSB8 se calculan -como se describe con detalle en la forma de realización anterior- píxel por píxel o bien punto por punto de la imagen de destino, siendo calculados para cada punto de la imagen de destino a través de transformación inversa -es decir, a través de rotación inversa- los datos de los puntos de la imagen del objeto. Puesto que las zonas de segmentos de destino se interfieren, en general, o bien se llevan a cabo en este caso varias veces los cálculos para algunos puntos e la imagen de destino o se coloca un registro con los puntos de la imagen de destino ya calculados; el gasto necesario a este respecto para comparar las coordenadas de cada punto de la imagen de destino con las entradas del registro, no es, sin embargo, en general, demasiado alto.
Esta forma de realización con una imagen del objeto segmentada conduce especialmente en el caso de una rotación de imágenes del objeto alargadas estrechas -por ejemplo punteros- a una reducción considerable del gasto de cálculo, puesto que sin segmentación, también en el caso de limitación de la zona de destino a través de la transformación de los puntos angulares, se forma, en general, una zona de destino muy grande, que contiene muchos puntos de la imagen de destino, para los que no se calculan puntos de la imagen fuente. Si se adapta el tamaño del segmento al tamaño de la memoria de entrada 77 del controlador gráfico, especialmente de una memoria Cache de entrada 77 con tiempo de acceso rápido, se puede conseguir un procesamiento rápido de la imagen a través de un cálculo siguiente realizado con hardware de la transformación inversa, como se muestra a continuación.
De acuerdo con la figura 9, un sistema de bus 69 conecta un microprocesador 70, una memoria de trabajo (RAM) 73, una memoria del programa 74 (por ejemplo, una Flash-ROM) y el controlador gráfico 72. En la memoria del programa 74 se memoriza, además del software del procedimiento, también la imagen del objeto OB como mapa de píxeles. El controlador gráfico 72 presenta una instalación de filtro 76 para el cálculo de la transformación y la transformación inversa así como una interpolación para el cálculo de los datos de los puntos de destino a partir de los datos de los puntos del objeto y como zonas de la memoria RAM presenta una memoria Cache de entrada 77, una memoria Cache de salida 79 y una memoria FIFO de parámetros 75 con una característica de primero en entrar, rimero en salir. La instalación de filtro 76 puede corresponder de esta manera a la instalación de rotación 10 y a la instalación de interpolación 12 de la primera forma de realización.
El modo de trabajo de la instalación mostrada en la figura 9 se explica en el ejemplo de la rotación del puntero de la figura 7 a la figura 8 con la representación de la figura 10 y el diagrama de flujo descrito en la figura 11. Después del comienzo en la etapa 80, el microprocesador 70 calcula en la etapa 81 los segmentos del objeto OS1 a 9 de la imagen del objeto OB a girar y a escalar y con la ayuda de los parámetros regulables del ángulo de giro, factor de escala X y factor de escala Y se calculan las zonas de los segmentos de destino ZSB1 a 8 resultantes circundantes. En la etapa 82 se carga el primer segmento del objeto OS1 a partir de la memoria del programa 74 en la memoria Cache de entrada 77. Para la reducción del tiempo de acceso, se pueden cargar los segmentos del objeto también en cada caso previamente desde la memoria del programa 74 en la memoria de trabajo 73 y en la etapa 82 se cargan en cada caso desde la memoria de trabajo 73 en la memoria Cache de entrada 77.
En la etapa 83 se calculan por el microprocesador 70 para cada punto de la imagen del segmento de destino ZS1 o de la zona de segmentos de destino ZSB1 los datos de los puntos de la imagen de destino E, G, B, alfa. A tal fin se calculan en primer lugar parámetros para la instalación de filtro 76 y se memorizan en la memoria FIFO de parámetros 75. La instalación de filtro 76 toma los parámetros a partir de la memoria FIFO de parámetros, calcula los puntos de la imagen (píxeles) del segmento de la imagen de destino ZSB1 utilizando el segmento del objeto OS1 a partir de la memoria Cache de entrada 77 y los memoriza en la memoria Cache de salida 79. En la etapa 84 se transfieren los datos de los puntos de la imagen de desatino desde la memoria Cache de entrada 79 a la memoria de repetición de la imagen 78 (Frame Buffer). Estas etapas se llevan a cabo de acuerdo con las etapas 85, 86 para todos los puntos de la imagen de destino de todos los segmentos del objeto. Después de la realización de estos bucles, la imagen de destino está cargada en la memoria de repetición de la imagen 78 para ser representada -con otras representaciones- en la instalación de representación 1.
Para un dimensionado bueno con costes relativamente reducidos, la memoria Cache de entrada, la memoria Cache de salida y la memoria FIFO de los parámetros son realizadas lo más pequeñas posible. La memoria Cache de entrada 77 determina en este caso el tamaño de los segmentos del objeto y presenta, por ejemplo, 64 x 64 píxeles con 4 bytes por píxel y, por lo tanto, 16 Kbytes. La memoria Cache de salida 79 puede comprender, por ejemplo, una línea del segmento de destino (o de la zona de los segmentos de destino) y puede estar dimensionada, por ejemplo, a través del producto del tamaño de las células de la memoria Cache de entrada x el factor de escala máximo x 4 Bytes/píxel = 64 x 4 x 4 = 1 Kbyte. El tamaño de la memoria FIFO de parámetros 75 se adapta de una manera más ventajosa a los parámetros necesarios para el cálculo de una línea de salida, es decir, en el ejemplo descrito anteriormente con cuatro parámetros por píxel a través del producto del tamaño de las líneas de la memoria Cache de salida x el factor de escala x parámetros/píxel = 64 x 4 x 4 = 1 Kbyte. La instalación de filtro 76 del controlador gráfico 72 es una reproducción del hardware de la transformación o bien de la transformación inversa, especialmente de una transformación que comprende una rotación y/o una escala, pero también una transformación más compleja. La especificación de cálculo se aplica fijamente en el hardware, con el fin de conseguir una velocidad máxima del procesamiento. En el ejemplo indicado anteriormente de la rotación del puntero, se puede utilizar a tal fin, por ejemplo, un filtrado bilineal de cuatro píxeles con dos factores de ponderación. El microprocesador 70 con la memoria del programa 74 asume el control de la ejecución de la rotación/escala y el cálculo de las coordenadas necesarias, que se depositan en la memoria FIFO de parámetros 75, por ejemplo la división de la imagen del objeto o bien del fichero de píxeles de la imagen del objeto en uno o varios segmentos, el inicio de la carga de los segmentos individuales en la memoria Cache de entrada, el cálculo de las direcciones de los píxeles de la imagen de destino, el cálculo de los píxeles de la imagen del objeto, que se utilizan para la interpolación de los datos de los puntos de la imagen de destino, el cálculo de los factores de ponderación o bien de los factores de filtro para cada punto de la imagen de destino, la escritura de los parámetros de filtro en la memoria FIFO de parámetros y el inicio de la escritura de la memoria Cache de salida en la memoria de trabajo/memoria de reproducción de la imagen.
De acuerdo con una forma de realización, el microprocesador 70 puede estar configurado en el mismo chip que el controlador gráfico 72 incluyendo o excluyendo la memoria Cache de entrada 77 y la memoria Cache de salida 79.
De acuerdo con una forma de realización alternativa a este respecto, la memoria Cache de entrada 77 está realizada como memoria doble. En esta forma de realización, se puede recargar durante el cálculo de un segmento del objeto cargado en la instalación de filtro ya el siguiente segmento del objeto en la parte libre de la memoria Cache de entrada 77.
De acuerdo con otra forma de realización, la memoria Cache de salida 79 está realizada como memoria doble. En esta forma de realización, mientras el controlador gráfico 72 copia la memoria Cache de salida 79 en la memoria de repetición de la imagen 78, se calcula en la instalación de filtro 76 los siguientes puntos de la imagen y se depositan en la parte libre de la memoria Cache de salida 79.
La imagen del objeto OB puede ser segmentada por el controlador gráfico 72 antes de la transformación o puede ser memorizada ya segmentada en la memoria del programa 74, especialmente en el caso de configuración como Flash-ROM.
De acuerdo con una forma de realización, la instalación de filtro puede calcular los datos de los puntos de la imagen de destino con factores de ponderación constantes que no debe ser transmitidos, por lo tanto, por el microprocesador, o se pueden calcular los factores de ponderación a partir de la indicación de los puntos de la imagen del objeto y de los puntos de la imagen de destino. Además, es posible también la transmisión de una sola dirección de los puntos de la imagen del objeto por cada punto de la imagen de destino a la instalación de filtro, después de lo cual se calculan otras direcciones de los puntos de la imagen del objeto de una manera sucesiva a partir de esta dirección de los puntos de la imagen del objeto.
Además, se puede iniciar la escritura de la memoria de salida en la memoria de repetición de la imagen de una manera alternativa a la forma de realización anterior también desde la instalación de filtro.
En todas las formas de realización se pueden soportar diferentes formatos de datos del fichero de píxeles de los puntos de la imagen del objeto, por ejemplo 8 Bit Alpha y 8 Bit Index y 256 Palettenpixel, 8 Bit Index y 8 Bit Alpha y 356 Palettenpixel, 8 Bit Rot y 8 Bit Grün y 8 Bit Blau y 8 Bit Alpha. De una manera alternativa a la representación de 8 bits de los colores y de los valores Alpha, son concebibles también formatos de datos con más o menos bits, como por ejemplo 5 Bit Rot y 6 Bit Grün y 5 Bit Blau.

Claims (15)

1. Procedimiento para la transformación de una imagen de un objeto (OB), especialmente para una representación en una instalación de representación (1) con una disposición en forma de matriz de puntos de la imagen de destino (Z_{i}), en el que para al menos una parte de los puntos de la imagen de destino (Z_{i}) se calculan, a través de una transformación inversa, puntos de la imagen fuente (Q_{i} (-\beta)), se comparan los puntos de la imagen fuente (Q_{i} (-\beta)) con puntos de la imagen del objeto (O_{k}) previamente memorizados y a partir de esta comparación se calculan datos de los puntos de la imagen de destino (R_{j}, G_{j}, B_{i}, \alpha_{i}) de los puntos de la imagen de destino (Z_{i}), comprendiendo los datos de los puntos de la imagen de destino y los datos de los puntos de la imagen del objeto en cada caso valores de colores básicos (R, G, B) y un valor de transparencia (\alpha) y en el cálculo de los datos de los puntos de la imagen de destino se verifica para cada punto de la imagen fuente en una etapa de decisión si cae exactamente sobre un punto de la imagen del objeto, y en el caso de que el punto de la imagen fuente coincida con un punto de la imagen del objeto, se toman los datos de los puntos de la imagen del objeto respectivos como datos de los puntos de la imagen de destino, y en el caso de que el punto de la imagen fuente no coincida con ninguno de los puntos de la imagen del objeto, se calculan los datos de los puntos de la imagen de destino a partir de los datos de los puntos de la imagen del objeto, de tal manera que los datos de los puntos de la imagen de destino son calculados a través de una interpolación lineal a partir de los datos de los puntos de la imagen del objeto adyacentes, siendo ponderados los datos de los puntos de la imagen del objeto de acuerdo con la distancia respectiva a los puntos de la imagen del objeto respectivos.
2. Procedimiento de acuerdo con la reivindicación 1, caracterizado porque los puntos de la imagen del objeto (O_{k}) son memorizados con los datos de los puntos de la imagen del objeto en el formato de mapa de píxeles, y los datos de los puntos de la imagen de destino son calculados en el formado de mapa de píxeles.
3. Procedimiento de acuerdo con la reivindicación 1 ó 2, caracterizado porque la transformación comprende una rotación alrededor de un ángulo de giro (\beta) y/o una escala con factores de escala y/o una traslación, y la transformación inversa comprende una rotación alrededor del ángulo de giro negativo (-\beta) y/o una escala con los valores recíprocos de los factores de escala y/o una traslación.
4. Procedimiento de acuerdo con una de las reivindicaciones anteriores, caracterizado porque durante la comparación de los puntos de la imagen fuente con los puntos de la imagen del objeto se calcula en primer lugar si los puntos de la imagen fuente caen en la imagen del objeto (OB), siendo calculados datos de los puntos de la imagen de destino para los puntos de la imagen fuente, que caen en la imagen del objeto, y no siendo calculados datos de los puntos de la imagen de destino para los puntos de la imagen fuente, que no caen en la imagen del objeto.
5. Procedimiento de acuerdo con una de las reivindicaciones anteriores, caracterizado porque los puntos de la imagen del objeto son memorizados con una resolución más alta que los puntos de la imagen de destino.
6. Procedimiento de acuerdo con una de las reivindicaciones anteriores, caracterizado porque se calcula en primer lugar una zona de la imagen de destino (ZB) a través de la transformación de algunos puntos de la imagen del objeto (A, C, D, E) con preferencia de puntos de la imagen del objeto con coordenadas mínimas y máximas, y se calcula qué puntos de la imagen de destino (Z_{i}) se encuentran en la imagen de destino (ZB) y para los puntos de la imagen de destino que están fuera de la imagen de destino (ZB) no se lleva a cabo ningún cálculo de los puntos de la imagen fuente.
7. Procedimiento de acuerdo con la reivindicación 6, caracterizado porque la imagen del objeto está subdividida en varios segmentos del objeto (OS1-9), siendo calculado para cada segmento del objeto a través de la transformación de al menos algunos de sus puntos de la imagen del objeto, con preferencia de los puntos de la imagen del objeto con coordenadas mínimas y máximas, un segmento de destino (ZS1-9) o una zona de segmentos de destino (ZSB1-9) que comprende la imagen de destino, y siendo realizada la reunión de los segmentos de destino (ZS1-9) o de la zona de segmentos de destino (ZSB1-9) como imagen de destino.
8. Procedimiento de acuerdo con la reivindicación 7, caracterizado porque se calculan zonas de segmentos de destino (ZSB1-9), siendo seleccionados como las zonas de segmentos de destino (ZSB1-9) unos rectángulos con alineación horizontal y vertical de sus lados.
9. Procedimiento de acuerdo con la reivindicación 7, caracterizado porque se calculan las zonas de destino (ZS1.9), siendo seleccionados puntos de la imagen del objeto con coordenadas mínimas y máximas como puntos angulares de los segmentos del objeto (OE1, 2, 3, 4) y siendo transformados sobre puntos angulares de segmentos de destino (ZE1, 2, 3, 4), siendo fijados con parámetros los bordes (ZR12) de los segmentos de destino (ZS1-9), que se extienden a través de los puntos angulares de los segmentos de destino (Z1, 2, 3, 4), como rectas con preferencia lineales y siendo calculados los puntos de la imagen, que se encuentran dentro de los bordes de los segmentos de destino (ZS1-9), con preferencia incluyendo los puntos de la imagen que se encuentran sobre los bordes, como puntos de la imagen de destino del segmento de destino (ZS1-9).
10. Procedimiento de acuerdo con una de las reivindicaciones 7 a 9, caracterizado porque se calculan parámetros para la transformación y se memorizan en una memoria de parámetros, con preferencia en una memoria FIFO, se carga en cada caso un segmento del objeto en una memoria de entrada, con preferencia en una memoria Cache de entrada de una instalación de control gráfico, y se calcula para el segmento del objeto el segmento de destino o la zona de segmentos de destino, y se calculan para los puntos de la imagen de destino del segmento de destino o de la zona de segmentos de destino (ZSB1-9) los datos de los puntos de la imagen de destino a partir de los datos de los puntos de la imagen del objeto y a partir de los parámetros.
11. Procedimiento de acuerdo con la reivindicación 10, caracterizado porque la memoria de entrada (77) se utiliza como memoria doble, siendo leído al mismo tiempo un segmento del objeto por la instalación de filtro (76) a partir de la memoria de entrada (77) y siendo memorizado un segmento del objeto siguiente en la misma.
12. Procedimiento de acuerdo con una de las reivindicaciones 7 a 11, caracterizado porque los datos de los puntos de la imagen de destino calculados son memorizados temporalmente en una memoria de salida, con preferencia en una memoria Cache de salida (79) y son leídos desde la memoria de salida a una memoria de trabajo (73) o a una memoria de repetición de la imagen (78).
13. Procedimiento de acuerdo con la reivindicación 12, caracterizado porque la memoria de salida (79) se utiliza como memoria doble, siendo inscritos al mismo tiempo los datos de los puntos de la imagen de destino calculados en la memoria de salida y siendo emitidos los datos de los puntos de la imagen de destino memorizados temporalmente a partir de la memoria de salida en la memoria de trabajo o en la memoria de repetición de la imagen.
14. Procedimiento de acuerdo con una de las reivindicaciones 7 a 13, caracterizado porque la imagen del objeto (OB) subdividida en segmentos del objeto (OS), es memorizada en una memoria, con preferencia en una memoria de programa (74), por ejemplo una Flash-ROM, a partir de la cual se leen de forma sucesiva los segmentos del objeto.
15. Procedimiento de acuerdo con una de las reivindicaciones anteriores, caracterizado porque la imagen del objeto (OB) es leía a partir de una memoria de la imagen del objeto, con preferencia a partir de una memoria de programa (74), por ejemplo una Flash-ROM, es memorizada temporalmente en una memoria de trabajo (73) y es leída a partir de la memoria de trabajo (73) para la comparación con los puntos de la imagen fuente calculados.
ES02018869T 2001-09-07 2002-08-24 Procedimiento y dispositivo para la transformacion de una imagen de un objeto. Expired - Lifetime ES2275788T3 (es)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
DE10144045 2001-09-07
DE10144045 2001-09-07
DE10202602A DE10202602A1 (de) 2001-09-07 2002-01-24 Verfahren und Vorrichtung zur Transformation eines Objektbildes
DE10202602 2002-01-24

Publications (1)

Publication Number Publication Date
ES2275788T3 true ES2275788T3 (es) 2007-06-16

Family

ID=26010089

Family Applications (1)

Application Number Title Priority Date Filing Date
ES02018869T Expired - Lifetime ES2275788T3 (es) 2001-09-07 2002-08-24 Procedimiento y dispositivo para la transformacion de una imagen de un objeto.

Country Status (4)

Country Link
EP (1) EP1291820B1 (es)
JP (1) JP2003115049A (es)
DE (1) DE50208688D1 (es)
ES (1) ES2275788T3 (es)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112489157B (zh) * 2020-12-18 2024-03-19 广州视源电子科技股份有限公司 相框绘制方法、设备及存储介质

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5686960A (en) * 1992-01-14 1997-11-11 Michael Sussman Image input device having optical deflection elements for capturing multiple sub-images

Also Published As

Publication number Publication date
EP1291820A3 (de) 2004-02-25
EP1291820B1 (de) 2006-11-15
DE50208688D1 (de) 2006-12-28
EP1291820A2 (de) 2003-03-12
JP2003115049A (ja) 2003-04-18

Similar Documents

Publication Publication Date Title
US5434591A (en) Scrolling method and apparatus in which data being displayed is altered during scrolling
US4648049A (en) Rapid graphics bit mapping circuit and method
US4618991A (en) Processing method for the rotation of an image
EP0360155A2 (en) Image transformation method and device
US7215830B2 (en) Method and device for transforming an object image
US6437793B1 (en) System for rapidly performing scan conversion with anti-aliasing upon outline fonts and other graphic elements
JPS60231235A (ja) イメ−ジ処理システム
US7948494B2 (en) Character rendering device, display device, and printer
ES2275788T3 (es) Procedimiento y dispositivo para la transformacion de una imagen de un objeto.
JP3477666B2 (ja) 画像表示制御装置
US5053759A (en) Method of and apparatus for generating high-quality pattern
US7136068B1 (en) Texture cache for a computer graphics accelerator
US5732248A (en) Multistep vector generation for multiple frame buffer controllers
JPS60169897A (ja) デ−タ処理装置
JPH0661103B2 (ja) 回転図形生成装置
US5475809A (en) Method and apparatus for generating high-quality character pattern defined by edge lines
US5657436A (en) Preprocessing apparatus and method for line scan conversion in a computer graphics system
US5157766A (en) Boundary drawing and area filling logic for a display system
JPS63137378A (ja) グラフイツクス処理システム
JP3671744B2 (ja) 画像合成表示装置
JPH03198167A (ja) 二次元ビットマップ画像の変形方法および装置
RU2109350C1 (ru) Устройство отображения графической информации
US20070229509A1 (en) Graphic system, broken line texture image generation apparatus, and broken line texture image generation method
JPH1153573A (ja) 3次元画像処理装置及びビデオウィンドウ生成方法
JPH0428153Y2 (es)