DE102006028734A1 - Reduction method for block artifacts from multiple images, involves interpolating image pixels, which results image block as function of determined texture direction of image pixels - Google Patents

Reduction method for block artifacts from multiple images, involves interpolating image pixels, which results image block as function of determined texture direction of image pixels Download PDF

Info

Publication number
DE102006028734A1
DE102006028734A1 DE102006028734A DE102006028734A DE102006028734A1 DE 102006028734 A1 DE102006028734 A1 DE 102006028734A1 DE 102006028734 A DE102006028734 A DE 102006028734A DE 102006028734 A DE102006028734 A DE 102006028734A DE 102006028734 A1 DE102006028734 A1 DE 102006028734A1
Authority
DE
Germany
Prior art keywords
image
texture
values
pixels
image pixels
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.)
Ceased
Application number
DE102006028734A
Other languages
German (de)
Inventor
Joscha Malin
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.)
Silicon Image GmbH
Original Assignee
Sci Worx 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 Sci Worx GmbH filed Critical Sci Worx GmbH
Priority to DE102006028734A priority Critical patent/DE102006028734A1/en
Publication of DE102006028734A1 publication Critical patent/DE102006028734A1/en
Ceased legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T3/00Geometric image transformation in the plane of the image
    • G06T3/40Scaling the whole image or part thereof
    • G06T3/4015Demosaicing, e.g. colour filter array [CFA], Bayer pattern
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N23/00Cameras or camera modules comprising electronic image sensors; Control thereof
    • H04N23/80Camera processing pipelines; Components thereof
    • H04N23/84Camera processing pipelines; Components thereof for processing colour signals
    • H04N23/843Demosaicing, e.g. interpolating colour pixel values
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N25/00Circuitry of solid-state image sensors [SSIS]; Control thereof
    • H04N25/10Circuitry of solid-state image sensors [SSIS]; Control thereof for transforming different wavelengths into image signals
    • H04N25/11Arrangement of colour filter arrays [CFA]; Filter mosaics
    • H04N25/13Arrangement of colour filter arrays [CFA]; Filter mosaics characterised by the spectral characteristics of the filter elements
    • H04N25/134Arrangement of colour filter arrays [CFA]; Filter mosaics characterised by the spectral characteristics of the filter elements based on three different wavelength filter elements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N9/00Details of colour television systems
    • H04N9/64Circuits for processing colour signals
    • H04N9/646Circuits for processing colour signals for image enhancement, e.g. vertical detail restoration, cross-colour elimination, contour correction, chrominance trapping filters

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Physics & Mathematics (AREA)
  • Spectroscopy & Molecular Physics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Image Processing (AREA)
  • Color Television Image Signal Generators (AREA)

Abstract

The method involves interpolating image pixels, which results an image block (2) as a function of a determined texture direction of the image pixels, built up from image blocks. Each image block contains a matrix of image pixels with color values and brightness values. A cross fade factor (k) is determined from the similar color values selected by brightness values of image pixels. The selected color values of picture pixels are interpolated as a function of the cross fade factor. Independent claims are also included for the following: (1) a circuit arrangement for the reduction of block artifacts from multiple images built up from image blocks (2) a digital camera with an image sensor.

Description

Die Erfindung betrifft ein Verfahren zur Reduzierung von Blockartefakten von aus einer Mehrzahl von aus Bildblöcken zusammengesetzten Bildern, wobei jeder Bildblock eine Matrix aus Bildpixeln mit Farbwerten und Helligkeitswerten enthält und eine Interpolation von Bildpixeln jeweils eines Bildblocks in Abhängigkeit von einer ermittelten Texturrichtung der Bildpixel erfolgt.The The invention relates to a method for reducing block artifacts from among a plurality of images composed of image blocks, wherein each image block is a matrix of image pixels with color values and brightness values contains and an interpolation of image pixels each of an image block in dependence from a determined texture direction of the image pixels.

Die Erfindung betrifft weiterhin eine Schaltungsanordnung zur Reduzierung von Blockartefakten von aus einer Mehrzahl von Bildblöcken zusammengesetzten Bildern mit einem solchen Verfahren, wobei die Schaltungsanordnung aufweist:

  • – einem Zeilenspeicher für jeweils eine Zeile von Farb- und/oder Helligkeitswerten von Bildpixeln eines Bildblocks,
  • – einen aus dem Zeilenspeicher kontinuierlich mit Tripeln von drei in einer Reihe oder Spalte nebeneinander liegenden Bildpixeln beschreibbarem Matrixspeicher,
  • – eine Textur-Detektionseinheit am Ausgang des Matrixspeichers zur Ermittlung eines Texturindikators in horizontaler und vertikaler Richtung aus den im Matrixspeicher zwischengespeicherten Bildpixeln, und
  • – einen Interpolator am Ausgang des Matrixspeichers, um in Abhängigkeit eines ermittelten Texturindikators die Bildpixel eines im Matrixspeicher zwischengespeicherten Bildblocks zu interpolieren.
The invention further relates to a circuit arrangement for reducing blocking artifacts of images composed of a plurality of image blocks using such a method, the circuit arrangement comprising:
  • A line memory for one row of color and / or brightness values of image pixels of an image block,
  • A matrix memory writable from the line memory continuously with triplets of three image pixels lying next to one another in a row or column,
  • A texture detection unit at the output of the matrix memory for determining a texture indicator in the horizontal and vertical direction from the image pixels buffered in the matrix memory, and
  • An interpolator at the output of the matrix memory in order to interpolate the image pixels of an image block buffered in the matrix memory as a function of a determined texture indicator.

Die Erfindung betrifft weiterhin eine digitale Kamera mit einem Bildsensor mit einer 5×3 Sensor-Matrix zur Erfassung von Bildblöcken mit entsprechend eines Bayer-Mosaiks angeordneten Farbinformationen, wobei der Bildsensor mit der oben beschriebenen Schaltungsanordnung gekoppelt ist.The The invention further relates to a digital camera with an image sensor with a 5 × 3 Sensor matrix for capturing image blocks with a corresponding Bayer mosaic arranged color information, the image sensor is coupled to the circuit arrangement described above.

Bei der digitalen Bildbearbeitung ist die Interpolation von Farb- und Helligkeitswerten von Bildpixeln aus Bildblöcken ein an sich hinreichend bekanntes und gelöstes Problem. Insbesondere für ladungsgekoppelte Bildsensoren (Charge Coupled Device CCD), die in Bildkameras genutzt werden, ist eine solche Interpolation erforderlich. Schaltungen und Verfahren zur Interpolation sind beispielsweise in der EP 1 289 310 A2 , dem US-Patent 4,630,307 und der US 2003/0095703 A1 beschrieben.In digital image processing, the interpolation of color and brightness values of image pixels from image blocks is a well-known and solved problem in itself. In particular, charge-coupled image sensors (charge coupled device CCD) used in image cameras require such interpolation. Circuits and methods for interpolation are for example in the EP 1 289 310 A2 , U.S. Patent 4,630,307 and US 2003/0095703 A1.

Aus dem US-Patent 6,091,862 ist eine Schaltungsanordnung und ein Verfahren zur Pixelinterpolation von in einem sogenannten Bayer-Mosaik angeordneten Bildblöcken beschrieben. Das Interpolationsergebnis wird durch Wichtungsfaktoren für einzelne Pixel verbessert, die in Abhängigkeit von der Texturrichtung der Bildpixel bestimmt werden.Out U.S. Patent 6,091,862 discloses a circuit arrangement and method for pixel interpolation of arranged in a so-called Bayer mosaic image blocks described. The interpolation result is determined by weighting factors for individual Pixel improves, depending on be determined by the texture direction of the image pixels.

Aus dem US-Patent 6,549,233 B1 ist eine Farbinterpolationstechnik für Bilder im Bayer-Mosaik bekannt, bei der in Bezug auf ein Bildpixel eines Bildblocks die minimalen und maximalen Gradienten der Bildpixelwerte bestimmt werden. Hierzu werden die minimalen und maximalen Intensitätswerte der Bildpixel eines Bildblocks bestimmt und gemittelt.Out U.S. Patent 6,549,233 B1 is a color interpolation technique for images known in the Bayer mosaic, in the case of an image pixel of an image block, the minimum one and maximum gradient of the image pixel values. For this The minimum and maximum intensity values of the image pixels become one Image block determined and averaged.

