EP1886274A1 - Integrated circuit with warping calculation unit - Google Patents

Integrated circuit with warping calculation unit

Info

Publication number
EP1886274A1
EP1886274A1 EP06763365A EP06763365A EP1886274A1 EP 1886274 A1 EP1886274 A1 EP 1886274A1 EP 06763365 A EP06763365 A EP 06763365A EP 06763365 A EP06763365 A EP 06763365A EP 1886274 A1 EP1886274 A1 EP 1886274A1
Authority
EP
European Patent Office
Prior art keywords
integrated circuit
warping
images
circuit according
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.)
Withdrawn
Application number
EP06763365A
Other languages
German (de)
French (fr)
Inventor
Roland Michael Frei
Holger Bellm
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.)
Toshiba Electronics Europe GmbH
Original Assignee
Toshiba Electronics Europe 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
Application filed by Toshiba Electronics Europe GmbH filed Critical Toshiba Electronics Europe GmbH
Publication of EP1886274A1 publication Critical patent/EP1886274A1/en
Withdrawn 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/18Image warping, e.g. rearranging pixels individually
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2200/00Indexing scheme for image data processing or generation, in general
    • G06T2200/28Indexing scheme for image data processing or generation, in general involving image processing hardware

Definitions

  • the invention relates to an integrated circuit for the electronic manipulation of images, a method for the electronic manipulation of images by means of warping, a system for the electronic manipulation of images comprising an integrated circuit and a use of the integrated circuit according to the invention.
  • a graphics card which includes a graphics chip that communicates via a bus system with a main processing unit (CPU) and the main memory of the computer or provided specifically for the graphics card memory.
  • CPU main processing unit
  • the warping of images is known. During warping, a given image is distorted by changing the position of the individual pixels, or a distorted image is equalized and corrected accordingly. First of all, an optical image has to be converted into an electronic image.
  • each pixel of the source image is assigned an exact screen position (x, y).
  • the screen position of each pixel is stored in an image memory area of a memory.
  • everyone is now warping Pixel of the source image according to a well-defined transformation rule to a new image position (x ', y') in the target image shifted.
  • the resulting target image is stored in a second memory area and / or displayed on a screen via a graphics card.
  • the following methods are typically used:
  • a filter method is used per image, which on the one hand takes into account the overlapping of pixels in reduced image areas and, on the other hand, by interpolation between target image points, which in expanded areas are no longer adjacent, new pixels calculated.
  • a possible application of this principle is a "head-up display" in a motor vehicle in which, for example, the instrument panel of the motor vehicle is projected via a projector on the windshield of the motor vehicle. So that a viewer, for example the driver of the motor vehicle, does not perceive the instrument panel distorted by the curved windshield, the electronically generated image of the instrument panel is previously distorted in such a way that it appears undistorted in reflection from the windshield.
  • the warping function i.
  • the curvature of the windshield must be taken into account.
  • the problem with such an application is that it depends on the viewing angle or the position of a viewer of the projected instrument panel, whether the image appears completely equalized or whether a complete equalization of the image has been calculated.
  • FPGA field programmable gate array
  • the object of the invention is to provide an integrated circuit for the electronic manipulation of images and a system for the electronic manipulation of images comprising an integrated circuit which has a high computing power a warp of Guaranteed real-time images while allowing low unit costs for the hardware.
  • the invention has for its object to propose a corresponding use of an integrated circuit according to the invention and a method for the electronic manipulation of images by means of warping, with which the previous disadvantages of the known applications are eliminated.
  • the above-mentioned object is achieved by an integrated circuit in that the integrated circuit comprises a main processor unit, a memory access control unit, a graphics output control unit and a warping calculation unit.
  • the main processing unit may calculate the source image independently of the warping calculation unit and store it in memory.
  • the memory access control unit ensures access to the memory area of at least one internal or external memory.
  • memory access controllers access memory provided by random access memory (RAM) memory modules. These are often arranged externally.
  • RAM random access memory
  • the memory may also be integrated in the integrated circuit, whereby the performance of the integrated circuit can be further increased.
  • the integration of at least one memory access control unit also provides access the individual units of the integrated circuit to the required memory area unified and accelerated accordingly. If only one memory access control unit is provided, the layout of the integrated circuit can be kept simple. On the other hand, if a plurality of memory access control units are provided, it is possible to parallelize and speed up the memory access.
  • the warping calculation unit then calculates the position of the target pixels in accordance with the transformation rules and, in the calculation, for example, accesses images calculated by the main processor unit.
  • the target images calculated by the warping calculation unit are transferred from the graphics output control unit to a display for display or to other image processing devices for further processing. Due to the parallel and independent calculation of the source and target images and the short signal paths in the integrated circuit according to the invention, a very high computing power is achieved, which in principle also allows the transformation rules of the warping time-dependent, so to calculate dynamically. Since the space requirement of the individual units can be optimally adapted to the tasks and optimized, the space requirement of the integrated circuit remains low overall. Thus, the circuit according to the invention is very well suited for mass production.
  • the integrated circuit is designed as a customer-specific integrated circuit (ASIC) or as an application-specific standard product (ASSP).
  • ASIC customer-specific integrated circuit
  • ASSP application-specific standard product
  • An ASIC has a fixed, application-specific functionality and is generally designed for an application.
  • An ASSP is an integrated circuit that is optimized for high volume production and can be used in a variety of applications. Both an ASIC and an ASSP are characterized by an optimized space requirement and an optimization with regard to process reliability during production.
  • the semiconductor substrate is at least partially made of silicon. It is conceivable, however, that the integrated circuit according to the invention is also produced on another semiconductor substrate, for example a III-V compound semiconductor substrate.
  • a main processor unit processing 64-bit instructions has the advantage over a main processor unit processing 32-bit instructions that within a 64-bit instruction a higher number of instructions or more complex instructions can be transferred to the main processor unit and a larger address space can be addressed.
  • a graphics input control unit is provided.
  • electronic images can be transferred directly to the integrated circuit according to the invention.
  • the processing speed of the integrated circuit can be further increased.
  • a video frame grabber unit is provided as a graphics input control unit, it is possible in a simple manner to process real-time pictures by the integrated circuit, in which an incoming data stream of video pictures is "decomposed" into individual pictures by the video frame grabber unit.
  • a performance gain is achieved.
  • a further improvement of the computing performance with regard to performing the warping of real-time images is, according to a next embodiment of the integrated circuit, achieved by providing a lookup matrix based warping calculation unit.
  • the use of a lookup matrix-based warping calculation unit results in particular in comparison with the other warping method a speed advantage in connection with the integrated circuit according to the invention.
  • the transformation rules are stored in a matrix, the lookup matrix.
  • the individual entries are successively separated from the warping Calculation unit read out and used.
  • a simultaneous, parallel and independent recalculation of the same or another lookup matrix is made possible by the main processor unit.
  • At least one warping calculation unit is used for the three primary colors, blue, green and red, each using a lookup matrix, it is possible to calculate the displacement of the target pixels for each color individually.
  • the three primary colors, blue, green and red each using a lookup matrix
  • Wavelength dependence of the dispersion of optical lenses are taken into account and a correspondingly accurate correction or distortion of the calculated image can be achieved.
  • Allows the memory access control unit direct memory access at least the
  • Main processor unit and the warping calculation unit to a storage area of at least one internal or external memory, a very fast calculation of the warping can be guaranteed.
  • the warping calculation unit communicates in the case without detours, i. without access to the main processor unit, with the memory. Further accelerated is the
  • Input image memory area a lookup matrix memory area, an output image memory area and / or a memory area of the main processor unit is addressable.
  • the calculation speed is additionally increased by providing a warping calculation unit enabling simultaneous or quasi-simultaneous access to the input picture memory area, the output picture memory area and / or the lookup matrix memory area.
  • a warping calculation unit enabling simultaneous or quasi-simultaneous access to the input picture memory area, the output picture memory area and / or the lookup matrix memory area.
  • simultaneous access the different memory areas are addressed in parallel.
  • the quasi-simultaneous access actually takes place sequentially at the memory level.
  • the access with regard to the latency times is optimized so that the data in the individual processing units are processed approximately parallel.
  • Such a warping calculation unit ensures that the image position of the new source pixel from the input image memory area and the corresponding warping function from the lookup matrix are read in at the same time or almost simultaneously and the previously calculated target pixel can be stored in the output image memory area.
  • At least one filter unit is provided for filtering the graphics output in order, for example, to take into account the overlapping of pixels in the case of shrinking image areas, but also the calculation of new pixels by interpolation between target pixels which are no longer adjacent in the case of expanded image areas after the transformation.
  • An integration of the filter unit in the integrated circuit provides an additional increase in computing power.
  • the filter unit is preferably designed as a pixel filter unit, wherein the filter parameters are stored in a programmable memory, in particular a RAM memory. This allows easy access by the main processor unit to calculate changed filter parameters.
  • the speed of the calculations of the main processor unit can, according to another embodiment of the integrated circuit according to the invention, be increased by the fact that the main processor unit has a floating-point calculation unit. This results in additional speed advantages, in particular in connection with a dynamic calculation of the transformation rules of warping.
  • the previously derived object is procedurally achieved in that in a method for manipulating images by warping, in which pixels of a source image are assigned to the pixels of a target image using transformation rules, the transformation rules for mapping the source pixels to the target pixels are calculated dynamically.
  • the transformation rules for mapping the source pixels to the target pixels are calculated dynamically.
  • the manipulation can take place images as a function of the position of the observer. For example, it is conceivable to recognize dynamic changes of the projection surface onto which a target image is projected and to adapt the transformation instructions do so that the image is not influenced by the changing projection surface and is displayed undistorted.
  • the viewing angle and / or the position of at least one observer of the target image is determined via measuring means and the transformation specifications are calculated dynamically at least as a function of the measured viewing angle and / or of the measured position of the observer.
  • the transformation specifications are calculated dynamically at least as a function of the measured viewing angle and / or of the measured position of the observer.
  • the electronic manipulation of the images takes place by means of warping based on a lookup matrix and the lookup matrix is calculated dynamically.
  • the look-up matrix which contains the transformation rules, must be recalculated at least once or twice a second to allow sufficient consideration for the viewer's movements.
  • a more frequent calculation is also conceivable.
  • a correspondingly fast calculation is made possible, for example, with the integrated circuit according to the invention.
  • a second lookup matrix is calculated during the calculation of the target image based on a first lookup matrix, the speed of the dynamic warping can be increased further, as there is no need to recalculate the lookup matrix.
  • the newly calculated and possibly previously stored memory in the memory can be used for warping.
  • the above-mentioned object is achieved by a system for the electronic manipulation of images comprising an integrated circuit according to the invention, means for converting optical images into electrical signals for transfer the integrated circuit and means for displaying an image provided by the graphics output control unit, solved.
  • a particularly advantageous embodiment of the system is achieved in that the system is designed as a head-up display or as a rearview camera display.
  • the system in particular if it is designed as a head-up disply or rearview camera diplay with a windshield as a display surface, can be advantageously developed that measuring means for detecting the viewing angle or the position of a viewer of the target image are provided and the target image at least dependent can be calculated from the measured angle and / or position of at least one observer.
  • measuring means for detecting the viewing angle or the position of a viewer of the target image are provided and the target image at least dependent can be calculated from the measured angle and / or position of at least one observer.
  • the position of the head of the observer can be accurately determined and tracked and the
  • Transformation rules of warping be dynamically adapted to the respective head position of at least one observer.
  • the above-mentioned object is achieved according to a fourth teaching of the present invention in that the integrated circuit according to the invention is used in a device for performing a warping, in particular a dynamic warping of images in real time.
  • a head-up display or a rearview camera display By using the integrated circuit in vehicles or motor vehicles, additional visual aids for the driver of a vehicle, for example a head-up display or a rearview camera display, can be provided in an economical manner be put.
  • a head-up display or a rearview camera display When used in motor vehicles in particular ensures the enormous computing power of the integrated circuit that even with rapid image changes or changes in the head position, the driver perceives no delays in the image structure of the applications.
  • Fig. 2 is a schematic representation of the architecture of an embodiment of the integrated circuit according to the invention.
  • Fig. 3 is a schematic data flow diagram of the embodiment of Fig. 2 of the integrated circuit according to the invention.
  • FIG. 1a represents the undistorted source image
  • FIG. 1b shows the target image in the form of a warped mesh after warping.
  • the source image in Fig. Ia consists of several, a grid forming lines, wherein at each crossing point of two straight lines, a pixel 1 is located.
  • the pixel 1 is associated with a precise image position by a coordinate pair (x, y), whereby the image position of the pixel is precisely defined.
  • each pixel 1 of the source image with the coordinates (x, y) is assigned a new pixel 1 'with the coordinates (x', y ') of the target image. This is done for all pixels of the source image, for the individual pixels z. T different calculation rules for determining the new image position of the pixel apply, as shown in FIG. 1.
  • warping By applying warping to a source image, not only undistorted images can be distorted, but in particular, warping can be used to correct for non-linear distortions of an image typically encountered with the use of optical lenses. As already explained in the introduction to the description, there are different ways to perform the warping.
  • An exemplary embodiment of the integrated circuit according to the invention is described below, which uses dynamic warping using a lookup matrix, representative of the remaining warping methods.
  • FIG. 2 schematically shows the architecture of an embodiment of the integrated circuit according to the invention, which is realized on a semiconductor substrate 2.
  • a main processor unit 3 a graphics input control unit 4, a graphics output control unit 5 and a warping calculation unit 6 are provided on the semiconductor substrate 2.
  • the graphics input control unit 4 is formed in the embodiment as a video frame grabber unit.
  • the video frame grabber unit 4 processes the images supplied by an image sensor or a camera 7. If the image sensor 7 delivers a data stream to video images, the video Frame grabber unit 4 the delivered image stream into individual images and stores them in memory 10 from. The individual images from the memory 10 are then recalculated by the warping calculation unit 6 and forwarded to the graphics output control unit 5 or stored again in the memory 10 for further processing.
  • the further processing can be done for example by the main processor unit 3.
  • the graphics output control unit 5 communicates, for example, with the image input 8 of a display and transfers the images calculated by the warping calculation unit 6 to the image input 8 of a display.
  • a further device for graphic processing of the revised images is provided at this point, which then further processes the images.
  • the warping calculation unit 6 uses a look-up matrix (not shown in FIG. 2) in the memory 10, which calculates the calculation rules for calculating the new image positions of the individual pixels of the video pixel.
  • Framegrabber unit 4 supplied source image in Matrizenform contains.
  • the main processor unit 3 To perform dynamic warping, for example, to accommodate a viewer's current head position, the values in the lookup matrix must be recalculated at least once to twice a second.
  • the required computing power can be achieved by the main processor unit 3 being able to recalculate the lookup matrix values in the memory 10, independently of the graphical revision of the source images, without the warping Calculation unit 6 is hindered.
  • the main processor unit 3 additionally comprises a floating-point calculation unit, not shown in FIG. 2, which increases the computing power of the main processor unit 3, in particular for graphical distortion calculations.
  • a memory access control unit 9 which coordinates the memory accesses to a memory 10 of the individual processing units of the integrated circuit (3 to 6).
  • a warping calculation unit 6 and the main processor unit 3 access a common main memory 10 after the unified memory
  • UMA UMA Architecture
  • a further increase in the data throughput results from the fact that the memory access control unit 9 enables direct access to the memory 10 by the individual processing units of the integrated circuit (3 to 6).
  • the process units are connected to the memory access control unit 9 via four buses 3a, 4a, 5a, 6a.
  • the memory access control unit 9 only communicates with the common memory 10 via a bus in this embodiment.
  • the memory 10 is generally designed as a random access module (RAM) memory. It is possible, however, the memory 10 is integrated in the integrated circuit. The computing power of the integrated circuit can thus be further increased.
  • RAM random access module
  • FIG. 3 The data flow between the exemplary embodiment of the integrated circuit on the semiconductor substrate 2 and the memory 10 is shown schematically in FIG. 3 in a data flow diagram.
  • the data flow diagram of FIG. 3 shows the memory 10, which is subdivided into different memory areas 12, 13, 14, 15.
  • the images obtained via the input 11 of the video frame grabber unit 4 are buffered in an input image memory area 12 of the memory 10.
  • the lookup matrix required for the warping is stored in a lookup matrix memory area 13 of the memory 10.
  • the images calculated by the warping calculation unit 6 are stored.
  • the warping calculation unit 6 accesses all three memory areas simultaneously or quasi-simultaneously in order to parallelize the steps for calculating the target image.
  • the graphics output control unit 5 now reads out the images stored in the output image memory area 14 and forwards them to a display, for example.
  • a display for example.
  • approximately 20 to 30 images per second must be calculated by the warping calculation unit 6 and transferred from the graphics output control unit 5, for example, to the graphic input 8 of a display.
  • the images may be filtered by an image not shown in FIG Filter unit, preferably pixel filter unit, carried out, wherein the filter unit may preferably be integrated in the integrated circuit according to the invention.
  • the filter unit may preferably be integrated in the integrated circuit according to the invention.
  • bilinear, bicubic or anisotropic filter units may be provided as possible filter units, with bilinear filtering requiring the lowest computing power and anisotropic filtering requiring the highest computing power.
  • the additional memory area 15 of the main processor unit 3 provided in the memory 10 is used to buffer the programs and data necessary for the dynamic calculation of the look-up matrix.
  • the main processor unit 3 calculates the lookup matrix independently of the calculation of the warping calculation unit 6 depending on the data existing in the work memory area 15.
  • the proposed integrated circuit can be used to achieve a particularly high performance with regard to the warping of real-time images.

