ES2282136T3 - PROCEDURE AND APPARATUS TO PRODUCE A PRINT OF A BAYER IMAGE. - Google Patents
PROCEDURE AND APPARATUS TO PRODUCE A PRINT OF A BAYER IMAGE. Download PDFInfo
- Publication number
- ES2282136T3 ES2282136T3 ES00962075T ES00962075T ES2282136T3 ES 2282136 T3 ES2282136 T3 ES 2282136T3 ES 00962075 T ES00962075 T ES 00962075T ES 00962075 T ES00962075 T ES 00962075T ES 2282136 T3 ES2282136 T3 ES 2282136T3
- Authority
- ES
- Spain
- Prior art keywords
- image
- data
- resolution
- color
- 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.)
- Expired - Lifetime
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T3/00—Geometric image transformations in the plane of the image
- G06T3/60—Rotation of whole images or parts thereof
- G06T3/606—Rotation of whole images or parts thereof by memory addressing or mapping
-
- G—PHYSICS
- G03—PHOTOGRAPHY; CINEMATOGRAPHY; ANALOGOUS TECHNIQUES USING WAVES OTHER THAN OPTICAL WAVES; ELECTROGRAPHY; HOLOGRAPHY
- G03G—ELECTROGRAPHY; ELECTROPHOTOGRAPHY; MAGNETOGRAPHY
- G03G15/00—Apparatus for electrographic processes using a charge pattern
- G03G15/01—Apparatus for electrographic processes using a charge pattern for producing multicoloured copies
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B41—PRINTING; LINING MACHINES; TYPEWRITERS; STAMPS
- B41J—TYPEWRITERS; SELECTIVE PRINTING MECHANISMS, i.e. MECHANISMS PRINTING OTHERWISE THAN FROM A FORME; CORRECTION OF TYPOGRAPHICAL ERRORS
- B41J2/00—Typewriters or selective printing mechanisms characterised by the printing or marking process for which they are designed
- B41J2/005—Typewriters or selective printing mechanisms characterised by the printing or marking process for which they are designed characterised by bringing liquid or particles selectively into contact with a printing material
- B41J2/01—Ink jet
- B41J2/015—Ink jet characterised by the jet generation process
- B41J2/04—Ink jet characterised by the jet generation process generating single droplets or particles on demand
- B41J2/045—Ink jet characterised by the jet generation process generating single droplets or particles on demand by pressure, e.g. electromechanical transducers
- B41J2/04501—Control methods or devices therefor, e.g. driver circuits, control circuits
- B41J2/04528—Control methods or devices therefor, e.g. driver circuits, control circuits aiming at warming up the head
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B41—PRINTING; LINING MACHINES; TYPEWRITERS; STAMPS
- B41J—TYPEWRITERS; SELECTIVE PRINTING MECHANISMS, i.e. MECHANISMS PRINTING OTHERWISE THAN FROM A FORME; CORRECTION OF TYPOGRAPHICAL ERRORS
- B41J2/00—Typewriters or selective printing mechanisms characterised by the printing or marking process for which they are designed
- B41J2/005—Typewriters or selective printing mechanisms characterised by the printing or marking process for which they are designed characterised by bringing liquid or particles selectively into contact with a printing material
- B41J2/01—Ink jet
- B41J2/015—Ink jet characterised by the jet generation process
- B41J2/04—Ink jet characterised by the jet generation process generating single droplets or particles on demand
- B41J2/045—Ink jet characterised by the jet generation process generating single droplets or particles on demand by pressure, e.g. electromechanical transducers
- B41J2/04501—Control methods or devices therefor, e.g. driver circuits, control circuits
- B41J2/04543—Block driving
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B41—PRINTING; LINING MACHINES; TYPEWRITERS; STAMPS
- B41J—TYPEWRITERS; SELECTIVE PRINTING MECHANISMS, i.e. MECHANISMS PRINTING OTHERWISE THAN FROM A FORME; CORRECTION OF TYPOGRAPHICAL ERRORS
- B41J2/00—Typewriters or selective printing mechanisms characterised by the printing or marking process for which they are designed
- B41J2/005—Typewriters or selective printing mechanisms characterised by the printing or marking process for which they are designed characterised by bringing liquid or particles selectively into contact with a printing material
- B41J2/01—Ink jet
- B41J2/015—Ink jet characterised by the jet generation process
- B41J2/04—Ink jet characterised by the jet generation process generating single droplets or particles on demand
- B41J2/045—Ink jet characterised by the jet generation process generating single droplets or particles on demand by pressure, e.g. electromechanical transducers
- B41J2/04501—Control methods or devices therefor, e.g. driver circuits, control circuits
- B41J2/04563—Control methods or devices therefor, e.g. driver circuits, control circuits detecting head temperature; Ink temperature
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B41—PRINTING; LINING MACHINES; TYPEWRITERS; STAMPS
- B41J—TYPEWRITERS; SELECTIVE PRINTING MECHANISMS, i.e. MECHANISMS PRINTING OTHERWISE THAN FROM A FORME; CORRECTION OF TYPOGRAPHICAL ERRORS
- B41J2/00—Typewriters or selective printing mechanisms characterised by the printing or marking process for which they are designed
- B41J2/005—Typewriters or selective printing mechanisms characterised by the printing or marking process for which they are designed characterised by bringing liquid or particles selectively into contact with a printing material
- B41J2/01—Ink jet
- B41J2/015—Ink jet characterised by the jet generation process
- B41J2/04—Ink jet characterised by the jet generation process generating single droplets or particles on demand
- B41J2/045—Ink jet characterised by the jet generation process generating single droplets or particles on demand by pressure, e.g. electromechanical transducers
- B41J2/04501—Control methods or devices therefor, e.g. driver circuits, control circuits
- B41J2/04586—Control methods or devices therefor, e.g. driver circuits, control circuits controlling heads of a type not covered by groups B41J2/04575 - B41J2/04585, or of an undefined type
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B41—PRINTING; LINING MACHINES; TYPEWRITERS; STAMPS
- B41J—TYPEWRITERS; SELECTIVE PRINTING MECHANISMS, i.e. MECHANISMS PRINTING OTHERWISE THAN FROM A FORME; CORRECTION OF TYPOGRAPHICAL ERRORS
- B41J2/00—Typewriters or selective printing mechanisms characterised by the printing or marking process for which they are designed
- B41J2/005—Typewriters or selective printing mechanisms characterised by the printing or marking process for which they are designed characterised by bringing liquid or particles selectively into contact with a printing material
- B41J2/01—Ink jet
- B41J2/015—Ink jet characterised by the jet generation process
- B41J2/04—Ink jet characterised by the jet generation process generating single droplets or particles on demand
- B41J2/045—Ink jet characterised by the jet generation process generating single droplets or particles on demand by pressure, e.g. electromechanical transducers
- B41J2/04501—Control methods or devices therefor, e.g. driver circuits, control circuits
- B41J2/04591—Width of the driving signal being adjusted
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B41—PRINTING; LINING MACHINES; TYPEWRITERS; STAMPS
- B41J—TYPEWRITERS; SELECTIVE PRINTING MECHANISMS, i.e. MECHANISMS PRINTING OTHERWISE THAN FROM A FORME; CORRECTION OF TYPOGRAPHICAL ERRORS
- B41J29/00—Details of, or accessories for, typewriters or selective printing mechanisms not otherwise provided for
- B41J29/38—Drives, motors, controls or automatic cut-off devices for the entire printing mechanism
- B41J29/393—Devices for controlling or analysing the entire machine ; Controlling or analysing mechanical parameters involving printing of test patterns
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; 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/4007—Scaling of whole images or parts thereof, e.g. expanding or contracting based on interpolation, e.g. bilinear interpolation
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; 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
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T3/00—Geometric image transformations in the plane of the image
- G06T3/60—Rotation of whole images or parts thereof
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T5/00—Image enhancement or restoration
- G06T5/20—Image enhancement or restoration using local operators
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T5/00—Image enhancement or restoration
- G06T5/73—Deblurring; Sharpening
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N1/00—Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
- H04N1/387—Composing, repositioning or otherwise geometrically modifying originals
- H04N1/3877—Image rotation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N1/00—Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
- H04N1/40—Picture signal circuits
- H04N1/409—Edge or detail enhancement; Noise or error suppression
- H04N1/4092—Edge or detail enhancement
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N1/00—Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
- H04N1/46—Colour picture communication systems
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N1/00—Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
- H04N1/46—Colour picture communication systems
- H04N1/48—Picture signal generators
- H04N1/486—Picture signal generators with separate detectors, each detector being used for one specific colour component
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N1/00—Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
- H04N1/46—Colour picture communication systems
- H04N1/56—Processing of colour picture signals
- H04N1/60—Colour correction or control
- H04N1/6016—Conversion to subtractive colour signals
-
- 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
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/10—Image acquisition modality
- G06T2207/10024—Color image
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Spectroscopy & Molecular Physics (AREA)
- Facsimile Image Signal Circuits (AREA)
- Ink Jet (AREA)
- Image Processing (AREA)
- Color Image Communication Systems (AREA)
- Editing Of Facsimile Originals (AREA)
- Color Television Image Signal Generators (AREA)
- Color, Gradation (AREA)
- Coloring (AREA)
- Printing Methods (AREA)
- Diaphragms For Electromechanical Transducers (AREA)
- Television Signal Processing For Recording (AREA)
- Ultra Sonic Daignosis Equipment (AREA)
- Record Information Processing For Printing (AREA)
Abstract
Un procedimiento para proporcionar una imagen para impresión a una resolución de punto bi-nivel predeterminada que corresponde a una resolución de tono continuo predeterminada, incluyendo el procedimiento las etapas de: recibir un primer conjunto de datos indicativos de la imagen, estando el primer conjunto de datos en formato Bayer planarizado que comprende diferentes planos (45, 46, 47) de color, teniendo al menos uno (46) de los planos de color una resolución diferente a la del otro plano o los otros planos (45, 47) de color; realizar reconstrucción y remuestreo (64) de imagen de cada plano de color del primer conjunto de datos, para crear un segundo conjunto de datos de resolución de tono continuo predeterminada que sea mayor que la resolución de cada uno de los planos de color del primer conjunto de datos; convertir (67) el segundo conjunto de datos en un tercer conjunto de datos de la resolución de punto bi-nivel predeterminada que sea mayor que la resolución de tono continuo predeterminada del segundo conjunto de datos, y hacer que el tercer conjunto de datos se encuentre disponible para una impresora (69) a la resolución de punto bi-nivel predeterminada.A procedure for providing an image for printing at a predetermined bi-level point resolution corresponding to a predetermined continuous tone resolution, the method including the steps of: receiving a first set of data indicative of the image, the first set being data in planarized Bayer format comprising different color planes (45, 46, 47), at least one (46) of the color planes having a resolution different from that of the other plane or the other color planes (45, 47) ; Perform image reconstruction and resampling (64) of each color plane of the first data set, to create a second set of predetermined continuous tone resolution data that is greater than the resolution of each of the color planes of the first set of data; convert (67) the second data set into a third data set of the predetermined bi-level point resolution that is greater than the predetermined continuous tone resolution of the second data set, and make the third data set found available for a printer (69) at the default bi-level point resolution.
Description
Procedimiento y aparato para producir una impresión de una imagen Bayer.Procedure and apparatus for producing a Bayer image printing.
La presente invención se refiere a un procedimiento y a un aparato para producir una impresión de una imagen Bayer.The present invention relates to a procedure and to an apparatus for producing an impression of a Bayer image.
La invención ha sido desarrollada principalmente para una cámara digital que incluye una impresora integral para proporcionar una impresión sobre papel de una imagen capturada por la cámara, y va a ser descrita en lo que sigue con referencia a esa aplicación. Sin embargo, se apreciará que la invención no se limita a ese campo de uso particular.The invention has been developed mainly for a digital camera that includes an integral printer for provide a print on paper of an image captured by the camera, and it will be described in what follows with reference to that application. However, it will be appreciated that the invention is not limited to that particular field of use.
De acuerdo con un primer aspecto de la invención, se proporciona un procedimiento para la provisión de una imagen para su impresión a una resolución de puntos bi-nivel predeterminada, que corresponde con una resolución de tono continuo predeterminada, incluyendo el procedimiento las etapas de:According to a first aspect of the invention, a method is provided for the provision of a image for printing at dot resolution default bi-level, which corresponds to a default continuous tone resolution, including Procedure the stages of:
recibir un primer conjunto de datos indicativos de la imagen, estando el primer conjunto de datos en formato Bayer por planos, que comprende diferentes planos (45, 46, 47) de colores, siendo al menos uno de los planos (46) de un color de una resolución diferente a la del plano o planos (45, 47) de otro color,receive a first set of indicative data of the image, being the first data set in Bayer format by planes, comprising different planes (45, 46, 47) of colors, being at least one of the planes (46) of a color of one resolution different from that of the plane or planes (45, 47) of another color,
realizar una reconstrucción y un remuestreo (64) de la imagen de cada plano de color del primer conjunto de datos para crear un segundo conjunto de datos de resolución de tono continuo predeterminada, que sea mayor que la resolución de cada uno de los planos de color del primer conjunto de datos;perform a reconstruction and resampling (64) of the image of each color plane of the first data set to create a second set of tone resolution data default continuous, that is greater than the resolution of each one of the color planes of the first data set;
convertir (67) el segundo conjunto de datos en un tercer conjunto de datos de resolución de puntos bi-nivel predeterminada, que sea mayor que la resolución de tono continuo predeterminada del segundo conjunto de datos, yconvert (67) the second set of data into a third set of point resolution data default bi-level, which is greater than the default continuous tone resolution of the second set of data, and
hacer que el tercer conjunto de datos se encuentre disponible para una impresora (69) a la resolución predeterminada de puntos bi-nivel.make the third set of data be find available for a printer (69) at resolution Default bi-level points.
De preferencia, la primera resolución equivale a la resolución de puntos bi-nivel predeterminada. En otras realizaciones, sin embargo, la primera resolución es mayor que la resolución de puntos bi-nivel predeterminada. Todavía en otra realización, la primera resolución es menor que la resolución de puntos bi-nivel predeterminada.Preferably, the first resolution is equivalent to the default bi-level point resolution. In other embodiments, however, the first resolution is higher than the default bi-level point resolution. In yet another embodiment, the first resolution is less than the default bi-level point resolution.
También de preferencia, el primer conjunto de datos está en formato rojo, verde y azul RGB, y la impresora actúa en respuesta a un formato cyan, magenta y amarillo CMY, y el procedimiento incluye la etapa adicional de convertir el tercer conjunto de datos desde el formato RGB al formato CMY.Also preferably, the first set of data is in red, green and blue RGB format, and the printer acts in response to a cyan, magenta and yellow CMY format, and the procedure includes the additional stage of converting the third data set from RGB format to CMY format.
En una forma preferida, el procedimiento incluye la etapa de hacer más intenso el segundo conjunto de datos. Alternativamente, el procedimiento incluye la etapa preferida de hacer más intenso el primer conjunto de datos.In a preferred form, the procedure includes the stage of making the second set of data more intense. Alternatively, the procedure includes the preferred step of make the first set of data more intense.
De preferencia, el primer conjunto de datos se obtiene a partir de un dispositivo sensor, y el procedimiento incluye la etapa de compensar el primer conjunto de datos en cuanto a las no linealidades del dispositivo sensor. Más preferentemente, la etapa de compensar incluye convertir el primer conjunto de datos desde una pluralidad de muestras de bits x hasta una pluralidad de muestras de bits y, donde x > y. Incluso de manera más preferente, x = 10 e y = 8.Preferably, the first data set is obtained from a sensor device, and the procedure includes the stage of compensating the first set of data as soon as to the nonlinearities of the sensor device. More preferably, the offset stage includes converting the first data set from a plurality of samples of bits x to a plurality of bit samples y, where x> y. Even more preferred, x = 10 and y = 8.
También de preferencia, el procedimiento incluye la etapa de disponer en planos el primer conjunto de datos mediante un plano rojo, un plano verde y un plano azul.Also preferably, the procedure includes the stage of arranging the first data set in plans by a red plane, a green plane and a blue plane.
En una forma preferida, el procedimiento incluye las etapas adicionales de: determinar para el primer conjunto de datos, el m% de píxeles más oscuros y el n% de píxeles más brillantes;In a preferred form, the procedure includes the additional stages of: determine for the first data set, m% of darker pixels and n% of pixels brighter;
ajustar el primer conjunto de datos para igualar el m% de píxeles más oscuros, yadjust the first data set to match m% of darker pixels, and
ajustar el primer conjunto de datos para igualar el n% de píxeles más brillantes.adjust the first data set to match The n% of brightest pixels.
De preferencia, el procedimiento incluye la
etapa adicional de ajustar el primer conjunto de datos para
proporcionar un balance del blanco predeterminado. Más
preferiblemente, el procedimiento incluye la etapa adicional de
ajustar el primer conjunto de datos para proporcionar una expansión
de rango predeterminada. Incluso más preferiblemente, la resolución
de color del primer conjunto de datos se incrementa mientras se
mantiene la misma resolución
espacial.Preferably, the procedure includes the additional step of adjusting the first set of data to provide a predetermined white balance. More preferably, the method includes the additional step of adjusting the first set of data to provide a predetermined range expansion. Even more preferably, the color resolution of the first data set is increased while maintaining the same resolution.
space.
En una forma preferida, el primer conjunto de datos se ajusta selectivamente para proporcionar la imagen con una orientación rotacional predeterminada.In a preferred form, the first set of data is selectively adjusted to provide the image with a default rotational orientation.
De acuerdo con un segundo aspecto de la invención, se proporciona un aparato para la provisión de una imagen, para su impresión a una resolución predeterminada de puntos bi-nivel que corresponde con una resolución predeterminada de tono continuo, incluyendo el aparato:According to a second aspect of the invention, an apparatus is provided for the provision of a image, for printing at a predetermined resolution of points bi-level that corresponds to a resolution Default continuous tone, including the device:
medios de entrada para recibir un primer
conjunto de datos indicativo de la imagen, estando el primer
conjunto de datos en formato Bayer por planos, comprendiendo planos
(45, 46, 47) de diferentes colores siendo al menos uno de los
planos (46) de color de una resolución diferente a la del (de los)
otro(s) plano o planos (45, 47) de
color,input means for receiving a first set of data indicative of the image, the first set of data being in Bayer format by planes, comprising planes (45, 46, 47) of different colors being at least one of the planes (46) of color of a resolution different from that of the other plane (s) (45, 47) of
color,
medios de muestreo para reconstrucción y remuestreo (64) de imagen en el primer conjunto de datos, para crear un segundo conjunto de datos con una resolución de tono continuo predeterminada, que es mayor que la resolución de cada uno de los planos de color del primer conjunto de datos;sampling means for reconstruction and resampling (64) of image in the first data set, to create a second set of data with a continuous tone resolution default, which is greater than the resolution of each of the color planes of the first data set;
medios de procesamiento para convertir (67) el segundo conjunto de datos en un tercer conjunto de datos con una resolución predeterminada de puntos bi-nivel que es mayor que la resolución predeterminada de tono continuo del segundo conjunto de datos, yprocessing means to convert (67) the second set of data in a third set of data with a default resolution of bi-level points which is greater than the default continuous tone resolution of the second data set, and
medios de salida para hacer que el tercer conjunto de datos esté disponible (69) para su impresión a la resolución predeterminada de puntos bi-nivel.exit means to make the third data set available (69) for printing at Default resolution of bi-level points.
De preferencia, la primera resolución se equipara con la resolución predeterminada de puntos bi-nivel. Alternativamente, la primera resolución es mayor que la resolución predeterminada de puntos bi-nivel. En otra realización, sin embargo, la primera resolución es menor que la resolución predeterminada de puntos bi-nivel.Preferably, the first resolution is matches the default resolution of points bi-level Alternatively, the first resolution is greater than the default resolution of points bi-level In another embodiment, however, the first resolution is less than the default resolution of bi-level points
También de preferencia, el primer conjunto de datos está en un formato rojo, verde y azul (RGB), y la impresora actúa en respuesta a un formato cyan, magenta y amarillo (CMY), en el que los medios de procesamiento convierten el tercer conjunto de datos desde el formato RGB al formato CMY.Also preferably, the first set of data is in a red, green and blue (RGB) format, and the printer acts in response to a cyan, magenta and yellow (CMY) format, in which the processing means convert the third set of data from the RGB format to the CMY format.
También de preferencia, el aparato hace más intenso el segundo conjunto de datos. En otra realización, sin embargo, el aparato intensifica el primer conjunto de datos.Also preferably, the device does more Intense the second set of data. In another embodiment, without However, the apparatus intensifies the first set of data.
En una forma preferida, el primer conjunto de
datos se obtiene a partir de un dispositivo sensor, y los medios de
entrada compensan el primer conjunto de datos en cuanto a las no
linealidades del dispositivo sensor. Más preferiblemente, la
compensación para las no linealidades incluye convertir el primer
conjunto de datos, desde una pluralidad de muestras de bits x, a
una pluralidad de muestras de bits y, donde x > y. Incluso más de
preferencia, x = 10, e
y = 8.In a preferred form, the first data set is obtained from a sensor device, and the input means compensates for the first data set in terms of the nonlinearities of the sensor device. More preferably, compensation for nonlinearities includes converting the first set of data, from a plurality of samples of bits x, to a plurality of samples of bits y, where x> y. Even more preferably, x = 10, e
y = 8.
De preferencia, los medios de entrada disponen en planos el primer conjunto de datos según un plano rojo, un plano verde y un plano azul.Preferably, the input means have in planes the first set of data according to a red plane, a plane Green and a blue plane.
Más preferiblemente, los medios de entrada:More preferably, the input means:
determinan, para el primer conjunto de datos, el m% de píxeles más oscuros y el n% de píxeles más brillantes;determine, for the first set of data, the m% of darker pixels and n% of brighter pixels;
ajustan el primer conjunto de datos para igualar el m% de píxeles más oscuros, yadjust the first data set to match m% of darker pixels, and
ajustan el primer conjunto de datos para igualar el n% de píxeles más brillantes.adjust the first data set to match The n% of brightest pixels.
En una forma preferida, los medios de entrada ajustan el primer conjunto de datos para proporcionar un balance del blanco predeterminado. Más preferiblemente, los medios de entrada ajustan el primer conjunto de datos para proporcionar una expansión de rango predeterminada. Incluso más preferiblemente, los medios de entrada incrementan la resolución de color del primer conjunto de datos mientras mantienen la misma resolución espacial.In a preferred form, the input means adjust the first set of data to provide a balance of the default target. More preferably, the means of input adjust the first data set to provide a default range expansion. Even more preferably, the input media increase the color resolution of the first data set while maintaining the same resolution space.
De preferencia, los medios de entrada ajustan selectivamente el primer conjunto de datos para proporcionar la imagen con una orientación rotacional predeterminada.Preferably, the input means adjust selectively the first set of data to provide the image with a default rotational orientation.
De acuerdo con un tercer aspecto de la invención, se proporciona una cámara que incluye:According to a third aspect of the Invention, a camera is provided that includes:
un dispositivo sensor CCD para la provisión de una imagen Bayer;a CCD sensor device for the provision of a Bayer image;
una impresora para proporcionar selectivamente una imagen impresa, ya printer to selectively provide a printed image, and
un aparato según se ha descrito anteriormente, para recibir la imagen Bayer y proporcionar a la impresora el tercer conjunto de datos de tal modo que se pueda producir la imagen impresa.an apparatus as described above, to receive the Bayer image and provide the printer with third set of data so that the image can be produced printed.
\newpage\ newpage
Las realizaciones preferidas de la invención van a ser descritas ahora, únicamente a título de ejemplo, con referencia a la descripción y a las Figuras que siguen.Preferred embodiments of the invention go to be described now, by way of example only, with reference to the description and the following Figures.
La Figura 1 muestra un flujo de imagen de alto nivel del PCP;Figure 1 shows a high image flow PCP level;
la Figura 2 muestra un diagrama del PCP por separado;Figure 2 shows a diagram of the PCP by separated;
la Figura 3 muestra un diagrama de bloques del PCP conectado al hardware de la Printcam;Figure 3 shows a block diagram of the PCP connected to the Printcam hardware;
la Figura 4 muestra una cabeza de impresión Memjet de 10 cm (4 pulgadas);Figure 4 shows a printhead Memjet 10 cm (4 inches);
la Figura 5 muestra la disposición de segmentos en una cabeza de impresión de10 cm (4 pulgadas);Figure 5 shows the arrangement of segments on a 10 cm (4 inch) printhead;
la Figura 6 muestra la disposición de boquillas en un pod, numeradas por orden de disparo;Figure 6 shows the arrangement of nozzles in a pod, numbered in firing order;
la Figura 7 muestra la disposición de boquillas en un pod, numeradas por orden de carga;Figure 7 shows the arrangement of nozzles in a pod, numbered by load order;
la Figura 8 muestra un cromo-pod;Figure 8 shows a chrome-pod;
la Figura 9 muestra un grupo-pod;Figure 9 shows a pod group;
la Figura 10 muestra un grupo de fase;Figure 10 shows a phase group;
la Figura 11 muestra la relación entre segmentos, grupos de disparo, grupos de fase, grupo-pods y cromo-pods;Figure 11 shows the relationship between segments, trigger groups, phase groups, group-pods and chrome-pods;
la Figura 12 muestra perfiles de pulso de AEnable y BEnable durante la impresión de un punto par e impar;Figure 12 shows pulse profiles of AEnable and BEnable during printing of an even and odd dot;
la Figura 13 muestra la orientación de formatos de impresión en base a la imagen CFA;Figure 13 shows the orientation of formats printing based on the CFA image;
la Figura 14 muestra un diagrama de bloques de la cadena de captura de imagen;Figure 14 shows a block diagram of the image capture chain;
la Figura 15 muestra la disposición de píxeles en un mosaico Bayer CFA 2G;Figure 15 shows the pixel arrangement in a Bayer CFA 2G mosaic;
la Figura 16 muestra el proceso RGB de linealización;Figure 16 shows the RGB process of linearization;
la Figura 17 muestra el proceso RGB de planarización;Figure 17 shows the RGB process of planarization;
la Figura 18 muestra un diagrama de bloques de la cadena de impresión de imagen;Figure 18 shows a block diagram of the image printing chain;
la Figura 19 muestra un rango de color de muestra para un plano de color simple;Figure 19 shows a color range of sample for a simple color plane;
la Figura 20 muestra las etapas involucradas en el balance del blanco y en la expansión de rango;Figure 20 shows the stages involved in white balance and range expansion;
la Figura 21 muestra un diagrama de bloques de un aparato capacitado para realizar el balance del blanco y la expansión de rango;Figure 21 shows a block diagram of a device capable of performing the white balance and the range expansion;
la Figura 22 muestra los diversos píxeles de plano de color en relación con una resolución CFA;Figure 22 shows the various pixels of color plane in relation to a CFA resolution;
la Figura 23 muestra el efecto de girar el plano del verde en 45 grados;Figure 23 shows the effect of rotating the plane from green at 45 degrees;
la Figura 24 muestra la distancia entre los píxeles girados para el plano del verde;Figure 24 shows the distance between rotated pixels for the green plane;
la Figura 25 muestra el proceso de movimiento de mapeo en el espacio CFA no girado respecto al espacio CFA girado;Figure 25 shows the movement process of mapping in CFA space not rotated with respect to CFA space turned;
la Figura 26 muestra un diagrama de bloques del proceso de intensificación;Figure 26 shows a block diagram of the intensification process;
la Figura 27 muestra el proceso involucrado en el filtrado pasa-alto de un pixel de luminancia simple con una función de 3 x 3;Figure 27 shows the process involved in high-pass filtering of a luminance pixel simple with a 3 x 3 function;
la Figura 28 muestra la transformación de conversación de RGB a CMY;Figure 28 shows the transformation of RGB to CMY conversation;
la Figura 29 muestra la conversión de RGB a CMY mediante interpolación tri-lineal;Figure 29 shows the conversion of RGB to CMY by tri-linear interpolation;
la Figura 30 muestra la replicación de pixel, de un pixel simple a un bloque de 5 x 5;Figure 30 shows the pixel replication of a simple pixel to a 5 x 5 block;
la Figura 31 muestra un diagrama de bloques del proceso de generación de semitono;Figure 31 shows a block diagram of the halftone generation process;
la Figura 32 muestra el proceso de puntos de reformateo para la impresora;Figure 32 shows the process of points of reformatting for the printer;
la Figura 33 muestra un diagrama de bloques de la unidad de captura de imágenes;Figure 33 shows a block diagram of the image capture unit;
la Figura 35 muestra un diagrama de bloques de la unidad de acceso de imagen;Figure 35 shows a block diagram of the image access unit;
la Figura 36 muestra un diagrama de bloques de la unidad de histograma de imagen;Figure 36 shows a block diagram of the image histogram unit;
la Figura 37 muestra un diagrama de bloques de la interfaz de impresora;Figure 37 shows a block diagram of the printer interface;
la Figura 38 muestra el diagrama de bloques de la interfaz Memjet;Figure 38 shows the block diagram of the Memjet interface;
la Figura 39 muestra la generación de anchos de pulso AEnable y BEnable;Figure 39 shows the generation of widths of AEnable and BEnable pulse;
la Figura 40 muestra un diagrama de bloques de la lógica de conteo de punto;Figure 40 shows a block diagram of point counting logic;
la Figura 41 muestra la interfaz de la unidad de generador de impresión;Figure 41 shows the interface of the unit print generator;
la Figura 42 muestra un diagrama de bloques de la unidad de generador de impresión;Figure 42 shows a block diagram of the print generator unit;
la Figura 43 muestra un diagrama de bloques de la unidad de acceso de patrón de prueba;Figure 43 shows a block diagram of the test pattern access unit;
la Figura 44 muestra un diagrama de bloques de la Memoria Intermedia 5;Figure 44 shows a block diagram of Intermediate Memory 5;
la Figura 45 muestra un diagrama de bloques de la Memoria Intermedia 4;Figure 45 shows a block diagram of Intermediate Memory 4;
la Figura 46 muestra un diagrama de bloques del proceso de UpInterpolate, Halftone y Reformat;Figure 46 shows a block diagram of the UpInterpolate, Halftone and Reformat process;
la Figura 47 muestra cómo realizar el mapeo desde una célula vibratoria hasta una célula vibratoria acumulada;Figure 47 shows how to perform the mapping from a vibrating cell to a vibrating cell accumulated
la Figura 48 muestra un diagrama de bloques del proceso de Convertir RGB a CMY;Figure 48 shows a block diagram of the Convert RGB to CMY process;
la Figura 49 muestra un diagrama de bloques de la Memoria Intermedia 2;Figure 49 shows a block diagram of Intermediate Memory 2;
la Figura 50 muestra un filtro espacial básico pasa-alto que utiliza una función 3 x 3;Figure 50 shows a basic spatial filter high pass that uses a 3 x 3 function;
la Figura 51 muestra un diagrama de bloques de la unidad de intensificación;Figure 51 shows a block diagram of the intensification unit;
la Figura 52 muestra la estructura de la memoria Intermedia 1;Figure 52 shows the structure of the memory Intermediate 1;
la Figura 53 muestra un diagrama de bloques del proceso de Remuestrear y Crear Canal de Luminancia;Figure 53 shows a block diagram of the Resample and Create Luminance Channel process;
la Figura 54 muestra un diagrama de bloques de la Unidad de Convolución;Figure 54 shows a block diagram of the Convolution Unit;
la Figura 55 muestra el orden de píxeles generados desde el receptor;Figure 55 shows the pixel order generated from the receiver;
la Figura 56 muestra el movimiento en "x" o en "y" en el espacio girado y no girado;Figure 56 shows the movement in "x" or in "and" in the space turned and not turned;
la Figura 57 muestra la dirección de entradas en la sub-memoria del verde de la Memoria Intermedia 1;Figure 57 shows the address of entries in the green sub-memory of the Buffer one;
la Figura 58 muestra la relación entre las entradas del verde en función de la rotación;Figure 58 shows the relationship between green entries based on rotation;
la Figura 59 muestra un muestreo 4 x 4 del canal del verde;Figure 59 shows a 4x4 sampling of the channel of the green;
la Figura 60 muestra un muestreo 4 x 4, tipo 1, del verde;Figure 60 shows a 4x4 sampling, type 1, of the green;
la Figura 61 muestra un muestreo 4 x 4, tipo 2, del verde;Figure 61 shows a 4x4 sampling, type 2, of the green;
la Figura 62 muestra los dos tipos de direccionamiento de fila para el verde;Figure 62 shows the two types of row addressing for green;
la Figura 63 muestra el direccionamiento de entradas en las sub-memorias del rojo y del azul de la memoria intermedia 1;Figure 63 shows the addressing of entries in the red and blue sub-memories of buffer 1;
la Figura 64 muestra las 16 primeras muestras leídas para calcular el primer pixel;Figure 64 shows the first 16 samples read to calculate the first pixel;
\newpage\ newpage
la Figura 65 muestra el peor caso de superposición de lectura 4 x 4 desde las memorias intermedias del azul y del rojo;Figure 65 shows the worst case of 4 x 4 read overlay from the buffers of the blue and red;
la Figura 66 muestra un diagrama de bloques de la unidad de giro, balance del blanco y expansión de rango, yFigure 66 shows a block diagram of the unit of rotation, white balance and range expansion, and
la Figura 67 muestra el área de imagen activa del interior del espacio coordenado generado.Figure 67 shows the active image area inside the generated coordinate space.
\vskip1.000000\baselineskip\ vskip1.000000 \ baselineskip
El Procesador Central de la Printcam (PCP) posee toda la potencia de procesamiento para una Printcam, y se ha diseñado específicamente para ser usado en el sistema de cámara digital Printcam. El PCP 3 conecta un sensor 1 de imagen (para la captura de imágenes), y una impresora 2 Memjet para la impresión de imágenes. En términos de procesamiento de imagen, se puede pensar que el PCP es el traductor de imágenes desde la captura hasta la impresión, como se muestra en la Figura 1:The Central Processor of the Printcam (PCP) has all the processing power for a Printcam, and it has specifically designed to be used in the camera system Digital Printcam. PCP 3 connects an image sensor 1 (for image capture), and a 2 Memjet printer for printing images. In terms of image processing, you can think that the PCP is the image translator from capture to printing, as shown in Figure 1:
- \bullet?
- El Sensor de Imagen 1 es un sensor de imagen CMOS, que captura una imagen RGB de 1500 x 1000. El Sensor de Imagen constituye el dispositivo de entrada. Image Sensor 1 is a CMOS image sensor, which captures a 1500 x 1000 RGB image. The Image Sensor constitutes the input device.
- \bullet?
- La Cabeza de Impresión 2 es una impresora Memjet de 1600 dpi de 10,16 cm (4 pulgadas) de largo, capacitada para imprimir en tres colores: cyan, magenta y amarillo. La Cabeza de Impresión constituye el dispositivo de salida de imagen. The Print Head 2 is a 1600 dpi 10.16 cm (4 inches) Memjet printer long, able to print in three colors: cyan, magenta and yellow. The Print Head is the device for image output
- \bullet?
- El PCP 3 toma una imagen desde el Sensor de Imagen 1, la procesa, y envía la forma final de la imagen a la Cabeza de Impresión 2, para su impresión. Puesto que el Sensor de Imagen 1 captura en RGB, y la Cabeza de Impresión 2 imprime en CMY, el PCP 3 debe traducir desde el espacio de color RGB hasta el espacio de color CMY. El PCP 3 contiene todos los requisitos para el procesamiento intermedio de la imagen, incluyendo el balance del blanco, la corrección de color y el mapeo de gama de frecuencia, la intensificación de imagen, y la generación de semitono. Adicionalmente, el PCP 3 controla la interfaz de usuario y el proceso de impresión completo, proporcionando soporte para una diversidad de formatos de imagen. El PCP 3 contiene también interfaces para permitir exportar e importar fotos, cumpliendo con el estándar DPOF (Digital Print Order Format, Formato Digital de Órdenes de Impresión). PCP 3 takes a picture from Image Sensor 1, process it, and send the final form of The image to Print Head 2, for printing. Since Image Sensor 1 captures in RGB, and Print Head 2 print in CMY, PCP 3 must translate from RGB color space up to CMY color space. PCP 3 contains all requirements for intermediate image processing, including White balance, color correction and range mapping frequency, image intensification, and generation of semitone. Additionally, PCP 3 controls the user interface and the entire printing process, providing support for a diversity of image formats PCP 3 also contains interfaces to allow export and import photos, complying with DPOF standard (Digital Print Order Format, Digital Format Print Orders).
\vskip1.000000\baselineskip\ vskip1.000000 \ baselineskip
El PCP 3 está diseñado para ser fabricado utilizando un proceso CMOS de 0,25 micrómetros, con aproximadamente 10 millones de transistores, casi la mitad de los cuales son memoria flash o RAM estática. Esto conduce a un área estimada de 16 mm^{2}. El coste de fabricación estimado es de 4 \textdollar en el año 2001. El PCP 3 es un diseño relativamente directo, y el esfuerzo de diseño puede reducirse con el uso de técnicas de compilación de rutas de datos, macro-células y núcleos IP. El PCP 3 contiene:PCP 3 is designed to be manufactured using a 0.25 micrometer CMOS process, with approximately 10 million transistors, almost half of which are memory Flash or static RAM. This leads to an estimated area of 16 mm2. The estimated manufacturing cost is 4 \ textdollar in 2001. The PCP 3 is a relatively straightforward design, and the design effort can be reduced with the use of techniques compilation of data paths, macro-cells and IP cores PCP 3 contains:
- \bullet?
- Una CPU/ núcleo microcontrolador 10 de baja velocidad One CPU / core 10 low speed microcontroller
- \bullet?
- 1,5 MBytes de Memoria flash 11 multi-nivel (2 bits por celda) 1.5 MBytes of Memory 11 multi-level flash (2 bits per cell)
- \bullet?
- una Interfaz 98 de Sensor de Imagen CMOS en el interior de una Unidad de Captura de Imagen 12 an Interface 98 of CMOS Image Sensor inside a Capture Unit Picture 12
- \bullet?
- 16 KBytes de memoria flash 13 para almacenamiento de programas 16 KBytes of memory flash 13 for program storage
- \bullet?
- 4 KBytes de RAM 14 para almacenamiento variable de programas. 4 KBytes of RAM 14 for variable storage of programs.
El PCP 3 ha sido previsto para que corra a una velocidad de reloj de aproximadamente 100 MHz a 3 V externamente y 1,5 V internamente para minimizar el consumo de energía. La frecuencia operativa real será un múltiplo entero de la frecuencia operativa de de la Cabeza de Impresión. La CPU 10 está previsto que sea una CPU de tipo microcontrolador simple, que corra a aproximadamente 1 MHz. Tanto la CPU 10 como la interfaz 12 de sensor CMOS, pueden ser núcleos suministrados por un proveedor.PCP 3 has been planned to run to a clock speed of approximately 100 MHz to 3 V externally and 1.5 V internally to minimize power consumption. The actual operating frequency will be an integer multiple of the frequency Operation of the Print Head. CPU 10 is expected to be a simple microcontroller CPU, which runs to approximately 1 MHz. Both CPU 10 and sensor interface 12 CMOS, can be cores supplied by a supplier.
La Figura 2 muestra un diagrama de bloques del PCP 3 por separado.Figure 2 shows a block diagram of the PCP 3 separately.
El PCP 3 está diseñado para su uso en sistemas de Printcam. La Figura 3 muestra un diagrama de bloques del PCP 3 conectado al resto del hardware de la Printcam.PCP 3 is designed for use in systems from Printcam. Figure 3 shows a block diagram of PCP 3 connected to the rest of the Printcam hardware.
\newpage\ newpage
El PCP 3 se ha diseñado específicamente para conectarse a una cabeza de impresión 2 Memjet de 10 cm (4 pulgadas). La cabeza de impresión 2 se utiliza como impresora de página a lo ancho, produciendo una imagen impresa de 10 cm (4 pulgadas) de anchura sin que tenga que ser movida. Al contrario, el papel 20 se imprime según se mueve éste al pasar por la cabeza de impresión 2, como se muestra en la Figura 4.PCP 3 has been specifically designed to connect to a print head 2 Memjet of 10 cm (4 inches). Printhead 2 is used as a page printer at wide, producing a 10 cm (4 inch) printed image of width without having to be moved. On the contrary, paper 20 is print as it moves as it passes through printhead 2, as shown in Figure 4.
Cada cabeza de impresión 2 de 10 cm (4 pulgadas)
consiste en 8 segmentos, siendo cada segmento de 12,7 mm (1/2
pulgada) de longitud. Cada uno de los segmentos 21 imprime puntos
cyan, magenta y amarillo bi-nivel sobre una parte
diferente de la página, para producir la imagen final. Las
posiciones de los segmentos se muestran en la
Figura 5.Each print head 2 of 10 cm (4 inches) consists of 8 segments, each segment being 12.7 mm (1/2 inch) in length. Each of the segments 21 prints cyan, magenta and yellow bi-level points on a different part of the page, to produce the final image. Segment positions are shown in the
Figure 5
Puesto que la cabeza de impresión 2 imprime puntos a 1600 dpi, cada punto tiene un diámetro de 22,5 \mum, y están separados por 15,875 \mum. Así, cada segmento de 12,7 mm (media pulgada) imprime 800 puntos, correspondiendo los 8 segmentos a las posiciones:Since printhead 2 prints dots at 1600 dpi, each point has a diameter of 22.5 µm, and are separated by 15,875 µm. Thus, each 12.7 mm segment (half an inch) prints 800 dots, corresponding to the 8 segments to positions:
Aunque cada segmento 21 produce 800 puntos de la imagen final, cada punto está representado por una combinación de tinta cyan, magenta y amarilla bi-nivel. Puesto que la impresión es bi-nivel, la imagen de entrada será vibrada o de error difuso para unos mejores resultados.Although each segment 21 produces 800 points of the final image, each point is represented by a combination of cyan, magenta and yellow bi-level ink. Since The printing is bi-level, the input image will be Vibrated or diffuse error for better results.
Cada segmento 21 contiene entonces 2.400 boquillas: 800 de cada color cyan, magenta y amarillo. Una cabeza de impresión 2 de 10 cm (cuatro pulgadas) contiene 8 segmentos 21 con un total de 19.200 boquillas.Each segment 21 then contains 2,400 nozzles: 800 of each color cyan, magenta and yellow. A head Print 2 of 10 cm (four inches) contains 8 segments 21 with a total of 19,200 nozzles.
Las boquillas 22 en el interior de un segmento 21 simple, están agrupadas por motivos de estabilidad física, así como también por reducción del consumo de potencia durante la impresión. En términos de estabilidad física, un total de 10 boquillas comparten el mismo depósito de tinta. En términos de consumo de potencia, los agrupamientos se realizan de manera que permiten un modo de presión de baja velocidad y uno de alta velocidad.The nozzles 22 inside a segment 21 simple, they are grouped for reasons of physical stability as well as well as reduction of power consumption during Print. In terms of physical stability, a total of 10 nozzles share the same ink tank. In terms of power consumption, the clusters are made so that allow a low speed and a high pressure mode speed.
La cabeza de impresión 2 soporta dos velocidades de impresión para permitir que se lleven a cabo diferentes relaciones de velocidad/ potencia en diferentes configuraciones de productos.Printhead 2 supports two speeds printing to allow different ones to be carried out speed / power ratios in different configurations of products.
En el modo de impresión de baja velocidad, 96 boquillas 22 son disparadas simultáneamente desde cada cabeza de impresión 2 de 10 cm (4 pulgadas). Las boquillas disparadas deben ser maximalmente distantes, de modo que se disparen 12 boquillas 22 desde cada segmento. Para disparar todas las 19.200 boquillas, se deben disparar 200 conjuntos diferentes de 96 boquillas.In low speed printing mode, 96 nozzles 22 are fired simultaneously from each head of 10 cm (4 inch) print 2. The fired nozzles must be maximally distant, so that 12 nozzles are fired 22 from each segment. To shoot all 19,200 nozzles, it 200 different sets of 96 nozzles must be fired.
En el modo de impresión de alta velocidad, se disparan 192 boquillas 22 simultáneamente desde cada cabeza de impresión 2 de 10 cm (4 pulgadas). Las boquillas 22 disparadas deben ser maximalmente distantes, de modo que se disparan 24 boquillas desde cada segmento. Para disparar la totalidad de 19.200 boquillas, se deben disparar 100 conjuntos diferentes de 192 boquillas.In high speed printing mode, it they shoot 192 nozzles 22 simultaneously from each head of 10 cm (4 inch) print 2. The nozzles 22 fired must be maximally distant, so that 24 nozzles are fired from each segment. To fire the entire 19,200 nozzles, 100 different sets of 192 nozzles must be fired.
El consumo de potencia en el modo de baja velocidad es la mitad que en el modo de alta velocidad. Obsérvese, no obstante, que la energía consumida para imprimir una línea, y por tanto una página, es la misma en ambos casos.Power consumption in low mode Speed is half that in high speed mode. Observe, however, that the energy consumed to print a line, and by both a page, is the same in both cases.
En un escenario tal como una Printcam alimentada con batería, los requisitos de consumo de potencia determinan el uso de la impresión de baja velocidad.In a scenario such as a powered Printcam with battery, the power consumption requirements determine the use of low speed printing.
Un pod simple 23 consiste en 10 boquillas 22 que comparten un depósito 5 común de tinta. 5 boquillas 22 están en una fila, y 5 están en otra. Cada boquilla 22 produce puntos de aproximadamente 22,5 \mum de diámetro, separados sobre una parrilla de 15,875 \mum. La Figura 6 muestra la disposición de un pod simple, con las boquillas 22 numeradas de acuerdo con el orden en el que las mismas deben ser disparadas.A simple pod 23 consists of 10 nozzles 22 that They share a common 5 ink tank. 5 nozzles 22 are in one row, and 5 are in another. Each nozzle 22 produces points of approximately 22.5 µm in diameter, separated on a 15,875 µm grill. Figure 6 shows the layout of a simple pod, with the nozzles 22 numbered according to the order in which they must be shot.
Aunque las boquillas 22 son disparadas por este orden, la relación de boquillas 22 y la colocación física de puntos sobre la página impresa, es diferente. Las boquillas 22 de una fila representan los puntos pares de una línea de la página, y las boquillas de la otra fila representan los puntos impares de la línea adyacente de la página. La Figura 7 muestra el mismo pod 23 con las boquillas 22 numeradas de acuerdo con el orden en el que las mismas deben ser cargadas.Although nozzles 22 are fired by this order, the ratio of nozzles 22 and the physical placement of points On the printed page, it is different. Nozzles 22 in a row they represent the even points of a page line, and the nozzles in the other row represent the odd points of the line adjacent to the page. Figure 7 shows the same pod 23 with the nozzles 22 numbered according to the order in which the They must be loaded.
Las boquillas 22 interiores a un pod 23, están por tanto lógicamente separadas por la anchura de 1 punto. La distancia exacta entre las boquillas 22 dependerá de las propiedades del mecanismo de disparo Memjet. La cabeza de impresión 2 está diseñada con boquillas escalonadas diseñadas para emparejarse con el flujo del papel 20.The inner nozzles 22 to a pod 23, are therefore logically separated by the width of 1 point. The exact distance between the nozzles 22 will depend on the properties of the Memjet trigger mechanism. Printhead 2 is designed with staggered nozzles designed to match the paper flow 20.
Un pod 23 de cada color (cyan, magenta y amarillo), se agrupan en un croma-pod 24. Un croma-pod 24 representa componentes de diferente color del mismo conjunto horizontal de 10 puntos, sobre líneas diferentes. La distancia exacta entre diferentes pods 23 de color depende de los parámetros operativos de la Memjet, y puede variar de un diseño de Memjet a otro. La distancia se considera que es una cantidad constante de anchuras de punto, y debe ser tenida en cuenta por lo tanto cuando se realiza la impresión: los puntos imprimidos por las boquillas cyan serán para líneas diferentes que los imprimidos por las boquillas magenta o amarillo. El algoritmo de impresión debe permitir una distancia variable de hasta aproximadamente 8 anchuras de punto entre colores (véase la Tabla 3 para más detalles). La Figura 8 ilustra un croma-pod 24 simple.A pod 23 of each color (cyan, magenta and yellow), are grouped in a chroma-pod 24. A Chroma-Pod 24 represents components of different color of the same horizontal set of 10 points, on lines different. The exact distance between different color pods 23 It depends on the operating parameters of the Memjet, and may vary from one Memjet design to another. The distance is considered to be a constant amount of knit widths, and should be taken in account therefore when printing is done: the dots printed by cyan nozzles will be for different lines that those printed by the magenta or yellow nozzles. The algorithm of printing should allow a variable distance of up to approximately 8 knit widths between colors (see Table 3 for more details). Figure 8 illustrates a chroma-pod 24 simple.
5 croma-pods 24 se organizan en un solo grupo-pod 25. Puesto que cada croma-pod contiene 30 boquillas 22, cada grupo-pod contiene 150 boquillas 22: 50 boquillas cyan, 50 boquillas magenta y 50 boquillas amarillo. La disposición se muestra en la Figura 9, con los croma-pods numerados como 0-4. Obsérvese que la distancia entre croma-pods adyacentes se ha exagerado por motivos de claridad.5 chroma-pods 24 are organized in a single group-pod 25. Since each Chroma-pod contains 30 nozzles 22, each pod-group contains 150 nozzles 22: 50 nozzles cyan, 50 magenta nozzles and 50 yellow nozzles. The disposition It is shown in Figure 9, with the chroma-pods numbered 0-4. Note that the distance between adjacent chroma-pods has been exaggerated by reasons for clarity
2 grupo-pods 25 se organizan en un único grupo-fase 26. El grupo-fase 26 se denomina de ese modo debido a que los grupos de boquillas 23 del interior de un grupo-fase se disparan simultáneamente durante una fase de disparo dada (esto se explica con mayor detalle en lo que sigue). La formación de un grupo-fase a partir de 2 grupo-pods 25, se realiza totalmente a efectos de impresión a baja velocidad y a alta velocidad a través de 2 líneas PodgroupEnable.2 group-pods 25 are organized in a single group-phase 26. The group-phase 26 is named in that way because the groups of nozzles 23 inside a group-phase are fired simultaneously during a given trigger phase (this is explained in more detail in what follow). The formation of a group-phase from 2 group-pods 25, is done entirely for the purpose of low speed and high speed printing through 2 lines PodgroupEnable.
Durante la impresión a baja velocidad, se dispone solamente una de las dos líneas PodgroupEnable en un pulso de disparo dado, de modo que solamente uno grupo-pod de los dos dispara las boquillas. Durante la impresión a alta velocidad, se disponen ambas líneas PodgroupEnable, de modo que ambos grupo-pods disparan las boquillas. En consecuencia, la impresión a baja velocidad es dos veces más larga que la impresión a alta velocidad, puesto que la impresión a alta velocidad dispara el doble de boquillas a la vez.During low speed printing, it will has only one of the two PodgroupEnable lines in one pulse given shot, so that only one group-pod of both shoots the nozzles. During high printing speed, both PodgroupEnable lines are arranged, so that both group-pods shoot the nozzles. In Consequently, low speed printing is twice as long than high speed printing, since high printing Speed fires twice as many nozzles at once.
La Figura 10 ilustra la composición del grupo-fase. La distancia entre grupo-pods adyacentes ha sido exagerada por motivos de claridad.Figure 10 illustrates the composition of the group-phase The distance between Adjacent group-pods have been exaggerated for reasons of clarity
Dos grupo-fases (PhasegroupA y
PhasegroupB) se organizan en un sólo grupo de disparo 27, con 4
grupos de disparo en cada segmento. Los grupos de disparo 27 se
denominan así debido a que todos ellos disparan las mismas boquillas
27 simultáneamente. Dos líneas de habilitación, AEnable y BEnable,
permiten el disparo de las boquillas PhasegroupA y de las boquillas
PhasegroupB independientemente como fases de disparo diferentes. La
disposición se muestra en la Figura 11. La distancia entre
agrupamientos adyacentes se ha exagerado por motivos de
claridad.Two group-phases (PhasegroupA and PhasegroupB) are organized into a single firing group 27, with 4 firing groups in each segment. The firing groups 27 are so named because they all fire the same nozzles 27 simultaneously. Two enable lines, AEnable and BEnable, allow the tripping of the PhasegroupA nozzles and the PhasegroupB nozzles independently as different firing phases. The arrangement is shown in Figure 11. The distance between adjacent clusters has been exaggerated for reasons of
clarity.
La Tabla 2 es un sumario de los agrupamientos de boquillas en una cabeza de impresión.Table 2 is a summary of the groupings of nozzles on a printhead.
\vskip1.000000\baselineskip\ vskip1.000000 \ baselineskip
Una cabeza de impresión 2 simple de 10 cm (4 pulgadas) contiene un total de 19.200 boquillas 22. Un Ciclo de Impresión incluye el disparo de hasta la totalidad de estas boquillas, dependiendo de la información que se ha de imprimir. Un Ciclo de Carga incluye la carga de la cabeza de impresión con la información que ha de ser imprimida durante el posterior Ciclo de Impresión.A simple print head 2 of 10 cm (4 inches) contains a total of 19,200 nozzles 22. A Cycle of Printing includes shooting up to all of these nozzles, depending on the information to be printed. A Load Cycle includes loading the printhead with the information to be printed during the subsequent Cycle of Print.
Cada boquilla 22 posee un bit de NozzleEnable asociado, que determina si la boquilla se ha de disparar o no durante el Ciclo de Impresión. Los bits de NozzleEnable (uno por boquilla) se cargan por medio de un conjunto de registros de desplazamiento.Each nozzle 22 has a NozzleEnable bit associated, which determines whether the nozzle is to be fired or not during the Print Cycle. The NozzleEnable bits (one per nozzle) are loaded by means of a set of records of displacement.
Lógicamente, existen 3 registros de desplazamiento por segmento (uno por color), cada uno con una longitud de 800. Según se desplazan los bits por el registro de desplazamiento para un color dado, son dirigidos hasta las boquillas inferior y superior sobre pulsos alternos. Internamente, cada registro de desplazamiento con una profundidad de 800, comprende dos registros de desplazamiento de 400 de profundidad: uno para las boquillas superiores y uno para las boquillas inferiores. Los bits alternos son desplazados hacia los registros internos. En lo que se refiere a la interfaz externa, sin embargo, existe un único registro de desplazamiento de 800 de profundidad.Logically, there are 3 records of displacement per segment (one per color), each with a length of 800. As the bits move through the register of displacement for a given color, are directed until lower and upper nozzles on alternate pulses. Internally, each shift register with a depth of 800, It comprises two displacement registers of 400 depth: one for the upper nozzles and one for the lower nozzles. Alternate bits are shifted to internal registers. In as far as the external interface is concerned, however, there is a only 800-meter deep offset register.
Una vez que todos los registros de desplazamiento han sido cargados completamente (800 pulsos de carga), todos los bits son transferidos en paralelo a los bits de NozzleEnable apropiados. Esto equivale a una transferencia paralelo simple de 19.200 bits. Una vez que la transferencia ha tenido lugar, el Ciclo de Impresión puede empezar. El Ciclo de Impresión y el Ciclo de Carga pueden ocurrir simultáneamente mientras se produce la carga en paralelo de todos los bits de NozzleEnable al final del Ciclo de ImpresiónOnce all records of displacement have been fully charged (800 pulses of load), all bits are transferred in parallel to the bits of NozzleEnable appropriate. This amounts to a parallel transfer. Simple 19,200 bits. Once the transfer has taken place, The Print Cycle can start. The Print Cycle and the Load Cycle can occur simultaneously while the parallel loading of all NozzleEnable bits at the end of Print Cycle
El Ciclo de Carga está relacionado con la carga de los registros de desplazamiento de la cabeza de impresión con los siguientes bits de NozzleEnable del Ciclo de Impresión.The Load Cycle is related to the load of print head offset records with the following NozzleEnable bits of the Print Cycle.
Cada segmento 21 posee 3 entradas relacionadas directamente con los registros de desplazamiento del cyan, el magenta y el amarillo. Estas entradas se denominan CDatain, MDatain e YDatain. Puesto que existen 8 segmentos, existe un total de 24 líneas de entrada de color por cabeza de impresión de 10 cm (4 pulgadas). Un pulso simple por la línea SRClock (compartido entre la totalidad de los 8 segmentos), transfiere los 24 bits a los registros de desplazamiento apropiados. Pulsos alternos transfieren bits a las boquillas inferior y superior, respectivamente. Puesto que existen 19.200 boquillas, se requiere un total de 800 pulsos para la transferencia. Una vez que se ha transferido la totalidad de los 19.200 pulsos, un pulso simple por la línea PTransfer compartida, provoca la transferencia de datos paralelo desde los registros de desplazamiento a los bits NozzleEnable apropiados.Each segment 21 has 3 related entries directly with the cyan displacement records, the Magenta and yellow. These entries are called CDatain, MDatain and YDatain. Since there are 8 segments, there are a total of 24 10 cm color input lines per printhead (4 inches). A simple pulse along the SRClock line (shared between all 8 segments), transfer the 24 bits to the appropriate displacement records. Alternate pulses transfer bits to the lower and upper nozzles, respectively. Market Stall that there are 19,200 nozzles, a total of 800 pulses is required For transfer. Once the entirety has been transferred of 19,200 pulses, a simple pulse along the PTransfer line shared, causes parallel data transfer from shift registers to the appropriate NozzleEnable bits.
La transferencia paralelo a través de un pulso sobre PTransfer, debe tener lugar después de que haya acabado el Ciclo de Impresión. En otro caso, los bits de NozzleEnable para la línea que se está imprimiendo serán incorrectos.Parallel transfer through a pulse on PTransfer, it must take place after the Print cycle Otherwise, the NozzleEnable bits for the line being printed will be incorrect.
Puesto que se cargan los 8 segmentos 21 con un simple pulso SRClock, cualquier procedimiento de impresión debe producir los datos en la secuencia correcta para la cabeza de impresión. Como ejemplo, el primer pulso SRClock transferirá los bits CMY para el siguiente punto 0, 800, 1600, 2400, 3200, 4000, 4800 y 5600 del Ciclo de Impresión. El segundo pulso SRClock transferirá los bits CMY para el siguiente punto 1, 801, 1601, 2401, 3201, 4001, 4801 y 5601 del Ciclo de Impresión. Tras los 800 pulsos SRClock, se puede proporcionar el pulso PTransfer.Since the 8 segments 21 are loaded with a Simple SRClock pulse, any printing procedure must produce the data in the correct sequence for the head of Print. As an example, the first SRClock pulse will transfer the CMY bits for the next point 0, 800, 1600, 2400, 3200, 4000, 4800 and 5600 of the Print Cycle. The second SRClock pulse will transfer the CMY bits for the next point 1, 801, 1601, 2401, 3201, 4001, 4801 and 5601 of the Print Cycle. After 800 pulses SRClock, the PTransfer pulse can be provided.
Es importante observar que las salidas CMY impar y par, aunque imprimidas durante el mismo Ciclo de Impresión, no aparecen por la misma línea física de salida. La separación física de boquillas impar y par dentro de la cabeza de impresión, así como la separación entre boquillas de diferentes colores, asegura que producirán puntos sobre líneas diferentes de la página. La diferencia relativa debe ser tenida en cuenta cuando se cargan los datos en la cabeza de impresión. La diferencia real en líneas depende de las características del mecanismo de chorro de tinta que se utilice en la cabeza de impresión. Las diferencias pueden estar definidas por variables D _{1} y D_{2}, donde D_{1} es la distancia entre boquillas de diferentes colores, y D_{2} es la distancia entre boquillas del mismo color. La Tabla 3 muestra los puntos transferidos al segmento n de una cabeza de impresión sobre los primeros 4 pulsos.It is important to note that odd CMY outputs and even, although printed during the same Print Cycle, no they appear on the same physical output line. Physical separation of odd and even nozzles inside the printhead, as well as the separation between nozzles of different colors, ensures that will produce points on different lines of the page. The relative difference must be taken into account when loading printhead data The real difference in lines depends on the characteristics of the inkjet mechanism that be used on the printhead. The differences may be defined by variables D1 and D2, where D1 is the distance between nozzles of different colors, and D_ {2} is the distance between nozzles of the same color. Table 3 shows the points transferred to segment n of a printhead over The first 4 pulses.
Y así sucesivamente para la totalidad de los 800 pulsos.And so on for the entire 800 pulses
Los datos pueden ser registrados en la cabeza de impresión a una velocidad máxima de 20 MHz, con lo que se cargará la totalidad de los datos para la siguiente línea en 40 \mus.The data can be registered in the head of printing at a maximum speed of 20 MHz, which will be loaded all data for the next line at 40 \ mus.
Una cabeza de impresión 2 de 10 cm (4 pulgadas) contiene 19.200 boquillas 22. Dispararlas todas a la vez podría consumir demasiada potencia y ser problemático en términos de relleno de tinta y de interferencia de boquilla. En consecuencia, se definen dos modos de disparo: un modo de impresión de baja velocidad y un modo de impresión de alta velocidad:A print head 2 of 10 cm (4 inches) contains 19,200 nozzles 22. Shoot them all at once could consume too much power and be problematic in terms of ink refill and nozzle interference. In consecuense, two shooting modes are defined: a low print mode Speed and high speed printing mode:
- \bullet?
- En el modo de impresión de baja velocidad, existen 200 fases, disparando cada fase 96 boquillas. Esto equivale a 12 boquillas por segmento, o 3 por grupo de disparo. In print mode Low speed, there are 200 phases, firing each phase 96 nozzles This equates to 12 nozzles per segment, or 3 per group. Shooting
- \bullet?
- En el modo de impresión de alta velocidad, existen 100 fases, disparando cada fase 192 boquillas. Esto equivale a 24 boquillas por segmento, o 6 grupos de disparo. In print mode High speed, there are 100 phases, firing each phase 192 nozzles This equates to 24 nozzles per segment, or 6 groups of Shooting.
Las boquillas que van a ser disparadas durante un pulso dado, se determinan mediante:The nozzles that are going to be fired during A given pulse is determined by:
- \bullet?
- 3 bits ChromapodSelect (seleccionan 1 de 5 croma-pods 24 a partir de un grupo de disparo 27) 3 bit ChromapodSelect (select 1 of 5 chroma-pods 24 from a trigger group 27)
- \bullet?
- 4 bits NozzleSelect (seleccionan 1 de 10 boquillas 22 a partir de un pod 23) 4-bit NozzleSelect (select 1 of 10 nozzles 22 from a pod 23)
- \bullet?
- 2 bits de líneas PodgroupEnable (seleccionan 0, 1 ó 2 grupo-pods 25 para el disparo). 2 line bits PodgroupEnable (select 0, 1 or 2 group-pods 25 for shooting).
Cuando se establece una de las líneas PodgroupEnable, solamente las 4 boquillas especificadas del Podgroup se dispararán según se determina mediante ChromapodSelect y NozzleSelect. Cuando se determinan ambas líneas PodgroupEnable, ambos grupos pod dispararán sus boquillas. Para el modo de baja velocidad, se requieren dos pulsos de disparo, con PodgroupEnable = 10 y 01, respectivamente. Para el modo de alta velocidad, solamente se requiere un pulso de disparo, con PodgroupEnable = 11.When one of the lines is established PodgroupEnable, only the 4 specified nozzles of the Podgroup will fire as determined by ChromapodSelect and NozzleSelect When both PodgroupEnable lines are determined, Both groups can fire their nozzles. For low mode speed, two firing pulses are required, with PodgroupEnable = 10 and 01, respectively. For high speed mode, only a trigger pulse is required, with PodgroupEnable = 11.
La duración del pulso de disparo viene dada por las líneas AEnable y BEnable, las cuales disparan las boquillas PhasegroupA y PhasegroupB de todos los grupos de disparo, respectivamente. La duración típica de un pulso de disparo es de 1,3 - 1,8 \mus respectivamente. La duración de un pulso depende de la viscosidad de la tinta (dependiente de la temperatura y de las características de la tinta), y de la cantidad de potencia disponible respecto a la cabeza de impresión. Véase la Sección 2.3 para los detalles sobre los informes desde la cabeza de impresión a efectos de compensación del cambio de temperatura.The duration of the trigger pulse is given by AEnable and BEnable lines, which trigger the nozzles PhasegroupA and PhasegroupB of all trigger groups, respectively. The typical duration of a trigger pulse is 1.3-1.8, respectively. The duration of a pulse depends on ink viscosity (dependent on temperature and characteristics of the ink), and the amount of power available with respect to the printhead. See Section 2.3 for details about reports from the printhead to temperature change compensation effects.
Las líneas AEnable y BEnable son líneas separadas con el fin de que los pulsos de disparo puedan solaparse. De ese modo, las 200 fases de un Ciclo de Impresión de baja velocidad consisten en 100 fases A y 100 fases B, que proporcionan de forma efectiva 100 conjuntos de Fase A y de Fase B. De igual modo, las 100 fases de un ciclo de impresión de alta velocidad consisten en 50 fases A y 50 fases B, que proporcionan de manera efectiva 50 fases de la fase A y de la fase B.The AEnable and BEnable lines are lines separated so that the trigger pulses can overlap. Thus, the 200 phases of a Low Print Cycle Speed consist of 100 phases A and 100 phases B, which provide effectively 100 sets of Phase A and Phase B. Likewise mode, the 100 phases of a high speed printing cycle They consist of 50 phases A and 50 phases B, which provide effective 50 phases of phase A and phase B.
La Figura 12 muestra las líneas AEnable y
BEnable durante un Ciclo de Impresión típico. En una impresión de
alta velocidad, existen 50 ciclos de 2 \mus, mientras que en una
impresión de baja velocidad existen 100 ciclos de
2
\mus.Figure 12 shows the AEnable and BEnable lines during a typical Print Cycle. In a high speed print, there are 50 cycles of 2 \ mus, while in a low speed print there are 100 cycles of
2 \ mus.
Para el modo de impresión de alta velocidad, el orden de disparo es:For high speed printing mode, the firing order is:
- \bullet?
- ChromapodSelect 0, NozzleSelect 0, PodgroupEnable 11 (Fases A y B) ChromapodSelect 0, NozzleSelect 0, PodgroupEnable 11 (Phases A and B)
- \bullet?
- ChromapodSelect 1, NozzleSelect 0, PodgroupEnable 11 (Fases A y B) ChromapodSelect 1, NozzleSelect 0, PodgroupEnable 11 (Phases A and B)
- \bullet?
- ChromapodSelect 2, NozzleSelect 0, PodgroupEnable 11 (Fases A y B) ChromapodSelect 2, NozzleSelect 0, PodgroupEnable 11 (Phases A and B)
- \bullet?
- ChromapodSelect 3, NozzleSelect 0, PodgroupEnable 11 (Fases A y B) ChromapodSelect 3, NozzleSelect 0, PodgroupEnable 11 (Phases A and B)
- \bullet?
- ChromapodSelect 4, NozzleSelect 0 PodgroupEnable 11 (Fases A y B) ChromapodSelect 4, NozzleSelect 0 PodgroupEnable 11 (Phases A and B)
- \bullet?
- ChromapodSelect 0, NozzleSelect 1, PodgroupEnable 11 (Fases A y B) ChromapodSelect 0, NozzleSelect 1, PodgroupEnable 11 (Phases A and B)
- \bullet?
- ...... ......
- \bullet?
- ChromapodSelect 3, NozzleSelect 9, PodgroupEnable 11 (Fases A y B) ChromapodSelect 3, NozzleSelect 9, PodgroupEnable 11 (Phases A and B)
- \bullet?
- ChromapodSelect 4, NozzleSelect 9, PodgroupEnable 11 (Fases A y B) ChromapodSelect 4, NozzleSelect 9, PodgroupEnable 11 (Phases A and B)
Para el modo de impresión de baja velocidad, la orden de disparo es similar. Para cada fase del modo de alta velocidad, en la que PodgroupEnable era 11, se sustituyen dos fases de PodgroupEnable = 01 y 10, como sigue:For low speed printing mode, the firing order is similar. For each phase of the high mode speed, in which PodgroupEnable was 11, two phases are replaced of PodgroupEnable = 01 and 10, as follows:
- \bullet?
- ChromapodSelect 0, NozzleSelect 0, PodgroupEnable 01 (Fases A y B) ChromapodSelect 0, NozzleSelect 0, PodgroupEnable 01 (Phases A and B)
- \bullet?
- ChromapodSelect 0, NozzleSelect 0, PodgroupEnable 10 (Fases A y B) ChromapodSelect 0, NozzleSelect 0, PodgroupEnable 10 (Phases A and B)
- \bullet?
- ChromapodSelect 1, NozzleSelect 0, PodgroupEnable 01 (Fases A y B) ChromapodSelect 1, NozzleSelect 0, PodgroupEnable 01 (Phases A and B)
- \bullet?
- ChromapodSelect 1, NozzleSelect 0, PodgroupEnable 10 (Fases A y B) ChromapodSelect 1, NozzleSelect 0, PodgroupEnable 10 (Phases A and B)
- \bullet?
- ...... ......
- \bullet?
- ChromapodSelect 3, NozzleSelect 9, PodgroupEnable 01 (Fases A y B) ChromapodSelect 3, NozzleSelect 9, PodgroupEnable 01 (Phases A and B)
- \bullet?
- ChromapodSelect 3, NozzleSelect 9, PodgroupEnable 10 (Fases A y B) ChromapodSelect 3, NozzleSelect 9, PodgroupEnable 10 (Phases A and B)
- \bullet?
- ChromapodSelect 4, NozzleSelect 9, PodgroupEnable 01 (Fases A y B) ChromapodSelect 4, NozzleSelect 9, PodgroupEnable 01 (Phases A and B)
- \bullet?
- ChromapodSelect 4, NozzleSelect 9, PodgroupEnable 10 (Fases A y B) ChromapodSelect 4, NozzleSelect 9, PodgroupEnable 10 (Phases A and B)
Cuando se dispara una boquilla 22, tarda aproximadamente 100 \mus en rellenarse. La boquilla 22 no puede ser disparada antes de que haya transcurrido este tiempo de rellenado. Esto limita la velocidad de impresión más rápida a 100 \mus por línea. En el modo de impresión de alta velocidad, el tiempo para imprimir una línea es de 100 \mus, de modo que el tiempo entre el disparo de una boquilla de una línea a la siguiente se equipara al tiempo de rellenado, lo que hace que el modo de impresión de alta velocidad sea aceptable. El modo de impresión de baja velocidad es más lento que éste, de modo que también es aceptable.When a nozzle 22 is fired, it takes about 100 \ mus to be filled. The nozzle 22 cannot be fired before this time has elapsed filled in. This limits the fastest print speed to 100 \ mus per line. In high speed printing mode, the time to print a line is 100 \ mus, so that the time between firing a nozzle from one line to the next is matched at the time of refilling, which makes the mode of High speed printing be acceptable. The printing mode of Low speed is slower than this, so it is also acceptable.
El disparo de una boquilla 22 causa también perturbaciones acústicas durante un tiempo limitado en el interior de un depósito común de tinta del pod 23 de la boquilla. Las perturbaciones pueden interferir con el disparo de otra boquilla dentro del mismo pod 23. En consecuencia, el disparo de boquillas dentro de un pod deberá separarse una de otra tanto como sea posible. Por lo tanto, se disparan tres boquillas de un croma-pod 24 (una boquilla 22 por color) y a continuación se mueven hacia el siguiente croma-pod 24 dentro del grupo-pod 25.The shot of a nozzle 22 also causes acoustic disturbances for a limited time indoors of a common ink reservoir of pod 23 of the nozzle. The disturbances may interfere with the firing of another nozzle inside the same pod 23. Consequently, the shot of nozzles within a pod should be separated from each other as much as possible. Therefore, three nozzles of a chroma-pod 24 (one nozzle 22 per color) and a then move to the next chroma-pod 24 within the pod-group 25.
- \bullet?
- En el modo de impresión de baja velocidad, los grupo-pods se disparan por separado. Así, los 5 croma-pods interiores a ambos grupo-pods deben dispararse todos antes de que el primer croma-pod se dispare de nuevo, totalizando ciclos de 10 x 2 \mus. En consecuencia, cada pod 23 se dispara una vez por cada 20 \mus. In print mode low speed, pod-groups are fired by separated. Thus, the 5 chroma-pods inside both group-pods must be shot all before the first chroma-pod is triggered again, totaling 10 x 2 \ mus cycles. Consequently, each pod 23 fires a once for every 20 \ mus.
- \bullet?
- En el modo de impresión de alta velocidad, los grupo-pods 25 se disparan conjuntamente. De ese modo, los 5 croma-pods 24 interiores a un grupo-pod simple deben dispararse todos antes de que el primer croma-pod se dispare de nuevo, totalizando ciclos de 5 x 2 \mus. En consecuencia, cada pod 23 se dispara una vez cada 10 \mus. In print mode high-speed, group-pods 25 soar jointly. That way, the 5 chroma-pods 24 interiors to a simple group-pod must be shot all before the first chroma-pod is triggered again, totaling cycles of 5 x 2 \ mus. Consequently, each pod 23 trips once every 10 \ mus.
Como el canal de tinta tiene 300 \mum de largo y la velocidad del sonido en la tinta es de alrededor de 1500 m/s, la frecuencia de resonancia del canal de tinta es de 2,5 MHz, con lo que el modo de baja velocidad permite 50 ciclos de resonancia para amortiguar el pulso acústico, y el modo de alta velocidad permite 25 ciclos de resonancia. Así, cualquier interferencia acústica es mínima en ambos casos.Since the ink channel is 300 µm long and the speed of sound in the ink is around 1500 m / s, The resonance frequency of the ink channel is 2.5 MHz, so that the low speed mode allows 50 resonance cycles to Dampen the acoustic pulse, and the high speed mode allows 25 resonance cycles Thus, any acoustic interference is minimum in both cases.
Como ejemplo, considérese el tiempo de impresión de una foto de 10 x 15 cm (4'' x 6'') en 2 segundos, como se requiere por parte de la Printcam. Con el fin de imprimir una foto en 2 segundos, la cabeza de impresión de 10 cm (4 pulgadas) debe imprimir 9.600 líneas (6 x 1.600). El redondeo a 10.000 líneas en 2 segundos produce un tiempo de línea de 200 \mus. Un Ciclo de Impresión simple y un Ciclo de Carga único deben acabar, ambos, dentro de este tiempo. Adicionalmente, el proceso físico externo a la cabeza de impresión debe mover el papel una cantidad apropiada.As an example, consider printing time of a 10 x 15 cm (4 '' x 6 '') photo in 2 seconds, as required by the Printcam. In order to print a photo in 2 seconds, the 10 cm (4 inch) printhead should print 9,600 lines (6 x 1,600). Rounding to 10,000 lines in 2 seconds produces a line time of 200 \ mus. A cycle of Simple printing and a single Load Cycle must end both within this time Additionally, the physical process external to the print head should move the paper a quantity appropriate.
Desde el punto de vista de la impresión, el modo de impresión de baja velocidad permite que una cabeza de impresión de 10 cm (4 pulgadas) imprima una línea completa en 200 \mus. En el modo de impresión de baja velocidad, se disparan 96 boquillas 22 por pulso de disparo, habilitando con ello la impresión de la línea completa dentro del tiempo especificado.From the point of view of printing, the mode Low speed printing allows a print head 10 cm (4 inches) print a complete line at 200 \ mus. In Low speed printing mode, 96 nozzles 22 are fired per trigger pulse, thereby enabling line printing Complete within the specified time.
Los 800 pulsos SRClock para la cabeza de impresión 2 (cada pulso de reloj transfiere 24 bits), deben tener también lugar dentro del tiempo de línea de 200 \mus. La longitud de un pulso SRClock no puede exceder de 200 \mus/800 = 250 ns, lo que indica que la cabeza de impresión debe estar controlada a 4 MHz. Adicionalmente, el tiempo medio para calcular cada valor de bit (para cada una de las 19.200 boquillas) no debe exceder de 200 \mus/19.200 = 10 ns. Esto requiere un generador de pulso que corra a una de las siguientes velocidades:The 800 SRClock pulses for the head of print 2 (each clock pulse transfers 24 bits), must have also place within the 200 \ mus line time. The length of a pulse SRClock cannot exceed 200 \ mus / 800 = 250 ns, what which indicates that the printhead must be controlled at 4 MHz. Additionally, the average time to calculate each bit value (for each of the 19,200 nozzles) must not exceed 200 \ mus / 19.200 = 10 ns. This requires a pulse generator that runs at one of the following speeds:
- \bullet?
- 100 MHz generando 1 bit (punto) por ciclo 100 MHz generating 1 bit (point) per cycle
- \bullet?
- 50 MHz generando 2 bits (puntos) por ciclo 50 MHz generating 2 bits (points) per cycle
- \bullet?
- 25 MHz generando 4 bits (puntos) por ciclo. 25 MHz generating 4 bits (points) per cycle.
\vskip1.000000\baselineskip\ vskip1.000000 \ baselineskip
La cabeza de impresión 2 produce varias líneas de información (acumulada desde los 8 segmentos). Las líneas de información se utilizan para ajustar el tiempo de los pulsos de disparo. Aunque cada segmento 21 produce la misma información, los informes procedentes de todos los segmentos comparten las mismas líneas tri-estado de bus. En consecuencia, solamente un segmento 21 puede proporcionar información en cada momento.Printhead 2 produces several lines of information (accumulated from the 8 segments). Lines information are used to adjust the pulse time of Shooting. Although each segment 21 produces the same information, the reports from all segments share the same tri-state bus lines. In consecuense, only a segment 21 can provide information in each moment.
Un pulso por la línea SenseSegSelect compuesto con datos sobre Cyan, habilita las líneas de detección para ese segmento. Las líneas de detección de información procederán del segmento seleccionado hasta el siguiente pulso SenseSegSelect. Las líneas de detección de información son como sigue:A pulse through the composite SenseSegSelect line with data on Cyan, enable detection lines for that segment. The information detection lines will come from segment selected until the next SenseSegSelect pulse. The Information detection lines are as follows:
- \bullet?
- Tsense informa al controlador de cómo está de caliente la cabeza de impresión. Esto permite al controlador ajustar el tiempo de disparo de los pulsos, puesto que la temperatura afecta a la viscosidad de la tinta. Tsense informs the controller how hot the print head is. This allows the controller to adjust the pulse trigger time, since the temperature affects the viscosity of the ink.
- \bullet?
- Vsense informa al controlador sobre cuánta tensión se encuentra disponible para el actuador. Esto permite al controlador compensar una batería de respuesta plana o una fuente de alta tensión ajustando la anchura de pulso. Vsense informs the controller on how much voltage is available for the actuator This allows the controller to compensate for a battery of flat response or a high voltage source by adjusting the width Pulse
- \bullet?
- Rsense informa al controlador sobre la resistividad (ohmios por cuadro) del calentador del actuador. Esto permite al controlador ajustar los anchos de pulso para mantener una energía constante con independencia de la resistividad del calentador. Rsense informs the heater resistivity controller (ohms per frame) Actuator This allows the controller to adjust the widths of pulse to maintain a constant energy regardless of the heater resistivity.
- \bullet?
- Wsense informa al controlador de la anchura de la parte crítica del calentador, la cual puede variar hasta un \pm5% debido a las variaciones litográficas y de grabado químico. Esto permite al controlador ajustar la anchura de pulso de forma apropiada. Wsense informs the width controller of the critical part of the heater, the which may vary up to ± 5% due to variations Lithographic and chemical engraving. This allows the controller adjust the pulse width appropriately.
El proceso de impresión tiene una fuerte tendencia a mantenerse a la temperatura de equilibrio. Para asegurar que la primera sección de la fotografía impresa tiene un tamaño de punto uniforme, la temperatura de equilibrio debe alcanzar, con anterioridad a la impresión, a todos los puntos. Esto se consigue por medio de un ciclo de precalentamiento.The printing process has a strong tendency to remain at equilibrium temperature. To ensure that the first section of the printed photograph has a size of uniform point, the equilibrium temperature must reach, with before printing, to all points. This is achieved by means of a preheating cycle.
El ciclo de Precalentamiento incluye un Ciclo de
Carga para todas las boquillas con 1s (es decir, disponiendo todas
las boquillas para disparar), y un número de pulsos cortos de
disparo para cada boquilla. La duración del pulso debe ser
insuficiente para disparar las gotas, pero suficiente para calentar
la tinta. En total, se requieren aproximadamente 200 pulsos para
cada boquilla, realizando ciclos mediante la misma secuencia que un
Ciclo de Impresión
estándar.The Preheat cycle includes a Load Cycle for all nozzles with 1s (i.e., disposing all nozzles for firing), and a number of short firing pulses for each nozzle. The pulse duration must be insufficient to trigger the drops, but sufficient to heat the ink. In total, approximately 200 pulses are required for each nozzle, performing cycles using the same sequence as a Print Cycle
standard.
La información durante el modo de Precalentamiento, viene proporcionada por Tsense, y continúa hasta que se alcanza una temperatura de equilibrio (alrededor de 30ºC por encima del ambiente). La duración del modo Precalentamiento es de alrededor de 50 milisegundos, y depende de la composición de la tinta.The information during the mode of Preheating, is provided by Tsense, and continues until that an equilibrium temperature is reached (around 30ºC per above the environment). The duration of the Preheat mode is around 50 milliseconds, and it depends on the composition of the ink.
El precalentamiento se realiza antes de cada trabajo de impresión. Éste no afecta al rendimiento de la impresora, puesto que se lleva a cabo mientras se están transfiriendo los datos a la impresora.Preheating is done before each print job This does not affect the performance of the printer, since it is being carried out while the data to the printer.
Con el fin de reducir las posibilidades de que las boquillas resulten obstruidas, se puede realizar un ciclo de limpieza con anterioridad a cada trabajo de impresión. Cada boquilla se dispara un número de veces hacia una esponja absorbente.In order to reduce the chances of the nozzles are clogged, a cycle of cleaning before each print job. Each nozzle it fires a number of times towards an absorbent sponge.
El ciclo de limpieza incluye un sólo Ciclo de Carga para todas las boquillas con 1s (es decir, disponiendo todas las boquillas para disparar), y un número de pulsos de disparo para cada boquilla. Las boquillas son limpiadas por medio de la misma secuencia de disparo de boquilla como en un Ciclo de Impresión estándar. El número de veces que cada boquilla se dispara, depende de la composición de la tinta y del tiempo que la impresora ha estado en vacío, de modo que al igual que con el precalentamiento, el ciclo de limpieza no tiene ningún efecto sobre el comportamiento de la impresora.The cleaning cycle includes a single cycle of Load for all nozzles with 1s (that is, arranging all the nozzles for firing), and a number of firing pulses for each nozzle The nozzles are cleaned by means of it nozzle firing sequence as in a Print Cycle standard. The number of times each nozzle fires depends on of the ink composition and the time the printer has idle state, so as with preheating, the cleaning cycle has no effect on the behavior of the printer.
\vskip1.000000\baselineskip\ vskip1.000000 \ baselineskip
\vskip1.000000\baselineskip\ vskip1.000000 \ baselineskip
\vskip1.000000\baselineskip\ vskip1.000000 \ baselineskip
(Tabla pasa a página siguiente)(Table goes to page next)
\newpage\ newpage
Una cabeza de impresión 2 de 10 cm (4 pulgadas) tiene las siguientes conexiones:A print head 2 of 10 cm (4 inches) It has the following connections:
\vskip1.000000\baselineskip\ vskip1.000000 \ baselineskip
\newpage\ newpage
En el interior de la cabeza de impresión de 10 cm (4 pulgadas), cada segmento tiene las conexiones que siguen con los adaptadores de enlace:Inside the printhead of 10 cm (4 inches), each segment has the connections that follow with link adapters:
\vskip1.000000\baselineskip\ vskip1.000000 \ baselineskip
\vskip1.000000\baselineskip\ vskip1.000000 \ baselineskip
Las secciones anteriores tienen relación solamente con el compendio de la funcionalidad PCP que es de nivel más alto que la del mapeo de imágenes CFA respecto a una diversidad de formatos de salida de impresión. De hecho, existe un número de etapas involucradas en la toma de una imagen desde el sensor de imagen, y en la producción de una impresión de salida de alta calidad. Nosotros hemos fraccionado el proceso de alto nivel en dos cadenas de procesamiento de imagen, cada una de ellas con un número de etapas:The previous sections are related only with the compendium of PCP functionality that is level higher than that of CFA image mapping with respect to a diversity of print output formats. In fact, there is a number of stages involved in taking an image from the sensor image, and in the production of a high output print quality. We have divided the high level process into two image processing chains, each with a number of stages:
- \bullet?
- Cadena de Captura de Imagen Capture Chain Image
- \bullet?
- Cadena de Impresión. Chain of Print.
La Cadena de Captura de Imagen se refiere a la captura de la imagen desde el Sensor de Imagen, y a su almacenamiento localmente en el interior de la Printcam. La Cadena de Impresión está relacionada con la toma de la imagen almacenada para la impresión de la misma. Estas dos cadenas mapean sobre la funcionalidad de la Printcam básica como sigue:The Image Capture Chain refers to the image capture from the Image Sensor, and to your storage locally inside the Printcam. Chain Print is related to taking the stored image for printing it. These two chains map over the Basic Printcam functionality as follows:
- \bullet?
- Take&Print = Cadena de Captura de Imagen seguida de la Cadena de Impresión Take & Print = Chain Image Capture followed by the Print Chain
- \bullet?
- Reprint = Cadena de Impresión. Reprint = Chain of Print.
Por ejemplo, un usuario puede imprimir una imagen Thumbnail (Take&Print), y si está contento con los resultados, imprimir varias copias estándar (Reprint).For example, a user can print a Thumbnail image (Take & Print), and if you are happy with the results, print several standard copies (Reprint).
El capítulo describe una implementación de la cadena de procesamiento de imagen independiente que cumple con los requisitos de calidad de la Printcam. En esta fase, no estamos considerando exactamente cómo se realiza el procesamiento en términos de hardware sino, por el contrario, qué se debe hacer. Estas funciones deben ser mapeadas sobre varias unidades dentro del PCP.The chapter describes an implementation of the independent image processing chain that meets the Printcam quality requirements. In this phase, we are not considering exactly how the processing is done in hardware terms but, on the contrary, what should be done. These functions must be mapped onto several units within the PCP
Con independencia de la implementación del PCP, existe un número de limitaciones:Regardless of the PCP implementation, There are a number of limitations:
- \bullet?
- La imagen de entrada es una imagen RGB contone basada en CFA. The input image is an RGB image contone based on CFA.
- \bullet?
- La imagen de salida es para una cabeza de impresión Memjet (puntos bi-nivel a 1.600 dpi) en un espacio de color CMY, y siempre tiene la misma anchura de salida (10 cm de ancho (4 pulgadas)). The output image is for a Memjet printhead (bi-level points at 1,600 dpi) in a CMY color space, and always has the same output width (10 cm wide (4 inches)).
El PCP 3 soporta una diversidad de formatos de salida de impresión, como se muestra en la Tabla 6. En todos los casos, la anchura de la imagen es de 10 cm (4 pulgadas) (equiparable a la anchura de la cabeza de impresión). Solamente varía la longitud de la impresión.PCP 3 supports a variety of formats of print output, as shown in Table 6. In all cases, the width of the image is 10 cm (4 inches) (comparable to the width of the printhead). Only the print length
El sensor de imagen no proporciona información de la orientación. Todas las imágenes de entrada son capturadas a la misma resolución (1.500 x 1.000), y pueden necesitar ser giradas 90 grados con anterioridad a ser imprimidas. La Figura 13 ilustra el mapeo entre la imagen CFA capturada y los diversos formatos de impresión soportados. Obsérvese que aunque la imagen se muestra girada 90 grados en sentido anti-horario, la imagen puede ser girada a favor o en contra de las agujas del reloj.The image sensor does not provide information of the orientation. All input images are captured at the same resolution (1,500 x 1,000), and may need to be rotated 90 degrees before being printed. Figure 13 illustrates the mapping between the captured CFA image and the various formats of printing supported. Note that although the image is shown rotated 90 degrees counterclockwise, the image It can be turned for or against the hands of the clock.
La Cadena de Captura de Imagen es responsable de la toma de una imagen desde el Sensor de Imagen, y de almacenarla localmente en el interior de la Printcam. La Cadena de Captura de Imagen incluye un número de procesos que solamente necesitan ser llevados a cabo durante la captura de la imagen. La Cadena de Captura de Imagen ha sido ilustrada en la Figura 14, con secciones consiguientes que detallan los sub-componentes.The Image Capture Chain is responsible for taking an image from the Image Sensor, and storing it locally inside the Printcam. The Capture Chain of Image includes a number of processes that only need to be carried out during image capture. The chain of Image Capture has been illustrated in Figure 14, with sections consequents detailing the sub-components.
La imagen de entrada proviene de un sensor de imagen 1. Aunque se encuentran disponibles una diversidad de sensores, solamente hemos considerado el conjunto de filtro de color (CFA) Bayer. El CFA Bayer posee un número de atributos que aquí se definen.The input image comes from a sensor image 1. Although a variety of sensors, we have only considered the color filter set (CFA) Bayer. The CFA Bayer has a number of attributes that are here define.
La imagen capturada por el sensor 1 CMOS (a través de una lente de captación), se supone que ha sido suficientemente filtrada con el fin de eliminar cualquier partícula de solapamiento. El propio sensor dispone de una relación de aspecto de 3:2, con una resolución de 1.500 x 1.000 muestras. La disposición más probable de pixel es el conjunto de filtro de color (CFA) Bayer, con cada bloque de 2 x 2 píxeles dispuesto en un mosaico 2G según se muestra en la Figura 15.The image captured by the 1 CMOS sensor (a through a pickup lens), it’s supposed to have been sufficiently filtered in order to remove any particles of overlap. The sensor itself has a ratio of 3: 2 aspect, with a resolution of 1,500 x 1,000 samples. The Pixel's most likely arrangement is the color filter set (CFA) Bayer, with each 2 x 2 pixel block arranged in a 2G mosaic as shown in Figure 15.
Cada muestra contone de R, G o B (correspondiente a rojo, verde o azul, respectivamente), es de 10 bits. Obsérvese que cada píxel del mosaico contiene información acerca de solamente uno de los R, G o B. Las estimaciones sobre la falta de información de color deben hacerse antes de que la imagen pueda ser imprimida.Each sample contains R, G or B (corresponding to red, green or blue, respectively), is 10 bits Note that each pixel of the mosaic contains information about only one of the R, G or B. Estimates on the Lack of color information must be done before the image It can be printed.
Se considera que el CFA realiza una supresión adecuada de ruido de configuración fija (FPN).The CFA is considered to make a deletion adequate fixed configuration noise (FPN).
- \bullet?
- El sensor 40 de imagen es improbable que tenga una respuesta completamente lineal. Por lo tanto, las muestras RGB de 10 bits procedentes del CFA deben ser consideradas como no lineales. Estas muestras no lineales son traducidas a muestras lineales de 8 bits por medio de tablas de búsqueda (una tabla por color). The image sensor 40 It is unlikely to have a completely linear response. For the Therefore, 10-bit RGB samples from the CFA must be considered as nonlinear. These nonlinear samples are translated into 8-bit linear samples by means of tables of search (one table per color).
Los píxeles procedentes de las líneas CFA 0, 2, 4 etc, se indexan en las tablas de R y G, mientras que los píxeles procedentes de las líneas CFA 1, 3, 5, etc, se indexan en las tablas de G y B. Esto es completamente independiente de la orientación de la cámara. El proceso se muestra en la Figura 16. La cantidad total de memoria requerida para cada tabla de búsqueda es de 2^{10} x 8 bits. Las 3 tablas de búsqueda 45 requieren por lo tanto un total de 3 Kbytes (3 x 2^{10} bytes).Pixels from CFA lines 0, 2, 4 etc, are indexed in the R and G tables, while the pixels from lines CFA 1, 3, 5, etc., are indexed in the tables of G and B. This is completely independent of the orientation of the camera. The process is shown in Figure 16. The total amount of memory required for each search table is 2 10 x 8 bits The 3 search tables 45 therefore require a total 3 Kbytes (3 x 2 10 bytes).
Los píxeles obtenidos desde el CFA tienen sus planos de color intercalados debido a la naturaleza del mosaico Bayer de píxeles. Con esto queremos decir que sobre líneas horizontales uniformes, un pixel rojo va seguido de un pixel verde y a continuación por otro pixel rojo (los diferentes planos de color están intercalados cada uno con los otros). En algunos sistemas de procesamiento de imágenes, un formato intercalado resulta altamente útil. Sin embargo, en el sistema de procesamiento Printcam, los algoritmos son más eficaces si se trabaja sobre RGB planar.The pixels obtained from the CFA have their color planes interspersed due to the nature of the mosaic Bayer of pixels. By this we mean that on lines horizontal uniform, a red pixel is followed by a green pixel and then for another red pixel (the different color planes are interspersed with each other). In some systems of image processing, an interleaved format is highly Useful. However, in the Printcam processing system, the Algorithms are more effective if you work on planar RGB.
Una imagen planarizada consiste en una que ha
sido separada en sus colores integrantes. En el caso de la imagen
RGB de CFA, existen 3 imágenes separadas: una imagen que contiene
solamente los píxeles rojos, una imagen que contiene solamente los
píxeles azules, y una imagen que contiene solamente los píxeles
verdes. Obsérvese que cada plano representa solamente los píxeles
de ese color que fueron realmente muestreados. No se realiza
ningún remuestreo durante el proceso de planarización. Como
resultado, los planos R, G y B son planos no registrados cada uno
con los otros, y el plano G es dos veces más grande que cualquiera
de los planos R o B. El proceso se muestra en la
Figura
17.A planarized image consists of one that has been separated into its integral colors. In the case of the CFA RGB image, there are 3 separate images: an image that contains only the red pixels, an image that contains only the blue pixels, and an image that contains only the green pixels. Note that each plane represents only the pixels of that color that were actually sampled. No resampling is done during the planning process. As a result, the R, G and B planes are planes not registered with each other, and the G plane is twice as large as any of the R or B planes. The process is shown in the
Figure 17
El proceso real es muy simple; dependiendo del color de los píxeles leídos, los píxeles de salida son enviados a la siguiente posición en la imagen del plano de color apropiado (por lo tanto, con la misma orientación que el CFA).The actual process is very simple; depending on color of the read pixels, the output pixels are sent to the next position in the image of the appropriate color plane (for therefore, with the same orientation as the CFA).
Las imágenes planares roja 45 y azul 47, son
exactamente la cuarta parte del tamaño de la imagen CFA original.
Éstas son exactamente de la mitad de resolución en cada dimensión.
Las imágenes roja y azul son por lo tanto de
750 x 500
píxeles cada una, con una imagen roja implícitamente desviada de la
imagen azul por un píxel en el espacio CFA (1.500 x 1.000) en ambas
dimensiones x e y.The red 45 and blue 47 planar images are exactly a quarter of the size of the original CFA image. These are exactly half the resolution in each dimension. The red and blue images are therefore of
750 x 500 pixels each, with a red image implicitly offset from the blue image by a pixel in the CFA space (1,500 x 1,000) in both x and y dimensions.
Aunque la imagen 45 planar verde es de la mitad de tamaño que la imagen CFA original, no se establece directamente como los planos rojo o azul. La razón se debe a la extensión en forma de tablero de ajedrez del verde. En una línea, el verde es cada píxel impar, y en la siguiente línea, el verde es cada píxel par. Estas líneas alternas del plano verde representan píxeles impares y pares dentro de la imagen CFA. De ese modo, la imagen planar verde es de 750 x 1.000 píxeles. Ésta tiene ramificaciones para el proceso de remuestreo (véase "Remuestreo en 64" más adelante).Although the green 45 planar image is half in size than the original CFA image, it is not set directly like the red or blue planes. The reason is due to the extension in Green chess board shape. In a line, green is each odd pixel, and on the next line, green is each pixel pair. These alternating lines of the green plane represent pixels Odd and even within the CFA image. That way, the image Green planar is 750 x 1,000 pixels. This one has ramifications for the resampling process (see "Resampling at 64" more ahead).
Cada plano de color de la imagen RGB linealizada se escribe en la memoria para su almacenamiento temporal. La memoria deberá ser Flash 11 de modo que la imagen se mantiene después de que se ha interrumpido la alimentación.Each color plane of the linearized RGB image It is written in memory for temporary storage. The memory should be Flash 11 so that the image is maintained after the power has been interrupted.
La cantidad total de memoria requerida para la imagen RGB lineal planarizada, es de 1.500.000 bytes (aproximadamente 1,5 MB), organizada como sigue:The total amount of memory required for the Planarized linear RGB image, is 1,500,000 bytes (approximately 1.5 MB), organized as follows:
- \bullet?
- R: 750 x 500 = 375.000 bytes R: 750 x 500 = 375,000 bytes
- \bullet?
- B: 750 x 500 = 375.000 bytes B: 750 x 500 = 375,000 bytes
- \bullet?
- G: 750 x 1.000 = 750.000 bytes. G: 750 x 1,000 = 750,000 bytes
La Cadena de Impresión se refiere a tomar una imagen ya existente desde la memoria 42, e imprimirla en una impresora 2 Memjet. Una imagen se imprime típicamente tan pronto como ha sido capturada, aunque puede ser reimprimida (es decir, sin recaptura).The Printing Chain refers to taking a image already existing from memory 42, and print it on a 2 Memjet printer. An image is typically printed as soon as as it has been captured, although it can be reprinted (that is, without recapture).
Existe un número de etapas que son requeridas en la cadena de procesamiento de imagen con el fin de producir impresiones de alta calidad a partir de imágenes capturadas CFA. La Figura 18 ilustra la Cadena de Impresión. La cadena se divide en 3 soluciones de trabajo. La primera es el espacio 50 de captura de imagen original (el mismo espacio que el CFA), la segunda es la resolución 51 intermedia (líneas de 1.280 píxeles de tono continuo), y la resolución final es la resolución 52 de impresora, con líneas de 6.400 puntos bi-nivel.There are a number of stages that are required in the image processing chain in order to produce High quality prints from captured CFA images. The Figure 18 illustrates the Print Chain. The chain is divided into 3 work solutions The first is the 50 capture space of original image (the same space as the CFA), the second is the intermediate resolution 51 (1,280 pixel tone lines continuous), and the final resolution is printer resolution 52, with lines of 6,400 bi-level points.
La imagen de entrada es una imagen RGB 42 linealizada almacenada en forma planar, según se almacena mediante la Cadena de Captura que se ha descrito en la Sección 3.1.4.The input image is an RGB 42 image linearized stored in planar form, as stored by the Capture Chain that has been described in Section 3.1.4.
Un número de estadísticas relacionadas con la imagen completa necesitan ser acumuladas con anterioridad a que se puedan realizar procesos tales como el balance del blanco y la expansión de rango. Estas estadísticas necesitan solamente ser acumuladas una vez para todas las impresiones de una imagen 42 capturada particular, y pueden ser acumuladas por separado las imágenes planares del rojo, del verde y del azul.A number of statistics related to the full image need to be accumulated before it can perform processes such as white balance and range expansion These statistics need only be accumulated once for all prints of an image 42 captured particular, and can be accumulated separately planar images of red, green and blue.
La primera etapa consiste en construir un histograma para cada valor de 8 bits del plano de color. Cada imagen CFA de 1.500 x 1.000 contiene un total de:The first stage is to build a histogram for each 8-bit value of the color plane. Each picture 1,500 x 1,000 CFA contains a total of:
- \bullet?
- 375.000 píxeles rojo (contador mínimo requerido de 19 bits) 375,000 pixels red (minimum required 19-bit counter)
- \bullet?
- 375.000 píxeles azul (contador mínimo requerido de 19 bits) 375,000 blue pixels (minimum required 19-bit counter)
- \bullet?
- 750.000 píxeles verde (contador mínimo requerido de 20 bits). 750,000 pixels green (minimum required 20 bit counter).
Por lo tanto, se requiere una simple tabla de 256 x 20 bits para mantener el histograma.Therefore, a simple table of 256 x 20 bits to maintain the histogram.
El procedimiento de construcción del histograma es directo, según se ilustra mediante el siguiente seudo-código:The histogram construction procedure It is direct, as illustrated by the following pseudo-code:
\vskip1.000000\baselineskip\ vskip1.000000 \ baselineskip
Una vez que el histograma ha sido construido para el plano de color, puede ser utilizado para determinar un umbral alto y uno bajo. Estos umbrales pueden ser utilizados para automatizar después el balance del blanco y la expansión de rango durante el proceso de impresión.Once the histogram has been constructed for the color plane, it can be used to determine a high threshold and low threshold. These thresholds can be used to automate afterwards white balance and range expansion during the printing process.
Basando los umbrales en el número de píxeles del histograma, consideramos que el n% de píxeles más oscuros son expansibles y por lo tanto iguales. De la misma manera, consideramos que el n% de píxeles más brillantes son expansibles y por lo tanto iguales. Se espera que el valor exacto de "n" sea de alrededor del 5%, pero dependerá de las características de respuesta de CFA.Basing the thresholds on the number of pixels in the histogram, we consider that the n% of darker pixels are expandable and therefore equal. In the same way, we consider that the n% of brightest pixels are expandable and therefore same. The exact value of "n" is expected to be around 5%, but will depend on the response characteristics of CFA
El proceso de determinación del n% de valores más oscuros es directo. Éste incluye un escalonamiento a través del histograma del plano de color a partir del conteo para 0 ascendente (es decir, 0, 1, 2, 3, etc) hasta que se alcance el n% total o nos hayamos desplazado más de una cantidad establecida desde 0. El más alto de estos valores se considera que es el umbral bajo del plano de color. Aunque exista alguna diferencia entre estos valores más oscuros, la diferencia puede ser considerada desechable a los efectos de expansión de rango y balanceo de color.The process of determining n% of values Darker is direct. This includes a stepping through the histogram of the color plane from counting to 0 ascending (that is, 0, 1, 2, 3, etc.) until the total n% is reached or we we have displaced more than a set amount from 0. The most high of these values is considered to be the low threshold of the plane color. Although there is some difference between these values more dark, the difference can be considered disposable to range expansion and color balancing effects.
El proceso de determinación del n% de valores más brillantes, es similar. Éste incluye un escalonamiento a través del histograma del plano de color a partir del conteo para 255 descendente (es decir, 255, 254, 253, etc) hasta que se alcance el n% total o hasta que nos hayamos desplazado más de una cantidad establecida desde 255. El más bajo de estos valores se considera el umbral alto del plano de color. Aunque exista alguna diferencia entre estos valores más brillantes, la diferencia puede ser descartada a los efectos de expansión de rango y de balanceo de color.The process of determining n% of values Brighter, it's similar. This one includes a stepping through of the color plane histogram from 255 count descending (i.e. 255, 254, 253, etc.) until the n% total or until we have moved more than one amount established since 255. The lowest of these values is considered the high threshold of the color plane. Although there is some difference Among these brightest values, the difference can be discarded for the purposes of range expansion and balancing of color.
La razón para la detención después de una distancia establecida desde 0 o desde 255, consiste en compensar dos tipos de imágenes:The reason for the arrest after a distance established from 0 or 255, consists of compensating Two types of images:
- \bullet?
- donde el rango dinámico original sea bajo, o where the dynamic range original be low, or
- \bullet?
- donde no exista blanco o negro en la imagen. where there is no white or Black in the picture.
En estos dos casos, no deseamos considerar que la totalidad del n% de valores superiores e inferiores sea desechable puesto que tenemos un rango bajo por el que empezar. Podemos establecer de manera segura que los umbrales alto 73 y bajo 72 están fuera del rango de valores de píxeles realmente muestreados. La distancia exacta dependerá del CFA, pero consistirá en dos constantes.In these two cases, we do not want to consider that the entire n% of upper and lower values be disposable since we have a low range to start from. We can safely establish that thresholds high 73 and low 72 are outside the range of pixel values really sampled The exact distance will depend on the CFA, but it will consist in two constants.
Un rango de color de muestra para un plano de color ha sido mostrado en la Figura 19. Obsérvese que aunque es posible el rango completo de 0-255 para píxeles del plano de color de imagen, esta imagen particular tiene un rango más pequeño. Obsérvese también que el mismo n% de rango 70, 71 de histograma está representado por un rango más grande en el extremo 70 bajo que en el extremo 71 alto. Esto se debe a que el histograma debe contener más píxeles con valores altos más cercanos entre sí que si se compara con el extremo bajo.A sample color range for a plane of color has been shown in Figure 19. Note that although it is possible the full range of 0-255 for pixels of the image color plane, this particular image has a more range small. Note also that the same n% of rank 70, 71 of histogram is represented by a larger range at the end 70 low than at the end 71 high. This is because the histogram must contain more pixels with higher values closer to each other That if compared to the low end.
Los umbrales alto 73 y bajo 72 deben ser determinados para cada plano de color individualmente. Esta información podrá ser usada para calcular la escala de rango y los factores de desviación que han de ser usados en el proceso posterior de balance del blanco y de expansión de rango.The high 73 and low 72 thresholds must be determined for each color plane individually. This information may be used to calculate the range scale and deviation factors to be used in the process subsequent white balance and range expansion.
El siguiente seudo-código ilustra el proceso de determinación de cualquiera de los dos umbrales (para encontrar el umbral bajo, StartPosition = 255, y Delta = 1. Para encontrar el umbral alto, StartPosition = 0 y Delta = -1). El seudo-código supone que Umbral es un valor de 8 bits que se reinicia cíclicamente durante la adiciónThe following pseudo code illustrates the process of determining either thresholds (to find the low threshold, StartPosition = 255, and Delta = 1. To find the high threshold, StartPosition = 0 and Delta = -1). The pseudo-code assumes that Threshold is a value 8-bit that cyclically restarts during the addition
\vskip1.000000\baselineskip\ vskip1.000000 \ baselineskip
La rotación de la imagen 61 es una etapa opcional en ambos procesos de Captura e Impresión y de Reimpresión.Image rotation 61 is a stage optional in both Capture and Print processes and Reprint.
Diferentes formatos de impresión requieren que la imagen sea girada ya sea 0 o ya sea 90 grados con relación a la orientación CAF, según se muestra en la Figura 13. La cantidad de rotación depende del formato de impresión actualmente seleccionado. Aunque la dirección de rotación no es importante (puede ser a favor de las agujas del reloj o en contra de las agujas del reloj puesto que la nueva orientación solamente se destina a facilitar la anchura de la cabeza de impresión), la dirección de rotación afectará al registro relativo de los 3 planos de color. La Tabla 7 resume la rotación requerida para cada formato de impresión a partir de la orientación CFA original.Different print formats require that the image is rotated either 0 or 90 degrees in relation to the CAF orientation, as shown in Figure 13. The amount of Rotation depends on the currently selected print format. Although the direction of rotation is not important (it may be in favor clockwise or counterclockwise that the new orientation is only intended to facilitate the print head width), the direction of rotation it will affect the relative registration of the 3 color planes. Table 7 summarizes the rotation required for each print format from of the original CFA orientation.
\vskip1.000000\baselineskip\ vskip1.000000 \ baselineskip
Puesto que estamos girando solamente 90 grados, no se pierde ninguna información durante el proceso de rotación. Para una rotación de 0, la imagen puede ser leída por filas, y para una rotación de 90, la imagen puede ser leída columna por columna. El registro de 3 planos de color debe tener en cuenta la dirección de rotación.Since we are rotating only 90 degrees, No information is lost during the rotation process. For a rotation of 0, the image can be read in rows, and for a rotation of 90, the image can be read column by column. Registration of 3 color planes must take into account the address of rotation
Una fotografía se toma pocas veces en condiciones ideales de iluminación. Incluso la noción de "condiciones de iluminación perfectas" está cargada de subjetividad, tanto en términos del fotógrafo como del objeto. Sin embargo, en todos los casos, el objeto de la fotografía se ilumina con luz, ya sea desde una fuente de luz (tal como el sol o una iluminación interior), o ya sea con su propia luz (tal como un rótulo de neón).A photograph is rarely taken in ideal lighting conditions. Even the notion of "perfect lighting conditions" is loaded with subjectivity, both in terms of the photographer and the object. Without However, in all cases, the object of the photograph is illuminated with light, either from a light source (such as the sun or a interior lighting), or with its own light (such as a neon sign).
En la mayor parte de las condiciones de iluminación, puede parecer al fotógrafo como que es luz "blanca", lo que habitualmente está lejos de ser luz blanca. La iluminación interior, por ejemplo, típicamente tiene un tono amarillo, y este tono amarillo dará lugar a una fotografía incorrecta. Para la mayor parte de la gente, el tono amarillo sobre la fotografía incorrecta final es erróneo. Aunque puede complementar las condiciones de visión en el momento en que se tomó la fotografía, no iguala el color percibido del objeto. Resulta por tanto crucial realizar un balance del blanco sobre una fotografía con anterioridad a imprimirla.In most of the conditions of lighting, it may seem to the photographer as light "white", which is usually far from being white light. Interior lighting, for example, typically has a tone yellow, and this yellow shade will lead to a photograph wrong. For most people, the yellow tone on The final wrong picture is wrong. Although it can complement the vision conditions at the time the photography, does not match the perceived color of the object. It turns out by both crucial to perform a white balance on a photograph before printing.
De la misma manera, una imagen puede ser percibida como de una calidad más alta cuando el rango dinámico de los colores se expande para equipararse con el rango completo en cada plano de color. Esto es particularmente útil de realizar antes de que una imagen sea remuestreada para una resolución más alta. Si el rango dinámico es más alto, se pueden utilizar los valores intermedios en las posiciones interpoladas de los píxeles, evitando una imagen escalonada o fraccionada. La expansión de rango está diseñada para proporcionar el rango de valor 256 completo a aquellos valores realmente muestreados. En el mejor caso, el valor más bajo se mapea a 0, y el valor más alto se mapea a 255. Todos los valores intermedios son mapeados a valores proporcionalmente intermedios entre 0 y 255.In the same way, an image can be perceived as of a higher quality when the dynamic range of the colors expands to match the full range in Each color plane. This is particularly useful to perform before that an image be resampled for a higher resolution. Yes dynamic range is higher, values can be used intermediate interpolated pixel positions, avoiding a staggered or fractional image. The range expansion is designed to provide the full 256 value range to those values really sampled. In the best case, the value lowest is mapped to 0, and the highest value is mapped to 255. All intermediate values are mapped to values proportionally intermediate between 0 and 255.
Matemáticamente, la operación realizada consiste en una traslación de Umbral Bajo 72 hasta 0, seguido de un escalado. La fórmula se muestra a continuación:Mathematically, the operation performed consists of in a translation of Low Threshold 72 to 0, followed by a scaled up The formula is shown below:
\vskip1.000000\baselineskip\ vskip1.000000 \ baselineskip
RangeScaleFactor deberá estar limitado a un valor máximo para reducir el riesgo de expansión del rango demasiado lejos. Para los detalles sobre el cálculo de LowThreshold 72, véase la Sección 3.2.2 "Estadísticas Acumuladas". Estos valores (LowThreshold y RangeScaleFactor) serán diferentes para cada plano de color, y solamente necesitan ser calculados una vez por imagen.RangeScaleFactor must be limited to one maximum value to reduce the risk of range expansion too far. For details on the calculation of LowThreshold 72, see Section 3.2.2 "Accumulated Statistics". This values (LowThreshold and RangeScaleFactor) will be different for each plane of color, and only need to be calculated once per image.
Ambas tareas pueden ser emprendidas simultáneamente, como se muestra en la Figura 20.Both tasks can be undertaken simultaneously, as shown in Figure 20.
Puesto que esta etapa incluye un proceso
escalar, podemos dejar alguna componente fraccional en el valor
mapeado, por ejemplo el valor 12 puede mapearse hasta 5,25. En vez
de desechar la componente fraccional, pasamos a un resultado de 10
bits (8 bits de número entero, 2 de fracción) en la siguiente fase
de la cadena de procesamiento de imagen. No podemos proporcionar
una memoria para almacenar la imagen completa a más de 8 bits, pero
podemos hacer un buen uso de la resolución más alta en la fase de
remuestreo. Por consiguiente, la imagen de entrada es de 8 bits, y
la imagen de salida tiene 10 bits por componente de color. El
proceso lógico se muestra en la
Figura 21.Since this stage includes a scalar process, we can leave some fractional component in the mapped value, for example the value 12 can be mapped up to 5.25. Instead of discarding the fractional component, we turn to a 10-bit result (8 bits of integer, 2 of fraction) in the next phase of the image processing chain. We cannot provide a memory to store the entire image at more than 8 bits, but we can make good use of the highest resolution in the resampling phase. Therefore, the input image is 8 bits, and the output image has 10 bits per color component. The logical process is shown in the
Figure 21
Es importante tener un límite inferior de 0 durante la substracción de modo que todos los valores por debajo de LowThreshold 72 serán mapeados hasta 0. De igual modo, la multiplicación debe tener un techo de 255 para la porción entera del resultado, de modo que los valores más altos que HighThreshold 73 serán mapeados hasta 255.It is important to have a lower limit of 0 during subtraction so that all values below LowThreshold 72 will be mapped up to 0. Similarly, the multiplication must have a ceiling of 255 for the entire portion of the result, so that values higher than HighThreshold 73 will be mapped up to 255.
El CFA proporciona solamente un componente de color simple por coordenada (x, y) de píxel. Para producir la imagen impresa final, necesitamos tener los otros valores de componente de color en cada píxel. Finalmente, necesitamos los componentes de color cyan, magenta y amarillo en cada píxel, pero para llegar al cyan, magenta y amarillo necesitamos el rojo, el verde y el azul. Con nuestro un-color-por-píxel, tenemos el componente rojo para una posición particular, pero necesitamos estimar el azul y el verde. O podemos tener el verde y necesitamos estimar el rojo y el azul.The CFA provides only one component of Simple color per pixel coordinate (x, y). To produce the final printed image, we need to have the other values of color component in each pixel. Finally, we need the cyan, magenta and yellow components in each pixel, but to get to cyan, magenta and yellow we need red, the Green and blue With our one-color-per-pixel, we have the red component for a particular position, but We need to estimate blue and green. Or we can have the green and We need to estimate red and blue.
Incluso aunque tuviéramos los componentes de color rojo, verde y azul completos para cada píxel de resolución CFA, la imagen de resolución CFA no es la resolución final de salida. Adicionalmente, aunque el formato de salida varíe, la anchura física de la imagen impresa es constante (10 cm (4 pulgadas) a 1.600 dpi). La anchura constante de la cabeza de impresión es por lo tanto de 6.400 puntos.Even if we had the components of full red, green and blue color for each pixel resolution CFA, the CFA resolution image is not the final resolution of exit. Additionally, although the output format varies, the Physical width of the printed image is constant (10 cm (4 inches) at 1,600 dpi). The constant width of the printhead is per 6,400 points.
Existen dos casos extremos que se deben considerar:There are two extreme cases that must be to consider:
- --
- Interpolar a resolución CFA (interpolación mínima), y después realizar intensificación, conversión de color. Finalmente, extrapolación hasta la resolución de impresión. Esto tiene la ventaja de una función de intensificación constante y de una conversión de color a baja resolución. Sin embargo, tiene la desventaja de requerir que se almacenen más de 8 bits por componente de color para que los valores de imagen interpolada o intermedia sean interpolados incorrectamente durante la extrapolación final hasta la resolución de impresión. También tiene la desventaja de requerir una unidad de extrapolación que sea capaz de producir 1 valor impresión-res interpolado por ciclo. Interpolate at CFA resolution (minimum interpolation), and then perform intensification, color conversion. Finally, extrapolation to print resolution. This has the advantage of a constant intensification function and a Low resolution color conversion. However, it has the disadvantage of requiring that more than 8 bits be stored per component color so that interpolated or intermediate image values are interpolated incorrectly during final extrapolation Up to print resolution. It also has the disadvantage of require an extrapolation unit that is capable of producing 1 print-res value interpolated by cycle.
- --
- Interpolar a resolución de impresión, realizando a continuación intensificación y conversión de color. Esto tiene la ventaja de un sólo proceso de remuestreo, proporcionando una máxima precisión. Sin embargo, tiene la desventaja de requerir una unidad de extrapolación que sea capaz de producir 1 valor bi-cúbico interpolado por ciclo, así como también realizar intensificación y conversión de color, todo ello sobre un promedio de un sólo ciclo. La función de intensificación debe ser suficientemente grande para aplicar la función CAFA-res a la imagen de alta-res. Peor aún, para la intensificación, deben mantenerse al menos 3 ventanas sobre la imagen de salida (conteniendo cada una de ellas un número de 6.400 líneas de entrada) puesto que en un ciclo único de impresión, los puntos cyan, magenta y amarillo representan puntos de 6 líneas diferentes. Interpolate at print resolution, performing at then intensification and color conversion. This has the advantage of a single resampling process, providing maximum precision. However, it has the disadvantage of requiring a unit extrapolation that is capable of producing 1 value bi-cubic interpolated per cycle, as well as perform intensification and color conversion, all on a single cycle average. The intensification function must be large enough to apply the function CAFA-res to the high-res image. Worse, for intensification, at least 3 must be maintained windows on the output image (containing each of them a number of 6,400 input lines) since in a single cycle printing, cyan, magenta and yellow points represent points of 6 different lines.
En ninguno de estos casos se ha tenido en cuenta el hecho de que la salida final de impresión es bi-nivel en vez de contone. En consecuencia, podemos imprimir una imprimación media con relación al remuestreo, y conseguir lo mejor de ambos métodos.In none of these cases has it been taken into account the fact that the final print output is bi-level instead of contone. In consecuense, we can print an average primer in relation to resampling, and Get the best of both methods.
La solución consiste en interpolar a una resolución intermedia. La intensificación y la conversión de color ocurren a la resolución intermedia, seguido de una extrapolación hasta la resolución de impresión. La resolución intermedia debe ser suficientemente baja como para permitir las ventajas de la contemporización de la función de intensificación de pequeño tamaño y de la conversión de color. Pero la resolución intermedia debe ser suficientemente alta para que no exista pérdida de extrapolación de calidad a la imagen bi-nivel de resolución de impresión. El efecto debe ser la misma que si existiera una interpolación simple a la resolución de impresión (en vez de dos).The solution is to interpolate to a intermediate resolution Intensification and color conversion occur at intermediate resolution, followed by extrapolation Up to print resolution. The intermediate resolution must be low enough to allow the advantages of Contemplation of the small size intensification function and of the color conversion. But the intermediate resolution must be high enough that there is no loss of extrapolation of Image quality bi-level resolution of Print. The effect must be the same as if there was a simple interpolation to print resolution (instead of two).
Puesto que la imagen de impresión se imprime como 1.600 puntos dpi bi-nivel vibrados, ésta puede ser representada mediante una imagen contone de 320 dpi. En consecuencia, una resolución intermedia de 1.280 píxeles contone proporciona una pérdida no percibida de calidad sobre 6.400 puntos bi-nivel. El último incremento de 1.280 a 6.400 es por lo tanto una relación de extrapolación exacta de 1:5.Since the print image is printed as 1,600 bi-level dpi points vibrated, it can be represented by a 320 dpi contone image. In consequently, an intermediate resolution of 1,280 pixels contone provides an unperceived loss of quality over 6,400 points bi-level The last increase from 1,280 to 6,400 is therefore an exact extrapolation ratio of 1: 5.
Para decidir cómo realizar mejor el remuestreo, es mejor considerar cada plano de color en relación con la resolución CFA. Esto se ha representado en la Figura 22 para un rotacional de 0.To decide how to perform resampling better, it is better to consider each color plane in relation to the CFA resolution. This has been depicted in Figure 22 for a rotational of 0.
\newpage\ newpage
Mirando a los planos rojo 45 y azul 47, la versión completa de resolución CFA del plano de color puede ser creada mediante un escalado del número de píxeles muestreados en cada dimensión por 2. Los píxeles intermedios pueden ser generados mediante un filtro de reconstrucción (tal como un filtro Lanczos o Exponencial). Solamente se requiere una dimensión en la función, puesto que la función es simétrica. Puesto que el rojo y el azul tienen diferentes desviaciones en términos de su representación inicial dentro del espacio de muestra CFA, las posiciones iniciales en la función serán diferentes.Looking at the red 45 and blue 47 planes, the Full version of CFA resolution of the color plane can be created by scaling the number of pixels sampled in each dimension by 2. Intermediate pixels can be generated using a reconstruction filter (such as a Lanczos filter or Exponential). Only one dimension is required in the function, since the function is symmetric. Since the red and the blue they have different deviations in terms of their representation initial within the CFA sample space, the initial positions in the function they will be different.
El mapeo de las coordenadas de salida (en el espacio de 1.280) respecto a las coordenadas de entrada, depende de la rotación actual de la imagen, debido al registro de los cambios de los píxeles con la rotación (ya sea 0 o ya sea 90 grados dependiendo del formato de impresión). Para el rojo y el azul, se mantiene entonces la siguiente relación:The mapping of the output coordinates (in the space of 1,280) with respect to the input coordinates, depends on the current rotation of the image, due to the change log of pixels with rotation (either 0 or 90 degrees depending on the print format). For red and blue, it It then maintains the following relationship:
donde:where:
x, y = coordenadas en el espacio res mediox, y = coordinates in the middle res space
x', y' = coordenadas en el espacio de entradax ', y' = coordinates in the space of entry
mps = píxeles de res medio en la muestra espacialmps = mean beef pixels in the sample space
k_{1, \ 2} = {0, -0,5} dependiendo de la rotación.k_ {1, \ 2} = {0, -0.5} depending on the rotation.
Esto significa que, dada una posición de partida en el espacio de entrada, podemos generar una nueva línea de píxeles de resolución media añadiendo un \Deltax y un \Deltay de 1/mps y 0, respectivamente, 1.279 veces. La parte fraccional de x e y en el espacio de entrada, puede ser utilizada directamente para la búsqueda de los coeficientes de función para la construcción y el remuestreo de la imagen.This means that, given a starting position in the input space, we can generate a new line of medium resolution pixels by adding a \ Deltax and a \ Deltay of 1 / mps and 0, respectively, 1,279 times. The fractional part of x e and in the input space, it can be used directly for the search for function coefficients for construction and resampling of the image.
Obsérvese que k_{1} y k_{2} son 0 y -0,5, dependiendo de si la imagen ha sido girada en 0 o en 90 grados. La Tabla 8 muestra los valores para k_{1} y k_{2} en los planos del rojo y del azul, suponiendo que la rotación de 90 grados sea anti-horaria.Note that k_ {1} and k_ {2} are 0 and -0.5, depending on whether the image has been rotated by 0 or 90 degrees. The Table 8 shows the values for k_ {1} and k_ {2} in the planes of the red and blue, assuming that the 90 degree rotation is anti-time
\vskip1.000000\baselineskip\ vskip1.000000 \ baselineskip
El número de píxeles de resolución media por muestra, mps, depende del formato de impresión. Dado que la imagen RGB planarizada tiene las siguientes resoluciones planares roja y azul cuando no está girada: R: 750 x 500, B: 750 x 500, los factores escalares para los diferentes formatos de salida (Figura 13) se muestran en la Tabla 9. Obsérvese que con el formato de imagen Passport, la imagen completa se remuestrea en ¼ del espacio de salida.The average resolution pixel number per Sample, mps, depends on the print format. Since the image Planarized RGB has the following red and red planar resolutions blue when not rotated: R: 750 x 500, B: 750 x 500, the scalar factors for the different output formats (Figure 13) are shown in Table 9. Note that with the format of Passport image, the entire image is resampled in ¼ of the space output
\vskip1.000000\baselineskip\ vskip1.000000 \ baselineskip
Según puede apreciarse en la Tabla 9, las imágenes roja y azul están aumentadas para todos los formatos de imagen. En consecuencia, no existirán partículas de solapamiento introducidas por el proceso de remuestreo.As can be seen in Table 9, the red and blue images are enlarged for all formats of image. Consequently, there will be no overlapping particles introduced by the resampling process.
El plano 46 verde no puede ser aumentado simplemente de la misma manera que el rojo o el azul, puesto que cada línea del plano verde representa diferentes píxeles, ya sea píxeles impares o ya sean pares sobre líneas alternas. Aunque en términos de número de píxeles sea representativo decir que la imagen verde es de 750 x 1.000, se podría decir igualmente que la imagen es de 1.500 x 500. Esta confusión se debe a la naturaleza de tablero de ajedrez de los píxeles verdes, donde la distancia entre píxeles no es igual en las dimensiones x e y, y no mapean bien respecto a la reconstrucción o remuestreo de imagen. El número de métodos de interpolación utilizados por otros sistemas para la reconstrucción del plano verde, constituye un testimonio respecto a todo esto (desde la replicación próxima más cercana a la interpolación lineal hasta la interpolación bi-lineal y la reconstrucción heurística).Green plane 46 cannot be increased simply in the same way as red or blue, since Each green plane line represents different pixels, either odd or even pixels on alternate lines. Although pixel number terms be representative say the image green is 750 x 1,000, you could also say that the image it is 1,500 x 500. This confusion is due to the nature of chess board of the green pixels, where the distance between pixels is not equal in dimensions x and y, and they do not map well regarding reconstruction or resampling of image. The number of interpolation methods used by other systems for the reconstruction of the green plane, constitutes a testimony regarding all this (from the next replication closest to the linear interpolation until interpolation bi-linear and heuristic reconstruction).
El mapeo de coordenadas de salida (en el espacio de 1.280) respecto a las coordenadas de entrada, es conceptualmente el mismo para el verde que para el rojo y el azul. El mapeo depende de la rotación actual de la imagen., debido al registro de los cambios de los píxeles con la rotación (ya sea 0 o ya sea 90 grados dependiendo del formato de impresión). Para el plano verde se mantiene la siguiente relación:Output coordinate mapping (in space of 1,280) with respect to the input coordinates, is conceptually the same for green as for red and blue. The mapping depends of the current rotation of the image., due to the registration of Pixel changes with rotation (either 0 or 90 degrees depending on the print format). For the green plane it maintains the following relationship:
\vskip1.000000\baselineskip\ vskip1.000000 \ baselineskip
donde:where:
x, y = coordenadas en el espacio res mediox, y = coordinates in the middle res space
x', y' = coordenadas en el espacio de entradax ', y' = coordinates in the space of entry
mps = píxeles de res medio en la muestra espacialmps = mean beef pixels in the sample space
k_{1, \ 2} = {0, -0,5} dependiendo de la rotaciónk_ {1, \ 2} = {0, -0.5} depending on the rotation
Al igual que con los planos rojo 45 y azul 47, el número de píxeles de resolución media por muestra, mps, depende del formato de impresión. Dado que la imagen RGB planarizada tiene las siguientes resoluciones planares cuando no está girada: R: 750 x 500; B: 750 x 500, G: 750 x 1.000, los factores de incremento para los diferentes formatos de salida (véase la Figura 13) se muestran en la Tabla 10. Obsérvese que con el formato de imagen Passport, la imagen completa se remuestrea en ¼ del espacio de salida.As with the red 45 and blue 47 planes, the number of average resolution pixels per sample, mps, depends of the print format. Since the planarized RGB image has the following planar resolutions when not rotated: R: 750 x 500; B: 750 x 500, G: 750 x 1,000, the increment factors for the different output formats (see Figure 13) are shown in Table 10. Note that with the Passport image format, the Full image is resampled in ¼ of the output space.
\vskip1.000000\baselineskip\ vskip1.000000 \ baselineskip
Estos factores permiten el mapeo de coordenadas entre el espacio de entrada de resolución CCFA y el espacio de resolución media. Sin embargo, una vez que tenemos una coordenada en el espacio de entrada de resolución CFA, no podemos realizar la reconstrucción y el remuestreo de la imagen sobre las muestras de la misma forma que en el rojo y el azul debido a la naturaleza de tablero de ajedrez del plano 46 verde.These factors allow coordinate mapping between the CCFA resolution input space and the space of medium resolution However, once we have a coordinate in the CFA resolution input space, we cannot perform the reconstruction and resampling of the image on the samples of the same as in red and blue due to the nature of Flat 46 green chess board.
Al contrario, a los efectos de reconstrucción de remuestreo de imagen de alta calidad, podemos considerar que el canal verde es una imagen girada en 45 grados. Cuando observamos los píxeles de esta manera, como muestra la Figura 23, aparecen claramente los métodos de reconstrucción y de remuestreo de imagen de alta calidad.On the contrary, for the purpose of rebuilding High quality image resampling, we can consider the Green channel is an image rotated in 45 degrees. When we observe the pixels in this way, as Figure 23 shows, appear clearly reconstruction and image resampling methods high quality.
Observando la Figura 23, la distancia entre los píxeles muestreados en las direcciones X e Y es ahora la misma. La distancia real entre los píxeles muestreados es \sqrt{2}, según se ilustra en la Figura 24.Looking at Figure 23, the distance between pixels sampled in the X and Y directions is now the same. The actual distance between the sampled pixels is \ sqrt {2}, as illustrated in Figure 24.
La solución para el canal del verde consiste entonces en realizar una reconstrucción y un remuestreo de imagen en el espacio girado. Aunque se utiliza el mismo filtro de reconstrucción que para remuestrear el rojo y el azul, la función deberá ser diferente. Esto se debe a que la relación entre la velocidad de muestreo para el verde y la frecuencia más alta de la señal, es diferente de la relación para los planos rojo y azul. Además, la función deberá ser normalizada de modo que \sqrt{2} de la distancia entre muestras sea igual 1 mientras avanzan las coordenadas de la función (las distancias no normalizadas entre coordenadas de remuestreo deben ser utilizadas aún para determinar si se va a producir solapamiento). Por lo tanto, necesitamos dos transformaciones:The solution for the green channel consists then to perform a reconstruction and image resampling in the turned space. Although the same filter is used reconstruction that to resample red and blue, the function It must be different. This is because the relationship between the sampling rate for green and the highest frequency of the signal, it is different from the relationship for the red and blue planes. In addition, the function should be normalized so that \ sqrt {2} of the distance between samples is equal 1 as the function coordinates (non-normalized distances between resampling coordinates should still be used to determine if overlap will occur). Therefore, we need two transformations:
- --
- La primera consiste en mapear el espacio CFA no girado a un espacio CFA girado. Esto puede realizarse multiplicando cada coordenada por 1/\sqrt{2}, puesto que estamos girando 45 grados (cos45 = sen45 = 1/\sqrt{2}). The first is to map the CFA space not rotated to a rotated CFA space. This can be done by multiplying each coordinate by 1 / \ sqrt {2}, since we are rotating 45 degrees (cos45 = sen45 = 1 / \ sqrt {2}).
- --
- La segunda consiste en aumentar las coordenadas para que se emparejen con la función normalizada, lo que puede realizarse multiplicando cada ordenada por 1/\sqrt{2}.The second is to increase the coordinates so that they match with the normalized function, which can be done by multiplying each sorted by 1 / \ sqrt {2}.
Estas dos transformaciones se combinan para crear un factor de multiplicación de ½. Por consiguiente, según avanzamos por el espacio CFA no girado x por k, incrementamos en k/2 la función x, y reducimos en k/2 la función y. De manera similar, según avanzamos en y por k, incrementamos en k/2 la función x e incrementamos en k/2 la función y.These two transformations combine to create a multiplication factor of ½. Therefore, according to we advance through the CFA space not rotated x by k, we increase in k / 2 the function x, and we reduce the function y by k / 2. Similarly, as we move in y by k, we increase the function x e by k / 2 we increase the function y / k.
Las relaciones entre dos sistemas de coordenadas diferentes pueden ser ilustradas considerando que ocurren según generamos una línea de píxeles de resolución media a partir de una imagen de entrada de espacio CFA. Dada una ordenada de partida en el espacio de entrada CFA, empezamos con x = 0, y avanzamos 1.280 veces por 1/mps, generando un nuevo píxel en cada nueva posición. El movimiento en el espacio CFA no girado en 1/mps, puede ser descompuesto en un movimiento en x y en un movimiento en y en el espacio CFA girado. El proceso se muestra en la Figura 25.The relationships between two coordinate systems different can be illustrated considering that they occur according to we generate a line of pixels of medium resolution from a input image of CFA space. Given an order of departure in the CFA input space, we start with x = 0, and we advance 1,280 times by 1 / mps, generating a new pixel in each new position. The movement in the CFA space not rotated by 1 / mps, can be decomposed in a movement in x and in a movement in y in the CFA space rotated. The process is shown in Figure 25.
Puesto que cos45 = sen45 = 1/\sqrt{2}, el movimiento en el espacio CFA no girado equivale a igual movimiento en x e y en 1/(mps\sqrt{2}). Esta cantidad debe ser aumentada ahora para equipararse con la función normalizada. El incremento equivale a otra multiplicación por 1/\sqrt{2}. Por consiguiente, un movimiento de 1/mps en el espacio CFA no girado equivale a un movimiento de ½ mps en la función x y en la función y. La Tabla 11 expone la relación entre los tres sistemas coordenados para los diferentes formatos:Since cos45 = sen45 = 1 / \ sqrt {2}, the non-rotated movement in CFA space equals equal movement in x and y in 1 / (mps \ sqrt {2}). This amount must be increased. Now to match the normalized function. The increase equivalent to another multiplication by 1 / \ sqrt {2}. Therefore, a movement of 1 / mps in the non-rotated CFA space equals one ½ mps movement in function x and in function y. Table 11 exposes the relationship between the three coordinate systems for the different formats:
\vskip1.000000\baselineskip\ vskip1.000000 \ baselineskip
La Tabla 11 muestra que el movimiento en el espacio de la función es siempre un número menor de 1, pero en el espacio CFA girado, solamente la imagen Passport tiene un \Delta de valor mayor de 1. Como resultado, se producirá solapamiento para el formato de impresión Passport, pero no para ninguno de los otros. Sin embargo, dado que \Delta es casi 1, y que cada una de las 4 imágenes es de un tamaño de sólo ¼, el solapamiento no será apreciable, especialmente debido a que suponemos un filtro pasa bajo ideal en el verde durante la captura de imagen.Table 11 shows that the movement in the function space is always a number less than 1, but in the rotated CFA space, only the Passport image has a \ Delta value greater than 1. As a result, overlap will occur for Passport print format, but not for any of the others. However, since? Is almost 1, and that each of the 4 images is only ¼ size, the overlap will not be appreciable, especially since we assume a low pass filter ideal in green during image capture.
El filtro de reconstrucción exacta que se va a utilizar, dependerá de un número de circunstancias. Existe siempre una relación entre el número de muestras utilizadas entre la construcción de la señal original, el tiempo invertido en la reconstrucción de la señal, y la calidad de la imagen remuestreada. Una relación satisfactoria en este caso es de 5 muestras de píxel desde la dimensión que está siendo reconstruida, centradas alrededor de la posición X estimada, es decir, X-2, X-1, X, X+1, X+2. Debido a la naturaleza de la reconstrucción con 5 puntos de muestra, solamente necesitamos 4 coeficientes para la introducción de la función de convolución.The exact reconstruction filter that is going to use, will depend on a number of circumstances. Always exists a relationship between the number of samples used between the construction of the original signal, the time invested in the signal reconstruction, and resampled image quality. A satisfactory ratio in this case is 5 pixel samples from the dimension being rebuilt, centered around of the estimated X position, that is, X-2, X-1, X, X + 1, X + 2. Due to the nature of the reconstruction with 5 sample points, we only need 4 coefficients for the introduction of the convolution function.
Creamos una tabla de búsqueda de coeficiente de función con n entradas para cada componente de color. Cada entrada tiene 4 coeficientes. Según avanzamos en el espacio de salida, mapeamos los cambios en el espacio de salida respecto a los cambios en el espacio de entrada y el espacio de la función. Los bits más significativos de la componente fraccional en el espacio de la función actual, son utilizados para la indexación en la tabla de coeficientes de función. Si existen 64 entradas en la tabla de función, los 6 primeros bits de función son utilizados para buscar los coeficientes, siendo 64 entradas absolutamente suficientes para el remuestreo en la Printcam.We create a coefficient search table of function with n inputs for each color component. Each entry It has 4 coefficients. As we move into the exit space, we map the changes in the output space with respect to the changes in the input space and function space. The most bits significant of the fractional component in the space of the current function, are used for indexing in the table of function coefficients If there are 64 entries in the table of function, the first 6 bits of function are used to search the coefficients, 64 inputs being absolutely sufficient for resampling on the printcam.
La imagen capturada por el CFA debe ser intensificada con anterioridad a ser imprimida. Idealmente, el filtro de intensificación deberá ser aplicado en el dominio de resolución de CFA. Sin embargo, a la resolución de captura de la imagen, no tenemos información de color completa en cada píxel. Por el contrario, solamente tenemos rojo, azul o verde en una posición de píxel dada. La intensificación de cada plano de color de forma independiente, da lugar a cambios de color. La intensificación deberá ser aplicada, por el contrario, al canal de luminancia de una imagen, de modo que la tonalidad y la saturación de un píxel dado deberán permanecer sin cambio.The image captured by the CFA must be intensified before being printed. Ideally, the intensification filter should be applied in the domain of CFA resolution. However, at the resolution of capture of the image, we don't have full color information in every pixel. By On the contrary, we only have red, blue or green in one position of given pixel. The intensification of each color plane shape independent, results in color changes. Intensification it must be applied, on the contrary, to the luminance channel of an image, so that the hue and saturation of a pixel given must remain unchanged.
La intensificación conlleva entonces la traslación de una imagen RGB a un espacio de color en el que la luminancia esté separada del resto de la información de color 80 (tal como HLS o Lab). El canal 81 de luminancia puede ser entonces intensificado 82 (con la adición en una proporción de la versión filtrada pasa-alto de la luminancia). Finalmente, la imagen completa deberá ser convertida de nuevo en RGB 83 (o en CMY puesto que vamos a imprimirla en CMY). El proceso se muestra en la Figura 26.Intensification then entails translation of an RGB image to a color space in which the luminance is separated from the rest of the color information 80 (such as HLS or Lab). The luminance channel 81 may then be stepped up 82 (with the addition in a proportion of the version filtered high-luminance). Finally, the entire image must be converted back to RGB 83 (or CMY since we are going to print it in CMY). The process is shown in Figure 26.
Sin embargo, podemos evitar muchas de las etapas
de conversión de color si consideramos el efecto de añadir una L
filtrada pasa-alto de nuevo a la imagen; el efecto
es un cambio en la luminancia de la imagen. Un cambio en la
luminancia de un píxel dado puede ser bien aproximado con un cambio
igual en R, G y B lineal. Por lo tanto, generamos simplemente L,
filtro pasa alto L, y aplicamos una proporción del resultado de
igual manera a R,
G y B.However, we can avoid many of the stages of color conversion if we consider the effect of adding a filtered high-pass L back to the image; The effect is a change in the luminance of the image. A change in the luminance of a given pixel can be very approximate with an equal change in linear R, G and B. Therefore, we simply generate L, filter passes high L, and apply a proportion of the result in the same way to R,
G and B.
\newpage\ newpage
Consideremos el espacio de color CIE 1976 L*a*b, donde L es perceptiblemente uniforme. Para hacer la conversión de RGB a L (el canal de luminancia), promediamos el mínimo y el máximo de R, G y B, como sigue:Consider the CIE 1976 L * a * b color space, where L is significantly uniform. To do the conversion of RGB to L (the luminance channel), we average the minimum and maximum of R, G and B, as follows:
L = \frac{M\text{Í}N(R,G,B) + MÁX(R,G,B)}{2}L = \ frac {M \ text {Í} N (R, G, B) + MAX (R, G, B)} {2}
Un filtro pasa alto 84 puede ser aplicado entonces a la información de luminancia. Puesto que estamos filtrando en un espacio med-res de resolución media en vez de un espacio de resolución CFA, el tamaño de la función de intensificación puede ser incrementado o el resultado pasa alto puede ser incrementado apropiadamente. La cantidad exacta de intensificación dependerá del CFA, pero una función 85 de convolución de 3 x 3 será suficiente para producir buenos resultados.A high pass filter 84 can be applied Then to the luminance information. Since we are filtering in a medium resolution medium-sized space instead of a CFA resolution space, the function size of intensification can be increased or the result goes high It can be increased appropriately. The exact amount of intensification will depend on the CFA, but a function 85 of 3 x 3 convolution will be enough to produce good results.
Si tuviéramos que incrementar el tamaño de la función, la Tabla 12 muestra el incremento efectivo requerido para una convolución de 3 x 3 en el espacio CFA según se aplica al espacio de resolución 1.280, utilizando el canal verde como base para el incremento de la función. A partir de esta tabla queda claro que una función dimensionada en 7 x 7, aplicada al espacio de resolución media, será adecuada para toda la intensificación.If we were to increase the size of the function, Table 12 shows the effective increase required for a 3 x 3 convolution in the CFA space as applied to the 1,280 resolution space, using the green channel as the basis for the increase of the function. From this table it is clear that a function sized at 7 x 7, applied to the space of Medium resolution will be suitable for all intensification.
Si se aplicara un filtro 85 de 3 x 3 sobre la imagen med-res, el resultado sería incrementado 86 de acuerdo con el factor de escala utilizado en la operación general de escalado de imagen. Dadas las cantidades de la Tabla 12 (particularmente, el formato de impresión Standard), podemos utilizar un filtro 85 de 3 x 3, y a continuación escalar el resultado. El procedimiento de producción de un píxel L filtrado simple se muestra en la Figura 27.If a 3 x 3 filter 85 is applied on the med-res image, the result would be increased 86 according to the scale factor used in the operation General image scaling. Given the amounts in Table 12 (particularly, the Standard print format), we can use a 3 x 3 filter 85, and then scale the Outcome. The production procedure of a filtered L pixel Simple is shown in Figure 27.
La función real utilizada puede ser una cualquiera de un conjunto de funciones estándar de filtro pasa alto. Un filtro pasa alto básico pero satisfactorio, se muestra en esta implementación de PCP en la Figura 50.The actual function used can be a any of a set of standard filter functions passes high. A basic but satisfactory high pass filter is shown in this PCP implementation in Figure 50.
La siguiente cosa que se ha de hacer, consiste en añadir alguna proporción de los valores de luminancia filtrados pasa alto resultantes al canal de luminancia. La imagen puede ser entonces convertida de nuevo en RGB (o en su caso, en CMY). Sin embargo, un cambio de luminancia puede ser aproximada razonablemente mediante un cambio igual en R, G y B (puesto que el espacio de color es lineal). Por consiguiente, podemos evitar la totalidad de conversiones de color mediante la adición de una cantidad igual de valor de luminancia filtrada pasa alto a los R, G y B. La proporción exacta de la imagen filtrada pasa alto puede ser definida por medio de un factor escalar.The next thing to do, is in adding some proportion of the filtered luminance values It passes high resulting to the luminance channel. The image can be then converted back to RGB (or, if applicable, CMY). Without However, a luminance change can be reasonably approximated. by an equal change in R, G and B (since the space of color is linear). Therefore, we can avoid all of color conversions by adding an equal amount of filtered luminance value passes high at R, G and B. The exact proportion of the filtered image passes high can be defined by means of a scalar factor.
Si L es el píxel de luminancia filtrada pasa alto, y k es el factor escalar constante, podemos definir la transformación de intensificación de R, G y B como sigue:If L is the filtered luminance pixel passes high, and k is the constant scalar factor, we can define the intensification transformation of R, G and B as follows:
Por supuesto, el factor escalar aplicado a L puede ser combinado con el factor escalar del proceso de filtro pasa alto (véase la Sección 3.2.6.2) para obtener un único factor escalar.Of course, the scalar factor applied to L can be combined with the scalar factor of the filter process pass high (see Section 3.2.6.2) to obtain a single factor climb.
Una vez que la intensificación ha sido aplicada al píxel RGB, la imagen puede ser convertida a CMY 83 con el fin de que sea imprimida.Once the intensification has been applied to the RGB pixel, the image can be converted to CMY 83 in order to Let it be printed.
En términos teóricos, la conversión de RGB a CMY consiste simplemente en:In theoretical terms, the conversion of RGB to CMY It simply consists of:
- CC
- = 1 - R= 1 - R
- MM
- = 1 - G= 1 - G
- YY
- = 1 - B= 1 - B
Sin embargo, esta conversión supone que el espacio CMY tiene una respuesta lineal, lo que definitivamente no es cierto en las tintas pigmentadas, y solamente es parcialmente cierto en las tintas a base de tintes. El perfil individual de color de un dispositivo particular (entrada y salida), puede variar considerablemente. Por consiguiente, una conversión precisa, así como para permitir los futuros sensores, tintas e impresoras, se requiere un modelo más preciso para la Printcam.However, this conversion assumes that the CMY space has a linear response, which is definitely not it is true in pigmented inks, and it is only partially true in dye-based inks. The individual profile of color of a particular device (input and output), may vary considerably. Therefore, a precise conversion as well as to allow future sensors, inks and printers, it It requires a more accurate model for the Printcam.
Las transformaciones requeridas se muestran en la Figura 28. Se elige Lab debido a que es perceptivamente uniforme (a diferencia con XYZ). Con relación al mapeo desde la gama de frecuencia de sensor de imagen hasta la gama de frecuencia de impresora, la gama de frecuencia de impresora está típicamente contenida en su totalidad en la gama de frecuencia de sensor.The required transformations are shown in Figure 28. Lab is chosen because it is perceptually uniform (unlike with XYZ). In relation to the mapping from the range of Image sensor frequency up to the frequency range of printer, the printer frequency range is typically contained entirely in the sensor frequency range.
En vez de realizar estas transformaciones exhaustivamente, se pueden obtener resultados excelentes mediante conversión tri-lineal basada en 3 conjuntos de tablas de búsqueda en 3D. Las tablas de búsqueda contienen las transformaciones resultantes para la entrada específica según se ha indexado mediante RGB. Se requieren tres tablas: una tabla 90 que mapea RGB a C, una tabla 91 que mapea RGB a M, y una tabla 92 que mapea RGB a Y. Se puede utilizar interpolación tri-lineal para proporcionar el resultado final para aquellas entradas que no estén incluidas en las tablas. El proceso se muestra en la Figura 29.Instead of performing these transformations comprehensively, excellent results can be obtained through tri-linear conversion based on 3 sets of 3D search tables. Search tables contain the resulting transformations for the specific input as has indexed by RGB. Three tables are required: a table 90 that maps RGB to C, a table 91 that maps RGB to M, and a table 92 that map RGB to Y. Interpolation can be used tri-linear to provide the final result for those entries that are not included in the tables. The process It is shown in Figure 29.
La interpolación tri-lineal requiere leer 8 valores desde la tabla de búsqueda, y llevar a cabo 7 interpolaciones lineales (4 en la primera dimensión, 2 en la segunda, y 1 en la tercera). Se puede usar alta precisión para los valores intermedios, aunque el valor de salida es de sólo 8 bits.Tri-linear interpolation it requires reading 8 values from the search table, and carrying out 7 linear interpolations (4 in the first dimension, 2 in the second, and 1 in the third). High precision can be used for intermediate values, although the output value is only 8 bits
El tamaño de la tabla de búsqueda requerida depende de la linealidad de las transformaciones. El tamaño recomendado para cada tabla en esta aplicación es de 17 x 17 x 17^{1}, (con cada 8 bits de entrada. Un tabla de 17 x 17 x 17 tiene 4.913 bytes (menos de 5 KB).The size of the required search table depends on the linearity of the transformations. The recommended size for each table in this application is 17 x 17 x 17 1 , (with every 8 bits of input. A 17 x 17 x 17 table has 4,913 bytes (less than 5 KB).
Para indexación en las tablas de 17-por-dimensión, los componentes de color de entrada de 8 bits son tratados como números de punto fijo (4:4). Los cuatro bits de la parte entera dan el índice, y los 4 bits de la fracción se utilizan para la interpolación.For indexing in the tables of 17-by-dimension, the components of 8-bit input color are treated as fixed point numbers (4: 4). The four bits of the whole part give the index, and the 4 bits bits of the fraction are used for interpolation.
La imagen CMY de resolución media (1.280 de ancho) debe ser ahora interpolada ascendente hasta la resolución de impresión final (6.400 de ancho).The medium resolution CMY image (1,280 of width) must now be interpolated ascending to resolution final print (6,400 wide).
La relación es exactamente de 1:5 en ambas dimensiones.The ratio is exactly 1: 5 in both dimensions.
Aunque es ciertamente posible interpolar bi-linealmente los 25 valores (1:5 en ambas dimensiones X e Y), los valores resultantes no serán imprimidos contone. Los resultados serán vibrados e imprimidos bi-nivel. Dado que los resultados de 1.600 dpi contone serán transformados en puntos bi-nivel vibrados, la precisión de la interpolación bi-lineal desde 320 dpi a 1.600 dpi no será visible (se eligió la resolución media por este motivo). La replicación de píxel producirá por lo tanto buenos resultados.Although it is certainly possible to interpolate bi-linearly the 25 values (1: 5 in both dimensions X and Y), the resulting values will not be printed contone The results will be vibrated and printed. bi-level Since the results of 1,600 dpi contone will be transformed into bi-level points vibrated, interpolation accuracy bi-linear from 320 dpi to 1,600 dpi will not be visible (The average resolution was chosen for this reason). The replication of Pixel will therefore produce good results.
La replicación de píxel conlleva simplemente tomar un píxel simple, y utilizarlo como el valor para una gran área. En este caso, replicamos un píxel simple hasta 25 píxeles (un bloque de 5 x 5). Si cada píxel fuera contone, el resultado podría aparecer fraccionado, pero debido a que los píxeles están vibrados, el efecto es que los 25 puntos bi-nivel resultantes adoptan el valor contone. El proceso se muestra en la Figura 30.Pixel replication simply entails take a simple pixel, and use it as the value for a large area. In this case, we replicate a simple pixel up to 25 pixels (a 5 x 5 block). If each pixel were contone, the result could appear fractional, but because the pixels are vibrated, the effect is that the resulting 25 bi-level points They adopt the contone value. The process is shown in Figure 30
\newpage\ newpage
La cabeza de impresión 2 es solamente capaz de imprimir puntos de forma bi-nivel. Debemos convertir, por lo tanto, la imagen desde CMY contone a CMY vibrada. Más específicamente, producimos un vibración ordenada de punto disperso utilizando una célula vibratoria estocástica, convirtiendo una imagen CMY contone en una imagen CMY bi-nivel vibrada.Printhead 2 is only capable of Print points bi-level. We must convert, therefore, the image from CMY contone to CMY vibrated. More specifically, we produce an orderly point vibration dispersed using a stochastic vibrating cell, converting a CMY image contone in a bi-level CMY image vibrated
El valor contone de 8 bits de 1.600 dpi, se compara con la posición actual en la célula vibratoria 93. Si el valor contone de 8 bits es mayor que el valor de célula vibratoria, se genera un bit de salida que es un 1. En otro caso, se genera un bit de salida que es un 0. Este bit de salida será enviado eventualmente a la cabeza de impresión y controla una boquilla simple para producir un punto simple C, M o Y. El bit representa si debe dispararse o no una boquilla particular para un color y una posición dados.The 8-bit contone value of 1,600 dpi is compare with the current position in vibrating cell 93. If the 8-bit contone value is greater than the vibrating cell value, an output bit that is a 1 is generated. Otherwise, a output bit that is 0. This output bit will be sent eventually to the printhead and control a nozzle simple to produce a simple point C, M or Y. The bit represents if a particular nozzle for a color and a dice position.
La misma posición en la célula 93 vibratoria puede ser utilizada para C, M e Y. Esto se debe a que la cabeza de impresión 2 real produce los puntos C, M e Y para diferentes líneas en el mismo ciclo de impresión. El escalonamiento de los diferentes puntos coloreados proporciona una acumulación en la célula vibratoria.The same position in vibrating cell 93 It can be used for C, M and Y. This is because the head of 2 real print produces the points C, M and Y for different lines in the same printing cycle. The staggering of the different colored dots provides an accumulation in the cell vibratory
El proceso de semitono puede ser apreciado en la Figura 31.The halftone process can be appreciated in the Figure 31
El tamaño de la célula 93 vibratoria depende de la resolución de los puntos de salida. Puesto que estamos produciendo puntos de 1.600 dpi, el tamaño de célula deberá ser más grande de 32 x 32. Adicionalmente, para permitir que el orden de procesamiento de punto se empareje con los segmentos de la cabeza de impresión, el tamaño de la célula vibratoria debería dividirse idealmente por 800 de manera uniforme (puesto que existen 800 puntos en cada segmento de la cabeza de impresión).The size of the vibrating cell 93 depends on The resolution of the exit points. Since we are producing 1,600 dpi dots, the cell size should be more large 32 x 32. Additionally, to allow the order of point processing matches the head segments of impression, the size of the vibrating cell should be divided ideally for 800 evenly (since there are 800 dots in each segment of the printhead).
Un tamaño de célula vibratoria de 50 x 50 es suficientemente grande como para producir resultados de alta calidad, y se divide uniformemente por 800 (16 veces). Cada entrada de la célula vibratoria es de 8 bits, lo que da un total de 2.500 bytes (aproximadamente, 1,5 KB).A 50 x 50 vibrating cell size is large enough to produce high results quality, and is divided evenly by 800 (16 times). Each entry of the vibrating cell is 8 bits, which gives a total of 2,500 bytes (approximately 1.5 KB).
El proceso final con anterioridad a ser enviado a la impresora, está destinado a que los puntos sean formateados en el orden correcto con anterioridad a ser enviados a la cabeza de impresión. Los puntos deben ser enviados a la cabeza de impresión en el orden correcto: 24 puntos cada vez como se define en la Sección 2.2.1.The final process before being sent to the printer, it is intended for the dots to be formatted in the correct order before being sent to the head of Print. Points must be sent to the printhead in the correct order: 24 points each time as defined in the Section 2.2.1.
Si los puntos pueden ser producidos en el orden correcto para la impresión (es decir, las funciones vibratoria y de interpolación ascendente generan sus datos en el orden correcto), entonces esos valores de punto (cada valor es 1 bit) pueden ser recopilados de forma simple, y enviados en grupos de 24. El proceso se muestra en la Figura 32.If the points can be produced in the order correct for printing (i.e. the vibratory and ascending interpolation generate your data in the correct order), then those point values (each value is 1 bit) can be collected in a simple way, and sent in groups of 24. The process It is shown in Figure 32.
Los grupos de 24 bits pueden ser enviados a continuación hasta la cabeza de impresión 2 por medio de la Interfaz 15 Memjet.24-bit groups can be sent to continued to printhead 2 by means of the 15 Memjet interface.
El PCP 3 incorpora un único núcleo 10 de CPU microcontrolador para sincronizar las cadenas de captura de imagen y de procesamiento de imagen de impresión, y para llevar a cabo las tareas de sistema operativo general de la Printcam, incluyendo la interfaz de usuario. Una amplia variedad de núcleos de CPU son adecuados: pueden consistir en cualquier núcleo procesador con potencia de procesamiento suficiente para realizar las funciones de cálculo y control requeridas de una manera suficientemente rápida como para que se cumplan las expectativas del consumidor.PCP 3 incorporates a single CPU core 10 microcontroller to synchronize image capture chains and print image processing, and to carry out the general operating system tasks of the Printcam, including the user interface. A wide variety of CPU cores are suitable: they can consist of any processor core with sufficient processing power to perform the functions of calculation and control required quickly enough as to meet consumer expectations.
Puesto que todo el procesamiento de imagen se realiza mediante hardware dedicado, la CPU no tiene que procesar píxeles. Como resultado, la CPU puede ser extremadamente simple. Sin embargo, debe ser suficientemente rápida para hacer correr el motor paso a paso durante una impresión (el motor paso a paso requiere un proceso de 5 KHz). Como ejemplo de núcleo adecuado, se mencionada el microcontrolador Philips 8051 que corre a aproximadamente 1 MHz.Since all image processing is performed using dedicated hardware, the CPU does not have to process pixels As a result, the CPU can be extremely simple. Without However, it must be fast enough to run the engine step by step during printing (the stepper motor requires a 5 KHz process). As an example of a suitable core, mentioned the Philips 8051 microcontroller that runs at approximately 1 MHz
No hay necesidad de mantener continuidad establecida de instrucción entre diferentes modelos de Printcam. Los diferentes diseños de chip de PCP pueden ser fabricados por distintos fabricantes, sin que se requiera licenciar o realizar el núcleo de CPU. Esta independencia de dispositivos evita el monopolio del proveedor de chips como ha ocurrido en el mercado del PC con Intel.There is no need to maintain continuity established instruction between different Printcam models. The different PCP chip designs can be manufactured by different manufacturers, without the need to license or perform the CPU core This independence of devices avoids monopoly of the chip provider as has happened in the PC market with Intel
Asociadas al Núcleo de CPU se encuentran una ROM de Programa 13 y una pequeña RAM Programable 14 de Programa.Associated with the CPU Core are a ROM of Program 13 and a small Programmable RAM 14 of Program.
La CPU 10 comunica con las otras unidades dentro del PCP 3 a través de E/S mapeadas de memoria. La dirección particular establece el mapa de rango respecto a las unidades particulares, y dentro de cada rango, respecto a registros particulares dentro de esa unidad particular. Esto incluye las interfaces serie y paralelo.CPU 10 communicates with the other units inside of PCP 3 through memory mapped I / O. The direction particular sets the range map with respect to the units individuals, and within each range, regarding records individuals within that particular unit. This includes the serial and parallel interfaces.
Una pequeña ROM Flash de Programa 13 se ha incorporado en el PCP 3. El tamaño de la ROM depende de la CPU elegida, pero no será mayor de 16-32 KB.A small Program 13 Flash ROM has been Built-in PCP 3. The size of the ROM depends on the CPU chosen, but will not be larger than 16-32 KB.
De igual modo, una pequeña área 14 de RAM programable se encuentra incorporada en el PCP 3. Puesto que el código de programa no tiene que manipular imágenes, no hay necesidad de una gran área de trabajo. El tamaño de la RAM depende de la CPU elegida (por ejemplo, mecanismos de apilamiento, sub-rutina de llamada de convenciones, tamaños de registro, etc), pero no deberá ser mayor de alrededor de 4 KB.Similarly, a small area 14 of RAM programmable is incorporated in PCP 3. Since the Program code does not have to manipulate images, no need of a large work area. The size of the RAM depends on the CPU chosen (for example, stacking mechanisms, convention call sub-routine, sizes of registration, etc.), but should not be greater than about 4 KB.
El Decodificador 16 de Memoria de CPU es un decodificador simple para satisfacer los accesos de datos de la CPU. El Decodificador traslada las direcciones de datos hacia los accesos de registro de PCP internos por el bus interno de baja velocidad, y por lo tanto habilita las E/S mapeadas de memoria de los registros de PCP.The CPU Memory Decoder 16 is a Simple decoder to satisfy the data accesses of the CPU The Decoder moves the data addresses to the Internal PCP registry accesses by the internal low bus speed, and therefore enables memory mapped I / O of PCP records.
Éste es un puerto serie USB estándar, conectado al bus 18 de baja velocidad de chip interno. El puerto serie USB está controlado por la CPU 10. El puerto serie permite la transferencia de imágenes hasta, y desde, la Printcam, y permite la impresión DPOF (Digital Print Order Format, Formato de Orden Digital de Impresión) de fotos transferidas bajo control externo.This is a standard USB serial port, connected to bus 18 of low internal chip speed. USB serial port It is controlled by CPU 10. The serial port allows the image transfer to, and from, the Printcam, and allows the DPOF printing (Digital Print Order Format, Digital Order Format Print) of photos transferred under external control.
Éste consiste en dos puertos serie estándar de baja velocidad, conectados al bus 18 de baja velocidad de chip interno. El protocolo ajustado a CPU entre los dos, se utiliza para autenticar el rollo de impresión [1, 2], y para las siguientes funciones:This consists of two standard serial ports of low speed, connected to bus 18 low speed chip internal. The protocol set to CPU between the two is used to authenticate the print roll [1, 2], and for the following functions:
- --
- Adquirir las características de la tinta Acquire the characteristics of the ink
- --
- Adquirir el volumen de gota recomendado Acquire the recommended drop volume
- --
- Arrastrar la cantidad de papel impreso y requerir nuevo rollo de impresión cuando exista papel insuficiente para imprimir el formato de impresión requerido. Drag the amount of printed paper and require new print roll when there is insufficient paper to print the print format required.
La razón de tener dos puertos consiste en conectar ambos al Chip 4 QA de cámara conectada y la Chip 5 QA del rollo de impresión con la utilización de líneas separadas. Dos chips QA están implementados como Chips de Autenticación [2]. Si solamente se utiliza una sola línea, un fabricante de réplicas de rollos de impresión podría usurpar el mecanismo de autenticación [1].The reason for having two ports consists of connect both to Chip 4 QA of connected camera and Chip 5 QA of Printing roll with the use of separate lines. Two chips QA are implemented as Authentication Chips [2]. Yes only one line is used, a replica manufacturer of print rolls could usurp the authentication mechanism [one].
Cada consumible de rollo de impresión contiene su propio chip 5 QA. El chip QA contiene información requerida para mantener la mejor calidad de impresión posible, y se implementa con la utilización de un Chip de Autenticación [2]. Los 256 bits de datos se asignan como sigue:Each print roll consumable contains Your own 5 QA chip. The QA chip contains information required for maintain the best possible print quality, and is implemented with the use of an Authentication Chip [2]. 256 bits of data is assigned as follows:
\vskip1.000000\baselineskip\ vskip1.000000 \ baselineskip
Antes de cada impresión, se comprueba la
cantidad de papel restante por medio de la CPU para asegurar que
existe suficiente para el formato de impresión actualmente
especificado. Una vez que se ha iniciado cada impresión, la
cantidad de papel restante debe ser decrementada en el chip QA del
rollo de impresión por medio de la
CPU.Before each print, the amount of paper remaining is checked by means of the CPU to ensure that there is enough for the currently specified print format. Once each print has started, the amount of paper remaining must be decremented on the QA chip of the print roll by means of
CPU
La interfaz 6 paralelo conecta el PCP 3 con señales eléctricas estáticas individuales. La CPU está capacitada para controlar cada una de estas conexiones como E/S mapeada de memoria por medio del bus de baja velocidad. (Véase la Sección 4.4 para más detalles sobre las E/S mapeadas de memoria).Parallel interface 6 connects PCP 3 with individual static electrical signals. The CPU is trained to control each of these connections as mapped I / O of memory via the low speed bus. (See Section 4.4 for more details on memory mapped I / O).
La Tabla 14 muestra las conexiones con la interfaz paralelo.Table 14 shows the connections with the parallel interface
\vskip1.000000\baselineskip\ vskip1.000000 \ baselineskip
\vskip1.000000\baselineskip\ vskip1.000000 \ baselineskip
Una Interfaz 7 JTAG (Joint Test Action Group) estándar ha sido incluida en el PCP 3 a efectos de comprobación. Debido a la complejidad del chip, se requiere una diversidad de técnicas de prueba, incluyendo BIST (Built In Self Test) y aislamiento de bloque funcional. Se supone una porción superior del 10% del área del chip para la circuitería global de comprobación de chip.A 7 JTAG (Joint Test Action Group) Interface Standard has been included in PCP 3 for verification purposes. Due to the complexity of the chip, a diversity of test techniques, including BIST (Built In Self Test) and functional block insulation. An upper portion of the 10% of the chip area for the global circuitry for checking chip.
La RAM 11 de imagen se utiliza para almacenar la imagen 42 capturada. La RAM de Imagen es una Flash multi-nivel (2 bits por célula) de modo que la imagen se conserva después de la alimentación haya sido interrumpida.Image RAM 11 is used to store the Image 42 captured. Image RAM is a Flash multi-level (2 bits per cell) so that the image is preserved after feeding has been interrupted
La cantidad total de memoria requerida para la imagen RGB lineal planarizada es de 1.500.000 bytes (aproximadamente 1,5 MB), organizada como sigue:The total amount of memory required for the Planarized linear RGB image is 1,500,000 bytes (approximately 1.5 MB), organized as follows:
- --
- R: 750 x 500 = 375.000 bytes R: 750 x 500 = 375,000 bytes
- --
- B: 750 x 500 = 375.000 bytes B: 750 x 500 = 375,000 bytes
- --
- G: 750 x 1.000 = 750.000 bytes. G: 750 x 1,000 = 750,000 bytes.
La imagen es escrita por la Unidad de Captura de Imagen, y leída tanto por la Unidad 8 de Histograma de Imagen como la Unidad 99 de Generador de Impresión. La CPU 10 no tiene acceso aleatorio directo a la memoria de imagen. Tiene que acceder a los píxeles de imagen a través de la Unidad de Acceso de Imagen.The image is written by the Capture Unit of Image, and read both by Unit 8 of Image Histogram and Unit 99 Print Generator. CPU 10 does not have access Direct random to image memory. You have to access the Image pixels through the Image Access Unit.
La Unidad de Captura de Imagen contiene toda la funcionalidad requerida por la Cadena de Captura de Imagen, según se describe en la Sección 3.1. La Unidad de Captura de Imagen acepta datos de píxel a través de la Interfaz 98 de Sensor de Imagen, linealiza los datos RGB a través de una tabla 96 de búsqueda, y finalmente escribe la imagen RGB linealizada fuera de la RAM en formato planar. El proceso se muestra en la Figura 33.The Image Capture Unit contains all the functionality required by the Image Capture Chain, according to It is described in Section 3.1. The Image Capture Unit accepts Pixel data through Image Sensor Interface 98, linearize RGB data through a search table 96, and finally write the linearized RGB image out of RAM in planar format The process is shown in Figure 33.
La Interfaz 98 de Sensor de Imagen (ISI) es una máquina de estado que envía información de control al Sensor de Imagen CMOS, incluyendo pulsos de sincronización de cuadro y pulsos de reloj de píxel, con el fin de leer la imagen. La mayor parte de la ISI es probable que se utilice como célula fuente del fabricante del sensor de imagen. La ISI está controlada en sí mismo por la Máquina de Estado 97 de la Unidad de Captura.Image Sensor Interface 98 (ISI) is a status machine that sends control information to the Sensor CMOS image, including frame synchronization pulses and pulses of pixel clock, in order to read the image. Most the ISI is likely to be used as the manufacturer's source cell of the image sensor. The ISI is controlled in itself by the State Machine 97 of the Capture Unit.
Aunque se encuentran disponibles una diversidad de sensores de imagen, solamente vamos a considerar el dispositivo de filtro de color (CFA) Bayer. El CFA Bayer posee un número de atributos que se van a definir ahora.Although a diversity is available of image sensors, we will only consider the device color filter (CFA) Bayer. The CFA Bayer has a number of attributes to be defined now.
La imagen capturada por el sensor CMOS (a través de una lente de captación), se supone que ha sido suficientemente filtrada como para eliminar cualquier partícula de solapamiento. El propio sensor tiene una relación de aspecto de 3:2, con una resolución de 1.500 x 1.000 muestras. La disposición de píxel más probable es el conjunto de filtro de color (CFA) Bayer, con cada bloque de 2 x 2 píxeles dispuesto en mosaico 2G como se muestra en la Figura 15.The image captured by the CMOS sensor (through of a pickup lens), is supposed to have been sufficiently filtered to remove any overlapping particles. He sensor itself has an aspect ratio of 3: 2, with a resolution of 1,500 x 1,000 samples. The pixel layout plus likely is the Bayer color filter set (CFA), with each 2 x 2 pixel block arranged in 2G mosaic as shown in Figure 15
Cada muestra contone de R, G o B (correspondiente a rojo, verde y azul, respectivamente), es de 10 bits. Obsérvese que cada píxel del mosaico contiene información acerca de uno sólo de los R, G o B. Las estimaciones sobre la información de color faltante, deben ser realizadas con anterioridad a que la imagen sea imprimida.Each sample contains R, G or B (corresponding to red, green and blue, respectively), is 10 bits Note that each pixel of the mosaic contains information about only one of the R, G or B. Estimates about the missing color information, must be made before for the image to be printed.
Se considera que el CFA realiza alguna cantidad de supresión de ruido patrón fijo (FPN). Se puede requerir alguna supresión AFN adicional.The CFA is considered to make some amount fixed pattern noise suppression (FPN). It may require some additional AFN suppression.
La tabla de búsqueda 96 es una ROM que mapea el RGB del sensor en un RGB lineal. Ésta equipara el proceso 40 de Linealizar RGB descrito en la Sección 3.1.2. Como tal, la ROM es de 3 KBytes (3 x 1.024 x 8 bits). 10 bits de dirección provienen de la ISI, mientras que 2 bits de TableSelect son generados por la Máquina de Estado 97 de la Unidad de Captura de Imagen.Search table 96 is a ROM that maps the RGB of the sensor in a linear RGB. This equates process 40 of Linearize RGB described in Section 3.1.2. As such, the ROM is from 3 KBytes (3 x 1,024 x 8 bits). 10 address bits come from the ISI, while 2 bits of TableSelect are generated by the Machine Status 97 of the Image Capture Unit.
La Máquina de Estado 97 de la Unidad de Captura de Imagen genera señales de control para la Interfaz 1 de Sensor de Imagen, y genera direcciones para linealizar el RGB 40 y para planarizar los datos 41 de imagen.The State Machine 97 of the Capture Unit Image generates control signals for Sensor Interface 1 Image, and generates directions to linearize the RGB 40 and to planarize image data 41.
Las señales de control enviadas a la ISI 198 informan a la ISI de que inicie la captura de píxeles, finalice la captura de píxeles, etc.Control signals sent to ISI 198 inform the ISI to start pixel capture, finish the pixel capture, etc.
La dirección de 2 bits enviada a la Tabla de Búsqueda 96 se empareja con la línea actual que está siendo leída desde la ISI. Para línea pares (0, 2, 4, etc), la dirección de 2 bits es Roo, Verde, Rojo, Verde, etc. Para líneas impares (1, 3, 5, etc), la dirección de 2 bits es Verde, Azul, Verde, Azul. Esto es cierto con independencia de la orientación de la cámara.The 2-bit address sent to the Table of Search 96 matches the current line being read from the ISI. For line pairs (0, 2, 4, etc.), the address of 2 bits is Roo, Green, Red, Green, etc. For odd lines (1, 3, 5, etc), the 2-bit address is Green, Blue, Green, Blue. This is true regardless of camera orientation.
La dirección de 21 bits enviada a la RAM 11 de Imagen, es la dirección escrita para la imagen. Tres registros conservan la dirección actual para cada uno de los planos rojo, verde, y azul. El incremento de las direcciones como píxeles se escribe en cada plano.The 21-bit address sent to RAM 11 of Image, is the address written for the image. Three records they retain the current address for each of the red planes, green and blue. The increment of the addresses as pixels is Write on each plane.
La unidad de Captura de Imagen contiene un determinado número de registros.The Image Capture unit contains a certain number of records
\vskip1.000000\baselineskip\ vskip1.000000 \ baselineskip
Adicionalmente, la Interfaz 98 de Sensor de Imagen contiene un número de registros. Los registros exactos dependerán del Sensor de Imagen 1 elegido.Additionally, the Sensor Interface 98 Image contains a number of records. The exact records depend on the Image Sensor 1 chosen.
La Unidad 9 de Acceso de Imagen produce los medios para que la CPU 10 acceda a la imagen en la ImageRAM 11. La CPU puede leer píxeles desde la imagen de la ImageRAM 11 y escribir píxeles de nuevo.Image Access Unit 9 produces the means for the CPU 10 to access the image in ImageRAM 11. The CPU can read pixels from the image of ImageRAM 11 and write pixels again.
Los píxeles podrían ser leídos a los efectos de almacenamiento de imagen (por ejemplo, a través del USB) 17, o para procesamiento de imagen simple. Los píxeles podrían ser escritos en ImageRAM 11 tras el procesamiento de imagen, como imagen previamente guardada (cargada vía USB), o como imágenes a efectos de patrón de prueba. Los patrones de prueba podrían ser imágenes sintéticas, imágenes de prueba específicas (cargadas a través del USB), o podrían ser valores de disparo de disparo de boquilla de 24 bits para ser cargados directamente en la cabeza de impresión por medio del modo de prueba de la Unidad 99 de Generador de Impresión.The pixels could be read for the purpose of image storage (for example, via USB) 17, or to simple image processing. The pixels could be written in ImageRAM 11 after image processing, as image previously saved (uploaded via USB), or as images for the purpose of test pattern The test patterns could be images Synthetic, specific test images (loaded through the USB), or could be nozzle trigger trip values of 24 bits to be loaded directly into the printhead by middle of the test mode of the Generator Unit 99 Print.
La Unidad 9 de Acceso de Imagen es un mecanismo de acceso directo a la ImageRAM 11, y opera de forma absolutamente simple en términos de 3 registros como se muestra en la Tabla 16.Image Access Unit 9 is a mechanism Direct access to ImageRAM 11, and it operates absolutely simple in terms of 3 records as shown in the Table 16.
La estructura de la Unidad de Acceso de Imagen es muy simple, según se muestra en la Figura 35.The structure of the Image Access Unit It is very simple, as shown in Figure 35.
La Máquina de Estado 101 simplemente realiza leer/escribir desde/en ImageRAM 11 siempre que la CPU escriba en el registro de Modo.State Machine 101 simply performs read / write from / in ImageRAM 11 whenever the CPU writes in the Mode registration.
La Unidad 8 de Histograma de Imagen (IHU), ha sido diseñada para generar histogramas de imágenes según sea requerido por la Cadena de Procesamiento de Imagen de Impresión descrita en la Sección 3.2.2. La IHU solamente genera histogramas para imágenes de formato planar con muestras de 8 bits cada una.Unit 8 of Image Histogram (IHU), has been designed to generate histograms of images as required by the Printing Image Processing Chain described in Section 3.2.2. The IHU only generates histograms for images of planar format with samples of 8 bits each.
La Unidad 8 de Histograma de Imagen se utiliza
típicamente tres veces por impresión. Se acumulan tres histogramas
diferentes, uno por cada plano de color. Cada vez que se acumula un
histograma, se analizan los resultados con el fin de determinar los
umbrales bajo y alto, los factores de escalado, etc., para su uso en
el resto del proceso de im-
presión. Para más información
sobre cómo debe ser usado el histograma, véase la Sección 3.2.2.2 y
la Sección 3.2.4.The Image Histogram Unit 8 is typically used three times per impression. Three different histograms accumulate, one for each color plane. Each time a histogram is accumulated, the results are analyzed in order to determine the low and high thresholds, the scaling factors, etc., for use in the rest of the printing process.
Pressure. For more information on how the histogram should be used, see Section 3.2.2.2 and Section 3.2.4.
El propio histograma se almacena en una RAM 102 de 256 entradas, siendo cada entrada de 20 bits. A la RAM de histograma solamente se accede desde dentro de la IHU. Las entradas individuales son leídas y escritas como cantidades de 20 bits.The histogram itself is stored in a RAM 102 256 entries, each entry being 20 bits. To the RAM of Histogram is only accessed from within the IHU. Tickets Individuals are read and written as 20-bit quantities.
La Máquina de Estado 103 sigue el seudo-código descrito en la Sección 3.2.2.1. La misma está controlada por los registros que se muestran en la Tabla 17.State Machine 103 follows the pseudo-code described in Section 3.2.2.1. The it is controlled by the records shown in the Table 17
El uso típico de os registros consiste en establecer TotalPixels con el número de píxeles para incluir en el conteo (por ejemplo, 375.000 para el rojo), StartAddress con la dirección del plano rojo, ClearCount con 1, y escribir un 1 en el registro Go. Una vez que el conteo ha finalizado, los valores individuales del histograma pueden ser determinados escribiendo 0-255 en PixelValue y leyendo el Pixelcount correspondiente.The typical use of records consists of set TotalPixels with the number of pixels to include in the count (for example, 375,000 for red), StartAddress with the address of the red plane, ClearCount with 1, and write a 1 in the Go record. Once the count is finished, the values Histogram individual can be determined by typing 0-255 on PixelValue and reading the Pixelcount correspondent.
\global\parskip0.900000\baselineskip\ global \ parskip0.900000 \ baselineskip
La Interfaz de Cabeza de Impresión (PHI) 105, es el medio mediante el que el PCP 3 carga la cabeza de impresión 2 Memjet con los puntos que van a ser imprimidos, y controla el proceso real de impresión de punto. El PHI es un reiniciador cíclico lógico para un número de unidades, a saber:The Print Head Interface (PHI) 105, is the means by which PCP 3 loads printhead 2 Memjet with the dots to be printed, and control the Real dot printing process. The PHI is a wrapper logical cyclic for a number of units, namely:
- \bullet?
- una Interfaz Memjet (MJI) 15, que transfiere datos hasta la cabeza de impresión Memjet, y controla las secuencias de disparo de boquilla durante una impresión, a Memjet Interface (MJI) 15, which transfers data to the Memjet printhead, and controls the nozzle firing sequences during a Print,
- \bullet?
- una Unidad de Generador de Impresión (PGU) 99 es una implementación de la mayor parte de la Cadena de Impresión descrita en la Sección 3.2, así como también proporciona un medio de producción de patrones de prueba. La PGU toma una RGB lineal planarizada obtenida a partir de una imagen capturada de formato CFA procedente de la ImageRAM 11, y produce una imagen CMY vibrada de 1.600 dpi en tiempo real según se requiere mediante la Interfaz Memjet 15. Adicionalmente, la PGU tiene un modo de Patrón de Prueba, que permite que la CPU 10 especifique de manera precisa qué boquillas han de dispararse durante una impresión. a generator unit Printing (PGU) 99 is an implementation of most of the Print Chain described in Section 3.2, as well as It provides a means of producing test patterns. PGU take a planarized linear RGB obtained from an image captured from CFA format from ImageRAM 11, and produces a 1,600 dpi vibrated CMY image in real time as required via Memjet Interface 15. Additionally, the PGU has a Test Pattern mode, which allows CPU 10 to specify from precise way which nozzles have to be fired during a Print.
Las unidades del interior de la PHI son controladas por un número de registros que son programados mediante la CPU.The units inside the PHI are controlled by a number of records that are programmed by CPU
La estructura interna de la Interfaz de Cabeza de Impresión ha sido mostrada en la Figura 37.The internal structure of the Head Interface Print has been shown in Figure 37.
La Interfaz Memjet (MJI) 15 conecta el PCP con la cabeza de impresión Memjet externa, proporcionando tanto datos como señales apropiadas para controlar las secuencias de carga y disparo de boquilla durante una impresión.The Memjet Interface (MJI) 15 connects the PCP with The external Memjet printhead, providing both data as appropriate signals to control the loading sequences and nozzle shot during printing.
La Interfaz Memjet 15 es simplemente una Máquina de Estado 106 (véase la Figura 38) que sigue el orden de carga y disparo de la cabeza de impresión que se ha descrito en la Sección 2.2, y que incluye la funcionalidad del ciclo de Precalentamiento y Limpieza según se ha descrito en la Sección 2.4.1 y 2.4.2.The Memjet 15 Interface is simply a Machine of State 106 (see Figure 38) which follows the order of loading and printhead shot described in Section 2.2, and that includes the functionality of the Preheat cycle and Cleaning as described in Section 2.4.1 and 2.4.2.
La MJI 15 carga datos en la cabeza de impresión procedentes de una opción entre 2 fuentes de datos:The MJI 15 loads data in the printhead from an option between 2 data sources:
- \bullet?
- Todo 1s. Esto significa que todas las boquillas dispararán durante un ciclo de Impresión posterior, y constituye el mecanismo estándar para cargar la cabeza de impresión para un ciclo de Precalentamiento y Limpieza. All 1s. This means that all nozzles will fire during a Print cycle posterior, and constitutes the standard mechanism for loading the head Printing for a Preheating and Cleaning cycle.
- \bullet?
- Desde la entrada de 24 bits mantenida en el registro de Transferencia de la PGU 99. Éste es el medio estándar de imprimir una imagen, si es una foto capturada o un patrón de prueba. El valor de 24 bits procedente de la PGU es enviado directamente a la cabeza de impresión y se envía un pulso de control "Advance" de 1 bit a la PGU. Al final de cada línea, se envía también un pulso "AdvanceLine" de 1 bit hasta la PGU. From the entrance of 24 bits kept in the Transfer register of the PGU 99. This is the standard means of printing an image, if it is a captured photo or a test pattern. The 24-bit value from the PGU is sent directly to the printhead and a pulse of Advance control of 1 bit to the PGU. At the end of each line, a 1-bit "AdvanceLine" pulse is also sent to the PGU
La MJI 15 debe ser iniciada después de que la PGU 99 haya preparado ya el primer valor de transferencia de 24 bits. Esto se hace modo que la entrada de datos de 24 bits será válida para la primera transferencia hasta la cabeza de impresión.MJI 15 must be initiated after the PGU 99 has already prepared the first transfer value of 24 bits This is done so that the 24-bit data input will be valid for the first transfer to the head of Print.
La MJI 15 se conecta por lo tanto directamente a la Unidad 99 de Generador de Impresión y a la cabeza de impresión 2 externa. La estructura básica se muestra en la Figura 38.The MJI 15 is therefore connected directly to Print Generator Unit 99 and printhead 2 external The basic structure is shown in Figure 38.
La MJI 15 tiene las siguientes conexiones con la cabeza de impresión 2, con la detección de entradas y de salidas con respecto a la MJI 15. Los nombres se emparejan con las conexiones de patillas de la cabeza de impresión (véase la Sección 2).The MJI 15 has the following connections with the printhead 2, with the detection of inputs and outputs with respect to MJI 15. The names are matched with the printhead pin connections (see Section 2).
La duración de los pulsos de disparo por las
líneas Aunable y BEnable, depende de la viscosidad de la tinta (la
cual depende de la temperatura y de las características de la
tinta), y de la cantidad de potencia disponible para la cabeza de
impresión. El rango de duración típica de pulso es de 1,3 a 1,8
\mus. La MJI contiene por lo tanto una tabla de duración de pulso
programable, indexada por información desde la cabeza de impresión.
La tabla de duraciones de pulso
permite el uso de una fuente
de alimentación de menor coste, y ayuda a mantener una eyección de
tinta más precisa.The duration of the firing pulses along the Aunable and BEnable lines depends on the viscosity of the ink (which depends on the temperature and characteristics of the ink), and on the amount of power available for the print head. The typical pulse duration range is 1.3 to 1.8. The MJI therefore contains a programmable pulse duration table, indexed by information from the printhead. The pulse duration table
It allows the use of a lower cost power supply, and helps maintain a more accurate ink ejection.
La tabla de Duración de pulso tiene 256 entradas, y está indexada por los Vsense y Tsense actuales establecidos. Los 4 bits superiores de la dirección proceden de Vsense, y los 4 bits inferiores de la dirección proce3den de Tsense. Cada en5trada es de 8 bits, y representa un valor de punto fijo en la gama de 0-4 \mus. El proceso de generación de las líneas Aunable y BEnable se muestra en la Figura 39.The Pulse Duration table has 256 entries, and is indexed by the current Vsense and Tsense established. The top 4 bits of the address come from See, and the lower 4 bits of the address come from Tsense Each input is 8 bits, and represents a point value fixed in the range of 0-4 \ mus. The process of Generation of the Aunable and BEnable lines is shown in Figure 39.
La tabla de 256 bytes es escrita por la CPU 10 con anterioridad a la impresión de la foto. Cada entrada de duración de pulso de 8 bits en la tabla, combina:The 256 byte table is written by CPU 10 before printing the photo. Each entry of 8-bit pulse duration in the table, combines:
- \bullet?
- Establecimiento de brillos Establishment of glitter
- \bullet?
- Curva de viscosidad de la tinta (desde el Chip QA) 5 Viscosity curve the ink (from the QA Chip) 5
- \bullet?
- Rsense Rsense
- \bullet?
- Wsense Wsense
- \bullet?
- Tsense Tsense
- \bullet?
- Vsense See
La MJI 15 mantiene un conteo del número de puntos de cada color disparados desde la cabeza de impresión 2. El conteo de puntos para cada color es un valor de 32 bits, borrado individualmente bajo control del procesador. Cada conteo de puntos puede mantener un conteo de puntos de máxima cobertura de 69 impresiones de 15 cm (6 pulgadas), aunque en la utilización típica, el conteo de puntos puede ser leído y borrado después de cada impresión.MJI 15 keeps a count of the number of dots of each color shot from the printhead 2. The dot count for each color is a 32-bit value, deleted individually under processor control. Each point count you can maintain a maximum coverage point count of 69 15 cm (6 inch) prints, although in typical use, The point count can be read and deleted after each Print.
Mientras que en el producto Printcam inicial, el consumible contiene tanto papel como tinta, resulta concebible que un modelo diferente de Printcam tenga un consumible reemplazable de tinta solamente. El producto de Printcam inicial puede hacer un conteo descendente de la cantidad de milímetros que restan de papel (almacenado en el chip 5 QA, véase la Sección 5.2), para saber si existe suficiente papel disponible para imprimir el formato deseado. Existe tinta suficiente para la cobertura completa del papel suministrado. En el producto Printcam alternativo, los conteos de puntos pueden ser utilizados por la CPU para actualizar el chip 5 QA con el fin de predecir cuándo se va a agotar la tinta del cartucho de tinta. El procesador conoce el volumen de tinta del cartucho para cada uno de C, M e Y a partir del chip 5. El conteo del número de gotas elimina la necesidad de sensores de tinta, y evita que los canales de tinta se queden secos. Un conteo de gotas actualizado se escribe en el chip 5 QA después de cada impresión. Una nueva foto no será imprimida a menos que exista suficiente tinta, y permite al usuario cambiar la tinta sin que se obtenga una foto insatisfactoria que tenga que ser reimprimida.While in the initial Printcam product, the consumable contains both paper and ink, it is conceivable that a different Printcam model has a replaceable consumable of ink only. The initial Printcam product can make a countdown of the amount of millimeters left of paper (stored on chip 5 QA, see Section 5.2), to know if there is enough paper available to print the format wanted. There is enough ink for full coverage of the paper supplied. In the alternative Printcam product, the point counts can be used by the CPU to update the 5 QA chip in order to predict when the ink is going to run out of the ink cartridge. The processor knows the ink volume of the cartridge for each of C, M and Y from chip 5. The count the number of drops eliminates the need for ink sensors, and Prevents ink channels from drying out. A drop count Updated is written on the 5 QA chip after each print. A new photo will not be printed unless there is enough ink, and allows the user to change the ink without obtaining a Unsatisfactory photo that has to be reprinted.
La disposición del contador de puntos par el cyan, se muestra en la Figura 40. Los 2 contadores de puntos restantes (MDotCount e UDotCount, para magenta y amarillo respectivamente), tienen una estructura idéntica.The arrangement of the point counter for the cyan, is shown in Figure 40. The 2 point counters remaining (MDotCount and UDotCount, for magenta and yellow respectively), have an identical structure.
La CPU 10 comunica con la MJI a través de un registro establecido. Los registros permiten a la CPU parametrizar una impresión, así como también recibir información acerca del progreso de la impresión.The CPU 10 communicates with the MJI through a established record. The registers allow the CPU to parameterize an impression, as well as receiving information about the printing progress
Los registros que siguen están contenidos en la MJI:The records that follow are contained in the MJI:
\global\parskip1.000000\baselineskip\ global \ parskip1.000000 \ baselineskip
El Registro de Estado de la MJI es un registro de 16 bits con interpretaciones de bit como sigue:The MJI State Register is a register 16-bit with bit interpretations as follows:
\vskip1.000000\baselineskip\ vskip1.000000 \ baselineskip
\vskip1.000000\baselineskip\ vskip1.000000 \ baselineskip
Los ciclos de Limpieza y de Precalentamiento se realizan de manera simple estableciendo registros apropiados:The Cleaning and Preheating cycles are perform simply by establishing appropriate records:
- \bullet?
- SetAllNozzles = 1 SetAllNozzles = one
- \bullet?
- Establecer el registro PulseDuration ya sea en una duración baja (en el caso del modo de precalentamiento) o ya sea en una duración apropiada de eyección de gota para el modo de limpieza. Set the record PulseDuration either in a low duration (in the case of preheating) or in an appropriate ejection duration of drop for cleaning mode.
- \bullet?
- Establecer NumLines de modo que sea el número de veces que la boquilla debe ser disparada. Set NumLines of so that is the number of times the nozzle should be shot.
- \bullet?
- Establecer el bit Go y esperar a continuación para que el bit Go sea borrado cuando los ciclos de impresión se hayan completado. Set the Go bit and wait next for the Go bit to be cleared when the Print cycles have been completed.
La Unidad de Generador de Impresión (PGU) 99 es una implementación de la mayor parte de la Cadena de Impresión descrita en la Sección 3.2, así como también la provisión de un medio de producción de patrones de prueba.The Print Generator Unit (PGU) 99 is an implementation of most of the Printing Chain described in Section 3.2, as well as the provision of a Test pattern production medium.
Desde el punto de vista más simple, la PGU proporciona la interfaz entre la RAM 11 de imagen y la Interfaz Memjet 15, como se muestra en la Figura 41. La PGU toma un RGB lineal planarizado obtenido a partir de una imagen capturada de formato CFA procedente de la ImageRAM, y produce una imagen CMY vibrada de 1.600 dpi en tiempo real según requiere la Interfaz Memjet. Adicionalmente, la PGU tiene un modo de Patrón de Prueba, que permite a la CPU especificar de manera precisa qué boquillas se disparan durante una impresión. La MJI 15 proporciona a la PGU 99 un pulso Advance una vez que se han usado los 24 bits, y un pulso AdvanceLine al final de una línea.From the simplest point of view, the PGU provides the interface between the image RAM 11 and the Interface Memjet 15, as shown in Figure 41. The PGU takes an RGB linear planar obtained from an image captured from CFA format from ImageRAM, and produces a CMY image 1,600 dpi vibrated in real time as required by the Interface Memjet Additionally, the PGU has a Test Pattern mode, which allows the CPU to specify precisely which nozzles are shoot during a print. The MJI 15 provides the PGU 99 an Advance pulse once all 24 bits have been used, and a pulse AdvanceLine at the end of a line.
La PGU 99 tiene 2 cadenas de procesamiento de imagen. La primera, el modo de Patrón de Prueba, lee simplemente datos directamente desde la RAM de Imagen 11, y los formatea en una memoria intermedia lista para proporcionar una salida para la MJI. La segunda contiene la mayoría de las funciones de Cadena de Impresión (véase la Sección 3.2). La Cadena de Impresión mostrada en la Figura 18 contiene las funciones:The PGU 99 has 2 processing chains of image. The first, the Test Pattern mode, reads simply data directly from Image RAM 11, and format them in a buffer memory ready to provide an output for the MJI. The second contains most of the functions of String Printing (see Section 3.2). The Print Chain shown Figure 18 contains the functions:
- \bullet?
- Acumular Estadísticas 60 Accumulate Statistics 60
- \bullet?
- Girar Imagen 61 Rotate Image 61
- \bullet?
- Balance del Blanco 62 White Balance 62
- \bullet?
- Expansión de Rango 63 Range Expansion 63
- \bullet?
- Remuestreo 64 Resampling 64
- \bullet?
- Intensificación 65 Intensification 65
- \bullet?
- Convertir a CMY 66 Convert to CMY 66
- \bullet?
- Interpolación Ascendente 67 Ascending Interpolation 67
- \bullet?
- Semitono 68 Halftone 68
- \bullet?
- Reformateo para Impresora 69. Reformat for Printer 69.
La PGU 99 contiene todas estas funciones con la excepción de Acumular Estadísticas 60. Para realizar la etapa de Acumular Estadísticas, la CPU 10 llama a la Unidad de Histograma de Imagen 8 tres veces (una vez por canal de color), y aplica algunos algoritmos simples. El resto de las funciones son el dominio de la PGU 99 por razones de precisión y de velocidad: precisión, porque podría ser que se precisara demasiada memoria para mantener la imagen completa con una alta precisión, y velocidad, debido a que una sola CPU 10 no puede mantener las demandas de alta velocidad en tiempo real de la cabeza de impresión 2 Memjet.The PGU 99 contains all these functions with the exception of Accumulate Statistics 60. To perform the stage of Accumulate Statistics, CPU 10 calls the Histogram Unit of Image 8 three times (once per color channel), and apply some simple algorithms The rest of the functions are the domain of the PGU 99 for reasons of precision and speed: precision, because it might be that too much memory is needed to maintain the Full image with high accuracy, and speed, because a single CPU 10 cannot keep high speed demands on Real time print head 2 Memjet.
La PGU 99 toma como entrada una diversidad de parámetros, incluyendo tablas de conversión de RGB a CMY, constantes para realizar el balance del blanco y la expansión de rango, factores de escala para remuestreo, y parámetros de acceso de imagen que permitan la rotación.The PGU 99 takes as input a diversity of parameters, including RGB to CMY conversion tables, constants to perform white balance and range expansion, Scaling factors for resampling, and access parameters of image that allow rotation.
Las dos cadenas de proceso pueden verse en la Figura 20. La cadena más directa va desde la RAM de Imagen 11 hasta la Memoria Intermedia 5 por medio del proceso 110 de Acceso de Patrón de Prueba. La otra cadena consiste en 5 procesos, corriendo todos ellos en paralelo. El segundo proceso 112 realiza el Remuestreo. El tercer proceso 65 realiza la intensificación. El cuarto proceso 66 realiza la conversión de color. El proceso 113 final realiza la interpolación ascendente, el semitono y el reformateo de la impresora. Los procesos están conectados a través de memorias intermedias, solamente con una pocos bytes entre algunos procesos, y con unos pocos kilobytes para otros.The two process chains can be seen in the Figure 20. The most direct chain goes from Image RAM 11 to Intermediate Memory 5 through the Access 110 process of Test Pattern The other chain consists of 5 processes, running All of them in parallel. The second process 112 performs the Resampling. The third process 65 performs the intensification. He fourth process 66 performs the color conversion. The 113 process final performs ascending interpolation, semitone and Printer reformat. The processes are connected through of buffers, only with a few bytes between some processes, and with a few kilobytes for others.
Observemos estos procesos y memorias intermedias principalmente en un orden inverso, puesto que la temporización para la cabeza de impresión activa el proceso completo. Las temporizaciones para procesos particulares y los requisitos de tamaño de la memoria intermedia son entonces más evidentes. No obstante, los tamaños de memoria intermedia se muestran en forma de sumario en la Tabla 21.Let's look at these processes and buffers mainly in a reverse order, since the timing for the printhead activates the entire process. The timings for particular processes and the requirements of Buffer size are then more obvious. Do not However, buffer sizes are shown as summary in Table 21.
Aparte del número de registros, algunos de los procesos tienen tablas de búsqueda o componentes de memoria significativas. Éstos se resumen en la Tabla 22.Apart from the number of records, some of the processes have search tables or memory components significant. These are summarized in Table 22.
El proceso 110 de Acceso de Patrón de prueba es el medio mediante el que se producen los patrones de prueba. Bajo circunstancias de usuario normales, este proceso no será utilizado. Está previsto principalmente a efectos de diagnóstico.The Test Pattern Access process 110 is the means by which test patterns are produced. Low Normal user circumstances, this process will not be used. It is primarily intended for diagnostic purposes.
\global\parskip0.900000\baselineskip\ global \ parskip0.900000 \ baselineskip
El Acceso de Patrón de Prueba 110 lee la RAM de Imagen 11, y pasa los valores de 8 bits directamente a la Memoria Intermedia 5 118 para presentarlos a la salida para la Interfaz Memjet. Éste no modifica en modo alguno los valores de 8 bits. Los datos de la RAM de Imagen 11 podrían ser producidos por la CPU 10 utilizando la Unidad 9 de Acceso de Imagen.Test Pattern Access 110 reads the RAM of Image 11, and pass 8-bit values directly to Memory Intermediate 5 118 to present at the output for the Interface Memjet It does not modify the 8-bit values in any way. The Image 11 RAM data could be produced by CPU 10 using Image Access Unit 9.
La lectura de datos desde la RAM de Imagen 11 se realiza de una manera de reiniciación cíclica muy simple. Se utilizan dos registros para describir los datos de prueba: la dirección de inicio del primer byte, y el número de bytes. Cuando se alcanza el fin de los datos, los datos se leen de nuevo desde el principio.Reading data from Image RAM 11 is performs in a very simple cyclic reset way. Be They use two records to describe the test data: start address of the first byte, and the number of bytes. When the end of the data is reached, the data is read again from the beginning.
La estructura de la Unidad 110 de Acceso de Patrón de Prueba se muestra en la Figura 43.The structure of the Access Unit 110 Test Pattern is shown in Figure 43.
Según puede apreciarse en la Figura 43, la Unidad 110 de Acceso de Patrón de Prueba es poco más que el Generador 119 de Dirección. Cuando se inicia, y con cada señal AdvanceLine, el generador lee 3 bytes, produce un pulso TransferWriteEnable, lee los 3 bytes siguientes, y a continuación espera por un pulso de Advance. En el pulso Advance, se proporciona el pulso de TransferWriteEnable, se leen los 3 bytes siguientes, y se produce de nuevo la espera. Esto continúa hasta el pulso AdvanceLine, con el que comienza de nuevo el proceso desde la dirección actual.As can be seen in Figure 43, the Test Pattern Access Unit 110 is little more than the Address Generator 119. When it starts, and with each signal AdvanceLine, the generator reads 3 bytes, produces a pulse TransferWriteEnable, read the next 3 bytes, and then Wait for an Advance pulse. In the Advance pulse, it is provided the Pulse of TransferWriteEnable, the next 3 bytes are read, and the wait occurs again. This continues until the pulse AdvanceLine, with which the process starts again from the current address.
En términos de lectura de 3 bytes, el Generador 119 de Dirección simplemente lee tres valores de 8 bits desde la RAM de Imagen 11, y los escribe en la memoria Intermedia 5 118. El valor de los primeros 8 bits se escribe en la dirección 0 de 8 bits de la Memoria Intermedia 5, el siguiente se escribe en la dirección 1 de 8 bits de la Memoria Intermedia 5, y el tercero se escribe en la dirección 2 de 8 bits de la Memoria Intermedia 5. El Generador 110 de Dirección espera después un pulso Advance antes de hacer la misma cosa nuevamente.In terms of reading 3 bytes, the Generator Address 119 simply reads three 8-bit values from the Image RAM 11, and writes them in Buffer 5 118. The value of the first 8 bits is written to address 0 of 8 bits of Intermediate Memory 5, the following is written at the address 1 of 8 bits of Intermediate Memory 5, and the third one is written in Address 2 of 8 bits of Intermediate Memory 5. The Generator 110 Direction then waits for an Advance pulse before making the Same thing again.
Las direcciones generadas para la RAM de Imagen 11, están basadas en una dirección de inicio y en un conteo de bytes como se muestra en la Tabla 23.The addresses generated for Image RAM 11, are based on a start address and a count of bytes as shown in Table 23.
El siguiente seudo-código ilustra la generación de dirección. Los pulsos AdvanceLine y Advance no se muestran.The following pseudo code Illustrates address generation. AdvanceLine and Advance pulses They are not shown.
Es responsabilidad de la CPU 10 asegurar que los datos tienen significado para la cabeza de impresión 2. El Byte 0 es el dato de disparo de boquilla para los 8 segmentos de cyan (bit 0 = segmento 0, etc), el Byte 1 es lo mismo para el magenta, y el Byte 2 para el amarillo. Conjuntos alternos de 24 bits se destinan a los píxeles impares/ pares separados por 1 línea horizontal de puntos.It is the responsibility of CPU 10 to ensure that data have meaning for the printhead 2. Byte 0 is the nozzle trigger data for the 8 cyan segments (bit 0 = segment 0, etc.), Byte 1 is the same for magenta, and the Byte 2 for yellow. Alternate 24-bit sets are intended for odd / even pixels separated by 1 horizontal line of points.
\global\parskip1.000000\baselineskip\ global \ parskip1.000000 \ baselineskip
La memoria Intermedia 5 118 mantiene los puntos generados a partir del proceso completo de Generación de Impresión. La memoria Intermedia 5 consiste en un registro de desplazamiento de 24 bits para mantener los puntos generados, uno cada vez, desde la UHRH 113 (Unidad de Interpolación Ascendente-Semitono y Reformateo), 3 registros de 8 bits para mantener los datos generados desde la TPAU (Unidad de Acceso de Patrón de Prueba), y un registro de 24 bits utilizado como memoria intermedia para transferir datos ha la MJI (Interfaz Memjet). El pulso Advance procedente de la MJI carga el registro Transfer de 24 bits con los 24 bits, ya sea desde los 3 registros de 8 bits o ya sea desde el registro de desplazamiento único de 24 bits.Buffer 5 118 keeps the points generated from the entire Printing Generation process. Buffer 5 consists of a shift register of 24 bits to keep the generated points, one at a time, from the UHRH 113 (Interpolation Unit Ascending-Semitone and Reformatting), 3 records of 8 bits to keep the data generated from the TPAU (Unit of Test Pattern Access), and a 24-bit register used as buffer to transfer data to the MJI (Interface Memjet). The Advance pulse from the MJI loads the register 24-bit transfer with 24-bit, either from the 3 registers of 8 bits or from the 24-bit single offset register bits
La Memoria Intermedia 5 actúa por lo tanto como doble mecanismo de almacenamiento intermedio para los puntos generados, y tiene la estructura que se muestra en la Figura 44.Intermediate Memory 5 therefore acts as double intermediate storage mechanism for points generated, and has the structure shown in Figure 44.
La Memoria Intermedia 4 117 mantiene la imagen contone de resolución intermedia CMY calculada (1.280-res). La memoria Intermedia 4 se genera mediante el proceso 66 de Conversión de Color, y es accesible para el proceso 113 de Interpolación-Ascendente, Semitono y Reformateo con el fin de generar puntos de salida para la impresora.Buffer 4 117 maintains the image CMY intermediate resolution contone calculated (1,280-res). Buffer 4 is generated through the process 66 of Color Conversion, and is accessible for Interpolation-Ascending process 113, Halftone and Reformatting in order to generate exit points for the printer.
El tamaño de la Memoria Intermedia Contone, depende de la distancia física entre las boquillas de la cabeza de impresión. Según están siendo generados los puntos de un color para una línea física, están siendo generados los puntos de un color diferente por una línea diferente. El efecto neto es que se imprimen 6 líneas físicas diferentes de una vez desde la impresora: puntos impares y pares desde diferentes líneas de salida, y líneas diferentes por color. Este concepto ha sido explicado, y las distancias se han definido en la Sección 2.1.1.The size of the Contone Buffer, depends on the physical distance between the nozzles of the head of Print. As points of a color are being generated for a physical line, the points of a color are being generated different for a different line. The net effect is that they are printed 6 different physical lines at once from the printer: points odd and even from different output lines, and lines Different by color. This concept has been explained, and the distances have been defined in Section 2.1.1.
La conclusión práctica es que existe una distancia dada en puntos de alta resolución desde los puntos cyan pares a través de los puntos magenta hasta los puntos amarillos impares. Con el fin de minimizar la generación de RGB y con ello CMY, los píxeles contone de resolución media se almacenan temporalmente en la Memoria Intermedia 4.The practical conclusion is that there is a distance given in high resolution points from cyan points pairs through magenta points to yellow points odd. In order to minimize the generation of RGB and with it CMY, medium resolution contone pixels are stored temporarily in Intermediate Memory 4.
Puesto que la relación de líneas de media resolución respecto a líneas de alta resolución es de 1:5, cada línea de media resolución se muestrea 5 veces en cada dimensión. A los efectos de líneas de memoria intermedia, solamente estamos afectados por las de 1 dimensión, de modo que sólo consideraremos 5 líneas de puntos procedentes de una sola línea de píxel. La distancia entre boquillas de diferentes colores es de 4-8 puntos (dependiendo de los parámetros de la Memjet). Por lo tanto suponemos 8, que proporciona una distanciad e separación de 16 puntos, o 17 puntos en la distancia inclusiva. El peor caso lo constituye un escenario en el que la línea de 17 puntos de línea incluye la última línea de puntos procedente de una línea de píxel dada. Esto implica 5 líneas de píxel, con líneas de puntos generadas como 1, 5, 5, 5, 1, y permite un incremento de separación de boquilla hasta 10.Since the ratio of average lines Resolution regarding high resolution lines is 1: 5, each Medium resolution line is sampled 5 times in each dimension. TO the effects of buffer lines, we are only affected by those of 1 dimension, so that we will only consider 5 dotted lines from a single pixel line. The distance between nozzles of different colors is 4-8 points (depending on the parameters of the Memjet). Therefore we assume 8, which provides a distance of separation of 16 points, or 17 points in the inclusive distance. He worst case scenario is a scenario in which the line of 17 line points includes the last line of points coming from a given pixel line. This implies 5 pixel lines, with lines of points generated as 1, 5, 5, 5, 1, and allows an increase of nozzle spacing up to 10.
Para asegurar que el proceso de generación de contone que escribe en la memoria intermedia no interfiere con el proceso de generación de puntos que se lee desde la memoria intermedia, hemos añadido una línea extra de media resolución por color, para un total de 6 líneas por color.To ensure that the process of generating contone that writes in the buffer does not interfere with the point generation process that is read from memory intermediate, we have added an extra line of medium resolution by color, for a total of 6 lines per color.
La memoria intermedia contone tiene por lo tanto 3 colores por 6 líneas, conteniendo cada una de las líneas 1.280 valores contone de 8 bits. La memoria total requerida es de 3 x 6 x 1.280 = 23.040 bytes (22,5 KBytes). La memoria solamente requiere una lectura única de 8 bits por ciclo, y una escritura única de 8 bits por cada 25 ciclos (cada píxel contone se lee 25 veces). La estructura de Memoria Intermedia 4 se muestra en la Figura 45.The contone buffer has therefore 3 colors per 6 lines, containing each of the 1,280 lines 8-bit contone values. The total memory required is 3 x 6 x 1,280 = 23,040 bytes (22.5 KBytes). Memory only requires a single read of 8 bits per cycle, and a single write of 8 bits for every 25 cycles (each contone pixel is read 25 times). The Intermediate Memory structure 4 is shown in Figure 45.
La memoria Intermedia 4 puede ser implementada como una RAM de ciclo único de doble acceso (lectura y escritura) que corre a la velocidad normal del proceso de generación de puntos de cabeza de impresión, o puede ser implementada como RAM que corre un 4% más rápida con un sólo acceso de lectura o de escritura por ciclo.Buffer 4 can be implemented as a dual-access single cycle RAM (read and write) running at the normal speed of the point generation process printhead, or it can be implemented as running RAM 4% faster with a single read or write access for cycle.
La Memoria Intermedia 4 se establece en el blanco (todo 0) con anterioridad al inicio del proceso de impresión.Intermediate Memory 4 is set in the blank (all 0) prior to the start of the process Print.
Aunque las tareas 113 de Interpolación Ascendente, Semitono y Reformateo se definen como tareas separadas por medio de la Sección 3.2.8, la Sección 3.2.9 y la Sección 3.2.10 respectivamente, éstas se implementan como un proceso único en la implementación de hardware del PCP 3.Although Interpolation tasks 113 Ascending, Halftone and Reformatting are defined as separate tasks through Section 3.2.8, Section 3.2.9 and Section 3.2.10 respectively, these are implemented as a unique process in the PCP hardware implementation 3.
La entrada a la Unidad 113 de Interpolación Ascendente, Semitono y Reformateo (UHRU), es la memoria intermedia 117 contone (Memoria Intermedia 4) que contiene la imagen CMY de resolución 1.280 (resolución intermedia) calculada previamente. La salida es un conjunto de valores de 24 bits en el orden correcto en que han de ser enviados a la Interfaz Memjet 15 para su posterior salida para la cabeza de impresión por medio de la memoria Intermedia 5 118. Los 24 bits de salida se generan a razón de 1 bit cada vez, y son enviados al registro de desplazamiento de 24 bits de la memoria Intermedia 5 118.The entrance to Interpolation Unit 113 Ascending, Semitone and Reformatting (UHRU), is the buffer 117 contone (Intermediate Memory 4) containing the CMY image of Resolution 1,280 (intermediate resolution) previously calculated. The output is a set of 24 bit values in the correct order in to be sent to the Memjet 15 Interface for later print head output via memory Intermediate 5 118. The 24 output bits are generated at a rate of 1 bit each time, and are sent to the 24-bit shift register of Intermediate Memory 5 118.
El control de este proceso ocurre a partir de las señales Advance y AdvanceLine procedentes de la MJI 15. Cuando se inicia la UHRU 13, y después de cada pulso AdvanceLine, se producen 24 bits, y son cronometrados en el registro de desplazamiento de 24 bits de la Memoria Intermedia 5 por medio de una señal ShiftWriteEnable. Una vez que el bit 24º ha sido cronometrado, se proporciona un pulso TransferWriteEnable y se generan los siguientes 24 bits. Después de esto, la UHRU 113 espera por el pulso Advance procedente de la MJI. Cuando llega el pulso Advance, se proporciona el pulso TransferWriteEnable a la Memoria Intermedia 5 118, y se calculan los siguientes 24 bits con anterioridad a una nueva espera. En la práctica, una vez que se ha proporcionado el primer pulso Advance, se produce la sincronización y los futuros pulsos Advance ocurrirán cada 24 ciclos posteriores.Control of this process occurs from Advance and AdvanceLine signals from the MJI 15. When UHRU 13 starts, and after each AdvanceLine pulse, it produce 24 bits, and are timed in the register of 24-bit offset of Buffer 5 via a ShiftWriteEnable signal. Once the 24th bit has been timed, a TransferWriteEnable pulse is provided and it is They generate the next 24 bits. After this, the UHRU 113 wait for the Advance pulse from the MJI. When the Advance pulse, the TransferWriteEnable pulse is provided to the Intermediate Memory 5 118, and the next 24 bits are calculated with before a new wait. In practice, once it has been provided the first Advance pulse, synchronization occurs and future Advance pulses will occur every 24 cycles later.
El proceso de Interpolación Ascendente, Semitono y Reformateo puede ser apreciado en la Figura 46.The Ascending Interpolation process, Halftone and Reformatting can be seen in Figure 46.
La tarea de Semitono se acomete mediante el comparador simple 120 sin signo de 8 bits. Las dos entradas hacia el comparador proceden de la Célula 121 Vibratoria Acumulada y de la Memoria Intermedia 4 117. El orden en que estos valores son presentados al comparador 120 Sin Signo, se determina mediante la Máquina de Estado 122 de Generador de Dirección, la cual asegura que las direcciones en la imagen de resolución 1.280 se emparejan con el orden de segmento orientado requerido para la cabeza de impresión. La Máquina de Estado 122 de Generador de Dirección acomete por lo tanto las tareas de Interpolación Ascendente y Reformateo para la Impresora. En vez de que simplemente acceda una línea completa cada vez a alta resolución, y reformatear después la línea de acuerdo con los requisitos de búsqueda de impresora (como se ha descrito en la Sección 3.2.10), el reformateo se logra mediante el direccionamiento apropiado de la memoria intermedia 117 de contone (Memoria Intermedia 4), y asegurando que el comparador 120 utiliza la búsqueda correcta a partir de la célula 121 vibratoria para emparejar las direcciones acumuladas.The Halftone task is undertaken through the Simple comparator 120 without sign of 8 bits. The two entrances to the comparator comes from the Accumulated Vibratory Cell 121 and the Intermediate Report 4 117. The order in which these values are presented to comparator 120 No Sign, is determined by Address Generator 122 State Machine, which ensures that the addresses in the 1,280 resolution image are matched with the oriented segment order required for the head of Print. The Address Generator 122 State Machine therefore undertakes the tasks of Ascending Interpolation and Reformatting for the Printer. Instead of simply accessing a full line every time at high resolution, and then reformat the line according to the printer search requirements (such as has been described in Section 3.2.10), reformatting is achieved by appropriate addressing of the buffer 117 of contone (Intermediate Memory 4), and ensuring that the comparator 120 uses the correct search from cell 121 vibrating to match the accumulated directions.
La tarea de Semitono es la misma que se ha descrito en la Sección 3.2.9. Sin embargo, puesto que las salidas de puntos se generan en el orden correcto para la cabeza de impresión, el tamaño de la Célula Vibratoria 121 se elige de modo que se divide uniformemente en 800. Por consiguiente, una posición dada de la célula vibratoria para un segmento será la misma para los 7 segmentos restantes. Una célula vibratoria de 50 x 50 proporciona un resultado satisfactorio. Según se ha descrito en la Sección 3.2.9, la misma posición de la célula vibratoria puede ser utilizada para diferentes colores debido al hecho de que las diferentes líneas están siendo generadas al mismo tiempo para cada uno de los colores. El direccionamiento para la célula vibratoria es por lo tanto muy simple. Comenzamos en una fila particular de la célula Vibratoria Acumulada (por ejemplo, la fila 0). La primera entrada de célula utilizada es la Entrada 0. Utilizamos esa entrada 24 veces (24 ciclos) para generar 3 colores para los 8 segmentos, y a continuación avanzamos hasta la Entrada 1 de la fila 0. Después de la Entrada 49, volvemos de nuevo a la Entrada 0. Esto continúa para la totalidad de los 19.200 ciclos con el fin de generar 19.200 puntos. La Unidad de Semitono se interrumpe a continuación y espera por el pulso AdvanceLine que provoca que el generador de dirección avance hasta la siguiente fila de la célula vibratoria.The Halftone task is the same as it has been described in Section 3.2.9. However, since the outputs of points are generated in the correct order for the head of printing, the size of the Vibrating Cell 121 is chosen so which is divided evenly into 800. Therefore, a position given of the vibrating cell for a segment will be the same for the remaining 7 segments. A 50 x 50 vibrating cell It provides a satisfactory result. As described in the Section 3.2.9, the same position of the vibrating cell can be used for different colors due to the fact that the different lines are being generated at the same time for each One of the colors. The address for the vibrating cell is Therefore very simple. We start in a particular row of the Accumulated Vibratory cell (for example, row 0). The first cell input used is Input 0. We use that input 24 times (24 cycles) to generate 3 colors for the 8 segments, and then we advance to Entrance 1 of row 0. After from Entry 49, we return back to Entry 0. This continues for the entire 19,200 cycles in order to generate 19,200 points. The Halftone Unit is interrupted next and waits by the AdvanceLine pulse that causes the address generator advance to the next row of the vibrating cell.
La célula 121 Vibratoria Acumulada se denomina así debido a que difiere de una célula vibratoria regular al tener las líneas impares y pares acumuladas. Esto se debe a que generamos píxeles impares y pares (empezando por el píxel 0) sobre diferentes líneas, y se evita que el Generador de Dirección 122 tenga que avanzar hasta la siguiente fila y volver de nuevo sobre conjuntos alternativos de 24 píxeles. La Figura 25 muestra una célula 93 vibratoria única, y cómo mapearla en una célula 121 vibratoria acumulada del mismo tamaño. Obsérvese que para determinar la "condición de impar" de una posición dada, numeramos los píxeles de una fila dada como 0, 1, 2, etc.The 121 Accumulated Vibratory Cell is called so because it differs from a regular vibrating cell by having odd and even lines accumulated. This is because we generate odd and even pixels (starting with pixel 0) over different lines, and Address Generator 122 is prevented from having to advance to the next row and go back over sets 24 pixel alternatives. Figure 25 shows a cell 93 single vibratory, and how to map it in a vibrational 121 cell cumulative of the same size. Note that to determine the "odd condition" of a given position, we number the pixels of a given row as 0, 1, 2, etc.
El valor de 8 bits procedente de la Memoria Intermedia 4 117, se compara (sin signo) con el valor de 8 bits procedente de la Célula Vibratoria Acumulada 121. Si el valor de píxel de la Memoria Intermedia 4 es mayor, o igual, que el valor de célula vibratoria, se dispone a la salida un bit "1" para el registro de desplazamiento de la Memoria Intermedia 5 118. En otro caso, se dispone a la salida un bit "0" para el registro de desplazamiento de la Memoria Intermedia 5.The 8-bit value from Memory Intermediate 4 117, is compared (unsigned) with the value of 8 bits from Accumulated Vibrating Cell 121. If the value of Pixel of Buffer 4 is greater than or equal to the value of vibrating cell, a "1" bit is set at the output for Intermediate Memory offset record 5 118. In another In this case, a bit "0" is available for the registration of Intermediate Memory offset 5.
Con relación a los 19.200 píxeles contone de semitono, se deben leer los 19.200 píxeles contone. La Unidad 122 de Generador de Dirección realiza esta tarea, generando las direcciones en la Memoria Intermedia 4 117, implementando de forma efectiva la tarea UpInterpolate. La generación de dirección para lectura de la Memoria Intermedia 4, es ligeramente más complicada que la generación de dirección para la célula vibratoria, pero no excesivamente.In relation to the 19,200 pixels contone of halftone, you must read the 19,200 pixels contone. Unit 122 of Generator of Direction performs this task, generating the addresses in Intermediate Memory 4 117, implementing Effect the UpInterpolate task. The address generation for Reading of Intermediate Memory 4, is slightly more complicated that the generation of direction for the vibrating cell, but not excessively.
El Generador de Dirección para leer la Memoria Intermedia 4, empieza solamente una vez la primera línea de la Memoria Intermedia 4 que ha sido escrita. El resto de filas de la Memoria Intermedia 4 son 0, de modo que estarán efectivamente en blanco (sin puntos imprimidos).The Address Generator to read the Report Intermediate 4, begins only once the first line of the Intermediate Report 4 that has been written. The remaining rows of the Intermediate Memory 4 is 0, so they will be effectively in white (no printed dots).
Cada una de las 6 líneas efectivas de salida tiene un registro con un componente entero y fraccional. La porción entera del registro se utiliza para seleccionar qué línea de Memoria Intermedia deberá ser leída para la interpolación ascendente efectiva del color para esos píxeles impares y pares del color particular. Se utilizan 3 contra-píxeles para mantener la posición actual dentro del segmento 0, y se utiliza un único contador temporal P_ADR (dirección de píxel) para la desviación hacia los 7 segmentos restantes.Each of the 6 effective output lines It has a record with an integer and fractional component. Serving Registry integer is used to select which line of Memory Intermediate should be read for ascending interpolation effective color for those odd and even color pixels particular. 3 anti-pixels are used to maintain the current position within segment 0, and a only temporary counter P_ADR (pixel address) for the deviation to the remaining 7 segments.
En resumen, la generación de dirección para la Memoria Intermedia 4 requiere los siguientes registros, como se muestra en la Tabla 24.In short, address generation for the Intermediate Memory 4 requires the following records, as shown in Table 24.
Los valores iniciales para los 6 registros de línea de memoria intermedia, son la distancia física entre boquillas (recuérdese que la componente fraccional es efectivamente una parte divisoria por 5). Por ejemplo, si los puntos de salida impares y pares de un color están separados por una distancia de 1 punto, y las boquillas de un color están separadas de las boquillas del siguiente por 8 puntos, los valores iniciales podrían ser como se muestra en la columna "Primera Línea" de la Tabla 25. Una vez que cada conjunto de 19.200 puntos ha sido generado, cada uno de estos contadores debe incrementarse en 1 componente fraccional, que representa el hecho de que estamos muestreando cada píxel 5 veces en la dimensión vertical. Los valores resultantes serán entonces como se muestra en la columna "Segunda Línea" de la Tabla 25. Obsérvese que 5:4 + 1 = 0:0 puesto que existen solamente 6 líneas de memoria intermedia.Initial values for the 6 records of buffer line, are the physical distance between nozzles (remember that the fractional component is effectively a part divide by 5). For example, if the odd exit points and pairs of a color are separated by a distance of 1 point, and the nozzles of one color are separated from the nozzles of the following by 8 points, the initial values could be as shown in the "First Line" column of Table 25. Once that each set of 19,200 points has been generated, each of these counters must be increased by 1 fractional component, which represents the fact that we are sampling each pixel 5 times in the vertical dimension. The resulting values will then be as shown in the "Second Line" column of Table 25. Note that 5: 4 + 1 = 0: 0 since there are only 6 lines buffer
Los 6 registros de línea de memoria intermedia determinan entonces cuál de las líneas de memoria intermedia debe ser leída para los píxeles impares o pares de un color dado. Para determina cuales de los 1.280 píxeles de resolución media deben ser leídos desde la línea específica de la Memoria Intermedia 4, utilizamos 3 contadores de Dirección de Píxel, uno por cada color, y un solo contador temporal (P_ADR) que se utiliza para la indexación en cada segmento. Cada segmento está separado del siguiente por 800 puntos. En píxeles de resolución media, esta distancia es de 160. Puesto que 800 es visible exactamente por 5, solamente necesitamos utilizar la porción entera de los 3 contadores de Dirección de Píxel. Generamos las 8 direcciones para los píxeles cyan pares, a continuación las 8 direcciones para los de magenta pares, y finalmente las 8 direcciones para los de amarillo pares. A continuación hacemos lo mismo para los píxeles impares de cyan, magenta y amarillo. Este proceso de dos conjuntos de 24 bits, 24 pares y después 24 impares, se realiza 400 veces. A continuación reseteamos los contadores de Dirección de Píxel (X_P_ADR) a 0, y avanzamos los 6 registros de línea de memoria intermedia. Cada 5 avances de línea, la siguiente línea de memoria intermedia está ahora libre y lista para la actualización (mediante el proceso de Convertir en CMY). La Tabla 26 relaciona las etapas de una manera simple.The 6 intermediate memory line records then determine which of the buffer lines should be read for odd or even pixels of a given color. For determines which of the 1,280 pixels of average resolution should be read from the specific line of Intermediate Memory 4, We use 3 Pixel Direction counters, one for each color, and a single temporary counter (P_ADR) that is used for the Indexing in each segment. Each segment is separated from next for 800 points. In medium resolution pixels, this distance is 160. Since 800 is visible by exactly 5, we only need to use the whole portion of the 3 Pixel Address counters. We generate the 8 addresses for the even cyan pixels, then the 8 directions for the of magenta pairs, and finally the 8 addresses for those of yellow pairs. Next we do the same for the pixels Odd cyan, magenta and yellow. This two set process 24 bits, 24 pairs and then 24 odd ones, it is done 400 times. TO Next we reset the Pixel Address counters (X_P_ADR) to 0, and we advance the 6 memory line registers intermediate. Every 5 line advances, the next line of memory intermediate is now free and ready for update (via the process of Convert to CMY). Table 26 lists the stages of a simple way.
El seudo-código para generar las direcciones de la Memoria Intermedia 4 117, se muestra a continuación. Obsérvese que se ha relacionado como un conjunto secuencial de etapas. La Tabla 26 muestra una visión mejor de la naturaleza paralelo de las operaciones durante la generación de dirección.The pseudo-code to generate the Intermediate Memory addresses 4 117, shown at continuation. Note that it has been related as a set sequential stages. Table 26 shows a better view of the parallel nature of operations during the generation of address.
La memoria Intermedia 3 es un conjunto directo de valores R, G, B de 8 bits. Estos valores RGB son píxeles intensificados de resolución media (resolución de 1.280), generados por medio del proceso 65 de Intensificación, y leídos por el proceso 66 de Convertir en CMY.Buffer 3 is a direct set of values R, G, B of 8 bits. These RGB values are pixels. intensified medium resolution (resolution of 1,280), generated through the Intensification process 65, and read by the Process 66 Convert to CMY.
No es necesario doblar la Memoria Intermedia 116 de almacenamiento temporal. Esto se debe a que el proceso 66 de lectura (Convertir en CMY) solamente requiere los valores RGB para los primeros 39 ciclos, mientras que el proceso 65 de escritura (Intensificación) necesita 49 ciclos antes de ser leídos para actualizar realmente los valores RGB.It is not necessary to double Intermediate Memory 116 of temporary storage. This is because process 66 of Read (Convert to CMY) only requires RGB values for the first 39 cycles while the writing process 65 (Intensification) needs 49 cycles before being read to Really update RGB values.
La conversión de RGB a CMY se realiza en el espacio de resolución medio (resolución de 1.280) como se ha descrito en la Sección 3.2.7.The conversion of RGB to CMY is done in the medium resolution space (resolution of 1,280) as has been described in Section 3.2.7.
El proceso 66 de conversión debe producir los píxeles contone 117 de almacenamiento intermedio (Memoria Intermedia 4) a una velocidad suficientemente rápida como para seguir el ritmo del proceso 113 de Interpolación Ascendente-Semitono-Reformateo. Puesto que cada valor contone se utiliza durante 25 ciclos (5 veces en cada una de las dimensiones x e y), el proceso de conversión puede necesitar hasta 25 ciclos. Esto totaliza 75 ciclos para el conjunto de las 3 componentes de color.The conversion process 66 must produce the 117 pixels of buffer buffer (Intermediate Memory 4) at a speed fast enough to keep up of Interpolation process 113 Ascending-Halftone-Reformatting. Since each contone value is used for 25 cycles (5 times in each of the dimensions x and y), the conversion process You may need up to 25 cycles. This totals 75 cycles for the set of the 3 color components.
El procedimiento según ha sido aquí descrito, requiere solamente 14 ciclos por componente de color, con los valores RGB de entrada realmente liberados después de 39 ciclos. Si el proceso se implementa con lógica que requiera acceso a los valores RGB de entrada durante más de 49 ciclos, entonces la Memoria Intermedia 3 116 requerirá un doble almacenamiento intermedio, puesto que son actualizados mediante el proceso 65 de Intensificación después de ese tiempo.The procedure as described here, requires only 14 cycles per color component, with the RGB input values really released after 39 cycles. Yes the process is implemented with logic that requires access to RGB input values for more than 49 cycles, then the Memory Intermediate 3 116 will require double intermediate storage, since they are updated by process 65 of Intensification after that time.
La conversión se realiza como interpolación tri-lineal. Se utilizan tres tablas de búsqueda de 17 x 17 x 17 para el proceso de conversión: RGB a Cyan 90, RGB a Magenta 91 y RGB a Amarillo 92. Sin embargo, puesto que tenemos que realizar 25 ciclos para efectuar cada interpolación tri-lineal, no hay necesidad de ninguna unidad de interpolación tri-lineal rápida. Al contrario, 8 llamadas a un proceso 130 de interpolación lineal es más que adecuado.The conversion is done as interpolation tri-linear Three search tables are used for 17 x 17 x 17 for the conversion process: RGB to Cyan 90, RGB to Magenta 91 and RGB to Yellow 92. However, since we have to perform 25 cycles to perform each interpolation tri-linear, there is no need for any unit of fast tri-linear interpolation. On the contrary, 8 calls to a linear interpolation process 130 is more than suitable.
La generación de dirección para su indexación en las tablas de búsqueda, es directa. Utilizamos los 4 bits más significativos de cada componente de color de 8 bits para la generación de dirección, y los 4 bits menos significativos de cada componente de color de 8 bits para la interpolación entre valores recuperados desde las tablas de conversión. El direccionamiento en la tabla de búsqueda requiere un sumador debido al hecho de que la tabla de búsqueda tiene dimensiones de 17 en vez de 16. Afortunadamente, la multiplicación de un número X de 4 bits por 17 da como resultado un número XX de 8 bits, y por lo tanto no requiere ningún sumador o multiplicador, y la multiplicación de un número de 4 bits por 17^{2} (289) es sólo ligeramente más complicado, requiriendo una única adición.The address generation for indexing in Search tables, is direct. We use the 4 more bits significant of each 8-bit color component for the address generation, and the least significant 4 bits of each 8-bit color component for interpolation between values retrieved from conversion tables. The address in the search table requires an adder due to the fact that the Search table has dimensions of 17 instead of 16. Fortunately, the multiplication of a 4-bit X number by 17 results in an 8-bit XX number, and therefore does not require no adder or multiplier, and the multiplication of a number of 4 bits per 17 2 (289) is only slightly more complicated, requiring a single addition.
Aunque la interpolación podría ser realizada de forma más rápida, utilizamos un simple sumador para generar direcciones y disponer de una unidad de interpolación de un solo ciclo. Por consiguiente, estamos capacitados para calcular la interpolación para la generación de una única componente de color desde el RGB en 14 ciclos, como se muestra en la Tabla 27. El proceso debe ser repetido 3 veces con el fin de generar cyan, magenta y amarillo. Son posibles métodos más rápidos, pero no es necesario.Although interpolation could be performed faster, we use a simple adder to generate addresses and have a single interpolation unit cycle. Therefore, we are trained to calculate the interpolation for the generation of a single color component from the RGB in 14 cycles, as shown in Table 27. The process must be repeated 3 times in order to generate cyan, Magenta and Yellow Faster methods are possible, but it is not necessary.
\vskip1.000000\baselineskip\ vskip1.000000 \ baselineskip
Según se muestra en la Tabla 27, se puede utilizar un solo registro ADR y sumador para la generación de dirección en las tablas de búsqueda. Se pueden utilizar 6 conjuntos de registros de 8 bits para mantener los resultados intermedios: 2 registros mantienen los valores cargados desde las tablas de búsqueda, y 4 registros se utilizan para salida desde la unidad de interpolación. Obsérvese que la entrada a la unidad de interpolación lineal consiste siempre en un par de registros de 8 bits P1/P2, P3/P4, y P5/P6. Esto se hace deliberadamente para reducir la lógica de selección de registro. En el ciclo 14, el registro "V" 131 mantiene el valor de 8 bits finalmente calculado. El resultado de 8 bits puede ser escrito en la posición apropiada en la Memoria Intermedia 4 117 durante el siguiente ciclo.As shown in Table 27, you can use a single ADR register and adder for the generation of address in the search tables. 6 sets can be used of 8-bit registers to maintain intermediate results: 2 records keep the values loaded from the tables of search, and 4 records are used for output from the unit of interpolation. Note that the input to the interpolation unit linear always consists of a pair of 8-bit P1 / P2 registers, P3 / P4, and P5 / P6. This is done deliberately to reduce logic of record selection. In cycle 14, the "V" record 131 keeps the 8-bit value finally calculated. The result of 8 bits can be written in the appropriate position in memory Intermediate 4 117 during the next cycle.
Un diagrama de bloques del proceso 66 de Conversión a CMY, puede ser apreciado en la Figura 48.A block diagram of process 66 of Conversion to CMY, can be seen in Figure 48.
Suponiendo que se ejecuta en primer el proceso para generar cyan, el píxel contone cyan resultante se almacena en la memoria intermedia contone de cyan de resolución 1.280. El proceso se ejecuta nuevamente a continuación sobre la misma entrada RGB para generar el píxel magenta. Este píxel magenta contone se almacena en la memoria intermedia contone de magenta de resolución 1.280. Finalmente, el píxel contone amarillo se genera a partir de la misma entrada RGB, y el píxel resultante amarillo se almacena en la memoria intermedia contone de amarillo de resolución 1.280.Assuming the process is executed first to generate cyan, the resulting cyan contone pixel is stored in the cyan contone buffer of resolution 1.280. He process is executed again then on the same entry RGB to generate the magenta pixel. This magenta pixel contone is stores in the magenta resolution buffer contone 1,280. Finally, the yellow contone pixel is generated from the same RGB input, and the resulting yellow pixel is stored in buffer contains yellow resolution 1,280.
La generación de dirección para escribir en la memoria intermedia contone 117 (Memoria Intermedia 4), es directa. Se utiliza una sola dirección (y los bits ColorSelect que la acompañan) para escribir en cada una de las tres memorias intermedias de color. La memoria intermedia de Cyan es escrita en el ciclo 15, la Magenta en el ciclo 30, y la Amarilla en el ciclo 45. La dirección de píxel se incrementa en1 cada 75 ciclos (después de que la totalidad de los 3 colores han sido escritos). La línea en la que se está escribiendo se incrementa con reiniciación una vez cada 5 pulsos de AdvanceLine. El orden de las líneas que se están escribiendo es simplemente 0-1-2-3-4-5-0-1-2-3 ... etc. De ese modo, las escrituras (25 x 1.280 x 3) se equilibran con las lecturas (19.200 x 5).The address generation to write in the buffer buffer 117 (Buffer 4), is direct. Only one address is used (and the ColorSelect bits that the accompany) to write in each of the three memories color intermediates Cyan's buffer is written in the cycle 15, Magenta in cycle 30, and Yellow in cycle 45. The pixel direction is increased by 1 every 75 cycles (after that all 3 colors have been written). The line in the one that is being written increases with restart once every 5 pulses of AdvanceLine. The order of the lines that are being writing is simply 0-1-2-3-4-5-0-1-2-3 ... etc. That way, the scriptures (25 x 1,280 x 3) are balanced with the readings (19,200 x 5).
La Memoria Intermedia 2 acepta la salida procedente del proceso 112 de Resimple-CreateLuminance, donde se genera un píxel RGB y L completo para una coordenada de píxel dada. La salida de la Memoria Intermedia 2 115 va hasta el proceso 65 de Intensificación, lo que requiere un conjunto de 3 x 3 de valores 135 de luminancia centrados en el píxel que está siendo intensificado.Intermediate Memory 2 accepts the output from process 112 of Resimple-CreateLuminance, where a pixel is generated RGB and full L for a given pixel coordinate. The exit of the Intermediate Memory 2 115 goes to Intensification process 65, which requires a set of 3 x 3 of 135 luminance values centered on the pixel that is being intensified.
Por consiguiente, durante el proceso 66 de intensificación, existe la necesidad de un acceso a la matriz 3 x 3 de valores de luminancia, así como también al valor 136 RGB correspondiente para el píxel central de luminancia. Al mismo tiempo, los siguientes 3 valores de luminancia y el valor central RGB correspondiente deben ser calculados mediante el proceso 112 de Resimple-CreateLuminance. La vista lógica de los accesos a la Memoria Intermedia 2 115 se muestra en la Figura 49.Therefore, during process 66 of intensification, there is a need for 3 x 3 matrix access luminance values, as well as 136 RGB value corresponding for the central luminance pixel. The same time, the following 3 luminance values and the central value Corresponding RGB must be calculated using process 112 of Resimple-CreateLuminance. The logical view of Access to Intermediate Memory 2 115 is shown in Figure 49.
La implementación real de la Memoria Intermedia 2 115 se realiza simplemente como una RAM 4 x 6 (24 entradas) de 8 bits, proporcionando el direccionamiento sobre lectura y escritura el desplazamiento efectivo de valores. Un contador de columna de 2 bits, puede ser incrementado con el reinicio para proporcionar una memoria intermedia cíclica, que implementa de forma efectiva el equivalente de desplazamiento de los datos de la memoria intermedia completa en 1 posición de columna. El hecho de que no tengamos necesidad de la cuarta columna de datos RGB, no es relevante, y simplemente utiliza 3 bytes y el ahorro de no tener que implementar ningún desplazamiento ni lógica de lectura/ escritura complicados. En un ciclo dado, la RAM puede, o bien ser escrita o bien ser leída. Los procesos de lectura y de escritura tienen 75 ciclos para completar con el fin de seguir el ritmo de la cabeza de impresión.The actual implementation of the Intermediate Report 2 115 is performed simply as a 4 x 6 RAM (24 inputs) of 8 bits, providing addressing over read and write the effective displacement of values. A column counter of 2 bits, can be increased with reboot to provide a cyclic buffer, which effectively implements the equivalent offset of buffer data Complete in 1 column position. The fact that we don't have need of the fourth column of RGB data, is not relevant, and simply use 3 bytes and save from not having to implement no displacement or complicated read / write logic. In a given cycle, RAM can either be written or be read. The reading and writing processes have 75 cycles to complete in order to keep pace with the head of Print.
La unidad 65 de Intensificación realiza la tarea de intensificación que se ha descrito en la Sección 3.2.6. Puesto que los píxeles RGB intensificados son almacenados en la Memoria Intermedia 3 116, la Unidad 65 de Intensificación debe seguir el ritmo del proceso 66 de Convertir en CMY, lo que implica que un píxel RGB completo debe ser intensificado dentro de los 745 ciclos.Intensification unit 65 performs the task of intensification described in Section 3.2.6. Market Stall that intensified RGB pixels are stored in Memory Intermediate 3 116, Intensification Unit 65 must follow the rhythm of the process 66 of Converting to CMY, which implies that a Full RGB pixel must be intensified within 745 cycles
El proceso de intensificación incluye un filtro pasa-alto de L (un canal generado a partir de los datos RGB y almacenado en la Memoria Intermedia 2), y añadir el L filtrado de nuevo a las componentes RGB, según se describió en la Tabla 12 dentro de la Sección 3.2.6.2. El filtro pasa-alto utilizado es un filtro pasa-alto básico que utiliza un función de convolución de 3 x 3, como se muestra en la Figura 50.The intensification process includes a filter L-pass (a channel generated from the RGB data and stored in Buffer 2), and add the L filtered back to RGB components, as described in the Table 12 within Section 3.2.6.2. The filter high pass used is a filter basic high pass that uses a function of 3 x 3 convolution, as shown in Figure 50.
El filtro pasa-alto se calcula sobre 10 ciclos. El primer ciclo carga el registro 140 temporal con 8 veces el valor de píxel central (el píxel central desplazado a la izquierda en 3 bits). Los siguientes 8 ciclos restan los 8 valores de píxel restantes, con un fondo de 0. De ese modo, el procedimiento completo puede ser realizado mediante un sumador. El ciclo 10 incluye la multiplicación del resultado por una constante 141. Esta constante es la representación de 1/9, pero es un registro que permite que la cantidad sea alterada mediante software, mediante algún factor escalar.The high pass filter is calculated Over 10 cycles The first cycle loads the temporary register 140 with 8 times the central pixel value (the central pixel shifted to the left in 3 bits). The next 8 cycles subtract the 8 values of pixel remaining, with a background of 0. That way, the procedure Complete can be done by an adder. Cycle 10 it includes the multiplication of the result by a constant 141. This constant is the representation of 1/9, but it is a record that allows the amount to be altered by software, by Some scalar factor.
La cantidad total se añade a continuación a los valores R, G y B (con un techo de 255), y se escriben en la Memoria Intermedia 3 durante los ciclos 72, 73 y 74. Calcular/ escribir los valores RGB intensificados durante los 3 últimos ciclos del conjunto de 75 ciclos, elimina la necesidad de un doble almacenamiento temporal intermedio en la Memoria Intermedia 3.The total amount is then added to the R, G and B values (with a ceiling of 255), and are written in Memory Intermediate 3 during cycles 72, 73 and 74. Calculate / write the RGB values intensified during the last 3 cycles of the set of 75 cycles, eliminates the need for a double Intermediate temporary storage in Intermediate Memory 3.
La estructura de la unidad de Intensificación puede ser apreciada en la Figura 51.The structure of the Intensification unit It can be seen in Figure 51.
La unidad 142 de sumador conectada a la Memoria Intermedia 2 115, es un substractor con un fondo de 0. El TMP 140 se carga con 8 x el primer valor de L durante el ciclo 0 (de 75), y a continuación los siguientes 8 valores de L se restan del mismo. No se pone signo al resultado, puesto que la substracción tiene como fondo 0.The adder unit 142 connected to the Memory Intermedia 2 115, is a subtractor with a bottom of 0. The TMP 140 the first value of L is loaded with 8 x during cycle 0 (of 75), and then the next 8 values of L are subtracted from it. The result is not signed, since the subtraction has as background 0.
Durante el ciclo 10º (Ciclo 9), el total de 11 bits del TMP 140 se multiplica por un actor escalar (típicamente 1/9, pero bajo control de software, de modo que el factor puede ser ajustado), y se escribe de nuevo en el TMP 140. Solamente 8 bits enteros del resultado se escriben en el TMP (la fracción se desecha), de modo que el límite de unidad de multiplicar es 255. Si se utilizan un factor escalar de 1/9, el valor máximo escrito será 226 (255 x 8/9). El factor escalar es 8 bits de fracción, con el bit representando 1/8. El factor escalar variable puede tener en cuenta el hecho de que diferentes formatos de impresión son el resultado de escalar la imagen CFA con una cantidad diferente (y de ese modo, la convolución de 3 x 3 producirá resultados correspondientemente escalados).During the 10th cycle (Cycle 9), the total of 11 bits of the TMP 140 are multiplied by a scalar actor (typically 1/9, but under software control, so that the factor can be set), and rewritten in TMP 140. Only 8 bits integers of the result are written in the TMP (the fraction is discard), so the unit limit of multiplying is 255. Yes a 1/9 scalar factor is used, the maximum written value will be 226 (255 x 8/9). The scalar factor is 8 bits of fraction, with the bit representing 1/8. The variable scalar factor can take into account the fact that different print formats are the result of scale the CFA image with a different amount (and thus, the 3 x 3 convolution will produce correspondingly results scaled).
Los valores intensificados para el rojo, el verde y el azul, se calculan durante el Ciclo 72, el Ciclo 73 y el Ciclo 74, y se escriben en los registros R, G y B de la Memoria Intermedia 3 116, una escritura por ciclo. El cálculo realizado en estos 3 ciclos consiste simplemente en la adición de TMP al R, G y B de la Memoria Intermedia 2 correspondiente al píxel central.The intensified values for red, the green and blue, are calculated during Cycle 72, Cycle 73 and the Cycle 74, and are written in the R, G and B records of the Report Intermediate 3 116, one write per cycle. The calculation made in these 3 cycles simply consist of the addition of TMP to R, G and B of Intermediate Memory 2 corresponding to the central pixel.
La Generación de Dirección es directa. Escribir en la Memoria Intermedia 3 116 es simplemente R, G y B en los ciclos 72, 73 y 74, respectivamente. La lectura en la memoria Intermedia 2 115 hace uso de la naturaleza cíclica de la Memoria 2 Intermedia. La dirección consiste en una componente de columna de 2 bits (que representa cuál de las 4 columnas debe ser leída), y un valor de 3 bits que representa L1, L2, L3, R, G o B. El número de columna empieza por 1 en cada línea, y se incrementa (con reinicio cíclico) cada 75 ciclos. El orden de lectura en la Memoria Intermedia 2 se muestra en la Tabla 28. El registro C es una componente de columna de 2 bits de la dirección. Toda adición sobre C es de módulo 4 (se reinicia cíclicamente dentro de 2 bits).The address generation is direct. to write in Intermediate Memory 3 116 is simply R, G and B in the cycles 72, 73 and 74, respectively. Reading in memory Intermediate 2 115 makes use of the cyclical nature of Memory 2 Intermediate. The address consists of a column component of 2 bits (which represents which of the 4 columns should be read), and a 3-bit value representing L1, L2, L3, R, G or B. The number of column starts with 1 on each line, and increases (with restart cyclic) every 75 cycles. The order of reading in the Memory Intermediate 2 is shown in Table 28. Record C is a 2-bit column component of the address. Any addition on C is module 4 (cyclically restarts within 2 bits).
\vskip1.000000\baselineskip\ vskip1.000000 \ baselineskip
Tras el Ciclo 74, el registro C conserva el número de columna para el siguiente conjunto de cálculo, haciendo así que la búsqueda durante el siguiente Ciclo 0 sea válida.After Cycle 74, register C retains the column number for the next calculation set, making so the search during the next Cycle 0 is valid.
La intensificación puede empezar solamente cuando existan suficientes píxeles L y RGB escritos en la Memoria Intermedia 2 (de modo que el filtro pasa-alto sea válido). El proceso de intensificación debe detenerse por lo tanto hasta que el proceso de escritura de la Memoria Intermedia 2 haya avanzado 3 columnas.Intensification can only begin when there are enough L and RGB pixels written in the Memory Intermediate 2 (so that the high pass filter is valid). The intensification process must therefore stop until the process of writing Intermediate Memory 2 has advanced 3 columns.
La Memoria Intermedia 1 mantiene los píxeles de blanco balanceado y rango expandido a la resolución espacial de captura original. Cada píxel se almacena con 10 bits de resolución de color, en comparación con la resolución de 8 bits por píxel de resolución de color de almacenamiento de imagen de la RAM de imagen.Buffer 1 maintains the pixels of balanced white and expanded range at the spatial resolution of original capture Each pixel is stored with 10 bits of resolution color, compared to the resolution of 8 bits per pixel of RAM image storage color resolution of image.
La Memoria Intermedia 1 está dispuesta como 3 memorias intermedias direccionables por separado: una para cada plano de color del rojo 145, verde 146 y azul 147. Se muestra un compendio simple de las memorias intermedias en la Figura 52.Intermediate Memory 1 is arranged as 3 separately addressable buffers: one for each color plane of red 145, green 146 and blue 147. A simple summary of the buffers in Figure 52.
Durante el transcurso de los 75 ciclos, se leen 16 entradas desde cada una de las 3 memorias intermedias 3 veces por medio del proceso 112 de Remuestreo, y se escriben hasta 29 nuevos valores en las 3 memorias intermedias (el número exacto depende del factor escalar y de la posición actual de sub-píxel durante el remuestreo).During the course of the 75 cycles, they are read 16 entries from each of the 3 buffers 3 times through the resampling process 112, and up to 29 are written new values in the 3 buffers (the exact number it depends on the scalar factor and the current position of sub-pixel during resampling).
Las memorias intermedias deben ser suficientemente amplias como para la lectura y la escritura se pueda realizar sin interferir una con otra. Durante le proceso de lectura, se leen 4 píxeles desde cada una de las 6 filas. Si el factor escalar es muy grande (por ejemplo, escalamos a Panoramic), los mismos píxeles de entrada pueden ser leídos múltiples veces (utilizando una posición de función diferente para el remuestreo). Eventualmente, sin embargo, se requerirán los siguientes píxeles. Si no escalamos tanto, los nuevos píxeles pueden ser requeridos antes de l siguiente ciclo de generación de píxel (es decir, dentro de los 75 ciclos de reloj).Buffers must be wide enough for reading and writing you can perform without interfering with each other. During the process of reading, 4 pixels are read from each of the 6 rows. If he scalar factor is very large (for example, we scale to Panoramic), the same input pixels can be read multiple times (using a different function position for resampling). Eventually, however, the following pixels will be required. If we do not scale so much, new pixels may be required. before the next pixel generation cycle (that is, within of the 75 clock cycles).
Observando los factores escalares de la Tabla 9 y de la Tabla 11, el peor caso para el escalado es el formato 31 Passport:Observing the scalar factors of Table 9 and from Table 11, the worst case for scaling is format 31 Passport:
- \bullet?
- El plano verde tiene un valor \Delta para Passport de 1,5625, lo que indica que 4 posiciones pueden estar contenidas dentro de 6 posiciones de píxel CFA. Sin embargo, cada fila de muestras verdes solamente mantiene cada píxel alterno. Esto significa que solamente se necesitan 4 muestras por fila (el peor caso es 4, no 3, debido al peor caso de posición inicial). El movimiento en Y indica el requisito de una columna de muestra adicional, que hace 5. Finalmente, se requiere una columna de muestra adicional para la escritura. Esto da un total de 6 muestras por fila. Se requieren 7 filas para una muestra simple. Para generar los 3 conjuntos de píxeles RGB para cada posición x, el movimiento máximo en y será de 4 filas (3,125 = 2 x 1,5625). El movimiento X añade una fila de muestra por arriba y por abajo. Por consiguiente, se requiere un total de 13 filas. Para más detalles, véase la Sección 10.2.10. The green plane has a Δ value for Passport of 1.5625, indicating that 4 positions can be contained within 6 pixel positions CFA However, each row of green samples only maintains Each alternate pixel. This means that only 4 are needed. samples per row (the worst case is 4, not 3, due to the worst case of initial position). The Y-movement indicates the requirement of a additional sample column, which does 5. Finally, it is required An additional sample column for writing. This gives a total of 6 samples per row. 7 rows are required for a sample simple. To generate the 3 sets of RGB pixels for each position x, the maximum movement in y will be 4 rows (3,125 = 2 x 1.5625). The X movement adds a sample row above and by down. Therefore, a total of 13 rows is required. For more details, see Section 10.2.10.
- \bullet?
- Los planos rojo y azul tienen un valor \Delta para Passport de 0,78125, lo que indica que 4 posiciones pueden estar contenidas en el interior de 4 muestras. Se requiere una muestra adicional para escribir mientras que las 4 restantes están siendo leídas. Esto da un total de 5 muestras por fila, que se incrementa además hasta 6 muestras para emparejarse con el plano verde (a efectos de arranque). Se requieren 6 filas para proporcionar movimiento en y. Para más detalles, véase la Sección 10.2.10. The red and blue planes they have a Δ Passport value of 0.78125, which indicates that 4 positions can be contained inside 4 samples. An additional sample is required to write while the 4 Remaining are being read. This gives a total of 5 samples per row, which is also increased up to 6 samples to match with the green plane (for start-up purposes). 6 rows are required to provide movement in and. For more details, see Section 10.2.10.
Cada sub-memoria intermedia se implementa como una RAM con descodificación para leer o escribir una muestra simple de 10 bits por ciclo. Las sub-memorias intermedias se han resumido en la Tabla 29, y consumen menos de 200 bytes.Each intermediate sub-memory is implements as a RAM with decoding to read or write a Simple sample of 10 bits per cycle. The Buffers have been summarized in the Table 29, and consume less than 200 bytes.
\vskip1.000000\baselineskip\ vskip1.000000 \ baselineskip
El proceso 112 de Remuestrear y Crear Canal de Luminancia es responsable de la generación del valor de píxel RGB en un espacio de resolución media mediante un remuestreo apropiado de las imágenes planares R, G y B de rango expandido y blanco balanceado, como se describe en la Sección 3.2.5. Adicionalmente, los valores de luminancia para el píxel RGB dado, así como también los valores de luminancia para el píxel por encima y por debajo del píxel RGB, deben ser generados para su uso en el último proceso de intensificación.The 112 Resample and Create Channel Process 112 Luminance is responsible for generating RGB pixel value in a medium resolution space by appropriate resampling of the R, G and B planar images of expanded range and white balanced, as described in Section 3.2.5. Further, luminance values for the given RGB pixel, as well as luminance values for the pixel above and below the RGB pixel, must be generated for use in the last process of intensification.
El tiempo permitido para producir el valor RGB y 3 valores L es de 75 ciclos. Dado que L es simplemente la media del mínimo y el máximo de R, G y B para una posición de píxel dada (véase la Sección 3.2.6.1), debemos producir efectivamente valores RGB para 3 coordenadas de píxel: el píxel en cuestión y el píxel de por encima y por debajo. Así, disponemos de 75 ciclos en los que calcular las 3 muestras RGB de resolución media y sus valores L correspondientes.The time allowed to produce the RGB value and 3 L values is 75 cycles. Since L is simply the average of minimum and maximum of R, G and B for a given pixel position (see Section 3.2.6.1), we must effectively produce values RGB for 3 pixel coordinates: the pixel in question and the pixel of above and below. Thus, we have 75 cycles in which calculate the 3 medium resolution RGB samples and their L values corresponding.
Introducir en memoria intermedia valores L (y por tanto valores RGB) para salvar el recálculo, requiere demasiada memoria, y en cualquier caso, tenemos tiempo suficiente para generar los valores RGB. La Memoria Intermedia 4 117 contiene píxeles de resolución media, pero no pueden ser utilizados debido a que contiene píxeles CMY intensificados (en vez de píxeles RGB no intensificados).Enter L values (and therefore RGB values) to save the recalculation, it requires too much memory, and in any case, we have enough time to generate RGB values. Buffer 4 117 contains pixels of medium resolution, but cannot be used because contains intensified CMY pixels (instead of RGB pixels not intensified).
El proceso de remuestreo puede ser visto como 3 conjuntos de generación RGB, cada uno de los cuales debe ser completado dentro de 25 ciclos (para un tiempo máximo total transcurrido de 75 ciclos). El proceso de generación de un valor RGB simple puede ser visto, a su vez, como 3 procesos realizados en paralelo: el cálculo de R, el cálculo de G, y el cálculo de B, todo ello para una coordenada de píxel de resolución media dada. La teoría para generar cada uno de estos valores, puede ser encontrada en la Sección 3.2.5, pero la conclusión consiste en ejecutar efectivamente tres filtros de reconstrucción de imagen, uno en cada canal de la imagen. En el caso del PCP, realizamos la reconstrucción de imagen con 5 puntos de muestro, requiriendo 4 coeficientes en la función de convolución (puesto que un coeficiente es siempre 0 y de ese modo no se requiere el punto de muestra).The resampling process can be seen as 3 RGB generation sets, each of which must be completed within 25 cycles (for a maximum total time after 75 cycles). The process of generating a value Simple RGB can be seen, in turn, as 3 processes performed in parallel: the calculation of R, the calculation of G, and the calculation of B, all this for a pixel coordinate of given average resolution. The theory to generate each of these values, can be found in Section 3.2.5, but the conclusion is to execute effectively three image reconstruction filters, one in each Image channel In the case of the PCP, we perform the image reconstruction with 5 sampling points, requiring 4 coefficients in the convolution function (since a coefficient is always 0 and thus the point of sample).
Por consiguiente, el cálculo del píxel R de resolución media se consigue ejecutando un filtro de reconstrucción de imagen sobre los datos R. El cálculo del píxel G de resolución media se logra ejecutando un filtro de resolución de imagen sobre los datos G, y el cálculo del píxel B de resolución media se logra ejecutando un filtro de reconstrucción de imagen sobre los datos B. Aunque las funciones son simétricas en x e y, no son iguales para cada plano de color. R y B son probablemente la misma función debido a sus características similares de imagen, pero el plano G, debido a la rotación requerida para la reconstrucción de imagen, debe tener una función diferente. La vista de alto nivel del proceso puede ser apreciada en la Figura 53. La generación de dirección no ha sido mostrada.Therefore, the calculation of pixel R of medium resolution is achieved by running a rebuild filter of image on the data R. The calculation of the pixel G of resolution media is achieved by running an image resolution filter over G data, and the average resolution pixel B calculation is achieved running an image reconstruction filter on the B data. Although the functions are symmetric in x and y, they are not the same for Each color plane. R and B are probably the same function because to its similar image characteristics, but the G plane, because to the rotation required for image reconstruction, you must have A different function. The high level view of the process can be appreciated in Figure 53. The address generation has not been shown.
El proceso de remuestreo puede comenzar solamente cuando existen píxeles suficientes en la Memoria Intermedia 1 para la línea de píxel actual que se está generando. Este será el caso una vez que se hayan escrito 4 columnas de datos en cada uno de los planos de color en la Memoria Intermedia 1 114. El proceso 112 de remuestreo debe detenerse hasta ese momento.The resampling process can begin only when there are enough pixels in Memory Intermediate 1 for the current pixel line that is being generated. This will be the case once 4 columns of data have been written in each of the color planes in Intermediate Memory 1 114. Resampling process 112 must stop until that moment.
Para calcular un valor de píxel de resolución media de un plano de color dado, tenemos de 25 ciclos disponibles. Para aplicar la función área de muestra 4 x 4, aplicamos la función 1D (indexada mediante x) sobre cada una de las 4 filas de 4 muestras de entrada. A continuación aplicamos la función 1D (indexada mediante y) sobre los 4 valores de píxel resultantes. El resultado final es el píxel de salida remuestreado. La aplicación de un único coeficiente a cada ciclo proporciona un total de 16 ciclos para generar los r valores intermedios, y 4 ciclos para generar el valor de píxel final, para un total de 20 ciclos.To calculate a resolution pixel value Average of a given color plane, we have 25 cycles available. To apply the 4x4 sample area function, we apply the function 1D (indexed by x) on each of the 4 rows of 4 input samples. Next we apply the 1D function (indexed by y) on the 4 resulting pixel values. He Final result is the resampled output pixel. The application of a single coefficient for each cycle provides a total of 16 cycles to generate the intermediate r values, and 4 cycles to generate the final pixel value, for a total of 20 cycles.
Con respecto a la precisión, los píxeles de entrada son de 10 bits cada uno de ellos (8:2), y los coeficientes de la función son de 12 bits. Mantenemos 14 bits de precisión durante las 4 etapas de cada aplicación de la función (8:6), pero solamente salvamos 10 bits para el resultado (8:2). Así, se puede utilizar el mismo ingenio de convolución cuando la convolución se realice en x e y. La salida final de R, G o B es de 8 bits.With respect to accuracy, the pixels of input are 10 bits each (8: 2), and the coefficients of the function are 12 bits. We maintain 14 bits of precision during the 4 stages of each application of the function (8: 6), but We only save 10 bits for the result (8: 2). So, you can use the same convolution wit when the convolution is perform in x and y. The final output of R, G or B is 8 bits.
El corazón del proceso de remuestreo lo constituye la Unidad de Convolución 50, como se muestra en la Figura 54.The heart of the resampling process what It constitutes Convolution Unit 50, as shown in Figure 54
El proceso de remuestreo incluye entonces 20 ciclos, como se muestra en la Tabla 30. Obsérvese que la Fila 1, Píxel 1, etc., se refiere a la entrada desde la Memoria Intermedia 1 114, y debe ser tomado en consideración por el mecanismo de direccionamiento (véase más abajo).The resampling process then includes 20 cycles, as shown in Table 30. Note that Row 1, Pixel 1, etc., refers to the entry from the Intermediate Memory 1 114, and must be taken into consideration by the mechanism of addressing (see below).
\vskip1.000000\baselineskip\ vskip1.000000 \ baselineskip
\vskip1.000000\baselineskip\ vskip1.000000 \ baselineskip
Según se ha descrito en la Sección 3.2.6.1,
debemos convertir 80 desde RGB a L para el posterior proceso de
intensificación. Consideramos el espacio de color L*a*b CIE 1976,
donde L es perceptivamente uniforme. Para la conversión desde RGB a
L (el canal de luminancia), promediamos el mínimo y el máximo de R,
G y B, como
sigue:As described in Section 3.2.6.1, we must convert 80 from RGB to L for the subsequent intensification process. We consider the color space L * a * b CIE 1976, where L is perceptually uniform. For the conversion from RGB to L (the luminance channel), we average the minimum and maximum of R, G and B, as
follow:
\vskip1.000000\baselineskip\ vskip1.000000 \ baselineskip
L = \frac{M\text{Í}N(R,G,B) + MÁX(R,G,B)}{2}L = \ frac {M \ text {Í} N (R, G, B) + MAX (R, G, B)} {2}
\vskip1.000000\baselineskip\ vskip1.000000 \ baselineskip
La generación de valores R, G y B de un píxel dado, se realiza en paralelo, tomando 20 ciclos. El tiempo total para la generación de L según se describe aquí, es de 4 ciclos. Esto hace que el tiempo total de generación de un conjunto de píxel RGBL sea de 24 ciclos, con 1 ciclo para compartir (puesto que el proceso debe ser completado dentro de los 25 ciclos).The generation of R, G and B values of a pixel given, it is done in parallel, taking 20 cycles. Total time For the generation of L as described here, it is 4 cycles. This Makes the total generation time of an RGBL pixel set be 24 cycles, with 1 cycle to share (since the process must be completed within 25 cycles).
El valor de L puede ser así escrito de manera segura en la Memoria Intermedia 2 115 en el ciclo 25º. La generación de dirección se describe a continuación.The value of L can be written like this safe in Intermediate Memory 2 115 in the 25th cycle. The generation Address is described below.
Un comparador simple de 8 bits puede producir 3 bits en 3 ciclos, que pueden ser utilizados posteriormente para seleccionar las 2 entradas para el sumador, como se muestra en la Tabla 31. La división por 2 puede ser incorporada de simplemente en el sumador.A simple 8-bit comparator can produce 3 bits in 3 cycles, which can be used later to select the 2 entries for the adder, as shown in the Table 31. The division by 2 can be incorporated simply in the adder.
Puesto que el sumador simplemente añade el valor mínimo al máximo, el orden no es importante. Por consiguiente, de las 2 entradas al sumador, Input1 puede ser una opción entre R y G, mientras que Input2 es una opción entre G y B. La lógica es una minimización de los patrones de bit apropiados de la Tabla 31.Since the adder simply adds the value minimum to maximum, the order is not important. Therefore of the 2 inputs to the adder, Input1 may be an option between R and G, while Input2 is an option between G and B. Logic is a minimization of appropriate bit patterns in Table 31.
La salida desde el Remuestreador es un píxel RGB simple, y 3 píxeles de luminancia (L) centrados verticalmente sobre el píxel RGB. Los 3 valores de L pueden ser escritos en la Memoria Intermedia 2, uno cada 25 ciclos. Los valores R, G y B deben ser escritos después del ciclo 45 y antes del ciclo 50, puesto que el segundo píxel generado es el píxel central cuyos valores RGB deben ser mantenidos. La dirección Buffer2 consiste en un componente de columna de 2 bits (que representa cuál de las 4 columnas ha de ser escrita), y un valor de 3 bits que representa L1, L2, L3, R, G, o B. El número de columna empieza en 0 en cada línea, y se incrementa (con reinicio cíclico) cada 75 ciclos (es decir, después de escribir L3).The output from the resampler is an RGB pixel simple, and 3 pixels of luminance (L) centered vertically on the RGB pixel The 3 values of L can be written in the Memory Intermediate 2, one every 25 cycles. R, G and B values must be written after cycle 45 and before cycle 50, since the second pixel generated is the central pixel whose RGB values must be maintained The Buffer2 address consists of a component of 2-bit column (which represents which of the 4 columns should be written), and a 3-bit value representing L1, L2, L3, R, G, or B. The column number starts at 0 on each line, and increases (with cyclic restart) every 75 cycles (that is, after write L3).
El método de cálculo de la dirección de la función es el mismo que se ha descrito al final de la Sección 3.2.5. Cada función es de 1 dimensión, con 64 entradas en la tabla. Los 6 bits más significativos (truncados) de componente fraccional en el espacio de función actual, se utilizan para indexar en la tabla de coeficientes de función. Para los 16 primeros ciclos, la ordenada X se utiliza para indexar la función, mientras que en los siguientes 4 ciclos se utiliza la ordenada Y. Puesto que la función es simétrica, se puede utilizar la misma función para ambas X e Y.The method of calculating the address of the function is the same as described at the end of Section 3.2.5. Each function is 1 dimension, with 64 entries in the table. The 6 most significant (truncated) bits of fractional component in the Current function space, are used to index in the table of function coefficients For the first 16 cycles, the ordinate X It is used to index the function, while in the following The ordinate Y is used for 4 cycles. Since the function is symmetrically, the same function can be used for both X and Y.
Para cada uno de los 1.280 valores remuestreados, necesitamos producir 3 píxeles: el píxel en cuestión 161, y los píxeles de por encima 160 y por debajo 162 de ese píxel. En vez de generar un píxel central y después moverse arriba y abajo desde el píxel central, generamos un píxel 160 y generamos dos píxeles 161, 162 por debajo del mismo. El segundo píxel 161 generado se toma el píxel central. A continuación volvemos a la fila original y generamos los siguientes 3 píxeles en la siguiente posición de salida. De esta manera, como muestra la Figura 55, generamos 3 píxeles para cada una de las 1.280 posiciones.For each of the 1,280 values resampled, we need to produce 3 pixels: the pixel in question 161, and pixels above 160 and below 162 of that pixel. Instead of generating a central pixel and then moving up and down from the central pixel, we generate a pixel 160 and generate two pixels 161, 162 below it. The second pixel 161 generated the central pixel is taken. Then we return to the row original and we generate the next 3 pixels in the following starting position In this way, as Figure 55 shows, We generate 3 pixels for each of the 1,280 positions.
De ese modo, disponemos de una posición actual en el espacio de la función. Según avanzamos hasta el siguiente píxel en X o Y en el espacio de entrada original, añadimos valores de datos apropiados a estas coordenadas de función. Observando la Figura 56, vemos dos casos de espacio de entrada girado y no girado.That way, we have a current position in the space of the function. As we move on to the next pixel in X or Y in the original input space, we add values of appropriate data to these function coordinates. Observing the Figure 56, we see two cases of rotated entry space and not turned.
Consideremos que el movimiento en X e Y como \DeltaX y \DeltaY, siendo sus valores dependientes del formato de impresión, y por tanto del valor de mps (véase la Sección 3.2.5). Para el canal del verde, \DeltaX = \DeltaY = ½ mps. Para los canales del rojo y del azul, \DeltaX = 1/mps y \DeltaY = 0. Véase la Tabla 9 y la Tabla 11 para valores apropiados de \DeltaX y de \DeltaY.Consider that the movement in X and Y as \ DeltaX and \ DeltaY, their values being format dependent printing, and therefore the value of mps (see Section 3.2.5). For the green channel, ΔX = ΔY = ½ mps. For the Red and blue channels, ΔX = 1 / mps and ΔY = 0. See Table 9 and Table 11 for appropriate values of ΔX and of ΔY.
Ahora podemos aplicar los valores \DeltaX y \DeltaY al movimiento dentro de la función. Por consiguiente, cuando avanzamos en X, añadimos \DeltaX a X y restamos \DeltaY de Y. En el caso no girado, simplemente se resta 0 de Y. De igual modo, cuando avanzados en Y, añadimos \DeltaY a X y \DeltaX a Y. Podemos hacer esto debido a que el movimiento en X y en Y difiere en 90 grados.Now we can apply the values \ DeltaX and ΔY to movement within the function. Therefore, when we advance in X, we add \ DeltaX to X and subtract \ DeltaY of Y. In the case not rotated, simply 0 is subtracted from Y. mode, when advanced in Y, we add \ DeltaY to X and \ DeltaX to Y. We can do this because the movement in X and Y differs in 90 degrees.
La generación de dirección para la búsqueda de función supone una posición de partida establecida mediante software, y dos deltas \DeltaX y \DeltaY con respecto al movimiento en Y en el espacio de la función. La lógica de generación de función se muestra en seudo-código que sigue:The address generation for the search for function assumes a starting position established by software, and two deltas \ DeltaX and \ DeltaY with respect to Y movement in the function space. The logic of function generation is shown in pseudo-code that follow:
Según se muestra en el seudo-código, la generación de 3 píxeles se produce 1.280 veces. Asociadas a la generación de cada píxel, están 2 adiciones, las cuales pueden ser realizadas durante el transcurso de la tarea de 25 ciclos GeneratePixel. Cada tarea GeneratePixel es de 25 ciclos, consistiendo en 4 conjuntos de 4 ciclos que indexan la función por medio de KernelX (coeficientes 0, 1, 2, 3), seguidos de 4 ciclos que indexan la función a través de KernelY (coeficientes 0, 1, 2, 3), seguidos de 9 ciclos de espera.As shown in the pseudo-code, the 3-pixel generation occurs 1,280 times. Associated with the generation of each pixel, there are 2 additions, which can be made during the course of the 25 cycle task GeneratePixel. Each GeneratePixel task is from 25 cycles, consisting of 4 sets of 4 cycles that index the function through KernelX (coefficients 0, 1, 2, 3), followed by 4 cycles that index the function through KernelY (coefficients 0, 1, 2, 3), followed by 9 standby cycles.
Obsérvese que todos los valores son positivos y solamente fraccionales. Las dos realizaciones a partir de la actualización de los valores X e Y de la función, se disponen a la salida para la generación de dirección de la Memoria Intermedia 1 (véase la Sección 10.2.10.5). Estas banderolas de realización indican simplemente si las ordenadas particulares para la función se reiniciaron cíclicamente o no durante la operación matemática. El reinicio cíclico puede ser o bien por encima de 1 o bien por debajo de 0, pero el resultado es siempre positivo.Note that all values are positive and Only fractional. The two embodiments from the update of the X and Y values of the function, are arranged at output for address generation of the Buffer 1 (see Section 10.2.10.5). These banners of realization simply indicate whether the particular ordinates for the function were cyclically restarted or not during the mathematical operation. The cyclic reset can be either above 1 or by below 0, but the result is always positive.
Los dos bits de realización son enviados siempre a la Unidad de Girar/ Balance del Blanco/ Expansión de Rango, para su uso en la determinación de líneas de entrada relativas de la imagen.The two realization bits are always sent to the Rotate Unit / White Balance / Range Expansion, to its use in determining relative input lines of the image.
El Remuestreador 112 lee desde la Memoria Intermedia 1 114, que cosiste en 3 memorias intermedias 145, 146, 147 direccionables individualmente: una por cada plano de color. Cada memoria intermedia puede ser, o bien leída o bien escrita, durante cada ciclo.Resampler 112 reads from Memory Intermediate 1 114, which you sewed in 3 buffers 145, 146, 147 individually addressable: one for each color plane. Each buffer can be either read or written, during each cycle
El proceso de lectura de 75 ciclos se fracciona en 3 conjuntos de 25 ciclos: un conjunto de 25 ciclos para la generación de cada píxel. Cada conjunto de 25 ciclos incluye 16 lecturas de la Memoria Intermedia 1, seguidas de 9 ciclos sin ningún acceso. La Memoria Intermedia 1 se escribe durante estos 9 ciclos. Las 16 lecturas de la Memoria Intermedia 1 114, son efectivamente 4 conjuntos de 4 lecturas, y coinciden con 4 grupos de 4 lecturas en la función para cada plano de color.The 75 cycle reading process is divided in 3 sets of 25 cycles: a set of 25 cycles for the generation of each pixel. Each set of 25 cycles includes 16 Intermediate Memory 1 readings, followed by 9 cycles without no access Intermediate Memory 1 is written during these 9 cycles The 16 readings of Intermediate Memory 1 114, are effectively 4 sets of 4 readings, and match 4 groups of 4 readings in the function for each color plane.
La generación de dirección incluye entonces la generación de 16 direcciones para calcular el primer píxel (seguido de 9 ciclos de espera), la generación de 16 direcciones para calcular el segundo píxel (seguido de 9 ciclos de espera), y finalmente la generación de las 16 direcciones para el tercer píxel (seguido de 9 ciclos de espera).The address generation then includes the 16-way generation to calculate the first pixel (followed 9 standby cycles), generating 16 addresses for calculate the second pixel (followed by 9 standby cycles), and finally generating the 16 addresses for the third pixel (followed by 9 standby cycles).
Cada plano de color tiene sus propios parámetros de dirección de Memoria Intermedia 1 de partida. Según son generados los 3 conjuntos de direcciones para cada una de las 1.280 posiciones a lo largo de la línea, y según avanza el muestreador desde una línea de 1.280 muestras hasta la siguiente, los dos bits de realización procedentes de la Unidad de Generación de Dirección de Función son utilizados para actualizar estos parámetros de dirección de la Memoria Intermedia 1.Each color plane has its own parameters Address of Intermediate Memory 1 starting. As they are generated the 3 sets of addresses for each of the 1,280 positions along the line, and as the sampler advances from a line of 1,280 samples to the next, the two bits of implementation from the Direction Generation Unit Function are used to update these parameters of Intermediate Memory address 1.
La generación de dirección para la sub-memoria intermedia 146 del verde en el interior de la Memoria Intermedia 1 114, es más complicada que en la sub-memoria intermedia 145 del rojo y en la sub-memoria intermedia 147 del azul, por dos razones principales:The address generation for the intermediate sub-memory 146 of the green inside of Intermediate Memory 1 114, is more complicated than in the red buffer 145 of the red and in the sub-buffer 147 of blue, for two main reasons:
- \bullet?
- el canal del verde representa un patrón a modo de tablero de ajedrez en el CFA. Las líneas alterna consisten en píxeles impares o pares solamente. Para remuestrear el canal del verde, debemos girar efectivamente el canal 45 grados. the green channel represents a pattern as a chess board in the CFA. The Alternate lines consist of odd or even pixels only. For resample the green channel, we must effectively turn the 45 degree channel.
- \bullet?
- existe el doble de píxeles verdes que de píxeles rojos o azules. Remuestrear significa la lectura de más muestras en la misma cantidad de tiempo: existen aún 16 muestras leídas para generar cada píxel en el espacio de resolución media, pero existe una probabilidad más alta de hacer avanzar la memoria intermedia cada vez. La probabilidad exacta depende del factor escalar utilizado. there is twice as much green pixels than red or blue pixels. Resample means reading more samples in the same amount of time: there are still 16 samples read to generate each pixel in the space of medium resolution, but there is a higher probability of doing advance the buffer every time. The exact probability It depends on the scalar factor used.
Sin embargo, se utiliza el mismo concepto de utilización de una RAM como memoria intermedia cíclica para el canal del verde. La sub-memoria intermedia del verde es una RAM de 78 entradas con una estructura lógica de 13 filas, conteniendo cada una de ellas 6 entradas. La relación entre la dirección de RAM y la posición lógica se muestra en la Figura 57.However, the same concept of use of a RAM as a cyclic buffer for the green channel. The green sub-buffer it is a RAM of 78 entries with a logical structure of 13 rows, each containing 6 entries. The relationship between RAM address and logical position is shown in Figure 57.
Las muestras en la Memoria Intermedia 1 146 representan un patrón a modo de tablero de ajedrez en el CFA. En consecuencia, las muestras de una fila (por ejemplo, las direcciones 0, 13, 26, 39, 52, 65) pueden representar píxeles impares o pares, dependiendo de la línea actual dentro de la imagen completa, y si la imagen ha sido girada o no en 90 grados. Esto se ilustra en la Figura 58.Samples in Intermediate Memory 1 146 they represent a pattern as a chess board in the CFA. In consequently, the samples in a row (for example, the addresses 0, 13, 26, 39, 52, 65) can represent odd or even pixels, depending on the current line within the entire image, and if the Image has been rotated or not by 90 degrees. This is illustrated in the Figure 58
Por consiguiente, cuando mapeamos un área de muestra de 4 x 4 en la memoria intermedia, existen dos posibilidades para la interpretación de las muestras. Como resultado, existen dos tipos de direccionamiento, dependiendo de si la línea actual está representada por píxeles impares o pares. Esto significa que las filas pares con rotación de imagen 0 tienen el mismo direccionamiento que las filas impares con rotación de imagen 90, puesto que ambas contienen píxeles impares. De igual modo, las filas impares con rotación de imagen 0 tendrán el mismo direccionamiento que las filas pares con rotación de imagen 90, puesto que ambas contienen píxeles pares. La decisión se ha resumido en la Tabla 32.Therefore, when we map an area of 4x4 sample in the buffer, there are two possibilities for the interpretation of the samples. As a result, there are two types of addressing, depending on whether the current line is represented by odd or even pixels. This means that the even rows with image rotation 0 have the same addressing that odd rows with image rotation 90, since both contain odd pixels. Similarly, the odd rows with image rotation 0 will have the same addressing that even rows with image rotation 90, since both contain even pixels. The decision has been summarized in Table 32.
\vskip1.000000\baselineskip\ vskip1.000000 \ baselineskip
La ventana de muestreo rea 4 x 4, es la manera en que giramos efectivamente la memoria intermedia en 45 grados. La rotación de 45 grados es necesaria para el remuestreo efectivo, como se describe en la Sección 3.2.5.The 4 x 4 rea sampling window is the way in which we effectively rotate the buffer by 45 degrees. The 45 degree rotation is necessary for effective resampling, such as It is described in Section 3.2.5.
Suponiendo por el momento que solamente necesitamos generar un remuestreo simple, consideramos el direccionamiento de la memoria intermedia mediante el examen de dos tipos de ventanas de muestreo 4 x 4 como se muestra en la Figura 59.Assuming for the moment that only we need to generate a simple resampling, we consider the addressing the buffer memory by examining two Types of 4x4 sampling windows as shown in Figure 59.
Aunque los dos tipos de muestreo 4 x 4 parecen similares, la diferencia se deriva de la forma en que se representa el mapeo 4 x 4 en la imagen planar. La Figura 60 ilustra el mapeo del muestreo 4 x 4 de Tipo 1 en la sub-memoria intermedia del verde. Solamente las 7 filas superiores y las 4 columnas más a la derecha han sido representadas, puesto que el área de la muestra 4 x 4 está contenida completamente dentro de esta área.Although the two types of 4x4 sampling seem similar, the difference is derived from the way it is represented 4x4 mapping in the planar image. Figure 60 illustrates the mapping of 4x4 sampling of Type 1 in the sub-memory intermediate green. Only the top 7 and 4 rows rightmost columns have been represented, since the 4x4 sample area is completely contained within this area.
El mapeo de píxeles de memoria intermedia para muestrear las filas para el proceso de muestreo de Tipo 2, es muy similar y puede ser apreciado en la Figura 61.Buffer pixel mapping for sample the rows for the Type 2 sampling process, it is very similar and can be seen in Figure 61.
En ambos Tipo 1 y Tipo 2 de direccionamiento de las 16 muestras existen dos formas de procesamiento de una fila. El procesamiento del direccionamiento de las Filas 1 y 3 de Tipo 1 es el mismo (relativamente hablando) que el procesamiento de las filas 2 y 3 de Tipo 2. De igual modo, el procesamiento de las filas 2 y 4 de Tipo 1 es el mismo (relativamente hablando) que el procesamiento de las filas 1 y 3 de Tipo 2. Denominaremos a estos métodos de direccionamiento de fila Tipo A 170 y Tipo B 171, como se muestra en la Figura 62.In both Type 1 and Type 2 addressing The 16 samples have two ways of processing a row. He Addressing processing of Rows 1 and 3 of Type 1 is the same (relatively speaking) as row processing Type 2 and 3 2. Similarly, processing rows 2 and 4 Type 1 is the same (relatively speaking) as the processing of rows 1 and 3 of Type 2. We will name these methods of Type A 170 and Type B 171 row addressing, as shown in Figure 62.
Dada una posición de partida para la ventana 4 x 4 (WindowStartAdr) y un tipo de partida (WindowStartType), podemos generar las direcciones para las 16 muestras por medio de una tabla de 8 entradas (para atravesar los dos conjuntos de 4 muestras). Cuando leemos el primer valor de muestra, añadimos una desviación de la tabla para llegar a la siguiente posición. La desviación dependerá del tipo (A, B = 0, 1). La desviación desde la cuarta muestra es la cantidad necesaria para llegar al primer punto de muestra para la siguiente línea (y debe tener en cuenta el número de columnas de muestra). Tras generar cada fila de 4 muestras, intercambiamos Tipo A y Tipo B. La lógica para generar las direcciones para un conjunto simple de 16 muestras, aparece en el seudo-código que sigue. El módulo 78 de adición proporciona el almacenamiento cíclico.Given a starting position for the 4 x window 4 (WindowStartAdr) and a type of heading (WindowStartType), we can generate the addresses for the 16 samples by means of a table of 8 inputs (to pass through the two sets of 4 samples). When we read the first sample value, we add a deviation of the table to get to the next position. Deviation It will depend on the type (A, B = 0, 1). The deviation from the fourth Sample is the amount needed to reach the first point of Sample for the next line (and you should consider the number of sample columns). After generating each row of 4 samples, we exchange Type A and Type B. The logic to generate the addresses for a simple set of 16 samples, appears in the Pseudo-code that follows. The add module 78 Provides cyclic storage.
La tabla de búsqueda consiste en 8 entradas: 4 para la generación de desviación de dirección de Tipo A 170, y 4 para la de Tipo B 171. Las desviaciones son todas relativas a la posición de muestra actual (Adr).The search table consists of 8 entries: 4 for the generation of address deviation of Type A 170, and 4 for Type B 171. The deviations are all relative to the Current sample position (Adr).
\vskip1.000000\baselineskip\ vskip1.000000 \ baselineskip
Al final de las 16 lecturas, el bit TypeAB será el mismo que el valor original (cargado desde WindowStartType).At the end of the 16 readings, the TypeAB bit will be the same as the original value (loaded from WindowStartType).
Leer un solo conjunto de 16 muestras no es suficiente. Se deben leer tres conjuntos de 16 muestras (que representan 3 posiciones diferentes en Y en el espacio de entrada no girado). Al final del primer y segundo conjuntos de 16 muestras, las posiciones de la función son actualizadas mediante el generador de dirección de función. Los bits de realización de esta actualización son utilizados para establecer la ventana para el siguiente conjunto de 16 muestras. Los dos bits de realización se indexan en la tabla que contiene una desviación y una banderola de 1 bit. La desviación se añade a WindowStartAdr, y la banderola se utiliza para determinar si se invierte o no WindowStartType. Los valores para la tabla se muestran en la Tabla 34.Reading a single set of 16 samples is not enough. Three sets of 16 samples should be read (which represent 3 different positions in Y in the input space not rotated). At the end of the first and second sets of 16 samples, the positions of the function are updated by the generator of function address. The realization bits of this update are used to set the window for the Next set of 16 samples. The two realization bits are indexed in the table that contains a deviation and a banner of 1 bit The deviation is added to WindowStartAdr, and the banner is Use to determine whether or not WindowStartType is reversed. The values for the table are shown in Table 34.
Al final del tercer conjunto de 16 muestras, las posiciones de la función son actualizadas para compensar en avance en X en el espacio de entrada no girado. Esta vez, se produce una dirección de movimiento diferente, por lo que se utiliza una tabla de modificación de Offset/TypeAB diferente. No podemos añadir estas desviaciones al valor WindowStartAdr actual, debido a que representa una posición de dos movimientos en Y hacia fuera de donde deseamos iniciar el movimiento. En consecuencia, cargamos WindowStartAdr y WindowStartType desde otro conjunto de variables: TopStartAdr y TopStartAdr, que representan la primera entrada en la línea actual de 1.280. Las dos banderolas de realización procedentes del generador de dirección de la Función, se utilizan para la búsqueda en la Tabla 35, para determinar la desviación que se ha de añadir a TopStartAdr y si se invierte o no TopStartAdr. Como antes, la adición es el módulo 78 (el tamaño de la RAM del verde). Los resultados se copian en WindowStartAdr y WindowStartType par su uso en la generación de los siguientes 3 conjuntos de 16 muestras.At the end of the third set of 16 samples, the function positions are updated to compensate in advance in X in the input space not rotated. This time, there is a different direction of movement, so a table is used Offset / TypeAB modification different. We can't add these deviations to the current WindowStartAdr value, because represents a position of two Y-movements out of Where we want to start the movement. Consequently, we charge WindowStartAdr and WindowStartType from another set of variables: TopStartAdr and TopStartAdr, which represent the first entry in the current line of 1,280. The two banners of realization from the address generator of the Function, are used for the search in Table 35, to determine the deviation that It has to be added to TopStartAdr and whether or not TopStartAdr is invested. As before, the addition is module 78 (the RAM size of the green). The results are copied to WindowStartAdr and WindowStartType for use in the generation of the following 3 sets of 16 samples.
Tras el procesamiento de los 1.280 conjuntos de 3 conjuntos de 16 muestras, empieza la siguiente línea de 1.280. Sin embargo, la dirección de la primera muestra para la posición 0 dentro de la siguiente línea debe ser determinada. Puesto que las muestras son siempre cargadas en los lugares correctos en la Memoria Intermedia 1, podemos empezar siempre exactamente desde la misma posición en la Memoria Intermedia 1 (es decir, TopStartAdr puede ser cargado de una Position0Adr constante). Sin embargo, debemos preocuparnos sobre qué tipo estamos tratando, puesto que el tipo depende de cuánto avanzamos. Por consiguiente, tenemos un Position0Type inicial que debe ser actualizado dependiendo de las banderolas de real9ización desde el generador de dirección de función. Puesto que nos estamos moviendo en el espacio de entrada Y no girado, la lógica utilizada es la misma que para la actualización del WindowStartType, salvo en que se realiza sobre Position0Type. El nuevo valor para Position0Type se copia en TopStartType, y en WindowStartAdr para empezar el muestreo de la primera posición de la nueva línea.After the processing of the 1,280 sets of 3 sets of 16 samples, the next line of 1,280 begins. However, the address of the first sample for position 0 within the next line must be determined. Since the Samples are always loaded in the correct places in the Memory Intermediate 1, we can always start exactly from it position in Buffer 1 (i.e., TopStartAdr can be loaded from a constant Position0Adr). However, we must worry about what type we are dealing with, since the type It depends on how much we advance. Therefore, we have a Initial Position0Type that must be updated depending on the banners of realization from the address generator of function. Since we are moving in the entrance space AND not turned on, the logic used is the same as for the update of the WindowStartType, except that it is performed on Position0Type. The new value for Position0Type is copied to TopStartType, and in WindowStartAdr to start sampling the First position of the new line.
El proceso de muestreo para una línea de posición de 1.280 dada, no puede empezar hasta que existan entradas suficientes en al Memoria Intermedia 1, situadas ahí por la Unidad de Giro/ Balance del Blanco/ Expansión de Rango. Esto ocurrirá 128 ciclos después de cada nueva línea (véase la Sección 10.2.11).The sampling process for a line of 1,280 position given, cannot start until there are entries sufficient in Intermediate Memory 1, located there by the Unit Turn / White Balance / Range Expansion. This will happen 128 cycles after each new line (see Section 10.2.11).
La sub-memoria intermedia 145 del rojo y la sub-memoria intermedia 147 del azul de la Memoria Intermedia 1, son simplemente 2 RAMs a las que se accede como memorias intermedias cíclicas. Cada memoria intermedia es de 30 bytes, pero tiene una organización lógica de 6 filas, cada una de las cuales contiene 6 entradas. La relación entre la dirección de RAM y la posición lógica, se muestra en la Figura 63.Buffer sub-memory 145 of red and intermediate sub-memory 147 of blue Intermediate Memory 1, are simply 2 RAMs that are accessed as cyclic buffers. Each buffer is of 30 bytes, but it has a logical organization of 6 rows, each of which contains 6 entries. The relationship between the address of RAM and the logical position, is shown in Figure 63.
Para el rojo y el azul, las primeras 16 muestras que han de ser leídas son siempre las 4 x 4 entradas superiores. No se puede tener acceso a las dos columnas de muestras restantes por parte del algoritmo de lectura en esta fase.For red and blue, the first 16 samples to be read are always the 4 x 4 top entries. Do not the two columns of remaining samples can be accessed by part of the reading algorithm in this phase.
Las generación de dirección para estas primeras 16 muestras es simplemente una posición de inicio (en este caso 0) seguido de 16 etapas de módulo 36 de adición, como se muestra en el siguiente seudo-código:The address generation for these first 16 samples is simply a starting position (in this case 0) followed by 16 stages of addition module 36, as shown in the following pseudo-code:
Sin embargo, este mecanismo de generación de dirección es diferente del canal del verde. En vez de diseñar dos mecanismo de dirección, es posible aplicar el esquema de direccionamiento del verde a los canales de rojo y de azul, y simplemente utilizar valores diferentes en las tablas. Esto reduce la complejidad del diseño. La única diferencia entonces, reside en el módulo 36 de adición, en vez del módulo 78 de adición. Esto puede ser proporcionado por un simple multiplexor.However, this mechanism for generating address is different from the green channel. Instead of designing two steering mechanism, it is possible to apply the scheme of addressing from green to red and blue channels, and Simply use different values in the tables. This reduces The complexity of the design. The only difference then, lies in the add module 36, instead of the add module 78. This can Be provided by a simple multiplexer.
Viendo las diversas tablas de dirección para el verde, y considerándolas como aplicadas al rojo y al azul, es evidente que no existe ninguna necesidad de un Tipo, puesto que ambos canales del rojo y del azul no necesitan ser girados 45 grados. De ese modo, podemos ignorar de forma segura el valor Tipo. El equivalente rojo/ azul de la Tabla 33, mostrado en la Tabla 36, posee dos conjuntos de 4 entradas idénticas.Viewing the various address tables for the green, and considering them as applied to red and blue, it is Obviously there is no need for a Type, since both red and blue channels do not need to be turned 45 degrees. That way, we can safely ignore the Type value. The red / blue equivalent of Table 33, shown in Table 36, It has two sets of 4 identical inputs.
Al igual que con la generación de la dirección del verde, nos movemos dos veces en Y antes de avanzar hasta la siguiente entrada de 1.280. Para el rojo y el azul no existe ningún escalado entre el movimiento en el espacio de la función y el movimiento den el espacio de entrada. No existe tampoco ninguna rotación. Según nos movemos en Y, el \DeltaY de 0 se añade a KernelX (véase generación de dirección de función en la Sección 10.2.10.4). Como resultado, nunca se establecerá la realización de KernelX. Mirando la Tabla 34, las únicas ocurrencias posibles son los valores 00 ó 01 KernelX/ KernelY. En el caso de 00, la solución del verde es no cambiar a ninguno de WindowStartAdr ni WindowStartType, de modo que esto es también correcto para el rojo y el azul. En el caso de 01, deseamos añadir 1 a WindowStartAdr, y no hay que tener ningún cuidado acerca de WindowStartType. Los valores del verde pueden ser utilizados por lo tanto de manera segura para el rojo y el azul. El peor caso es el avance en 1 en la dirección ambas veces, dando como resultado un caso peor de solapamiento como se muestra en la Figura 65.As with the address generation of the green, we move twice in Y before moving on to the Next entry of 1,280. For red and blue there is no scaling between the movement in the function space and the movement give the entrance space. There is also none rotation. As we move in Y, the \ DeltaY of 0 is added to KernelX (see generating function address in Section 10.2.10.4). As a result, the realization of KernelX Looking at Table 34, the only possible occurrences are the values 00 or 01 KernelX / KernelY. In the case of 00, the solution green is not to change to any of WindowStartAdr nor WindowStartType, so this is also correct for red and the blue In the case of 01, we want to add 1 to WindowStartAdr, and there is no need to be careful about WindowStartType. The green values can therefore be used so Safe for red and blue. The worst case is the advance in 1 in the address both times, resulting in a worse case of overlap as shown in Figure 65.
Al final del tercer conjunto de 16 muestras, TopStartAdr y TopStartType deben ser actualizados. Puesto que nos estamos moviendo en X (y añadiendo \DeltaY = 0 a KernelY), la realización desde KernelY será siempre 0. El equivalente del rojo/ azul de la Tabla 35 se muestra aquí en la Tabla 37. Obsérvese que no existe ninguna columna de Tipo, puesto que Tipo no es importante para el Rojo o el Azul.At the end of the third set of 16 samples, TopStartAdr and TopStartType must be updated. Since we we are moving in X (and adding \ DeltaY = 0 to KernelY), the realization from KernelY will always be 0. The equivalent of red / Table 35 blue is shown here in Table 37. Note that there is no Type column, since Type is not important for Red or Blue.
El proceso de avance desde una línea de 1.280 conjuntos de 3 píxeles hasta la siguiente, es el mismo que para el verde. La Position0Adr será la misma para el primer conjunto de 16 muestras para una línea dada (Position0Adr = 0 para el rojo y el azul), y Tipo es irrelevante. La generación del rojo y del azul debe iniciarse al mismo tiempo que la generación del verde, de modo que no puede empezar hasta 128 ciclos después del comienzo de una nueva línea (véase la Sección 10.2.11).The advancement process from a 1,280 line sets of 3 pixels until the next one, is the same as for the green. The Position0Adr will be the same for the first set of 16 samples for a given line (Position0Adr = 0 for red and blue), and Type is irrelevant. The red and blue generation must start at the same time as the green generation, so that cannot start up to 128 cycles after the start of a new one line (see Section 10.2.11).
La tarea real de cargar la Memoria Intermedia 1 114 desde la RAM de imagen 111, incluye las etapas de rotación, balance del blanco, y expansión de rango 111, como se describió en la Sección 3.2.3 y en la Sección 3.2.4. Los píxeles deben ser producidos para la Memoria Intermedia 1 lo suficientemente rápidos para su uso por parte del proceso 112 de Remuestreo. Esto significa que durante un grupo simple de 75 ciclos, esta unidad debe estar capacitada para leer, procesar, y almacenar 6 píxeles rojos, 6 píxeles azules y 13 píxeles verdes.The real task of loading the Intermediate Memory 1 114 from image RAM 111, includes the rotation stages, white balance, and expansion of rank 111, as described in Section 3.2.3 and Section 3.2.4. The pixels must be produced for Buffer 1 fast enough for use by the Resampling process 112. This means that during a simple group of 75 cycles, this unit must be capable of reading, processing, and storing 6 red pixels, 6 Blue pixels and 13 green pixels.
La etapa de rotación opcional se acomete con la lectura de los píxeles en el orden apropiado. Una vez que un píxel dado ha sido leído desde el plano apropiado en el almacenamiento de la imagen, debe ser balanceado en el blanco y su valor ajustado de acuerdo con el cálculo de expansión de rango definido en la Sección 3.2.4. El proceso incluye simplemente una única substracción (fondo 0), y una multiplicación (techo 255), ambas frente a constantes específicas del color. La estructura de esta unidad se muestra en la Figura 66.The optional rotation stage is undertaken with the pixel reading in the appropriate order. Once a pixel given has been read from the appropriate plane in the storage of the image must be balanced on the white and its adjusted value of according to the range expansion calculation defined in the Section 3.2.4. The process simply includes a single subtraction (background 0), and a multiplication (ceiling 255), both versus constants color specific The structure of this unit is shown in the Figure 66
Los umbrales 72 bajos del rojo, verde y azul, junto con los factores 173 escalares del rojo, verde y azul, se determinan mediante la CPU 10 tras la generación del histograma para cada plano de color por medio de la Unidad 8 de Histograma de Imagen (véase la Sección 9).The low thresholds 72 of red, green and blue, together with the 173 scalar factors of red, green and blue, it determined by CPU 10 after generating the histogram to each color plane through Unit 8 of Histogram of Image (see Section 9).
Dependiendo de si el píxel actual que está siendo procesado en la línea es rojo, verde o azul, se multiplexan el umbral bajo y el factor escalar apropiados en la unidad de substracción y en la unidad de multiplicación, con la salida escrita en el plano de color apropiado en la Memoria Intermedia 1.Depending on whether the current pixel is being processed on the line is red, green or blue, they are multiplexed the appropriate low threshold and scalar factor in the unit of subtraction and in the multiplication unit, with the output written in the appropriate color plane in the Intermediate Memory one.
La unidad de Substracción 172 substrae el valor de Umbral bajo de 8 bits desde el valor de píxel de RAM de Imagen de 8 bits, y tiene un fondo de 0. El resultado de 8 bits se hace pasar hasta la unidad de multiplicación especializada 8 x 8, la cual multiplica el valor de 8 bits por el factor escalar de 8 bits (8 bits de fracción, parte entera = 1). Solamente se mantienen los 10 bits superiores del resultado, y representan 8 bits de la parte entera y 2 bits de la fracción. El multiplicador 174 tiene un techo de resultado de 255, de modo que si algún bit mayor de 7 bits hubiera sido establecido como resultado de la multiplicación, el resultado de la parte entera completa de 8 bits se establece en 1s, y la parte fraccional se establece en 0.Subtraction unit 172 subtracts the value Low threshold of 8 bits from the pixel value of Image RAM 8 bits, and has a background of 0. The result of 8 bits is made pass to the specialized multiplication unit 8 x 8, the which multiplies the value of 8 bits by the scalar factor of 8 bits (8 fraction bits, integer = 1). Only the Top 10 bits of the result, and represent 8 bits of the part integer and 2 bits of the fraction. The multiplier 174 has a roof 255 result, so if any bit greater than 7 bits would have been established as a result of multiplication, the result of the entire 8-bit integer is set to 1s, and the fractional part is set to 0.
Aparte de la unidad 172 de substracción y de la unidad 174 de multiplicación, la mayor parte del trabajo de esta unidad se realiza mediante el Generador de Dirección 175, el cual constituye efectivamente la máquina de estado para la unidad. La generación de dirección está gobernada por dos factores: en un ciclo dado, solamente se puede realizar un acceso a la RAM 11 de Imagen, y en un ciclo dado, solamente se puede realizar un acceso a la Memoria Intermedia 1 114. De los 75 ciclos disponibles, se utilizan 3 conjuntos de 16 ciclos para la lectura de la Memoria Intermedia 1. El uso real es de 3 conjuntos de 25 ciclos, con 16 lecturas seguidas de 9 ciclos de espera. Eso da un total de 27 ciclos disponibles para 25 escrituras 86 rojas, 6 azules, 6 verdes). Esto significa que se satisfacen las dos restricciones si la temporización de las escrituras en la Memoria Intermedia 1 coincide con los ciclos de espera del Remuestreador 112.Apart from the subtraction unit 172 and the unit 174 of multiplication, most of the work of this unit is done using Address Generator 175, which effectively constitutes the state machine for the unit. The address generation is governed by two factors: in a cycle given, you can only access the Image RAM 11, and in a given cycle, only one access to the Intermediate Memory 1 114. Of the 75 cycles available, they are used 3 sets of 16 cycles for reading the Intermediate Memory 1. The actual use is 3 sets of 25 cycles, with 16 readings followed by 9 standby cycles. That gives a total of 27 cycles available for 25 writings 86 red, 6 blue, 6 green). This means that the two restrictions are satisfied if the Script timing in Intermediate Memory 1 matches with the waiting cycles of the resampler 112.
Una vez que se está ejecutando el proceso de remuestreo, solamente estamos afectados por la escritura en la Memoria Intermedia 1 durante el período en que el Remuestreador 112 no está leyendo en la misma. Puesto que el Remuestreador tiene 3 conjuntos de 16 lecturas cada período de 75 ciclos, existen 27 ciclos disponibles para la escritura. Cuando el remuestreador no está trabajando, deseamos cargar la Memoria Intermedia 1 tan rápido como sea posible, lo que significa una escritura en la Memoria Intermedia 1 114 cada ciclo. La Generación de Dirección para la Memoria Intermedia 1 se ejecuta fuera de una máquina de estado que toma en consideración estos dos casos. Siempre que se cargue un valor desde al RAM de Imagen 111, el valor ajustado se escribe en el color apropiado en la Memoria Intermedia 1 un ciclo más tarde.Once the process is running resampling, we are only affected by writing in the Intermediate Memory 1 during the period in which Resampler 112 He is not reading in it. Since the resampler has 3 sets of 16 readings every period of 75 cycles, there are 27 cycles available for writing. When the resampler does not is working, we want to load Intermediate Memory 1 so fast as possible, which means a write in memory Intermediate 1 114 each cycle. The Generation of Address for the Buffer 1 runs out of a state machine that Take these two cases into consideration. Whenever a value from to Image RAM 111, the adjusted value is written in the appropriate color in Intermediate Memory 1 one more cycle late.
La Generación de Dirección para la Memoria Intermedia 1 incluye por lo tanto un solo contador de dirección para cada una de las sub-memorias intermedias del rojo, el azul y el verde. La dirección inicial para RedAdr, BlueAdr y GreenAdr, es 0 al comienzo de cada línea en cada caso, y después de cada escritura en la Memoria Intermedia 1, la dirección se incrementa en 1, con reinicio cíclico en 36 ó 78, dependiendo de si se está escribiendo en la memoria intermedia el rojo, el verde o el azul. No todos los colores se escriben cada período de 75 ciclos. Una columna de verde requerirá típicamente el rellenado al doble de velocidad que el rojo o el azul, por ejemplo.The Address Generation for Memory Intermediate 1 therefore includes a single address counter for each of the sub-memories of the Red, blue and green. The initial address for RedAdr, BlueAdr and GreenAdr, is 0 at the beginning of each line in each case, and then of each write in Intermediate Memory 1, the address is Increase by 1, with cyclic restart by 36 or 78, depending on whether red, green or red are being written to the buffer blue. Not all colors are written every 75 cycle period. A column of green will typically require refilling to double speed than red or blue, for example.
La lógica se muestra en el seudo-código que sigue:The logic is shown in the Pseudo-code that follows:
\vskip1.000000\baselineskip\ vskip1.000000 \ baselineskip
Cada plano puede ser leído en un de dos orientaciones: girado en 0 o en 90 grados (giro anti-horario). Esto se traduce efectivamente como un acceso a modo de fila o a modo de columna a la imagen planar. Adicionalmente, permitimos la replicación de píxel marginal o el color constante para lecturas fuera de los límites de la imagen, así como también el reinicio cíclico de la imagen para formatos de impresión tales como Passport 31.Each map can be read in one of two orientations: rotated in 0 or 90 degrees (turn anti-schedule) This effectively translates as a row mode or column mode access to the planar image. Additionally, we allow marginal pixel replication or constant color for readings outside the limits of the image, as well as the cyclic restart of the image for formats of Printing such as Passport 31.
Al comienzo de cada línea de impresión debemos leer la ImageRAM 11 para cargar la Buffer1 114 tan rápido como sea posible. Esto equivale a un acceso simple a una muestra de cada ciclo. El remuestreo solamente puede ocurrir una vez que se han cargado 5 columnas, lo que significa 5 columnas de 6, 6, y 13 muestras, durante un total de 125 ciclos. Además de un ciclo extra para el valor final que ha de ser escrito en Buffer1 114 tras haberse cargado desde ImageRAM 11. Para hacer el conteo más fácil, redondeamos hasta 128 ciclos.At the beginning of each print line we must read ImageRAM 11 to load Buffer1 114 as fast as it is possible. This amounts to a simple access to a sample of each cycle. Resampling can only occur once they have been loaded 5 columns, which means 5 columns of 6, 6, and 13 samples, for a total of 125 cycles. In addition to an extra cycle for the final value to be written in Buffer1 114 after have been loaded from ImageRAM 11. To make counting easier, We round up to 128 cycles.
Tras los primeros 128 ciclos, se produce cada 75 ciclos la comprobación del requisito para cargar la siguiente columna de muestras para cada uno de los 3 colores, con las muestras apropiadas cargadas durante los 75 ciclos posteriores. Sin embargo, el establecimiento inicial de si se debe cargar durante el primer conjunto de 75 ciclos es siempre 1 para cada color. Esto permite que la 6ª columna final de cada color dentro de la Memoria Intermedia 1 sea rellenada.After the first 128 cycles, it occurs every 75 cycles checking the requirement to load the next column of samples for each of the 3 colors, with the samples appropriate loads during the subsequent 75 cycles. But nevertheless, the initial setting of whether it should be charged during the first set of 75 cycles is always 1 for each color. This allows that the 6th final column of each color within the Memory Intermediate 1 be filled.
Al final de cada período de 75 ciclos, la banderola KernelXCarryOut de cada plano de color del Generador de Dirección de Función del Remuestreador 112 se comprueba para determinar si la siguiente columna de muestras debe ser leída. De manera similar, un pulso AdvanceLine reinicia el proceso sobre la siguiente línea si KernelYCarryOut ha sido establecida.At the end of each 75 cycle period, the KernelXCarryOut flag of each color plane of the Generator Resampler Function Address 112 is checked for Determine if the next column of samples should be read. From similarly, an AdvanceLine pulse restarts the process on the Next line if KernelYCarryOut has been established.
Puesto que cada "lectura" comprende efectivamente 6 ó 13 lecturas para llenar una columna en la Memoria Intermedia 1, mantenemos una posición inicial con el fin de avanzar hasta la siguiente "lectura". También mantenemos un valor de coordenada para permitir la generación de coordenadas fuera-de-límites que permitan la replicación de píxel marginal, el color constante y el reinicio cíclico de imagen.Since each "reading" includes effectively 6 or 13 readings to fill a column in the Report Intermediate 1, we maintain an initial position in order to move forward until the next "reading". We also maintain a value of coordinate to allow coordinate generation out-of-bounds that allow Marginal pixel replication, constant color and reset cyclic image.
Consideramos la imagen 180 activa como que está dentro de unos límites particulares, con determinadas acciones que han de ser tomadas cuando las coordenadas están fuera del área activa. Las coordenada pueden ser o bien anteriores a la imagen, o bien estar dentro de la imagen, o bien posteriores a la imagen, tanto en términos de líneas como de píxeles. Esto se muestra en la Figura 67, aunque el espacio de fuera de la zona activa ha sido exagerado por motivos de claridad.We consider the active image 180 as being within particular limits, with certain actions that they must be taken when the coordinates are outside the area active The coordinates can be either before the image, or either being inside the image, or after the image, both in terms of lines and pixels. This is shown in the Figure 67, although the space outside the active zone has been exaggerated for reasons of clarity.
Obsérvese que debido a que utilizamos (0, 0) como inicio de la generación de coordenadas, MaxPixel y MaxLine son también conteos de píxel y de línea. Sin embargo, puesto que la generación de dirección se ejecuta desde las realizaciones de la función y los pulsos AdvanceLine desde la MJI 15, estos límites externos no son necesarios. La generación de dirección para una línea simplemente continúa hasta que se recibe el pulso AdvanceLine, y puede incluir replicación marginal, colores constantes para fuera de límites, o reinicio cíclico de píxel de imagen.Note that because we use (0, 0) As the start of coordinate generation, MaxPixel and MaxLine are also pixel and line counts. However, since the address generation is executed from the realizations of the AdvanceLine function and pulses from the MJI 15, these limits External are not necessary. Address generation for a line simply continues until the AdvanceLine pulse is received, and may include marginal replication, constant colors to outside of limits, or cyclic image pixel reset.
Si disponemos de una dirección, Adr, de la muestra actual, y deseamos movernos hasta la siguiente muestra, ya sea sobre la siguiente línea o ya sea sobre la misma línea, las coordenadas de la muestra cambiarán según se espera, pero la forma en que la dirección cambia depende de si estamos reiniciando cíclicamente la imagen activa, y debe producir replicación de píxel marginal cuando se precise.If we have an address, Adr, of the current sample, and we want to move to the next sample, now either on the next line or on the same line, the Sample coordinates will change as expected, but the shape in which direction changes depends on whether we are restarting cyclically the active image, and should produce pixel replication marginal when needed.
Cuando no exista reinicio cíclico de la imagen (es decir, todos los formatos de impresión excepto Passport 31), realizamos las acciones de la Tabla 38 según avanzamos de línea o de píxel. Para girar una imagen en 90 grados, la CPU 10 simplemente cambia los valores \DeltaLine y \Deltapíxel.When there is no cyclic restart of the image (i.e. all print formats except Passport 31), we carry out the actions of Table 38 as we proceed along the line or pixel To rotate an image at 90 degrees, CPU 10 simply change the values \ DeltaLine and \ Deltapixel.
Observando la Tabla 38, la única vez que ADR cambia es mediante \Deltapíxel cuando PixelSense es 0, y mediante \DeltaLine cuando LineSense es 0. Siguiendo estas simples normas, Adr será válida para replicación de píxel marginal. Por supuesto, si se desea un color constante para fuera de las coordenadas de los límites, se puede elegir ese valor en vez del valor almacenado en la dirección apropiada.Observing Table 38, the only time ADR change is using \ Deltapixel when PixelSense is 0, and using \ DeltaLine when LineSense is 0. Following these simple rules, Adr will be valid for marginal pixel replication. Of course, if a constant color is desired outside the coordinates of the limits, you can choose that value instead of the value stored in the appropriate address.
Para permitir el reinicio cíclico, comparamos simplemente el sentido anterior (-, 0, +) para Línea y Píxel con el nuevo sentido. Cuando el sentido es "-", utilizamos el avance según se describe en la Tabla 38, pero cuando la ordenada cae fuera de límites (es decir, moviéndose desde 0 hasta +), actualizamos la AdrTo allow cyclic restart, we compare simply the previous direction (-, 0, +) for Line and Pixel with the new sense When the meaning is "-", we use the advance as described in Table 38, but when the ordinate falls out of limits (that is, moving from 0 to +), we update the Adr
con un nuevo valor que no está basado en un delta. Suponiendo que mantenemos la dirección inicial para la línea actual, de modo que podemos avanzar hasta el inicio de la siguiente línea una vez que la línea actual ha sido generada, podemos hacer lo siguiente:with a new value that is not based on a delta. Assuming we maintain the initial address for the current line, so that we can advance to the beginning of the next line once the current line has been generated, we can do it next:
- \bullet?
- Si el cambio es en Píxel, y el sentido del píxel cambia desde 0 a + (lo que indica que nos hemos ido más allá del borde de la imagen), sustituimos Adr por LineStartAdr y sustituimos Píxel por ActiveStartPixel. Línea se mantiene igual. If the change is in Pixel, and the direction of the pixel changes from 0 to + (indicating that we have gone beyond the edge of the image), we substitute Adr for LineStartAdr and replace Pixel with ActiveStartPixel. Line is It keeps the same.
- \bullet?
- Si el cambio es en Línea, y el sentido cambia desde 0 a + (lo que indica que nos hemos ido más allá del borde de la imagen), restamos DeltaColumn de Adr, y sustituimos Línea por ActiveStartLine. Píxel se mantiene igual. Deltacolumn es la desviación de dirección para generar las direcciones de (Píxel, ActiveStartLine) desde (Píxel, ActiveEndLine-1). If the change is in Line, and the direction changes from 0 to + (which indicates that we have gone beyond the edge of the image), we subtract Adr's DeltaColumn, and we replace Line with ActiveStartLine. Pixel stays the same. Deltacolumn is the direction deviation to generate the addresses of (Pixel, ActiveStartLine) from (Pixel, ActiveEndLine-1).
La lógica para cargar el número de muestras del conjunto (ya sea 6 ó 13, dependiendo del color), se muestra en el seudo-código que sigue.The logic to load the number of samples of the set (either 6 or 13, depending on the color), is shown in the Pseudo-code that follows.
\vskip1.000000\baselineskip\ vskip1.000000 \ baselineskip
\vskip1.000000\baselineskip\ vskip1.000000 \ baselineskip
El establecimiento de tales variables como FirstSampleLine, FirstSamplePixel y FirstSampleAdr se realiza en la sección de generador de dirección que corresponda para realizar banderolas desde el Generador de Dirección de Función, así como también pulsos AdvanceLine desde la MJI. La lógica para esta parte de la generación de dirección se muestra en el siguiente seudo-código:The establishment of such variables as FirstSampleLine, FirstSamplePixel and FirstSampleAdr is performed in the address generator section that corresponds to perform banners from the Function Address Generator, as well as also AdvanceLine pulses from the MJI. The logic for this part of address generation is shown in the following pseudo-code:
\newpage\ newpage
Existe un número de registros que deben ser determinados con anterioridad a la impresión de una imagen. Éstos se resumen aquí en la Tabla 39. Para girar una imagen en 90 grados, simplemente se intercambian los valores DeltaLine y DeltaPixel, y se proporciona un nuevo valor DeltaColumn.There are a number of records that must be determined before printing an image. These are summarized here in Table 39. To rotate an image in 90 degrees, DeltaLine and DeltaPixel values are simply exchanged, and a new DeltaColumn value is provided.
[1] Silverbrook Research, 1998, Authentication of Consumables[1] Silverbrook Research, 1998 , Authentication of Consumables
[2] Silverbrook Research, 1998, Authentication Chip.[2] Silverbrook Research, 1998 , Authentication Chip.
Aunque la invención ha sido descrita con referencia a los ejemplos específicos, los expertos en la materia podrán apreciar que se puede materializar de otras muchas formas. Los párrafos numerados que siguen proporcionan las direcciones con una mejor indicación del alcance de la invención, aunque otras características novedosas y combinación de características aparecerán también claramente a partir de la descripción que sigue.Although the invention has been described with Reference to specific examples, subject matter experts You will appreciate that it can materialize in many other ways. The numbered paragraphs that follow provide the addresses with a better indication of the scope of the invention, although others novel features and combination of features they will also appear clearly from the description that follow.
Claims (23)
yconverting (67) the second data set into a third data set of the predetermined bi-level point resolution that is greater than the predetermined continuous tone resolution of the second data set,
Y
\newpage\ newpage
Applications Claiming Priority (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| AUPQ2890/99 | 1999-09-16 | ||
| AUPQ2890A AUPQ289099A0 (en) | 1999-09-16 | 1999-09-16 | Method and apparatus for manipulating a bayer image |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| ES2282136T3 true ES2282136T3 (en) | 2007-10-16 |
Family
ID=3817055
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| ES00962075T Expired - Lifetime ES2282136T3 (en) | 1999-09-16 | 2000-09-08 | PROCEDURE AND APPARATUS TO PRODUCE A PRINT OF A BAYER IMAGE. |
Country Status (15)
| Country | Link |
|---|---|
| US (18) | US6804030B1 (en) |
| EP (4) | EP1221139B1 (en) |
| JP (4) | JP2003529965A (en) |
| KR (1) | KR100832181B1 (en) |
| CN (2) | CN100361156C (en) |
| AT (4) | ATE355570T1 (en) |
| AU (1) | AUPQ289099A0 (en) |
| CA (4) | CA2384479C (en) |
| DE (3) | DE60033675D1 (en) |
| ES (1) | ES2282136T3 (en) |
| HK (3) | HK1048003A1 (en) |
| MX (1) | MXPA02002881A (en) |
| SG (4) | SG126753A1 (en) |
| WO (4) | WO2001020547A1 (en) |
| ZA (1) | ZA200202872B (en) |
Families Citing this family (146)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US6786420B1 (en) | 1997-07-15 | 2004-09-07 | Silverbrook Research Pty. Ltd. | Data distribution mechanism in the form of ink dots on cards |
| US6618117B2 (en) | 1997-07-12 | 2003-09-09 | Silverbrook Research Pty Ltd | Image sensing apparatus including a microcontroller |
| US7110024B1 (en) | 1997-07-15 | 2006-09-19 | Silverbrook Research Pty Ltd | Digital camera system having motion deblurring means |
| US6624848B1 (en) | 1997-07-15 | 2003-09-23 | Silverbrook Research Pty Ltd | Cascading image modification using multiple digital cameras incorporating image processing |
| US6879341B1 (en) | 1997-07-15 | 2005-04-12 | Silverbrook Research Pty Ltd | Digital camera system containing a VLIW vector processor |
| AUPO802797A0 (en) | 1997-07-15 | 1997-08-07 | Silverbrook Research Pty Ltd | Image processing method and apparatus (ART54) |
| US6985207B2 (en) | 1997-07-15 | 2006-01-10 | Silverbrook Research Pty Ltd | Photographic prints having magnetically recordable media |
| US6690419B1 (en) | 1997-07-15 | 2004-02-10 | Silverbrook Research Pty Ltd | Utilising eye detection methods for image processing in a digital image camera |
| AUPO850597A0 (en) | 1997-08-11 | 1997-09-04 | Silverbrook Research Pty Ltd | Image processing method and apparatus (art01a) |
| US20040119829A1 (en) | 1997-07-15 | 2004-06-24 | Silverbrook Research Pty Ltd | Printhead assembly for a print on demand digital camera system |
| AUPP702098A0 (en) | 1998-11-09 | 1998-12-03 | Silverbrook Research Pty Ltd | Image creation method and apparatus (ART73) |
| AUPQ056099A0 (en) * | 1999-05-25 | 1999-06-17 | Silverbrook Research Pty Ltd | A method and apparatus (pprint01) |
| AUPQ289099A0 (en) * | 1999-09-16 | 1999-10-07 | Silverbrook Research Pty Ltd | Method and apparatus for manipulating a bayer image |
| JP4371566B2 (en) * | 2000-11-22 | 2009-11-25 | キヤノン株式会社 | Color processing apparatus and method |
| JP3684158B2 (en) * | 2001-01-29 | 2005-08-17 | キヤノン株式会社 | Color information processing method and program |
| US7184066B2 (en) * | 2001-05-09 | 2007-02-27 | Clairvoyante, Inc | Methods and systems for sub-pixel rendering with adaptive filtering |
| US7199837B2 (en) * | 2001-11-13 | 2007-04-03 | Ati Technologies, Inc. | System for improved ratiometric expansion and method thereof |
| DE60130671D1 (en) * | 2001-12-24 | 2007-11-08 | St Microelectronics Srl | Method for contrast enhancement in digital color images |
| JP3762319B2 (en) * | 2002-03-15 | 2006-04-05 | キヤノン株式会社 | Image processing method, image processing apparatus, and image processing system |
| EP1351487A3 (en) * | 2002-04-04 | 2007-01-24 | Fuji Photo Film Co. Ltd. | Method, apparatus and program storage medium for color conversion |
| JP3728277B2 (en) * | 2002-06-04 | 2005-12-21 | キヤノン株式会社 | DIGITAL CAMERA, ITS CONTROL METHOD, AND PRINT SYSTEM |
| JP3530847B2 (en) * | 2002-06-04 | 2004-05-24 | キヤノン株式会社 | Printing apparatus, control method therefor, and printing system |
| US6922199B2 (en) * | 2002-08-28 | 2005-07-26 | Micron Technology, Inc. | Full-scene anti-aliasing method and system |
| US7477781B1 (en) * | 2002-10-10 | 2009-01-13 | Dalsa Corporation | Method and apparatus for adaptive pixel correction of multi-color matrix |
| EP1614070B1 (en) * | 2003-01-21 | 2006-12-06 | ELEKTA AB (publ.) | Imaging internal structures |
| US7117138B2 (en) * | 2003-03-14 | 2006-10-03 | Seiko Epson Corporation | Coupled quadrilateral grid level set scheme for piezoelectric ink-jet simulation |
| US7254523B2 (en) * | 2003-03-14 | 2007-08-07 | Seiko Epson Corporation | Selectively reduced bi-cubic interpolation for ink-jet simulations on quadrilateral grids |
| JP4136771B2 (en) | 2003-04-23 | 2008-08-20 | キヤノン株式会社 | COMMUNICATION SYSTEM, COMMUNICATION DEVICE, ITS CONTROL METHOD, AND COMPUTER PROGRAM |
| JP4125172B2 (en) | 2003-04-23 | 2008-07-30 | キヤノン株式会社 | Wireless communication system, wireless communication apparatus, control method therefor, and computer program |
| JP4125173B2 (en) | 2003-04-23 | 2008-07-30 | キヤノン株式会社 | Information processing apparatus connection control method, information processing apparatus, and computer program |
| JP2004341760A (en) * | 2003-05-15 | 2004-12-02 | Ricoh Co Ltd | Image forming apparatus, program, and storage medium |
| US7460684B2 (en) * | 2003-06-13 | 2008-12-02 | Nielsen Media Research, Inc. | Method and apparatus for embedding watermarks |
| US7787927B2 (en) * | 2003-06-20 | 2010-08-31 | Merge Cad Inc. | System and method for adaptive medical image registration |
| US7248268B2 (en) * | 2004-04-09 | 2007-07-24 | Clairvoyante, Inc | Subpixel rendering filters for high brightness subpixel layouts |
| US20050243117A1 (en) * | 2004-04-28 | 2005-11-03 | Jiun-Der Yu | Divergence filters on quadrilateral grids for ink-jet simulations |
| EP1779297A4 (en) | 2004-07-02 | 2010-07-28 | Nielsen Media Res Inc | Methods and apparatus for mixing compressed digital bit streams |
| US9024880B2 (en) * | 2004-08-11 | 2015-05-05 | Pixart Imaging Inc. | Interactive system capable of improving image processing |
| TWI236289B (en) * | 2004-08-11 | 2005-07-11 | Pixart Imaging Inc | Interactive device capable of improving image processing |
| US7355610B2 (en) * | 2004-08-26 | 2008-04-08 | Seiko Epson Corporation | Method and apparatus for expanding image data to create enlarged images for display |
| JP2006157450A (en) * | 2004-11-29 | 2006-06-15 | Sony Corp | Imaging apparatus and image processing method |
| JP4412169B2 (en) * | 2004-12-28 | 2010-02-10 | セイコーエプソン株式会社 | Image processing apparatus, image processing method, program, and recording medium |
| US20060190968A1 (en) * | 2005-01-31 | 2006-08-24 | Searete Llc, A Limited Corporation Of The State Of The State Of Delaware | Sharing between shared audio devices |
| US20060173972A1 (en) * | 2005-01-31 | 2006-08-03 | Searete Llc, A Limited Liability Corporation Of The State Of Delaware | Audio sharing |
| US20060285150A1 (en) * | 2005-01-31 | 2006-12-21 | Searete Llc, A Limited Liability Corporation Of The State Of Delaware | Regional proximity for shared image device(s) |
| US9910341B2 (en) | 2005-01-31 | 2018-03-06 | The Invention Science Fund I, Llc | Shared image device designation |
| US9082456B2 (en) | 2005-01-31 | 2015-07-14 | The Invention Science Fund I Llc | Shared image device designation |
| US20060187227A1 (en) * | 2005-01-31 | 2006-08-24 | Jung Edward K | Storage aspects for imaging device |
| US20060174203A1 (en) * | 2005-01-31 | 2006-08-03 | Searete Llc, A Limited Liability Corporation Of The State Of Delaware | Viewfinder for shared image device |
| US7876357B2 (en) * | 2005-01-31 | 2011-01-25 | The Invention Science Fund I, Llc | Estimating shared image device operational capabilities or resources |
| US20060187230A1 (en) * | 2005-01-31 | 2006-08-24 | Searete Llc | Peripheral shared image device sharing |
| US7920169B2 (en) * | 2005-01-31 | 2011-04-05 | Invention Science Fund I, Llc | Proximity of shared image devices |
| US20060170956A1 (en) | 2005-01-31 | 2006-08-03 | Jung Edward K | Shared image devices |
| US9325781B2 (en) | 2005-01-31 | 2016-04-26 | Invention Science Fund I, Llc | Audio sharing |
| US9124729B2 (en) * | 2005-01-31 | 2015-09-01 | The Invention Science Fund I, Llc | Shared image device synchronization or designation |
| US9489717B2 (en) * | 2005-01-31 | 2016-11-08 | Invention Science Fund I, Llc | Shared image device |
| US8902320B2 (en) * | 2005-01-31 | 2014-12-02 | The Invention Science Fund I, Llc | Shared image device synchronization or designation |
| US20060221197A1 (en) * | 2005-03-30 | 2006-10-05 | Jung Edward K | Image transformation estimator of an imaging device |
| US8606383B2 (en) | 2005-01-31 | 2013-12-10 | The Invention Science Fund I, Llc | Audio sharing |
| US7570810B2 (en) * | 2005-02-24 | 2009-08-04 | Seiko Epson Corporation | Method and apparatus applying digital image filtering to color filter array data |
| JP4375269B2 (en) * | 2005-03-29 | 2009-12-02 | セイコーエプソン株式会社 | Print control method, print control apparatus, and print control program |
| US8452090B1 (en) * | 2005-04-25 | 2013-05-28 | Apple Inc. | Bayer reconstruction of images using a GPU |
| US8681225B2 (en) * | 2005-06-02 | 2014-03-25 | Royce A. Levien | Storage access technique for captured data |
| US20070139529A1 (en) * | 2005-06-02 | 2007-06-21 | Searete Llc, A Limited Liability Corporation Of The State Of Delaware | Dual mode image capture technique |
| US9093121B2 (en) | 2006-02-28 | 2015-07-28 | The Invention Science Fund I, Llc | Data management of an audio data stream |
| US9967424B2 (en) * | 2005-06-02 | 2018-05-08 | Invention Science Fund I, Llc | Data storage usage protocol |
| US9001215B2 (en) * | 2005-06-02 | 2015-04-07 | The Invention Science Fund I, Llc | Estimating shared image device operational capabilities or resources |
| US7782365B2 (en) * | 2005-06-02 | 2010-08-24 | Searete Llc | Enhanced video/still image correlation |
| US10003762B2 (en) | 2005-04-26 | 2018-06-19 | Invention Science Fund I, Llc | Shared image devices |
| US20070008326A1 (en) * | 2005-06-02 | 2007-01-11 | Searete Llc, A Limited Liability Corporation Of The State Of Delaware | Dual mode image capture technique |
| US9451200B2 (en) * | 2005-06-02 | 2016-09-20 | Invention Science Fund I, Llc | Storage access technique for captured data |
| US9819490B2 (en) | 2005-05-04 | 2017-11-14 | Invention Science Fund I, Llc | Regional proximity for shared image device(s) |
| US9942511B2 (en) | 2005-10-31 | 2018-04-10 | Invention Science Fund I, Llc | Preservation/degradation of video/audio aspects of a data stream |
| US20070109411A1 (en) * | 2005-06-02 | 2007-05-17 | Searete Llc, A Limited Liability Corporation Of The State Of Delaware | Composite image selectivity |
| US20090144391A1 (en) * | 2007-11-30 | 2009-06-04 | Searete Llc, A Limited Liability Corporation Of The State Of Delaware | Audio sharing |
| US20070222865A1 (en) * | 2006-03-15 | 2007-09-27 | Searete Llc, A Limited Liability Corporation Of The State Of Delaware | Enhanced video/still image correlation |
| US7508558B2 (en) * | 2005-05-18 | 2009-03-24 | Xerox Corporation | Color printing |
| US7457015B2 (en) * | 2005-05-18 | 2008-11-25 | Xerox Corporation | Color printing |
| US20060274153A1 (en) * | 2005-06-02 | 2006-12-07 | Searete Llc, A Limited Liability Corporation Of The State Of Delaware | Third party storage of captured data |
| JP2007049301A (en) * | 2005-08-08 | 2007-02-22 | Casio Comput Co Ltd | Image processing apparatus and image processing method |
| US7668366B2 (en) * | 2005-08-09 | 2010-02-23 | Seiko Epson Corporation | Mosaic image data processing |
| US20070203595A1 (en) * | 2006-02-28 | 2007-08-30 | Searete Llc, A Limited Liability Corporation | Data management of an audio data stream |
| US7817873B2 (en) * | 2005-11-09 | 2010-10-19 | Intel Corporation | Enhancing contrast of video data while preserving sharpness |
| TWI270846B (en) * | 2005-11-28 | 2007-01-11 | Mstar Semiconductor Inc | Apparatus and method for adjusting f video brightness |
| WO2007095482A1 (en) * | 2006-02-10 | 2007-08-23 | Nik Software, Inc. | Self-adaptive brush for digital images |
| US7626730B2 (en) * | 2006-03-31 | 2009-12-01 | Eastman Kodak Company | Method of making a multilevel halftone screen |
| EP1879147B1 (en) * | 2006-07-11 | 2016-09-21 | Vestel Elektronik Sanayi ve Ticaret A.S. | Method and apparatus for adjusting the contrast of an image |
| US7536285B2 (en) * | 2006-08-14 | 2009-05-19 | Seiko Epson Corporation | Odd times refined quadrilateral mesh for level set |
| EP2958106B1 (en) | 2006-10-11 | 2018-07-18 | The Nielsen Company (US), LLC | Methods and apparatus for embedding codes in compressed audio data streams |
| JP4886463B2 (en) | 2006-10-20 | 2012-02-29 | キヤノン株式会社 | Communication parameter setting method, communication apparatus, and management apparatus for managing communication parameters |
| US7859720B2 (en) | 2006-11-13 | 2010-12-28 | Canon Kabushiki Kaisha | Image forming apparatus and method thereof |
| US7769241B2 (en) * | 2007-01-09 | 2010-08-03 | Eastman Kodak Company | Method of sharpening using panchromatic pixels |
| KR100929349B1 (en) * | 2007-01-30 | 2009-12-03 | 삼성전자주식회사 | Color pixels, image sensors, and color interpolation methods that do not include organic color filters |
| US8565519B2 (en) * | 2007-02-09 | 2013-10-22 | Qualcomm Incorporated | Programmable pattern-based unpacking and packing of data channel information |
| ATE539416T1 (en) * | 2007-02-27 | 2012-01-15 | Phase One As | COLOR BINNING OF A DIGITAL IMAGE |
| US7929807B2 (en) * | 2007-02-27 | 2011-04-19 | Phase One A/S | Colour binning of a digital image to reduce the image resolution |
| US8594451B2 (en) * | 2007-03-30 | 2013-11-26 | Omnivision Technologies, Inc. | Edge mapping incorporating panchromatic pixels |
| JP4948448B2 (en) * | 2008-02-22 | 2012-06-06 | キヤノン株式会社 | Image processing apparatus and control method thereof |
| CN101518982B (en) | 2008-02-29 | 2010-08-25 | 北大方正集团有限公司 | Method and device for image printing |
| JP5786149B2 (en) * | 2008-03-28 | 2015-09-30 | ザ トラスティーズ オブ コロンビア ユニヴァーシティ イン ザ シティ オブ ニューヨーク | Universally packed pixel array camera system and method |
| US8229212B2 (en) * | 2008-04-08 | 2012-07-24 | Qualcomm Incorporated | Interpolation system and method |
| US8165393B2 (en) * | 2008-06-05 | 2012-04-24 | Microsoft Corp. | High dynamic range texture compression |
| US20090322777A1 (en) * | 2008-06-26 | 2009-12-31 | Microsoft Corporation | Unified texture compression framework |
| KR101086501B1 (en) * | 2008-11-26 | 2011-11-25 | 주식회사 하이닉스반도체 | Image data processing method, image sensor and integrated circuit |
| US20100146523A1 (en) * | 2008-12-05 | 2010-06-10 | Tripod Ventures Inc./ Entreprises Tripod Inc. | Browser environment application and local file server application system |
| US8422082B2 (en) * | 2009-07-22 | 2013-04-16 | Eastman Kodak Company | Reducing ink bleed artifacts for RGB images |
| CN102036002B (en) * | 2009-09-24 | 2013-08-28 | 鸿富锦精密工业(深圳)有限公司 | imaging device |
| JP2013509820A (en) | 2009-10-28 | 2013-03-14 | ザ トラスティーズ オブ コロンビア ユニヴァーシティ イン ザ シティ オブ ニューヨーク | Coded rolling shutter method and system |
| US8463074B2 (en) * | 2009-11-11 | 2013-06-11 | General Dynamics Advanced Information Systems | System and method for rotating images |
| US8427500B1 (en) * | 2009-11-17 | 2013-04-23 | Google Inc. | Spatially aware sub-pixel rendering |
| JP2011130241A (en) * | 2009-12-18 | 2011-06-30 | Fujifilm Corp | Imaging apparatus |
| KR101068829B1 (en) | 2009-12-24 | 2011-09-29 | 엠텍비젼 주식회사 | Image pickup device and image rotation processing method |
| KR101635006B1 (en) * | 2010-01-22 | 2016-07-01 | 삼성디스플레이 주식회사 | Method for controling luminance of a light source and display apparatus for performing the method |
| TWI508543B (en) * | 2010-05-06 | 2015-11-11 | Pixart Imaging Inc | Interactive system capable of improving image processing |
| JP2013009293A (en) * | 2011-05-20 | 2013-01-10 | Sony Corp | Image processing apparatus, image processing method, program, recording medium, and learning apparatus |
| JP2013091222A (en) * | 2011-10-25 | 2013-05-16 | Canon Inc | Image formation processing apparatus and image processing method |
| US9313420B2 (en) * | 2012-01-18 | 2016-04-12 | Intel Corporation | Intelligent computational imaging system |
| CN106454285B (en) * | 2015-08-11 | 2019-04-19 | 比亚迪股份有限公司 | White balance adjustment system and adjustment method |
| US10853711B2 (en) | 2016-10-25 | 2020-12-01 | Hewlett-Packard Development Company, L.P. | Dispensing process |
| DE102016225349A1 (en) * | 2016-12-16 | 2018-06-21 | Robert Bosch Gmbh | Method for checking the validity of image data |
| JP2019040403A (en) * | 2017-08-25 | 2019-03-14 | ルネサスエレクトロニクス株式会社 | Semiconductor device and image recognition system |
| WO2019070299A1 (en) * | 2017-10-04 | 2019-04-11 | Google Llc | Estimating depth using a single camera |
| US10692178B2 (en) | 2018-02-22 | 2020-06-23 | Raytheon Company | Spatial radiometric correction of an optical system having a color filter mosaic |
| US10549523B2 (en) * | 2018-03-01 | 2020-02-04 | Ricoh Company, Ltd. | Ink deposition curve computation mechanism |
| JP7301517B2 (en) * | 2018-10-29 | 2023-07-03 | キヤノン株式会社 | Image processing device and image processing method |
| CN109510738B (en) * | 2018-12-14 | 2022-02-22 | 平安壹钱包电子商务有限公司 | Communication link test method and device |
| JP7249857B2 (en) * | 2019-04-24 | 2023-03-31 | 理想科学工業株式会社 | Printing equipment and consumables |
| US12050327B2 (en) | 2019-06-04 | 2024-07-30 | Applied Materials, Inc. | Imaging system and method of manufacturing a metalens array |
| EP3980830A4 (en) | 2019-06-06 | 2023-06-07 | Applied Materials, Inc. | IMAGING SYSTEM AND METHOD FOR CREATING COMPOSITE IMAGES |
| KR20200142883A (en) * | 2019-06-13 | 2020-12-23 | 엘지이노텍 주식회사 | Camera Device and Image Generation Method Of Camera Device |
| KR102137047B1 (en) * | 2019-06-26 | 2020-07-24 | 인천대학교 산학협력단 | Demosaicking method based on back propagation neural network |
| CN110363764B (en) * | 2019-07-23 | 2022-03-11 | 安徽大学 | Method for detecting integrity of running license printing information based on interframe difference |
| JP7326999B2 (en) * | 2019-08-29 | 2023-08-16 | セイコーエプソン株式会社 | Printing device and printing system |
| CN113411556B (en) * | 2020-03-17 | 2023-09-05 | 瑞昱半导体股份有限公司 | Asymmetric image transmission method and electronic device thereof |
| CN111798393A (en) * | 2020-06-30 | 2020-10-20 | 深圳市慧鲤科技有限公司 | Image processing method and device, electronic device and storage medium |
| CN111815547A (en) * | 2020-06-30 | 2020-10-23 | 深圳市慧鲤科技有限公司 | Image processing method and device, electronic device and storage medium |
| CN111953933B (en) * | 2020-07-03 | 2022-07-05 | 北京中安安博文化科技有限公司 | Method, device, medium and electronic equipment for determining fire area |
| EP3975105A1 (en) * | 2020-09-25 | 2022-03-30 | Aptiv Technologies Limited | Method and system for interpolation and method and system for determining a map of a surrounding of a vehicle |
| EP4044110A4 (en) | 2020-10-27 | 2023-02-22 | Samsung Electronics Co., Ltd. | METHOD FOR GENERATING IMAGE DATA WITH REDUCED NOISE AND ELECTRONIC DEVICE FOR IMPLEMENTING SUCH METHOD |
| CN112945205B (en) * | 2021-01-27 | 2022-09-23 | 西北核技术研究所 | Ultrafast multi-frame two-dimensional image detection method and device |
| JP7650171B2 (en) * | 2021-03-11 | 2025-03-24 | キヤノン株式会社 | Information processing device, program, and image processing method |
| JP7606371B2 (en) | 2021-03-11 | 2024-12-25 | キヤノン株式会社 | Image processing system and image processing method |
| JP7653808B2 (en) * | 2021-03-11 | 2025-03-31 | キヤノン株式会社 | Information processing device, program, and image processing method |
| JP7643177B2 (en) * | 2021-05-24 | 2025-03-11 | セイコーエプソン株式会社 | Printing device and method for producing printed matter |
| CN113613007B (en) * | 2021-07-19 | 2024-03-05 | 青岛信芯微电子科技股份有限公司 | Three-dimensional color lookup table generation method and display device |
| CN115941914B (en) * | 2023-01-06 | 2023-05-23 | 湖南马栏山视频先进技术研究院有限公司 | Video rendering system based on video frame analysis |
| CN116843597B (en) * | 2023-08-30 | 2023-11-24 | 南方科技大学 | Discrete point image rapid reconstruction method, device, terminal and storage medium |
Family Cites Families (64)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US751799A (en) * | 1904-02-09 | Means for controlling the operation of locks of elevator-hatchway doors | ||
| US323326A (en) * | 1885-07-28 | Force-feed fertilizer attachment for g rain-dri lls | ||
| US4591900A (en) * | 1983-03-14 | 1986-05-27 | Rca Corporation | Encoding pattern for single chip CCD camera processing scheme |
| JPS6195478A (en) * | 1984-10-16 | 1986-05-14 | Matsushita Electric Ind Co Ltd | Image coordinate transformation processing device |
| US4639769A (en) * | 1985-04-01 | 1987-01-27 | Eastman Kodak Company | Modifying color digital images |
| US4724395A (en) * | 1985-08-05 | 1988-02-09 | Polaroid Corporation | Median filter for reconstructing missing color samples |
| US4841375A (en) * | 1986-05-29 | 1989-06-20 | Kabushiki Kaisha Toshiba | Image-resolution conversion apparatus for converting a pixel-density of image data |
| US4992861A (en) * | 1988-10-18 | 1991-02-12 | Eastman Kodak Company | Color image reproduction apparatus having a digitally operated look-up table constructed by means of a least squares algorithm |
| US4937676A (en) * | 1989-02-10 | 1990-06-26 | Polariod Corporation | Electronic camera system with detachable printer |
| DE69028038T2 (en) * | 1989-05-17 | 1997-01-30 | Minolta Camera Kk | Recording and repro camera |
| JPH0777453B2 (en) * | 1989-09-19 | 1995-08-16 | 株式会社東芝 | Video signal processing circuit |
| JPH03261276A (en) * | 1990-03-12 | 1991-11-21 | Seiko Epson Corp | Print camera |
| JPH0795814B2 (en) * | 1990-07-18 | 1995-10-11 | 富士ゼロックス株式会社 | Color recording device, color signal output device, color signal editing device, color signal storage device, color network system and color copying machine |
| US6246827B1 (en) * | 1990-08-17 | 2001-06-12 | Samsung Electronics Co., Ltd. | Deemphasis and subsequent reemphasis of high-energy reversed-spectrum components of a folded video signal |
| US5121209A (en) * | 1990-10-01 | 1992-06-09 | Rca Licensing Corporation | Sharpness control for a television image |
| US5493409A (en) * | 1990-11-29 | 1996-02-20 | Minolta Camera Kabushiki Kaisha | Still video camera having a printer capable of printing a photographed image in a plurality of printing modes |
| US5237402A (en) * | 1991-07-30 | 1993-08-17 | Polaroid Corporation | Digital image processing circuitry |
| US5339170A (en) * | 1991-12-31 | 1994-08-16 | Xerox Corporation | Image processing system and method employing hybrid filtering to provide improved reconstruction of continuous tone images from halftone screen-structured images |
| US5243444A (en) * | 1992-03-25 | 1993-09-07 | Xerox Corporation | Image processing system and method with improved reconstruction of continuous tone images from halftone images including those without a screen structure |
| US5343309A (en) * | 1992-08-12 | 1994-08-30 | Xerox Corporation | Image processing system and method employing adaptive filtering to provide improved reconstruction of continuous tone images from halftone images including those without a screen structure |
| DE69418512T2 (en) * | 1993-03-08 | 1999-10-28 | Canon Information Systems Research Australia Pty. Ltd., North Ryde | Color conversion device |
| US5374995A (en) * | 1993-03-22 | 1994-12-20 | Eastman Kodak Company | Method and apparatus for enhancing sharpness of a sequence of images subject to continuous zoom |
| US5373322A (en) * | 1993-06-30 | 1994-12-13 | Eastman Kodak Company | Apparatus and method for adaptively interpolating a full color image utilizing chrominance gradients |
| JPH0793563A (en) * | 1993-09-21 | 1995-04-07 | Canon Inc | Image processing device |
| US5363209A (en) * | 1993-11-05 | 1994-11-08 | Xerox Corporation | Image-dependent sharpness enhancement |
| JPH07212574A (en) * | 1994-01-13 | 1995-08-11 | Mita Ind Co Ltd | Picture processor |
| US5471324A (en) * | 1994-04-05 | 1995-11-28 | Xerox Corporation | Color printer calibration with improved color mapping linearity |
| US5671440A (en) * | 1994-08-08 | 1997-09-23 | Eastman Kodak Company | Color image data reorientation and format conversion system |
| US5574572A (en) * | 1994-09-07 | 1996-11-12 | Harris Corporation | Video scaling method and device |
| US5619590A (en) * | 1994-10-06 | 1997-04-08 | Eastman Kodak Company | System for electronic image signal processing to provide a tonescale corrected full resolution luminance and two half resolution chrominance signals |
| JPH08241407A (en) * | 1995-01-31 | 1996-09-17 | Internatl Business Mach Corp <Ibm> | Spatial filter processing system of digital color image |
| US5629734A (en) * | 1995-03-17 | 1997-05-13 | Eastman Kodak Company | Adaptive color plan interpolation in single sensor color electronic camera |
| JPH08317236A (en) * | 1995-05-15 | 1996-11-29 | Canon Inc | Image processing apparatus and method thereof |
| JP3919242B2 (en) * | 1995-07-04 | 2007-05-23 | キヤノン株式会社 | Printing system and control method thereof |
| JPH09212315A (en) * | 1996-02-02 | 1997-08-15 | Fuji Xerox Co Ltd | Network printer |
| JPH09214989A (en) | 1996-02-02 | 1997-08-15 | Naoki Ozawa | Signal interpolating method for image signal |
| DE69737717T2 (en) * | 1996-03-04 | 2008-01-10 | Canon Finetech Inc., Mitsukaido | IMAGE PROCESSOR |
| JP3832089B2 (en) * | 1997-05-26 | 2006-10-11 | セイコーエプソン株式会社 | Digital camera and printing system |
| JP3724882B2 (en) * | 1996-08-14 | 2005-12-07 | シャープ株式会社 | Color solid-state imaging device |
| US5867632A (en) * | 1996-11-07 | 1999-02-02 | Xionics Document Technologies, Inc. | System and method for providing glossy compression and contone/bitonal image conversion |
| US5715234A (en) * | 1996-12-16 | 1998-02-03 | Eastman Kodak Company | Electronic camera and associated printer which uses a display image |
| JPH10304235A (en) * | 1997-04-30 | 1998-11-13 | Ricoh Co Ltd | Imaging device |
| US6459495B1 (en) * | 1997-07-15 | 2002-10-01 | Silverbrook Research Pty Ltd | Dot center tracking in optical storage systems using ink dots |
| SG115466A1 (en) | 1997-07-15 | 2005-10-28 | Silverbrook Res Pty Ltd | Recycling of multi-use digital instant printing camera systems |
| US6152619A (en) * | 1997-07-15 | 2000-11-28 | Silverbrook Research Pty. Ltd. | Portable camera with an ink jet printer and cutting blade |
| US6229565B1 (en) * | 1997-08-15 | 2001-05-08 | Howard H. Bobry | Hand-held electronic camera with integral printer |
| US6628333B1 (en) * | 1997-11-12 | 2003-09-30 | International Business Machines Corporation | Digital instant camera having a printer |
| JPH11150663A (en) * | 1997-11-17 | 1999-06-02 | Nikon Corp | Interpolation device and recording medium recording interpolation processing program |
| JP4178571B2 (en) * | 1997-12-09 | 2008-11-12 | ソニー株式会社 | Image processing apparatus, image processing method, and camera |
| US6392699B1 (en) * | 1998-03-04 | 2002-05-21 | Intel Corporation | Integrated color interpolation and color space conversion algorithm from 8-bit bayer pattern RGB color space to 12-bit YCrCb color space |
| US6078307A (en) * | 1998-03-12 | 2000-06-20 | Sharp Laboratories Of America, Inc. | Method for increasing luminance resolution of color panel display systems |
| US6650366B2 (en) * | 1998-03-26 | 2003-11-18 | Eastman Kodak Company | Digital photography system using direct input to output pixel mapping and resizing |
| US6642956B1 (en) * | 1998-05-29 | 2003-11-04 | Agilent Technologies, Inc. | Digital image processor for a digital camera |
| US6697107B1 (en) * | 1998-07-09 | 2004-02-24 | Eastman Kodak Company | Smoothing a digital color image using luminance values |
| US6205245B1 (en) * | 1998-07-28 | 2001-03-20 | Intel Corporation | Method and apparatus for rapid down-scaling of color images directly from sensor color filter array space |
| JP3695163B2 (en) * | 1998-07-31 | 2005-09-14 | コニカミノルタビジネステクノロジーズ株式会社 | Image forming apparatus |
| US6236433B1 (en) * | 1998-09-29 | 2001-05-22 | Intel Corporation | Scaling algorithm for efficient color representation/recovery in video |
| AUPP702498A0 (en) * | 1998-11-09 | 1998-12-03 | Silverbrook Research Pty Ltd | Image creation method and apparatus (ART77) |
| CA2350712C (en) * | 1998-11-13 | 2004-05-25 | Cnh Canada, Ltd./Cnh Canada, Ltee | Method for color detection in video images |
| US6571021B1 (en) * | 1999-01-29 | 2003-05-27 | International Business Machines Corporation | Recovering an invisible digital image from a distorted image replica |
| AUPQ289099A0 (en) * | 1999-09-16 | 1999-10-07 | Silverbrook Research Pty Ltd | Method and apparatus for manipulating a bayer image |
| US6466618B1 (en) * | 1999-11-19 | 2002-10-15 | Sharp Laboratories Of America, Inc. | Resolution improvement for multiple images |
| US6804408B1 (en) * | 1999-12-22 | 2004-10-12 | Eastman Kodak Company | Method for enhancing a digital image with noise-dependent control of texture |
| US6573932B1 (en) * | 2002-03-15 | 2003-06-03 | Eastman Kodak Company | Method for automatic white balance of digital images |
-
1999
- 1999-09-16 AU AUPQ2890A patent/AUPQ289099A0/en not_active Abandoned
-
2000
- 2000-09-08 HK HK03100063.9A patent/HK1048003A1/en unknown
- 2000-09-08 JP JP2001524055A patent/JP2003529965A/en active Pending
- 2000-09-08 KR KR1020027003534A patent/KR100832181B1/en not_active Expired - Fee Related
- 2000-09-08 DE DE60033675T patent/DE60033675D1/en not_active Expired - Lifetime
- 2000-09-08 EP EP00962075A patent/EP1221139B1/en not_active Expired - Lifetime
- 2000-09-08 AT AT00962074T patent/ATE355570T1/en not_active IP Right Cessation
- 2000-09-08 SG SG200401428A patent/SG126753A1/en unknown
- 2000-09-08 CA CA2384479A patent/CA2384479C/en not_active Expired - Fee Related
- 2000-09-08 JP JP2001524057A patent/JP4576084B2/en not_active Expired - Fee Related
- 2000-09-08 JP JP2001524056A patent/JP2003509932A/en active Pending
- 2000-09-08 SG SG200401430-4A patent/SG147279A1/en unknown
- 2000-09-08 MX MXPA02002881A patent/MXPA02002881A/en active IP Right Grant
- 2000-09-08 HK HK03100064.8A patent/HK1048004A1/en unknown
- 2000-09-08 CA CA2384541A patent/CA2384541C/en not_active Expired - Fee Related
- 2000-09-08 WO PCT/AU2000/001073 patent/WO2001020547A1/en not_active Ceased
- 2000-09-08 JP JP2001524054A patent/JP4339543B2/en not_active Expired - Fee Related
- 2000-09-08 DE DE60033677T patent/DE60033677T2/en not_active Expired - Lifetime
- 2000-09-08 EP EP00967420A patent/EP1221140B1/en not_active Expired - Lifetime
- 2000-09-08 WO PCT/AU2000/001076 patent/WO2001020550A1/en not_active Ceased
- 2000-09-08 CA CA2384543A patent/CA2384543C/en not_active Expired - Fee Related
- 2000-09-08 CN CNB2005100003551A patent/CN100361156C/en not_active Expired - Fee Related
- 2000-09-08 ES ES00962075T patent/ES2282136T3/en not_active Expired - Lifetime
- 2000-09-08 SG SG200401429A patent/SG124275A1/en unknown
- 2000-09-08 CA CA2384485A patent/CA2384485C/en not_active Expired - Fee Related
- 2000-09-08 DE DE60043941T patent/DE60043941D1/en not_active Expired - Lifetime
- 2000-09-08 AT AT00967420T patent/ATE459942T1/en not_active IP Right Cessation
- 2000-09-08 WO PCT/AU2000/001075 patent/WO2001020549A1/en not_active Ceased
- 2000-09-08 SG SG200401425-4A patent/SG147278A1/en unknown
- 2000-09-08 AT AT00962076T patent/ATE284065T1/en not_active IP Right Cessation
- 2000-09-08 CN CNB008143633A patent/CN1192326C/en not_active Expired - Fee Related
- 2000-09-08 EP EP00962074A patent/EP1221138B1/en not_active Expired - Lifetime
- 2000-09-08 HK HK03100062.0A patent/HK1048002A1/en unknown
- 2000-09-08 EP EP00962076A patent/EP1266357B1/en not_active Expired - Lifetime
- 2000-09-08 WO PCT/AU2000/001074 patent/WO2001020548A1/en not_active Ceased
- 2000-09-08 AT AT00962075T patent/ATE355571T1/en not_active IP Right Cessation
- 2000-09-11 US US09/659,620 patent/US6804030B1/en not_active Expired - Lifetime
- 2000-09-11 US US09/659,835 patent/US6683996B1/en not_active Expired - Lifetime
- 2000-09-11 US US09/659,837 patent/US6771811B1/en not_active Expired - Lifetime
- 2000-09-11 US US09/659,836 patent/US6807315B1/en not_active Expired - Lifetime
-
2002
- 2002-04-12 ZA ZA200202872A patent/ZA200202872B/en unknown
-
2004
- 2004-08-02 US US10/902,858 patent/US6965691B2/en not_active Expired - Fee Related
- 2004-08-02 US US10/902,880 patent/US7058219B2/en not_active Expired - Fee Related
- 2004-09-07 US US10/934,490 patent/US7304771B2/en not_active Expired - Fee Related
- 2004-09-07 US US10/934,489 patent/US7271936B2/en not_active Expired - Fee Related
- 2004-09-20 US US10/943,921 patent/US7187807B2/en not_active Expired - Fee Related
- 2004-09-20 US US10/943,977 patent/US7289681B2/en not_active Expired - Lifetime
-
2005
- 2005-08-08 US US11/198,233 patent/US7181063B2/en not_active Expired - Fee Related
-
2006
- 2006-01-25 US US11/338,783 patent/US7366351B2/en not_active Expired - Fee Related
- 2006-11-24 US US11/603,823 patent/US7471413B2/en not_active Expired - Fee Related
-
2007
- 2007-01-08 US US11/650,536 patent/US7349572B2/en not_active Expired - Lifetime
-
2008
- 2008-02-04 US US12/025,633 patent/US7787163B2/en not_active Expired - Fee Related
- 2008-11-23 US US12/276,402 patent/US7558443B2/en not_active Expired - Fee Related
-
2009
- 2009-06-04 US US12/478,728 patent/US7936918B2/en not_active Expired - Fee Related
-
2011
- 2011-03-14 US US13/046,773 patent/US20110164286A1/en not_active Abandoned
Also Published As
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| ES2282136T3 (en) | PROCEDURE AND APPARATUS TO PRODUCE A PRINT OF A BAYER IMAGE. | |
| AU2003270972B2 (en) | Method and apparatus for sharpening an image | |
| AU778006B2 (en) | Method and apparatus for sharpening an image | |
| AU2003262338B2 (en) | Method and apparatus for up-interpolating a bayer image | |
| AU2003262337B2 (en) | Method and apparatus for producing print from a bayer image | |
| AU766175B2 (en) | Method and apparatus for up-interpolating a bayer image |