Aus der EP 0 632 633 A2 ist bekannt, die Texturrichtung (Gradienten) aus der Differenz von Luminanzwerten in vertikaler und horizontaler Bildrichtung zu bestimmen und mit einem Schwellwert zu vergleichen. Die Interpolation zusätzlicher Luminanzwerte verfolgt dann in Richtung des erkannten Gradienten.From the EP 0 632 633 A2 It is known to determine the texture direction (gradients) from the difference of luminance values in the vertical and horizontal image directions and to compare them with a threshold value. The interpolation of additional luminance values then tracks in the direction of the detected gradient.

Ebenso ist in dem US-Patent 5,373,322 ein Interpolationsverfahren beschrieben, bei dem Gradienten (Texturrichtung von Bildpixeln) bestimmt und die Interpolation in Abhängigkeit von der Texturrichtung durchgeführt werden. Die Interpolation erfolgt hierbei linear.As well For example, US Pat. No. 5,373,322 describes an interpolation method. determined at the gradient (texture direction of image pixels) and the Interpolation depending on performed by the texture direction become. The interpolation is linear.

Dem beschriebenen Interpolationsverfahren liegt grundsätzlich das Problem zugrunde, dass bei Digitalkameras Bilddaten über Sensorarrays aufgenommen werden, die an jeder Bildposition nur eine der möglichen drei Farbkomponenten (Rot, Grün und Blau) aufnehmen. Die fehlenden Farbkomponenten der Farbpunkte müssen nachträglich über den sogenannten De-Mosaik-Vorgang rekonstruiert werden, um ein komplettes Farbbild mit Rot-, und Grün- und Blau-Informationen zu erhalten. Die Sensoren in einem Digitalkamera-Sensor und die damit vorhandenen Farbinformationen im Ausgangsbild des Digitalkamera-Sensors sind oftmals im sogenannten Bayer-Mosaik-Muster angeordnet, was eine bestimmte Anordnung von Rot-, Grün- und Blau-Informationen in einer 5×3-Matrix beschreibt.the The interpolation method described is basically the The problem is that with digital cameras image data via sensor arrays be recorded, which at each picture position only one of the possible three color components (red, green and blue). The missing color components of the color dots have to subsequently over the so-called de-mosaic process can be reconstructed to a complete Color image with red and green and blue information. The sensors in a digital camera sensor and the so existing color information in the output image of the digital camera sensor are often arranged in the so-called Bayer mosaic pattern, which a certain arrangement of red, green and blue information in a 5x3 matrix describes.

Beim De-Mosaik-Vorgang werden die fehlenden Farbinformationen des Bildes interpoliert, wobei auffällige und störende Fehler (Artefakte) auftreten können. Diese sind vom angewendeten Algorithmus und von dem Bildinhalt abhängig. Besonders störend für den Betrachter sind so genannte Feder- oder Fransen-Artefakte, die beim Interpolieren an Kanten auftreten.At the De-mosaic process will be the missing color information of the image interpolated, being conspicuous and disturbing Errors (artifacts) can occur. These depend on the algorithm used and the image content. Especially disturbing to the viewer are so-called feather or fringe artifacts that interpolate occur at edges.

Ausgehend hiervon ist es Aufgabe der vorliegenden Erfindung ein verbessertes Verfahren zur Reduzierung von Blockartefakten zu schaffen, bei dem die Interpolation ausgewählter Farbwerte verbessert wird.outgoing It is an object of the present invention to provide an improved To provide a method of reducing block artifacts, in which the interpolation of selected ones Color values is improved.

Die Aufgabe wird mit dem Verfahren der eingangs genannten Art gelöst durch:

  • – Bestimmen von mindestens einem Überblendungsfaktor aus der Ähnlichkeit von Helligkeitswerten von Bildpixeln, und
  • – Interpolation ausgewählter Farbwerte von Bildpixeln in Abhängigkeit von dem Überblendungsfaktor.
The object is achieved by the method of the type mentioned above by:
  • Determining at least one blending factor from the similarity of brightness values of image pixels, and
  • Interpolation of selected color values of image pixels as a function of the blending factor.

Anstelle der bislang eingesetzten linearen Interpolation wird vorgeschlagen, mit einem aus der Ähnlichkeit der Helligkeiten von Bildpunkten gebildeten Überblendungsfaktor ein Überblenden zwischen den Chrominaz-Werten der für die die Interpolation herangezogenen Bildpunkte anzuwenden. Hierbei wird erreicht, dass für Bildpunkte gleicher Luminanz ähnliche Chrominanz-Werte resultieren. Bei der Interpolation der Farbwerte wird somit die Luminanz mit berücksichtigt.Instead of the linear interpolation used so far is proposed with one of the similarity blending factor formed by the brightnesses of pixels between the chrominance values of those used for the interpolation Apply pixels. This ensures that for pixels same luminance similar Chrominance values result. In the interpolation of the color values Thus, the luminance is taken into account.

Hierdurch werden Interpolations-Fehler zusätzlich basierend auf der Annahme reduziert, dass die Chrominanz-Werte lokal betrachtet mit bestimmten Luminanz-Werten verbunden sind und ähnliche Luminanz-Werte in ähnlichen Chrominanz-Werten resultieren.hereby In addition, interpolation errors are added based on the assumption that reduces the chrominance values locally considered to be associated with certain luminance values and similar luminance values in similar Chrominance values result.

Farbartefakte können damit noch besser reduziert werden.color artifacts can to be even better reduced.

Der Überblendungsfaktor wird vorzugsweise aus der Differenz zwischen dem absoluten Differenzwert des Helligkeitswertes des Bildpixels im Mittelpunkt der Bildblockmatrix und einem ersten weiteren Helligkeitswert eines angrenzenden Bildpixels sowie dem absoluten Differenzwert des Helligkeitswertes des Bildpixels im Mittelpunkt der Bildblockmatrix und einem zweiten weiteren Helligkeitswert eines angrenzenden Bildpixels berechnet.The crossfade factor is preferably the difference between the absolute difference value the brightness value of the image pixel in the center of the image block matrix and a first further brightness value of an adjacent image pixel and the absolute difference value of the brightness value of the image pixel in the center of the image block matrix and a second further brightness value of an adjacent image pixel.

So kann beispielsweise bei einer horizontalen Textur der absolute Differenzwert mit dem horizontal an das Bildpixel im Mittelpunkt der Bildblockmatrix angrenzenden Werte und bei vertikaler Textur der absolute Differenzwert mit den vertikal an das Bildpixel im Mittelpunkt der Bildblockmatrix angrenzenden Werte berechnet werden.So For example, for a horizontal texture, the absolute difference value with the horizontal to the image pixel in the center of the image block matrix adjacent values and for vertical texture the absolute difference value with the vertical to the image pixel in the center of the image block matrix adjacent values are calculated.

Auch die ermittelte Differenz kann vorzugsweise ein Helligkeitsgrundwert, vorzugsweise der Wert 128, aufaddiert werden, um den Überblendungsfaktor zu erhalten.Also the determined difference may preferably be a brightness base value, preferably the value 128, are added up to the crossfade factor to obtain.

Die Texturrichtung kann beispielsweise in horizontaler und/oder vertikaler Richtung der Bildblöcke ermittelt werden. Damit werden diagonale oder sonstige Texturrichtungen nicht berücksichtigt.The Texture direction can, for example, in horizontal and / or vertical Direction of the image blocks be determined. This will be diagonal or other texture directions not considered.

Die Texturrichtung kann beispielsweise eine Richtung von gleichförmigen Strukturen im Bildinhalt sein, die in an sich bekannter Weise bestimmt wird.The For example, texture direction may be a direction of uniform structures be in the image content, which is determined in a conventional manner.

Vorteilhaft ist es, wenn die Interpolation in an sich bekannter Weise in einer von der Texturrichtung abhängigen Richtung erfolgt. Dabei können folgende Fälle unterschieden werden:

  • a) Interpolation von Bildpixeln eines Bildblocks in horizontaler Richtung bei einer ermittelten horizontalen Textur;
  • b) Interpolation von Bildpixeln eines Bildblocks in vertikaler Richtung bei einer ermittelten vertikalen Textur; und
  • c) Interpolation von Bildpixeln eines Bildblocks in horizontaler und vertikaler Richtung, wenn keine Textur oder eine horizontale und vertikale Textur erkannt wurde.