Landscapes

  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Image Processing (AREA)
  • Semiconductor Integrated Circuits (AREA)

Abstract

The invention relates to an integrated circuit for the electronic manipulation of images, a method for the electronic manipulation of images by means of warping, a system for the electronic manipulation of images comprising an integrated circuit, and also a use of integrated circuit according to the invention. The object of providing an integrated circuit for the electronic manipulation of images and also a system for the electronic manipulation of images comprising an integrated circuit, which integrated circuit and which system ensure a high computing power with regard to a dynamic warping of real-time images and at the same enable low unit costs for the hardware, is achieved by virtue of the fact that the integrated circuit has a main processor unit (3), a memory access control unit (9), a graphics output control unit (5) and a warping calculation unit (6).

Description

Integrierte Schaltung mit Warping-Berechnungseinheit Integrated circuit with warping calculation unit
Die Erfindung betrifft eine integrierte Schaltung zur elektronischen Manipulation von Bildern, ein Verfahren zur elektronischen Manipulation von Bildern mittels Warping, ein System zur elektronischen Manipulation von Bildern umfassend eine integrierte Schaltung sowie eine Verwendung der erfindungsgemäßen, integrierten Schaltung.The invention relates to an integrated circuit for the electronic manipulation of images, a method for the electronic manipulation of images by means of warping, a system for the electronic manipulation of images comprising an integrated circuit and a use of the integrated circuit according to the invention.
Zur elektronischen Manipulation von Bildern werden in der Regel Computer eingesetzt. Die Ausgabe der Bildinformationen erfolgt meistens über eine Grafikkarte, welche einen Grafikchip umfasst, der über ein Bussystem mit einer Hauptprozessoreinheit (CPU) und dem Arbeitsspeicher des Computers oder einem eigens für die Grafikkarte vorgesehenen Arbeitsspeicher kommuniziert. Neben einer Vielzahl anderer Verfahren zur elektronischen Manipulation von Bildern ist das Warping von Bildern bekannt. Beim Warping wird ein gegebenes Bild durch Veränderung der Position der einzelnen Bildpunkte verzerrt oder ein verzerrtes Bild entsprechend entzerrt und damit korrigiert. Zunächst muss dazu ein optisches Bild in ein elektronisches Bild umgewandelt werden. Ausgehend beispielsweise von den elektronischen Signalen einer Videokamera oder digitalen Fotokamera, welche die Quellbilder in eine festgelegte Anzahl von Bildpunkten, den so genannten Pixeln, unterteilen, wird jedem Bildpunkt des Quellbildes eine genaue Bildschirmposition (x, y) zugeordnet. Die Bildschirmposition der einzelnen Bildpunkte werden in einem Bildspeicherbereich eines Speichers gespeichert. Beim Warping wird jetzt jeder Bildpunkt des Quellbildes gemäß einer genau definierten Transformationsvorschrift an eine neue Bildposition (x' , y' ) im Zielbild verschoben. Meistens wird das resultierende Zielbild in einem zweiten Speicherbereich abgespeichert und/oder über eine Grafikkarte auf einem Bildschirm dargestellt. Um die neuen Bildpositionen der Bildpunkte zu berechnen, werden typischerweise folgende Verfahren angewendet:For the electronic manipulation of images computers are usually used. The output of the image information is usually via a graphics card, which includes a graphics chip that communicates via a bus system with a main processing unit (CPU) and the main memory of the computer or provided specifically for the graphics card memory. In addition to a variety of other methods for the electronic manipulation of images, the warping of images is known. During warping, a given image is distorted by changing the position of the individual pixels, or a distorted image is equalized and corrected accordingly. First of all, an optical image has to be converted into an electronic image. Starting, for example, from the electronic signals of a video camera or digital still camera, which subdivide the source images into a defined number of pixels, the so-called pixels, each pixel of the source image is assigned an exact screen position (x, y). The screen position of each pixel is stored in an image memory area of a memory. Everyone is now warping Pixel of the source image according to a well-defined transformation rule to a new image position (x ', y') in the target image shifted. In most cases, the resulting target image is stored in a second memory area and / or displayed on a screen via a graphics card. In order to calculate the new image positions of the pixels, the following methods are typically used:
1. Verwendung einer zweidimensionalen (2D) oder einer 3D auf 2D projizierenden polynomialen Transformationsfunktion zur Berechnung des resultierenden Zielbildpunktes (x' , y' ) für jeden Quellbildpunkt (x, y) , wobei die Transformationsfunktion abhängig von der Bildposition des Quellbildpunktes (x, y) ist.1. Use of a two-dimensional (2D) or a 3D to 2D projecting polynomial transformation function for calculating the resulting target pixel (x ', y') for each source pixel (x, y), wherein the transformation function depending on the image position of the source pixel (x, y ).
2. Verwendung einer gespeicherten Lookup-Matrix, welche eine beliebige Transformationsvorschrift zu jedem Quellbildpunkt (x, y) als Matrix-eintrag enthält.2. Using a stored lookup matrix, which contains any transformation rule for each source pixel (x, y) as a matrix entry.
3. Verwendung eines Netzes aus Dreiecken, welches durch Abbilden von kleinen dreieckförmigen Quellbildpunktbereichen auf transformierte dreieckige Zielbildpunktbereiche die Abbildungsvorschrift der Quellbildpunkte (x, y) auf die Zielbildpunkte (x' , y' ) beschreibt.3. Use of a network of triangles which, by mapping small triangular source pixel regions onto transformed triangular target pixel regions, describes the mapping rule of the source pixels (x, y) to the target pixels (x ', y').
Pro Bild wird zusätzlich zu den drei oben genannten Verfahren zur Verbesserung der Qualität der manipulierten Bilder ein Filterverfahren angewendet, welches einerseits das Überlappen von Bildpunkten bei verkleinerten Bildbereichen berücksichtigt und andererseits durch Interpolation zwischen Zielbildpunkten, welche in expandierten Bereichen nicht mehr benachbart sind, neue Bildpunkte berechnet.In addition to the three above-mentioned methods for improving the quality of the manipulated images, a filter method is used per image, which on the one hand takes into account the overlapping of pixels in reduced image areas and, on the other hand, by interpolation between target image points, which in expanded areas are no longer adjacent, new pixels calculated.
Als Ergebnis des Warpings können Bilder, welche durch Linsen- oder Spiegeleffekte verzerrt worden sind, wieder korrigiert werden. Es ist aber auch möglich Bilder bewusst zu verzerren, um diese bei Projektion auf unebenen Flächen wieder „gerade" bzw. unverzerrt erscheinen zu lassen. Eine mögliche Anwendung dieses Prinzips stellt ein „Headup-Display" in einem Kraftfahrzeug dar, bei welchem beispielsweise die Instrumententafel des Kraftfahrzeuges über einen Projektor auf die Windschutzscheibe des Kraftfahrzeuges projiziert wird. Damit ein Betrachter, beispielsweise der Fahrer des Kraftfahrzeuges, die Instrumententafel durch die gekrümmte Windschutzscheibe nicht verzerrt wahrnimmt, wird das elektronisch erzeugte Bild der Instrumententafel vorher so verzerrt, dass es bei Reflektion von der Windschutzscheibe unverzerrt erscheint. In der Warping-Funktion, d.h. in der Abbildungsfunktion der Bildpunkte (x, y) auf die Zielbildpunktposition (x' , y' ) muss also die Krümmung der Windschutzscheibe berücksichtigt werden. Problematisch bei einer derartigen Anwendung ist, dass es von dem Blickwinkel oder der Position eines Betrachters der projizierten Instrumententafel abhängig ist, ob das Bild vollständig entzerrt erscheint bzw. ob eine vollständige Entzerrung des Bildes berechnet wurde.As a result of warping, images that have been distorted by lens or mirror effects can be corrected again. However, it is also possible to deliberately distort images in order to make them "straight" or undistorted when projected on uneven surfaces A possible application of this principle is a "head-up display" in a motor vehicle in which, for example, the instrument panel of the motor vehicle is projected via a projector on the windshield of the motor vehicle. So that a viewer, for example the driver of the motor vehicle, does not perceive the instrument panel distorted by the curved windshield, the electronically generated image of the instrument panel is previously distorted in such a way that it appears undistorted in reflection from the windshield. In the warping function, i. in the mapping function of the pixels (x, y) to the target pixel position (x ', y'), therefore, the curvature of the windshield must be taken into account. The problem with such an application is that it depends on the viewing angle or the position of a viewer of the projected instrument panel, whether the image appears completely equalized or whether a complete equalization of the image has been calculated.
Es wurden Untersuchungen mit konventionellen SD- beschleunigten Grafikkarten mit Standard PC-Ausstattung durchgeführt, welche ein Netz aus Dreiecken zur Definition einer zeitlich konstantenInvestigations were carried out with conventional SD accelerated graphics cards with standard PC equipment, which is a network of triangles to define a time constant
Transformationsvorschrift beim Warping verwenden. Diese Systeme erzielten trotz hohen Aufwandes hinsichtlich der - A -Use transformation rule during warping. These systems achieved despite high costs in terms of - A -
Hardware und der Leistungscharakteristik der Hardware nur relativ schlechte Leistungsergebnisse hinsichtlich eines Warpings von Echtzeitbildern.Hardware and the performance characteristics of the hardware only relatively poor performance results in terms of warping of real-time images.
Aufgrund des enormen Rechenaufwandes beim Warping wurden daher Versuche mit einem „Field Programmable Gate Array" (FPGA) durchgeführt. Ein FPGA weist eine Vielzahl frei programmierbarer, nicht spezialisierter Logikschaltkreise auf. FPGAs bieten die Möglichkeit, durch Programmierung der einzelnen Logikschaltkreise Funktionen im FPGA abzubilden und Informationen massiv parallel zu verarbeiten. FPGAs können damit bei relativ niedrigen Taktfrequenzen bereits gute Rechenleistung erzielen. Mit den FPGAs konnten zwar gute Resultate hinsichtlich des Warpings von Echtzeitbildern unter Verwendung von zeitlich konstanten Transformationsvorschriften erzielt werden, nachteilig bei den FPGAs ist jedoch deren hoher Flächenbedarf und der damit einhergehende Bedarf an Halbleitersubstrat. Hieraus resultiert ein relativ hoher Stückkostenpreis der FPGAs, der auch bei einer Massenproduktion nicht gesenkt werden kann. Die Verwendung von derart komplexen FPGAs in einem Massenprodukt des Consumer-Bereichs ist daher nicht vorteilhaft. Darüber hinaus konnten die aus den Anwendungen bekannten und beispielsweise aus einem veränderlichen Blickwinkel resultierende Probleme nicht zufrieden stellend gelöst werden.Due to the enormous amount of computation involved in warping, experiments have been carried out with a field programmable gate array (FPGA) FPGA has a large number of freely programmable, non-specialized logic circuits FPGAs offer the possibility to map functions in the FPGA by programming the individual logic circuits FPGAs have been able to achieve good results in terms of warping of real-time images using time-constant transformation rules, but the high area requirements and the FPGAs are disadvantageous for the FPGAs This results in a relatively high unit cost of the FPGAs, which can not be reduced even in a mass production The use of such complex FPGAs in a mass consumer product Chs is therefore not advantageous. In addition, the problems known from the applications and resulting, for example, from a variable perspective, could not be satisfactorily solved.
Von dem zuvor beschriebenen Stand der Technik ausgehend, liegt der Erfindung damit die Aufgabe zugrunde, eine integrierte Schaltung zur elektronischen Manipulation von Bildern sowie ein System zur elektronischen Manipulation von Bildern umfassend eine integrierte Schaltung zur Verfügung zu stellen, welche bzw. welches eine hohe Rechenleistung hinsichtlich eines Warpings von Echtzeitbildern gewährleistet und gleichzeitig geringe Stückkosten für die Hardware ermöglicht. Darüber hinaus liegt der Erfindung die Aufgabe zugrunde, eine entsprechende Verwendung einer erfindungsgemäßen, integrierten Schaltung und ein Verfahren zur elektronischen Manipulation von Bildern mittels Warping, mit welchem die bisherigen Nachteile der bekannten Anwendungen beseitigt werden, vorzuschlagen.Based on the prior art described above, the object of the invention is to provide an integrated circuit for the electronic manipulation of images and a system for the electronic manipulation of images comprising an integrated circuit which has a high computing power a warp of Guaranteed real-time images while allowing low unit costs for the hardware. In addition, the invention has for its object to propose a corresponding use of an integrated circuit according to the invention and a method for the electronic manipulation of images by means of warping, with which the previous disadvantages of the known applications are eliminated.
Gemäß einer ersten Lehre der vorliegenden Erfindung wird die oben aufgezeigte Aufgabe durch eine integrierte Schaltung dadurch gelöst, dass die integrierte Schaltung eine Hauptprozessoreinheit, eine Speicherzugriff- Kontrolleinheit, eine Grafikausgang-Kontrolleinheit und eine Warping-Berechnungseinheit aufweist.According to a first teaching of the present invention, the above-mentioned object is achieved by an integrated circuit in that the integrated circuit comprises a main processor unit, a memory access control unit, a graphics output control unit and a warping calculation unit.
Überraschenderweise konnte durch die Integration der verschiedenen Bearbeitungseinheiten der integrierten Schaltung ein enormer Leistungsgewinn bei gleichzeitig geringem Flächenbedarf an Halbleitersubstrat und damit geringen Herstellkosten erzielt werden. Die Hauptprozessoreinheit kann beispielsweise das Quellbild unabhängig von der Warping-Berechnungseinheit berechnen und dieses in einem Speicher ablegen. Hierzu dient die Speicherzugriff-Kontrolleinheit, welche den Zugriff auf den Speicherbereich mindestens eines internen oder externen Speichers gewährleistet. In der Regel greifen Speicherzugriff-Kontrolleinheiten auf Speicher zu, welcher durch RAM (Random Access Memory) -Speichermodule zur Verfügung gestellt wird. Diese sind häufig extern angeordnet. Der Speicher kann aber auch in die integrierte Schaltung integriert sein, wodurch die Leistung der integrierten Schaltung weiter gesteigert werden kann. Durch die Integration mindestens einer Speicherzugriff-Kontrolleinheit wird zudem der Zugriff der einzelnen Einheiten der integrierten Schaltung auf den benötigten Speicherbereich vereinheitlicht und entsprechend beschleunigt. Ist nur eine Speicherzugriff- Kontrolleinheit vorgesehen, kann das Layout der integrierten Schaltung einfach gehalten werden. Sind dagegen eine Mehrzahl an Speicherzugriff- Kontrolleinheiten vorgesehen, ist es möglich, den Speicherzugriff zu parallelisieren und zu beschleunigen.Surprisingly, by integrating the various processing units of the integrated circuit, it was possible to achieve an enormous increase in power while at the same time requiring a small amount of semiconductor substrate and hence low production costs. For example, the main processing unit may calculate the source image independently of the warping calculation unit and store it in memory. This is done by the memory access control unit, which ensures access to the memory area of at least one internal or external memory. Typically, memory access controllers access memory provided by random access memory (RAM) memory modules. These are often arranged externally. However, the memory may also be integrated in the integrated circuit, whereby the performance of the integrated circuit can be further increased. The integration of at least one memory access control unit also provides access the individual units of the integrated circuit to the required memory area unified and accelerated accordingly. If only one memory access control unit is provided, the layout of the integrated circuit can be kept simple. On the other hand, if a plurality of memory access control units are provided, it is possible to parallelize and speed up the memory access.
Die Warping-Berechnungseinheit berechnet dann entsprechend den Transformationsvorschriften die Position der Zielbildpunkte und greift bei der Berechnung beispielsweise auf von der Hauptprozessoreinheit berechnete Bilder zurück. Die von der Warping- Berechnungseinheit berechneten Zielbilder werden von der Grafikausgang-Kontrolleinheit an ein Display zur Darstellung oder an andere bildbearbeitende Vorrichtungen zur weiteren Bearbeitung übergeben. Aufgrund der parallelen und unabhängigen Berechnung der Quell- und Zielbilder sowie der kurzen Signalwege in der erfindungsgemäßen, integrierten Schaltung wird eine sehr hohe Rechenleistung erzielt, welche prinzipiell ermöglicht auch die Transformationsvorschriften des Warpings zeitabhängig, also dynamisch zu berechnen. Da der Flächenbedarf der einzelnen Einheiten optimal an die Aufgaben angepasst und optimiert werden kann, bleibt der Flächenbedarf der integrierten Schaltung insgesamt gering. Damit ist die erfindungsgemäße Schaltung sehr gut für die Massenproduktion geeignet.The warping calculation unit then calculates the position of the target pixels in accordance with the transformation rules and, in the calculation, for example, accesses images calculated by the main processor unit. The target images calculated by the warping calculation unit are transferred from the graphics output control unit to a display for display or to other image processing devices for further processing. Due to the parallel and independent calculation of the source and target images and the short signal paths in the integrated circuit according to the invention, a very high computing power is achieved, which in principle also allows the transformation rules of the warping time-dependent, so to calculate dynamically. Since the space requirement of the individual units can be optimally adapted to the tasks and optimized, the space requirement of the integrated circuit remains low overall. Thus, the circuit according to the invention is very well suited for mass production.
Gemäß einer weiteren vorteilhaften Ausgestaltung ist die integrierte Schaltung als eine kundenspezifische Integrierte Schaltung (ASIC) oder als ein applikationsspezifisches Standardprodukt (ASSP) ausgebildet. Ein ASIC weist eine fest vorgegebene, anwendungsspezifische Funktionalität auf und ist im Allgemeinen für eine Anwendung ausgelegt. Ein ASSP ist dagegen eine integrierte Schaltung, welche auf die Herstellung in großen Stückzahlen optimiert ist und in verschiedenen Anwendungen verwendet werden kann. Sowohl ein ASIC als auch ein ASSP zeichnet sich durch einen optimierten Flächenbedarf und einer Optimierung hinsichtlich der Prozesssicherheit bei der Herstellung aus .According to a further advantageous embodiment, the integrated circuit is designed as a customer-specific integrated circuit (ASIC) or as an application-specific standard product (ASSP). An ASIC has a fixed, application-specific functionality and is generally designed for an application. An ASSP, on the other hand, is an integrated circuit that is optimized for high volume production and can be used in a variety of applications. Both an ASIC and an ASSP are characterized by an optimized space requirement and an optimization with regard to process reliability during production.
Bereits langjährig erprobte Herstellungsprozesse mit einer hohen Ausbeute an Gutteilen können, gemäß einer nächsten vorteilhaften Ausführungsform der erfindungsgemäßen, integrierten Schaltung, dadurch verwendet werden, dass das Halbleitersubstrat zumindest teilweise aus Silizium besteht. Vorstellbar ist jedoch, dass die erfindungsgemäße integrierte Schaltung auch auf einem anderen Halbleitersubstrat, beispielsweise einem III-V-Mischungshalbleitersubstrat, hergestellt wird.Already many years of proven manufacturing processes with a high yield of good parts can, according to a next advantageous embodiment of the integrated circuit according to the invention, be used in that the semiconductor substrate is at least partially made of silicon. It is conceivable, however, that the integrated circuit according to the invention is also produced on another semiconductor substrate, for example a III-V compound semiconductor substrate.
Ist eine 32bit- und/oder 64bit-Befehle verarbeitende Hauptprozessoreinheit vorgesehen, kann auf bestehende Layouts für Hauptprozessoreinheiten zurückgegriffen werden, so dass die Herstellkosten der integrierten Schaltung weiter verringert werden. Eine 64bit-Befehle verarbeitende Hauptprozessoreinheit hat dabei gegenüber einer 32bit-Befehle verarbeitende Hauptprozessoreinheit den Vorteil, dass innerhalb eines 64bit-Befehls eine höhere Anzahl von Instruktionen bzw. komplexere Instruktionen an die Hauptprozessoreinheit übergeben werden können und ein größerer Adressraum adressierbar ist .If a 32-bit and / or 64-bit instructions processing main processor unit is provided, existing layouts for main processor units can be used, so that the manufacturing costs of the integrated circuit are further reduced. A main processor unit processing 64-bit instructions has the advantage over a main processor unit processing 32-bit instructions that within a 64-bit instruction a higher number of instructions or more complex instructions can be transferred to the main processor unit and a larger address space can be addressed.
Beim Warping wird die Leistungscharakteristik, gemäß einer nächsten weitergebildeten Ausführungsform der erfindungsgemäßen, integrierten Schaltung, dadurch verbessert, dass eine Grafikeingang-Kontrolleinheit vorgesehen ist. Durch die Integration der Grafikeingang- Kontrolleinheit können elektronische Bilder direkt an die erfindungsgemäße integrierte Schaltung übergeben werden. Dadurch, dass die Berechnung der Bilder durch die Hauptprozessoreinheit im wesentlichen entfällt, kann die Verarbeitungsgeschwindigkeit der integrierten Schaltung weiter erhöht werden.When warping, the performance characteristics, according to a next developed embodiment of the integrated circuit according to the invention, thereby improved, that a graphics input control unit is provided. By integrating the graphics input control unit, electronic images can be transferred directly to the integrated circuit according to the invention. By substantially eliminating the calculation of the images by the main processor unit, the processing speed of the integrated circuit can be further increased.
Ist als Grafikeingang-Kontrolleinheit eine Video- Framegrabber-Einheit vorgesehen, wird auf einfache Weise die Verarbeitung von Echtzeit-Bildern durch die integrierte Schaltung ermöglicht, in dem ein eingehender Datenstrom an Videobildern in einzelne Bilder durch die Video-Framegrabber-Einheit „zerlegt" und der Speicherzugriff-Kontrolleinheit übergeben wird. Andererseits wird aufgrund der Hardwareintegration der Video-Framegrabber-Einheit bei der Bereitstellung der Quellbilder für die Warping-Berechnungseinheit ein Performancegewinn erzielt.If a video frame grabber unit is provided as a graphics input control unit, it is possible in a simple manner to process real-time pictures by the integrated circuit, in which an incoming data stream of video pictures is "decomposed" into individual pictures by the video frame grabber unit On the other hand, due to the hardware integration of the video frame grabber unit in providing the source images to the warping calculation unit, a performance gain is achieved.
Eine weitere Verbesserung der Rechenleistung im Hinblick auf die Durchführung des Warpings von Echtzeitbildern wird, gemäß einer nächsten Ausführungsform der integrierten Schaltung, dadurch erreicht, dass eine Lookup-Matrix basierte Warping-Berechnungseinheit vorgesehen ist. Die Verwendung einer Lookup-Matrix basierten Warping-Berechnungseinheit ergibt insbesondere im Vergleich zu den übrigen Warping-Verfahren einen Geschwindigkeitsvorteil in Verbindung mit der erfindungsgemäßen, integrierten Schaltung. Wie bereits ausgeführt, sind die Transformationsvorschriften in einer Matrix, der Lookup-Matrix, gespeichert. Die einzelnen Einträge werden sukzessive von der Warping- Berechnungseinheit ausgelesen und verwendet. Eine gleichzeitige, parallele und unabhängige Neuberechnung der gleichen oder einer weiteren Lookup-Matrix wird durch die Hauptprozessoreinheit ermöglicht.A further improvement of the computing performance with regard to performing the warping of real-time images is, according to a next embodiment of the integrated circuit, achieved by providing a lookup matrix based warping calculation unit. The use of a lookup matrix-based warping calculation unit results in particular in comparison with the other warping method a speed advantage in connection with the integrated circuit according to the invention. As already stated, the transformation rules are stored in a matrix, the lookup matrix. The individual entries are successively separated from the warping Calculation unit read out and used. A simultaneous, parallel and independent recalculation of the same or another lookup matrix is made possible by the main processor unit.
Ist zumindest eine für die drei Grundfarben, Blau, Grün und Rot, jeweils eine Lookup-Matrix verwendende Warping- Berechnungseinheit vorgesehen, ist es möglich, die Verschiebung der Zielbildpunkte für jede Farbe einzeln zu berechnen. Damit kann beispielsweise dieIf at least one warping calculation unit is used for the three primary colors, blue, green and red, each using a lookup matrix, it is possible to calculate the displacement of the target pixels for each color individually. Thus, for example, the
Wellenlängenabhängigkeit der Dispersion optischer Linsen berücksichtigt werden und eine entsprechend exakte Korrektur oder Verzerrung des berechneten Bildes erzielt werden.Wavelength dependence of the dispersion of optical lenses are taken into account and a correspondingly accurate correction or distortion of the calculated image can be achieved.
Ermöglicht die Speicherzugriff-Kontrolleinheit einen direkten Speicherzugriff zumindest derAllows the memory access control unit direct memory access at least the
Hauptprozessoreinheit und der Warping-Berechnungseinheit auf einen Speicherbereich mindestens eines internen oder externen Speichers, kann eine sehr schnelle Berechnung des Warpings gewährleistet werden. Die Warping- Berechnungseinheit kommuniziert in dem Fall ohne Umwege, d.h. ohne Zugriff auf die Hauptprozessoreinheit, mit dem Speicher. Weiter beschleunigt wird dieMain processor unit and the warping calculation unit to a storage area of at least one internal or external memory, a very fast calculation of the warping can be guaranteed. The warping calculation unit communicates in the case without detours, i. without access to the main processor unit, with the memory. Further accelerated is the
Berechnungsgeschwindigkeit der integrierten Schaltung, wenn zusätzlich die Grafikeingang-Kontrolleinheit und/oder die Grafikausgang-Kontrolleinheit die Speicherbereiche direkt adressieren können. Greifen zumindest die Hauptprozessoreinheit und die Warping-Berechnungseinheit auf einen Speicherbereich eines gemeinsamen Hauptspeicher nach dem Unified-Memory- Architecture (UMA) -Prinzip zu, wird einerseits eine weitere Verbesserung der Leistung der integrierten Schaltung erzielt. Andererseits wird aufgrund des „Unified-Memory-Architecture" (UMA) -Prinzips das Schaltungslayout vereinfacht und die Anzahl der externen oder internen Speichereinheiten minimiert und damit die Herstellkosten reduziert.Computational speed of the integrated circuit, if in addition the graphics input control unit and / or the graphics output control unit can directly address the memory areas. If at least the main processor unit and the warping calculation unit access a memory area of a shared main memory according to the Unified Memory Architecture (UMA) principle, on the one hand a further improvement in the performance of the integrated circuit is achieved. On the other hand, due to the "Unified Memory Architecture" (UMA) principle, the Circuit layout simplified and the number of external or internal storage units minimized and thus reduces the manufacturing costs.
Besonders kurze Zugriffszeiten werden dadurch erzielt, dass über die Speicherzugriff-Kontrolleinheit in mindestens einem Speicher einParticularly short access times are achieved by using the memory access control unit in at least one memory
Eingangsbildspeicherbereich, ein Lookup-Matrix- Speicherbereich, ein Ausgangsbildspeicherbereich und/oder ein Arbeitsspeicherbereich der Hauptprozessoreinheit adressierbar ist.Input image memory area, a lookup matrix memory area, an output image memory area and / or a memory area of the main processor unit is addressable.
Gemäß einer weiteren, vorteilhaften Ausführungsform der erfindungsgemäßen, integrierten Schaltung wird die Berechnungsgeschwindigkeit zusätzlich dadurch gesteigert, dass eine einen simultanen oder quasi-simultanen Zugriff auf den Eingangsbildspeicherbereich, den Ausgangsbildspeicherbereich und/oder den Lookup- Matrixspeicherbereich ermöglichende Warping- Berechnungseinheit vorgesehen ist. Beim simultanen Zugriff werden die verschiedenen Speicherbereiche parallel angesprochen. Der quasi-simultane Zugriff erfolgt zwar auf der Speicherebene tatsächlich sequentiell. Allerdings ist der Zugriff hinsichtlich der Latenzzeiten so optimiert, dass die Daten in den einzelnen Bearbeitungseinheiten annähernd parallel verarbeitet werden. Eine derartige Warping- Berechnungseinheit gewährleistet, dass gleichzeitig bzw. nahezu gleichzeitig die Bildposition des neuen Quellbildpunktes aus dem Eingangsbildspeicherbereich sowie die entsprechende Warping-Funktion aus der Lookup- Matrix eingelesen werden und der zuvor berechnete Zielbildpunkt im Ausgangsbildspeicherbereich abgespeichert werden kann. Durch diese Maßnahme werden die Schritte zur Generierung des Zielbildes weiter parallelisiert .According to a further advantageous embodiment of the integrated circuit according to the invention, the calculation speed is additionally increased by providing a warping calculation unit enabling simultaneous or quasi-simultaneous access to the input picture memory area, the output picture memory area and / or the lookup matrix memory area. With simultaneous access, the different memory areas are addressed in parallel. The quasi-simultaneous access actually takes place sequentially at the memory level. However, the access with regard to the latency times is optimized so that the data in the individual processing units are processed approximately parallel. Such a warping calculation unit ensures that the image position of the new source pixel from the input image memory area and the corresponding warping function from the lookup matrix are read in at the same time or almost simultaneously and the previously calculated target pixel can be stored in the output image memory area. By this measure are the steps to generate the target image further parallelized.
Vorzugsweise ist mindestens eine Filtereinheit zum Filtern der Grafikausgabe vorgesehen, um beispielsweise das Überlappen von Bildpunkten im Falle von schrumpfenden Bildbereichen aber auch die Berechnung von neuen Bildpunkten durch Interpolation zwischen Zielbildpunkten, welche bei expandierten Bildbereichen nach der Transformation nicht mehr benachbart sind, zu berücksichtigen. Eine Integration der Filtereinheit in die integrierte Schaltung sorgt für eine zusätzliche Steigerung der Rechenleistung.Preferably, at least one filter unit is provided for filtering the graphics output in order, for example, to take into account the overlapping of pixels in the case of shrinking image areas, but also the calculation of new pixels by interpolation between target pixels which are no longer adjacent in the case of expanded image areas after the transformation. An integration of the filter unit in the integrated circuit provides an additional increase in computing power.
Um eine dynamische Modifikation der Filterparameter durch die integrierte Hauptprozessoreinheit zu ermöglichen, ist vorzugsweise die Filtereinheit als Bildpunkt- Filtereinheit ausgebildet, wobei die Filterparameter in einem programmierbaren Speicher, insbesondere einem RAM- Speicher, abgespeichert sind. Hierdurch wird ein einfacher Zugriff durch die Hauptprozessoreinheit zur Berechnung geänderter Filterparameter ermöglicht.In order to enable a dynamic modification of the filter parameters by the integrated main processor unit, the filter unit is preferably designed as a pixel filter unit, wherein the filter parameters are stored in a programmable memory, in particular a RAM memory. This allows easy access by the main processor unit to calculate changed filter parameters.
Die Geschwindigkeit der Berechnungen der Hauptprozessoreinheit kann, gemäß einer weiteren Ausführungsform der erfindungsgemäßen, integrierten Schaltung, dadurch gesteigert werden, dass die Hauptprozessoreinheit eine Gleitkomma-Berechnungseinheit aufweist. Hierdurch ergeben sich insbesondere im Zusammenhang mit einer dynamischen Berechnung der Transformationsvorschriften des Warpings zusätzliche Geschwindigkeitsvorteile .The speed of the calculations of the main processor unit can, according to another embodiment of the integrated circuit according to the invention, be increased by the fact that the main processor unit has a floating-point calculation unit. This results in additional speed advantages, in particular in connection with a dynamic calculation of the transformation rules of warping.
Gemäß einer zweiten Lehre der Erfindung wird die zuvor hergeleitete Aufgabe verfahrensmäßig dadurch gelöst, dass bei einem Verfahren zur Manipulation von Bildern mittels Warping, bei welchem Bildpunkte eines Quellbildes den Bildpunkten eines Zielbildes unter Verwendung von Transformationsvorschriften zugeordnet werden, die Transformationsvorschriften für die Abbildung der Quellbildpunkte auf die Zielbildpunkte dynamisch berechnet werden. Durch die dynamische Berechnung der Transformationsvorschriften werden diese zeitlich veränderlich, so dass beim Warping diese zeitliche Änderungen der Transformationsvorschriften in die elektronische Bildent- oder Verzerrung eingebracht werden und damit eine dynamische Bildent- bzw. -Verzerrung ermöglicht wird. Damit können prinzipiell Kopfbewegungen eines Betrachters des zuvor beschriebenen „Headup- Displays" berücksichtigt werden. Dies wird auch als dynamisches Warping bezeichnet.According to a second teaching of the invention, the previously derived object is procedurally achieved in that in a method for manipulating images by warping, in which pixels of a source image are assigned to the pixels of a target image using transformation rules, the transformation rules for mapping the source pixels to the target pixels are calculated dynamically. As a result of the dynamic calculation of the transformation rules, these changes over time, so that during warping these time changes of the transformation rules are introduced into the electronic image distortion or distortion and thus dynamic image distortion or distortion is made possible. In principle, head movements of a viewer of the "head-up display" described above can be taken into account, which is also referred to as dynamic warping.
Erfolgt die dynamische Berechnung der Transformationsvorschriften zumindest abhängig von mindestens einem externen Ereignis, welches über Messmittel detektiert wird, kann beispielsweise die Manipulation Bilder in Abhängigkeit der Position des Betrachters geschehen. Beispielsweise ist es denkbar, dynamische Veränderungen der Projektionsfläche, auf welche ein Zielbild projiziert wird, zu erkennen und die Transformationsvorschriften do anzupassen, dass das Bild durch die sich verändernde Projektionsfläche nicht beeinflusst wird und unverzerrt dargestellt wird.If the dynamic calculation of the transformation instructions is at least dependent on at least one external event which is detected via measuring means, for example, the manipulation can take place images as a function of the position of the observer. For example, it is conceivable to recognize dynamic changes of the projection surface onto which a target image is projected and to adapt the transformation instructions do so that the image is not influenced by the changing projection surface and is displayed undistorted.
Vorzugsweise wird alternativ oder kumulativ über Messmittel der Blickwinkel und/oder die Position mindestens eines Betrachters des Zielbildes ermittelt und zumindest abhängig von dem gemessenen Blickwinkel und/oder von der gemessenen Position des Betrachters die Transformationsvorschriften dynamisch berechnet. Bei einem „Headup-Dipslay" kann dann die Kopfposition des Kraftfahrers bestimmt und die Transformationsvorschriften des Warpings abhängig von der Kopfposition des Kraftfahrers immer wieder neu berechnet werden. Vorteilhafterweise geschieht dies in Echtzeit, so dass für einen Betrachter eine Neuberechnung der Transformationsvorschriften des Warpings nicht spürbar ist .Preferably, alternatively or cumulatively, the viewing angle and / or the position of at least one observer of the target image is determined via measuring means and the transformation specifications are calculated dynamically at least as a function of the measured viewing angle and / or of the measured position of the observer. at The head position of the motorist can then be determined and the transformation instructions of the warp can be recalculated again and again depending on the head position of the driver Advantageously, this happens in real time, so that a recalculation of the warping transformation instructions is not noticeable to a viewer ,
Besonders vorteilhaft ist es, wenn die elektronische Manipulation der Bilder mittels Warping basierend auf einer Lookup-Matrix erfolgt und die Lookup-Matrix dynamisch berechnet wird. Bei Echtzeitbildern muss die Lookup-Matrix, welche die Transformationsvorschriften enthält, mindestens ein- bis zweimal pro Sekunde neu berechnet werden, um Bewegungen des Betrachters ausreichend zu berücksichtigen. Es ist aber auch eine häufigere Berechnung denkbar. Eine entsprechend schnelle Berechnung wird beispielsweise mit der erfindungsgemäßen, integrierten Schaltung ermöglicht.It is particularly advantageous if the electronic manipulation of the images takes place by means of warping based on a lookup matrix and the lookup matrix is calculated dynamically. For real-time images, the look-up matrix, which contains the transformation rules, must be recalculated at least once or twice a second to allow sufficient consideration for the viewer's movements. However, a more frequent calculation is also conceivable. A correspondingly fast calculation is made possible, for example, with the integrated circuit according to the invention.
Wird während der Berechnung des Zielbildes basierend auf einer ersten Lookup-Matrix eine zweite Lookup-Matrix berechnet, kann die Geschwindigkeit des dynamischen Warpings weiter gesteigert werden, da ein Warten auf die Neuberechnung der Lookup-Matrix entfällt. Direkt nach Beendigung der Berechnung des Zielbildes kann die neu berechnete und eventuell zuvor im Speicher abgelegte zweite Lookup-Matrix für das Warping verwendet werden.If a second lookup matrix is calculated during the calculation of the target image based on a first lookup matrix, the speed of the dynamic warping can be increased further, as there is no need to recalculate the lookup matrix. Immediately after completing the calculation of the target image, the newly calculated and possibly previously stored memory in the memory can be used for warping.
Gemäß einer dritten Lehre der Erfindung wird die oben hergeleitete Aufgabe durch ein System zur elektronischen Manipulation von Bildern umfassend eine erfindungsgemäße integrierte Schaltung, Mittel zur Umwandlung von optischen Bildern in elektrische Signale zur Übergabe an die integrierte Schaltung und Mittel zur Darstellung eines von der Grafikausgang-Kontrolleinheit zur Verfügung gestellten Bildes, gelöst.According to a third teaching of the invention, the above-mentioned object is achieved by a system for the electronic manipulation of images comprising an integrated circuit according to the invention, means for converting optical images into electrical signals for transfer the integrated circuit and means for displaying an image provided by the graphics output control unit, solved.
Eine besonders vorteilhafte Ausgestaltung des Systems wird dadurch erzielt, dass das System als Head-Up-Display oder als Rearview-Kameradisplay ausgebildet ist.A particularly advantageous embodiment of the system is achieved in that the system is designed as a head-up display or as a rearview camera display.
Das System, insbesondere wenn es als Head-Up-Disply oder Rearview-Kameradiplay mit einer Windschutzscheibe als Displayfläche ausgebildet ist, kann dadurch vorteilhaft weitergebildet werden, dass Messmittel zur Erfassung des Blickwinkels oder der Position eines Betrachters des Zielbildes vorgesehen sind und das Zielbild zumindest abhängig von dem gemessenen Blickwinkel und/oder Position mindestens eines Betrachters berechenbar ist. Beispielsweise kann durch einen so genannten Head-Track- Sensor die Position des Kopfes des Betrachters genau bestimmt und verfolgt werden und dieThe system, in particular if it is designed as a head-up disply or rearview camera diplay with a windshield as a display surface, can be advantageously developed that measuring means for detecting the viewing angle or the position of a viewer of the target image are provided and the target image at least dependent can be calculated from the measured angle and / or position of at least one observer. For example, by a so-called head-track sensor, the position of the head of the observer can be accurately determined and tracked and the
Transformationsvorschriften des Warpings dynamisch an die jeweilige Kopfposition mindestens eines Betrachters angepasst werden.Transformation rules of warping be dynamically adapted to the respective head position of at least one observer.
Schließlich wird die oben hergeleitete Aufgabe gemäß einer vierten Lehre der vorliegenden Erfindung dadurch gelöst, dass die erfindungsgemäße integrierte Schaltung in einer Vorrichtung zur Durchführung eines Warpings, insbesondere eines dynamischen Warpings von Bildern in Echtzeit verwendet wird.Finally, the above-mentioned object is achieved according to a fourth teaching of the present invention in that the integrated circuit according to the invention is used in a device for performing a warping, in particular a dynamic warping of images in real time.
Durch die Verwendung der integrierten Schaltung in Fahrzeugen bzw. Kraftfahrzeugen können zusätzliche Sichthilfen für den Kraftfahrer eines Fahrzeuges, beispielsweise ein Head-Up-Display oder ein Rearview- Kameradisplay auf wirtschaftliche Weise zur Verfügung gestellt werden. Beim Einsatz im Kraftfahrzeug sorgt insbesondere die ernorme Rechenleistung der integrierten Schaltung dafür, dass auch bei schnellen Bildwechseln oder Veränderungen der Kopfposition der Fahrer keinerlei Verzögerungen im Bildaufbau der Anwendungen wahrnimmt.By using the integrated circuit in vehicles or motor vehicles, additional visual aids for the driver of a vehicle, for example a head-up display or a rearview camera display, can be provided in an economical manner be put. When used in motor vehicles in particular ensures the enormous computing power of the integrated circuit that even with rapid image changes or changes in the head position, the driver perceives no delays in the image structure of the applications.
Es gibt nun eine Vielzahl von Möglichkeiten, die erfindungsgemäße integrierte Schaltung auszugestalten und weiterzubilden. Hierzu wird verwiesen einerseits auf die den unabhängigen Patentansprüchen 1, 16, 21 und 23 nachgeordneten Patentansprüchen, andererseits auf die Beschreibung eines Ausführungsbeispiels in Verbindung mit der Zeichnung. Die Zeichnung zeigt inThere are now a variety of ways to design and develop the integrated circuit according to the invention. Reference is made on the one hand to the independent claims 1, 16, 21 and 23 subordinate claims, on the other hand to the description of an embodiment in conjunction with the drawings. The drawing shows in
Fig. 1 schematisch die Auswirkung des Warpings an einem Gitternetz,1 shows schematically the effect of warping on a grid,
Fig. 2 eine schematische Darstellung der Architektur eines Ausführungsbeispiels der erfindungsgemäßen, integrierten Schaltung undFig. 2 is a schematic representation of the architecture of an embodiment of the integrated circuit according to the invention and
Fig. 3 ein schematisches Datenflussdiagramm des Ausführungsbeispiels aus Fig. 2 der erfindungsgemäßen, integrierten Schaltung.Fig. 3 is a schematic data flow diagram of the embodiment of Fig. 2 of the integrated circuit according to the invention.
In Fig. 1 sind schematisch die Auswirkungen des Warpings an einem Gitternetz dargestellt. Fig. Ia stellt das unverzerrte Quellbild dar, während Fig. Ib das Zielbild in der Form eines verzerrten Gitternetzes nach dem Warping zeigt. Das Quellbild in Fig. Ia besteht aus mehreren, ein Gitternetz bildenden Geraden, wobei an jedem Kreuzungspunkt von zwei Geraden sich ein Bildpunkt 1 befindet. Dem Bildpunkt 1 ist eine genaue Bildposition durch ein Koordinatenpaar (x, y) zugeordnet, wodurch die Bildposition des Bildpunktes genau festgelegt ist. Wird das Quellbild der Fig. Ia unter Verwendung des Warping- Verfahrens verzerrt, so werden jedem Bildpunkt 1 des Quellbildes mit den Koordinaten (x, y) ein neuer Bildpunkt 1' mit den Koordinaten (x' , y' ) des Zielbildes zugeordnet. Dies erfolgt für alle Bildpunkte des Quellbildes, wobei für die einzelnen Bildpunkte z. T unterschiedliche Berechnungsvorschriften zur Bestimmung der neuen Bildposition des Bildpunktes gelten, wie Fig. 1 zeigt. Durch Anwendung des Warpings auf ein Quellbild können nicht nur unverzerrte Bilder verzerrt werden, insbesondere kann das Warping dazu verwendet werden, nicht-lineare Verzerrungen eines Bildes, wie sie typischerweise bei Verwendung von optischen Linsen auftreten, zu korrigieren. Wie in der Beschreibungseinleitung bereits ausgeführt, gibt es prinzipiell verschiedene Möglichkeiten das Warping durchzuführen. Im Weiteren wird ein Ausführungsbeispiel der erfindungsgemäßen, integrierten Schaltung beschrieben, welches, stellvertretend für die übrigen Warping-Verfahren, ein dynamisches Warping unter Verwendung einer Lookup-Matrix verwendet.In Fig. 1, the effects of warping on a grid are shown schematically. FIG. 1a represents the undistorted source image, while FIG. 1b shows the target image in the form of a warped mesh after warping. The source image in Fig. Ia consists of several, a grid forming lines, wherein at each crossing point of two straight lines, a pixel 1 is located. The pixel 1 is associated with a precise image position by a coordinate pair (x, y), whereby the image position of the pixel is precisely defined. Becomes the source image of FIG. 1a is distorted using the warping method, each pixel 1 of the source image with the coordinates (x, y) is assigned a new pixel 1 'with the coordinates (x', y ') of the target image. This is done for all pixels of the source image, for the individual pixels z. T different calculation rules for determining the new image position of the pixel apply, as shown in FIG. 1. By applying warping to a source image, not only undistorted images can be distorted, but in particular, warping can be used to correct for non-linear distortions of an image typically encountered with the use of optical lenses. As already explained in the introduction to the description, there are different ways to perform the warping. An exemplary embodiment of the integrated circuit according to the invention is described below, which uses dynamic warping using a lookup matrix, representative of the remaining warping methods.
Fig. 2 zeigt schematisch die Architektur eines Ausführungsbeispiels der erfindungsgemäßen, integrierten Schaltung, welche auf einem Halbleitersubstrat 2 realisiert ist. Auf dem Halbleitersubstrat 2 ist erfindungsgemäß eine Hauptprozessoreinheit 3, eine Grafikeingang-Kontrolleinheit 4, eine Grafikausgang- Kontrolleinheit 5 sowie eine Warping-Berechnungseinheit 6 vorgesehen. Die Grafikeingang-Kontrolleinheit 4, ist in dem Ausführungsbeispiel als Video-Framegrabber-Einheit ausgebildet. Die Video-Framegrabber-Einheit 4 verarbeitet die von einem Bildsensor oder einer Kamera 7 gelieferten Bilder. Liefert der Bildsensor 7 einen Datenstrom an Videobildern, zerlegt die Video- Framegrabber-Einheit 4 den gelieferten Bildstrom in einzelne Bilder und legt diese im Speicher 10 ab. Die einzelnen Bilder aus dem Speicher 10 werden dann von der Warping-Berechnungseinheit 6 neu berechnet und an die Grafikausgang-Kontrolleinheit 5 weitergeleitet oder wieder im Speicher 10 zur weiteren Verarbeitung abgelegt. Die Weiterverarbeitung kann beispielsweise durch die Hauptprozessoreinheit 3 geschehen. Die Grafikausgang- Kontrolleinheit 5 steht beispielsweise mit dem Bildeingang 8 eines Displays in Verbindung und übergibt die von der Warping-Berechnungseinheit 6 berechneten Bilder an den Bildeingang 8 eines Displays. Vorstellbar ist jedoch auch, dass an Stelle des Bildeingangs 8 eines Displays eine weitere Vorrichtung zur grafischen Aufbereitung der überarbeiteten Bilder an dieser Stelle vorgesehen ist, welche die Bilder dann weiterverarbeitet.FIG. 2 schematically shows the architecture of an embodiment of the integrated circuit according to the invention, which is realized on a semiconductor substrate 2. According to the invention, a main processor unit 3, a graphics input control unit 4, a graphics output control unit 5 and a warping calculation unit 6 are provided on the semiconductor substrate 2. The graphics input control unit 4, is formed in the embodiment as a video frame grabber unit. The video frame grabber unit 4 processes the images supplied by an image sensor or a camera 7. If the image sensor 7 delivers a data stream to video images, the video Frame grabber unit 4 the delivered image stream into individual images and stores them in memory 10 from. The individual images from the memory 10 are then recalculated by the warping calculation unit 6 and forwarded to the graphics output control unit 5 or stored again in the memory 10 for further processing. The further processing can be done for example by the main processor unit 3. The graphics output control unit 5 communicates, for example, with the image input 8 of a display and transfers the images calculated by the warping calculation unit 6 to the image input 8 of a display. However, it is also conceivable that, instead of the image input 8 of a display, a further device for graphic processing of the revised images is provided at this point, which then further processes the images.
Die Warping-Berechnungseinheit 6 greift in dem Ausführungsbeispiel der erfindungsgemäßen, integrierten Schaltung zur Durchführung des Warpings auf eine in Fig. 2 nicht dargestellte Lookup-Matrix im Speicher 10 zurück, welche die Berechnungsvorschriften zur Berechnung der neuen Bildpositionen der einzelnen Bildpunkte des von der Video-Framegrabber-Einheit 4 gelieferten Quellbildes in Matritzenform enthält.In the exemplary embodiment of the integrated circuit for carrying out the warping, the warping calculation unit 6 uses a look-up matrix (not shown in FIG. 2) in the memory 10, which calculates the calculation rules for calculating the new image positions of the individual pixels of the video pixel. Framegrabber unit 4 supplied source image in Matrizenform contains.
Zur Durchführung des dynamischen Warpings, beispielsweise, um die aktuelle Kopfposition eines Betrachters zu berücksichtigen, müssen die Werte in der Lookup-Matrix mindestens ein bis zweimal pro Sekunde neu berechnet werden. Die erforderliche Rechenleistung kann dadurch erreicht werden, dass die Hauptprozessoreinheit 3, unabhängig von der grafischen Überarbeitung der Quellbilder, eine Neuberechnung der Lookup-Matrix-Werte im Speicher 10 durchführen kann, ohne dass die Warping- Berechnungseinheit 6 behindert wird. Vorzugsweise umfasst die Hauptprozessoreinheit 3 zusätzlich eine in Fig. 2 nicht dargestellte Gleitkomma-Berechnungseinheit, welche die Rechenleistung der Hauptprozessoreinheit 3 insbesondere für grafische Verzerrungsberechnungen steigert .To perform dynamic warping, for example, to accommodate a viewer's current head position, the values in the lookup matrix must be recalculated at least once to twice a second. The required computing power can be achieved by the main processor unit 3 being able to recalculate the lookup matrix values in the memory 10, independently of the graphical revision of the source images, without the warping Calculation unit 6 is hindered. Preferably, the main processor unit 3 additionally comprises a floating-point calculation unit, not shown in FIG. 2, which increases the computing power of the main processor unit 3, in particular for graphical distortion calculations.
Wie die Fig. 2 weiter zeigt, ist auf demAs Fig. 2 further shows is on the
Halbleitersubstrat 2 eine Speicherzugriff-Kontrolleinheit 9 vorgesehen, welche die Speicherzugriffe auf einen Speicher 10 der einzelnen Bearbeitungseinheiten der integrierten Schaltung (3 bis 6) koordiniert. Zur Verbesserung der Performance der integrierten Schaltung auf dem Halbleitersubstrat 2 greifen zumindest die Warping-Berechnungseinheit 6 und die Hauptprozessoreinheit 3 auf einen gemeinsamen Hauptspeicher 10 nach dem Unified-Memory-Semiconductor substrate 2, a memory access control unit 9 is provided, which coordinates the memory accesses to a memory 10 of the individual processing units of the integrated circuit (3 to 6). In order to improve the performance of the integrated circuit on the semiconductor substrate 2, at least the warping calculation unit 6 and the main processor unit 3 access a common main memory 10 after the unified memory
Architecture (UMA) -Prinzip zu. Eine weitere Steigerung des Datendurchsatzes ergibt sich daraus, dass die Speicherzugriff-Kontrolleinheit 9 einen direkten Zugriff durch die einzelnen Prozesseinheiten der integrierten Schaltung (3 bis 6) auf den Speicher 10 ermöglicht. In dem vorliegenden Ausführungsbeispiel sind hierzu die Prozesseinheiten über vier Busse 3a, 4a, 5a, 6a an die Speicherzugriff-Kontrolleinheit 9 angebunden. Die Speicherzugriff-Kontrolleinheit 9 kommuniziert in diesem Ausführungsbeispiel nur über einen Bus mit dem gemeinsamen Speicher 10.Architecture (UMA) principle too. A further increase in the data throughput results from the fact that the memory access control unit 9 enables direct access to the memory 10 by the individual processing units of the integrated circuit (3 to 6). For this purpose, in the present embodiment, the process units are connected to the memory access control unit 9 via four buses 3a, 4a, 5a, 6a. The memory access control unit 9 only communicates with the common memory 10 via a bus in this embodiment.
Daneben ist auch eine direkte Verbindung der einzelnen Einheiten der integrierten Schaltung denkbar, sofern eine Speicherung der Daten im Speicher 10 nicht notwendig ist.In addition, a direct connection of the individual units of the integrated circuit is conceivable as long as storage of the data in the memory 10 is not necessary.
Der Speicher 10 ist im Allgemeinen als Random-Access- Modul (RAM) -Speicher ausgebildet. Denkbar ist aber such, dass der Speicher 10 in der integrierten Schaltung integriert ist. Die Rechenleistung der integrierten Schaltung kann damit nochmals gesteigert werden.The memory 10 is generally designed as a random access module (RAM) memory. It is possible, however, the memory 10 is integrated in the integrated circuit. The computing power of the integrated circuit can thus be further increased.
Der Datenfluss zwischen dem Ausführungsbeispiel der integrierten Schaltung auf dem Halbleitersubstrat 2 und dem Speicher 10 ist in Fig. 3 schematisch in einem Datenflussdiagramm dargestellt. Das Datenflussdiagramm der Fig. 3 zeigt den Speicher 10, welcher in unterschiedliche Speicherbereiche 12, 13, 14, 15 unterteilt ist. Die über den Eingang 11 der Video- Framegrabber-Einheit 4 erhaltenen Bilder werden in einem Eingangsbildspeicherbereich 12 des Speichers 10 zwischengespeichert. Die für das Warping benötigte Lookup-Matrix ist in einem Lookup-Matrix-Speicherbereich 13 des Speichers 10 abgelegt. Des Weiteren werden in einem Ausgangsbildspeicherbereich 14 die von der Warping- Berechnungseinheit 6 berechneten Bilder abgespeichert. Vorzugsweise greift die Warping-Berechnungseinheit 6 simultan oder quasi-simultan auf alle drei Speicherbereiche zu, um die Schritte zur Berechnung des Zielbildes zu parallelisieren.The data flow between the exemplary embodiment of the integrated circuit on the semiconductor substrate 2 and the memory 10 is shown schematically in FIG. 3 in a data flow diagram. The data flow diagram of FIG. 3 shows the memory 10, which is subdivided into different memory areas 12, 13, 14, 15. The images obtained via the input 11 of the video frame grabber unit 4 are buffered in an input image memory area 12 of the memory 10. The lookup matrix required for the warping is stored in a lookup matrix memory area 13 of the memory 10. Furthermore, in an output image storage area 14, the images calculated by the warping calculation unit 6 are stored. Preferably, the warping calculation unit 6 accesses all three memory areas simultaneously or quasi-simultaneously in order to parallelize the steps for calculating the target image.
Die Grafikausgang-Kontrolleinheit 5 liest nun die im Ausgangsbildspeicherbereich 14 abgelegten Bilder aus und leitet diese beispielsweise an ein Display weiter. Zur Erzeugung eines störungsfreien bzw. ruckfreien Bildes müssen ca. 20 bis 30 Bilder pro Sekunde durch die Warping-Berechnungseinheit 6 berechnet und von der Grafikausgang-Kontrolleinheit 5 beispielsweise an den Grafikeingang 8 eines Displays übergeben werden.The graphics output control unit 5 now reads out the images stored in the output image memory area 14 and forwards them to a display, for example. In order to produce a trouble-free or jolt-free image, approximately 20 to 30 images per second must be calculated by the warping calculation unit 6 and transferred from the graphics output control unit 5, for example, to the graphic input 8 of a display.
Kumulativ kann vor der Ausgabe der manipulierten Bilder über die Grafikausgang-Kontrolleinheit 5 eine Filterung der Bilder durch eine in Fig. 2 nicht dargestellte Filtereinheit, vorzugsweise Bildpunkt-Filtereinheit, erfolgen, wobei die Filtereinheit vorzugsweise in der erfindungsgemäßen, integrierten Schaltung integriert sein kann. Als mögliche Filtereinheiten können beispielsweise bilineare, bikubisch oder anisotrop arbeitende Filtereinheiten vorgesehen sein, wobei ein bilineares Filtern die geringste Rechenleistung benötigt und anisotropes Filtern die höchste Rechenleistung.Cumulatively, prior to the output of the manipulated images via the graphics output control unit 5, the images may be filtered by an image not shown in FIG Filter unit, preferably pixel filter unit, carried out, wherein the filter unit may preferably be integrated in the integrated circuit according to the invention. For example, bilinear, bicubic or anisotropic filter units may be provided as possible filter units, with bilinear filtering requiring the lowest computing power and anisotropic filtering requiring the highest computing power.
Der im Speicher 10 zusätzlich vorgesehene Arbeitsspeicherbereich 15 der Hauptprozessoreinheit 3 wird verwendet, um dort die für die dynamische Berechnung der Lookup-Matrix notwendigen Programme und Daten zwischenzuspeichern . Die Hauptprozessoreinheit 3 berechnet abhängig von den in dem Arbeitsspeicherbereich 15 vorhandenen Daten die Lookup-Matrix unabhängig von der Berechnung der Warping-Berechnungseinheit 6.The additional memory area 15 of the main processor unit 3 provided in the memory 10 is used to buffer the programs and data necessary for the dynamic calculation of the look-up matrix. The main processor unit 3 calculates the lookup matrix independently of the calculation of the warping calculation unit 6 depending on the data existing in the work memory area 15.
Durch die parallele dynamische Konfigurierung der Lookup- Matrix kann mit der vorgeschlagenen integrierten Schaltung eine besonders hohe Performance hinsichtlich des Warpings von Echzeitbildern erzielt werden. Due to the parallel dynamic configuration of the lookup matrix, the proposed integrated circuit can be used to achieve a particularly high performance with regard to the warping of real-time images.

