WO2008019867A2 - Bildverarbeitungsvorrichtung für farb-bilddaten und verfahren zur bildverarbeitung von farb-bilddaten - Google Patents
Bildverarbeitungsvorrichtung für farb-bilddaten und verfahren zur bildverarbeitung von farb-bilddaten Download PDFInfo
- Publication number
- WO2008019867A2 WO2008019867A2 PCT/EP2007/007289 EP2007007289W WO2008019867A2 WO 2008019867 A2 WO2008019867 A2 WO 2008019867A2 EP 2007007289 W EP2007007289 W EP 2007007289W WO 2008019867 A2 WO2008019867 A2 WO 2008019867A2
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- color
- image processing
- matrix
- digital image
- processing device
- Prior art date
Links
- 238000000034 method Methods 0.000 title description 5
- 239000011159 matrix material Substances 0.000 claims abstract description 57
- 230000015654 memory Effects 0.000 claims abstract description 27
- 238000006243 chemical reaction Methods 0.000 claims abstract description 13
- 239000013598 vector Substances 0.000 claims description 14
- 238000004364 calculation method Methods 0.000 claims description 13
- 230000006870 function Effects 0.000 claims description 7
- 230000035945 sensitivity Effects 0.000 claims description 5
- 238000005070 sampling Methods 0.000 claims description 3
- 230000001419 dependent effect Effects 0.000 claims description 2
- 230000001360 synchronised effect Effects 0.000 claims description 2
- 239000003086 colorant Substances 0.000 description 4
- 230000008569 process Effects 0.000 description 3
- 230000003595 spectral effect Effects 0.000 description 3
- 230000009466 transformation Effects 0.000 description 3
- 230000015572 biosynthetic process Effects 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 230000009977 dual effect Effects 0.000 description 2
- 230000009467 reduction Effects 0.000 description 2
- 231100000743 Maximale Arbeitsplatzkonzentration Toxicity 0.000 description 1
- 238000009825 accumulation Methods 0.000 description 1
- 230000006978 adaptation Effects 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000004820 blood count Methods 0.000 description 1
- 238000013527 convolutional neural network Methods 0.000 description 1
- 230000002349 favourable effect Effects 0.000 description 1
- 238000003384 imaging method Methods 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 238000012886 linear function Methods 0.000 description 1
- 238000001000 micrograph Methods 0.000 description 1
- 230000008520 organization Effects 0.000 description 1
- 230000008447 perception Effects 0.000 description 1
- 238000003672 processing method Methods 0.000 description 1
- 238000001454 recorded image Methods 0.000 description 1
- 230000001953 sensory effect Effects 0.000 description 1
- 238000001228 spectrum Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T3/00—Geometric image transformations in the plane of the image
- G06T3/40—Scaling of whole images or parts thereof, e.g. expanding or contracting
- G06T3/4015—Image demosaicing, e.g. colour filter arrays [CFA] or Bayer patterns
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N23/00—Cameras or camera modules comprising electronic image sensors; Control thereof
- H04N23/80—Camera processing pipelines; Components thereof
- H04N23/84—Camera processing pipelines; Components thereof for processing colour signals
- H04N23/843—Demosaicing, e.g. interpolating colour pixel values
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N25/00—Circuitry of solid-state image sensors [SSIS]; Control thereof
- H04N25/10—Circuitry of solid-state image sensors [SSIS]; Control thereof for transforming different wavelengths into image signals
- H04N25/11—Arrangement of colour filter arrays [CFA]; Filter mosaics
- H04N25/13—Arrangement of colour filter arrays [CFA]; Filter mosaics characterised by the spectral characteristics of the filter elements
- H04N25/134—Arrangement of colour filter arrays [CFA]; Filter mosaics characterised by the spectral characteristics of the filter elements based on three different wavelength filter elements
Definitions
- the invention relates generally to the processing of color images, in particular the processing of raw data into displayable formats.
- RGB color filters where green pixels are twice as common as blue and red.
- Real-time representation are not suitable.
- the invention is therefore based on the object to provide a more effective conversion of color image data, which is so simplified that they readily implement as hardware allows and color-fast, artifact-poor representations in real time allowed.
- n> 7 to describe line memory with image data and read per pixel clock in the column direction 7 pixels.
- DDRAMs double data rate random access memory
- the object of the invention is first of all to provide an optimized memory interface which is capable of operating both with DDRAM's as image memory, as well as the formation of large neighborhoods of size from 7x7 pixels in real time support.
- the invention accordingly provides a digital image processing apparatus having a Bayer sensor and an image memory, the image data of the sensor being written in an image memory and image data in Bayer format being continuously written from this image memory into a data buffer and the samples being scanned by means of adder means are symmetrically combined to a central point of one or more (2n + l) x (2n + l) neighborhoods, and by means of the computing device one or more (n + l) x (n + l) matrices are derived therefrom With at least one matrix derived therefrom, a first color component is calculated in each case by means of an adder network.
- this color component can be a high-resolution component YH, which reproduces the gray scale or brightness distribution in the image. It is also possible to derive from the (n + 1) x (n + 1)
- Matrix (s) to form at least one n x n matrix by means of further adders, if the (n + l) x (n + l) matrix (s) are symmetric.
- the matrix operation is preferably calculated by convolution with a suitable convolver, in particular a convolver of size
- phase-dependent multiplexed adder networks are furthermore available for calculating the R, G, B components of a second and third color component (the signals X and Z of the XYZ color space).
- the R, G, B components of the second and third color component preferably the X and Z signals of the XYZ color space or U, V of the YUV color space can then be multiplied by programmable weighting factors and then accumulated to the second and third color components.
- a particularly effective, fast memory usage results further when the image data in Bayer format with a length L of at least 32 pixels, preferably exactly 32 pixels and a width B of at least 8 pixels, preferably exactly 8 pixels are continuously written into the data buffer.
- a fourth color component with respect to the first color component of lower local resolution (YL) via a further adder network.
- This fourth color component can be used instead of the first color component (YH) for calculating a color correction, wherein a signal derived from the difference of the first and preferably weighted fourth color component (YH-YL) is added to the corrected output signal.
- the two color components YH and YL can be weighted with different multipliers in order to match the size of the two components in subtraction.
- the invention is eminently suitable for producing deep-focus images from image series.
- a digital image processing device is provided in development of the invention, which has a preferably in the multi-focus operation computer-controlled adjustable lens or connected to a camera with such a lens.
- the nonlinear function is preferably chosen so that all values of the function are not negative, whereby both the non-linear function weighted digital color image and the weights are accumulated in a memory during a focusing cycle, and preferably at the end of the focusing cycle accumulated color image is multiplied by the inverse of the accumulated weights.
- i denotes the image index of the recorded image series and I (x, y) the intensity value of a pixel at the location with the coordinates x, y.
- This embodiment of the invention is particularly suitable in connection with a telecentric lens as optics for image acquisition.
- a preferred application of this embodiment is a microscope. This can then automatically deliver deep-focused images by means of the invention.
- Image processing apparatus advantageously be set up to normalize the color components to a white value via programmable gain settings and to format a first data sequence from the first (YH) or alternatively fourth color component (YL) as well as the second and third color components. This is beneficial to achieve the most authentic representation of the colors of the image data.
- this first data sequence can advantageously also be transformed to a second data sequence by means of an input conversion table (LUT) which contains the sensitivity curve of the human eye.
- LUT input conversion table
- ⁇ is then removed from the second data sequence then a third data sequence with signals Y ⁇ X ⁇ -Y ⁇ -Y ⁇ Z and formed, and this third data sequence with programmable coefficients L_gain, a_gain and b_Gain multiplied.
- a product of the first color component and L gain so that a fifth data sequence is created.
- This fifth data sequence is transformed back into the linear color space with the inverse conversion table or an approximation by exponentiation-in particular a exponentiation with the third power-so that a sixth sequence with the signals or color values X, Y, Z arises ,
- the invention provides for calculating and saving the mean value between the samples of the sensor between two successive rows and columns so that an image with twice the interpolated resolution is produced in a memory Address calculation unit specifies a sample synchronous sequence of rational sampling points of a target grid.
- the color vector whose address comes closest to the target value can then be selected by means of a suitable device of the image processing device.
- the color values selected in this way can then be subjected to a subsequent color correction.
- the image data stream may generally be scanned at a higher resolution, interpolated to twice the resolution, and then output to a terminal at less than the sensor-side resolution.
- Cosine Transform can be encoded to provide effective reduction DCT coding can also be easily achieved by hardware components such as digital Signal processors (DSPs) or Multi sidessakkumulatoren (MAKs) can be realized.
- DSPs digital Signal processors
- MAKs Multi sidessakkumulatoren
- the data buffer can particularly preferably comprise a dual-port RAM by the processing method according to the invention for the signals.
- a dual-port RAM by the processing method according to the invention for the signals.
- Fig. 2 is a convolver structure of
- Fig. 3 is a double size interpolated
- Fig. 5 is a block diagram of an optimized
- Fig. 6 is a 7x7 pixel section of a Bayer pattern with weighting factors for the Calculation of a RGB vector of the central pixel
- DDRAM DDRAM 's as image memory, as well as the formation of large neighborhoods of size from 7x7 pixels to support in real time, the raw image data supplied by the sensor of an analog-digital-Unsetzer (ADC) converted into digital signals and then line by line in one from a or more DDRAM's existing image memory. After about 32 lines have been stored, image data is read from the memory. This process reads from the image memory short lines of 16 pixels in length and writes them into a fast dual port RAM, which in turn fills a register structure. By this measure, it is possible to relieve the image memory. The resulting data rate during reading is only slightly larger than the data rate of the sensor. In addition, the output achieves a factor of 4 to 8 higher data rate when using a fast, relatively small and thus easily integrable dual port RAM. In order to avoid time losses in the column jump, the signal processing is preferably faster than the pixel rate ause lambd.
- FIG. 1 An example of a Bayer pattern used in single-chip color cameras is shown in FIG. 1, other known combinations use e.g. C, M, Y. For clarity, however, reference will only be made to an RGB pattern. It creates a discontinuous for each color channel
- Two XYZ color values are calculated from the columns calculated over a length of about 26 pixels (see also below).
- a register structure is used to delay the samples for a column to provide 3 samples of a row at a time.
- two complete 2x2 neighborhoods can be created in which the color image can then be linearly interpolated to twice the resolution.
- the data set thus obtained is shown in FIG. 3, with interpolated data being shown hatched.
- the thus interpolated image can then be scaled by pixel dropping rationally scaled to the required resolution without disturbing color edges in the image are visible.
- the pitch of the target grid for the scanning directions x and y are accumulated in an address unit (not shown), and the interpolation value closest to the result is selected.
- the aim of the processing is to first calculate the color components in the standardized XYZ color space from the primary colors and then to correct them optimally. If the gains c y Rt , C VG, C YB of the channels R, G, B are suitably matched, the result is a particularly simple hardware realization in the event that the sum of the spectral sensitivities
- Y (X) C yn R (X) + 2 CyG G ( ⁇ ) + C y8 B (X)
- X (X) c XR R (X) + c XG G (X) + c XB B (X)
- Z (X) C 2n R (X) + c ZG G (X) + C 28 B (X)
- the interpolating filter which by definition includes a Tieppatter suspect 3,5,5-trihydroxystyrene-1,5-trihydroxystyrene-1,5-trihydroxystyrene-1,5-trihydroxystyrene-1,5-trihydroxystyrene-1,5-trihydroxystyrene-1,5-trihydroxystyrene-1,5-trihydroxystyrene-1,5-trihydroxystyl-optimized 5x5 sharpness filter.
- the values of the above matrix can also differ in each case by up to a factor of 1.5, in each case rounded to whole numbers.
- the 7x7 environment is formed independently of the pixel color. So can for each pixel regardless of the color thus obtained color component are obtained.
- the Matrix Acc 4x4 is shown in the appendix to the description.
- the matrix Acc_4x4 center-symmetrically maps the 4 quadrants of the 7x7 neighborhood to a quadrant and is normalized to the accumulated pixels.
- Pix a , b accordingly denote the image data of the pixels in relative positon a, b to the central point for which the color value is to be calculated.
- the matrix Acc_4x4 is shown by means of that shown in FIG.
- Pixel3 for the left and pixel 4 for the right strip are passed directly into the 4x7 registers 100, 101 on. Subsequently, an accumulation in the vertical direction, shown in dashed lines, Fig. 2.
- the convolution operation with the matrix YH_Conv_4x4 can be reduced to a 3x3 matrix YH_Conv_3x3, the corresponding neighborhood is calculated by adding matrix elements with equal coefficients from Acc 4x4.
- the entries in the matrices Acc_4x4 and YH_Conv_4x4 can each be permuted in the same way, without the convolution result changing.
- the matrix YH_Conv_3x3 can be further simplified by decomposing into three matrices ml, m2 and m3, so that the physical realization can take place with adders of optimized word width and thus minimal effort:
- YH Conv 3x3 4096 * ml + 128 * m2 + 4 * m3;
- the coefficients of the matrix YH_Conv_7x7 have been optimized so that the convolution result with the matrix m3 becomes negligible for most cases, since textures occurring in real images do not correlate with the pattern of the matrix and the convolution result consequently converges to zero. If necessary, the matrix m3 or, to a good approximation, the matrix m3a can be supplemented.
- VW 4251 c R R + 8502 c G G + 4251 c B B
- the color calculation uses a second YL signal which, unlike YH, is not high-pass filtered.
- YL can be calculated by convolving Acc_3x3 with YL_Conv_3x3:
- VL 36 c R R + 72 c G G + 36 c ß ß
- ⁇ Y a [YH-118YL]
- the color calculation takes place in the XYZ color space.
- 4 independent-acting color interpolators UV1, UV2, UV3, UV4 are provided which are assigned to the 4 realizable shifts of the central point of the 7x7 neighborhood with respect to the Bayer pattern.
- a convolution occurs with the matrix Acc_4x4, whereby the color components RGB are output separately.
- the convolution can be done using the Acc_3x3 environment already used in the calculation of YH.
- the total of 4 possible convolutions with the matrices Color Ml, Color M2, Color M3, Color M4 can be performed in parallel and thus 4 full color vectors, in a Bayer pattern with red, green and blue pixels so vectors ⁇ R, G, B> generated of which the valid one is selected via a multiplexer.
- the matrices ColorMl to ColorM4 are listed in Table 1 below along with matrices Ml to M4.
- the matrices Ml to M4 respectively correspond to the matrix Acc_4x4 given above and map the surroundings around the central pixel of the 7x7 environment in the Bayer pattern. As can easily be seen from a comparison with the matrix Acc_4x4, the entry at the top left in these matrices Ml to M4 is the central pixel. In the Bayer pattern with two green pixels and one red and one blue there are a total of 4 possible pixel patterns, or 4 realizable shifts of the central point of the 7x7 neighborhood with respect to the Bayer pattern.
- the matrices ColorM2 and ColorM3 are each 3x3 matrices. With these matrices, the central point of the 7x7 neighborhood falls on a red or blue pixel, so that a further reduction to the 3x3 matrices is possible.
- the ColorM4 matrix will be convolved with the Acc_4x4 environment.
- the matrices ColorM2 and ColorM3 are used, these matrices are convolved with the environment Acc_3x3 to calculate the valid color vectors.
- FIG. 6 shows a 7 ⁇ 7 environment of a green color pixel 60.
- the color of the pixel is symbolized by the letters "R" "G” "B.”
- the pixel 60 is in a row with red and green
- a comparison with the matrices Ml, ..., M4 shows that the matrix M4 with the central pixel at the top left has the same color pattern
- the pixel values of the 7x7 environment are generated with the matrix ColorMl.
- the factors of the matrix ColorMl are each entered in the upper left corner of the individual fields.
- the indices i, j of the pixels of the environment are entered in the fields on the bottom left.
- the assignment of the factors takes place on the basis of the matrix Acc_4x4, wherein the respective pixels, as indicated in the matrix Acc_4x4, are multiplied by the factors from the matrix ColorMl. So stands the central pixel PixO, O in of the matrix Acc_4x4 at the position (1,1).
- the ColorMl matrix specifies a factor of 24 for this position, which multiplies the value of that pixel.
- the multiplier at location (3,2) in ColorMl is 48. According to the matrix Acc_4x4, accordingly, the pixel values of the pixels which are one row and two columns away from the central pixel, ie the pixels with the indices (-1, -2) , (-1,2), (1, -2) and (1,2) multiplied by this factor 48.
- the values of the individual colors are added and output separately by the hardware-implemented convolver.
- coefficients may e.g. the number 12 for ColorMl, 4 for ColorM4 and 36 for ColorM2, ColorM3 be excluded and compensated with subsequent multipliers.
- the locally interpolated color values ⁇ R, G, B> are then weighted with 3 coefficients in each case in such a way that the best possible agreement with the spectrum of the standard color values X and Z is achieved.
- the X, YL, Z color values can then be calculated with the aid of these equations, or a computing device set up for calculating the equations, to the interpolated ⁇ R, G, B> color vectors assigned to the pixels.
- an X, YL, Z signal conforming to the CIE Lab color model is produced at the output of the computing device, and the contrast signal YH-118YL is also provided.
- Coefficients may also be white balance ( ⁇ XN, YN, ZN>).
- the vector ⁇ XN, YN, ZN> is the white point of the device.
- the lab value of each pixel can be calculated in real time, and then the characteristic is shifted by suitable offsets in the L, a, and b channels, and the available color space with gain settings for the L, A and B channels are matched. This achieves optimum sensory adjustment of the color quality and ease of use of the color balance of the camera.
- the backconversion of the signals takes place in the XYZ color space of the monitor, taking into account a disturbing light offset with a spectral characteristic shifted from the original source, which can be represented by an offset ⁇ L_off, a_off, b_off>. Furthermore, the dynamic range of the monitor usually does not correspond to the
- the adjustable high-pass ⁇ (YH-YL) can be used to adjust the display of fine image details.
- the difference ⁇ (YH-YL) can be amplified non-linearly with a tangent-shaped characteristic, thereby reducing the color noise in homogeneous surfaces without affecting the contour sharpness.
- FIG. 5 shows a block diagram of an optimized pipeline processor 50 for calculating the color data.
- the conversion table 51 at the input contains the table for converting XYZ to X ⁇ Y ⁇ Z ⁇ .
- the pipeline processor 50 runs with an internal clock at four times the pixel frequency. For this purpose, first the XYZ color values are multiplexed in the order Y, Y, X, Z into a data stream. After the conversion, the value Y ⁇ is stored in a register with a negative sign.
- the multiplexer stands during the
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Image Processing (AREA)
- Facsimile Image Signal Circuits (AREA)
Abstract
Um eine effektivere Umrechnung von Farb-Bilddaten bereitzustellen, die so vereinfacht ist, daß sie sich ohne weiteres auch als Hardware implementieren läßt, ist eine digitale Bildverarbeitungsvorrichtung mit einem Bayer-Sensor und einem Bildspeicher vorgesehen, bei welcher die Bilddaten des Sensors in einem Bildspeicher geschrieben werden und aus diesem Bildspeicher Bilddaten im Bayerformat mit einer Länge L und einer Breite B fortlaufend in einen Datenpuffer geschrieben werden, und bei welcher die Abtastwerte mittels einer Recheneinrichtung mithilfe von Addierwerken jeweils symmetrisch zu einem Zentralpunkt von einer oder mehreren (2n+1) x (2n+1) Nachbarschaften zusammengefasst werden, und mittels der Recheneinrichtung daraus eine oder mehrere (n+1)x(n+1) Matrizen abgeleitet werden, und aus dieser oder diesen (n+1)x(n+1) Matrix (en) mithilfe weiterer Addierwerke mindestens eine n x n Matrix gebildet wird, und daraus jeweils mittels eines Addiernetzwerks eine erste Farbkomponente berechnet wird.
Description
Bildverarbeitungsvorrichtung für Farb-Bilddaten und Verfahren zur Bildverarbeitung von Farb-Bilddaten
Beschreibung
Die Erfindung betrifft allgemein die Verarbeitung von Farbbildern, insbesondere die Verarbeitung von Rohdaten in darstellbare Formate.
Die derzeit üblichen Farb-Bildsensoren arbeiten fast alle mit einer sogenannten Bayer-Matrix, beziehungsweise mit Bayer-Sensoren. Bei derartigen Sensoren ist eine Farbfilteranordnung auf der Sensorfläche angeordnet, wobei jedem Pixel ein Farbfilter für eine bestimmte Farbe vorgeschaltet ist und die Farben unterschiedlich gewichtet sind. Am gebräuchlichsten sind RGB-Farbfilter, wobei grüne Pixel doppelt so häufig vorliegen wie blaue und rote.
Die Rohdaten eines solchen Bildes sind auf Standard- Anzeigen jedoch nicht darstellbar. Es erfolgt dazu im allgemeinen daher eine Umrechnung, wobei die Signale mehrerer Pixel des Sensors interpoliert werden. Hierbei besteht allgemein das Problem, daß solche Umrechnungen Artefakte, wie etwa Farbsäume erzeugen können oder rechenintensiv sind, so daß sie unter anderem für eine
Echtzeit-Darstellung nicht geeignet sind. Zudem ist eine Umrechnung, etwa in RGB-Werte wie sie gebräuchliche Bildformate verwenden, verlustbehaftet. Der Erfindung liegt daher die Aufgabe zugrunde, eine effektivere Umrechnung von Farb-Bilddaten bereitzustellen, die so vereinfacht ist, daß sie sich ohne weiteres auch als Hardware implementieren
läßt und farbechte, artefaktärmere Darstellungen in Echtzeit erlaubt.
Zur Erzielung einer hohen Bildqualität von Single-Chip- Farbkameras ist eine präzise Verarbeitung der Sensorsignale grundlegende Voraussetzung. Hierzu werden zunehmend digitale Verfahren eingesetzt. In der Regel werden besonders hohe Anforderungen an die Qualität der Signalverarbeitung dann gestellt, wenn die Kameras z.B. für Bildverarbeitungsaufgaben oder zur Druckbildkontrolle eingesetzt werden, gleichzeitig wird die Verarbeitung in Echtzeit vorausgesetzt. Oftmals wird das Bild in Echtzeit gleichzeitig in mehreren Auflösungen benötigt, z.B. für die Bildverarbeitung in voller Auflösung und für die Darstellung in verminderter Auflösung.
Die Anforderungen bedingen ein Signalverarbeitungskonzept, das auf einer möglichst großen Nachbarschaft basiert, in der Regel sind dies bei hohen Qualitätsforderungen minimal 7x7 Bildpunkte (Pixel). Um eine solche Nachbarschaft zu verarbeiten ist es bekannt, z.B. n>= 7 Zeilenspeicher mit Bilddaten zu beschreiben und pro Pixeltakt in Spaltenrichtung 7 Pixel auszulesen. Dieses Konzept steht jedoch im Widerspruch zu einer effizienten Speicherorganisation moderner Bildspeicher, die DDRAM' s (double data rate random access memory) als Speicherbausteine enthalten, die mit hoher Effizienz nur zeilenorientierte Blockzugriffe realisieren können. Große integrierte SRAM- Bereiche erfordern Chipfläche und sind deshalb nachteilig.
Deshalb besteht die Aufgabe der Erfindung darin, zunächst ein optimiertes Speicherinterface zu schaffen, das in der Lage ist, sowohl den Betrieb mit DDRAM' s als Bildspeicher,
als auch die Bildung von großen Nachbarschaften der Größe ab 7x7 Pixel in Echtzeit zu unterstützen.
Die Erfindung sieht demgemäß eine digitale Bildverarbeitungsvorrichtung mit einem Bayer-Sensor und einem Bildspeicher vor, wobei die Bilddaten des Sensors in einem Bildspeicher geschrieben werden und aus diesem Bildspeicher Bilddaten im Bayerformat fortlaufend in einen Datenpuffer geschrieben werden und dass die Abtastwerte mittels einer Recheneinrichtung mithilfe von Addierwerken jeweils symmetrisch zu einem Zentralpunkt von einer oder mehreren (2n+l ) x (2n+l) Nachbarschaften zusammengefasst werden, und mittels der Recheneinrichtung daraus eine oder mehrere (n+l)x(n+l) Matrizen abgeleitet werden, und daraus oder mit zumindest einer daraus abgeleiteten Matrix jeweils mittels eines Addiernetzwerks eine erste Farbkomponente berechnet wird. Diese Farbkomponente kann insbesondere eine hochauflösende Komponente YH sein, welche die Grauwert-, beziehungsweise Helligkeitsverteilung im Bild wiedergibt. Es ist auch möglich, aus der oder den (n+l)x(n+l)
Matrix (en) mithilfe weiterer Addierwerke mindestens eine n x n Matrix zu bilden, wenn die (n+l)x(n+l) Matrix (en) symmetrisch sind. Die Berechnung der Matrixoperation erfolgt vorzugsweise durch Faltung mit einem geeigneten Convolver, insbesondere einem Convolver der Größe
(n+l)x(n+l), oder besonders bevorzugt, wenn die Matrix weiter in ihrer Größe reduzierbar ist, mit einem Convolver der Größe n x n.
Eine besonders effektive Berechnung gelingt dabei, wenn die Abtastwerte mittels einer Recheneinrichtung mithilfe von Addierwerken jeweils symmetrisch zu einem Zentralpunkt von einer oder mehreren (2n+l) x (2n+l) Nachbarschaften mit n=3, entsprechend also mittels eines 7x7-Convolvers zusammengefasst werden.
Mehrere, typisch 4, phasenabhängig gemultiplexte Addernetzwerke sind weiterhin zur Berechnung der R, G, B Anteile einer zweiten und dritten Farbkomponente (der Signale X und Z des XYZ-Farbraumes) vorhanden. Die R, G, B Anteile der zweiten und dritten Farbkomponente, vorzugsweise der Signale X und Z des XYZ-Farbraumes oder U, V des YUV-Farbraumes können dann mit programmierbaren Gewichtsfaktoren multipliziert und anschließend zur zweiten und dritten Farbkomponente akkumuliert werden.
Eine besonders effektive, schnelle Speichernutzung ergibt sich weiterhin, wenn die Bilddaten im Bayerformat mit einer Länge L von zumindest 32 Pixel, vorzugsweise genau 32 Pixel und einer Breite B von zumindest 8 Pixel, vorzugsweise genau 8 Pixel fortlaufend in den Datenpuffer geschrieben werden.
Es ist außerdem vorteilhaft, mittels der Recheneinrichtung aus der n x n Matrix zusätzlich zur ersten Farbkomponente ein vierte Farbkomponente mit gegenüber der ersten Farbkomponente geringerer Ortauflösung (YL) über ein weiteres Addernetzwerk zu berechnen. Diese vierte Farbkomponente kann anstelle der ersten Farbkomponente (YH) zur Berechnung einer Farbkorrektur verwendet werden, wobei ein aus der Differenz der ersten und -vorzugsweise gewichteten- vierten Farbkomponente (YH-YL) abgeleitetes Signal auf das korrigierte Ausgangssignal addiert wird. Die beiden Farbkomponenten YH und YL können dabei mit unterschiedlichen Multiplikatoren gewichtet sein, um die Größe der beiden Komponenten bei der Differenzbildung aufeinander abzustimmen. So ist in Weiterbildung vorgesehen, die Differenz YH-118*YL zu verwenden. Auf diese Weise kann ein einfacher, effektiver Schärfefilter realisiert werden.
Die Erfindung ist unter anderem hervorragend dazu geeignet, aus Bildserien tiefenscharfe Bilder zu erzeugen. Dazu ist in Weiterbildung der Erfindung eine digitale Bildverarbeitungsvorrichtung vorgesehen, die ein vorzugsweise im Multifokusbetrieb rechnergesteuert einstellbares Objektiv aufweist oder an eine Kamera mit einem solchen Objektiv angeschlossen ist. Dann kann die Bildverarbeitungsvorrichtung eingerichtet sein, zusätzlich zur ersten Farbkomponente ein vierte Farbkomponente mit gegenüber der ersten Farbkomponente geringerer Ortauflösung (YL) zu errechnen und das Differenzsignal zwischen der ersten Farbkomponent.e und der vierten Farbkomponente auf eine nichtlineare Funktion f (Contrast{x, y))= f (YH [x, y)- YL{x, y)) abzubilden, wobei YH(x,y) die erste Farbkomponente mit höherer Ortsauflösung und YL(x,y) die vierte Farbkomponente mit niedrigerer Ortsauflösung bezeichnen. Dabei wird die nichtlineare Funktion vorzugsweise so gewählt, daß sämtliche Werte der Funktion nicht negativ sind, wobei das sowohl das mit der nichtlinearen Funktion gewichtete digitale Farbbild als auch die Gewichte während eines Fokussierzyklus in einem Speicher akkumuliert werden, und wobei vorzugsweise nach Abschluß des Fokussierzyklus das akkumulierte Farbbild mit dem inversen Wert der akkumulierten Gewichte multipliziert wird.
Für das aufakummulierte Digitalbild I(x,y) gilt damit:
Dabei bezeichnet i den Bildindex der aufgenommenen Bilderserie und I(x,y) den Intensitätswert eines Pixels am Ort mit den Koordinaten x,y.
Diese Ausführungsform der Erfindung eignet sich insbesondere in Verbindung mit einem telezentrischen Objektiv als Optik für die Bildaufnahme. Eine bevorzugte Anwendung dieser Ausführungsform ist ein Mikroskop. Dieses kann dann mittels der Erfindung automatisiert tiefenscharfe Bilder liefern.
In Weiterbildung der Erfindung kann die
Bildverarbeitungsvorrichtung vorteilhaft eingerichtet sein, die Farbkomponenten über programmierbare Gain-Einstellungen auf einen Weißwert zu normieren und aus der ersten (YH) oder alternativ vierten Farbkomonente (YL) sowie der zweiten und der dritten Farbkomponente eine erste Datensequenz zu formatieren. Dies ist günstig, um eine möglichst authentische Darstellung der Farben der Bilddaten zu erreichen.
Insbesondere kann dazu vorteilhaft auch diese erste Datensequenz mithilfe einer eingangsseitig angeordneten Conversion Table (LUT) , die die Empfindlichkeitskurve des menschlichen Auges enthält, auf eine zweite Datensequenz transformiert werden. In Weiterbildung der Erfindung wird dann aus der zweiten Datensequenz dann eine dritte Datensequenz mit Signalen Y~, X~-Y~ und Z~-Y~ gebildet und diese dritte Datensequenz mit programmierbaren Koeffizienten L_gain, a_gain und b_gain multipliziert.
Zu diesen Produkten werden programmierbare Offsets addiert, so dass eine vierte Datensequenz entsteht. Für die X~-Y~ und Z~-Y~ zugeordneten Werte der vierten Datensequenz wird ein Produkt aus der ersten Farbkomponente und L gain
addiert, so dass eine fünfte Datensequenz entsteht. Diese fünfte Datensequenz wird mit der inversen Conversion Table oder einer adäquaten Näherung durch Potenzieren -geeignet ist insbesondere eine Potenzierung mit der dritten Potenz- in den linearen Farbraum zurücktransformiert wird, so dass eine sechste Sequenz mit den Signalen, beziehungsweise Farbwerten X, Y, Z entsteht.
Oftmals wird eine Darstellung in einer bestimmten Bildgröße vorgegeben. Um das gewünschte Format schnell ohne großen Rechenaufwand bereitzustellen, ist in Weiterbildung der Erfindung vorgesehen, zu den Abtastwerten des Sensors zwischen zwei aufeinanderfolgenden Zeilen und Spalten den Mittelwert zu berechnen und abzupeichern, so dass in einem Speicher ein Bild mit doppelter interpolierter Auflösung entsteht, wobei eine Adressrecheneinheit eine zur Abtastung synchrone Folge von rationalen Abtastpunkten eines Zielrasters vorgibt.
Von den vier für jedes Pixel zur Verfügung stehenden Farbkomponenten kann dann mittels einer geeigneten Einrichtung der Bildverarbeitungsvorrichtung der Farbvektor ausgewählt werden, dessen Adresse dem Zielwert am nächsten kommt. Die so ausgewählten Farbwerte können dann einer anschließenden Farbkorrektur unterzogen werden.
Insbesondere kann allgemein der Bilddatenstrom mit höherer Auflösung abgetastet, auf die doppelte Auflösung interpoliert und anschließend mit geringerer als die sensorseitige Auflösung an ein Endgerät ausgegeben werden.
Der Bilddatenstrom, der an ein Endgerät ausgegeben wird, kann vorteilhaft noch DCT (DCT=„Diskrete
Cosinustransformation") codiert werden, um eine effektive Reduktion zu erhalten. Eine DCT-Kodierung kann sehr einfach ebenfalls durch Hardwarekomponenten, wie digitale
Signalprozessoren (DSPs) oder Multiplikationsakkumulatoren (MAKs) realisiert werden.
Der Datenpuffer kann durch die erfindungsgemäße Verarbeitungsweise der Signale besonders bevorzugt einen Dual-Port-Ram umfassen. Derartige Speicher sind zwar nur klein, da aber die Daten in einem Pipeline-Prozess verarbeitet werden, können die Bildddaten fortlaufend vom Bildspeicher in den Dual-Port-Ram eingeschrieben und gleichzeitig andere Bilddaten dort wieder zur
Weiterverarbeitung ausgelesen werden. Dies ist ein wesentliches Element, um mittels einer Pipeline- Verarbeitung auch eine Echtzeit-Umrechnung der Bilddaten artefaktarm bereitzustellen.
Die Erfindung wird nachfolgend genauer unter Bezugnahme auf die beigeschlossenen Zeichnungen erläutert. Es zeigen:
Fig. 1 schematisch das Einlesen der Bilddaten in den Dual-Port-RAM,
Fig. 2 eine Convolver-Struktur der
BildverarbeitungsVorrichtung,
Fig. 3 einen auf doppelte Größe interpolierten
Datensatz,
Fig. 4 eine vereinfachte Prinzipschaltung eines YH-
Convolvers der Bildverarbeitungsvorrichtung, und
Fig. 5 ein Blockschaltbild eines optimierten
Pipelineprozessors zur Berechnung der Farbdaten,
Fig. 6 ein 7x7 Pixel großer Ausschnitt eines Bayer- Patterns mit Gewichtungsfaktoren für die
Berechnung eines RGB-Vektors des zentralen Pixels,
Zur Lösung der Aufgabe, ein optimiertes Speicherinterface zu schaffen, das in der Lage ist, sowohl den Betrieb mit
DDRAM' s als Bildspeicher, als auch die Bildung von großen Nachbarschaften der Größe ab 7x7 Pixel in Echtzeit zu unterstützen, werden die vom Sensor gelieferten Bildrohdaten von einem Analog-Digital-Unsetzer (ADU) in digitale Signale gewandelt und anschließend zeilenweise in einen aus einem oder mehreren DDRAM' s bestehenden Bildspeicher abgelegt. Nachdem ca. 32 Zeilen so gespeichert wurden, werden Bilddaten aus dem Speicher ausgelesen. Dieser Prozeß liest aus dem Bildspeicher kurze Zeilen mit 16 Pixel Länge und schreibt diese in einen schnellen Dual Port RAM, der seinerseits wiederum eine Registerstruktur füllt. Durch diese Maßnahme gelingt es, den Bildspeicher zu entlasten. Die resultierende Datenrate beim Lesen ist nur geringfügig größer als die Datenrate des Sensors, zudem wird am Ausgang eine um den Faktor 4 bis 8 höhere Datenrate bei Nutzung eines schnellen, relativ kleinen und damit gut integrierbaren Dual Port RAM' s erreicht. Um Zeitverluste beim Spaltensprung zu vermeiden, ist die Signalverarbeitung vorzugsweise schneller als die Pixelrate auselegt.
Ein Beispiel für ein in Single Chip Farbkameras verwendetes Bayer-Pattern zeigt Fig. 1, andere bekannte Kombinationen verwenden z.B. C, M, Y. Aus Gründen der Übersichtlichkeit wird jedoch nur Bezug auf ein RGB-Pattern genommen. Es entsteht für jeden Farbkanal ein diskontinuierliches
Signal, das in den Zwischenräumen interpoliert wird. Aus dem DDRAM werden, wie in Fig. 1 gezeigt, zeilenweise Daten an einen internen DualPort RAM übertragen, andererseits wird der DualPort RAM kontinuierlich mit einer Breite B (z.B. B=8 Pixel) gelesen, so dass ein Datenstrom der Größe
BxL, L- Länge des DualPort RAM (z.B.L=32 Pixel) entsteht. Dieser Datenstrom wird in die Convolver Structure nach Fig. 2 eingelesen und dort verarbeitet. Als besonders günstig hat sich eine Verarbeitungsbreite B=8 Pixel erwiesen, so dass zwei Pixel zeitgleich verarbeitet werden können.
Aus den Spalten werden jeweils zwei XYZ Farbwerte berechnet auf einer Länge von ca. 26 Pixel berechnet (siehe auch weiter unten) . Mithilfe einer Registerstruktur werden die Abtastwerte für eine Spalte so verzögert, dass zeitgleich 3 Abtastwerte einer Zeile bereitstehen. Dadurch können zwei vollständige 2x2 Nachbarschaften erzeugt werden, in denen dann das Farbbild auf die doppelte Auflösung linear interpoliert werden kann. Der so erhaltene Datensatz ist in Fig. 3 gezeigt, wobei interpolierte Daten schraffiert dargestellt sind.
Das so interpolierte Bild kann dann durch Pixeldropping gebrochen rational auf die geforderte Auflösung skaliert werden, ohne dass störende Farbkanten im Bild sichtbar werden. Hierzu werden in einer nicht gezeigten Adresseinheit der Pitch des Zielrasters für die Abtastrichtungen x und y aufakkumuliert und der dem Ergebnis nächstliegende Interpolationswert ausgewählt. Mit dieser Betriebsart kann besonders bei vorherrschenden Farbkontrasten im Rot- bzw. Blaubereich eine relevante Qualitätsverbesserung erreicht werden.
Im folgenden wird die allgemeine Farbverarbeitung beschrieben.
Ziel der Verarbeitung ist es, aus den Primärfarben zunächst die Farbkomponenten im standardisierten XYZ - Farbraum zu berechnen und diese anschließend optimal zu korrigieren.
Wenn die Verstärkungen cyRt, CVG , CYB der Kanäle R, G, B geeignet angepasst sind, ergibt sich eine besonderes einfache Hardwarerealisierung für den Fall, dass die Summe der spektralen Empfindlichkeiten
Y(X) = CynR(X) + 2CyGG(λ) + Cy8B(X) X(X) = cXRR(X) + cXGG(X)+ cXBB(X) Z(X) = C2nR(X) + cZGG(X)+ C28B(X)
annähernd der Heilempfindlichkeitskurve V(λ), bzw. der spektralen Empfindlichkeit des Y- Signals im XYZ- Farbraum entspricht, die übrigen Koeffizienten werden für X, beziehungsweise Z optimiert Unter dieser Voraussetzung kann die Interpolation mit einem einfach zu realisierenden, verschiebungsinvarianten (2n+l) x (2n+l) - Convolver realisiert werden. Ein optimales Verhältnis zwischen Aufwand und Performance ergibt sich für n=3, d.h. einen 7x7 Convolver, Werte der Matrix gerundet:
Hierzu wurde das interpolierende Filter, das per Definition eine Tieppaßcharakteristik beinhaltet, mit einem phasenoptimierten 5x5 Schärfefilter kombiniert. Es wird nicht ausgeschlossen, daß sich gute Ergebnisse auch mit einer abweichenden Matrix erhalten lassen. Beispielsweise können die Werte der obigen Matrix auch jeweils um bis zu einem Faktor 1,5, jeweils gerundet auf ganze Zahlen abweichen. Die 7x7-Umgebung wird dabei unabhängig von der Pixelfarbe gebildet. So kann für jeden Pixel unabhängig von
der Farbe die damit errechnete Farbkomponente erhalten werden.
Wenn das Bayer-Signal mit einem derartigen Convolver gefaltet wird, entsteht ein scharfes Grauwertbild YH(x,y). Um den Aufwand der Faltungsoperation zu minimieren werden folgende Operationen durchgeführt:
Zunächst wurden die Koeffizienten der Matrix so optimiert, dass eine kostengünstige Realisierung mit einer minimalen
Anzahl von schnellen Addern ohne Multiplizierer genügt. Im einzelnen wird die Berechnung ferner durch die Zentralsymmetrie der Matrix YH_Conv_7x7 unterstützt. Deshalb kann die Faltung wesentlich einfacher mit den Matrizen YH Conv 4x4 und Acc 4x4 realisiert werden:
Die Matrix Acc_4x4, bildet zentralsymmetrisch die 4 Quadranten der 7x7 Nachbarschaft auf einen Quadranten ab und ist auf die akkumulierten Pixel normiert. Die Werte
Pixa,b bezeichnen dementsprechend die Bilddaten der Pixel in relativer Positxon a,b zum Zentralpunkt, für den der Farbwert berechnet werden soll.
Die Matrix Acc_4x4 wird mittels der in Fig. 2 gezeigten
Struktur zweckmäßig durch Addition der Grauwerte der Pixel
PixelO+Pixelβ, Pixell+Pixel5, Pixel2+Pixel4 sowie Pixell+Pixelδ, Pixel2+Pixel7, Pixel3+Pixel6
gebildet, Pixel3 für den linken und Pixel 4 für den rechten Streifen werden direkt in die 4x7 Register 100, 101 weiter gereicht. Anschließend erfolgt eine Akkumulation in vertikaler Richtung, gestrichelt eingezeichnet, Fig. 2.
Eine weitere Vereinfachung der Berechnung ist durch
Zusammenfassung in 3x3 Matrizen YH_Conv_3x3 sowie Acc_3x3 möglich:
Aufgrund der Symmetrieeigenschaften kann die Faltungsoperation mit der Matrix YH_Conv_4x4 auf eine 3x3 Matrix YH_Conv_3x3 zurückgeführt werden, die dazugehörige Nachbarschaft wird durch Addition von Matrixelementen mit gleichen Koeffizienten aus Acc 4x4 berechnet.
Selbstverständlich können die Einträge in den Matrizen Acc_4x4 und YH_Conv_4x4 jeweils gleichartig permutiert werden, ohne, daß sich das Faltungsergebnis ändert. Gleiches gilt auch für die entsprechenden vereinfachten Matrizen Acc 3x3 und YH Conv 3x3.
Die Matrix YH_Conv_3x3 kann weiter vereinfacht werden, indem eine Zerlegung in drei Matrizen ml, m2 und m3 erfolgt, so dass die physikalische Realisierung mit Addern optimierter Wortbreite und damit minimalem Aufwand erfolgen kann:
Es gilt:
YH Conv 3x3=4096*ml+128*m2+4*m3;
Die Koeffizienten der Matrix YH_Conv_7x7 wurden so optimiert, dass das Faltungsergebnis mit der Matrix m3 für die meisten Fälle vernachlässigbar wird, da in realen Bildern auftretende Texturen mit dem Muster der Matrix nicht korrelieren und das Faltungsergebnis demzufolge gegen null konvergiert. Im Bedarfsfall kann die Matrix m3 oder auch in guter Näherung die Matrix m3a ergänzt werden.
Deshalb kann der YH-Convolver mit der vereinfachten
Prinzipschaltung nach Fig. 4 realisiert werden. Man erhält für eine homogene Fläche als Beispiel das Ergebnis (gerundet) :
VW = 4251 cR R+ 8502cG G + 4251 cB B
Für die Farbberechnung wird ein zweites YL Signal verwendet, das im Gegensatz zu YH nicht hochpassgefiltert ist.
YL kann durch Faltung von Acc_3x3 mit YL_Conv_3x3 berechnet werden:
Diese Berechnung kann vorteilhaft mit einer Struktur nach Fig.3 realisiert werden, man erhält für eine homogen gefärbte Fläche daraus:
VL = 36 cR R+ 72 cG G + 36 cß ß
Das Differenzsignal ΔY
ΔY=a [YH- 118YL)
wird zweckmäßig am Ausgang des Outputconverters gewichtet addiert, so kann ein mit dem Koeffizienten α in Echtzeit einstellbares und effizient wirkendes 7x7 Schärfefilter realisiert werden. Hiermit ist die Verarbeitung der Y- Signale abgeschlossen.
Die Farbrechnung erfolgt im XYZ- Farbraum. Hierzu sind 4 unabhängige wirkende Farbinterpolatoren UVl, UV2, UV3, UV4 vorgesehen, die den 4 realisierbaren Verschiebungen des Zentralpunktes der 7x7 Nachbarschaft bezüglich des Bayer Pattern zugeordnet sind. Es erfolgt eine Faltung mit der Matrix Acc_4x4, wobei die Farbkomponenten RGB getrennt ausgegeben werden.
Für den Fall, dass der Zentralpunkt der 7x7 Nachbarschaft auf einen roten oder blauen Pixel fällt, kann die Faltung mithilfe der Umgebung Acc_3x3 erfolgen, die bereits bei der Berechnung von YH verwendet wurde. Die insgesamt 4 möglichen Faltungen mit den Matrizen Color Ml, Color M2, Color M3, Color M4 können parallel ausgeführt und damit 4 vollständige Farbvektoren, bei einem Bayer-Pattern mit roten, grünen und blauen Pixeln also Vektoren <R,G,B> erzeugt werden, von denen der jeweils gültige über einen Multiplexer ausgewählt wird.
Die Matrizen ColorMl bis ColorM4 sind in nachstehender Tabelle 1 zusammen mit Matrizen Ml bis M4 aufgelistet. Die Matrizen Ml bis M4 entsprechen jeweils der weiter oben angegebenen Matrix Acc_4x4 und bilden die Umgebung um den Zentralpixel der 7x7-Umgebung im Bayer Pattern ab. Wie anhand mit einem Vergleich mit der Matrix Acc_4x4 leicht zu sehen ist, ist der Eintrag links oben in diesen Matrizen Ml bis M4 jeweils der Zentralpixel. Im Bayer Pattern mit zwei grünen Pixeln und jeweils einem roten und blauen gibt es insgesamt 4 mögliche Pixelmuster, beziehungsweise 4 realisierbare Verschiebungen des Zentralpunktes der 7x7 Nachbarschaft bezüglich des Bayer Pattern. Für jeden dieser Fälle ist eine der Matrizen ColorMl,..., ColorM4 zugeordnet und die Faltung der Pixelwerte erfolgt mit dieser jeweiligen Matrix. Selbstverständlich können diese Matrizen auch auf andere Bayer-Pattern als RGB-Bayer-Pattern übertragen werden, wobei in diesem Fall dann der Eintrag „G" in den Matrizen Ml,..., M4 dem Pixel mit der häufigsten Farbe entspricht.
Die Matrizen ColorM2 und ColorM3 sind jeweils 3x3-Matrizen. Bei diesen Matrizen fällt der Zentralpunkt der 7x7 Nachbarschaft auf einen roten oder blauen Pixel, so daß eine weitere Reduktion auf die 3x3-Matrizen möglich ist.
Die Faktoren vor den Symbolen „R", „G", „B" in den Matrizen Ml,..., M4 geben an, wieviele verschiedene Pixel addiert werden. Anhand der Matrizen Ml bis M4 ist auch zu erkennen, welcher der Farbvektoren der jeweils gültige ist, denn die Matrixeinträge dieser Matrizen folgen demselben Muster wie
das Bayer Pattern. Ist beispielsweise der Zentralpunkt ein grüner Pixel in einer Reihe des Bayer Pattern mit einer Abfolge Grün-Rot-Grün-Rot..., so entspricht diese Position dem Farbmuster der Matrix Ml. Dementsprechend wird ein gültiger <R, G, B>-Vektor für den grünen Pixel durch Faltung der Matrix ColorMl mit der Umgebung Acc_4x4 erzeugt.
Ist bei einem grünen Farbpixel hingegen die Reihe des Bayer-Pattern mit diesem Pixel mit abwechselnden grünen und blauen Pixeln belegt, wird entsprechend die Matrix ColorM4 mit der Umgebung Acc_4x4 gefaltet. Für rote und blaue Pixel werden die Matrizen ColorM2 und ColorM3 verwendet, wobei diese Matrizen mit der Umgebung Acc_3x3 gefaltet werden, um die gültigen Farbvektoren zu berechnen.
Die Berechnung eines interpolierten Farbvektors wird anhand des in Fig. 6 gezeigten Beispiels nochmals anschaulich erläutert. Fig. 6 zeigt dazu eine 7x7-Umgebung eines grünen Farbpixels 60. In der Mitte der Felder ist mit den Buchstaben „R" „G" „B" jeweils die Farbe des Pixels symbolisiert. Der Pixel 60 ist in einer Reihe mit roten und grünen Pixeln angeordnet. Ein Vergleich mit den Matrizen Ml,..., M4 zeigt, daß die Matrix M4 mit dem Zentralpixel links oben das gleiche Farbmuster aufweist. Dementsprechend wird ein gültiger <R, G, B>-Vektor für den Pixel 60 durch Faltung der Pixelwerte der 7x7 Umgebung mit der Matrix ColorMl erzeugt. Die Faktoren der Matrix ColorMl sind jeweils links oben in die einzelnen Felder eingetragen. Die Indizes i,j der Pixel der Umgebung sind in den Feldern jeweils links unten eingetragen.
Die Zuordnung der Faktoren erfolgt anhand der Matrix Acc_4x4, wobei die jeweiligen Pixel, wie in der Matrix Acc_4x4 angegeben, mit den Faktoren aus der Matrix ColorMl multipliziert werden. So steht der Zentralpixel PixO,O in
der Matrix Acc_4x4 an der Stelle (1,1). Die Matrix ColorMl gibt für diese Position einen Faktor 24 an, mit dem der Wert dieses Pixels multipliziert wird. Der Multiplikator an der Stelle (3,2) in ColorMl ist 48. Nach der Matrix Acc_4x4 werden dementsprechend die Pixelwerte der Pixel, die eine Reihe und zwei Spalten vom Zentralpixel entfernt sind, also die Pixel mit den Indizes (-1,-2), (-1,2), (1,-2) und (1,2) mit diesem Faktor 48 multipliziert.
Anders als bei Berechnung der Farbkomponente YH werden bei der Berechung des Farbvektors die Werte der einzelnen Farben durch den hardwareimplementierten Convolver getrennt addiert und ausgegeben.
Zur weiteren Vereinfachung können Koeffizienten z.B. die Zahl 12 für ColorMl, 4 für ColorM4 und 36 für ColorM2, ColorM3 ausgeklammert und mit nachfolgenden Multiplizierern ausgeglichen werden.
Auf diese Art und Weise erhält man für jede Phasenlage des Bayerpatterns bezüglich der lokalen Umgebung interpolierte [R, G, B]- Werte, von denen der jeweils gültige Wert über einen Multiplexer weiter gereicht wird.
Die ortsinterpolierten Farbwerte <R,G,B> werden dann mit jeweils 3 Koeffizienten so gewichtet, dass eine bestmögliche Übereinstimmung mit dem Spektrum der Normfarbwerte X bzw. Z erreicht wird.
Für eine homogen gefärbte Fläche ergeben die gewählten Koeffizienten für jede der Phasenlagen ein identisches Ausgangssignal in der Form
X = 144 cXR R+ 144 cXG G + 144 cxs B
YL = 36 cR R+ 72 cG G + 36 cB B
Z = 144 cm R+ 144 cZG G + 144 C28 ß
Mit diesen Gleichungen, beziehungsweise einer zur Berechnung der Gleichungen eingerichteten Recheneinrichtung können dann zu den den Pixeln zugeordneten interpolierten <R,G, B>-Farbvektoren die X, YL, Z-Farbwerte errechnet werden.
Am Ausgang der Recheneinrichtung entsteht damit ein mit dem CIE Lab-Farbmodell konformes X, YL, Z- Signal, ferner wird das Kontrastsignal YH-118YL bereitgestellt. Mit den
Koeffizienten kann ferner der Weißabgleich (<XN,YN,ZN>) erfolgen.
Um eine optimale Anpassung der Bildwiedergabe über einen Monitor zu erreichen, ist zu berücksichtigen, dass das menschliche Auge bei der Betrachtung des Originalbildes und eines Monitors unterschiedlich adaptiert ist. Bei der Darstellung von Mikroskopbildern ist dies besonders offensichtlich, da gut im Mikroskop sichtbare (dunkle) Strukturen mit hoher Dichte in Farbe und Kontrast auf dem Monitor nur schlecht dargestellt werden können. Deshalb wird eine Transformation benötigt, die die subjektive Farbwahrnehmung aus einem ersten Arbeitspunkt (z.B. Mikroskop) möglichst ohne subjektiv wahrnehmbare Farbveränderungen in einen zweiten Arbeitspunkt (z.B. Monitor in heller Umgebung) transformiert. Nach dem bekannten Stand der Technik wird dies durch eine sogenannte Gamma- Kennlinie erreicht, bei der jedoch Farbverfälschungen auftreten können. Besser geeignet ist das CIE_Lab- Modell 1976. Für die Koeffizienten L, a, b dieses Farbmodells gilt:
Z = 116 r - 16 a = 500 JT - 500 r b = 200 r - 200Z~ mit
Der Vektor <XN,YN,ZN> ist der Weißpunkt des Gerätes. In der Bildverarbeitungsvorrichtung kann nach den oben beschriebenen Prinzipien in Echtzeit den Lab- Wert jedes Pixels berechnet und anschließend die Kennlinie durch geeignete Offsets im L-, a-, und b- Kanal verschoben und der verfügbare Farbraum mit Gain-Einstellungen für die L-, a- und b- Kanäle abgeglichen werden. Hiermit wird eine optimale empfindungsgerechte Anpassung der Farbqualität und einfache Bedienbarkeit des Farbabgleichs der Kamera erreicht.
Bei der Aufnahme von technischen oder biologischen Objekten kann es vorkommen, dass Bilder entgegen der natürlichen Farbverteilung mit vorherrschendem Grün- bzw. Y- Anteil ein Histogramm aufweisen, in dem feine rote und blaue Bildpunkte häufig auftreten und wesentliche Informationen enthalten. In diesem Fall genügt die Auflösung des Bayer Patterns nicht. Deshalb ist es sinnvoll, das Bild mit
höherer Auflösung abzutasten und dann das interpolierte Digitalbild in Echtzeit für die Monitordarstellung herunterzuskalieren, so dass ein scharfer Bildeindruck entsteht. Es hat sich gezeigt, dass aus einem Bayer- Pattern erzeugte CIE-Lab korrigierte Bilddaten ohne subjektiv wahrnehmbare Kantenfehler durch ein lineares Upscaling auf die doppelte Auflösung in beiden Abtastrichtungen und anschließendes Pixeldropping besonders einfach in guter Qualität dargestellt werden können. Dadurch erscheinen dann auch blau/rot kontrastierte Objekte wie z.B. rote Schrift oder ein mikroskopische Blutbild auf dem Monitor mit scharfem Kontrast.
Die Rückkonvertierung der Signale erfolgt in den XYZ - Farbraum des Monitors unter Berücksichtigung eines störenden Lichtoffsets mit einer gegenüber der ursprünglichen Quelle verschobenen spektralen Charakteristik, die durch einen Offset <L_off, a_off, b_off> dargestellt werden kann. Ferner entspricht der Dynamikbereich des Monitors zumeist nicht dem
Dynamikbereich des Quellbildes, so daß auch die Verstärkung der Kanäle L_gain (s/w Kontrast), a_gain (Rot/Grün Kontrast) und b_gain (Gelb/Blau Kontrast) entsprechend dem CIELab 1976 Modell abgeglichen werden können. Für eine kostengünstige Hardwareumsetzung in Echtzeit ist eine Umformung der Gleichungen sinnvoll, Xin,Yin, Zin beschreiben den XYZ Input, XYZ den korrigierten Output. Die Offsets werden mit einem externen Controller aus den Standardwerten <L_off, a_off,b_off> berechnet. Die Signale X~, T, T beschreiben die nichtlineare Transformation an der Augenkennlinie.
Somit werden die darstellbaren Farbwerte am Monitor optimal und leicht bedienbar an das Ausgabemedium angepasst, es entsteht ein naturgetreues Bild. Durch den einstellbaren Hochpass α (YH-YL) kann die Darstellung feiner Bilddetails angepasst werden. Die Differenz α (YH-YL) kann nichtlinear mit einer tangensförmigen Kennlinie verstärkt werden, dadurch reduziert sich das Farbrauschen in homogenen Flächen ohne dass die Konturschärfe beeinträchtigt wird.
Um Hardware im Pipelineprozessor für die Farbkorrektur zu optimieren ist es sinnvoll, die Offsets für die einzelnen Farbkanäle über die Parameter X_off, Y_off und Z_off zusammenzufassen und vor Ausführung der Berechnung in Echtzeit über einen Rechner bereitzustellen.
In Fig. 5 ist ein Blockschaltbild eines optimierten Pipelineprozessors 50 zur Berechnung der Farbdaten dargestellt. Die Konversionstabelle 51 am Eingang enthält die Tabelle zur Umwandlung von XYZ auf X~Y~Z~. Der Pipelineprozessor 50 läuft mit einem internen Takt mit der vierfachen Pixelfrequenz. Hierzu werden zunächst die XYZ Farbwerte in der Reihenfolge Y, Y, X, Z zu einem Datenstrom gemultiplext . Nach der Konvertierung wird der Wert Y~ mit negativem Vorzeichen versehen in einem Register gespeichert. Der Multiplexer steht während der
Datengültigkeit von Y~ auf null, so dass am Ausgang eine Folge
-YirT , -Yirf , Xin~ -Yin~ , Zin~ -Yin~
entsteht. Der nachfolgende Multiplexer 52 und der Multiplizierer 53 erzeugen zusammen eine Sequenz aus den Produkten:
L_gain • Yin~ , L_gain • Yin~ , a_gain • ( Xin~ - Yin~) , b_gain- ( Zin~ - Yin~ ) ,
zu der im nächsten Schritt mittels des Multiplexers 54 und des Addierers 55 Offsets addiert werden, so dass eine Folge
L_gain • Yin~ , L_gain • Yin~ + Y_of f , a_gain • (Xin~ -Yin~ ) + X_of f , b_gain* ( Zin~ - Yin~) + Z_of f
entsteht .
Abschließend wird der Term L_gain*Y~ in einem Register 56 gespeichert und zu den Termen
L_gain • Yin~ + Y_off, a_gain ■ (Xin~ - Yin~) + X_off, b_gain -(Zin~ - Yin~) + Z_off
addiert, damit erhält man die gewünschte Sequenz
„Undefiniert", Y~ , X~, Z~ , die direkt in die lineare Ausgangssequenz Y, X, Z durch Potenzieren transformiert werden kann. Hierbei kann auf den unteren Teil der Kennlinie für viele Applikationen verzichtet werden, falls nicht, kann dieser Teil über Multiplexer auch mit der im unteren Bereich definierten linearen Kennlinie ausgestattet werden.
Claims
Patentansprüche
1. Digitale Bildverarbeitungsvorrichtung mit einem Bayer- Sensor und einem Bildspeicher, wobei die Bilddaten des
Sensors in einem Bildspeicher geschrieben werden und aus diesem Bildspeicher Bilddaten im Bayerformat mit einer Länge L und einer Breite B fortlaufend in einen Datenpuffer geschrieben werden und die Abtastwerte mittels einer Recheneinrichtung mithilfe von
Addierwerken jeweils symmetrisch zu einem Zentralpunkt von einer oder mehreren (2n+l) x (2n+l) Nachbarschaften zusammengefasst werden, und mittels der Recheneinrichtung daraus eine oder mehrere (n+l)x(n+l) Matrizen abgeleitet werden und daraus jeweils mittels eines Addiernetzwerks durch Faltung der oder dieser Matrizen oder zumindest einer daraus abgeleiteten Matrix mit einem Convolver eine erste Farbkomponente berechnet wird.
2. Digitale Bildverarbeitungsvorrichtung gemäß einem der vorstehenden Ansprüche, dadurch gekennzeichnet, daß die Bildverarbeitungsvorrichtung ein Rechenwerk umfasst, welches aus der oder den (n+l)x(n+l) Matrix (en) mithilfe eines oder mehrerer weiterer Addierwerke mindestens eine n x n Matrix zu bilden und daraus jeweils mittels eines Addiernetzwerks eine erste Farbkomponente berechnet.
3. Digitale Bildverarbeitungsvorrichtung gemäß Anspruch 1, dadurch gekennzeichnet, dass mehrere, vorzugsweise vier phasenabhängig gemultiplexte Addiernetzwerke zur Berechnung der R, G, B Anteile einer zweiten und dritten Farbkomponente vorgesehen sind.
4. Digitale Bildverarbeitungsvorrichtung gemäß Anspruch 3, gekennzeichnet durch eine Einrichtung welche die R, G, B Anteile der zweiten und dritten Farbkomponente, vorzugsweise der Signale X und Z des XYZ-Farbraumes oder U, V des YUV-Farbraumes mit programmierbaren Gewichtsfaktoren multipliziert und anschließend zur zweiten und dritten Farbkomponente akkumuliert.
5. Digitale Bildverarbeitungsvorrichtung gemäß einem der vorstehenden Ansprüche, dadurch gekennzeichnet, daß die Abtastwerte mittels einer Recheneinrichtung mithilfe von Addierwerken jeweils symmetrisch zu einem Zentralpunkt von einer oder mehreren (2n+l) x (2n+l) Nachbarschaften mit n=3 zusammengefasst werden.
Digitale Bildverarbeitungsvorrichtung gemäß einem der
6. vorstehenden Ansprüche, dadurch gekennzeichnet, daß die Abtastwerte einer 7x7 Nachbarschaft zur Berechnung der ersten Farbkomponente mittels eines 7x7-Convolvers entsprechend der Gestalt
oder einem Convolver gefaltet werden, dessen Matrixwerte um jeweils maximal einen Faktor 1,5 gerundet auf die nächste ganze Zahl von den Werten des Convolvers YH Conv 7x7 abweichen.
7. Digitale Bildverarbeitungsvorrichtung gemäß dem vorstehenden Anspruch, dadurch gekennzeichnet, daß der
Convolver in Gestalt eines 4x4-Convolvers realisiert wird, welcher die Form
hat, oder bei welchem die Matrixwerte um jeweils maximal einen Faktor 1,5 gerundet auf die nächste ganze Zahl von den Werten des Convolvers YH_Conv_4x4 abweichen, und wobei der Convolver mit einer Matrix der Gestalt Acc 4x4 gemäß Anhang zur Beschreibung
gefaltet wird, wobei die Werte Pixa,b die Bilddaten der Pixel in relativer Position a,b zum Zentralpunkt bezeichnen, wobei die Matrizen YH_Conv_4x4 und Acc_4x4 auch gleichartig permutiert sein können.
Digitale Bildverarbeitungsvorrichtung gemäß einem der vorstehenden Ansprüche, dadurch gekennzeichnet, daß die Bildverarbeitungsvorrichtung eine Recheneinrichtung aufweist, welche zu den Farbpixeln des Bayer-Pattern jeweils vollständige Farbvektoren durch Faltung der Nachbarschaft eines Farbpixels mit einer der Matrizen
erfolgt, wobei bei den Matrizen ColorMl und ColorM2 die Faltung mit der Matrix Acc 4x4 gemäß Anhang zur Beschreibung
erfolgt, wobei die Einträge in den Matrizen ColorMl und ColorM4 auch gleichartig mit den Einträgen der Matrix Acc_4x4 oder die Einträge in den Matrizen ColorM2 und ColorM3 auch gleichartig mit den Einträgen der Matrix Acc 3x3 permutiert sein können.
9. Digitale Bildverarbeitungsvorrichtung gemäß einem der vorstehenden Ansprüche, dadurch gekennzeichnet, daß eine Recheneinrichtung vorgesehen ist, welche aus interpolierten <R, G, B>-Farbvektoren, welche den Pixeln des Bayer Pattern zugeordnet sind, X, YL, Z-Farbwerte gemäß den Gleichungen
X = 144cχR R+ 144 cXG G + 144cχB B
YL = 36 cR R+ 72 cG G + 36 cß B
Z = 144 cm R + 144 cZG G + 144 C73 B berechnet .
10. Digitale Bildverarbeitungsvorrichtung gemäß einem der vorstehenden Ansprüche, dadurch gekennzeichnet, daß die Bilddaten im Bayerformat mit einer Länge L von zumindest 32 Pixel und einer Breite B von zumindest 8 Pixel
fortlaufend in den Datenpuffer geschrieben werden.
11. Digitale Bildverarbeitungsvorrichtung gemäß einem der vorstehenden Ansprüche, dadurch gekennzeichnet, daß die Recheneinrichtung eingerichtet ist, aus der n x n Matrix zusätzlich zur ersten Farbkomponente ein vierte Farbkomponente mit gegenüber der ersten Farbkomponente geringerer Ortauflösung (YL) über ein weiteres Addernetzwerk zu berechnen und dass diese vierte Farbkomponente zur Berechnung einer Farbkorrektur verwendet wird, wobei ein aus einer Differenz der ersten und vierten Farbkomponente (YH-YL) , die mit unterschiedlichen Multiplikatoren bei der Differenzbildung gewichtet sein können, abgeleitetes Signal auf das Ausgangssignal addiert wird.
12. Digitale Bildverarbeitungsvorrichtung gemäß einem der vorstehenden Ansprüche, weiter umfassend ein vorzugsweise im Multifokusbetrieb rechnergesteuert einstellbares Objektiv, dadurch gekennzeichnet, daß zusätzlich zur ersten Farbkomponente ein vierte Farbkomponente mit gegenüber der ersten Farbkomponente geringerer Ortauflösung (YL) errechnet und das Differenzsignal zwischen der ersten Farbkomponente und der vierten Farbkomponente auf eine nichtlineare Funktion f (Contrast{x, y))= f (YH [x, y)- YL{x , y)) abgebildet wird , wobei YH(x,y) die erste Farbkomponente mit höherer Ortsauflösung und YL(x,y) die vierte Farbkomponente mit niedrigerer Ortsauflösung bezeichnen, wobei die nichtlineare Funktion so gewählt ist, daß sämtliche Werte der Funktion nicht negativ sind, wobei das sowohl das mit der nichtlinearen Funktion gewichtete digitale Farbbild als auch die Gewichte während eines
Fokussierzyklus in einem Speicher akkumuliert werden, und wobei nach Abschluß des Fokussierzyklus das akkumulierte Farbbild mit dem inversen Wert der akkumulierten Gewichte multipliziert wird.
13. Digitale Bildverarbeitungsvorrichtung gemäß einem der vorstehenden Ansprüche, gekennzeichnet durch ein telezentrisches Objektiv.
14. Digitale Bildverarbeitungsvorrichtung gemäß einem der vorstehenden Ansprüche, dadurch gekennzeichnet, daß die Bildverarbeitungsvorrichtung eingerichtet ist, die Farbkomponenten über programmierbare Gaineinstellungen auf eine Weißwert zu normieren und aus der ersten (YH) oder alternativ vierten Farbkomonente (YL) sowie der zweiten und der dritten Farbkomponente eine erste Datensequenz zu formatieren.
15. Digitale Bildverarbeitungsvorrichtung gemäß dem vorstehenden Anspruch, dadurch gekennzeichnet, daß diese erste Datensequenz mithilfe einer eingangsseitig angeordneten Conversion Table (LUT) , die die Empfindlichkeitskurve des menschlichen Auges enthält, auf eine zweite Datensequenz transformiert wird.
16. Digitale Bildverarbeitungsvorrichtung gemäß dem vorstehenden Anspruch, dadurch gekennzeichnet, daß die Bildverarbeitungseinrichtung eingerichtet ist, aus der zweiten Datensequenz eine dritte Datensequenz mit Signalen Y~, X~-Y~ und Z~-Y~ zu bilden und diese dritte Datensequenz mit programmierbaren Koeffizienten L_gain, a_gain und b_gain zu multiplizieren und zu diesen Produkten programmierbare Offsets zu addieren, so dass eine vierte Datensequenz entsteht, und für die X~-Y~ und Z~-Y~ zugeordneten Werte der vierten Datensequenz ein
Produkt aus der ersten Farbkomponente und L_gain zu addieren, so dass eine fünfte Datensequenz entsteht, diese fünfte Datensequenz mit der inversen Conversion Table oder einer adäquaten Näherung durch Potenzieren mit der dritten Potenz in den linearen Farbraum zurücktransformiert wird, so dass eine sechste Sequenz mit den Signalen X, Y, Z entsteht.
17. Digitale Bildverarbeitungsvorrichtung gemäß einem der vorstehenden Ansprüche, dadurch gekennzeichnet, dass die Bildverarbeitungsvorrichtung eingerichtet ist, zu den Abtastwerten des Sensors zwischen zwei aufeinanderfolgenden Zeilen und Spalten der Mittelwert zu berechnen und abzupeichern, so dass in einem Speicher ein Bild mit doppelter interpolierter Auflösung - entsteht, und dass eine Adressrecheneinheit eine zur Abtastung synchrone Folge von rationalen Abtastpunkten eines Zielrasters vorgibt, und dass von den vier für jedes Pixel zur Verfügung stehenden Farbkomponenten der Farbvektor ausgewählt wird, dessen Adresse dem Zielwert am nächsten kommt, und dass die so ausgewählten Farbwerte einer anschließenden Farbkorrektur unterzogen werden.
18. Digitale Bildverarbeitungsvorrichtung gemäß einem der vorstehenden Ansprüche, dadurch gekennzeichnet, dass ein Bilddatenstrom mit höherer Auflösung abgetastet und auf die doppelte Auflösung interpoliert wird und anschließend mit geringerer als die sensorseitige Auflösung an ein Endgerät ausgegeben wird.
19. Digitale Bildverarbeitungsvorrichtung gemäß einem der vorstehenden Ansprüche, dadurch gekennzeichnet, dass der Bilddatenstrom DCT codiert wird.
20. Digitale Bildverarbeitungsvorrichtung gemäß einem der vorstehenden Ansprüche, dadurch gekennzeichnet, dass der Datenpuffer einen Dual-Port-Ram umfasst.
21. Mikroskop mit einer digitalen Bildverarbeitungseinrichtung gemäß einem der vorstehenden Ansprüche.
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US12/377,549 US8164662B2 (en) | 2006-08-17 | 2007-08-17 | Image-processing device for color image data and method for the image processing of color image data |
EP07801731A EP2052550A2 (de) | 2006-08-17 | 2007-08-17 | Bildverarbeitungsvorrichtung für farb-bilddaten und verfahren zur bildverarbeitung von farb-bilddaten |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE102006038646.9 | 2006-08-17 | ||
DE102006038646A DE102006038646B4 (de) | 2006-08-17 | 2006-08-17 | Bildverarbeitungsvorrichtung für Farb-Bilddaten |
Publications (2)
Publication Number | Publication Date |
---|---|
WO2008019867A2 true WO2008019867A2 (de) | 2008-02-21 |
WO2008019867A3 WO2008019867A3 (de) | 2008-06-12 |
Family
ID=38728850
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/EP2007/007289 WO2008019867A2 (de) | 2006-08-17 | 2007-08-17 | Bildverarbeitungsvorrichtung für farb-bilddaten und verfahren zur bildverarbeitung von farb-bilddaten |
Country Status (4)
Country | Link |
---|---|
US (1) | US8164662B2 (de) |
EP (1) | EP2052550A2 (de) |
DE (1) | DE102006038646B4 (de) |
WO (1) | WO2008019867A2 (de) |
Families Citing this family (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8717435B2 (en) * | 2008-04-09 | 2014-05-06 | Hbc Solutions, Inc. | Video monitoring device providing parametric signal curve display features and related methods |
US8248496B2 (en) * | 2009-03-10 | 2012-08-21 | Canon Kabushiki Kaisha | Image processing apparatus, image processing method, and image sensor |
TWI390961B (zh) * | 2009-03-13 | 2013-03-21 | Asustek Comp Inc | 影像處理裝置及影像處理方法 |
DE102010030108B4 (de) | 2010-06-15 | 2014-12-04 | Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. | Farbbildsensor |
BR112014004533A2 (pt) * | 2011-09-29 | 2017-03-28 | Fujifilm Corp | dispositivo de processamento de imagem e método, e dispositivo de imagem |
CN104025566B (zh) * | 2011-12-27 | 2015-10-14 | 富士胶片株式会社 | 摄像装置及摄像装置的控制方法 |
US10459674B2 (en) * | 2013-12-10 | 2019-10-29 | Apple Inc. | Apparatus and methods for packing and transporting raw data |
US9892084B2 (en) | 2013-12-10 | 2018-02-13 | Apple Inc. | Methods and apparatus for virtual channel allocation via a high speed bus interface |
US20150163375A1 (en) * | 2013-12-11 | 2015-06-11 | Ricoh Company, Ltd. | Binary periodic to multibit aperiodic halftone and resolution conversion |
DE102014220322B4 (de) * | 2014-10-07 | 2020-02-13 | Conti Temic Microelectronic Gmbh | Bilderfassungsvorrichtung und Verfahren zum Erfassen eines optischen Bildes |
US10523867B2 (en) | 2016-06-10 | 2019-12-31 | Apple Inc. | Methods and apparatus for multi-lane mapping, link training and lower power modes for a high speed bus interface |
TWI586168B (zh) * | 2016-08-17 | 2017-06-01 | Image processing apparatus and image processing method |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5195050A (en) | 1990-08-20 | 1993-03-16 | Eastman Kodak Company | Single chip, mode switchable, matrix multiplier and convolver suitable for color image processing |
US6366692B1 (en) * | 1998-03-30 | 2002-04-02 | Intel Corporation | Median computation-based integrated color interpolation and color space conversion methodology from 8-bit bayer pattern RGB color space to 24-bit CIE XYZ color space |
AUPQ056099A0 (en) | 1999-05-25 | 1999-06-17 | Silverbrook Research Pty Ltd | A method and apparatus (pprint01) |
JP4097966B2 (ja) * | 2002-03-22 | 2008-06-11 | オリンパス株式会社 | 画像取得装置 |
KR100699831B1 (ko) * | 2004-12-16 | 2007-03-27 | 삼성전자주식회사 | 베이어 패턴의 컬러 신호를 보간하는 방법 및 보간기 |
-
2006
- 2006-08-17 DE DE102006038646A patent/DE102006038646B4/de not_active Expired - Fee Related
-
2007
- 2007-08-17 WO PCT/EP2007/007289 patent/WO2008019867A2/de active Application Filing
- 2007-08-17 EP EP07801731A patent/EP2052550A2/de not_active Withdrawn
- 2007-08-17 US US12/377,549 patent/US8164662B2/en not_active Expired - Fee Related
Non-Patent Citations (1)
Title |
---|
DAVID ALLEYSSON; SABINE SÜSSTRUNK; JEANNY HERAULT: "Color demosaicing by estimating luminance and opponent chromativ signals in the Fourier domain", TENTH COLOR IMAGING CONFERENCE: COLOR SCIENCE AND ENGINEERING SYSTEMS, TECHNOLOGIES, APPLICATIONS, 12 November 2002 (2002-11-12), pages 331 - 336, XP002476542 |
Also Published As
Publication number | Publication date |
---|---|
EP2052550A2 (de) | 2009-04-29 |
DE102006038646B4 (de) | 2011-03-24 |
DE102006038646A1 (de) | 2008-02-21 |
US8164662B2 (en) | 2012-04-24 |
US20110134291A1 (en) | 2011-06-09 |
WO2008019867A3 (de) | 2008-06-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
WO2008019867A2 (de) | Bildverarbeitungsvorrichtung für farb-bilddaten und verfahren zur bildverarbeitung von farb-bilddaten | |
DE69433031T2 (de) | Bildprozessor | |
DE60012464T2 (de) | Verfahren zur Verbesserung eines digitalbildes mit rauschabhängiger Steuerung der Textur | |
DE69724610T2 (de) | Verfahren und gerät zur bildverbesserung | |
DE602005004694T2 (de) | Verfahren und Vorrichtung für lokal adaptive Bildverarbeitungsfilter | |
DE69027649T2 (de) | Elektronisches Grafikystem mit niedriger Kontrollbildauflösung | |
DE60225296T2 (de) | Allzweckbildverbesserungsalgorithmus, der details in digitalbildern visuell besser erkennbar macht | |
DE69938227T2 (de) | Verfahren und Gerät zur Bewegungsartefakten- und Geräuschverringerung in Videobildverarbeitung | |
DE69120661T2 (de) | Bildkompression mit farbinterpolation für ein bildaufnahmesystem mit nur einem bildaufnehmer | |
DE68928557T2 (de) | Bildverarbeitungsgerät und -methode | |
DE60012649T2 (de) | Beseitigung von chromarauschen aus digitalbildern durch verwendung veränderlich geformter pixelnachbarschaftsbereiche | |
DE69736878T2 (de) | Verfahren zur Umsetzung von Farbdaten | |
DE60127016T2 (de) | Verfahren und Gerät zur Durchführung einer lokalen Farbkorrektur | |
DE112016001040T5 (de) | Verfahren und System zur Echtzeit-Rauschbeseitung und -Bildverbesserung von Bildern mit hohem Dynamikumfang | |
DE102011056970A1 (de) | Rasterausgabe von rotierten, interpolierten Pixeln, die für digitale Bildstabilisierung optimiert ist | |
DE3789091T2 (de) | Bildverarbeitungsverfahren und -system zur Bildrekonstruktion. | |
DE3788925T2 (de) | Interpolator für Fernsehtricksystem. | |
DE2937282A1 (de) | Anlage zur unterdrueckung von bildrauschen | |
DE69029169T2 (de) | Bildverarbeitung mit Rauschanreicherungsoperatoren für Moire-Verringerung und/oder Zufallspunkterzeugung | |
DE60119904T2 (de) | Vorrichtung und Verfahren zur Entfernung des Mosaikeffekts in Rohbilddaten im Hinblick auf die Datenkompression | |
DE60023619T2 (de) | Bildverarbeitungsvorrichtung zur Verringerung der Abtastfrequenz und zur Interpolation eines Bildsignals von einem Sensor mit Farbfilteranordnung | |
DE102016112968A1 (de) | Bestimmung von Farbwerten für Pixel an Zwischenpositionen | |
DE102014008686B4 (de) | Verfahren und Vorrichtung zur Farbinterpolation | |
DE10241353B4 (de) | Verfahren und Vorrichtung zum Umwandeln eines Farbbildes | |
DE60303614T2 (de) | Verfahren zur bildskalierung |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 07801731 Country of ref document: EP Kind code of ref document: A2 |
|
DPE1 | Request for preliminary examination filed after expiration of 19th month from priority date (pct application filed from 20040101) | ||
WWE | Wipo information: entry into national phase |
Ref document number: 2007801731 Country of ref document: EP |
|
NENP | Non-entry into the national phase |
Ref country code: RU |
|
WWE | Wipo information: entry into national phase |
Ref document number: 12377549 Country of ref document: US |