It is advantageous if the interpolation takes place in a manner known per se in a direction dependent on the direction of the texture. The following cases can be distinguished:
  • a) interpolation of image pixels of an image block in the horizontal direction with a determined horizontal texture;
  • b) interpolation of image pixels of an image block in the vertical direction with a determined vertical texture; and
  • c) interpolation of image pixels of an image block in the horizontal and vertical directions when no texture or horizontal and vertical texture has been detected.

Die Ermittlung der Texturrichtung kann beispielsweise durch Berechnen der Summe von absoluten Differenzen zwischen Farb- oder Helligkeitswerten von Bildpixeln eines Bildblocks erfolgen. D. h., dass Farb- oder Helligkeitswerte von Bildpixeln eines Bildblocks miteinander vergleichen werden und aus den Unterschieden die Textur bestimmt wird.The Determination of the texture direction can be done, for example, by calculation the sum of absolute differences between color or brightness values take place of image pixels of an image block. That is, that color or Compare brightness values of image pixels of an image block and from the differences the texture is determined.

Beispielsweise kann eine Ermittelung eines Indikators für die Texturrichtung in Abhängigkeit von der Farbe des Bildpixels im Mittelpunkt der Bildblockmatrix erfolgen. Das mittlere Bildpixel gibt somit das Zentrum der zu ermittelnden Texturrichtung an und bildet den Basispunkt für die Bestimmung der die Textur kennzeichnenden Farb- oder Helligkeitsunterschiede der Bildpixel.For example may be a determination of an indicator for the texture direction depending from the color of the image pixel in the center of the image block matrix respectively. The middle image pixel thus gives the center of the to be determined Texture direction and forms the base point for the determination of the texture distinctive color or brightness differences of the image pixels.

Eine horizontale Texturrichtung kann beispielsweise durch Berechnung eines zugeordneten Indikators als Summe der absoluten Differenzen der jeweils in horizontaler Richtung nächsten Bildpixelwerte für die Luminanz oder die Farbe Grün berechnet werden, wenn der Bildpixel im Mittelpunkt des Bildblocks eine Chrominanz-, eine Rot- oder eine Blau-Komponente ist.A horizontal texture direction can be calculated, for example an associated indicator as the sum of the absolute differences each in the horizontal direction next image pixel values for the luminance or the color green are calculated when the image pixel is at the center of the image block is a chrominance, a red, or a blue component.

Die vertikale Texturrichtung kann mit einem Indikator erkannt werden, der als Summe der absoluten Differenzen der jeweils in vertikaler Richtung nächsten Bildpixelwerte für die Luminanz oder die Farbe Grün berechnet wird, wenn der Bildpixel im Mittelpunkt des Bildblocks eine Chrominanz-, Rot- oder Blau-Komponente ist.The vertical texture direction can be detected with an indicator as the sum of the absolute differences of each in vertical Direction next Image pixel values for the luminance or the color green is calculated when the image pixel is at the center of the image block is a chrominance, red or blue component.

Eine bestimmte Texturrichtung wird beispielsweise dann erkannt, wenn der entsprechende Indikator für die horizontale oder vertikale Texturrichtung einen vorgegebenen Schwellwert überschreitet.A certain texture direction is recognized, for example, if the corresponding indicator for the horizontal or vertical texture direction a given Threshold exceeds.

Das Verfahren wird bevorzugt für Bildblöcke im sogenannten Bayer-Mosaik mit einer Bildblockgröße von 5×3-Bildblöcken eingesetzt.The Method is preferred for Picture blocks in the so-called Bayer mosaic with an image block size of 5 × 3 image blocks used.

Die Aufgabe wird weiterhin mit einer Schaltungsanordnung der eingangs genannten Art dadurch gelöst, dass die Textur-Detektionseinheit weiterhin zur Bestimmung von mindestens einem Überblendungsfaktor aus der Ähnlichkeit von Helligkeitswerte von Bildpixeln und der Interpolator zur Interpolation ausgewählter Farbwerte von Bildpixeln in Abhängigkeit von dem Überblendungsfaktor ausgebildet ist.The object is further achieved by a circuit arrangement of the type mentioned above in that the texture detection unit further for determining at least one cross-fading factor from the similarity of brightness values of image pixels and the interpolator is designed to interpolate selected color values of image pixels as a function of the blending factor.

Der Interpolator ist dabei beispielsweise durch Programmierung oder geeignete Hardware so eingerichtet, dass er das oben beschriebene Verfahren ausführt.Of the Interpolator is, for example, by programming or appropriate hardware is set up to be the one described above Performs method.

Die Erfindung wird nachfolgend anhand eines Ausführungsbeispiels mit den beigefügten Zeichnungen näher erläutert. Es zeigen:The Invention will now be described with reference to an embodiment with the accompanying drawings explained in more detail. It demonstrate:

1 – Blockdiagramm einer Schaltungsanordnung zur Reduzierung von Blockartefakten; 1 Block diagram of a circuit for reducing block artifacts;

2 – 5×3-Bayer-Bildblock mit Rot-, Blau- und Grün-Farbwerten von Bildpixeln und Blau-Komponente im Mittelpunkt; 2 - 5 × 3 Bayer image block with red, blue and green color values of image pixels and blue component in the center;

3 – 5×3-Bayer-Bildblock mit Rot-, Blau- und Grün-Farbwerten von Bildpixeln und Grün-Komponente im Mittelpunkt. 3 - 5 × 3 Bayer image block with red, blue and green color values of image pixels and green component in the center.

Die 1 lässt ein Blockdiagramm einer Schaltungsanordnung 1 zur Reduzierung von Blockartefakten von Bildern erkennen, die aus einer Mehrzahl von Bildblöcken 2 zusammengesetzt sind. In einem Zeilenspeicher 3 werden die Farb- oder Helligkeitswerte der Bildpixel von einem Kamera-Sensor gesammelt, wie beispielsweise die Rot-, Grün- oder Blaukomponenten eines Bayer-Mosaiks mit jeweils 1×8 Bit. Der Zeilenspeicher 3 speichert die Bildpixel für zwei Zeilen. Am Ausgang des Zeilenspeichers 3 werden vertikale Tripel (3×8 Bit) bestehend aus den vorhandenen Farbwerten dreier übereinander liegenden Bildpunkten eines Bildblocks 2 an einen Matrixspeicher 4 geliefert. In jedem Taktzyklus wird ein solches Tripel weitergegeben. Aus einer 5×3-Matrix, die im Matrixspeicher 4 abgelegt ist (5×3×8 Bit) wird mit einer Textur-Detektionseinheit 5 untersucht, ob der Bildblock 2 eine Textur in horizontaler und/oder vertikaler Richtung aufweist. Hierzu werden Textur-Indikatoren erzeugt, die mit einem Verzögerungsglied 6 um einen Taktzyklus verzögert (Z-1) an einen Interpolator 7 übertragen werden. Der Matrixspeicher 4 stellt in jedem Taktzyklus eine komplette 5×3 Matrix für die Interpolation zur Verfügung. Um die Textur-Indikatoren eines Zyklus im Voraus zu berechnen und das Zeitverhalten zu verbessern, ist die Ausgabe des Matrixspeichers 4 als eine 6×3 Matrix ausgelegt, d. h. drei Linien mit sechs Pixeln. Die Interpolation benutzt die rechten 5×3 Werte der Ausgabematrix und die Textur-Erkennung benutzt die linken 5×3 Matrix-Werte. Die linke Matrix entspricht der rechten Matrix für den folgenden Bildpunkt.The 1 shows a block diagram of a circuit arrangement 1 to reduce block artifacts from images made up of a plurality of image blocks 2 are composed. In a line memory 3 For example, the color or brightness values of the image pixels are collected by a camera sensor, such as the red, green, or blue components of a Bayer mosaic, each 1 × 8 bits. The line memory 3 saves the image pixels for two lines. At the output of the line memory 3 are vertical triples (3 × 8 bits) consisting of the existing color values of three superimposed pixels of an image block 2 to a matrix memory 4 delivered. In each clock cycle, such a triple is passed. From a 5x3 matrix stored in matrix memory 4 is stored (5 × 3 × 8 bits) with a texture detection unit 5 examined if the image block 2 has a texture in the horizontal and / or vertical direction. For this purpose, texture indicators are generated, which are connected to a delay element 6 delayed by one clock cycle (Z -1 ) to an interpolator 7 be transmitted. The matrix memory 4 provides a complete 5 × 3 matrix for interpolation in each clock cycle. To calculate the texture indicators of a cycle in advance and to improve the timing is the output of the matrix memory 4 is designed as a 6x3 matrix, ie three lines with six pixels. The interpolation uses the right 5x3 values of the output matrix and the texture detection uses the left 5x3 matrix values. The left matrix corresponds to the right matrix for the next pixel.