Claims

Patentansprüche claims
1. Integrierte Schaltung umfassend mindestens ein Halbleitersubstrat (2), d a d u r c h g e k e n n z e i c h n e t, d a s s die integrierte Schaltung eine Hauptprozessoreinheit (3) , mindestens eine Speicherzugriff-Kontrolleinheit (9), eine Grafikausgang-Kontrolleinheit (5) und eine Warping-Berechnungseinheit (6) aufweist.An integrated circuit comprising at least one semiconductor substrate, wherein the integrated circuit comprises a main processor unit, at least one memory access control unit, a graphics output control unit, and a warping calculation unit.
2. Integrierte Schaltung nach Anspruch 1 d a d u r c h g e k e n n z e i c h n e t, d a s s die integrierte Schaltung als kundenspezifische Integrierte Schaltung (ASIC) oder applikationsspezifisches Standardprodukt (ASSP) ausgebildet ist.2. An integrated circuit according to claim 1, wherein the integrated circuit is designed as a custom integrated circuit (ASIC) or application-specific standard product (ASSP).
3. Integrierte Schaltung nach Anspruch 1 oder 2, d a d u r c h g e k e n n z e i c h n e t, d a s s genau ein Halbleitersubstrat (2) vorgesehen ist.3. An integrated circuit as claimed in claim 1 or 2, wherein a semiconductor substrate (2) is provided exactly as it is.
4. Integrierte Schaltung nach einem der Ansprüche 1 bis 3, d a d u r c h g e k e n n z e i c h n e t, d a s s das Halbleitersubstrat (2) zumindest teilweise aus Silizium besteht.4. The integrated circuit according to claim 1, wherein the semiconductor substrate (2) consists at least partially of silicon.
5. Integrierte Schaltung nach einem der Ansprüche 1 bis 4, d a d u r c h g e k e n n z e i c h n e t, d a s s eine 32bit- und/oder 64bit-Befehle verarbeitende Hauptprozessoreinheit (3) vorgesehen ist.5. Integrated circuit according to one of claims 1 to 4, characterized in that a 32-bit and / or 64-bit instructions processing main processor unit (3) is provided.
6. Integrierte Schaltung nach einem der Ansprüche 1 bis 5, d a d u r c h g e k e n n z e i c h n e t, d a s s eine Grafikeingang-Kontrolleinheit (4) vorgesehen ist .6. An integrated circuit according to any one of claims 1 to 5, wherein a graphics input control unit (4) is provided.
7. Integrierte Schaltung nach Anspruch 6, d a d u r c h g e k e n n z e i c h n e t, d a s s als Grafikeingang-Kontrolleinheit (4) eine Video- Framegrabber-Einheit vorgesehen ist.7. An integrated circuit according to claim 6, wherein a video frame grabber unit is provided as the graphics input control unit (4).
8. Integrierte Schaltung nach einem der Ansprüche 1 bis 6, d a d u r c h g e k e n n z e i c h n e t, d a s s eine Lookup-Matrix basierte Warping- Berechnungseinheit (5) vorgesehen ist.8. An integrated circuit according to any one of claims 1 to 6, wherein a lookup-matrix based warping calculation unit (5) is provided.
9. Integrierte Schaltung nach Anspruch 7, d a d u r c h g e k e n n z e i c h n e t, d a s s eine mindestens für die drei Grundfarben, Blau, Grün und Rot, jeweils eine Lookup-Matrix verwendende Warping-Berechnungseinheit (6) vorgesehen ist.9. Integrated circuit according to claim 7, characterized in that a warping calculation unit (6) is used which is used for at least the three primary colors, blue, green and red, in each case one lookup matrix.
10. Integrierte Schaltung nach Anspruch 9, d a d u r c h g e k e n n z e i c h n e t, d a s s die Speicherzugriff-Kontrolleinheit (9) einen direkten Speicherzugriff zumindest der Hauptprozessoreinheit (3) und der Warping- Berechnungseinheit (6) auf den Speicherbereich mindestens eines internen oder externen Speichers10. The integrated circuit according to claim 9, wherein the memory access control unit (9) direct memory access at least the main processor unit (3) and the warping calculation unit (6) to the memory area of at least one internal or external memory
(10) ermöglicht. (10).
11. Integrierte Schaltung nach einem der Ansprüche 1 bis 10, d a d u r c h g e k e n n z e i c h n e t, d a s s zumindest die Hauptprozessoreinheit (3) und die Warping-Berechnungseinheit (6) auf einen gemeinsamen Speicherbereich eines Hauptspeichers (10) nach dem Unified-Memory-Architecture (UMA) -Prinzip zugreifen.11. Integrated circuit according to one of claims 1 to 10, characterized in that at least the main processor unit (3) and the warping calculation unit (6) on a common memory area of a main memory (10) according to the Unified Memory Architecture (UMA) principle access.
12. Integrierte Schaltung nach einem der Ansprüche 9 bis 11, d a d u r c h g e k e n n z e i c h n e t, d a s s über die Speicherzugriff-Kontrolleinheit (9) in mindestens einem Speicher (10) ein12. Integrated circuit according to one of claims 9 to 11, d a d u r c h e c e n e c i n e t, d a s s on the memory access control unit (9) in at least one memory (10) a
Eingangsbildspeicherbereich (12), ein Lookup-Matrix- Speicherbereich (13) , ein Ausgangsbildspeicherbereich (14) und/oder ein Arbeitsspeicherbereich (15) der Hauptprozessoreinheit (3) adressierbar sind.Input image memory area (12), a lookup matrix memory area (13), an output image memory area (14) and / or a memory area (15) of the main processor unit (3) are addressable.
13. Integrierte Schaltung nach einem der Ansprüche 6 bis 12, d a d u r c h g e k e n n z e i c h n e t, d a s s eine einen simultanen Zugriff auf den Eingangsbildspeicherbereich (12), den Ausgangsbildspeicherbereich (14) und/oder auf den Lookup-Matrix-Speicherbereich (13) ermöglichende Warping-Berechnungseinheit (6) vorgesehen ist.13. Integrated circuit according to one of claims 6 to 12, characterized in that a simultaneous access to the input image memory area (12), the output image memory area (14) and / or on the lookup matrix memory area (13) enabling warping calculation unit (6 ) is provided.
14. Integrierte Schaltung nach einem der Ansprüche 1 bis 13, d a d u r c h g e k e n n z e i c h n e t, d a s s eine Filtereinheit zum Filtern der Grafikausgabe der Grafikausgang-Kontrolleinheit (5) vorgesehen ist. 14. Integrated circuit according to one of claims 1 to 13, characterized in that a filter unit for filtering the graphic output of the graphics output control unit (5) is provided.
15. Integrierte Schaltung nach Anspruch 14, d a d u r c h g e k e n n z e i c h n e t, d a s s die Filtereinheit als Bildpunkt-Filtereinheit ausgebildet ist, wobei die Filterparameter in einem programmierbaren Speicher (10) abgespeichert sind.15. Integrated circuit according to claim 14, characterized in that the filter unit is designed as a pixel filter unit, wherein the filter parameters are stored in a programmable memory (10).
16. Verfahren zur elektronischen Manipulation von Bildern mittels Warping, bei welchem Bildpunkte eines Quellbildes den Bildpunkten eines Zielbildes unter Verwendung einer Transformationsvorschrift zugeordnet werden, insbesondere unter Verwendung einer integrierten Schaltung nach einem der Ansprüche 1 bis 15, d a d u r c h g e k e n n z e i c h n e t, d a s s die Transformationsvorschriften für die Abbildung der Quellbildpunkte auf die Zielbildpunkte dynamisch berechnet werden.16. A method for electronic manipulation of images by warping, in which pixels of a source image are assigned to the pixels of a target image using a transformation rule, in particular using an integrated circuit according to one of claims 1 to 15, characterized in that the transformation rules for the imaging of Source pixels to the target pixels are calculated dynamically.
17. Verfahren zur elektronischen Manipulation von Bildern mittels Warping nach Anspruch 16, d a d u r c h g e k e n n z e i c h n e t, d a s s die dynamische Berechnung der17. A method for electronically manipulating images by warping according to claim 16, wherein said dynamic computation of said images is performed by warping
Transformationsvorschriften zumindest abhängig von mindestens einem externen Ereignis, welches über Messmittel detektiert wird, erfolgt.Transformation rules at least depending on at least one external event, which is detected by measuring means takes place.
18. Verfahren zur elektronischen Manipulation von Bildern mittels Warping nach Anspruch 16 oder 17, d a d u r c h g e k e n n z e i c h n e t, d a s s über Messmittel der Blickwinkel und/oder die Position eines Betrachters des Zielbildes ermittelt wird und zumindest abhängig von dem gemessenen Blickwinkel oder von der gemessenen Position mindestens eines Betrachters die Transformationsvorschriften dynamisch berechnet werden. 18. A method for electronically manipulating images by means of warping according to claim 16 or 17, characterized in that the viewing angle and / or the position of a viewer of the target image is determined by measuring means and at least depending on the measured angle or the measured position of at least one observer Transformation rules are calculated dynamically.
19. Verfahren zur elektronischen Manipulation von Bildern mittels Warping nach einem der Ansprüche 16 bis 18, d a d u r c h g e k e n n z e i c h n e t, d a s s das Warping der Bildinformationen basierend auf einer Lookup-Matrix erfolgt und die Lookup-Matrix dynamisch berechnet wird.19. A method for electronically manipulating images by warping according to any of claims 16 to 18, wherein the warping of the image information is performed based on a lookup matrix and the lookup matrix is dynamically calculated.
20. Verfahren zur elektronischen Manipulation von Bildinformationen mittels Warping nach einem der Ansprüche 16 bis 19, d a d u r c h g e k e n n z e i c h n e t, d a s s während der Berechnung der Zielbildes durch die Warping-Berechnungseinheit eine zweite zeitlich folgende Lookup-Matrix durch die Hauptprozessoreinheit berechnet wird.20. A method for electronic manipulation of image information by warping according to one of claims 16 to 19, wherein a warp calculation unit calculates a second temporally following lookup matrix by the main processor unit during the calculation of the target image.
21. System zur elektronischen Manipulation von Bildern, insbesondere zur Verwirklichung eines Verfahrens nach einem der Ansprüche 16 bis 19, umfassend eine integrierte Schaltung nach einem der Ansprüche 1 bis 15, Mittel zur Umwandlung von optischen Bildern in elektrische Signale zur Manipulation der Bilder (7) unter Verwendung der integrierten Schaltung und Mittel zur Darstellung eines durch die integrierte Schaltung elektronisch manipulierten Bildes (8) .21. System for the electronic manipulation of images, in particular for implementing a method according to one of claims 16 to 19, comprising an integrated circuit according to one of claims 1 to 15, means for converting optical images into electrical signals for manipulating the images (7). using the integrated circuit and means for displaying an image (8) electronically manipulated by the integrated circuit.
22. System nach Anspruch 20, d a d u r c h g e k e n n z e i c h n e t, d a s s das System als ein Head-Up-Display oder als Rearview- Kameradisplay-System für Fahrzeuge ausgebildet ist.22. The system of claim 20, wherein the system is configured as a head-up display or as a rearview camera display system for vehicles.
23. System nach Anspruch 20 oder 21, d a d u r c h g e k e n n z e i c h n e t, d a s s Messmittel zur Erfassung des Blickwinkels oder der Position eines Betrachters des Zielbildes und das Zielbild zumindest abhängig von dem gemessenen Blickwinkel und/oder der gemessenen Position mindestens eines Betrachters des Zielbildes berechenbar ist.23. System according to claim 20 or 21, characterized in that measuring means for detecting the angle of view or the Position of a viewer of the target image and the target image can be calculated at least as a function of the measured viewing angle and / or the measured position of at least one observer of the target image.
24. Verwendung einer integrierten Schaltung nach einem der Ansprüche 1 bis 15 in einer Vorrichtung zur Durchführung einer elektronischen Manipulation von Bildern .24. Use of an integrated circuit according to one of claims 1 to 15 in an apparatus for performing an electronic manipulation of images.
25. Verwendung einer integrierten Schaltung nach Anspruch 23, d a d u r c h g e k e n n z e i c h n e t, d a s s die integrierte Schaltung in einem Fahrzeug, insbesondere einem Kraftfahrzeug, verwendet wird. 25. The use of an integrated circuit according to claim 23, wherein the integrated circuit in a vehicle, in particular a motor vehicle, is used.
EP06763365A 2005-05-30 2006-05-30 Integrated circuit with warping calculation unit Withdrawn EP1886274A1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
DE102005025025A DE102005025025A1 (en) 2005-05-30 2005-05-30 Integrated circuit with warping calculation unit
PCT/EP2006/062712 WO2006128862A1 (en) 2005-05-30 2006-05-30 Integrated circuit with warping calculation unit

Publications (1)

Publication Number Publication Date
EP1886274A1 true EP1886274A1 (en) 2008-02-13

Family

ID=36781540

Family Applications (1)

Application Number Title Priority Date Filing Date
EP06763365A Withdrawn EP1886274A1 (en) 2005-05-30 2006-05-30 Integrated circuit with warping calculation unit

Country Status (4)

Country Link
EP (1) EP1886274A1 (en)
JP (1) JP2008543071A (en)
DE (2) DE202005021565U1 (en)
WO (1) WO2006128862A1 (en)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2804144A1 (en) * 2013-05-16 2014-11-19 SMR Patents S.à.r.l. Method and device for processing input image data
KR20150015680A (en) * 2013-08-01 2015-02-11 씨제이씨지브이 주식회사 Method and apparatus for correcting image based on generating feature point
US9229228B2 (en) 2013-12-11 2016-01-05 Honeywell International Inc. Conformal capable head-up display
US10459224B2 (en) 2014-09-29 2019-10-29 Honeywell International Inc. High transmittance eyewear for head-up displays
US9606355B2 (en) 2014-09-29 2017-03-28 Honeywell International Inc. Apparatus and method for suppressing double images on a combiner head-up display
DE102016224166B3 (en) 2016-12-05 2018-05-30 Continental Automotive Gmbh Head-Up Display
WO2019057496A1 (en) 2017-09-25 2019-03-28 Continental Automotive Gmbh Head-up display
DE102019206565A1 (en) * 2019-05-07 2020-11-12 Continental Automotive Gmbh Concept for operating a display device with a curved surface

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5204944A (en) * 1989-07-28 1993-04-20 The Trustees Of Columbia University In The City Of New York Separable image warping methods and systems using spatial lookup tables
US5796426A (en) * 1994-05-27 1998-08-18 Warp, Ltd. Wide-angle image dewarping method and apparatus
NO942080D0 (en) * 1994-06-03 1994-06-03 Int Digital Tech Inc Picture Codes
JPH10327373A (en) * 1997-05-26 1998-12-08 Mitsubishi Electric Corp Eyepiece video display
JP2001061129A (en) * 1999-08-20 2001-03-06 Fujitsu General Ltd Drive recorder system
US6687387B1 (en) * 1999-12-27 2004-02-03 Internet Pictures Corporation Velocity-dependent dewarping of images

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
See references of WO2006128862A1 *