Die Textur-Detektionseinheit 6 ist weiterhin zur Bestimmung von mindestens einem Überblendungsfaktor k aus der Ähnlichkeit von Helligkeitswerten von Bildpixeln eines Bild blocks 2 ausgebildet. Der Überblendungsfaktor k wird ebenfalls an den Interpolator 7 weitergeleitet.The texture detection unit 6 is furthermore for determining at least one cross-fading factor k from the similarity of brightness values of image pixels of an image block 2 educated. The crossfade factor k is also sent to the interpolator 7 forwarded.

Der Interpolator erhält die 5×3-Matrix (5×3×8 Bit) jeweils eine Bildblocks 2 aus dem Matrixspeicher 4 und führt in Abhängigkeit von dem Textur-Indikator T und dem Überblendungsfaktor eine Interpolation durch, um komplettierte Bilddaten für einen Bildpunkt im RGB-Format (3×8 Bit) am Ausgang der Schaltungsanordnung 1 zu liefern.The interpolator receives the 5 × 3 matrix (5 × 3 × 8 bits) one frame at a time 2 from the matrix memory 4 and performs interpolation in response to the texture indicator T and the blending factor to complete image data for a pixel in RGB format (3 × 8 bits) at the output of the circuit 1 to deliver.

Die Interpolation wird im Folgenden erläutert.The Interpolation is explained below.

Für jeden Bildpunkt werden zunächst in einer 5×3 Matrix eines Bildblocks 2 sogenannte Texturen, d. h. in horizontaler oder vertikaler Richtung gleichförmige Strukturen im Bildinhalt, erkannt. Die Texturinformation wird in Form eines Textur-Indikators T bei der Nachfolgenden Interpolation, die wiederum auf einer 5×3-Matrix eines Bildblockes durchgeführt wird, einbezogen. Hierdurch werden Artefakte insbesondere an Kanten und Linien im Bildinhalt verhindert oder zumindest reduziert. Trotz der Komplexität der Berechnung sind lediglich zwei Zeilenspeicher für den gesamten Interpolationsvorgang erforderlich.For each pixel are first in a 5 × 3 matrix of an image block 2 So-called textures, ie in the horizontal or vertical direction uniform structures in the image content recognized. The texture information is included in the form of a texture indicator T in the subsequent interpolation, which in turn is performed on a 5x3 matrix of an image block. As a result, artifacts are prevented or at least reduced in particular on edges and lines in the image content. Despite the complexity of the calculation, only two line memories are required for the entire interpolation process.

Die 5×3-Matrix eines Bildblocks 2 stellt jeweils einen Ausschnitt aus einem Eingangsbild dar. Der Farbwert in der Mitte einer 5×3-Matrix eines Bildblocks 2 gehört dabei zum aktuell zu interpolierenden Bildpunkt. Von den umliegenden Punkten sind die Farbinformation entsprechend des Bayer-Mosaiks angeordnet. Es gibt zwei verschiedene in den 2 und 3 dargestellte Fälle für die Kalkulation in Abhängigkeit von der vorhandenen Farbe des aktuellen Bildpunktes in der Mitte des Bildblocks 2.The 5x3 matrix of an image block 2 each represents a section of an input image. The color value in the middle of a 5 × 3 matrix of an image block 2 belongs to the pixel currently being interpolated. From the surrounding points, the color information is arranged according to the Bayer mosaic. There are two different ones in the 2 and 3 illustrated cases for the calculation depending on the existing color of the current pixel in the middle of the image block 2 ,

Die 2 lässt eine 5×3-Matrix eines Bildblocks mit dem Farbwert B23 in der Mitte des Bildblocks 2 erkennen. Weiterhin sind entsprechend des Bayer-Mosaiks Grün (G) und Rot (R)-Farbwerte vorhanden.The 2 leaves a 5 × 3 matrix of an image block with the color value B 23 in the middle of the image block 2 detect. Furthermore, according to the Bayer mosaic, green (G) and red (R) color values are present.

Vergleichbar mit dem dargestellten Fall A ist auch der nicht skizzierte Fall, wenn in der Mitte des Bildblocks eine Rot-Information vorhanden ist.Comparable with the illustrated case A is also the case not sketched, if there is red information in the middle of the image block is.

Der in der 3 dargestellte Fall B lässt einen Bildblock 2 erkennen, bei dem in Mitte des Bildblocks 2 eine Grün-Information G23 in einer vertikalen Reihe von Rot-Informationen R13, R33 vorhanden ist.The Indian 3 Case B shown leaves an image block 2 recognize where in the middle of the image block 2 green information G 23 is present in a vertical row of red information R 13 , R 33 .

Die Kalkulation einer Grün-Komponente bei vorhandener Blau- und Rot-Komponente, wie auch die Interpolation von Rot und Blau bei vorhandener Grün-Komponente in roter oder blauer Reihe ist jeweils identisch und wird deswegen auch jeweils als ein Fall betrachtet.The Calculation of a green component with existing blue and red component, as well as the interpolation of red and blue with green component present in red or blue blue row is identical in each case and therefore also in each case considered as a case.

Mit der Textur-Detektionseinheit wird in einem ersten Schritt untersucht, ob horizontale und vertikale Texturen vorhanden sind. Hierzu wird das Vorhandensein von nur kleinen Detail-Änderungen in horizontaler bzw. vertikaler Richtung detektiert. Die Information über bestehende Textur-Richtungen wird für die Interpolation herangezogen, die entweder horizontal, vertikal oder bilinear sein kann. Eine bilineare Interpolation wird nur in dem Fall durchgeführt, wenn keine Textur gefunden wurde oder eine Textur sowohl in horizontaler und vertikaler Richtung vorliegt.With the texture detection unit is examined in a first step, whether horizontal and vertical textures are present. For this purpose is the presence of only small detail changes in horizontal or vertical direction detected. The information about existing texture directions is for used the interpolation, which is either horizontal, vertical or bilinear. Bilinear interpolation is only possible in carried out the case, if no texture was found or a texture in both horizontal and vertical direction.

Durch die Interpolation in einer bestimmten Richtung in Abhängigkeit von dem festgestellten Textur-Indikator T werden die bekannten Feder- oder Franse-Artefakte beim Interpolieren an Kanten verhindert oder zumindest reduziert.By the interpolation in a certain direction depending on of the detected texture indicator T, the known spring or fringe artifacts when interpolating on edges prevented or at least reduced.

Fehlende Grün-Informationen im Fall A werden ausschließlich unter Einbeziehung der Grün-Informationen der Punkte in der 5×3-Matrix eines Bildblocks 2 um den Farbpunkt B23 berechnet. Die berechnete Grün-Komponente wird dann zur Abschätzung der Helligkeit (Luminanz) herangezogen, da im RGB-Farbraum die Farbe Grün den größten Anteil an der Helligkeit hat. Blaue und rote Werte werden nicht direkt auf Basis der umgebenen Informationen der entsprechenden Farbe kalkuliert, sondern auf Basis der Differenz dieser Farbe zum Luminanz-Wert, der Chrominanz.Missing green information in case A becomes exclusive with the inclusion of the green information of the dots in the 5x3 matrix of an image block 2 calculated by the color point B 23 . The calculated green component is then used to estimate the brightness (luminance), since in the RGB color space the color green has the largest share of the brightness. Blue and red values are not calculated directly on the basis of the surrounding information of the corresponding color, but on the basis of the difference of this color to the luminance value, the chrominance.

Im Fall B (3) ist die Grün-Komponente G23 und damit die Luminanz bereits vorhanden. Es werden direkt die fehlenden Rot- und Blau-Komponenten R23 und B23 berechnet. Dies erfolgt wiederum über die Chrominanz-Information.In case B ( 3 ) is the green component G 23 and thus the luminance already exists. The missing red and blue components R 23 and B 23 are calculated directly. This again takes place via the chrominance information.

Im an sich bekannten Standard-Modus werden fehlende Rot- und Blau-Farbwerte durch lineare Interpolation der Chrominanzen berechnet, z. B. die Differenzen von Rot und Blau zu dem Grün-Wert, der hier als Luminanz genutzt wird.in the Standard mode known per se becomes missing red and blue color values calculated by linear interpolation of chrominances, e.g. For example, the differences from red and blue to the green value, which is used here as luminance.

Im erfindungsgemäßen erweiterten Modus werden Interpolations-Fehler zusätzlich basierend auf der Annahme reduziert, dass die Chrominanz-Werte lokal betrachtet mit bestimmten Luminanz-Werten verbunden sind und ähnliche Luminanz-Werte in ähnlichen Chrominanz-Werten resultieren.in the extended according to the invention Mode, interpolation errors are additionally based on the assumption reduces the chrominance values locally with certain ones Luminance values are related and similar luminance values in similar Chrominance values result.

Eingangsdaten des Verfahrens sind einzelne 8-bit Werte von roter, grüner oder blauer Farbe für Bildpixel, abhängig von der Sample-Position in dem Bayer-Muster. Die Schaltungsanordnung 1 gibt einen interpolierten Rahmen von 24-bit RGB-Pixeln mit identischer Auflösung wie das Eingangsbild aus.Input data of the method are single 8-bit values of red, green or blue color for image pixels, depending on the sample position in the Bayer pattern. The circuit arrangement 1 Outputs an interpolated frame of 24-bit RGB pixels with the same resolution as the input image.

Für die Erkennung von vorhandenen Texturen in der Textur-Detektionseinheit 5 werden zunächst ein horizontaler und einer vertikaler Textur-Indikator T bestimmt, dessen Auswertung dann eine Information über eine vorliegende Textur liefert. Die Textur-Indikatoren T werden als Summe von absoluten Differenzen von bestimmten Farbwerten in der jeweiligen Richtung berechnet. Dabei werden überwiegend Grün-Informationen benutzt. Da über Grün G die G Helligkeit abgeschätzt werden kann.For detecting existing textures in the texture detection unit 5 First, a horizontal and a vertical texture indicator T are determined, the evaluation then provides information about a present texture. The texture indicators T are calculated as the sum of absolute differences of certain color values in the respective direction. Mostly green information is used. Since the G brightness can be estimated via green G.

Die Berechnung der Textur-Indikatoren T ist abhängig von der Farbe des Bildpunktes im Mittelpunkt eines Bildblocks 2. Für den Fall einer vorhandenen R- oder B-Komponente (Fall A) und den Fall einer Grün-Komponente im Mittelpunkt des Bildblocks (Fall B) werden die Indikatoren wie folgt berechnet:
Fall A: Th = abs(G11 – G13) + abs(G13 – G15) + abs(G22 – G24) + abs(G31 – G33) + abs(G33 – G35) Tv = abs(G11 – G31) + abs(G13 – G33) + abs(G15 – G35)Fall B: Th = abs(G12 – G14) + abs(G21 – G23) + abs(G23 – G2) + abs(G32 – G34)Grün in blauer Reihe: Tv = abs(G12 – G23) + abs(R13 – R33) + abs(G11 – G34)Grün in roter Reihe: Tv = abs(G12 – G32) + abs(B13 – B33) + abs(G14 – G24).
The calculation of the texture indicators T is dependent on the color of the pixel in the center of an image block 2 , In the case of an existing R or B component (case A) and the case of a green component in the center of the image block (case B), the indicators are calculated as follows:
Case A: T H = abs (G 11 - G 13 ) + abs (G 13 - G 15 ) + abs (G 22 - G 24 ) + abs (G 31 - G 33 ) + abs (G 33 - G 35 ) T v = abs (G 11 - G 31 ) + abs (G 13 - G 33 ) + abs (G 15 - G 35 ) Case B: T H = abs (G 12 - G 14 ) + abs (G21 - G23) + abs (G 23 - G 2 ) + abs (G 32 - G 34 ) Green in blue row: T v = abs (G 12 - G 23 ) + abs (R 13 - R 33 ) + abs (G 11 - G 34 ) Green in red row: T v = abs (G12 - G32) + abs (B 13 - B 33 ) + abs (G 14 - G 24 ).

Dabei ist Th ein Textur-Indikator für eine horizontale Textur Tv ein Textur-Indikator für die vertikale Textur. Eine vertikale Textur. Eine horizontale oder vertikale Textur wird in jedem Fall erkannt, in dem die Textur-Indikatoren Th und Tv mit einem vorgegebenen Schwellwert und gegeneinander verglichen werden:
Horizontale Textur: (Th + Schwellwert < Tv)Vertikale Textur: (Tv + Schwellwert < Th)
Therein, T h is a texture indicator for a horizontal texture T v is a texture indicator for the vertical texture. A vertical texture. A horizontal or vertical texture is detected in each case by comparing the texture indicators T h and T v with a given threshold and against each other:
Horizontal texture: (T H + Threshold <T v ) Vertical texture: (T v + Threshold <T H )

Die Interpolation erfolgt in Abhängigkeit von einer erkannten horizontalen oder vertikalen oder keiner erkannten Textur. Im Folgenden werden die Ausführungsbeispiele auf die Beschreibung für den Fall A mit vorhandener Blau-Information und für den Fall B mit vorhandener Grün-Information in einer Bildzeile mit vorhandenen blauen Farbwerten beschränkt. Für den Fall der vorhandenen Rot-Informationen und der Grün-Information wird die Interpolation identisch aber unter Austausch von Rot- und Grün-Komponenten durchgeführt.The interpolation takes place depending on a recognized horizontal or vertical or no recognized texture. In the following, the embodiments are limited to the description for the case A with existing blue information and for the case B with existing green information in a picture line with existing blue color values. In the case of the existing red information and the green information, the interpolation on identical but with replacement of red and green components performed.

Die fehlenden Grün-Werte werden unter Berücksichtigung einer erkannten Textur-Richtung linear interpoliert. Ansonsten wird die grüne Farbe bilinear interpoliert.The missing green values be considered a recognized texture direction linear interpolated. Otherwise, the green color is interpolated bilinearly.

Die Chrominanz wird durch lineare bzw. bilineare Interpolation der Differenz des Rot- und Grün-Wertes berechnet.The Chrominance is determined by linear or bilinear interpolation of the difference the red and green value calculated.

Fall A (beschrieben für den Fall einer vorhandenen Blau-Information):

  • a) horizontale Textur: G23= (G22 + G24)/2 R13 = (R12 + R14)/2 R33 = (R32 + R34)2 R23 = G23 + (R13 – G13)/2 + (R33 – G33)/2 = G23 + (R12 + R14 + R32 + R34)/4 – (G13 + G33)/2
  • b) vertikale Textur G23 = (G13 + G33)/2 R22 = (R12 + R32)/2 R24 = (R14 + R34)/2 R23 = G23 + (R22 – G22)/2 + (R24 – G24)/2 = G23 + (R12 + R14 + R32 + R34)/4 – (G22 + G24)/2
  • c) keine Textur erkannt: G23 = (G13 + G33 + G22 + G24)/4 R23 = (R12 + R14 + R32 + R34)/4.
Case A (described in the case of existing blue information):
  • a) horizontal texture: G 23 = (G 22 + G 24 ) / 2 R 13 = (R 12 + R 14 ) / 2 R 33 = (R 32 + R 34 ) 2 R 23 = G 23 + (R 13 - G 13 ) / 2 + (R 33 - G 33 ) / 2 = G 23 + (R 12 + R 14 + R 32 + R 34 ) / 4 - (G 13 + G 33 ) / 2
  • b) vertical texture G 23 = (G 13 + G 33 ) / 2 R 22 = (R 12 + R 32 ) / 2 R 24 = (R 14 + R 34 ) / 2 R 23 = G 23 + (R 22 - G 22 ) / 2 + (R 24 - G 24 ) / 2 = G 23 + (R 12 + R 14 + R 32 + R 34 ) / 4 - (G 22 + G 24 ) / 2
  • c) no texture detected: G 23 = (G 13 + G 33 + G 22 + G 24 ) / 4 R 23 = (R 12 + R 14 + R 32 + R 34 ) / 4.