Also Published As

Publication number Publication date
WO2006128862A1 (en) 2006-12-07
JP2008543071A (en) 2008-11-27
DE102005025025A1 (en) 2006-12-07
DE202005021565U1 (en) 2008-09-11

Similar Documents

Publication Publication Date Title
DE10053439B4 (en) Graphics accelerator with interpolation function
WO2006128862A1 (en) Integrated circuit with warping calculation unit
DE102008046398B4 (en) Apparatus for generating a composite image and computer-readable medium for storing a program to cause a computer to function as a composite image-producing apparatus
DE69027649T2 (en) Electronic graphics system with low control image resolution
DE10101073B4 (en) Imaging device with lower storage capacity requirements and method therefor
DE4211385A1 (en) DATA PROJECTION SYSTEM
DE19539642A1 (en) Visualisation method for monitoring system in vehicle
DE112013006544T5 (en) Image processing apparatus and image processing method
DE102006038646A1 (en) Image color image data processing apparatus and color image data image processing apparatus
DE102017001015A1 (en) Low-latency correction of a projection of a head-up display
WO2007098974A2 (en) Device and method for outputting different images on at least two display units
EP0903723B1 (en) Display device with and without anti-aliasing
DE3508606C2 (en)
EP1985105B1 (en) Method and device for scanning images
DE10240313A1 (en) Image processing device with a coordinate calculation processing operation
DE102020005844A1 (en) Method for calibrating a head-up display, control device for carrying out such a method, calibration device with such a control device, and head-up display with such a calibration device
DE19714915A1 (en) Image display method and device for carrying out the method
DE102021206608A1 (en) Camera system and method for a camera system
EP3465608B1 (en) Method and device for determining a transfer between two display images, and vehicle
EP4068198B1 (en) Method for generating an image of an object, computer program product and imaging system for carrying out the method
DE102008044521A1 (en) Method and device for generating image information
DE102019108599A1 (en) DYNAMIC BATCH SIZE SELECTION FOR IMAGE PROCESSING OF VEHICLE CAMERAS
DE102019207415A1 (en) Method for generating an image of a vehicle environment and device for generating an image of a vehicle environment
DE102015109878B3 (en) Correction of a patterned image defect
DE69104867T2 (en) Method and device for displaying images.

Legal Events

Date Code Title Description
PUAI Public reference made under article 153(3) epc to a published international application that has entered the european phase

Free format text: ORIGINAL CODE: 0009012

17P Request for examination filed

Effective date: 20071102

AK Designated contracting states

Kind code of ref document: A1

Designated state(s): DE FR IT

RBV Designated contracting states (corrected)

Designated state(s): DE FR IT

DAX Request for extension of the european patent (deleted)
RBV Designated contracting states (corrected)

Designated state(s): DE FR IT

17Q First examination report despatched

Effective date: 20090911

STAA Information on the status of an ep patent application or granted ep patent

Free format text: STATUS: THE APPLICATION HAS BEEN WITHDRAWN

18W Application withdrawn

Effective date: 20110124