Fall B (beschrieben für den Fall eines grünen Farbwertes in blauer Bildzeile):

  • a) horizontale Textur: G13 = (G12 + G14)/2 G33 = (G32 + G34)/2 R23 = G23 + (R13 – G13)/2 + (R33 – G33)/2 = G23 + (R13 + R33)/2 – (G12 + G14 + G32 + G34)/4 B23 = (B22 + B24)/2
  • b) vertikale Textur: G22 = (G12 + G32)/2 G24 = (G14 + G34)/2 R23 = (R13 + R33)/2 B23 = (B22 – G22)/2 + (B24 – G24)/2 = G23 + (B22 + B24)/2 – (G12 + G14 + G32 + G34)/4
  • c) keine Textur erkannt: R23 = G23 + (R13 + R33)/2 – (G12 + G14 + G32 + G34)/4 B23 = G23 + (B22 + B24)/2 – (G12 + G14 + G32 + G34)/4
Case B (described in the case of a green color value in blue image line):
  • a) horizontal texture: G 13 = (G 12 + G 14 ) / 2 G 33 = (G 32 + G 34 ) / 2 R 23 = G 23 + (R 13 - G 13 ) / 2 + (R 33 - G 33 ) / 2 = G 23 + (R 13 + R 33 ) / 2 - (G 12 + G 14 + G 32 + G 34 ) / 4 B 23 = (B 22 + B 24 ) / 2
  • b) vertical texture: G 22 = (G 12 + G 32 ) / 2 G 24 = (G 14 + G 34 ) / 2 R 23 = (R 13 + R 33 ) / 2 B 23 = (B 22 - G 22 ) / 2 + (B 24 - G 24 ) / 2 = G 23 + (B 22 + B 24 ) / 2 - (G 12 + G 14 + G 32 + G 34 ) / 4
  • c) no texture detected: R 23 = G 23 + (R 13 + R 33 ) / 2 - (G 12 + G 14 + G 32 + G 34 ) / 4 B 23 = G 23 + (B 22 + B 24 ) / 2 - (G 12 + G 14 + G 32 + G 34 ) / 4

Die Interpolation erfolgt in einem erfindungsgemäßen erweiterten Modus für ausgewählte Farbwerte von Bildpixeln in Abhängigkeit von einem Überblendungsfaktor k. Dieser Modus wird für den Fall A) mit vorhandener Blau-Information und für den Fall mit vorhandener Grün-Information in einer Bildzeile mit vorhandenen blauen Farbwerten beschrieben. Die fehlenden Grün-Werte werden identisch zum oben beschriebenen Standard-Modus linear oder bilinear interpoliert. Im Falle keiner erkannten Textur ist die Chrominanz-Berechnung ebenfalls identisch zum Standard-Modus.The Interpolation takes place in an extended mode according to the invention for selected color values of image pixels in dependence from a crossfade factor k. This mode is for case A) with blue information available and in case with existing green information described in an image line with existing blue color values. The missing green values are identical to the standard mode described above linear or interpolated bilinearly. In the case of no recognized texture, the chrominance calculation is also identical to the standard mode.

Im Falle einer Textur wird bei einer Chrominanz-Berechnung anstelle der linearen Interpolation ein Überblenden zwischen den Chrominanz-Werten der für die Interpolation herangezogenen Bildpunkte angewendet. Der Überblendungsfaktor k wird dabei aus der Ähnlichkeit der Helligkeiten der Bildpunkte gebildet, so dass für Bildpunkte gleicher Luminanz ähnliche Chrominanz-Werte resultieren.in the Trap of a texture is used in a chrominance calculation cross-fading the linear interpolation between the chrominance values of those used for the interpolation Pixels applied. The crossfade factor k becomes from the similarity the brightnesses of the pixels formed, so for pixels same luminance similar Chrominance values result.

Fall A (beschrieben für den Fall einer vorhandenen Blau-Information):

  • a) horizontale Textur: G23 = (G22 + G24)/2 R13 = (R12 + R14)/2 R33 = (R32 – R34)/2 k = abs(G13 – G23) – abs(G33 – G23) – 128 R23 = G23 + (1 – k)·(R13 – G13) + k·(R33 – G33) = G23 + R13 – G13 + k·(R33 – G33 – R13 + G13)
  • b) vertikale Textur: G23 = (G13 + G33)/2 R22 = (R12 + R32)/2 R24 = (R14 + R34)/2 k = abs(G22 – G23) – abs(G24 – G23) + 128 R23 = G23 + (1 – k)·(R22 – G22) + k·(R24 – G24) = G23 + R22 – G22 + k·(R24 – G24 – R22 + G22)
  • c) keine Textur erkannt: G23 = (G13 + G33 + G22 + G24)/4 R23 = (R12 + R14 + R32 + R34)/4
Case A (described in the case of existing blue information):
  • a) horizontal texture: G 23 = (G 22 + G 24 ) / 2 R 13 = (R 12 + R 14 ) / 2 R 33 = (R 32 - R 34 ) / 2 k = abs (G 13 - G 23 ) - abs (G 33 - G 23 ) - 128 R 23 = G 23 + (1 - k) · (R 13 - G 13 ) + k · (R 33 - G 33 ) = G 23 + R 13 - G 13 + k · (R 33 - G 33 - R 13 + G 13 )
  • b) vertical texture: G 23 = (G 13 + G 33 ) / 2 R 22 = (R 12 + R 32 ) / 2 R 24 = (R 14 + R 34 ) / 2 k = abs (G 22 - G 23 ) - abs (G 24 - G 23 ) + 128 R 23 = G 23 + (1 - k) · (R 22 - G 22 ) + k · (R 24 - G 24 ) = G 23 + R 22 - G 22 + k · (R 24 - G 24 - R 22 + G 22 )
  • c) no texture detected: G 23 = (G 13 + G 33 + G 22 + G 24 ) / 4 R 23 = (R 12 + R 14 + R 32 + R 34 ) / 4

Fall B (beschrieben für den Fall eines grünen Farbwertes in blauer Bildzeile):

  • a) horizontale Textur: G13 = (G12 + G14)/2 G33 = (G32 + G34)/2 k = abs(G13 – G23) – abs(G33 – G23) + 128 R23 = G23 + (1 – k)·(R13 – G13) + k·(R33 – G33) = G23 + R13 – G13 + k·(R33 – G33 – R13 + G13) B23 = (B22 + B24)/2
  • b) vertikale Textur: G22 = (G12 + G32)/2 G24 = (G14 + G34)/2 R23 = (B13 + R33)/2 k = abs(G22 – G23) – abs(G24 – G23) + 128 B23 = G23 +(1 – k)·(B22 – G22) + k·(B24 – G24) = G23 + B22 – G22 + k·(B24 – G24 – B22 + G22)
  • c) keine Textur erkannt: R23 = G23 + (R13 + R33)/2 – (G12 + G14 + G32 + G34)/4 B23 = G23 + (B22 + R24)/2 – (G12 + G14 + G32 + G34)/4.
Case B (described in the case of a green color value in blue image line):
  • a) horizontal texture: G 13 = (G 12 + G 14 ) / 2 G 33 = (G 32 + G 34 ) / 2 k = abs (G 13 - G 23 ) - abs (G 33 - G 23 ) + 128 R 23 = G 23 + (1 - k) · (R 13 - G 13 ) + k · (R 33 - G 33 ) = G 23 + R 13 - G 13 + k · (R 33 - G 33 - R 13 + G 13 ) B 23 = (B 22 + B 24 ) / 2
  • b) vertical texture: G 22 = (G 12 + G 32 ) / 2 G 24 = (G 14 + G 34 ) / 2 R 23 = (B 13 + R 33 ) / 2 k = abs (G 22 - G 23 ) - abs (G 24 - G 23 ) + 128 B 23 = G 23 + (1 - k) · (B 22 - G 22 ) + k · (B 24 - G 24 ) = G 23 + B 22 - G 22 + k · (B 24 - G 24 - B 22 + G 22 )
  • c) no texture detected: R 23 = G 23 + (R 13 + R 33 ) / 2 - (G 12 + G 14 + G 32 + G 34 ) / 4 B 23 = G 23 + (B 22 + R 24 ) / 2 - (G 12 + G 1 4 + G 32 + G 34 ) / 4.

Claims (17)

Verfahren zur Reduzierung von Blockartefakten von aus einer Mehrzahl von aus Bildblöcken (2) zusammengesetzten Bildern, wobei jeder Bildblock (2) eine Matrix aus Bildpixeln mit Farbwerten und Helligkeitswerten enthält und eine Interpolation von Bildpixeln jeweils eines Bildblocks (2) in Abhängigkeit von einer ermittelten Texturrichtung der Bildpixel erfolgt, gekennzeichnet durch – Bestimmen von mindestens einem Überblendungsfaktor (k) aus der Ähnlichkeit von Helligkeitswerten von Bildpixeln, und – Interpolation ausgewählter Farbwerte von Bildpixeln in Abhängigkeit von dem Überblendungsfaktor (k).Method for reducing block artifacts of a plurality of image blocks ( 2 ) composite images, each image block ( 2 ) contains a matrix of image pixels with color values and brightness values and an interpolation of image pixels in each case of an image block ( 2 ) takes place as a function of a determined direction of the texture of the image pixels, characterized by Determining at least one blending factor (k) from the similarity of brightness values of image pixels, and interpolating selected color values of image pixels as a function of the blending factor (k). Verfahren nach Anspruch 1, dadurch gekennzeichnet, dass die Texturrichtung in horizontaler und/oder vertikaler Richtung der Bildblöcke (2) ermittelt wird.A method according to claim 1, characterized in that the texture direction in the horizontal and / or vertical direction of the image blocks ( 2 ) is determined. Verfahren nach Anspruch 1 oder 2, dadurch gekennzeichnet, dass die Texturrichtung eine Richtung von gleichförmigen Strukturen im Bildinhalt ist.Method according to claim 1 or 2, characterized that the texture direction is a direction of uniform structures in the picture content is. Verfahren nach einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, dass die Interpolation in eine von der Texturrichtung abhängige Richtung erfolgt.Method according to one of the preceding claims, characterized characterized in that the interpolation is in one of the texture direction dependent direction he follows. Verfahren nach einem vorhergehenden Ansprüche, gekennzeichnet durch – Interpolation von Bildpixeln eines Bildblocks (2) in horizontaler Richtung bei einer ermittelten horizontalen Textur; – Interpolation von Bildpixlen eines Bildblocks (2) in vertikaler Richtung bei einer ermittelten vertikalen Textur; und – Interpolation von Bildpixeln eines Bildblocks (2) in horizontaler und vertikaler Richtung, wenn keine Textur oder eine horizontale und vertikale Textur erkannt wurde.Method according to one of the preceding claims, characterized by - interpolation of image pixels of an image block ( 2 ) in the horizontal direction with a detected horizontal texture; Interpolation of image pixels of an image block ( 2 ) in the vertical direction with a detected vertical texture; and interpolation of image pixels of an image block ( 2 ) in horizontal and vertical directions if no texture or horizontal and vertical texture was detected. Verfahren nach einem der vorhergehenden Ansprüche, gekennzeichnet durch Ermitteln der Texturrichtung durch Berechnen der Summe von absoluten Differenzen zwischen Farb- oder Helligkeitswerten von Bildpixeln eines Bildblocks (2).Method according to one of the preceding claims, characterized by determining the texture direction by calculating the sum of absolute differences between color or brightness values of image pixels of an image block ( 2 ). Verfahren nach einem der vorhergehenden Ansprüche, gekennzeichnet durch Ermitteln eines Indikators für die Texturrichtung in Abhängigkeit von der Farbe des Bildpixels im Mittelpunkt der Bildblockmatrix.Method according to one of the preceding claims, characterized by determining a texture direction indicator in dependence from the color of the image pixel in the center of the image block matrix. Verfahren nach Anspruch 7, gekennzeichnet durch Berechnen eines Indikators für die horizontale Texturrichtung als Summe der absoluten Differenzen der jeweils in horizontaler Richtung nächsten Bildpixelwerte für die Luminanz oder die Farbe Grün, wenn der Bildpixelmittelpunkt des Bildblocks (2) eine Chrominanz-, Rot- oder Blau-Komponente ist.Method according to Claim 7, characterized by calculating an indicator for the horizontal texture direction as the sum of the absolute differences of the respective horizontally adjacent image pixel values for the luminance or the color green when the image pixel center point of the image block ( 2 ) is a chrominance, red or blue component. Verfahren nach Anspruch 7 oder 8, gekennzeichnet durch Berechnen eines Indikators für die vertikale Texturrichtung als Summe der absoluten Differenzen der jeweils in vertikaler Richtung nächsten Bildpixelwerte für die Luminanz oder die Farbe Grün, wenn der Bildpixel im Mittelpunkt des Bildblocks (2) eine Chrominanz-, Rot- oder Blau-Komponente ist.A method according to claim 7 or 8, characterized by calculating an indicator for the vertical texture direction as the sum of the absolute differences of the respective vertically next image pixel values for the luminance or the color green, if the image pixel in the center of the image block ( 2 ) is a chrominance, red or blue component. Verfahren nach einem der Ansprüche 7 bis 9, gekennzeichnet durch Berechnen eines Indikators für die vertikale Texturrichtung als Summe der absoluten Differenzen der jeweils in vertikaler Richtung nächsten Bildpixelwerte für die Luminanz oder Farbe Grün und für die vertikale Spalte in der Mitte des Bildblocks (2) als Summe der absoluten Differenzen der in vertikaler Richtung nächsten Bildpixelwerte für die Chrominanz oder die Farben Rot oder Grün.Method according to one of Claims 7 to 9, characterized by calculating an indicator for the vertical texture direction as the sum of the absolute differences of the respectively vertically adjacent image pixel values for the luminance or color green and for the vertical column in the middle of the image block ( 2 ) as the sum of the absolute differences of the next vertical image pixel values for the chrominance or the colors red or green. Verfahren nach einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, dass eine Texturrichtung erkannt wird, wenn die ermittelte Texturrichtung jeweils einen definierten Schwellwert überschreitet.Method according to one of the preceding claims, characterized characterized in that a texture direction is detected when the determined texture direction each exceeds a defined threshold. Verfahren nach einem der vorhergehenden Ansprüche, gekennzeichnet durch Berechnen des Überblendungsfaktors aus der Differenz zwischen dem absoluten Differenzwert des Helligkeitswertes des Bildpixels im Mittelpunkt der Bildblockmatrix und einem ersten weiteren Helligkeitswert eines angrenzenden Bildpixels sowie dem absoluten Differenzwert des Helligkeitswertes des Bildpixels im Mittelpunkt der Bildblockmatrix und einem zweiten weiteren Helligkeitswert eines angrenzenden Bildpixels.Method according to one of the preceding claims, characterized by calculating the blending factor from the difference between the absolute difference value of the brightness value of the Image pixels in the center of the image block matrix and a first further Brightness value of an adjacent image pixel as well as the absolute one Difference value of the brightness value of the image pixel in the center of Image block matrix and a second further brightness value of a adjacent image pixels. Verfahren nach Anspruch 12, dadurch gekennzeichnet, dass auf die Differenz ein Helligkeitsgrundwert, vorzugsweise der Wert 128, addiert wird, um den Überblendungsfaktor (k) zu erhalten.Method according to claim 12, characterized in that that on the difference a brightness base value, preferably the Value 128, is added to the blending factor (k) to obtain. Verfahren nach Anspruch 12 oder 13, gekennzeichnet durch Berechnen der absoluten Differenzwerte mit den horizontal an das Bildpixel im Mittelpunkt der Bildblockmatrix angrenzenden Werte bei horizontaler Textur und Berechnen der absoluten Differenzwerte mit dem vertikal an das Bildpixel im Mittelpunkt der Bildblockmatrix angrenzenden Werte bei vertikaler Textur.A method according to claim 12 or 13, characterized by calculating the absolute difference values with the horizontal adjacent to the image pixel in the center of the image block matrix Horizontal texture values and calculating the absolute difference values with the vertical to the image pixel in the center of the image block matrix adjacent vertical texture values. Schaltungsanordnung (1) zur Reduzierung von Blockartefakten von aus einer Mehrzahl von Bildblöcken (2) zusammengesetzten Bildern mit dem Verfahren nach einem der vorhergehenden Ansprüche mit: – einem Zeilenspeicher (3) für jeweils eine Zeile von Farb- und/oder Helligkeitswerten von Bildpixeln eines Bildblocks (2), – einem aus dem Zeilenspeicher (3) kontinuierlich mit Tripeln von drei in einer Reihe oder Spalte nebeneinander liegenden Bildpixeln beschreibbarem Matrixspeicher (4), – einer Textur-Detektionseinheit (5) am Ausgang des Matrixspeichers (4) zur Ermittlung eines Texturindikators (T) in horizontaler und vertikaler Richtung aus den im Matrixspeicher (4) zwischengespeicherten Bildpixeln, und – einem Interpolator (7) am Ausgang des Matrixspeichers (4), um in Abhängigkeit eines ermittelten Texturindikators (T) die Bildpixel eines im Matrixspeicher (4) zwischengespeicherten Bildblocks (2) zu interpolieren. dadurch gekennzeichnet, dass – die Textur-Detektionseinheit (5) weiterhin zur Bestimmung von mindestens einem Überblendungsfaktor (k) aus der Ähnlichkeit von Helligkeitswerten von Bildpixeln und – der Interpolator (7) zur Interpolation ausgewählter Farbwerte von Bildpixeln in Abhängigkeit von dem Überblendungsfaktor (k) ausgebildet ist.Circuit arrangement ( 1 ) for reducing block artifacts from a plurality of image blocks ( 2 ) composite images with the method according to one of the preceding claims, comprising: - a line memory ( 3 ) for one line of color and / or brightness values of image pixels of an image block ( 2 ), - one from the line memory ( 3 ) continuously with triples of three in a row or column adjacent image pixels recordable matrix memory ( 4 ), - a texture detection unit ( 5 ) at the output of the matrix memory ( 4 ) for determining a texture indicator (T) in the horizontal and vertical direction from those in the matrix memory ( 4 ) cached Image pixels, and - an interpolator ( 7 ) at the output of the matrix memory ( 4 ), in dependence on a determined texture indicator (T), the image pixels of one in the matrix memory ( 4 ) cached image block ( 2 ) to interpolate. characterized in that - the texture detection unit ( 5 ) for determining at least one cross-fading factor (k) from the similarity of brightness values of image pixels and - the interpolator ( 7 ) is designed for the interpolation of selected color values of image pixels as a function of the blending factor (k). Schaltungsanordnung (1) nach Anspruch 15, gekennzeichnet durch ein Verzögerungselement (6) am Ausgang der Textur-Detektionseinheit, um den an den Interpolator (7) weitergeleiteten Texturindikator (T) um mindestens einen Taktzyklus zu verzögern.Circuit arrangement ( 1 ) according to claim 15, characterized by a delay element ( 6 ) at the output of the texture detection unit, to the interpolator ( 7 ) forwarded texture indicator (T) to delay at least one clock cycle. Digitale Kamera mit einem Bildsensor mit einer 5×3 Sensormatrix zur Erfassung von Bildblöcken (2) mit entsprechend eines Bayer-Mosaiks angeordneten Farbinformation, dadurch gekennzeichnet, dass der Bildsensor mit der Schaltungsanordnung (1) nach Anspruch 15 oder 16 verbunden ist.Digital camera with an image sensor with a 5 × 3 sensor matrix for capturing image blocks ( 2 ) arranged according to a Bayer mosaic color information, characterized in that the image sensor with the circuit arrangement ( 1 ) is connected according to claim 15 or 16.
DE102006028734A 2006-06-20 2006-06-20 Reduction method for block artifacts from multiple images, involves interpolating image pixels, which results image block as function of determined texture direction of image pixels Ceased DE102006028734A1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
DE102006028734A DE102006028734A1 (en) 2006-06-20 2006-06-20 Reduction method for block artifacts from multiple images, involves interpolating image pixels, which results image block as function of determined texture direction of image pixels

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
DE102006028734A DE102006028734A1 (en) 2006-06-20 2006-06-20 Reduction method for block artifacts from multiple images, involves interpolating image pixels, which results image block as function of determined texture direction of image pixels

Publications (1)

Publication Number Publication Date
DE102006028734A1 true DE102006028734A1 (en) 2007-12-27

Family

ID=38721106

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102006028734A Ceased DE102006028734A1 (en) 2006-06-20 2006-06-20 Reduction method for block artifacts from multiple images, involves interpolating image pixels, which results image block as function of determined texture direction of image pixels

Country Status (1)

Country Link
DE (1) DE102006028734A1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112508783A (en) * 2020-11-19 2021-03-16 西安全志科技有限公司 Image processing method based on directional interpolation, computer device and computer readable storage medium

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5373322A (en) * 1993-06-30 1994-12-13 Eastman Kodak Company Apparatus and method for adaptively interpolating a full color image utilizing chrominance gradients
US6563537B1 (en) * 1997-07-31 2003-05-13 Fuji Photo Film Co., Ltd. Image signal interpolation
US20030117507A1 (en) * 2001-12-21 2003-06-26 Nasser Kehtarnavaz Color filter array interpolation
DE10344397A1 (en) * 2003-08-07 2005-03-17 Samsung Electro-Mechanics Co., Ltd., Suwon Edge enhancement apparatus for portable digital camera, has edge enhancement unit to enhance output of interpolation unit according to edge detection value, which is obtained by edge detection unit
WO2006052306A2 (en) * 2004-11-09 2006-05-18 Eastman Kodak Company Interpolation method for captured color image data

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5373322A (en) * 1993-06-30 1994-12-13 Eastman Kodak Company Apparatus and method for adaptively interpolating a full color image utilizing chrominance gradients
US6563537B1 (en) * 1997-07-31 2003-05-13 Fuji Photo Film Co., Ltd. Image signal interpolation
US20030117507A1 (en) * 2001-12-21 2003-06-26 Nasser Kehtarnavaz Color filter array interpolation
DE10344397A1 (en) * 2003-08-07 2005-03-17 Samsung Electro-Mechanics Co., Ltd., Suwon Edge enhancement apparatus for portable digital camera, has edge enhancement unit to enhance output of interpolation unit according to edge detection value, which is obtained by edge detection unit
WO2006052306A2 (en) * 2004-11-09 2006-05-18 Eastman Kodak Company Interpolation method for captured color image data

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112508783A (en) * 2020-11-19 2021-03-16 西安全志科技有限公司 Image processing method based on directional interpolation, computer device and computer readable storage medium
CN112508783B (en) * 2020-11-19 2024-01-30 西安全志科技有限公司 Image processing method based on direction interpolation, computer device and computer readable storage medium

Similar Documents

Publication Publication Date Title
DE60221757T2 (en) Method and apparatus for simultaneously removing the mosaic effect and resizing raw image data
DE60314692T2 (en) Digital image method and apparatus for assembling removal of the mosaic effect and correction of bad pixels
DE69628866T2 (en) Adaptive interpolation of color areas in an electronic color camera with only one sensor
DE19712295B4 (en) Luminance / Chrominanzsignaltrennvorrichtung
DE69733978T2 (en) image data interpolating
DE3814627C2 (en)
DE10344397B4 (en) Device and method for edge enhancement in image processing
DE69733882T2 (en) CAMERA WITH A SINGLE PICTORIAN
DE4345015C2 (en) Digital signal processing device
DE102015111787A1 (en) Deinterleave a nested high dynamic range image using YUV interpolation
DE102006038646B4 (en) Image processing apparatus for color image data
DE10243306A1 (en) Image sensor output data processor has adaptive interpolator which determines red green and blue components of respective pixels, using output from delay module in response to output from direction coefficient selector
DE3907118A1 (en) CIRCUIT ARRANGEMENT FOR EXPANDING A CONTROL SIGNAL IN VIDEO SIGNAL PROCESSING
DE3720163C2 (en) Method and arrangement for freezing a television picture
DE3636077C2 (en) Method for masking errors in a video signal and circuit for carrying out the method
DE2740795A1 (en) DEVICE FOR ELIMINATING SCANNING ERRORS IN SOLID-STATE TV CAMERAS
DE102014008686B4 (en) Method and device for color interpolation
DE60224125T2 (en) Signal processing device, signal processing method of the device, operation process program of the method and storage medium for storing the program
DE102006050864B4 (en) Method and apparatus for correcting defective pixels for a solid state imaging device
DE60114520T2 (en) Color imaging device
DE4228532B4 (en) Video signal processor for superimposing on-screen information
EP1246452B1 (en) Method and device for steepening signal transitions in television pictures
DE102006028734A1 (en) Reduction method for block artifacts from multiple images, involves interpolating image pixels, which results image block as function of determined texture direction of image pixels
DE3035532C2 (en)
DE69630651T2 (en) Down video format conversion

Legal Events

Date Code Title Description
OP8 Request for examination as to paragraph 44 patent law
8127 New person/name/address of the applicant

Owner name: SILICON IMAGE GMBH, 30419 HANNOVER, DE

8131 Rejection