WO2011108290A2 - 画像処理装置、および画像処理方法、並びにプログラム - Google Patents

画像処理装置、および画像処理方法、並びにプログラム Download PDF

Info

Publication number
WO2011108290A2
WO2011108290A2 PCT/JP2011/050043 JP2011050043W WO2011108290A2 WO 2011108290 A2 WO2011108290 A2 WO 2011108290A2 JP 2011050043 W JP2011050043 W JP 2011050043W WO 2011108290 A2 WO2011108290 A2 WO 2011108290A2
Authority
WO
WIPO (PCT)
Prior art keywords
pixel
edge
information
unit
parameter calculation
Prior art date
Application number
PCT/JP2011/050043
Other languages
English (en)
French (fr)
Inventor
泰 斎藤
功 広田
Original Assignee
ソニー株式会社
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by ソニー株式会社 filed Critical ソニー株式会社
Priority to CN201180011437.XA priority Critical patent/CN103238335B/zh
Priority to US13/581,784 priority patent/US8948506B2/en
Priority to EP11750403.5A priority patent/EP2544452A4/en
Publication of WO2011108290A2 publication Critical patent/WO2011108290A2/ja

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T3/00Geometric image transformation in the plane of the image
    • G06T3/40Scaling the whole image or part thereof
    • G06T3/4015Demosaicing, e.g. colour filter array [CFA], Bayer pattern
    • G06T5/90
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N23/00Cameras or camera modules comprising electronic image sensors; Control thereof
    • H04N23/80Camera processing pipelines; Components thereof
    • H04N23/84Camera processing pipelines; Components thereof for processing colour signals
    • H04N23/843Demosaicing, e.g. interpolating colour pixel values
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N25/00Circuitry of solid-state image sensors [SSIS]; Control thereof
    • H04N25/10Circuitry of solid-state image sensors [SSIS]; Control thereof for transforming different wavelengths into image signals
    • H04N25/11Arrangement of colour filter arrays [CFA]; Filter mosaics
    • H04N25/13Arrangement of colour filter arrays [CFA]; Filter mosaics characterised by the spectral characteristics of the filter elements
    • H04N25/133Arrangement of colour filter arrays [CFA]; Filter mosaics characterised by the spectral characteristics of the filter elements including elements passing panchromatic light, e.g. filters passing white light
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N25/00Circuitry of solid-state image sensors [SSIS]; Control thereof
    • H04N25/10Circuitry of solid-state image sensors [SSIS]; Control thereof for transforming different wavelengths into image signals
    • H04N25/11Arrangement of colour filter arrays [CFA]; Filter mosaics
    • H04N25/13Arrangement of colour filter arrays [CFA]; Filter mosaics characterised by the spectral characteristics of the filter elements
    • H04N25/135Arrangement of colour filter arrays [CFA]; Filter mosaics characterised by the spectral characteristics of the filter elements based on four or more different wavelength filter elements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N2209/00Details of colour television systems
    • H04N2209/04Picture signal generators
    • H04N2209/041Picture signal generators using solid-state devices
    • H04N2209/042Picture signal generators using solid-state devices having a single pick-up sensor
    • H04N2209/045Picture signal generators using solid-state devices having a single pick-up sensor using mosaic colour filter
    • H04N2209/046Colour interpolation to calculate the missing colour values

Definitions

  • the present invention relates to an image processing apparatus, an image processing method, and a program.
  • the present invention relates to an image processing apparatus, an image processing method, and a program for performing signal processing on the output of an image sensor having an RGBW array.
  • an image pickup device used in an image pickup apparatus has a configuration in which a color filter that transmits specific wavelength component light (R, G, B) in units of each pixel is attached to the surface of the device.
  • a filter having an RGB arrangement as shown in FIG.
  • a process for restoring a necessary color component is performed by a set of a plurality of pixels.
  • RGB red
  • G green
  • B blue
  • FIG. 1B shows an example of a filter having an RGBW arrangement.
  • the W pixel in the RGBW array shown in FIG. 1B is a filter that transmits light in the visible light range widely.
  • Patent Document 1 US Published Patent 2007/0024879
  • Patent Document 2 US Published Patent 2007/0024934
  • image sensor image sensor
  • FIG. 1B By using an image sensor (image sensor) having a color filter having white (W) pixels as shown in FIG. 1B, the transmitted light rate of the filter is increased, and high sensitivity can be realized.
  • Each of the RGB array shown in FIG. 1A or the RGBW array shown in FIG. 1B is a single element in which any of R, G, B, and W filters are arranged in a mosaic pattern, that is, a single plate type. It is an image sensor. Therefore, when generating a color image, demosaic processing as color coding for generating RGB pixel values corresponding to each pixel is required.
  • the sampling rates of the R, G, and B components are lower than in the RGB array shown in FIG.
  • the white (W) wavelength component includes all R, G, and B wavelength components
  • the light collection rate of the RGB wavelength component is lower than that of the monochromatic component.
  • the resolution is lowered. This problem becomes more prominent as the pixels become finer.
  • each pixel of the single-plate image sensor has only information on a single color component, so that RGB pixel values corresponding to all pixels are obtained in order to obtain a color image from discretely acquired R, G, B, and W signals.
  • a demosaic process is performed to obtain.
  • an interpolation process is performed assuming that the color ratio is kept almost constant in the local region and that there is a strong color correlation.
  • an interpolation method using surrounding pixel values is widely used. This method is described in, for example, Patent Document 3 (Japanese Patent Laid-Open No. 2009-17544).
  • Patent Document 3 Japanese Patent Laid-Open No. 2009-17544
  • the present invention can generate a high-quality color image with few false colors in color image generation processing using acquired data of an image sensor (image sensor) having, for example, an RGBW type color filter including white (W).
  • image sensor image sensor
  • RGBW type color filter including white (W) white
  • An object is to provide an image processing apparatus, an image processing method, and a program that are realized.
  • the first aspect of the present invention is: A data conversion processing unit that performs pixel conversion by analyzing a two-dimensional pixel array signal in which pixels that are main components of a luminance signal are arranged in a checkered pattern and pixels of a plurality of colors that are color information components are arranged in the remaining part
  • the data conversion processing unit A parameter calculation unit for analyzing the two-dimensional pixel array signal and calculating a parameter to be applied to pixel conversion processing;
  • the parameter calculation unit In a parameter calculation process applied to the pixel conversion process, first correlation information between a pixel that is a main component of a luminance signal included in the two-dimensional pixel array signal and a color information component of the pixel after conversion; Or second correlation information between one selected color information component selected from the color information components and the color information component of the pixel after conversion,
  • the image processing apparatus performs the parameter calculation process using correlation information of at least one of the first correlation information and the second correlation information.
  • the parameter calculation unit includes, as the second correlation information, a color information component having the highest distribution ratio among the color information components, and color information of the pixel after conversion. Correlation information with components is used.
  • the data conversion processing unit includes an edge detection unit that analyzes the two-dimensional pixel array signal and generates edge information
  • the parameter calculation unit includes the parameter calculation unit, According to the edge direction detected by the edge detector, the parameter calculation process is performed by selectively using either the first correlation information or the second correlation information.
  • the color that is a main component of the luminance signal is white
  • the color information component having the highest distribution ratio is green
  • the parameter calculation unit performs pixel conversion processing.
  • the parameter calculation processing is performed using the acquired correlation information.
  • the data conversion processing unit analyzes the two-dimensional pixel array signal to generate texture information, and calculates the parameter calculated by the parameter calculation unit.
  • the edge information and the texture information are input, and according to the edge information and texture information corresponding to the conversion pixel, the blend ratio of the parameter calculated by the parameter calculation unit is changed and a blend process is executed to obtain the conversion pixel value.
  • a blend processing unit to be determined.
  • the edge detection unit analyzes edge signals including edge direction and intensity information corresponding to each pixel by analyzing an RGBW array signal composed of RGB pixels and white (W) pixels.
  • the texture detection unit analyzes the RGBW array signal to generate texture information indicating a texture level corresponding to each pixel, and the parameter calculation unit converts a parameter for converting the RGBW array into an RGB array.
  • a parameter calculation unit to calculate, and generates a parameter corresponding to the interpolation pixel value calculated by the interpolation process in which the applied pixel position is changed according to the edge direction corresponding to the conversion pixel, and the blend processing unit includes:
  • the calculated parameters, the edge information and the texture information are input, and an edge corresponding to the converted pixel is input.
  • it executes a process of determining a converted pixel value by performing the blend processing by changing the blend ratio of the calculated parameters of the parameter calculator.
  • the parameter calculation unit is configured to generate a parameter by an interpolation process in which a pixel position applied to the interpolation process is a pixel position along the edge direction.
  • the parameter calculation unit includes a correlation in a local region between a W pixel constituting an RGBW array and other RGB pixels, or a G pixel constituting an RGBW array. This is a configuration in which parameters are generated by interpolation processing using any correlation of phases in a local region with other RGB pixels.
  • the image processing apparatus further includes a W pixel position by interpolation processing using a correlation in a local region between W pixels constituting an RGBW array and other RGB pixels.
  • the provisional pixel setting unit for setting the pixel value of any of the RGB pixels is provided, and the parameter calculation unit is configured to generate a parameter by interpolation processing to which the temporary pixel setting data is applied.
  • the parameter calculation unit includes an RGBW array according to the four types of edge directions detected by the edge detection unit in the vertical, horizontal, left diagonally upper, and right diagonal directions.
  • the first correlation information between the color information components of the W pixel constituting the pixel and the converted pixel, or the second correlation information between the color pixel constituting the RGBW array and the color information component of the pixel after conversion is used. Select.
  • the parameter calculation unit sets the reference pixel position to a pixel position along the edge direction, and uses the first correlation information or the second correlation information. Then, a plurality of parameters to be applied to the pixel conversion process are generated, and the blend processing unit performs intensity comparison in the four types of edge directions in the vertical, horizontal, diagonally upper left, and diagonally upper right, and according to the comparison result A blending process in which the blend ratio of the plurality of parameters is changed is executed.
  • the blend processing unit calculates an edge direction degree (ratioFlat) between the vertical and horizontal direction edges and the oblique direction edge corresponding to the conversion pixel, and further, the edge direction degree (ratioFlat). Based on the above, a vertical and horizontal edge direction weight (weightHV) indicating that the larger the value is, the stronger the vertical and horizontal edges are than the diagonal edge, and the smaller the value is, the diagonal edge is stronger than the vertical and horizontal edges.
  • ratioFlat edge direction degree
  • weightHV vertical and horizontal edge direction weight
  • the texture detection unit shows a high value for a pixel region with a low texture and a high flatness, and a pixel region with a lot of texture and a low flatness as the texture information.
  • the flatness weight (weightFlat) corresponding to each pixel indicating a low value is calculated for the pixel, and the parameter calculation unit includes a contrast enhancement processing application parameter obtained by performing contrast enhancement processing on the interpolation pixel value, and a contrast on the interpolation pixel value.
  • the contrast enhancement process non-applied parameter that does not execute the enhancement process is calculated, and the blend processing unit sets a large blend ratio of the contrast enhancement process non-applied parameter for the pixel with the large flatness weight, and the flatness weight For pixels with small Executes a blending process set larger the blending ratio of the trust enhancement processing application parameters.
  • the edge detection unit is configured to generate edge information corresponding to each pixel by analysis processing using only white (W) pixels of the RGBW array signal.
  • the signal value gradient of the W pixel in the vicinity of the processing target pixel is calculated to generate edge information including the edge direction and intensity information corresponding to each pixel.
  • the texture detection unit generates texture information indicating the degree of texture corresponding to each pixel by analysis processing using only white (W) pixels of the RGBW array signal. To do.
  • the second aspect of the present invention provides An image processing method for executing image signal processing in an image processing apparatus, An edge detection step in which an edge detection unit analyzes an RGBW array signal composed of RGB pixels and white (W) pixels and generates edge information including edge direction and intensity information corresponding to each pixel; A texture detection step in which a texture detection unit analyzes the RGBW array signal and generates texture information indicating a texture level corresponding to each pixel;
  • the parameter calculation unit is a parameter calculation step for calculating a parameter for converting the RGBW array into the RGB array, and corresponds to the interpolation pixel value calculated by the interpolation process in which the applied pixel position is changed according to the edge direction corresponding to the conversion pixel.
  • the blend processing unit inputs the parameter calculated by the parameter calculation unit, the edge information and the texture information, and the blend ratio of the parameter calculated by the parameter calculation unit according to the edge information and texture information corresponding to the conversion pixel
  • the parameter calculating step includes: In a parameter calculation process applied to the pixel conversion process, first correlation information between a pixel that is a main component of a luminance signal included in the two-dimensional pixel array signal and a color information component of the pixel after conversion; Alternatively, second correlation information between the color information component having the highest distribution ratio in the color information component and the color information component of the pixel after conversion,
  • the parameter calculation process is performed using the correlation information of at least one of the first correlation information and the second correlation information.
  • the third aspect of the present invention provides A program for executing image signal processing in an image processing apparatus;
  • the parameter calculated by the parameter calculation unit, the edge information and the texture information are input to a blend processing unit, and the blend ratio of the parameter calculated by the parameter calculation unit according to the edge information and texture information corresponding to the conversion pixel
  • executing a blending process step for executing a blending process to determine a converted pixel value In the parameter calculation step, In a parameter calculation process applied to the pixel conversion process, first correlation information between a pixel that is a main component of a luminance signal included in the two-dimensional pixel array signal and a color information component of the pixel after conversion; Alternatively, second correlation information between the color information component having the highest distribution ratio in the color information component and the color information component of the pixel after conversion, A program for performing the parameter calculation process using correlation information of at least one of the first correlation information and the second correlation information.
  • the program of the present invention is a program that can be provided by, for example, a storage medium or a communication medium provided in a computer-readable format to an image processing apparatus or a computer system that can execute various program codes.
  • a storage medium or a communication medium provided in a computer-readable format to an image processing apparatus or a computer system that can execute various program codes.
  • system is a logical set configuration of a plurality of devices, and is not limited to one in which the devices of each configuration are in the same casing.
  • a high-quality color image with few false colors by inputting acquired data of an image sensor (image sensor) having, for example, an RGBW color filter including white (W).
  • RGB array data for generating can be generated.
  • the edge detection unit analyzes an output signal of the RGBW array image sensor to acquire edge information corresponding to each pixel, and the texture detection unit generates texture information.
  • the parameter calculation unit executes an interpolation process in which the application pixel position is changed according to the edge direction corresponding to the conversion pixel, and generates a parameter corresponding to the interpolation pixel value.
  • the blend processing unit In the blend processing unit, the parameter generated by the parameter calculation unit, the edge information and the texture information are input, and the blend ratio of the parameter calculated by the parameter calculation unit is changed according to the edge information and texture information corresponding to the conversion pixel. A blending process is executed to determine a converted pixel value. With these processes, RGB array data capable of generating a high-quality color image with few false colors can be generated.
  • the image processing apparatus of the present invention has an RGBW color filter including an RGBW color filter including white (W: White) that transmits all RGB wavelength light in addition to an RGB filter that selectively transmits wavelength light of each RGB color.
  • the image processing apparatus of the present invention obtains acquired data of an image sensor (image sensor) having, for example, an RGBW color filter including white (W: White) as shown in FIG.
  • a process for reducing the occurrence of false colors is also executed.
  • the acquired data of an image sensor having, for example, an RGBW type color filter including white (W: White) has W pixels as a main component of a luminance signal in a checkered pattern.
  • a two-dimensional pixel array signal is arranged in which a plurality of color pixels serving as color information components are arranged in the remaining portion.
  • the image processing apparatus of the present invention includes a data conversion processing unit that analyzes the image signal and performs pixel conversion.
  • the data conversion processing unit analyzes the input image signal and applies the pixel (for example, W pixel) as a main component of the luminance signal included in the two-dimensional pixel array signal and the converted pixel as parameters to be applied to the pixel conversion process.
  • a conversion parameter is calculated using the correlation information, and a conversion pixel value setting process using the calculated parameter is executed.
  • the image processing apparatus performs a process of converting or correcting at least a part of each RGBW pixel set in the RGBW color array to another color (any one of RGB). Specifically, in the conversion process from the RGBW array to the RGB Bayer array, the following five conversions and correction processes are executed.
  • the above conversion processes (a) to (e) are performed as pixel value estimation or correction processes for converting each RGBW pixel in the RGBW array into an RGB pixel in the RGB array.
  • the RGB array shown in FIG. 2 (2) is generated from the RGBW color array shown in FIG. 2 (1).
  • re-mosaic processing such color array conversion processing is referred to as re-mosaic processing.
  • a re-mosaic process for converting an RGBW type color array having white (W) into an RGB type color array (Bayer array) is executed, and a process for reducing the occurrence of false colors during the re-mosaic process is executed.
  • the structure to perform is demonstrated.
  • the pixel conversion process in the image processing apparatus of the present invention performs the conversion process with an n ⁇ n pixel rectangular pixel region as an input pixel unit. That is, the pixel information of the rectangular pixel region of n ⁇ n pixels is used to determine the converted pixel value of one pixel at the center of n ⁇ n pixels. Specifically, for example, processing is performed in units of 7 ⁇ 7 pixels (width 7 pixels height 7 pixels). For example, when processing is performed in units of 7 ⁇ 7 pixels, the image processing apparatus inputs pixel information in units of 7 ⁇ 7 pixels and determines a converted pixel value of the central pixel using pixel information of 7 ⁇ 7 pixels. To do.
  • the central pixel of 7 ⁇ 7 pixels is any of RGBW pixels, and these RGBWs are converted according to the conversion patterns (a) to (e).
  • a rectangular pixel of n ⁇ n pixels as a unit of pixel conversion processing is referred to as “input pixel unit”.
  • FIG. 3 (a1) to (a4) show input pixel units (processing units) where the W pixel is the center position of 7 ⁇ 7 pixels.
  • the left side is RGB array data that is the input pixel unit and the right side is the final processing result.
  • the processing unit is shifted one by one, the conversion process (any one of the above-mentioned (a) to (e)) is executed, and the final change result shown on the right side of FIGS. 3 (a1) to (a4) Is obtained.
  • FIG. 5 is a diagram illustrating a configuration example of the imaging apparatus 100 according to an embodiment of the present invention.
  • the imaging apparatus 100 includes an optical lens 105, an imaging element (image sensor) 110, a signal processing unit 120, a memory 130, and a control unit 140.
  • the imaging device is an aspect of an image processing device.
  • the image processing apparatus also includes an apparatus such as a PC.
  • An image processing apparatus such as a PC does not have the optical lens 105 and the image sensor 110 of the image pickup apparatus 100 shown in FIG.
  • the imaging device 100 is a still camera, a video camera, or the like, and the image processing device 100 includes an information processing device capable of image processing such as a PC.
  • the imaging apparatus 100 will be described as a representative example of the image processing apparatus of the present invention.
  • the imaging device (image sensor) 110 of the imaging apparatus 100 illustrated in FIG. 5 includes a filter having an RGBW array 181 having white (W) described with reference to FIGS. 1B and 2A. It is. Specifically, pixel conversion is performed by analyzing a two-dimensional pixel array signal in which pixels that are main components of a luminance signal are arranged in a checkered pattern and pixels of a plurality of colors that are color information components are arranged in the remaining portion. . Note that the main color of the luminance signal is white or green.
  • the image sensor (image sensor) 110 is Red (R) that transmits wavelengths near red, Green (G) that transmits wavelengths in the vicinity of green, Blue (B) that transmits wavelengths near blue, In addition to these, And white (W) that transmits all of RGB
  • RGB Red
  • G Green
  • B Blue
  • W white
  • the image sensor 110 having the RGBW array 181 filter receives any RGBW light in units of pixels via the optical lens 105, and generates and outputs an electrical signal corresponding to the received light signal intensity by photoelectric conversion.
  • a mosaic image composed of four types of RGBW spectra is obtained by the image sensor 110.
  • An output signal of the image sensor (image sensor) 110 is input to the data conversion processing unit 200 of the signal processing unit 120.
  • the data conversion processing unit 200 executes the conversion process from the RGBW array 181 to the RGB array 182 as described above with reference to FIG.
  • Convert W pixel position to G pixel (estimate G pixel value) (GonW)
  • Convert G pixel position to R pixel (estimate R pixel value) (RonG)
  • Convert G pixel position to B pixel (estimate B pixel value) (BonG)
  • Convert B pixel position to R pixel (estimate R pixel value) (RonB) Convert R pixel position to B pixel (estimate B pixel value) (BonR)
  • These five conversions and correction processes are executed. In this conversion / correction process, a process for suppressing false colors is also executed.
  • the RGB array 182 generated by the data conversion processing unit 200 that is, data having a Bayer array is data having a color array obtained by an imaging device such as a conventional camera. This color array data is input to the RGB signal processing unit 250.
  • the RGB signal processing unit 250 executes the same processing as the signal processing unit provided in a conventional camera or the like. Specifically, the color image 183 is generated by executing demosaic processing, white balance adjustment processing, ⁇ correction processing, and the like. The generated color image 183 is recorded in the memory 130.
  • the control unit 140 executes control of these series of processes.
  • a program for executing a series of processes is stored in the memory 130, and the control unit 140 executes the program read from the memory 130 and controls the series of processes.
  • the detailed configuration of the data conversion processing unit 200 will be described with reference to FIG.
  • the data conversion processing unit 200 executes conversion processing from the RGBW color array to the RGB array 182. Furthermore, a process for suppressing false colors is also executed during this process.
  • the data conversion processing unit 200 includes a noise removing unit 201, first to fifth pixel interpolation parameter calculating units 202 to 208, an edge detecting unit 209, a texture detecting unit 210, and a blend processing unit 211, as shown in FIG.
  • the data conversion processing unit 200 sequentially inputs pixel values from the RGBW array 181 that is a processed image in units of n ⁇ n pixels, and determines and outputs a converted pixel value of a central pixel of n ⁇ n pixels. To do.
  • the RGB array 182 is completed and provided to the RGB signal processing unit 250 shown in FIG.
  • the noise removal unit 201 performs noise removal on the W pixel at the center of the input pixel unit.
  • the first pixel interpolation parameter calculation unit (GonW) 202 executes a parameter calculation process applied to the process of converting the W pixel into the G pixel.
  • the first provisional pixel setting unit (RBonWroundG) 203 converts the W pixel position adjacent to the G pixel into an R pixel or a B pixel as a preliminary process of converting the W pixel around the G pixel into an R or B pixel provisional pixel (R ') (B') is converted.
  • the second pixel interpolation parameter calculation unit (RBonGofHV) 204 calculates a parameter corresponding to a vertical or horizontal edge as a parameter applied to the process of converting the G pixel into the R pixel or the B pixel.
  • a third pixel interpolation parameter calculation unit (RBonGofAD) 205 calculates a parameter corresponding to an oblique edge as a parameter applied to the process of converting the G pixel into the R pixel or the B pixel.
  • the second provisional pixel setting unit (RBonWoundRB) 206 is a pre-processing for converting the W pixel position adjacent to the R pixel or the B pixel into the R pixel or the B pixel.
  • the fourth pixel interpolation parameter calculation unit (RBonRBofHV) 207 that executes the process of converting to the temporary pixel (R ′) (B ′) is applied to the process of converting the R pixel into the B pixel or the B pixel into the R pixel.
  • R ′ temporary pixel
  • B ′ temporary pixel
  • parameters corresponding to vertical or horizontal edges are calculated.
  • the fifth pixel interpolation parameter calculation unit (RBonRBofAD) 208 calculates a parameter corresponding to a diagonal edge as a parameter applied to the process of converting the R pixel into the B pixel or the B pixel into the R pixel.
  • the edge detection unit 209 performs edge direction detection processing using W pixels.
  • the texture detection unit 210 performs texture detection processing using W pixels.
  • the blend processing unit 211 executes a process for blending the pixels output in the above processes.
  • the data conversion processing unit 200 sequentially inputs pixel values from the RGBW array 181 in units of n ⁇ n pixels, and outputs n ⁇ n pixels.
  • the conversion pixel value of the center pixel is determined and output.
  • the noise removal unit 201, the edge detection unit 209, and the texture detection unit 210 are 5 ⁇ 5 pixel units in the center of a 7 ⁇ 7 pixel region unit or 7 ⁇ 7 pixel region.
  • the setting may be made so that processing is performed in any of the area units.
  • Edge detection, noise removal, or texture detection processing generates information used as auxiliary information in pixel value conversion.
  • Various settings can be made for the pixel region for generating such information. From the viewpoint of processing load, a smaller processing unit is more efficient. However, when there is sufficient processing capability, a large pixel area may be set as a processing unit. For example, it may be configured to perform processing in units of 7 ⁇ 7 pixels.
  • processing units can be set for edge detection, noise removal, and texture detection processing.
  • edge detection noise removal
  • texture detection processing various processing units can be set for edge detection, noise removal, and texture detection processing.
  • a processing example with the following settings will be described as an example.
  • the first pixel interpolation parameter calculation unit 202 to the fifth pixel interpolation parameter calculation unit 208 perform processing in units of 7 ⁇ 7 pixel regions of the RGBW array 181 input to the data conversion processing unit 200.
  • the edge detection unit 209 also performs edge detection processing using the 7 ⁇ 7 processing unit of the RGBW array 181 input to the data conversion processing unit 200 as it is as a processing unit.
  • the noise removal unit 201 and the texture detection unit 210 extract a 5 ⁇ 5 pixel area at the center of a 7 ⁇ 7 pixel pixel area, and perform processing using the extracted 5 ⁇ 5 pixel area as a processing unit.
  • Each processing unit performs processing by setting such processing units. Hereinafter, details of processing of each processing unit will be sequentially described.
  • the noise removal unit 201 performs noise removal processing on data in which the central pixel of the input pixel unit (7 ⁇ 7 pixels) for the data conversion processing unit 200 is a W pixel. As described above, the noise removing unit 201 extracts the 5 ⁇ 5 pixel region at the center of the 7 ⁇ 7 pixel pixel region input by the data conversion processing unit 200, and extracts the extracted 5 ⁇ 5 pixel region. Processing is performed as a processing unit. The noise removal is performed as a noise reduction pixel value calculation process for the W pixel at the center of the input pixel unit.
  • FIG. 7A shows a 5 ⁇ 5 pixel area set at the center of 7 ⁇ 7 pixels, which is an input pixel unit, as processing target data 301 for noise removal processing.
  • FIG. 7 is a diagram illustrating an example in which noise removal is applied to the W pixel (pixel p) in the center of the processing target data 301.
  • the noise removal unit 201 has a center pixel (5 ⁇ 5 pixel noise removal processing target data 301 in the center of an input pixel unit (7 ⁇ 7 pixels) having an RGBW arrangement ( Processing is performed when p) is a W pixel.
  • the gray portion shown in FIG. 7A is a W pixel, and the other white portions are any of RGB pixels. In other drawings used in the following description, it is assumed that the gray portion is a W pixel and the other white portions are any of RGB pixels.
  • the noise removing unit 201 uses the pixel value I (p) of the W pixel that is the central pixel (p) of the processing target data 301 and the pixel value I (q) of the pixel included in the processing target data 301 (5 ⁇ 5 pixels).
  • the noise reduction pixel value I NR (p) is calculated according to the noise reduction pixel value calculation formula shown in FIG. That is, the noise reduction pixel value I NR (p) is calculated according to the following formula (Formula 1).
  • the function ⁇ (r) generally uses an exponential function. However, in order to reduce the amount of calculation, a function that is linearly approximated as shown in FIG. In the linear approximation shown in FIG.
  • the noise removal unit 201 applies the bilateral filter to obtain the noise reduction pixel value I NR (p) of the W pixel at the center of the noise removal processing unit (5 ⁇ 5 pixels) according to the above formula (formula 1). calculate.
  • the calculated noise reduction W pixel value (I NR (p)) is output to the first pixel interpolation parameter calculation unit (GonW) 202 shown in FIG.
  • the process to which the bilateral filter described with reference to FIG. 7 is applied is an example of the noise removal process, and the noise removal unit 201 is not limited to the process to which the bilateral filter described with reference to FIG. A configuration using other noise removal methods may be used.
  • the edge detection unit 209 verifies discrete white (W) signals included in the RGBW array that is an input signal, generates edge information included in the image, for example, edge information including edge direction and edge strength, and blends
  • W discrete white
  • the data is output to the processing unit 211 and a plurality of pixel interpolation parameter calculation units.
  • edge direction and edge strength determination method using W pixels executed by the edge detection unit 209 will be described with reference to FIG.
  • the edge detection unit 209 determines the edge direction and the edge strength using only the white (W) signal in the input RGBW array 181 signal. In this embodiment, as described above, the edge detection unit 209 performs edge detection processing using the 7 ⁇ 7 processing unit of the RGBW array 181 input to the data conversion processing unit 200 as it is as a processing unit. The edge detection unit 209 sequentially performs the edge detection process while shifting the 7 ⁇ 7 pixel area pixel by pixel. Edge information (edge direction and edge strength) corresponding to the center pixel of the 7 ⁇ 7 pixel region is acquired by processing for one 7 ⁇ 7 pixel region. The edge information corresponding to each pixel is output to the blend processing unit 211 and the first to fifth pixel interpolation parameter calculation units.
  • the center pixel of 7 ⁇ 7 pixels to be processed is (A) a W pixel; (B) If the pixel is other than W, There are two of these.
  • the pixels shown in gray are W pixels, and the others correspond to any of RGB pixels.
  • the edge directions are any of the four directions horizontal, vertical, diagonally right, and diagonally upper left using different calculation formulas. Edge determination processing for estimation is performed.
  • the calculation formula applied to the edge direction and edge strength determination processing in the cases (a) and (b) is shown. .
  • the calculation formula to be applied is a formula for calculating the gradient of the pixel value in a specific direction of the image, and is a calculation formula for each of the following values.
  • gradH average gradient absolute value in the horizontal direction
  • gradV average gradient absolute value in the vertical direction
  • gradA average gradient absolute value in the upper right gradient
  • gradD average gradient absolute value in the upper left gradient gradH, gradV, gradA, gradD
  • FIG. 9A shows calculation examples of gradH, gradV, gradA, and gradD when the central pixel is a W pixel in (a1) to (a4).
  • a position indicated by a double circle [ ⁇ ] is a center pixel position in 7 ⁇ 7 pixels.
  • the position indicated by a circle [ ⁇ ] is the edge centroid position.
  • gradH, gradV, gradA, and gradD are calculated by the following calculation formula (Formula 2).
  • Wxy is (x) in the horizontal direction and (y) in the vertical direction
  • the coordinates of the upper left pixel of the 4 ⁇ 4 pixels shown in FIG. 9 are (0, 0)
  • the pixel coordinates of the lower right corner are (3, 3).
  • the W pixel value at the xy coordinate position in the coordinate system set as 3) is shown.
  • gradH is the average gradient absolute value in the horizontal direction, and corresponds to the average difference absolute value of W pixels adjacent in the horizontal direction. As shown in FIG. 9 (a1), an average value of difference absolute values of two W pixels adjacent in the horizontal direction of two horizontal lines in the center of the 4 ⁇ 4 pixel region is calculated as gradH.
  • gradV is an average of gradient absolute values in the vertical direction, and corresponds to an average value of difference absolute values of W pixels adjacent in the vertical direction. As shown in FIG. 9 (a2), the average value of the absolute difference values of two W pixels adjacent in the vertical direction of two vertical lines in the center of the 4 ⁇ 4 pixel region is calculated as gradV.
  • gradA is the average of absolute values of gradient in the upper right direction, and corresponds to the average value of absolute differences of W pixels adjacent in the upper right direction. As shown in FIG. 9 (a3), the average value of the absolute difference values of two W pixels adjacent in the upper right direction of one upper right line in the center of the 4 ⁇ 4 pixel region is calculated as gradA. To do.
  • gradD is an average of absolute values of gradient in the upper left direction, and corresponds to an average value of absolute differences of W pixels adjacent in the upper left direction. As shown in FIG. 9 (a4), the average value of the absolute difference values of two W pixels adjacent in the upper left direction of one upper left line in the center of the 4 ⁇ 4 pixel region is calculated as gradD. To do.
  • the edge direction and the edge strength can be determined based on the calculated values of the respective values of gradH, gradV, gradA, and gradD.
  • FIG. 9B shows an example of calculation processing of gradH, gradV, gradA, and gradD when the central pixel is other than the W pixel in (b1) to (b4).
  • a position indicated by a double circle [ ⁇ ] is a center pixel position in 7 ⁇ 7 pixels.
  • the position indicated by a circle [ ⁇ ] is the edge centroid position.
  • gradH, gradV, gradA, and gradD are calculated by the following calculation formula (Formula 3).
  • Wxy is (x) in the horizontal direction and (y) in the vertical direction
  • the coordinates of the upper left pixel of the 4 ⁇ 4 pixels shown in FIG. 9 are (0, 0)
  • the pixel coordinates of the lower right corner are (3, 3).
  • the W pixel value at the xy coordinate position in the coordinate system set as 3) is shown.
  • gradH is the average gradient absolute value in the horizontal direction, and corresponds to the average difference absolute value of W pixels adjacent in the horizontal direction. As shown in FIG. 9 (b1), the average value of the absolute difference values of two W pixels adjacent in the horizontal direction of two horizontal lines in the center of the 4 ⁇ 4 pixel region is calculated as gradH.
  • gradV is an average of gradient absolute values in the vertical direction, and corresponds to an average value of difference absolute values of W pixels adjacent in the vertical direction. As shown in FIG. 9 (b2), the average value of the absolute difference values of two W pixels adjacent in the vertical direction of two vertical lines in the center of the 4 ⁇ 4 pixel region is calculated as gradV.
  • gradA is the average of absolute values of gradient in the upper right direction, and corresponds to the average value of absolute differences of W pixels adjacent in the upper right direction. As shown in FIG. 9 (b3), the average value of the absolute difference values of two W pixels adjacent in the upper right direction of the two upper right lines in the center of the 4 ⁇ 4 pixel region is calculated as gradA. To do.
  • gradD is an average of absolute values of gradient in the upper left direction, and corresponds to an average value of absolute differences of W pixels adjacent in the upper left direction. As shown in FIG. 9 (b4), the average value of the absolute difference values of two W pixels adjacent in the upper left direction of the two upper left lines in the center of the 4 ⁇ 4 pixel region is calculated as gradD. To do.
  • the greater the value of the gradient absolute value average gradD in the upper left direction the higher the possibility that the edge strength in the upper right direction is greater. In this manner, the edge direction and the edge strength can be estimated based on the calculated values of gradH, gradV, gradA, and gradD.
  • the edge detection unit 209 obtains edge information (edge direction and edge strength) corresponding to each pixel based on each value of gradH, gradV, gradA, and gradD.
  • the acquired edge information is output to the blend processing unit 211.
  • the edge direction / intensity detection method described above is merely an example, and other edge detection methods may be used.
  • the edge detection method described with reference to FIG. 9 uses specific pixel value information in a very narrow range, and an erroneous determination is expected when noise is large. An example of edge information acquisition processing that prevents this erroneous determination will be described with reference to FIG.
  • the edge information acquisition processing example shown in FIG. 10 is a technique using a process of performing weighted addition of the gradient absolute value average that is the calculated value described with reference to FIG.
  • Example of horizontal / vertical component edge information acquisition processing (2) Example of diagonal component edge information acquisition processing Each of these processing examples is shown.
  • 10 (1) and 10 (2) show 7 ⁇ 7 pixel image data.
  • This data is data to be processed by the edge detection unit 209, and is data in which only W pixel values are discretely arranged as shown in FIG.
  • Edge information edge direction and edge strength
  • corresponding to the center pixel located at the center of the 7 ⁇ 7 pixels is obtained.
  • FIG. 10A An example of horizontal / vertical component edge information acquisition processing shown in FIG. FIG. 10A shows 16 edge centroids. These correspond to the edge centroids shown in FIGS. 9 (a1), (a2), (b1), and (b2). That is, gradH: gradient absolute value average in the horizontal direction gradV: gradient absolute value average in the vertical direction This corresponds to the edge centroid at the time of calculating these values.
  • the 4 ⁇ 4 pixel region shown in FIGS. 9 (a1), (a2), (b1), and (b2) is set.
  • the 16 edge centroids shown in FIG. 10 (1) are the edge centroids corresponding to these 16 4 ⁇ 4 pixel regions, that is, shown in FIGS. 9 (a1), (a2), (b1), and (b2). It is the edge centroid of the same position.
  • the edge centroid (0, 0) 301 is the edge centroid corresponding to the 4 ⁇ 4 pixel region 302.
  • the 4 ⁇ 4 pixel region 302 is the 4 ⁇ 4 pixel region shown in FIGS. 9A1, 9A2, 9B1, and 9B2
  • the edge centroid (0, 0) 301 is shown in FIG. It corresponds to the center of gravity shown in a1), (a2), (b1), and (b2).
  • the edge centroid (3, 3) 303 is an edge centroid set corresponding to the 4 ⁇ 4 pixel region 304.
  • the edge centroid (3, 3) 303 is shown in FIG. It corresponds to the center of gravity shown in a1), (a2), (b1), and (b2).
  • the gradient absolute value average (gradH) and (gradV) calculated using the 4 ⁇ 4 pixel region corresponding to the edge centroid (i, j) are respectively gradH i, j gradV i, j As shown.
  • dirV Vertical gradient information
  • w ij is a weighting coefficient corresponding to the edge centroid of the position (i, j).
  • the weighting coefficient is set as a coefficient with the central portion being large and the peripheral portion being small.
  • FIG. 10A shows an example in which the weight coefficients (4/36) to (1/36) are associated with 16 edge centroids as an example of the weight coefficients.
  • FIG. 10 (2) shows 25 edge centroids. These correspond to the edge centroids shown in FIGS. 9 (a3), (a4), (b3), and (b4). That is, gradA: Gradient absolute value average in the upper right gradient gradD: Gradient absolute value average in the upper left gradient This corresponds to the edge centroid when calculating these values.
  • the 4 ⁇ 4 pixel region shown in FIGS. 9A3, 9A4, 9B3, and 9B4 is set.
  • the 16 edge centroids in the dotted rectangular frame 315 shown in FIG. 10 (2) are the edge centroids corresponding to these 16 4 ⁇ 4 pixel regions, that is, FIG. 9 (a3), (a4), (b3), and the edge centroid at the same position as shown in (b4).
  • the edge centroid (1, 1) 311 is the edge centroid corresponding to the 4 ⁇ 4 pixel region 312.
  • the edge centroid (1, 1) 311 is shown in FIG. It corresponds to the center of gravity shown in a3), (a4), (b3), and (b4).
  • the edge centroid (4, 4) 313 is an edge centroid set corresponding to the 4 ⁇ 4 pixel region 314.
  • the edge centroid (4, 4) 313 is shown in FIG. It corresponds to the center of gravity shown in a3), (a4), (b3), and (b4).
  • the edge centroid is also shown outside the dotted rectangular frame 315.
  • gradA Gradient absolute value average in the upper right gradient
  • gradD Gradient absolute value average in the upper left gradient
  • gradA and gradD that can be calculated by setting the edge centroids at different positions using the 7 ⁇ 7 pixel region are 25 pieces of data corresponding to the 25 edge centroid positions shown in FIG.
  • gradA Gradient absolute value average in the upper right gradient
  • gradD Gradient absolute value average in the upper left oblique direction 25 each of these values can be calculated.
  • Gradient absolute value averages (gradA) and (gradD) calculated using a 4 ⁇ 4 pixel region corresponding to the edge centroid (i, j), gradA i, j gradD i, j As shown. Using these, the weighted addition value of the gradient absolute value average, that is, dirA: Right oblique upward gradient information dirD: Left oblique upward gradient information These are calculated using the following calculation formula (Formula 5).
  • w ij is a weighting coefficient corresponding to the edge centroid of the position (i, j).
  • the weighting coefficient is set as a coefficient having a large central portion and a small peripheral portion.
  • FIG. 10 (2) shows an example in which the weight coefficients (16/100) to (1/100) are associated with 25 edge centroids as an example of the weight coefficients.
  • the example described with reference to FIG. 10 is a processing example for calculating a weighted addition value (dirH, dirV, dirA, dirD) of the gradient absolute value average using a 7 ⁇ 7 pixel area.
  • the weighted addition value (dirH, dirV, dirA, dirD) of the gradient absolute value average may be calculated using a 5 ⁇ 5 pixel area. That is, a configuration may be adopted in which edge detection is performed by extracting a pixel region of 5 ⁇ 5 pixels at the center of a pixel region of 7 ⁇ 7 pixels input to the data conversion processing unit 200. This processing example will be described with reference to FIG.
  • Example of horizontal / vertical component edge information acquisition processing (2) Example of diagonal component edge information acquisition processing Each of these processing examples is shown.
  • 11 (1) and 11 (2) show 5 ⁇ 5 pixel image data.
  • This data is data to be processed by the edge detection unit 209, and is data in which only W pixel values are discretely arranged as shown in FIG.
  • Edge information edge direction and edge strength
  • corresponding to the center pixel located at the center of the 5 ⁇ 5 pixels is obtained.
  • FIG. 11A An example of (1) horizontal / vertical component edge information acquisition processing shown in FIG.
  • four sets of 4 ⁇ 4 pixel areas and edge centroids are set.
  • gradH average gradient absolute value in the horizontal direction
  • gradV average gradient absolute value in the vertical direction Four each of these values can be calculated.
  • the gradient absolute value average (gradH) and (gradV) calculated using the 4 ⁇ 4 pixel region corresponding to the edge centroid (i, j) are respectively gradH i, j gradV i, j As shown.
  • dirV vertical gradient information
  • FIG. 11B shows nine edge centroids. These correspond to the edge centroids shown in FIGS. 9 (a3), (a4), (b3), and (b4). That is, gradA: Gradient absolute value average in the upper right gradient gradD: Gradient absolute value average in the upper left gradient This corresponds to the edge centroid when calculating these values.
  • gradA Gradient absolute value average in the upper right direction
  • gradD Gradient absolute value average in the upper left direction
  • Gradient absolute value averages (gradA) and (gradD) calculated using a 4 ⁇ 4 pixel region corresponding to the edge centroid (i, j), gradA i, j gradD i, j As shown. Using these, the weighted addition value of the gradient absolute value average, that is, dirA: Right diagonal upward gradient information dirD: Left diagonal upward gradient information These are calculated using the above-described calculation formula (Formula 5).
  • the edge detection unit 209 obtains the edge information thus obtained, that is, dirH: Horizontal gradient information dirV: Vertical gradient information dirA: Right diagonal upward gradient information dirD: Left diagonal upward gradient information
  • dirH Horizontal gradient information
  • dirV Vertical gradient information
  • dirA Right diagonal upward gradient information
  • dirD Left diagonal upward gradient information
  • the texture detection unit 210 performs texture detection processing using discrete white (W) pixels included in the RGBW array that is an input signal. That is, texture information corresponding to each pixel is detected and the detection information is output to the blend processing unit 211. Specifically, it detects whether the neighboring image area of each pixel is an image with a lot of texture (low flatness) or an image with a little texture (high flatness) and uses this detection information for each pixel. Is output to the blend processing unit 211 as texture information.
  • W discrete white
  • the texture detection unit 210 extracts the 5 ⁇ 5 pixel area at the center of the 7 ⁇ 7 pixel pixel area that is the input unit to the data conversion processing unit 200, and extracts the extracted 5 ⁇ 5 pixel area. Processing is performed using an area as a processing unit. An average value Wave of W pixels is calculated for each processing unit (5 ⁇ 5 pixels).
  • a smoothing filter is used for the calculation process of the W pixel average value Wave.
  • an average value Wave of W pixels is obtained by a filter in which a coefficient as shown in FIG. 12 is set.
  • An average value Wave of W pixels is obtained by using a filter in which various coefficients are set.
  • a process when the center of the input pixel unit is the W pixel will be described with reference to FIG.
  • the W pixel value in 9 pixels centering on the W pixel position of the processing unit 321 of 5 ⁇ 5 pixels whose center pixel is the W pixel is multiplied by the filter coefficient of the corresponding pixel position of the filter 322. Further, an addition value of each multiplication result is calculated. This addition result is taken as an average value Wave of the W signal. This average value Wave is calculated as the average value Wave for the center W pixel of the processing unit 321.
  • the texture detection unit 210 further calculates a flatness weight (weightFlat) as an index value of the degree of texture corresponding to the center W pixel, using the average value Wave corresponding to the pixel. This calculation process will be described later.
  • the filter coefficient of the filter 322 shown in FIG. 12 is set to (4/8 to 1/8) for the center W pixel to the surrounding W pixel of the processing unit 321 of 5 ⁇ 5 pixels.
  • This filter coefficient is an example, and a configuration using other coefficients may be used.
  • the coefficient is not limited to this as long as it is a so-called low-pass filter. Moreover, it is good also as a structure using the area
  • the W pixel value in 9 pixels centering on the center pixel position of the 5 ⁇ 5 pixel processing unit 331 whose center pixel is other than W pixel is multiplied by the filter coefficient of the corresponding pixel position of the filter 332. Further, an addition value of each multiplication result is calculated. This addition result is taken as an average value Wave of the W signal. The calculated average value Wave is calculated as the average value Wave for the central pixel (any of RGB) of the processing unit 331.
  • the filter coefficient of the filter 332 shown in FIG. 13 is set to (1/4) for the surrounding W pixels around the center pixel of the processing unit 331 of 5 ⁇ 5 pixels.
  • This filter coefficient is an example, and a configuration using other coefficients may be used.
  • the coefficient is not limited to this as long as it is a so-called low-pass filter. Moreover, it is good also as a structure using the area
  • the texture detection unit 210 performs the filter 322 shown in FIG. 12 or the filter 332 shown in FIG. 13 depending on whether the central pixel of the input pixel unit is a W pixel or an RGB pixel other than the W pixel. Is applied to calculate the W pixel average value Wave corresponding to the center pixel in units of input pixels.
  • ⁇ p is a set of pixels included in a processing unit (5 ⁇ 5 pixels) that is processing target data
  • I (q) is the pixel value
  • Iave (p) is a W pixel average value (same value as Wave) calculated by applying the filter of FIG. 12 or FIG.
  • ⁇ (r) is a predefined weight function, It is.
  • the corresponding flatness weight (weightFlat) is calculated.
  • weightFlat (x, y) f flat (W TX (p)) ... (Formula 7)
  • a linear approximation function as shown in FIG. 14 can be used as f flat (r).
  • the texture detection unit 210 outputs the flatness weight (weightFlat) calculated in this way to the blend processing unit 211.
  • the first pixel interpolation parameter calculation unit (GonW) 202 executes a parameter calculation process applied to the process of converting the W pixel into the G pixel.
  • the first provisional pixel setting unit (RBonWroundG) 203 converts the W pixel position adjacent to the G pixel into an R pixel or a B pixel as a preliminary process of converting the W pixel around the G pixel into an R or B pixel provisional pixel (R ') (B') is converted.
  • the second pixel interpolation parameter calculation unit (RBonGofHV) 204 calculates a parameter corresponding to a vertical or horizontal edge as a parameter applied to processing for converting a G pixel into an R pixel or a B pixel.
  • the third pixel interpolation parameter calculation unit (RBonGofAD) 205 calculates a parameter corresponding to an oblique edge as a parameter applied to the process of converting the G pixel into the R pixel or the B pixel.
  • the second provisional pixel setting unit (RBonWoundRB) 206 is a pre-processing for converting the W pixel position adjacent to the R pixel or the B pixel into the R pixel or the B pixel.
  • the fourth pixel interpolation parameter calculation unit (RBonRBofHV) 207 that executes the process of converting to the temporary pixel (R ′) (B ′) is applied to the process of converting the R pixel into the B pixel or the B pixel into the R pixel.
  • a parameter corresponding to the vertical or horizontal edge is calculated as the parameter to be processed.
  • the fifth pixel interpolation parameter calculation unit (RBonRBofAD) 208 calculates a parameter corresponding to an oblique edge as a parameter applied to the process of converting the R pixel into the B pixel or the B pixel into the R pixel.
  • the first pixel interpolation parameter calculation unit (GonW) 202 calculates an interpolation parameter to be applied to the calculation of the G pixel value set at the W pixel position of the RGBW array 181.
  • the first pixel interpolation parameter calculation unit (GonW) 202 performs processing using a 7 ⁇ 7 pixel area as a processing unit (input pixel unit).
  • the first pixel interpolation parameter calculation unit (GonW) 202 first obtains the low frequency component mW of the W signal in the 7 ⁇ 7 pixel region of the processing unit.
  • the low frequency component mW corresponding to the input pixel unit 401 of 7 ⁇ 7 pixels is calculated by applying the filter 411 illustrated in FIG. 15 to the input pixel unit 401 of 7 ⁇ 7 pixels.
  • the W pixel to be converted into the G pixel is the conversion target pixel 402 at the center of the input pixel unit 401 of 7 ⁇ 7 pixels.
  • a pixel indicated by gray is a W pixel. Others are RGB pixels.
  • a pixel indicated by gray is a W pixel corresponding position.
  • Others are positions corresponding to RGB pixels.
  • the W pixel or the W pixel corresponding position is shown in gray, and the RGB pixel position or the corresponding position is shown in white.
  • the filter 411 is a filter in which the conversion coefficient corresponding to the target pixel corresponding position 412 is the highest, and the coefficient is set lower as the distance from the surroundings increases. Coefficients (16/128 to 1/128) are set as coefficients. This filter 411 is applied to calculate the low frequency component mW. The pixel value at the W pixel position of the input pixel unit 401 of 7 ⁇ 7 pixels is multiplied by the filter coefficient at the corresponding pixel position of the filter 411, and the addition value of each multiplication result is calculated as the low frequency component mW of the W signal.
  • filter coefficient setting example of the filter 411 illustrated in FIG. 15 is an example, and a filter in which other filter coefficients are set may be applied.
  • another smoothing filter having a low-pass characteristic can be used.
  • the first pixel interpolation parameter calculation unit (GonW) 202 obtains the high frequency component w of the W signal in the 7 ⁇ 7 pixel region of the processing unit.
  • the high frequency component w corresponding to the input pixel unit 401 of 7 ⁇ 7 pixels is calculated by applying the filter 415 shown in FIG. 16 to the input pixel unit 401 of 7 ⁇ 7 pixels.
  • the W pixel to be converted to the G pixel is the conversion target pixel 402 at the center of the input pixel unit 401 of 7 ⁇ 7 pixels.
  • the filter 415 is a filter in which only the filter coefficient of the conversion target pixel corresponding position 416 is set to 1.
  • the filter 416 is applied to calculate the high frequency component w.
  • the high-frequency component w of the W signal is calculated by multiplying the pixel value at the W pixel position of the input pixel unit 401 of 7 ⁇ 7 pixels by the filter coefficient at the corresponding pixel position of the filter 415.
  • FIG. (A) When there is a G pixel to the left of the center W pixel of the input pixel unit 401 (b) When there is a G pixel to the right of the center W pixel of the input pixel unit 401 , FIG. The filters 421 and 422 shown in FIG.
  • the low frequency component mG corresponding to the input signal 401 of 7 ⁇ 7 pixels is calculated.
  • the W pixel to be converted into the G pixel is the conversion target pixel 402 at the center of the input signal 401 of 7 ⁇ 7 pixels.
  • a low-frequency component mG of the G signal is calculated by applying a filter 421 having a coefficient setting as shown in FIG. .
  • a pixel indicating a numerical value indicating the filter coefficient is a G pixel corresponding position.
  • the center of the filter 421 is the conversion target pixel corresponding position 423.
  • a low frequency component mG of the G signal is calculated by applying a filter 422 with a coefficient setting as shown in FIG. .
  • a pixel indicating a numerical value indicating the filter coefficient is a G pixel corresponding position.
  • the center of the filter 422 is the conversion target pixel corresponding position 424.
  • any of the applied filters is set as a filter in which the filter coefficient at the G pixel corresponding position close to the conversion target pixel corresponding position is the highest, and the coefficient is set lower as the distance from the surroundings increases. Coefficients (1/64 to 12/64) are set. Any one of these filters 421 and 422 is applied to calculate the low frequency component mG. The pixel value at the G pixel position of the input pixel unit 401 of 7 ⁇ 7 pixels is multiplied by one of the filter coefficients of the filters 421 and 422, and the addition value of each multiplication result is calculated as the low frequency component mG of the G signal. .
  • filter coefficient setting example of the filters 421 and 422 shown in FIG. 17 is an example, and a filter in which other filter coefficients are set may be applied.
  • the first pixel interpolation parameter calculation unit 202 uses the 7 ⁇ 7 pixel region having the W pixel to be converted to the G pixel as a central pixel, as a processing unit, and the low frequency component mW of the W signal and the G signal, The high frequency component w of the mG and W signals is calculated.
  • the ratio of mW and mG calculated in this way is maintained in the local region in the image.
  • the correspondence between the pixel value ratios of W and G in the local region is the correspondence shown in the graph of FIG.
  • the horizontal axis represents the W pixel value
  • the vertical axis represents the G pixel value.
  • MW is a low-frequency component mW of the W signal calculated by the process described with reference to FIG.
  • mG is a low-frequency component mG of the G signal calculated by the process described with reference to FIG.
  • Different values of mG are applied depending on the configuration of the input pixel unit 401 and the edge direction.
  • the straight line (line L1) shown in FIG. 18 is a line based on the assumption that the ratio is constant in the local region of the W pixel value and the G pixel value.
  • a line such as a straight line (line L2) shown in FIG. 18 may be applied.
  • k is a contrast enhancement processing adjustment parameter.
  • the pixel value of the G pixel set as the conversion target W pixel when the contrast enhancement process is applied is calculated as follows.
  • the pixel value of the W signal at the conversion target pixel position is w
  • the pixel value of the G signal to be set at the conversion target pixel position is GonW.
  • the converted G pixel value GonW can be calculated according to the following equation.
  • GonW f contrast (mG, mW, w, k)
  • mW is the low-frequency component mW of the W signal calculated by the process described with reference to FIG.
  • mG is a low-frequency component mG of the G signal calculated by the process described with reference to FIG. Note that mG is calculated using different filters shown in FIGS. 17A and 17B when the G pixel is on the left of the center W pixel and when the G pixel is on the right of the center W pixel.
  • the first pixel interpolation parameter calculation unit 202 calculates the following parameters as interpolation parameters to be applied to convert the W pixel in the RGBW array into the G pixel.
  • Low frequency component mW of the W signal, High frequency component w of W signal, Low frequency component mG of G signal These parameters are parameters corresponding to one W pixel at the center of 7 ⁇ 7 pixels to be processed.
  • the first pixel interpolation parameter calculation unit 202 performs the same process on the W pixels included in the input RGBW array, and calculates the parameters for each W pixel. These calculation parameters are output to the blend processing unit 211 shown in FIG.
  • the blend processing unit calculates the G pixel value (GonW) to be set at the position of the W pixel included in the RGBW array using these parameters and the data output from the texture detection unit 210 and the like according to the following formula.
  • GonW (weightFlat) (mG / mW) w + (1-weightFlat) (k (mG / mW) (w ⁇ mW) + mG)
  • mW low frequency component mW of the W signal
  • w the high-frequency component w of the W signal
  • mG Low frequency component mG of G signal
  • weightFlat Flatness weight
  • the weightFlat is a flatness weight detected by the texture detection unit 210.
  • the contrast enhancement processing adjustment parameter (k) can be set in various ways, such as using a preset value or using a user input value.
  • the first provisional pixel setting unit (RBonWoundG) 203 includes a second pixel interpolation parameter calculation unit (RBonGofHV) 204 and a third pixel interpolation parameter calculation unit (RBonGofAD) 205. It is set in the previous stage.
  • Both the second pixel interpolation parameter calculation unit (RBonGofHV) 204 and the third pixel interpolation parameter calculation unit (RBonGofAD) 205 calculate parameters for converting G pixels into R or B pixels.
  • the first provisional pixel setting unit (RBonWroundG) 203 executes a process of converting the W pixel position adjacent to the RB pixel into a provisional R pixel (R ′) or B pixel (B ′). To do.
  • the first provisional pixel setting unit (RBonWorldG) 203 first obtains the low frequency component mW of the W signal, the low frequency component mR of the R signal, and the low frequency component mB of the B signal in the 7 ⁇ 7 pixel region of the processing unit.
  • the low frequency component mW of the W signal corresponding to the input pixel unit 501 of 7 ⁇ 7 pixels is obtained by applying the filter 511 shown in FIG. 19 to the input pixel unit 501 of 7 ⁇ 7 pixels.
  • the filters 513 and 515 shown in FIG. 20 are applied to the input pixel unit 501 of 7 ⁇ 7 pixels, and the conversion target pixel 502 at the center of the input pixel unit 501 of 7 ⁇ 7 pixels.
  • the low frequency component mR of the R signal and the low frequency component mB of the B signal corresponding to are obtained.
  • the center pixel of the input pixel unit 501 of 7 ⁇ 7 pixels is the conversion target pixel 502.
  • the input pixel unit 501 is an input to the second pixel interpolation parameter calculation unit (RBonGofHV) 204 and the third pixel interpolation parameter calculation unit (RBonGofAD) 205, which converts the G pixel into an R or B pixel. Since it is a processing unit that calculates parameters for conversion, the conversion target pixel 502 that is the central pixel of the input pixel unit 501 is a G pixel.
  • the filter 511 for obtaining the low-frequency component mW of the W signal shown in FIG. 19 is a 7 ⁇ 7 pixel filter centered on the conversion target pixel corresponding position 512, and the coefficient setting unit is the W pixel corresponding position.
  • Each coefficient (2/128 to 12/128) is set as a coefficient at the W pixel corresponding position of the filter 511.
  • Each pixel value at the W pixel position of the input pixel unit 501 of 7 ⁇ 7 pixels is multiplied by the filter coefficient at the corresponding pixel position of the filter 511, and the addition value of each multiplication result is calculated as the low frequency component mW of the W signal. To do.
  • the filter 513 for obtaining the low-frequency component mR of the R signal shown in the upper part of FIG. 20 is a 7 ⁇ 7 pixel filter centering on the conversion target pixel corresponding position 514, and the coefficient setting unit is the R pixel corresponding position.
  • Each coefficient (1/32 to 9/32) is set as a coefficient at the position corresponding to the R pixel of the filter 513.
  • Each pixel value at the R pixel position of the 7 ⁇ 7 pixel input pixel unit 501 is multiplied by the filter coefficient at the corresponding pixel position of the filter 513, and the addition value of each multiplication result is calculated as the low frequency component mR of the R signal. To do.
  • the filter 515 for obtaining the low-frequency component mB of the B signal shown in the lower part of FIG. 20 is a 7 ⁇ 7 pixel filter centering on the conversion target pixel corresponding position 516, and the coefficient setting unit is the B pixel corresponding position.
  • Each coefficient (1/32 to 9/32) is set as a coefficient at the position corresponding to the B pixel of the filter 515.
  • Each pixel value at the B pixel position of the 7 ⁇ 7 pixel input pixel unit 501 is multiplied by the filter coefficient at the corresponding pixel position of the filter 515, and the addition value of each multiplication result is calculated as the low frequency component mB of the B signal. To do.
  • the first provisional pixel setting unit (RBonWoundG) 203 is an R pixel at the W pixel position adjacent to the periphery of the conversion target pixel 502 at the center of the input pixel unit 501 of 7 ⁇ 7 pixels. Values and B pixel values are estimated.
  • the estimation process is performed based on the assumption that the ratio of mW and mR or mW and mB is maintained in the local region in the image.
  • R 23 ′ (mR / mW) w 23
  • R 32 ′ (mR / mW) w 32
  • R 43 ′ (mR / mW) w 43
  • R 34 ′ (mR / mW) w 34
  • w 23 , w 32 , w 43 , and w 34 are W pixel values of W pixel positions adjacent to the periphery of the conversion target pixel 502 at the center of the input pixel unit 501 of 7 ⁇ 7 pixels shown in FIG.
  • B 23 ′ (mB / mW) w 23
  • B 32 ′ (mB / mW) w 32
  • B 43 ′ (mB / mW) w 43
  • B 34 ′ (mB / mW) w 34
  • w 23 , w 32 , w 43 , and w 34 are W pixel values of W pixel positions adjacent to the periphery of the conversion target pixel 502 at the center of the 7 ⁇ 7 pixel input pixel unit 501 shown in the drawing.
  • the first provisional pixel setting unit (RBonWoundG) 203 calculates the R pixel value and the B pixel value of the W pixel position adjacent to the periphery of the conversion target pixel 502 at the center of the input pixel unit 501 of 7 ⁇ 7 pixels. These are estimated and provided to the second pixel interpolation parameter calculation unit (RBonGofHV) 204 and the third pixel interpolation parameter calculation unit (RBonGofAD) 205.
  • the second pixel interpolation parameter calculation unit (RBonGofHV) 204 calculates a parameter corresponding to a vertical or horizontal edge as a parameter applied to the process of converting the G pixel into the R pixel or the B pixel.
  • the edge detection unit 209 dirH Horizontal gradient information
  • dirV Vertical gradient information
  • dirA Right diagonal upward gradient information
  • dirD Left diagonal upward gradient information
  • the second pixel interpolation parameter calculation unit (RBonGofHV) 204 inputs the edge information corresponding to the G pixel to be converted.
  • the second pixel interpolation parameter calculation unit (RBonGofHV) 204 compares dirH and dirV of the four-direction edge information (dirH, dirV, dirA, dirD) corresponding to the G pixel to be converted, and determines the vertical direction according to the comparison result. Alternatively, a parameter corresponding to the horizontal edge is calculated.
  • the parameter to be calculated is an interpolation parameter for converting a G pixel into an R pixel or a B pixel.
  • the second pixel interpolation parameter calculation unit (RBonGofHV) 204 corresponds to the conversion target pixel 502 at the center position of the 7 ⁇ 7 pixel input pixel unit 501 according to the edge direction of the 7 ⁇ 7 pixel input pixel unit 501. Calculate high frequency components.
  • the edge direction information is input from the edge detection unit 209.
  • the edge direction of the input pixel unit 501 of 7 ⁇ 7 pixels is the horizontal direction or the vertical direction. Or a flat region where the edge direction cannot be specified.
  • the discrimination process is performed using a preset threshold value. Note that the conversion target pixel 502 at the center position of the input pixel unit 501 of 7 ⁇ 7 pixels is originally a G pixel.
  • the filter 531 is applied to calculate the average of the pixel values of two W pixels adjacent to the conversion target pixel 502 at the center position. This average value is calculated as a high frequency component (w_h) corresponding to the conversion target pixel 502 having the horizontal edge direction.
  • the filter 531 is a filter in which filter coefficients are set in a line parallel to the edge direction (lateral direction). That is, it is a filter that reflects only the pixel value in the direction in which the change in the pixel value is estimated to be small.
  • a filter 532 is applied to calculate the average of the pixel values of two W pixels that are vertically adjacent to the conversion target pixel 502 at the center position. This average value is calculated as a high frequency component (w_v) corresponding to the conversion target pixel 502 having the vertical edge direction.
  • the filter 532 is a filter in which filter coefficients are set in a line parallel to the edge direction (vertical direction). That is, it is a filter that reflects only the pixel value in the direction in which the change in the pixel value is estimated to be small. Note that the right end of FIG. 22 shows an image diagram representing an edge example of the input pixel unit 501 of 7 ⁇ 7 pixels to be processed.
  • the second pixel interpolation parameter calculation unit (RBonGofHV) 204 applies the filter 533 to all the pixels as shown in FIG. 23C regardless of the edge direction of the input pixel unit 501 of 7 ⁇ 7 pixels. Then, the average of the pixel values of the four W pixels adjacent in the vertical and horizontal directions of the conversion target pixel 502 at the center position is calculated, and the high frequency component (w_n) corresponding to the conversion target pixel 502 is calculated.
  • the filter 533 is set as a filter in which filter coefficients are set uniformly in all directions.
  • the second pixel interpolation parameter calculation unit (RBonGofHV) 204 calculates a parameter corresponding to the vertical or horizontal edge as a parameter applied to the process of converting the G pixel into the R pixel or the B pixel.
  • RonG (H) (mR ′ / mW) (w_h)
  • RonG (V) (mR ′ / mW) (w_v)
  • RonGn (mR ′ / mW) (w_n)
  • BonG (H) (mB ′ / mW) (w_h)
  • BonG (V) (mB ′ / mW) (w_v)
  • BonGn (mB ′ / mW) (w_n)
  • RonG (H) and BonG (H) are parameters calculated for pixels for which the edge direction is determined to be the horizontal direction and the horizontal edge corresponding high-frequency component (w_h) is calculated.
  • RonG (V) and BonG (V) are parameters that are calculated for the pixels for which the edge direction is determined to be the vertical direction and the vertical edge corresponding high-frequency component (w_v) is calculated.
  • RonGn and BonGn are calculated as parameters corresponding to all pixels regardless of the edge direction.
  • mR ′ is the W pixel position adjacent to the periphery of the conversion target pixel 502 at the center of the input pixel unit 501 calculated by the first provisional pixel setting unit (RBonWoundG) 203 described above.
  • the low-frequency component correction value mR ′ of the R signal corresponding to the input pixel unit 501 of 7 ⁇ 7 pixels calculated by applying “, R 34 ′).
  • mB ′ uses the B pixel value of the W pixel position adjacent to the periphery of the conversion target pixel 502 at the center of the input pixel unit 501 calculated by the first provisional pixel setting unit (RBonWoundG) 203 described above.
  • the low-frequency component correction value mB ′ of the B signal corresponding to the input pixel unit 501 of 7 ⁇ 7 pixels calculated by applying “, B 34 ′).
  • the filter 551 for obtaining the corrected low-frequency component mR ′ of the R signal shown in the upper part of FIG. 24 is a 7 ⁇ 7 pixel filter centered on the conversion target pixel corresponding position 552, and the coefficient setting unit is the original of the input RGBW array image.
  • the first provisional pixel setting unit (RBonWoundG) 203 performs R pixels corresponding to the positions of four W pixels around the conversion target pixel corresponding position 502 (up, down, left, and right).
  • the values (R xy ′ R 23 ′, R 32 ′, R 43 ′, R 34 ′) are estimated.
  • the calculation process of the low-frequency component correction value mR ′ of the R signal corresponding to the input pixel unit 501 of 7 ⁇ 7 pixels is performed by the first temporary pixel setting unit (RBonWoundG) 203 in addition to the R pixels originally included in the RGBW array.
  • each R pixel value at the original R pixel position of the input pixel unit 501 of 7 ⁇ 7 pixels and the R pixel value estimated by the first provisional pixel setting unit (RBonWoundG) 203 are calculated.
  • An added value of each multiplication result is calculated as a corrected low frequency component mR ′ of the R signal.
  • each B pixel value of the original B pixel position of the input pixel unit 501 of 7 ⁇ 7 pixels and the estimated R of the first provisional pixel setting unit (RBonWoundG) 203 are calculated.
  • An added value of each multiplication result is calculated as a corrected low frequency component mB ′ of the B signal.
  • High-frequency components (w_h), (w_v), (w_n) corresponding to the conversion target pixel 502 described with reference to FIGS.
  • the corrected low frequency component mR ′ of the R signal and the corrected low frequency component mB ′ of the B signal described with reference to FIG. can be used for calculation.
  • the low-frequency component mW of the W signal described with reference to FIG. 19 is a value calculated by the first provisional pixel setting unit (RBonWorldG) 203, and the second pixel interpolation parameter calculation unit (RBonGofHV) 204 is This calculated value may be used as it is, or a process similar to the process described with reference to FIG. 19 may be performed again to recalculate.
  • the second pixel interpolation parameter calculation unit (RBonGofHV) 204 outputs the calculated parameters to the blend processing unit 211.
  • the blend processing unit 211 executes blend processing according to the edge state, and converts the G pixel position, which is the conversion target pixel 502 at the center position of the input pixel unit 501 of 7 ⁇ 7 pixels, into R pixels. Determine the value. The processing of the blend processing unit 211 will be described later.
  • a third pixel interpolation parameter calculation unit (RBonGofAD) 205 calculates a parameter corresponding to an oblique edge as a parameter applied to the process of converting the G pixel into the R pixel or the B pixel.
  • the edge detection unit 209 dirH Horizontal gradient information
  • dirV Vertical gradient information
  • dirA Right diagonal upward gradient information
  • dirD Left diagonal upward gradient information
  • the third pixel interpolation parameter calculation unit (RBonGofAD) 205 compares dirA and dirD of the four-direction edge information (dirH, dirV, dirA, dirD) corresponding to the G pixel to be converted, and differs according to the comparison result. A process is executed to calculate a parameter corresponding to the diagonal edge.
  • the parameter to be calculated is an interpolation parameter for converting a G pixel into an R pixel or a B pixel.
  • the third pixel interpolation parameter calculation unit (RBonGofAD) 205 first applies the conversion target pixel 502 at the center position of the input pixel unit 501 of 7 ⁇ 7 pixels according to the edge direction of the input pixel unit 501 of 7 ⁇ 7 pixels. Estimate the corresponding high frequency components.
  • the edge direction information is input from the edge detection unit 209.
  • the edge direction of the input pixel unit 501 of 7 ⁇ 7 pixels is diagonally upper right by comparing the size of dirA (right diagonal upward gradient information) input from the edge detection unit 209 and dirD (left diagonal upward gradient information). It is determined whether the direction is the direction or the upper left direction. For example, the discrimination process is performed using a preset threshold value. Note that the conversion target pixel 502 at the center position of the input pixel unit 501 of 7 ⁇ 7 pixels is originally a G pixel.
  • the processing is different between the case where the edge direction of the input pixel unit 501 of 7 ⁇ 7 pixels is the upper right direction and the left direction.
  • a process in the case where the edge direction of the input pixel unit 501 of 7 ⁇ 7 pixels is the diagonally upper right direction will be described.
  • the third pixel interpolation parameter calculation unit (RBonGofAD) 205 is the conversion target at the center position of the input pixel unit 501 of 7 ⁇ 7 pixels.
  • a high frequency component corresponding to the pixel 502 is estimated. This process will be described with reference to FIG.
  • a filter 571 is applied as shown in FIG.
  • the pixel value of 12 W pixels in the downward direction is applied to calculate the high frequency component (W_a) corresponding to the conversion target pixel 502.
  • the filter 571 is a filter in which a filter coefficient is set to a line parallel to the edge direction (upward right) and the coefficient value at the center is increased. That is, it is a filter that reflects only the pixel value in the direction in which the change in the pixel value is estimated to be small.
  • the third pixel interpolation parameter calculation unit (RBonGofAD) 205 uses, for example, a high frequency component (W_a) calculated by applying the filter 571 shown in FIG.
  • the following parameters are calculated as parameters applied to the process of converting G pixels to R pixels.
  • RonG (A) (mR ′ / mW) (w_a)
  • the following parameters are calculated as parameters applied to the process of converting G pixels to B pixels.
  • BonG (A) (mB ′ / mW) (w_a)
  • These parameters are calculated as parameters corresponding to the conversion target pixel in which the edge direction of the input pixel unit 501 of 7 ⁇ 7 pixels set with the conversion target pixel as the central pixel is determined as the diagonally upper right direction, and blending is performed.
  • the data is output to the processing unit 211.
  • mW is the low-frequency component mW of the W signal calculated by the same process as described with reference to FIG. w_a is a high-frequency component (w_a) corresponding to the conversion target pixel 502 described with reference to FIG. mR ′ and mB ′ are the corrected low frequency component mR ′ of the R signal described with reference to FIG. 24, the corrected low frequency component mB ′ of the B signal, It is.
  • Each of these values may be a value calculated by the first provisional pixel setting unit (RBonWoundG) 203, a value calculated by the second pixel interpolation parameter calculation unit (RBonGofHV) 204, or a third pixel interpolation parameter.
  • the calculation unit (RBonGofAD) 205 may newly calculate.
  • the third pixel interpolation parameter calculation unit (RBonGofAD) 205 inputs the input pixel unit 501 of 7 ⁇ 7 pixels.
  • the low frequency component mG and the high frequency component g of the G signal corresponding to the conversion target pixel 502 at the center position are calculated.
  • a filter 581 shown in FIG. 26 is applied to calculate the low frequency component mG of the G signal.
  • the filter 581 is a filter in which a filter coefficient is set in the G signal pixel portion of 7 ⁇ 7 pixels, and the coefficient at the center is set high.
  • a filter 582 shown in FIG. 26 is applied to calculate the high-frequency component g of the G signal.
  • the filter 582 is a filter in which a filter coefficient for obtaining the pixel value of the conversion target pixel 502 is set.
  • the third pixel interpolation parameter calculation unit (RBonGofAD) 205 uses, for example, the low frequency component mG of the G signal calculated by applying the filters 581 and 582 shown in FIG.
  • the following parameters are calculated as parameters applied to the process of converting G pixels to R pixels.
  • RonG (D) (mR ′ / mG) g
  • the following parameters are calculated as parameters applied to the process of converting G pixels to B pixels.
  • BonG (D) (mB ′ / mG) g
  • These parameters are calculated as parameters corresponding to the conversion target pixel in which the edge direction of the input pixel unit 501 of 7 ⁇ 7 pixels set with the conversion target pixel as the central pixel is determined to be the diagonally upper left direction, and blending The data is output to the processing unit 211.
  • mG is the low frequency component mG of the G signal described with reference to FIG. g is the high-frequency component g of the G signal described with reference to FIG. mR ′ and mB ′ are the corrected low frequency component mR ′ of the R signal described with reference to FIG. 24, the corrected low frequency component mB ′ of the B signal, It is.
  • These parameters are calculated and output to the blend processing unit 211.
  • RonG (D) (mR ′ / mG) g
  • BonG (D) (mB ′ / mG) g
  • the second provisional pixel setting unit (RBonWoundRB) 206 includes a fourth pixel interpolation parameter calculation unit (RBonRBofHV) 207 and a fifth pixel interpolation parameter calculation unit (RBonRBofAD) 208. It is set in the previous stage.
  • RBonRBofHV fourth pixel interpolation parameter calculation unit
  • RBonRBofAD fifth pixel interpolation parameter calculation unit
  • the second provisional pixel setting unit (RBonWoundRB) 206 executes a process of converting the W pixel position adjacent to the RB pixel into a provisional R pixel (R ′) or B pixel (B ′). To do.
  • the second provisional pixel setting unit (RBonWoundRB) 206 first obtains the low-frequency component mW of the W signal, the low-frequency component mR of the R signal, and the low-frequency component mB of the B signal in the 7 ⁇ 7 pixel region of the processing unit.
  • the calculation process of the low-frequency component mW of the W signal is performed as a process similar to the process of the first provisional pixel setting unit (RBonWoundG) 203 described above with reference to FIG. Further, as shown in FIG. 27, the filters 611 and 613 are applied to the input pixel unit 601 of 7 ⁇ 7 pixels, and R corresponding to the conversion target pixel 602 in the center of the input pixel unit 601 of 7 ⁇ 7 pixels. The low frequency component mR of the signal and the low frequency component mB of the B signal are obtained.
  • the filter 611 for obtaining the low frequency component mR of the R signal shown in the upper part of FIG. 27 is a 7 ⁇ 7 pixel filter centering on the conversion target pixel corresponding position 612, and the coefficient setting unit is the R pixel corresponding position.
  • Each coefficient (1/32 to 9/32) is set as a coefficient at the R pixel corresponding position of the filter 611.
  • Each pixel value at the R pixel position of the input pixel unit 601 of 7 ⁇ 7 pixels is multiplied by the filter coefficient at the corresponding pixel position of the filter 611, and the addition value of each multiplication result is calculated as the low frequency component mR of the R signal. To do.
  • the filter 613 for obtaining the low frequency component mB of the B signal shown in the lower part of FIG. 27 is a 7 ⁇ 7 pixel filter centered on the conversion target pixel corresponding position 614, and the coefficient setting unit is the B pixel corresponding position.
  • Each coefficient (1/32 to 9/32) is set as a coefficient at the B pixel corresponding position of the filter 613.
  • Each pixel value at the B pixel position of the 7 ⁇ 7 pixel input pixel unit 601 is multiplied by the filter coefficient at the corresponding pixel position of the filter 613, and the addition value of each multiplication result is calculated as the low-frequency component mB of the B signal. To do.
  • the second temporary pixel setting unit (RBonWoundRB) 206 estimates the R pixel value and the B pixel value of the W pixel position adjacent to the periphery of the conversion target pixel 602 at the center of the input pixel unit 601 of 7 ⁇ 7 pixels. To do. This process is the same as the process of the first provisional pixel setting unit (RBonWoundG) 203 described above with reference to FIG.
  • the second temporary pixel setting unit (RBonWoundRB) 206 calculates the R pixel value and the B pixel value of the W pixel position adjacent to the periphery of the conversion target pixel 602 at the center of the input pixel unit 601 of 7 ⁇ 7 pixels. These are estimated and provided to the fourth pixel interpolation parameter calculation unit (RBonRBofHV) 207 and the fifth pixel interpolation parameter calculation unit (RBonRBofAD) 208.
  • RBonRBofHV fourth pixel interpolation parameter calculation unit
  • RBonRBofAD fifth pixel interpolation parameter calculation unit
  • the fourth pixel interpolation parameter calculation unit (RBonRBofHV) 207 calculates a parameter corresponding to a vertical or horizontal edge as a parameter applied to the process of converting the R pixel into the B pixel or the B pixel into the R pixel.
  • the edge detection unit 209 dirH Horizontal gradient information
  • dirV Vertical gradient information
  • dirA Right diagonal upward gradient information
  • dirD Left diagonal upward gradient information
  • RBonRBofHV fourth pixel interpolation parameter calculation unit
  • the fourth pixel interpolation parameter calculation unit (RBonRBofHV) 207 compares dirH and dirV of the edge information (dirH, dirV, dirA, dirD) in four directions corresponding to the R / B pixels to be converted, and according to the comparison result. To calculate parameters corresponding to vertical or horizontal edges.
  • the parameter to be calculated is a parameter applied to the process of converting the R pixel into the B pixel or the B pixel into the R pixel.
  • the fourth pixel interpolation parameter calculation unit (RBonRBofHV) 207 first applies the conversion target pixel 602 at the center position of the input pixel unit 601 of 7 ⁇ 7 pixels according to the edge direction of the input pixel unit 601 of 7 ⁇ 7 pixels. The corresponding high frequency component is calculated.
  • the edge direction information is input from the edge detection unit 209.
  • the edge direction of the input pixel unit 601 of 7 ⁇ 7 pixels is the horizontal direction or the vertical direction. Or a flat region where the edge direction cannot be specified.
  • the discrimination process is performed using a preset threshold value. Note that the conversion target pixel 602 at the center position of the input pixel unit 601 of 7 ⁇ 7 pixels is originally an R or B pixel.
  • the process of estimating the high frequency component corresponding to the conversion target pixel 602 at the center position of the input pixel unit 601 of 7 ⁇ 7 pixels is performed as the process of the second pixel interpolation parameter calculation unit (RBonGofHV) 204 as shown in FIG. This process is the same as the process described with reference to FIG.
  • the high frequency component data calculated by the fourth pixel interpolation parameter calculation unit (RBonRBofHV) 207 is as follows.
  • the edge direction of the input pixel unit 601 of 7 ⁇ 7 pixels is the horizontal direction
  • the high frequency component corresponding to the conversion target pixel 602 having the horizontal edge direction by applying the filter 531 illustrated in FIG. (W_h) is calculated.
  • the edge direction of the input pixel unit 601 of 7 ⁇ 7 pixels is the vertical direction
  • a high frequency component corresponding to the conversion target pixel 602 having the vertical edge direction by applying the filter 532 illustrated in FIG. (W_v) is calculated.
  • the high frequency component (w_n) corresponding to the conversion target pixel 602 is calculated for all the pixels regardless of the edge direction by applying, for example, the filter 533 illustrated in FIG.
  • the fourth pixel interpolation parameter calculation unit (RBonRBofHV) 207 calculates parameters to be applied to the process of converting the R pixel into the B pixel or the B pixel into the R pixel.
  • RonB (H) (mR ′ / mW) (w_h)
  • RonB (V) (mR ′ / mW) (w_v)
  • RonBn (mR ′ / mW) (w_n)
  • BonR (H) (mB ′ / mW) (w_h)
  • BonR (V) (mB ′ / mW) (w_v)
  • BonRn (mB ′ / mW) (w_n)
  • RonB (H) and BonR (H) are parameters calculated for pixels for which the edge direction is determined to be the horizontal direction and the horizontal edge corresponding high-frequency component (w_h) is calculated.
  • RonB (V) and BonR (V) are parameters that are calculated for the pixels for which the edge direction is determined to be the vertical direction and the vertical edge corresponding high-frequency component (w_v) is calculated.
  • RonBn and BonRn are calculated as parameters corresponding to all pixels regardless of the edge direction.
  • mR ′ is the W pixel position adjacent to the periphery of the conversion target pixel 602 at the center of the input pixel unit 601 calculated by the second provisional pixel setting unit (RBonWoundRB) 206 described above.
  • This is a correction value mR ′ of the low frequency component mR of the R signal corresponding to the input pixel unit 601 of 7 ⁇ 7 pixels calculated using the R pixel value.
  • mB ′ uses the B pixel value of the W pixel position adjacent to the periphery of the conversion target pixel 502 at the center of the input pixel unit 501 calculated by the second provisional pixel setting unit (RBonWoundRB) 206 described above.
  • the filter 621 for obtaining the corrected low frequency component mR ′ of the R signal shown in the upper part of FIG. 28 is a 7 ⁇ 7 pixel filter centered on the conversion target pixel corresponding position 622, and the coefficient setting unit is the original of the input RGBW array image.
  • the low-frequency component correction value mR ′ of the R signal corresponding to the input pixel unit 601 of 7 ⁇ 7 pixels is estimated by the second temporary pixel setting unit (RBonWoundRB) 206 in addition to the R pixels originally included in the RGBW array.
  • each R pixel value at the original R pixel position of the input pixel unit 601 of 7 ⁇ 7 pixels and the R pixel value estimated by the second temporary pixel setting unit (RBonWoundRB) 206 are calculated.
  • Each of (R xy ′ R 23 ′, R 32 ′, R 43 ′, R 34 ′) is multiplied by the filter coefficient at the corresponding pixel position of the filter 621.
  • An added value of each multiplication result is calculated as a corrected low frequency component mR ′ of the R signal.
  • each B pixel value at the original B pixel position of the input pixel unit 601 of 7 ⁇ 7 pixels and the estimated R of the second temporary pixel setting unit (RBonWoundRB) 206 are calculated.
  • An added value of each multiplication result is calculated as a corrected low frequency component mB ′ of the B signal.
  • RonB (V) (mR ′ / mW) (w_v)
  • RonBn (mR ′ / mW) (w_n)
  • BonR (H) (mB ′ / mW) (w_h)
  • These parameters are Low-frequency component mW of the W signal calculated by the same process as described with reference to FIG.
  • High-frequency components (w_h), (w_v), (w_n) calculated by the same processing as that described with reference to FIGS.
  • the fourth pixel interpolation parameter calculation unit (RBonRBofHV) 207 outputs the calculated parameters to the blend processing unit 211.
  • the blend processing unit 211 executes blend processing according to the edge state, and determines a conversion pixel value of an R or B pixel that is the conversion target pixel 602 at the center position of the input pixel unit 601 of 7 ⁇ 7 pixels. The processing of the blend processing unit 211 will be described later.
  • the fifth pixel interpolation parameter calculation unit (RBonRBofAD) 208 calculates a parameter corresponding to an oblique edge as a parameter applied to the process of converting the R pixel into the B pixel or the B pixel into the R pixel.
  • the edge detection unit 209 dirH Horizontal gradient information
  • dirV Vertical gradient information
  • dirA Right diagonal upward gradient information
  • dirD Left diagonal upward gradient information
  • RBonRBofAD fifth pixel interpolation parameter calculation unit
  • the fifth pixel interpolation parameter calculation unit (RBonRBofAD) 208 compares dirA and dirD of the four-direction edge information (dirH, dirV, dirA, dirD) corresponding to the G pixel to be converted, and differs according to the comparison result. A process is executed to calculate a parameter corresponding to the diagonal edge.
  • the parameter to be calculated is an interpolation parameter for converting the R pixel into the B pixel or the B pixel into the R pixel.
  • the fifth pixel interpolation parameter calculation unit (RBonRBofAD) 208 first determines the center of the input pixel unit 601 of 7 ⁇ 7 pixels according to the edge direction of the input pixel unit 601 of 7 ⁇ 7 pixels shown in FIGS. 27 and 28, for example. A high frequency component corresponding to the conversion target pixel 602 at the position is estimated.
  • the edge direction information is input from the edge detection unit 209.
  • the edge direction of the input pixel unit 601 of 7 ⁇ 7 pixels is diagonally upper right by comparing the size of dirA (right diagonal upward gradient information) input from the edge detection unit 209 and dirD (left diagonal upward gradient information). It is determined whether the direction is the direction or the upper left direction. For example, the discrimination process is performed using a preset threshold value. Note that the conversion target pixel 602 at the center position of the input pixel unit 601 of 7 ⁇ 7 pixels is an R or B pixel.
  • the processing differs depending on whether the edge direction of the input pixel unit 601 of 7 ⁇ 7 pixels is the diagonally upward right direction or the diagonally left direction.
  • the fifth pixel interpolation parameter calculation unit (RBonRBofAD) 208 performs 7 ⁇ 7 pixels by the same processing as that described above with reference to FIG. 25 as the processing of the third pixel interpolation parameter calculation unit (RBonGofAD) 205.
  • the high-frequency component (W_a) corresponding to the conversion target pixel at the center position of the input pixel unit is calculated.
  • the fifth pixel interpolation parameter calculation unit (RBonRBofAD) 208 uses, for example, a high frequency component (W_a) calculated by applying the filter 571 shown in FIG.
  • the following parameters are calculated as parameters applied to the process of converting the B pixel into the R pixel.
  • RonB (A) (mR ′ / mW) (w_a)
  • the following parameters are calculated as parameters applied to the process of converting the R pixel into the B pixel.
  • BonR (A) (mB ′ / mW) (w_a)
  • These parameters are calculated as parameters corresponding to the conversion target pixel in which the edge direction of the input pixel unit 601 of 7 ⁇ 7 pixels set with the conversion target pixel as the central pixel is determined as the diagonally upper right direction, and blending is performed.
  • the data is output to the processing unit 211.
  • mW is the low-frequency component mW of the W signal calculated by the same process as described with reference to FIG. w_a is a high-frequency component (w_a) corresponding to the conversion target pixel 502 described with reference to FIG. mR ′ and mB ′ are the corrected low-frequency component mR ′ of the R signal described with reference to FIG. 28, the corrected low-frequency component mB ′ of the B signal, It is.
  • Each of these values may be a value already calculated by another processing unit, or may be newly calculated by the fifth pixel interpolation parameter calculation unit (RBonRBofAD) 208.
  • the fifth pixel interpolation parameter calculation unit (RBonRBofAD) 208 inputs the input pixel unit 601 of 7 ⁇ 7 pixels.
  • the low-frequency component mG and the high-frequency component g of the G signal corresponding to the conversion target pixel 602 at the center position are calculated.
  • a filter 661 shown in FIG. 29 is applied to calculate the low frequency component mG of the G signal.
  • the filter 661 is a filter in which a filter coefficient is set in the G signal pixel portion of 7 ⁇ 7 pixels, and the coefficient in the center portion is set high.
  • a filter 662 shown in FIG. 29 is applied to calculate the high frequency component g of the G signal.
  • the filter 662 is a filter in which a filter coefficient for obtaining the average of the upper left and lower right pixel values of the conversion target pixel 602, that is, the average of the pixel values in the edge direction, is set.
  • These parameters are calculated as parameters corresponding to the conversion target pixel determined that the edge direction of the input pixel unit 601 of 7 ⁇ 7 pixels set with the conversion target pixel as the central pixel is the upper left direction, and blended
  • the data is output to the processing unit 211.
  • mG is the low-frequency component mG of the G signal described with reference to FIG. g is the high-frequency component g of the G signal described with reference to FIG. mR ′ and mB ′ are the corrected low-frequency component mR ′ of the R signal described with reference to FIG. 28, the corrected low-frequency component mB ′ of the B signal, It is.
  • These parameters are calculated and output to the blend processing unit 211.
  • the R pixel value at the R pixel position or the B pixel value estimation (correction) process at the B pixel position when the edge direction of the input pixel unit 601 of 7 ⁇ 7 pixels is the diagonally upper left direction.
  • RonB (D) (mR ′ / mG)
  • BonR (D) (mB ′ / mG) g
  • RonB (D) and BonR (D) from the correlation between the G pixel and the R pixel. This is because the G pixel, the R pixel, and the B pixel have the same phase with respect to the upper left diagonal direction, so that the effect of preventing the occurrence of false colors is enhanced.
  • the blend processing unit 211 inputs the pixel interpolation parameters generated by the first to fifth pixel interpolation parameter calculation units, and further inputs the edge information detected by the edge detection unit 209 and the texture information detected by the texture detection unit 210. Thus, the final converted pixel value is calculated.
  • the edge information input from the edge detection unit 209 is the following information.
  • dirH Horizontal gradient information
  • dirV Vertical gradient information
  • dirA Right diagonal upward gradient information
  • dirD Left diagonal upward gradient information
  • the texture information input from the texture detection unit 210 is the following flatness weight (weightFlat) information calculated according to the equation (Equation 7) described above.
  • weightFlat (x, y) f flat (W TX (p)) (Expression 7)
  • a linear approximation function as shown in FIG. 14 can be used as f flat (r).
  • the blend processing unit 211 inputs these pieces of information and determines a final converted pixel value for converting the RGBW array into the RGB array.
  • a processing sequence executed by the blend processing unit 211 will be described with reference to flowcharts shown in FIGS. 30 and 31.
  • the blend processing unit 211 determines an edge direction attribute for each pixel in step S11 illustrated in FIG.
  • the blend processing unit 211 uses the pixel unit edge information (dirH, dirV, dirA, dirD) input from the edge detection unit 209 to determine the pixel unit edge direction attribute according to the following determination formula.
  • step S ⁇ b> 12 shown in FIG. 30 the blend processing unit 211 obtains the edge direction degree (ratio HV) between the vertical and horizontal edges and the diagonal edges from these dirHV and dirAD according to the following formula.
  • ratio HV (dirD + offset) / (dirA + offset)
  • (Offset) in the above equation is a non-negative value and is a parameter for avoiding zero division and adjusting detection sensitivity.
  • edge direction degree (ratio HV) calculated by the above formula is obtained by, for example, a non-linear process using the function f ratio ( ratio HV) shown in FIG. Vertical and horizontal edge direction weights (weightHV) are calculated.
  • the threshold values Th0 (HV_LIMIT0) and Th1 (HV_LIMIT1) are adjustment parameters as threshold values applied to the nonlinear processing.
  • the vertical / horizontal edge direction weight (weightHV) indicates the strength of the vertical / horizontal edge relative to the diagonal edge.
  • a smaller value of the direction edge direction weight (weightHV) indicates that the diagonal edge is stronger than the vertical and horizontal edges.
  • step S13 shown in FIG. 31 the blend processing unit 211 determines a final converted pixel value (RGB pixel value) for converting the RGBW array into the RGB array.
  • the data conversion processing unit 200 of the image processing apparatus executes conversion processing from the RGBW array 181 to the RGB array 182 as described above with reference to FIG.
  • Convert W pixel position to G pixel (estimate G pixel value) (GonW)
  • Convert G pixel position to R pixel (estimate R pixel value) (RonG)
  • Convert G pixel position to B pixel (estimate B pixel value) (BonG)
  • Convert B pixel position to R pixel (estimate R pixel value) (RonB)
  • Convert R pixel position to B pixel (estimate B pixel value) (BonR)
  • the blend processing unit 211 determines these final converted pixel values.
  • the G pixel value (GonW) set in the conversion process of the W pixel position to the G pixel is calculated by the following equation (Equation 11).
  • GonW (weightFlat) (mG / mW) w + (1-weightFlat) (k (mG / mW) (w ⁇ mW) + mG) ... (Formula 11)
  • mW low frequency component mW of the W signal
  • w the high-frequency component w of the W signal
  • mG Low frequency component mG of G signal weightFlat: Flatness weight
  • G pixel value (GonW) calculation formula shown in the above formula (Formula 11) depends on the flatness weight (weightFlat) of the conversion target pixel.
  • GonW (dirHV) converted G pixel value calculated by applying contrast enhancement
  • GonWn (dirHV) converted G pixel value calculated without applying contrast enhancement
  • the Brent ratio of these values is changed to finally This is an equation for calculating a converted G pixel value.
  • the final G pixel value (GonW) is determined by changing the blend ratio according to the flatness of the conversion target pixel.
  • RonG_hv (1-weightFlat) ⁇ (RonG (dirHV)) + (weightFlat) ⁇ (RonGn) ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ (Formula 21)
  • RonG_ad (RonG (dirAD)) ... (Formula 22)
  • RonG (weightHV) ⁇ (RonG_hv) + (1-weightHV) RonG_ad ... (Formula 23)
  • RonG (weightHV) ⁇ (RonG_hv) + (1-weightHV) RonG_ad ...
  • RonG (dirHV), RonGn are the interpolation parameters calculated by the second pixel interpolation parameter calculation unit (RBonGofHV) 204 described above, and are the following parameters applied to the process of converting G pixels on the vertical or horizontal edge into R pixels. .
  • RonG (H) (mR ′ / mW) (w_h)
  • RonG (V) (mR ′ / mW) (w_v)
  • RonGn (mR ′ / mW) (w_n)
  • dirHV H
  • RonG (dirAD) This is the interpolation parameter calculated by the third pixel interpolation parameter calculation unit (RBonGofAD) 205, and is the following parameter applied to the process of converting the G pixel on the oblique edge to the R pixel.
  • RonG (A) (mR ′ / mW) (w_a)
  • RonG (D) (mR ′ / mG) g
  • dirAD A
  • dirAD D
  • Expression (Expression 21) is a calculation expression for calculating the R pixel value (RonG_hv) depending on the vertical and horizontal edges according to the vertical and horizontal edge information of the conversion target pixel and the flatness weight (weightFlat).
  • the W pixel value (w_n) calculated by applying the filter 533 shown in FIG.
  • the estimated R pixel value, ie, RonGn (mR ′ / mW) (w_n) Increase the weight of this value.
  • RonG (dirHV) is In the case of a horizontal edge, dirH ⁇ dirV, and the R pixel value estimated using the W pixel value (w_h) calculated by applying the filter 531 shown in FIG.
  • the vertical edge dirH> dirV
  • Expression (Expression 21) is a calculation expression for calculating the R pixel value (RonG_hv) depending on the vertical and horizontal edges according to the vertical and horizontal edge information of the conversion target pixel and the flatness weight (weightFlat).
  • RonG (A) (mR ′ / mW) (w_a)
  • RonG (D) (mR ′ / mG) g This is an expression for selecting these.
  • the equation (Equation 22) is a calculation equation for calculating the R pixel value (RonG_hv) depending on the oblique edge according to the oblique edge direction information of the conversion target pixel.
  • the blend processing unit 211 further performs blend processing on (RonG_hv) and (RonG_ad) calculated by the above formulas (Formula 21) and (Formula 22) according to the following formula (Formula 23) to obtain a final R pixel.
  • the value (RonG) is calculated.
  • RonG (weightHV) ⁇ (RonG_hv) + (1-weightHV) RonG_ad
  • Equation 23 is R pixel value (RonG_hv) depending on the vertical and horizontal edges calculated by Equation 21 R pixel value (RonG_ad) depending on the diagonal edge calculated by Equation 22 These are equations for blending according to the vertical and horizontal edge direction weights (weightHV) calculated in step S12 to calculate the final R pixel value (RonG).
  • the vertical / horizontal edge direction weight (weightHV) indicates the strength of the vertical / horizontal edge relative to the diagonal edge, and the larger the vertical / horizontal edge direction weight (weightHV), the vertical / horizontal direction than the diagonal edge.
  • the final R pixel value (RonG) is determined by changing the blend ratio according to the edge direction of the conversion target pixel.
  • the blend processing unit 211 obtains a converted pixel value (BonG_hv) corresponding to the vertical and horizontal direction edges and a converted pixel value (BonG_ad) corresponding to the diagonal direction edges according to the following expressions (Expression 31) and (Expression 32).
  • BonG_hv (1 ⁇ weightFlat) ⁇ (BonG (dirHV)) + (weightFlat) ⁇ (BonGn) ⁇ ⁇ ⁇ ⁇ ⁇ (Formula 31)
  • BonG_ad (BonG (dirAD)) ... (Formula 32)
  • BonG (dirHV), BonGn are the interpolation parameters calculated by the second pixel interpolation parameter calculation unit (RBonGofHV) 204 described above, and are the following parameters applied to the process of converting the G pixel on the vertical or horizontal edge into the B pixel. .
  • BonG (H) (mB ′ / mW) (w_h)
  • BonG (V) (mB ′ / mW) (w_v)
  • BonGn (mB ′ / mW) (w_n)
  • BonG (dirAD) This is the interpolation parameter calculated by the third pixel interpolation parameter calculation unit (RBonGofAD) 205, and is the following parameter applied to the process of converting the G pixel on the oblique edge to the R pixel.
  • BonG (A) (mB ′ / mW) (w_a)
  • BonG (D) (mB ′ / mW) (w_d)
  • B pixel value (BonG_hv) that depends on the vertical and horizontal edges calculated by Equation 31
  • B pixel value (BonG_ad) depending on the diagonal edge calculated by Equation 32
  • weightHV vertical and horizontal edge direction weights
  • RonB R pixel value
  • the blend processing unit 211 first obtains the vertical / horizontal edge corresponding conversion pixel value (RonB_hv) and the diagonal direction edge corresponding conversion pixel value (RonB_ad) according to the following formulas (formula 41) and (formula 42).
  • RonB_hv (1-weightFlat) ⁇ (RonB (dirHV)) + (weightFlat) ⁇ (RonBn) ...
  • RonB_ad (RonB (dirAD)) ... (Formula 42)
  • RonB (weightHV) ⁇ (RonB_hv) + (1 ⁇ weightHV) RonB_ad ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ (Formula 43)
  • the R pixel value (RonB) is calculated when the B pixel position in the RGBW array is converted to the R pixel.
  • RonB (dirHV), RonBn are the interpolation parameters calculated by the fourth pixel interpolation parameter calculation unit (RBonRBofHV) 207 described above, and are the following parameters applied to the process of converting the B pixel on the vertical or horizontal edge into the R pixel. .
  • RonB (H) (mR ′ / mW) (w_h)
  • RonB (V) (mR ′ / mW) (w_v)
  • RonBn (mR ′ / mW) (w_n)
  • RonB (dirAD) is an interpolation parameter calculated by the fifth pixel interpolation parameter calculation unit (RBonRBofAD) 208, and is used for the process of converting the B pixel on the edge in the oblique direction into the R pixel.
  • the following parameters apply.
  • R pixel value (RonB_hv) that depends on the vertical and horizontal edges calculated by Equation 41
  • R pixel value (RonB_ad) depending on the diagonal edge calculated by Equation 42
  • weightHV vertical and horizontal edge direction weights
  • the blend processing unit 211 first obtains the vertical and horizontal direction edge corresponding conversion pixel value (BonR_hv) and the diagonal direction edge corresponding conversion pixel value (BonR_ad) according to the following formulas (Formula 51) and (Formula 52).
  • BonR_hv (1-weightFlat) ⁇ (BonR (dirHV)) + (weightFlat) ⁇ (BonRn) ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ (Formula 51)
  • BonR_ad (BonR (dirAD)) ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ (Formula 52)
  • (BonR_hv) and (BonR_ad) calculated by the above formulas (Formula 51) and (Formula 52) are blended according to the following formula (Formula 53) to calculate the final B pixel value (BonR).
  • BonR (weightHV) ⁇ (BonR_hv) + (1 ⁇ weightHV) BonR_ad ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ (Formula 53)
  • the B pixel value (BonR) is calculated when the R pixel position in the RGBW array is converted to the B pixel.
  • BonR (dirHV), BonRn are the interpolation parameters calculated by the fourth pixel interpolation parameter calculation unit (RBonRBofHV) 207 described above, and are the following parameters applied to the process of converting R pixels on the vertical or horizontal edge into B pixels. .
  • BonR (H) (mB ′ / mW) (w_h)
  • BonR (V) (mB ′ / mW) (w_v)
  • BonRn (mB ′ / mW) (w_n)
  • BonR (dirAD) is an interpolation parameter calculated by the fifth pixel interpolation parameter calculation unit (RBonRBofAD) 208, and is used to convert the R pixel on the diagonal edge into the B pixel.
  • the following parameters apply.
  • DirA ⁇ dirD
  • B pixel value (BonR_hv) that depends on the vertical and horizontal edges calculated by Equation 51
  • B pixel value (BonR_ad) that depends on the diagonal edge calculated by Equation 52
  • weightHV vertical and horizontal edge direction weights
  • Formula (Formula 53) is obtained when the vertical / horizontal edge is strong and the vertical / horizontal edge direction weight (weightHV) is large.
  • the weight of the B pixel value (BonR_hv) depending on the vertical and horizontal edges calculated by Expression 51 is set large.
  • the weight of the B pixel value (BonR_ad) that depends on the diagonal edge calculated by Expression 52 is set large. In this way, the final B element value (BonR) is determined by changing the blend ratio in accordance with the edge direction of the conversion target pixel.
  • the blend processing unit 211 receives the pixel interpolation parameters generated by the first to fifth pixel interpolation parameter calculation units, and further detects the edge information detected by the edge detection unit 209 and the texture detection unit 210.
  • the texture information is input and the final converted pixel value is calculated. That is, the following conversion pixel values are determined in the conversion process from the RGBW array to the RGB array.
  • the blend processing unit 211 determines the blend ratio of the pixel interpolation parameters generated by the first to fifth pixel interpolation parameter calculation units according to the edge information corresponding to the conversion target pixel, that is, the edge strength and the edge direction, The final pixel value is calculated.
  • the calculation formula for each pixel value is summarized below.
  • the flowchart shown in FIG. 33 is a flowchart showing the entire sequence of the conversion process from the RGBW array to the RGB array, that is, the re-mosaic process executed in the image processing apparatus shown in FIG. This is a sequence of the entire processing described so far.
  • the flow shown in FIG. 33 can be executed, for example, by the control unit 140 of the image processing apparatus shown in FIG. 5 executing a program stored in the memory 130 to control each processing unit.
  • step S101 the edge direction is determined by applying W pixels included in the RGBW array.
  • This process is a process executed by the edge detection unit 209 shown in FIG.
  • the edge detection unit 209 determines the edge direction and the edge strength using the white (W) signal in the input RGBW signal.
  • the edge detection unit 209 calculates edge information (dirH, dirV, dirA, dirD) corresponding to pixels by edge detection processing, and outputs the calculated edge information to the blend processing unit 211 and the plurality of pixel interpolation parameter calculation units.
  • step S102 texture detection processing is performed by applying W pixels included in the RGBW array.
  • This process is a process executed by the texture detection unit 210 shown in FIG.
  • the texture detection unit 210 calculates pixel-corresponding texture information, specifically, flatness weight (weightFlat) by using a white (W) signal in the input RGBW array signal.
  • weightFlat (x, y) f flat (W TX (p))
  • f flat (r) is a linear approximation function as shown in FIG. 14, for example.
  • step S103 noise removal is performed on the central W pixel of the input pixel unit.
  • This process is the process of the noise removing unit 201 shown in FIG. As described above, the noise removal unit 201 performs noise removal on the W pixel at the center of the input pixel unit.
  • the noise removing unit 201 applies a bilateral filter, for example, to set a W pixel at the center of a processing unit (5 ⁇ 5 pixel at the center of 7 ⁇ 7 pixels). If so, the noise reduction pixel value I NR (p) is calculated according to the above equation (Equation 1). The calculated noise reduction W pixel value (I NR (p)) is output to the first pixel interpolation parameter calculation unit (GonW) 202 shown in FIG.
  • GonW first pixel interpolation parameter calculation unit
  • step S104 an interpolation parameter to be applied for converting the W pixel in the RGBW array into the G pixel is calculated.
  • This process is the process of the first pixel interpolation parameter calculation unit (GonW) 202 shown in FIG.
  • the first pixel interpolation parameter calculation unit (GonW) 202 calculates the following parameters as the interpolation parameters applied to convert the W pixel in the RGBW array into the G pixel.
  • Low frequency component mW of W signal see FIG. 15
  • High frequency component w of W signal see FIG. 16
  • Low frequency component mG of the G signal see FIG. 17
  • step S105 R and B at the W position adjacent to the G pixel are interpolated from the R / W and B / W correlations.
  • This process is the process of the first provisional pixel setting unit (RBonWoundG) 203 shown in FIG.
  • the first provisional pixel setting unit (RBonWroundG) 203 performs R of the W pixel position adjacent to the periphery of the conversion target pixel 502 at the center of the input pixel unit 501 of 7 ⁇ 7 pixels.
  • a pixel value and a B pixel value are estimated.
  • R 23 ′ (mR / mW) w 23
  • R 32 ′ (mR / mW) w 32
  • R 43 ′ (mR / mW) w 43
  • R 34 ′ (mR / mW) w 34
  • w 23 , w 32 , w 43 , and w 34 are W pixel values of W pixel positions adjacent to the periphery of the conversion target pixel 502 at the center of the input pixel unit 501 of 7 ⁇ 7 pixels shown in FIG.
  • B 23 ′ (mB / mW) w 23
  • B 32 ′ (mB / mW) w 32
  • B 43 ′ (mB / mW) w 43
  • B 34 ′ (mB / mW) w 34
  • w 23 , w 32 , w 43 , and w 34 are W pixel values of W pixel positions adjacent to the periphery of the conversion target pixel 502 at the center of the input pixel unit 501 of 7 ⁇ 7 pixels shown in FIG.
  • mW Low frequency component of W signal in input pixel unit
  • w Pixel value of center W pixel in input pixel unit
  • mR ′ Temporary R pixel (R ′) set at W pixel position adjacent to RB pixel is applied The low-frequency component of the R signal calculated in the above manner
  • mB ′ the low-frequency component of the B signal calculated by applying the temporary B pixel (B ′) set at the W pixel position adjacent to the RB pixel.
  • step S106 R and B at the G position in the vertical and horizontal directions are interpolated using the R / W and B / W correlations.
  • This process is the process of the second pixel interpolation parameter calculation unit (RBonGofHV) 204 shown in FIG.
  • the second pixel interpolation parameter calculation unit (RBonGofHV) 204 executes a parameter calculation process that is mainly applied to a process of converting a G pixel on a vertical or horizontal edge into an R pixel or a B pixel.
  • These parameters are calculated and output to the blend processing unit 211.
  • mR ′ Corrected low-frequency component of R signal in input pixel unit
  • mB ′ Corrected low-frequency component of BR signal in input pixel unit
  • mW Low-frequency component of W signal in input pixel unit (w_h), (w_v), (w_n) ) Is a high-frequency component value at the center pixel position in units of input pixels calculated by applying a filter selected according to the edge direction, as described with reference to FIGS. 22 and 23.
  • step S107a R and B at the G position having the upper right edge are interpolated using the R / W and B / W correlations.
  • This process is the process of the third pixel interpolation parameter calculation unit (RBonGofAD) 205 shown in FIG.
  • the third pixel interpolation parameter calculation unit (RBonGofAD) 205 executes a parameter calculation process applied to the process of converting the G pixel on the oblique edge into the R pixel or the B pixel.
  • step S107b R and B at the G position having the leftward upward edge are interpolated using the R / W and B / W correlations.
  • This process is the process of the third pixel interpolation parameter calculation unit (RBonGofAD) 205 shown in FIG.
  • the third pixel interpolation parameter calculation unit (RBonGofAD) 205 executes a parameter calculation process applied to the process of converting the G pixel on the oblique edge into the R pixel or the B pixel.
  • step S108 R and B at W positions adjacent to R and B pixels are interpolated using R / W and B / W correlation.
  • This process is the process of the second provisional pixel setting unit (RBonWoundRB) 206 shown in FIG.
  • the second temporary pixel setting unit (RBonWoundRB) 206 is a W pixel adjacent to the periphery of the conversion target pixel 602 at the center of the input pixel unit 601 of 7 ⁇ 7 pixels.
  • the R pixel value and B pixel value of the position are estimated.
  • step S109 R / B and R / B in the vertical and horizontal directions are interpolated using the R / W and B / W correlations.
  • This process is the process of the fourth pixel interpolation parameter calculation unit (RBonRBofHV) 207 shown in FIG.
  • the fourth pixel interpolation parameter calculation unit (RBonRBofHV) 207 executes the following parameter calculation process as a parameter applied to the process of converting the R pixel on the vertical or horizontal edge into the B pixel and the B pixel into the R pixel. .
  • RonB (H) (mR ′ / mW) (w_h)
  • RonB (V) (mR ′ / mW) (w_v)
  • RonBn (mR ′ / mW) (w_n)
  • BonR (H) (mB ′ / mW) (w_h)
  • step S110a R and B at the R and B positions having the diagonally upper right edge are interpolated using the R / W and B / W correlations.
  • This process is the process of the fifth pixel interpolation parameter calculation unit (RBonRBofAD) 208 shown in FIG.
  • the fifth pixel interpolation parameter calculation unit (RBonRBofAD) 208 executes a parameter calculation process applied to the process of converting the R pixel on the oblique edge to the corrected R pixel and the B pixel to the corrected B pixel.
  • step S110b R and B at the R and B positions having leftward upward edges are interpolated using the R / W and B / W correlations.
  • This process is the process of the fifth pixel interpolation parameter calculation unit (RBonRBofAD) 208 shown in FIG.
  • the fifth pixel interpolation parameter calculation unit (RBonRBofAD) 208 executes a parameter calculation process applied to the process of converting the R pixel on the oblique edge into the B pixel and the B pixel into the R pixel.
  • step S111 blend processing is executed according to the edge direction attribute to determine RGB pixel values constituting the RGB array after conversion of the RGBW array.
  • This process is the process of the blend processing unit 211 shown in FIG.
  • the blend processing unit 211 inputs the pixel interpolation parameters generated by the first to fifth pixel interpolation parameter calculation units, and further inputs the edge information detected by the edge detection unit 209 and the texture information detected by the texture detection unit 210. Thus, the final converted pixel value is calculated.
  • the blend processing unit 211 determines the blend ratio of the pixel interpolation parameters generated by the first to fifth pixel interpolation parameter calculation units according to the edge information corresponding to the conversion target pixel, that is, the edge strength and the edge direction, The final pixel value is calculated. This process is the process described with reference to the flowcharts shown in FIGS. The calculation formula of each conversion pixel value is summarized below.
  • each interpolation parameter calculation unit executes the interpolation process in which the applied pixel position is changed according to the edge direction corresponding to the conversion pixel, and generates a parameter corresponding to the interpolation pixel value.
  • the blend processing unit inputs the parameters generated by each interpolation parameter calculation unit, edge information and texture information, and the blend ratio of the parameters calculated by the parameter calculation unit according to the edge information and texture information corresponding to the conversion pixel And the blending process is executed to determine the converted pixel value.
  • the series of processes described in the specification can be executed by hardware, software, or a combined configuration of both.
  • the program recording the processing sequence is installed in a memory in a computer incorporated in dedicated hardware and executed, or the program is executed on a general-purpose computer capable of executing various processing. It can be installed and run.
  • the program can be recorded in advance on a recording medium.
  • the program can be received via a network such as a LAN (Local Area Network) or the Internet and installed on a recording medium such as a built-in hard disk.
  • the various processes described in the specification are not only executed in time series according to the description, but may be executed in parallel or individually according to the processing capability of the apparatus that executes the processes or as necessary.
  • the system is a logical set configuration of a plurality of devices, and the devices of each configuration are not limited to being in the same casing.
  • false data is obtained by inputting acquired data of an image sensor (image sensor) having, for example, an RGBW type color filter including white (W: White). It is possible to generate RGB array data for generating a high-quality color image with less image quality.
  • the edge detection unit analyzes an output signal of the RGBW array image sensor to acquire edge information corresponding to each pixel, and the texture detection unit generates texture information.
  • the parameter calculation unit executes an interpolation process in which the application pixel position is changed according to the edge direction corresponding to the conversion pixel, and generates a parameter corresponding to the interpolation pixel value.
  • the blend processing unit In the blend processing unit, the parameter generated by the parameter calculation unit, the edge information and the texture information are input, and the blend ratio of the parameter calculated by the parameter calculation unit is changed according to the edge information and texture information corresponding to the conversion pixel. A blending process is executed to determine a converted pixel value. With these processes, RGB array data capable of generating a high-quality color image with few false colors can be generated.
  • DESCRIPTION OF SYMBOLS 100 Imaging device 105 Optical lens 110 Imaging element (image sensor) DESCRIPTION OF SYMBOLS 120 Signal processing part 130 Memory 140 Control part 181 RGBW arrangement

Description

画像処理装置、および画像処理方法、並びにプログラム
 本発明は、画像処理装置、および画像処理方法、並びにプログラムに関する。特にRGBW配列を持つ撮像素子の出力に対する信号処理を行なう画像処理装置、および画像処理方法、並びにプログラムに関する。
 例えば撮像装置に用いられる撮像素子(イメージセンサ)は、素子表面に各画素単位で特定の波長成分光(R,G,B)を透過させるカラーフィルタを貼り付けた構成を持つ。例えば図1(a)に示すようなRGB配列を持つフィルタが利用される。撮像素子の出力信号を用いたカラー画像生成処理においては、複数個の画素の組によって必要な色成分を復元する処理が行われる。カラーフィルタの色配列には様々なタイプがあるが、図1(a)に示す赤(R)、緑(G)、青(B)の特定波長光のみを透過させる3種類のフィルタによって構成されたベイヤ配列が多く利用されている。
 近年、撮像素子(イメージセンサ)の画素の微細化が進み、これに伴い各画素への入射光量が減少しS/N比が劣化するという問題が発生してきた。この問題を解決するため、図1(b)に示すようにRGB等の特定波長光のみを透過させるフィルタの他に、さらに可視光域の光を広く透過するホワイト(W:White)を持つイメージセンサ(撮像素子)が提案されている。図1(b)には、RGBW配列を持つフィルタの一例を示している。図1(b)に示すRGBW配列におけるW画素は可視光域の光を広く透過するフィルタである。
 このような、ホワイト(W:White)画素を持つカラーフィルタを搭載した撮像素子については、例えば特許文献1(US公開特許2007/0024879)、特許文献2(US公開特許2007/0024934)に記載されている。
 図1(b)に示すようなホワイト(W:White)画素を持つカラーフィルタを持つ撮像素子(イメージセンサ)を用いることで、フィルタの透過光率が高くなり、高感度化が実現できる。
 しかし、RGBW型の素子の問題点として以下のような問題点がある。
 図1(a)に示すRGB配列、あるいは図1(b)に示すRGBW配列のいずれも、R,G,B,Wいずれかのフィルタをモザイク状に配列した一枚の素子、すなわち単板型イメージセンサである。従ってカラー画像を生成する際には、各画素に対応するRGB画素値を生成するカラーコーディングとしてのデモザイク処理が必要となる。
 図1(b)に示すRGBW配列では、図1(a)に示すRGB配列に比較して、R,G,B成分のサンプリングレートが低下する。この結果、カラー画像生成処理に際して、図1(b)に示すRGBW配列方の素子の取得データを用いた場合、図1(a)に示すRGB配列に比較して、偽色が発生しやすくなるという問題がある。また、ホワイト(W)の波長成分はR,G,Bすべての波長成分を含んでいるため、色収差の大きい光学レンズを用いると、単色成分のものと比べてRGB波長成分の集光率が落ち、解像度の低下を招くという問題もある。この問題点は画素の微細化が進むにつれて、更に顕著となる。
 光学レンズの色収差に起因する解像度劣化の防止手法として、屈折率の異なるレンズを組み合わせて色収差の発生を抑えることが有効であるが、この場合、光学レンズの枚数が増えることによるコストが増大するという新たな問題が発生する。さらに、このような構成とすると、前述のRGB成分のサンプリングレート低下に起因する偽色の問題がより顕著となるという問題も発生する。
 また、単板型イメージセンサの各画素は単一の色成分の情報しかもたないため離散的に取得されたR,G,B,W信号からカラー画像を得るために全画素対応のRGB画素値を求めるデモザイク処理が行われる。このデモザイク処理の際、局所領域においては色比率がほぼ一定に保たれることや強い色相関があることを仮定した補間処理が行われる。具体的には、ある画素の特定色の画素値を算出する際、周囲の画素値を用いて補間する方法が広く用いられる。この方法については、例えば特許文献3(特開2009-17544号公報)に記載がある。しかしながら、エッジ近傍では上記の仮定、すなわち局所領域における一定の色比率や強い色相関があるという仮定は成り立たない。この結果エッジ近傍に偽色が発生しやすくなるという問題がある。
US公開特許2007/0024879 US公開特許2007/0024934 特開2009-17544号公報
 本発明は、ホワイト(W:White)を含む例えばRGBW型のカラーフィルタを持つ撮像素子(イメージセンサ)の取得データを適用したカラー画像生成処理において、偽色の少ない高品質なカラー画像の生成を実現する画像処理装置、および画像処理方法、並びにプログラムを提供することを目的とする。
 本発明の第1の側面は、
 輝度信号の主成分となる画素が市松状に配置され、残りの部分に色情報成分となる複数色の画素が配置された2次元画素配列信号を解析して画素変換を行うデータ変換処理部を有し、
 前記データ変換処理部は、
 前記2次元画素配列信号を解析して画素変換処理に適用するパラメータを算出するパラメータ算出部を有し、
 前記パラメータ算出部は、
 画素変換処理に適用するパラメータの算出処理において、前記2次元画素配列信号に含まれる輝度信号の主成分となる画素と、変換後の画素の色情報成分との第1相関情報、
 または、前記色情報成分中から選択された1つの選択色情報成分と、変換後の画素の色情報成分との第2相関情報、
 上記第1相関情報または第2相関情報の少なくともいずれかの相関情報を利用して前記パラメータの算出処理を行う画像処理装置にある。
 さらに、本発明の画像処理装置の一実施態様において、前記パラメータ算出部は、前記第2相関情報として、前記色情報成分中、配分比率の最も高い色情報成分と、変換後の画素の色情報成分との相関情報を用いる。
 さらに、本発明の画像処理装置の一実施態様において、前記データ変換処理部は、前記2次元画素配列信号を解析してエッジ情報を生成するエッジ検出部を有し、前記パラメータ算出部は、前記エッジ検出部の検出したエッジ方向に応じて、前記第1相関情報、または前記第2相関情報のいずれかを選択的に利用して前記パラメータの算出処理を行う。
 さらに、本発明の画像処理装置の一実施態様において、前記輝度信号の主成分となる色は白色、前記配分比率の最も高い色情報成分は緑色であり、前記パラメータ算出部は、画素変換処理に適用するパラメータの算出処理において、前記エッジ検出部の検出したエッジ方向に応じて、白色と変換後の画素の色情報成分との第1相関情報、または、緑色と変換後の画素の色情報成分との第2相関情報のいずれかを取得し、取得した相関情報を利用して前記パラメータの算出処理を行う。
 さらに、本発明の画像処理装置の一実施態様において、前記データ変換処理部は、前記2次元画素配列信号を解析してテクスチャ情報を生成するテクスチャ検出部と、前記パラメータ算出部の算出したパラメータと、前記エッジ情報および前記テクスチャ情報を入力し、変換画素対応のエッジ情報とテクスチャ情報に応じて、前記パラメータ算出部の算出したパラメータのブレンド比率を変更してブレンド処理を実行して変換画素値を決定するブレンド処理部とを有する。
 さらに、本発明の画像処理装置の一実施態様において、前記エッジ検出部は、RGB画素とホワイト(W)画素からなるRGBW配列信号を解析して各画素対応のエッジ方向および強度情報を含むエッジ情報を生成し、前記テクスチャ検出部は、前記RGBW配列信号を解析して各画素対応のテクスチャ度合いを示すテクスチャ情報を生成し、前記パラメータ算出部は、RGBW配列をRGB配列に変換するためのパラメータを算出するパラメータ算出部であり、変換画素対応のエッジ方向に応じて適用画素位置を変更した補間処理により算出した補間画素値に相当するパラメータを生成し、前記ブレンド処理部は、前記パラメータ算出部の算出したパラメータと、前記エッジ情報および前記テクスチャ情報を入力し、変換画素対応のエッジ情報とテクスチャ情報に応じて、前記パラメータ算出部の算出したパラメータのブレンド比率を変更してブレンド処理を実行して変換画素値を決定する処理を実行する。
 さらに、本発明の画像処理装置の一実施態様において、前記パラメータ算出部は、補間処理に適用する画素位置をエッジ方向に沿った画素位置とする補間処理によりパラメータを生成する構成である。
 さらに、本発明の画像処理装置の一実施態様において、前記パラメータ算出部は、RGBW配列を構成するW画素とその他のRGB画素との局所領域での相関、または、RGBW配列を構成するG画素とその他のRGB画素との局所領域での相のいずれかの相関を利用した補間処理によりパラメータを生成する構成である。
 さらに、本発明の画像処理装置の一実施態様において、前記画像処理装置は、さらに、RGBW配列を構成するW画素とその他のRGB画素との局所領域での相関を利用した補間処理によりW画素位置に対してRGBいずれかの画素の画素値を設定する仮画素設定部を有し、前記パラメータ算出部は、前記仮画素設定データを適用した補間処理によりパラメータを生成する構成である。
 さらに、本発明の画像処理装置の一実施態様において、前記パラメータ算出部は、前記エッジ検出部の検出した縦、横、左斜め上、右斜め上の4種類のエッジ方向に応じて、RGBW配列を構成するW画素と変換後の画素の色情報成分との第1相関情報、または、RGBW配列を構成するG画素と変換後の画素の色情報成分との第2相関情報のいずれを利用するかを選択する。
 さらに、本発明の画像処理装置の一実施態様において、前記パラメータ算出部は、参照画素位置をエッジ方向に沿った画素位置に設定して、前記第1相関情報、または前記第2相関情報を利用して画素変換処理に適用する複数のパラメータを生成し、前記ブレンド処理部は、縦、横、左斜め上、右斜め上の4種類のエッジ方向の強度比較を実行して、比較結果に応じて前記複数のパラメータのブレンド比率を変更したブレンド処理を実行する。
 さらに、本発明の画像処理装置の一実施態様において、前記ブレンド処理部は、変換画素対応の縦横方向エッジと斜め方向エッジのエッジ方向度合い(ratioFlat)を算出し、さらに、エッジ方向度合い(ratioFlat)に基づいて、値が大きいほど斜め方向エッジより縦横方向エッジが強く、値が小さいほど斜め方向エッジが縦横方向エッジより強いことを示す縦横方向エッジ方向重み(weightHV)を算出し、変換画素対応の縦横方向エッジが斜め方向エッジより強い場合は、エッジ方向を縦または横方向として設定して算出したパラメータのブレンド比率を高くし、変換画素対応の縦横方向エッジが斜め方向エッジより弱い場合は、エッジ方向を斜め方向として設定して算出したパラメータのブレンド比率を高くしたブレンド処理を実行する。
 さらに、本発明の画像処理装置の一実施態様において、前記テクスチャ検出部は、前記テクスチャ情報として、テクスチャが少なく平坦度が高い画素領域については高い値を示し、テクスチャが多く平坦度が低い画素領域については低い値を示す各画素対応の平坦度重み(weightFlat)を算出し、前記パラメータ算出部は、前記補間画素値に対するコントラスト強調処理を実行したコントラスト強調処理適用パラメータと、前記補間画素値に対するコントラスト強調処理を実行しないコントラスト強調処理非適用パラメータを算出し、前記ブレンド処理部は、前記平坦度重みの大きい画素については、前記コントラスト強調処理非適用パラメータのブレンド比率を大きく設定し、前記平坦度重みの小さい画素については、前記コントラスト強調処理適用パラメータのブレンド比率を大きく設定したブレンド処理を実行する。
 さらに、本発明の画像処理装置の一実施態様において、前記エッジ検出部は、前記RGBW配列信号のホワイト(W)画素のみを利用した解析処理により、各画素対応のエッジ情報を生成する構成であり、処理対象画素近傍のW画素の信号値勾配を算出して各画素対応のエッジ方向および強度情報を含むエッジ情報を生成する。
 さらに、本発明の画像処理装置の一実施態様において、前記テクスチャ検出部は、前記RGBW配列信号のホワイト(W)画素のみを利用した解析処理により、各画素対応のテクスチャ度合いを示すテクスチャ情報を生成する。
 さらに、本発明の第2の側面は、
 画像処理装置において画像信号処理を実行する画像処理方法であり、
 エッジ検出部が、RGB画素とホワイト(W)画素からなるRGBW配列信号を解析して各画素対応のエッジ方向および強度情報を含むエッジ情報を生成するエッジ検出ステップと、
 テクスチャ検出部が、前記RGBW配列信号を解析して各画素対応のテクスチャ度合いを示すテクスチャ情報を生成するテクスチャ検出ステップと、
 パラメータ算出部が、RGBW配列をRGB配列に変換するためのパラメータを算出するパラメータ算出ステップであり、変換画素対応のエッジ方向に応じて適用画素位置を変更した補間処理により算出した補間画素値に相当するパラメータを生成するパラメータ算出ステップと、
 ブレンド処理部が、前記パラメータ算出部の算出したパラメータと、前記エッジ情報および前記テクスチャ情報を入力し、変換画素対応のエッジ情報とテクスチャ情報に応じて、前記パラメータ算出部の算出したパラメータのブレンド比率を変更してブレンド処理を実行して変換画素値を決定するブレンド処理ステップを実行し、
 前記パラメータ算出ステップは、
 画素変換処理に適用するパラメータの算出処理において、前記2次元画素配列信号に含まれる輝度信号の主成分となる画素と、変換後の画素の色情報成分との第1相関情報、
 または、前記色情報成分中、配分比率の最も高い色情報成分と、変換後の画素の色情報成分との第2相関情報、
 上記第1相関情報または第2相関情報の少なくともいずれかの相関情報を利用して前記パラメータの算出処理を行うステップである画像処理方法にある。
 さらに、本発明の第3の側面は、
 画像処理装置において画像信号処理を実行させるプログラムであり、
 エッジ検出部に、RGB画素とホワイト(W)画素からなるRGBW配列信号を解析して各画素対応のエッジ方向および強度情報を含むエッジ情報を生成させるエッジ検出ステップと、
 テクスチャ検出部に、前記RGBW配列信号を解析して各画素対応のテクスチャ度合いを示すテクスチャ情報を生成させるテクスチャ検出ステップと、
 パラメータ算出部に、RGBW配列をRGB配列に変換するためのパラメータを算出させるパラメータ算出ステップであり、変換画素対応のエッジ方向に応じて適用画素位置を変更した補間処理により算出した補間画素値に相当するパラメータを生成させるパラメータ算出ステップと、
 ブレンド処理部に、前記パラメータ算出部の算出したパラメータと、前記エッジ情報および前記テクスチャ情報を入力し、変換画素対応のエッジ情報とテクスチャ情報に応じて、前記パラメータ算出部の算出したパラメータのブレンド比率を変更してブレンド処理を実行して変換画素値を決定させるブレンド処理ステップとを実行させ、
 前記パラメータ算出ステップにおいては、
 画素変換処理に適用するパラメータの算出処理において、前記2次元画素配列信号に含まれる輝度信号の主成分となる画素と、変換後の画素の色情報成分との第1相関情報、
 または、前記色情報成分中、配分比率の最も高い色情報成分と、変換後の画素の色情報成分との第2相関情報、
 上記第1相関情報または第2相関情報の少なくともいずれかの相関情報を利用して前記パラメータの算出処理を行わせるプログラムにある。
 なお、本発明のプログラムは、例えば、様々なプログラム・コードを実行可能な画像処理装置やコンピュータ・システムに対して、コンピュータ可読な形式で提供する記憶媒体、通信媒体によって提供可能なプログラムである。このようなプログラムをコンピュータ可読な形式で提供することにより、画像処理装置やコンピュータ・システム上でプログラムに応じた処理が実現される。
 本発明のさらに他の目的、特徴や利点は、後述する本発明の実施例や添付する図面に基づくより詳細な説明によって明らかになるであろう。なお、本明細書においてシステムとは、複数の装置の論理的集合構成であり、各構成の装置が同一筐体内にあるものには限らない。
 本発明の一実施例の構成によれば、ホワイト(W:White)を含む例えばRGBW型のカラーフィルタを持つ撮像素子(イメージセンサ)の取得データを入力して偽色の少ない高品質なカラー画像を生成するためのRGB配列データを生成することができる。具体的には、エッジ検出部がRGBW配列の撮像素子の出力信号を解析して各画素対応のエッジ情報を取得し、テクスチャ検出部がテクスチャ情報を生成する。さらにパラメータ算出部が変換画素対応のエッジ方向に応じて適用画素位置を変更した補間処理を実行して、補間画素値に相当するパラメータを生成する。ブレンド処理部において、パラメータ算出部の生成したパラメータと、エッジ情報およびテクスチャ情報を入力し、変換画素対応のエッジ情報とテクスチャ情報に応じて、パラメータ算出部の算出したパラメータのブレンド比率を変更してブレンド処理を実行して変換画素値を決定する。これらの処理により、偽色の少ない高品質なカラー画像を生成可能なRGB配列データを生成することができる。
一般的なカラーフィルタで用いられる色配列としてのベイヤ配列と、本発明において適用するRGBW配列の例について説明する図である。 本発明の一実施例における処理であるRGBW配列からRGB配列への変換処理として行われるリモザイク処理について説明する図である。 本発明のRGBW配列からRGB配列への変換処理として行われるリモザイク処理の個別の処理について説明する図である。 本発明のRGBW配列からRGB配列への変換処理として行われるリモザイク処理の個別の処理について説明する図である。 本発明の画像処理装置の一実施例に係る撮像装置の構成例について説明する図である。 データ変換処理部の構成と処理について説明する図である。 図6に示すノイズ除去部201の実行する処理について説明する図である。 図6に示すエッジ検出部209の実行するエッジ検出処理について説明する図である。 図6に示すエッジ検出部209の実行するエッジ検出処理について説明する図である。 図6に示すエッジ検出部209の実行するエッジ検出処理について説明する図である。 図6に示すエッジ検出部209の実行するエッジ検出処理について説明する図である。 図6に示すテクスチャ検出部210の実行するテクスチャ検出処理について説明する図である。 図6に示すテクスチャ検出部210の実行するテクスチャ検出処理について説明する図である。 図6に示すテクスチャ検出部210の実行するテクスチャ検出処理について説明する図である。 図6に示す第1画素補間パラメータ算出部(GonW)202の実行する処理について説明する図である。 図6に示す第1画素補間パラメータ算出部(GonW)202の実行する処理について説明する図である。 図6に示す第1画素補間パラメータ算出部(GonW)202の実行する処理について説明する図である。 図6に示す第1画素補間パラメータ算出部(GonW)202の実行する処理について説明する図である。 図6に示す第1仮画素設定部(RBonWaroundG)203の実行する処理について説明する図である。 図6に示す第1仮画素設定部(RBonWaroundG)203の実行する処理について説明する図である。 図6に示す第1仮画素設定部(RBonWaroundG)203の実行する処理について説明する図である。 図6に示す第2画素補間パラメータ算出部(RBonGofHV)204の実行する処理について説明する図である。 図6に示す第2画素補間パラメータ算出部(RBonGofHV)204の実行する処理について説明する図である。 図6に示す第2画素補間パラメータ算出部(RBonGofHV)204の実行する処理について説明する図である。 図6に示す第3画素補間パラメータ算出部(RBonGofAD)205の実行する処理について説明する図である。 図6に示す第3画素補間パラメータ算出部(RBonGofAD)205の実行する処理について説明する図である。 図6に示す第2仮画素設定部(RBonWaroundRB)206の実行する処理について説明する図である。 図6に示す第4画素補間パラメータ算出部(RBonRBofHV)207の実行する処理について説明する図である。 図6に示す第5画素補間パラメータ算出部(RBonRBofAD)208の実行する処理について説明する図である。 図6に示すブレンド処理部211の実行する処理について説明する図である。 図6に示すブレンド処理部211の実行する処理について説明する図である。 図6に示すブレンド処理部211の実行する処理について説明する図である。 図6に示すデータ変換処理部200の実行する処理のシーケンスを説明するフローチャートを示す図である。
 以下、図面を参照しながら、本発明の画像処理装置、および画像処理方法、並びにプログラムについて説明する。説明は、以下の順番で行なう。
 1.本発明の処理の概要について
 2.撮像装置および画像処理装置の構成例および処理例について
 3.データ変換処理部の処理の詳細について
 3-1.ノイズ除去部の処理について
 3-2.エッジ検出部の処理について
 3-3.テクスチャ検出部の処理について
 3-4.画素補間パラメータ算出部の処理について
 3-5.ブレンド処理部の処理について
 4.画像処理装置のデータ変換処理部が実行するリモザイク処理シーケンス
  [1.本発明の処理の概要について]
 まず、図2を参照して本発明の撮像装置等の画像処理装置が実行する処理の概要について説明する。本発明の画像処理装置は、RGB各色の波長光を選択的に透過するRGBフィルタに加え、RGB各波長光をすべて透過するホワイト(W:White)を含むRGBW型のカラーフィルタを持つ撮像素子(イメージセンサ)の取得データに対する処理を行う。具体的には、輝度信号の主成分となる画素が市松状に配置され、残りの部分に色情報成分となる複数色の画素が配置された2次元画素配列信号を解析して画素変換を行う。なお、輝度信号の主成分となる色は、白色または緑色である。
 本発明の画像処理装置は、図2(1)に示すような、ホワイト(W:White)を含む例えばRGBW型のカラーフィルタを持つ撮像素子(イメージセンサ)の取得データを、図2(2)に示すRGB配列(例えばベイヤ配列)に変換する処理に適用するパラメータの算出処理を実行する。さらに、この変換処理に際して、偽色の発生を低下させるための処理を併せて実行する。
 図2(1)に示すような、ホワイト(W:White)を含む例えばRGBW型のカラーフィルタを持つ撮像素子(イメージセンサ)の取得データは、輝度信号の主成分となるW画素が市松状に配置され、残りの部分に色情報成分となる複数色の画素が配置された2次元画素配列信号となる。
 本発明の画像処理装置は、この画像信号を解析して画素変換を行うデータ変換処理部を有する。データ変換処理部は、入力画像信号を解析して画素変換処理に適用するパラメータとして、例えば2次元画素配列信号に含まれる輝度信号の主成分となる画素(例えばW画素)と変換後の画素の色情報成分との相関情報、あるいは、色情報成分中から選択された1つの選択色情報成分、例えば配分比率の最も高い色情報(例えばG)成分と、変換後の画素の色情報成分との相関情報を用いて変換パラメータの算出を行い、算出したパラメータを適用した変換画素値の設定処理を実行する。
 本発明の画像処理装置は、図2に示すように、RGBWのカラー配列に設定されたRGBWの各画素の少なくとも一部を他の色(RGBのいずれか)へ変換または補正する処理を行う。具体的には、RGBW配列からRGBベイヤ配列への変換処理において、以下の5つの変換や補正処理を実行する。
 (a)W画素位置をG画素に変換(G画素値を推定)する=(GonW)
 (b)G画素位置をR画素に変換(R画素値を推定)する=(RonG)
 (c)G画素位置をB画素に変換(B画素値を推定)する=(BonG)
 (d)B画素位置をR画素に変換(R画素値を推定)する=(RonB)
 (e)R画素位置をB画素に変換(B画素値を推定)する=(BonR)
 上記の(a)~(e)の各変換処理は、RGBW配列におけるRGBW各画素をRGB配列におけるRGB画素に変換するための画素値推定または補正処理として行われる。これらの処理を実行することで、図2(1)に示すRGBWのカラー配列から図2(2)に示すRGB配列を生成する。
 以下、このようなカラー配列の変換処理をリモザイク処理と呼ぶ。
 以下の実施例では、ホワイト(W)を持つRGBW型カラー配列をRGB型カラー配列(ベイヤ配列)に変換するリモザイク処理を実行し、かつ、このリモザイク処理に際して偽色の発生を低減させる処理を実行する構成について説明する。
 本発明の画像処理装置における画素変換処理は、n×n画素の矩形画素領域を入力画素単位として変換処理を行う。すなわち、n×n画素の中心にある1つの画素の変換画素値を決定するためにn×n画素の矩形画素領域の画素情報を利用する。具体的には、例えば画像の7×7画素(幅7画素高さ7画素)単位で処理を行う。例えば、7×7画素を処理単位とした処理を行う場合、画像処理装置は、7×7画素単位で画素情報を入力し7×7画素の画素情報を用いて中心画素の変換画素値を決定する。7×7画素の中心画素は、RGBWいずれかの画素であり、これらのRGBWを上記(a)~(e)の変換パターンに従って変換する。
 以下の説明では、画素変換処理の単位とするn×n画素の矩形画素を「入力画素単位」と称して説明する。上述の(a)~(e)の変換パターンの1つである(a)の処理、すなわち、
 (a)W画素位置をG画素に変換(G画素値を推定)する=(GonW)
 この変換処理を行う場合、入力画素単位である7×7画素の画素パターンには、図3に示す4つの異なるパターン(a1)~(a4)がある。
 図3には、(a1)~(a4)に、W画素が7×7画素の中心位置となる入力画素単位(処理単位)を示している。左側が、入力画素単位、右側が最終的な処理結果となるRGB配列データである。
 7×7画素の中心位置がW画素となる入力には、図3に(a1)~(a4)に示す4つの異なるパターンがある。このいずれかのパターンの7×7画素を入力した場合、
 (a)W画素位置をG画素に変換(G画素値を推定)する=(GonW)
 この処理を実行する。
 なお、図3(a1)~(a4)の右側は、最終的な変化結果を示すものであり、図3(a1)~(a4)の左側に示す入力画素単位に対しては、中心画素WをG画素に変換する処理のみが実行される。その後、処理単位を1つずつずらして、変換処理(上記(a)~(e)のいずれかの処理)を実行して図3(a1)~(a4)の右側に示す最終的な変化結果が得られる。
 また、上述の(a)~(e)の変換パターンの(b)~(e)の処理、すなわち、
 (b)G画素位置をR画素に変換(R画素値を推定)する=(RonG)
 (c)G画素位置をB画素に変換(B画素値を推定)する=(BonG)
 (d)R画素位置をB画素に変換(B画素値を推定)する=(BonR)
 (e)B画素位置をR画素に変換(R画素値を推定)する=(RonB)
 これらの変換処理を行う場合の、入力画素単位(処理単位)と変換処理の最終出力との関係は、図4(b)~(e)に示す通りである。
 図4(b)が、G画素位置をR画素に変換(R画素値を推定)する=(RonG)
 この処理例を示している。
 図4(c)が、G画素位置をB画素に変換(B画素値を推定)する=(BonG)
 この処理例を示している。
 図4(d)が、R画素位置をB画素に変換(B画素値を推定)する=(BonR)
 この処理例を示している。
 図4(e)が、B画素位置をR画素に変換(R画素値を推定)する=(RonB)
 この処理例を示している。
  [2.撮像装置および画像処理装置の構成例および処理例について]
 図5、図6を参照して、本発明の一実施例に係る撮像装置および画像処理装置の構成例及び処理例について説明する。
 図5は、本発明の一実施例に係る撮像装置100の構成例を示す図である。撮像装置100は、光学レンズ105、撮像素子(イメージセンサ)110、信号処理部120、メモリ130、制御部140を有する。なお、撮像装置は画像処理装置の一態様である。画像処理装置には、例えばPCなどの装置も含まれる。PC等の画像処理装置は、図3に示す撮像装置100の光学レンズ105、撮像素子110を持たず、その他の構成要素から構成され、撮像素子100の取得データの入力部、または記憶部を持つ構成となる。具体的には撮像装置100は、スチルカメラ、ビデオカメラなどであり、画像処理装置100にはPCなど画像処理の可能な情報処理装置が含まれる。
 以下では、撮像装置100を、本発明の画像処理装置の代表例として説明する。図5に示す撮像装置100の撮像素子(イメージセンサ)110は、図1(b)や図2(1)を参照して説明したホワイト(W)を持つRGBW配列181を持つフィルタを備えた構成である。具体的には、輝度信号の主成分となる画素が市松状に配置され、残りの部分に色情報成分となる複数色の画素が配置された2次元画素配列信号を解析して画素変換を行う。なお、輝度信号の主成分となる色は、白色または緑色である。
 撮像素子(イメージセンサ)110は、
 赤色近傍の波長を透過する赤(R)、
 緑色近傍の波長を透過する緑(G)、
 青色近傍の波長を透過する青(B)、
 これらに加え、
 とRGBのすべてを透過するホワイト(W)、
 これら4種類の分光特性を持つフィルタを備えた撮像素子である。
 このRGBW配列181フィルタを持つ撮像素子110は、光学レンズ105を介してRGBWいずれかの光を各画素単位で受光し、光電変換により受光信号強度に対応する電気信号を生成して出力する。この撮像素子110によってRGBW4種類の分光から成るモザイク画像が得られる。
 撮像素子(イメージセンサ)110の出力信号は信号処理部120のデータ変換処理部200に入力される。
 データ変換処理部200は、先に図2を参照して説明したように、RGBW配列181からRGB配列182への変換処理を実行する。この変換処理に際しては、前述のように、
 W画素位置をG画素に変換(G画素値を推定)する=(GonW)
 G画素位置をR画素に変換(R画素値を推定)する=(RonG)
 G画素位置をB画素に変換(B画素値を推定)する=(BonG)
 B画素位置をR画素に変換(R画素値を推定)する(RonB)
 R画素位置をB画素に変換(B画素値を推定)する(BonR)
 これら5つの変換や補正処理を実行する。
 この変換/補正処理に際して、偽色を抑制するための処理を併せて実行する。
 データ変換処理部200の生成したRGB配列182、すなわちベイヤ配列を持つデータは、従来のカメラ等の撮像素子によって得られるカラー配列を持つデータである。このカラー配列データは、RGB信号処理部250入力される。
 RGB信号処理部250は、従来のカメラ等に備えられた信号処理部と同様の処理を実行する。具体的にはデモザイク処理、ホワイトバランス調整処理、γ補正処理などを実行してカラー画像183を生成する。生成したカラー画像183はメモリ130に記録される。
 制御部140は、これら一連の処理の制御を実行する。例えば、一連の処理を実行させるプログラムがメモリ130に格納されており、制御部140は、メモリ130から読み出したプログラムを実行して一連の処理を制御する。
 データ変換処理部200の詳細構成について図6を参照して説明する。データ変換処理部200は、RGBWのカラー配列からRGB配列182への変換処理を実行する。さらに、この処理に際して偽色を抑制するための処理を併せて実行する。
 データ変換処理部200は、図6に示すように、ノイズ除去部201、第1~第5画素補間パラメータ算出部202~208、エッジ検出部209、テクスチャ検出部210、ブレンド処理部211を有する。データ変換処理部200は、処理画像であるRGBW配列181から、n×n画素の処理単位で順次、画素値を入力して、n×n画素の中央の画素の変換画素値を決定して出力する。全ての画素の変換処理が完了すると、RGB配列182が完成し、図5に示すRGB信号処理部250に提供される。
 ノイズ除去部201は、入力画素単位の中心にあるW画素に対してノイズ除去を実行する。
 第1画素補間パラメータ算出部(GonW)202は、W画素をG画素に変換する処理に適用するパラメータの算出処理を実行する。
 第1仮画素設定部(RBonWaroundG)203は、G画素に隣接するW画素位置をR画素またはB画素に変換する処理の事前処理としてG画素周囲のW画素をRまたはB画素の仮画素(R')(B')に変換する処理を実行する。
 第2画素補間パラメータ算出部(RBonGofHV)204は、G画素をR画素、またはB画素に変換する処理に適用するパラメータとして、縦または横エッジ対応のパラメータ等を算出する。
 第3画素補間パラメータ算出部(RBonGofAD)205は、G画素をR画素、またはB画素に変換する処理に適用するパラメータとして、斜めエッジ対応のパラメータ等を算出する。
 第2仮画素設定部(RBonWaroundRB)206は、R画素またはB画素に隣接するW画素位置をR画素またはB画素に変換する処理の事前処理としてRまたはB画素周囲のW画素をRまたはB画素の仮画素(R')(B')に変換する処理を実行する
 第4画素補間パラメータ算出部(RBonRBofHV)207は、R画素をB画素に、またはB画素をR画素に変換する処理に適用するパラメータとして、縦または横エッジ対応のパラメータ等を算出する。
 第5画素補間パラメータ算出部(RBonRBofAD)208は、R画素をB画素に、またはB画素をR画素に変換する処理に適用するパラメータとして、斜めエッジ対応のパラメータ等を算出する。
 エッジ検出部209は、W画素を用いてエッジの方向検出処理を実行する。
 テクスチャ検出部210は、W画素を用いてテクスチャの検出処理を実行する。
 ブレンド処理部211は、上記の各処理で出力された画素をブレンドする処理を実行する。
  [3.データ変換処理部の処理の詳細について]
 次に、図6に示すデータ変換処理部200を構成する各処理部が実行する処理の詳細について説明する。
 なお、先に、図6を参照して説明したように、データ変換処理部200は、RGBW配列181から、n×n画素の処理単位で順次、画素値を入力して、n×n画素の中央の画素の変換画素値を決定して出力する。以下に説明する実施例では、基本的にn=7として、データ変換処理部200において7×7画素の画素領域を1つの処理単位として入力して処理を行う構成について説明する。
 ただし、図6に示す処理部中、ノイズ除去部201、エッジ検出部209、テクスチャ検出部210は、7×7画素領域単位、または7×7画素の画素領域の中心部の5×5画素の領域単位のいずれかで処理を行う設定としてよい。その他の処理部である第1画素補間パラメータ算出部202~第5画素補間パラメータ算出部208は7×7画素領域単位で処理を行う。
 エッジ検出や、ノイズ除去、あるいはテクスチャ検出処理は、画素値変換における補助情報として利用される情報を生成する。これらの情報生成のための画素領域は様々な設定が可能である。処理負荷の面からは処理単位は小さいほうが効率がよい。ただし、十分な処理能力がある場合は、大きな画素領域を処理単位として設定してもよい。例えば7×7画素単位の処理を行う構成としてもよい。
 このように、エッジ検出、ノイズ除去、テクスチャ検出処理の処理単位は様々な設定が可能である。以下の実施例では、一例として以下の設定での処理例について説明する。
 第1画素補間パラメータ算出部202~第5画素補間パラメータ算出部208はデータ変換処理部200に入力するRGBW配列181の7×7画素領域単位で処理を行う。
 エッジ検出部209も、データ変換処理部200に入力するRGBW配列181の7×7の処理単位をそのまま処理単位としてエッジ検出処理を行う。
 ノイズ除去部201、テクスチャ検出部210では、7×7画素の画素領域の中心部の5×5画素の領域を抽出して、抽出した5×5画素の領域を処理単位として処理を行う。
 各処理部では、このような処理単位を設定して処理を行う。以下、各処理部の処理の詳細について、順次説明する。
  (3-1.ノイズ除去部の処理について)
 まず、ノイズ除去部201の処理について図7を参照して説明する。ノイズ除去部201は、データ変換処理部200に対する入力画素単位(7×7画素)の中心画素がW画素であるデータに対してノイズ除去処理を実行する。前述したように、ノイズ除去部201は、データ変換処理部200が入力する7×7画素の画素領域の中心部の5×5画素の領域を抽出して、抽出した5×5画素の領域を処理単位として処理を行う。ノイズ除去は、入力画素単位の中心にあるW画素に対するノイズ低減画素値の算出処理として行われる。
 ノイズ除去の手法としては、様々な手法が適用可能である。ここでは、バイラテラルフィルタを用いたノイズ低減処理例について図7を参照して説明する。
 図7(a)は、入力画素単位である7x7画素の中心部に設定される5×5画素領域をノイズ除去処理の処理対象データ301として示している。図7は、処理対象データ301の中心にあるW画素(画素p)に対してノイズ除去を適用した例を説明する図である。
 図7には、
 (a)処理対象データ
 (b)ノイズ低減画素値算出式
 (c)関数φ(r)の線形近似例
 これらを示している。
 (a)処理対象データに示すように、ノイズ除去部201は、RGBW配列を持つ入力画素単位(7×7画素)の中心部にある5×5画素のノイズ除去処理対象データ301の中心画素(p)がW画素である場合に処理を行う。図7(a)に示すグレー部分がW画素であり、その他の白い部分はRGB画素のいずれかである。なお、以下の説明に用いる他の図においてもグレー部分がW画素であり、その他の白い部分はRGB画素のいずれかであるものとする。
 ノイズ除去部201は、処理対象データ301の中心画素(p)であるW画素の画素値I(p)と処理対象データ301(5×5画素)に含まれる画素の画素値I(q)を用いて、図7(2)に示すノイズ低減画素値算出式に従ってノイズ低減画素値INR(p)を算出する。すなわち、以下の式(式1)に従ってノイズ低減画素値INR(p)を算出する。
Figure JPOXMLDOC01-appb-M000001
     ・・・(式1)
 上記式において、
 Ωpは、処理対象データ301である(5×5画素)に含まれる画素の集合であり、I(q)はその画素値、I(p)は中心画素p(=W画素)の画素値である。
 関数φ(r)は、一般的には指数関数を用いる。しかし、演算量を抑えるために、図7(3)に示すように線形近似した関数としてもよい。
 図7(3)に示す線形近似は、閾値としてTh1=2.0、Th2=3.0を設定し、
  r=0~Th1(2.0)→φ(r)=1.0
  r=Th1(2.0)~Th2(3.0)→φ(r)=1.0~0(線形変化)
  r=Th2以上→φ(r)=0
 このような設定の線形近似例である。
 ノイズ除去部201は、このように、バイラテラルフィルタを適用してノイズ除去処理単位(5×5画素)の中心のW画素のノイズ低減画素値INR(p)を上記式(式1)に従って算出する。算出したノイズ低減W画素値(INR(p))は、図6に示す第1画素補間パラメータ算出部(GonW)202に出力される。
 なお、図7を参照して説明したバイラテラルフィルタを適用した処理はノイズ除去処理の一例であり、ノイズ除去部201は、図7を参照して説明したバイラテラルフィルタを適用した処理に限らず、その他のノイズ除去方式を用いた構成としてもよい。
  (3-2.エッジ検出部の処理について)
 次に、エッジ検出部209の処理について説明する。エッジ検出部209は、入力信号であるRGBW配列に含まれる離散的なホワイト(W)信号を検証して、画像に含まれるエッジ情報、例えばエッジ方向とエッジ強度を含むエッジ情報を生成してブレンド処理部211、さらに複数の画素補間パラメータ算出部に出力する。
 図8以下を参照してエッジ検出部209の実行するW画素を用いたエッジ方向とエッジ強度の判定方法について説明する。
 エッジ検出部209は、入力するRGBW配列181の信号中、ホワイト(W)信号のみを利用して、エッジ方向とエッジ強度を判定する。本実施例において、エッジ検出部209は、前述したようにデータ変換処理部200に入力するRGBW配列181の7×7の処理単位をそのまま処理単位としてエッジ検出処理を行う。エッジ検出部209は、7×7画素の領域を1画素ずつずらしながら順次、エッジ検出処理を実行する。1つの7×7画素領域に対する処理によって7×7画素領域の中心画素に対応するエッジ情報(エッジ方向とエッジ強度)を取得する。各画素対応のエッジ情報は、ブレンド処理部211、および第1~第5画素補間パラメータ算出部に出力される。
 エッジ検出処理には様々な手法が適用可能である。図8、図9を参照してその1つの手法について説明する。以下に説明する方法では、7×7画素領域の中心近傍の4×4画素を利用する。
 図8に示すように、処理対象とする7×7画素の中心画素は、
 (a)W画素である場合と、
 (b)W以外の画素である場合、
 これらの2通りがある。なお、図8においてグレーで示す画素がW画素であり、その他はRGBいずれかの画素に対応する。
 これら(a),(b)2種類のケースに対して、それぞれ異なる算出式を用いてエッジ方向が、水平、垂直、右斜め上、左斜め上の4方向のいずれであり、またその強度を推定するためのエッジ判定処理を行う。
 具体的な処理について図9を参照して説明する。
 図9には、
 (a)中心画素がW画素の場合
 (b)中心画素がW以外の画素の場合
 これら(a),(b)の場合におけるエッジ方向およびエッジ強度の判定処理に適用する算出式を示している。適用する算出式は画像の特定方向の画素値の勾配を算出する式であり、以下の各値の算出式である。
 gradH:水平方向の勾配絶対値平均
 gradV:垂直方向の勾配絶対値平均
 gradA:右斜め上方向の勾配絶対値平均
 gradD:左斜め上方向の勾配絶対値平均
 これらのgradH、gradV、gradA、gradDは、それぞれ異なる方向の画素値の勾配(差分)の絶対値の平均値に相当する。以下、具体的な算出処理について説明する。
 (a)中心画素がW画素の場合の処理について
 まず、中心画素がW画素の場合の処理について図9(a)を参照して説明する。図9(a)には(a1)~(a4)に中心画素がW画素の場合のgradH、gradV、gradA、gradDの算出処理例を示している。
 二重丸[◎]で示す位置が7×7画素における中心画素位置である。
 また、丸[○]で示す位置がエッジ重心位置である。
 中心画素がW画素の場合、gradH、gradV、gradA、gradDは以下の算出式(式2)によって算出する。
Figure JPOXMLDOC01-appb-M000002
     ・・・(式2)
 なお、Wxyは、水平方向を(x)、垂直方向を(y)とし、図9に示す4×4画素の左上端画素の座標を(0,0)、右下端の画素座標を(3,3)として設定した座標系におけるxy座標位置のW画素値を示す。
 gradHは、水平方向の勾配絶対値平均であり、水平方向に近接するW画素の差分絶対値の平均値に対応する。
 図9(a1)に示すように、4×4画素領域の中央部にある2つの水平ラインの水平方向に近接する2つのW画素の差分絶対値の平均値をgradHとして算出する。
 gradVは、垂直方向の勾配絶対値平均であり、垂直方向に近接するW画素の差分絶対値の平均値に対応する。
 図9(a2)に示すように、4×4画素領域の中央部にある2つの垂直ラインの垂直方向に近接する2つのW画素の差分絶対値の平均値をgradVとして算出する。
 gradAは、右斜め上方向の勾配絶対値平均であり、右斜め上方向に近接するW画素の差分絶対値の平均値に対応する。
 図9(a3)に示すように、4×4画素領域の中央部にある1つの右斜め上方向ラインの右斜め上方向に近接する2つのW画素の差分絶対値の平均値をgradAとして算出する。
 gradDは、左斜め上方向の勾配絶対値平均であり、左斜め上方向に近接するW画素の差分絶対値の平均値に対応する。
 図9(a4)に示すように、4×4画素領域の中央部にある1つの左斜め上方向ラインの左斜め上方向に近接する2つのW画素の差分絶対値の平均値をgradDとして算出する。
 水平方向の勾配絶対値平均gradHの値が大きい程、垂直方向のエッジ強度が大である可能性が高い。
 垂直方向の勾配絶対値平均gradVの値が大きい程、水平方向のエッジ強度が大である可能性が高い。
 右斜め上方向の勾配絶対値平均gradAの値が大きい程、左斜め上方向のエッジ強度が大である可能性が高い。
 左斜め上方向の勾配絶対値平均gradDの値が大きい程、右斜め上方向のエッジ強度が大である可能性が高い。
 このように、gradH、gradV、gradA、gradDの各値の算出値に基づいてエッジ方向とエッジ強度を判定することができる。
 (b)中心画素がW画素以外の場合の処理について
 次に、中心画素がW画素以外の場合の処理について図9(b)を参照して説明する。図9(b)には(b1)~(b4)に中心画素がW画素以外の場合のgradH、gradV、gradA、gradDの算出処理例を示している。
 二重丸[◎]で示す位置が7×7画素における中心画素位置である。
 また、丸[○]で示す位置がエッジ重心位置である。
 中心画素がW画素以外の場合、gradH、gradV、gradA、gradDは以下の算出式(式3)によって算出する。
Figure JPOXMLDOC01-appb-M000003
      ・・・(式3)
 なお、Wxyは、水平方向を(x)、垂直方向を(y)とし、図9に示す4×4画素の左上端画素の座標を(0,0)、右下端の画素座標を(3,3)として設定した座標系におけるxy座標位置のW画素値を示す。
 gradHは、水平方向の勾配絶対値平均であり、水平方向に近接するW画素の差分絶対値の平均値に対応する。
 図9(b1)に示すように、4×4画素領域の中央部にある2つの水平ラインの水平方向に近接する2つのW画素の差分絶対値の平均値をgradHとして算出する。
 gradVは、垂直方向の勾配絶対値平均であり、垂直方向に近接するW画素の差分絶対値の平均値に対応する。
 図9(b2)に示すように、4×4画素領域の中央部にある2つの垂直ラインの垂直方向に近接する2つのW画素の差分絶対値の平均値をgradVとして算出する。
 gradAは、右斜め上方向の勾配絶対値平均であり、右斜め上方向に近接するW画素の差分絶対値の平均値に対応する。
 図9(b3)に示すように、4×4画素領域の中央部にある2つの右斜め上方向ラインの右斜め上方向に近接する2つのW画素の差分絶対値の平均値をgradAとして算出する。
 gradDは、左斜め上方向の勾配絶対値平均であり、左斜め上方向に近接するW画素の差分絶対値の平均値に対応する。
 図9(b4)に示すように、4×4画素領域の中央部にある2つの左斜め上方向ラインの左斜め上方向に近接する2つのW画素の差分絶対値の平均値をgradDとして算出する。
 水平方向の勾配絶対値平均gradHの値が大きい程、垂直方向のエッジ強度が大である可能性が高い。
 垂直方向の勾配絶対値平均gradVの値が大きい程、水平方向のエッジ強度が大である可能性が高い。
 右斜め上方向の勾配絶対値平均gradAの値が大きい程、左斜め上方向のエッジ強度が大である可能性が高い。
 左斜め上方向の勾配絶対値平均gradDの値が大きい程、右斜め上方向のエッジ強度が大である可能性が高い。
 このように、gradH、gradV、gradA、gradDの各値の算出値に基づいてエッジ方向とエッジ強度を推定することができる。
 エッジ検出部209は、このように、gradH、gradV、gradA、gradDの各値に基づいて各画素対応のエッジ情報(エッジ方向とエッジ強度)を取得する。取得したエッジ情報はブレンド処理部211に出力される。
 なお、上述のエッジの方向・強度検出方法は一例であり、他のエッジ検出方法を用いた構成としてもよい。例えば、図9を参照して説明したエッジ検出方法は極めて狭い範囲の特定の画素値情報を用いており、ノイズが大きいときには誤判定を起こすことが予想される。この誤判定を防止したエッジ情報の取得処理例について、図10を参照して説明する。
 図10に示すエッジ情報取得処理例は、図9を参照して説明した算出値である勾配絶対値平均を加重加算する処理を用いた手法である。図10には、
 (1)水平・垂直成分エッジ情報取得処理例
 (2)斜め成分エッジ情報取得処理例
 これらの各処理例を示している。
 図10(1)、(2)には7×7画素の画像データを示している。このデータは、エッジ検出部209が処理対象とするデータであり、図9に示すと同様、W画素値のみが離散的に配列されたデータである。この7×7画素の中心に位置する中心画素に対応するエッジ情報(エッジ方向とエッジ強度)を求める。
 図10(1)に示す水平・垂直成分エッジ情報取得処理例について説明する。図10(1)には16個のエッジ重心を示している。これらは、図9(a1),(a2),(b1),(b2)に示すエッジ重心に対応する。すなわち、
 gradH:水平方向の勾配絶対値平均
 gradV:垂直方向の勾配絶対値平均
 これらの値を算出する際のエッジ重心に対応する。
 図10(1)に示す7×7画素領域に、図9(a1),(a2),(b1),(b2)に示す4×4画素領域を設定する。設定可能な4×4画素領域は、図に示す左上端の4×4画素領域302から右下端の4×4画素領域304まで16個ある。図10(1)に示す16個のエッジ重心は、これら16個の4×4画素領域に対応するエッジ重心、すなわち、図9(a1),(a2),(b1),(b2)に示すと同様の位置のエッジ重心である。
 水平軸をi、垂直軸をjとして、図に示す0,1,2,3のスケールを設定し、エッジ重心の座標位置を(i,j)として表記した場合、エッジ重心(0,0)301は、4×4の画素領域302に対応するエッジ重心となる。4×4の画素領域302を図9(a1),(a2),(b1),(b2)に示す4×4の画素領域とした場合、エッジ重心(0,0)301は、図9(a1),(a2),(b1),(b2)に示す重心に対応する。
 また、エッジ重心(3,3)303は、4×4の画素領域304に対応して設定されるエッジ重心である。4×4の画素領域304を図9(a1),(a2),(b1),(b2)に示す4×4の画素領域とした場合、エッジ重心(3,3)303は、図9(a1),(a2),(b1),(b2)に示す重心に対応する。
 図10(1)に示す7×7画素領域には、4×4の画素領域とエッジ重心の組が16個設定される。これら16個の組に対して、図9(a1),(a2),(b1),(b2)を参照して説明した算出式を用いることで、
 gradH:水平方向の勾配絶対値平均
 gradV:垂直方向の勾配絶対値平均
 これらの値をそれぞれ16個ずつ算出することができる。
 エッジ重心(i,j)に対応する4×4画素領域を用いて算出される勾配絶対値平均(gradH)、(gradV)を、それぞれ、
 gradHi,j
 gradVi,j
 として示す。これらを用いて、勾配絶対値平均の加重加算値、すなわち、
 dirH:水平勾配情報
 dirV:垂直勾配情報
 これらを、以下の算出式(式4)を用いて算出する。
Figure JPOXMLDOC01-appb-M000004
     ・・・(式4)
 上記式においてwijは、(i,j)位置のエッジ重心に対応する重み係数である。重み係数は、例えば図10(1)に示すように、中心部を大きく周辺部を小さくした係数として設定される。図10(1)には重み係数の一例として(4/36)~(1/36)の重み係数を16個のエッジ重心に対応付けた例を示している。
 次に、図10(2)に示す斜め成分エッジ情報取得処理例について説明する。図10(2)には25個のエッジ重心を示している。これらは、図9(a3),(a4),(b3),(b4)に示すエッジ重心に対応する。すなわち、
 gradA:右斜め上方向の勾配絶対値平均
 gradD:左斜め上方向の勾配絶対値平均
 これらの値を算出する際のエッジ重心に対応する。
 7×7画素領域に、図9(a3),(a4),(b3),(b4)に示す4×4画素領域を設定する。設定可能な4×4画素領域は、図に示す左上端の4×4画素領域312から右下端の4×4画素領域314まで16個ある。図10(2)に示す25個のエッジ重心中、図10(2)に示す点線矩形枠315内の16個のエッジ重心は、これら16個の4×4画素領域に対応するエッジ重心、すなわち、図9(a3),(a4),(b3),(b4)に示すと同様の位置のエッジ重心である。
 水平軸をi、垂直軸をjとして、図に示す0,1,2,3,4のスケールを設定し、エッジ重心の座標位置を(i,j)として表記した場合、エッジ重心(1,1)311は、4×4の画素領域312に対応するエッジ重心となる。4×4の画素領域312を図9(a3),(a4),(b3),(b4)に示す4×4の画素領域とした場合、エッジ重心(1,1)311は、図9(a3),(a4),(b3),(b4)に示す重心に対応する。
 また、エッジ重心(4,4)313は、4×4の画素領域314に対応して設定されるエッジ重心である。4×4の画素領域314を図9(a3),(a4),(b3),(b4)に示す4×4の画素領域とした場合、エッジ重心(4,4)313は、図9(a3),(a4),(b3),(b4)に示す重心に対応する。
 図10(2)には点線矩形枠315の外側にもエッジ重心を示している。i=0、j=0の位置にある、
 (i,j)=(0,0)~(0,4)と、(1,0)~(4,0)
 これらのエッジ重心である。
 図9(a3),(a4),(b3),(b4)に示すように、
 gradA:右斜め上方向の勾配絶対値平均
 gradD:左斜め上方向の勾配絶対値平均
 これらの値を算出する最に利用する画素位置は、エッジ重心周りの8画素のみである。従って、図10(2)に示すi=0、j=0の位置にエッジ重心を設定した場合でも、gradA、gradVを算出することができる。
 従って、7×7画素領域を用いて、異なる位置にエッジ重心を設定した算出可能なgradA、gradDは図10(2)に示す25個のエッジ重心位置に対応する25個のデータとなる。
 図10(2)に示す7×7画素領域から、図9(a3),(a4),(b3),(b4)を参照して説明した算出式を用いることで、
 gradA:右斜め上方向の勾配絶対値平均
 gradD:左斜め上方向の勾配絶対値平均
 これらの値をそれぞれ25個ずつ算出することができる。
 エッジ重心(i,j)に対応する4×4画素領域を用いて算出される勾配絶対値平均(gradA)、(gradD)を、それぞれ、
 gradAi,j
 gradDi,j
 として示す。これらを用いて、勾配絶対値平均の加重加算値、すなわち、
 dirA:右斜め上方向勾配情報
 dirD:左斜め上方向勾配情報
 これらを、以下の算出式(式5)を用いて算出する。
Figure JPOXMLDOC01-appb-M000005
     ・・・(式5)
 上記式においてwijは、(i,j)位置のエッジ重心に対応する重み係数である。重み係数は、例えば図10(2)に示すように、中心部を大きく周辺部を小さくした係数として設定される。図10(2)には重み係数の一例として(16/100)~(1/100)の重み係数を25個のエッジ重心に対応付けた例を示している。
 図10を参照して説明した処理によって算出したエッジ情報、すなわち、
 dirH:水平勾配情報
 dirV:垂直勾配情報
 dirA:右斜め上方向勾配情報
 dirD:左斜め上方向勾配情報
 これらのdirH,dirV,dirA,dirDは、7×7画素領域に含まれる多数の画素値(W画素値)を利用して算出されたエッジ情報である。
 従って、図9を参照して説明した少数の画素情報を適用して算出したエッジ情報に比較して、ノイズ等による誤った結果を発生させる可能性が低減される。
 なお、上記式および図10に示す重み係数wijの設定例は一例であり、他の平均化係数を用いることも可能である。
 なお、図10を参照して説明した例は、7×7画素の領域を用いて勾配絶対値平均の加重加算値(dirH,dirV,dirA,dirD)を算出する処理例であるが、例えば、図11に示すように、5×5画素の領域を用いて勾配絶対値平均の加重加算値(dirH,dirV,dirA,dirD)を算出する構成としてもよい。
 すなわち、データ変換処理部200に入力する7×7画素の画素領域の中心部の5×5画素の画素領域を抽出してエッジ検出を行う構成としてもよい。この処理例について図11を参照して説明する。
 図11には、図10と同様、
 (1)水平・垂直成分エッジ情報取得処理例
 (2)斜め成分エッジ情報取得処理例
 これらの各処理例を示している。
 図11(1)、(2)には5×5画素の画像データを示している。このデータは、エッジ検出部209が処理対象とするデータであり、図9に示すと同様、W画素値のみが離散的に配列されたデータである。この5×5画素の中心に位置する中心画素に対応するエッジ情報(エッジ方向とエッジ強度)を求める。
 図11(1)に示す(1)水平・垂直成分エッジ情報取得処理例について説明する。図11(1)に示す5×5画素領域には、4×4の画素領域とエッジ重心の組が4個設定される。これら4個の組に対して、図9(a1),(a2),(b1),(b2)を参照して説明した算出式を用いることで、
 gradH:水平方向の勾配絶対値平均
 gradV:垂直方向の勾配絶対値平均
 これらの値をそれぞれ4個ずつ算出することができる。
 エッジ重心(i,j)に対応する4×4画素領域を用いて算出される勾配絶対値平均(gradH)、(gradV)を、それぞれ、
 gradHi,j
 gradVi,j
 として示す。これらを用いて、勾配絶対値平均の加重加算値、すなわち、
 dirH:水平勾配情報
 dirV:垂直勾配情報
 これらを、前述した式(式4)を用いて算出する。
 次に、図11(2)に示す斜め成分エッジ情報取得処理例について説明する。図11(2)には9個のエッジ重心を示している。これらは、図9(a3),(a4),(b3),(b4)に示すエッジ重心に対応する。すなわち、
 gradA:右斜め上方向の勾配絶対値平均
 gradD:左斜め上方向の勾配絶対値平均
 これらの値を算出する際のエッジ重心に対応する。
 図11(2)に示す5×5画素領域から、図9(a3),(a4),(b3),(b4)を参照して説明した算出式を用いることで、
 gradA:右斜め上方向の勾配絶対値平均
 gradD:左斜め上方向の勾配絶対値平均
 これらの値をそれぞれ9個ずつ算出することができる。
 エッジ重心(i,j)に対応する4×4画素領域を用いて算出される勾配絶対値平均(gradA)、(gradD)を、それぞれ、
 gradAi,j
 gradDi,j
 として示す。これらを用いて、勾配絶対値平均の加重加算値、すなわち、
 dirA:右斜め上方向勾配情報
 dirD:左斜め上方向勾配情報
 これらを、前述の算出式(式5)を用いて算出する。
 このように、勾配絶対値平均の加重加算値(dirH,dirV,dirA,dirD)を算出する処理においては、7×7画素領域、あるいは5×5画素領域など、様々な領域を利用することが可能である。
 エッジ検出部209は、このようにして求めたエッジ情報、すなわち、
 dirH:水平勾配情報
 dirV:垂直勾配情報
 dirA:右斜め上方向勾配情報
 dirD:左斜め上方向勾配情報
 これらのエッジ情報(dirH,dirV,dirA,dirD)をブレンド処理部211、および複数の画素補間パラメータ算出部に出力する。
  (3-3.テクスチャ検出部の処理について)
 次に、テクスチャ検出部210の処理について説明する。テクスチャ検出部210は、入力信号であるRGBW配列に含まれる離散的なホワイト(W)画素を用いてテクスチャの検出処理を実行する。すなわち、各画素対応のテクスチャ情報を検出して検出情報をブレンド処理部211に出力する。
 具体的には、各画素の近傍画像領域がテクスチャの多い(平坦度の低い)画像であるか、テクスチャの少ない(平坦度の高い)画像であるかを検出してこの検出情報を各画素対応のテクスチャ情報としてブレンド処理部211に出力する。
 テクスチャ検出部210の処理について、図12以下を参照して説明する。
 テクスチャ検出部210は、前述したように、データ変換処理部200に対する入力単位である7×7画素の画素領域の中心部の5×5画素の領域を抽出して、抽出した5×5画素の領域を処理単位として処理を行う。処理単位(5×5画素)毎にW画素の平均値Waveを算出する。
 W画素平均値Waveの算出処理には例えば平滑化フィルタを用いる。入力画素単位の中心がW画素の場合は、図12に示すような係数を設定したフィルタでW画素の平均値Waveを求め、入力画素単位の中心がW画素でない場合は、図13に示すような係数を設定したフィルタでW画素の平均値Waveを求める。
 図12を参照して入力画素単位の中心がW画素の場合の処理について説明する。中心画素がW画素となる5×5画素の処理単位321のW画素位置を中心とする9画素中のW画素値に、フィルタ322の対応画素位置のフィルタ係数を乗算する。さらに各乗算結果の加算値を算出する。この加算結果をW信号の平均値Waveとする。この平均値Waveは、処理単位321の中心W画素に対する平均値Waveとして算出される。テクスチャ検出部210は、さらにこの画素対応の平均値Waveを用いて、中心W画素に対応するテクスチャ度合いの指標値としての平坦度重み(weightFlat)を算出する。この算出処理については後述する。
 なお、図12に示すフィルタ322のフィルタ係数は、5×5画素の処理単位321の中心W画素~周囲W画素について(4/8~1/8)の設定としてある。このフィルタ係数は一例であり、その他の係数を利用した構成でもよく、いわゆるローパスフィルタであれば係数はこの限りではない。また、9画素より広い領域を利用した構成としてもよい。
 次に、図13を参照して入力画素単位の中心がW画素以外の場合の処理について説明する。中心画素がW画素以外となる5×5画素の処理単位331の中心画素位置を中心とする9画素中のW画素値に、フィルタ332の対応画素位置のフィルタ係数を乗算する。さらに各乗算結果の加算値を算出する。この加算結果をW信号の平均値Waveとする。算出された平均値Waveは、処理単位331の中心画素(RGBのいずれか)に対する平均値Waveとして算出される。
 なお、図13に示すフィルタ332のフィルタ係数は、5×5画素の処理単位331の中心画素周りの周囲W画素について各々(1/4)の設定としてある。このフィルタ係数は一例であり、その他の係数を利用した構成でもよく、いわゆるローパスフィルタであれば係数はこの限りではない。また、9画素より広い領域を利用した構成としてもよい。
 テクスチャ検出部210は、このようにして、入力画素単位の中心画素がW画素であるかW画素以外のRGB画素であるかに応じて、図12に示すフィルタ322、または図13に示すフィルタ332を適用して入力画素単位の中心画素対応のW画素平均値Waveを算出する。
 テクスチャ検出部210は、算出したW画素平均値Waveを用いて、中心画素p=(x,y)に対応するテクスチャ度:WTX(p)を以下の算出式(式6)を用いて算出する。
Figure JPOXMLDOC01-appb-M000006
     ・・・(式6)
 上記式(式6)において、
 Ωpは、処理対象データである処理単位(5×5画素)に含まれる画素の集合、
 I(q)はその画素値、
 Iave(p)は、図12または図13のフィルタを適用して算出されるW画素平均値(Waveと同一値)、
 φ(r)は、予め規定した重み関数、
 である。
 なお、関数φ(r)は、一般的には指数関数を用いる。しかし、演算量を抑えるために、先に説明した図7(3)に示すような線形近似した関数を利用してもよい。
 図7(3)に示す線形近似は、閾値としてTh1=2.0、Th2=3.0を設定し、
  r=0~Th1(2.0)→φ(r)=1.0
  r=Th1(2.0)~Th2(3.0)→φ(r)=1.0~0(線形変化)
  r=Th2以上→φ(r)=0
 このような設定の線形近似例である。
 さらに、テクスチャ検出部210は、上記式に従って算出した中心画素pに対応するテクスチャ度:WTX(p)を適用して、以下の式(式7)に従って中心画素p=(x,y)に対応する平坦度重み(weightFlat)を算出する。
 weightFlat(x,y)=fflat(WTX(p))
     ・・・(式7)
 上記式(式7)において、
 fflat(r)は、例えば図14に示すような線形近似関数を用いることができる。
 図14に示す線形近似関数は、閾値として0<Th0(FLAT_LIMIT0)<Th1(FLAT_LIMIT1)<1を設定し、
  r=0~Th0→fflat(r)=0
  r=Th0~Th1→fflat(r)=0~1.0(線形変化)
  r=Th1以上→fflat(r)=1
 このような設定とした線形近似関数である。
 なお、平坦度重み(weightFlat)の値が小さいほど、平坦度が低くテクスチャが多い画像領域であり、平坦度重み(weightFlat)の値が大きいほど、平坦度が高くテクスチャが少ない画像領域である可能性が高いことを示す。
 テクスチャ検出部210は、このようにして算出した平坦度重み(weightFlat)をブレンド処理部211に出力する。
  (3-4.画素補間パラメータ算出部の処理について)
 次に、図6のデータ変換処理部200内の第1~第5画素補間パラメータ算出部202,204,205,207,208、および、第1~第2仮画素設定部203,206の処理について説明する。これらの各部は以下の処理を実行する。
 第1画素補間パラメータ算出部(GonW)202は、W画素をG画素に変換する処理に適用するパラメータの算出処理を実行する。
 第1仮画素設定部(RBonWaroundG)203は、G画素に隣接するW画素位置をR画素またはB画素に変換する処理の事前処理としてG画素周囲のW画素をRまたはB画素の仮画素(R')(B')に変換する処理を実行する。
 第2画素補間パラメータ算出部(RBonGofHV)204は、G画素をR画素、またはB画素に変換する処理に適用するパラメータとして、縦または横エッジ対応のパラメータを算出する。
 第3画素補間パラメータ算出部(RBonGofAD)205は、G画素をR画素、またはB画素に変換する処理に適用するパラメータとして、斜めエッジ対応のパラメータを算出する。
 第2仮画素設定部(RBonWaroundRB)206は、R画素またはB画素に隣接するW画素位置をR画素またはB画素に変換する処理の事前処理としてRまたはB画素周囲のW画素をRまたはB画素の仮画素(R')(B')に変換する処理を実行する
 第4画素補間パラメータ算出部(RBonRBofHV)207は、R画素をB画素に、またはB画素をR画素に変換する処理に適用するパラメータとして、縦または横エッジ対応のパラメータを算出する。
 第5画素補間パラメータ算出部(RBonRBofAD)208は、R画素をB画素に、またはB画素をR画素に変換する処理に適用するパラメータとして、斜めエッジ対応のパラメータを算出する。
  (3-4-1.第1画素補間パラメータ算出部(GonW)202の処理)
 まず、第1画素補間パラメータ算出部(GonW)202の処理について説明する。第1画素補間パラメータ算出部(GonW)202は、RGBW配列181のW画素位置に設定するG画素値の算出に適用する補間パラメータを算出する。
 なお、第1画素補間パラメータ算出部(GonW)202は、7×7の画素領域を処理単位(入力画素単位)として処理を行う。
 第1画素補間パラメータ算出部(GonW)202は、まず、処理単位の7×7画素領域におけるW信号の低周波成分mWを求める。
 図15に示すように、7×7画素の入力画素単位401に対して図15に示すフィルタ411を適用して、7×7画素の入力画素単位401に対応する低周波成分mWを算出する。ここでG画素に変換する対象となるW画素は、7×7画素の入力画素単位401の中心にある変換対象画素402である。図15に示す入力画素単位401においてグレーで示す画素がW画素である。その他はRGB画素である。同様に、図15に示すフィルタ411においてグレーで示す画素がW画素対応位置である。その他はRGB画素対応位置である。なお、以下の図面においてもW画素またはW画素対応位置はグレーで示し、RGB画素位置または対応位置は白で示す。
 フィルタ411は、変換対象画素対応位置412のフィルタ係数が最も高く、周囲に離れるに従って係数を低く設定したフィルタである。係数として(16/128~1/128)の各係数を設定している。このフィルタ411を適用して、低周波成分mWを算出する。7×7画素の入力画素単位401のW画素位置の画素値に、フィルタ411の対応画素位置のフィルタ係数を乗算して、各乗算結果の加算値をW信号の低周波成分mWとして算出する。
 なお、図15に示すフィルタ411のフィルタ係数設定例は一例であり、この他のフィルタ係数を設定したフィルタを適用してもよい。図15に示すフィルタ例の他、例えばローパス特性を持つ他の平滑化フィルタを用いることも可能である。
 さらに、第1画素補間パラメータ算出部(GonW)202は、処理単位の7×7画素領域におけるW信号の高周波成分wを求める。
 図16に示すように、7×7画素の入力画素単位401に対して図16に示すフィルタ415を適用して、7×7画素の入力画素単位401に対応する高周波成分wを算出する。G画素に変換する対象となるW画素は、7×7画素の入力画素単位401の中心にある変換対象画素402である。
 フィルタ415は、変換対象画素対応位置416のフィルタ係数のみ1に設定されたフィルタである。このフィルタ416を適用して、高周波成分wを算出する。7×7画素の入力画素単位401のW画素位置の画素値に、フィルタ415の対応画素位置のフィルタ係数を乗算してW信号の高周波成分wを算出する。
 次に、図17を参照してG信号の低周波成分mGの算出処理について説明する。G信号の低周波成分mGの算出処理においては、7×7画素の入力画素単位401の構成およびエッジ方向に応じて異なるフィルタを適用する。
 具体的には、図17に示すように、
 (a)入力画素単位401の中心W画素の左にG画素がある場合
 (b)入力画素単位401の中心W画素の右にG画素がある場合
 これらの2種類のパターンに応じて、図17に示すフィルタ421,422を使い分ける。
 これらのフィルタの適用により、7×7画素の入力信号401に対応する低周波成分mGを算出する。ここでG画素に変換する対象となるW画素は、7×7画素の入力信号401の中心にある変換対象画素402である。
 (a)入力画素単位401の中心W画素の左にG画素がある場合は、図17(a)に示すような係数設定のフィルタ421を適用して、G信号の低周波成分mGを算出する。フィルタ係数を示す数値を示している画素がG画素対応位置である。フィルタ421の中心は、変換対象画素対応位置423である。入力画素単位401の中心W画素の左にG画素がある場合、変換対象画素対応位置423の直近の左側のG画素位置のフィルタ係数の重みを大きく設定し、これらのG画素の画素値の変換値に対する影響度を高める構成としている。
 (b)入力画素単位401の中心W画素の右にG画素がある場合は、図17(b)に示すような係数設定のフィルタ422を適用して、G信号の低周波成分mGを算出する。フィルタ係数を示す数値を示している画素がG画素対応位置である。フィルタ422の中心は、変換対象画素対応位置424である。入力画素単位401の中心W画素の右にG画素がある場合、変換対象画素対応位置423の直近の右側のG画素位置のフィルタ係数の重みを大きく設定し、これらのG画素の画素値の変換値に対する影響度を高める構成としている。
 適用するフィルタのいずれも、変換対象画素対応位置に近いG画素対応位置のフィルタ係数が最も高く、周囲に離れるに従って係数を低く設定したフィルタとして設定される。係数として(1/64~12/64)の各係数を設定している。これらのフィルタ421,422のいずれかを適用して、低周波成分mGを算出する。7×7画素の入力画素単位401のG画素位置の画素値に、フィルタ421,422のいずれかのフィルタ係数を乗算して、各乗算結果の加算値をG信号の低周波成分mGとして算出する。
 なお、図17に示すフィルタ421,422のフィルタ係数設定例は一例であり、この他のフィルタ係数を設定したフィルタを適用してもよい。
 第1画素補間パラメータ算出部202は、このように、G画素への変換対象となるW画素を中心画素として持つ7×7画素領域を処理単位として、W信号とG信号の低周波成分mWおよびmGとW信号の高周波成分wを算出する。
 このようにして算出されたmWとmGの比率が画像内の局所領域において保たれると仮定する。この仮定に従うと、局所領域におけるWとGの画素値比率の対応関係は図18のグラフに示す対応関係となる。図18のグラフは横軸がW画素値、縦軸がG画素値である。画像の特定の狭い局所領域では、このW画素値とG画素値の比率は一定であるとすると、図18に示す直線(ラインL1)のような比例関係にあると仮定できる。
 この仮定に従うと、入力画素単位401の中心W画素、すなわち、変換対象画素位置のW信号の画素値をw(=高周波成分)とした場合、その変換対象画素位置に設定すべきG信号の画素値GonWは、以下の式に従って算出できる。
 GonW=(mG/mW)w
 これは、W画素値とG画素値の局所領域では比率が一定であることを仮定した画素値推定方法である。
 なお、mWは、図15を参照して説明した処理によって算出されるW信号の低周波成分mWである。
 mGは、図17を参照して説明した処理によって算出されるG信号の低周波成分mGである。mGは、入力画素単位401の構成、エッジ方向に応じて異なる値が適用される。
 図18に示す直線(ラインL1)は、W画素値とG画素値の局所領域では比率が一定であることの仮定に基づくラインである。画素値変換処理に際してコントラスト強調処理を実行する場合は、図18に示す直線(ラインL2)のようなラインを適用してもよい。kは、コントラスト強調処理調整パラメータである。
 コントラスト強調処理を適用する場合の変換対象W画素に設定するG画素の画素値は以下のように算出する。
 変換対象画素位置のW信号の画素値をw、変換対象画素位置に設定すべきG信号の画素値をGonWとする。変換後のG画素値GonWは以下の式に従って算出できる。
 GonW=fcontrast(mG,mW,w,k)
 fcontrast(mG,mW,w,k)
 =k(mG/mW)(w-mW)+mG)・・・(≧0)
 =0・・・(<0)
 なお、kはコントラスト強調処理調整パラメータ(k=1でコントラスト強調なし)である。
 mWは、図15を参照して説明した処理によって算出されるW信号の低周波成分mWである。
 mGは、図17を参照して説明した処理によって算出されるG信号の低周波成分mGである。なおmGは、中心W画素の左にG画素がある場合と、中心W画素の右にG画素がある場合とでは図17(a),(b)に示す異なるフィルタを用いて算出される。
 このように、第1画素補間パラメータ算出部202は、RGBW配列におけるW画素をG画素に変換するために適用する補間パラメータとして、以下のパラメータを算出する。
 W信号の低周波成分mW、
 W信号の高周波成分w、
 G信号の低周波成分mG
 これらのパラメータは、処理対象とする7×7画素の中心部の1画素のW画素に対応するパラメータである。第1画素補間パラメータ算出部202は、入力するRGBW配列に含まれるW画素について同様の処理を実行して、各W画素に対する上記パラメータを算出する。これらの算出パラメータは、図6に示すブレンド処理部211に
出力される。
 ブレンド処理部は、これらのパラメータと、テクスチャ検出部210等から出力されるデータを用いて、RGBW配列に含まれるW画素の位置に設定するG画素値(GonW)を以下の式に従って算出する。
 GonW=(weightFlat)(mG/mW)w+(1-weightFlat)(k(mG/mW)(w-mW)+mG)
 なお、上記式において、
 mW:W信号の低周波成分mW、
 w:W信号の高周波成分w、
 mG:G信号の低周波成分mG
 weightFlat:平坦度重み
 k:コントラスト強調処理調整パラメータ(k=1でコントラスト強調なし(図18参照))
 なお、weightFlatは、テクスチャ検出部210の検出する平坦度重みであり、平坦度重み(weightFlat)の値が小さいほど、平坦度が低くテクスチャが多い画像領域であり、平坦度重み(weightFlat)の値が大きいほど、平坦度が高くテクスチャが少ない画像領域である可能性が高い。
 コントラスト強調処理調整パラメータ(k)は、予め設定済みの値を用いるか、あるいはユーザによる入力値を用いるなど、様々な設定が可能である。
  (3-4-2.第1仮画素設定部(RBonWaroundG)203の処理)
 次に、第1仮画素設定部(RBonWaroundG)203の処理について説明する。第1仮画素設定部(RBonWaroundG)203は、図6に示す構成図から理解されるように、第2画素補間パラメータ算出部(RBonGofHV)204と、第3画素補間パラメータ算出部(RBonGofAD)205の前段に設定されている。
 第2画素補間パラメータ算出部(RBonGofHV)204と、第3画素補間パラメータ算出部(RBonGofAD)205はいずれもG画素をRまたはB画素に変換するためのパラメータを算出する。第1仮画素設定部(RBonWaroundG)203は、これらの処理に先行して、RB画素に隣接するW画素位置を仮のR画素(R')またはB画素(B')に変換する処理を実行する。
 第1仮画素設定部(RBonWaroundG)203は、まず、処理単位の7×7画素領域におけるW信号の低周波成分mW、R信号の低周波成分mR、B信号の低周波成分mBを求める。
 図19に示すように、7×7画素の入力画素単位501に対して図19に示すフィルタ511を適用して、7×7画素の入力画素単位501に対応するW信号の低周波成分mWを求める。
 さらに、図20に示すように、7×7画素の入力画素単位501に対して図20に示すフィルタ513,515を適用して、7×7画素の入力画素単位501の中央の変換対象画素502に対応するR信号の低周波成分mR、B信号の低周波成分mBを求める。
 図19、図20に示す7×7画素の入力画素単位501の中心画素が変換対象画素502である。この場合は、入力画素単位501は、第2画素補間パラメータ算出部(RBonGofHV)204と、第3画素補間パラメータ算出部(RBonGofAD)205に対する入力であり、これらは、G画素をRまたはB画素に変換するためのパラメータを算出する処理部であるので、入力画素単位501の中心画素である変換対象画素502はG画素である。
 図19に示すW信号の低周波成分mWを求めるフィルタ511は、変換対象画素対応位置512を中心とした7×7画素のフィルタであり、係数設定部はW画素対応位置である。フィルタ511のW画素対応位置には係数として(2/128~12/128)の各係数を設定している。7×7画素の入力画素単位501のW画素位置の各画素値に、フィルタ511の対応画素位置のフィルタ係数を乗算して、各乗算結果の加算値を、W信号の低周波成分mWとして算出する。
 図20上段に示すR信号の低周波成分mRを求めるフィルタ513は、変換対象画素対応位置514を中心とした7×7画素のフィルタであり、係数設定部はR画素対応位置である。フィルタ513のR画素対応位置には係数として(1/32~9/32)の各係数を設定している。7×7画素の入力画素単位501のR画素位置の各画素値に、フィルタ513の対応画素位置のフィルタ係数を乗算して、各乗算結果の加算値を、R信号の低周波成分mRとして算出する。
 図20下段に示すB信号の低周波成分mBを求めるフィルタ515は、変換対象画素対応位置516を中心とした7×7画素のフィルタであり、係数設定部はB画素対応位置である。フィルタ515のB画素対応位置には係数として(1/32~9/32)の各係数を設定している。7×7画素の入力画素単位501のB画素位置の各画素値に、フィルタ515の対応画素位置のフィルタ係数を乗算して、各乗算結果の加算値を、B信号の低周波成分mBとして算出する。
 次に、第1仮画素設定部(RBonWaroundG)203は、図21に示すように、7×7画素の入力画素単位501の中心にある変換対象画素502の周囲に隣接するW画素位置のR画素値とB画素値を推定する。
 図21に示すように、7×7画素の入力画素単位501の中心にある変換対象画素502の周囲に隣接するW画素位置は4つある。これらのW画素位置のR画素値とB画素値を推定する。推定処理は、先に図18を参照して説明したように、mWとmR、またはmWとmBの比率が画像内の局所領域において保たれるとの仮定に基づいて行う。
 このような過程に基づくと、図21に示す7×7画素の入力画素単位501の中心にある変換対象画素502の周囲に隣接するW画素位置のR画素値(Rxy'=R23',R32',R43',R34')は以下のように推定することができる。
 R23'=(mR/mW)w23
 R32'=(mR/mW)w32
 R43'=(mR/mW)w43
 R34'=(mR/mW)w34
 なお、w23、w32、w43、w34は図21に示す7×7画素の入力画素単位501の中心にある変換対象画素502の周囲に隣接するW画素位置のW画素値である。
 同様に、図21に示す7×7画素の入力画素単位501の中心にある変換対象画素502の周囲に隣接するW画素位置のB画素値(Bxy'=B23',B32',B43',B34')は以下のように推定することができる。
 B23'=(mB/mW)w23
 B32'=(mB/mW)w32
 B43'=(mB/mW)w43
 B34'=(mB/mW)w34
 なお、w23、w32、w43、w34は図に示す7×7画素の入力画素単位501の中心にある変換対象画素502の周囲に隣接するW画素位置のW画素値である。
 このように、第1仮画素設定部(RBonWaroundG)203は、7×7画素の入力画素単位501の中心にある変換対象画素502の周囲に隣接するW画素位置のR画素値とB画素値を推定して、これらを第2画素補間パラメータ算出部(RBonGofHV)204と、第3画素補間パラメータ算出部(RBonGofAD)205に提供する。
  (3-4-3.第2画素補間パラメータ算出部(RBonGofHV)204の処理)
 次に、第2画素補間パラメータ算出部(RBonGofHV)204の処理について説明する。第2画素補間パラメータ算出部(RBonGofHV)204は、G画素をR画素、またはB画素に変換する処理に適用するパラメータとして、縦または横エッジ対応のパラメータ等を算出する。
 エッジ検出部209は、前述したように、
 dirH:水平勾配情報
 dirV:垂直勾配情報
 dirA:右斜め上方向勾配情報
 dirD:左斜め上方向勾配情報
 これらのエッジ情報(dirH,dirV,dirA,dirD)を、各画素対応のエッジ情報として生成する。第2画素補間パラメータ算出部(RBonGofHV)204は、変換対象とするG画素対応のこれらのエッジ情報を入力する。
 第2画素補間パラメータ算出部(RBonGofHV)204は、変換対象とするG画素対応の4方向のエッジ情報(dirH,dirV,dirA,dirD)のdirHとdirVを比較して、比較結果に応じて縦または横エッジ対応のパラメータを算出する。算出するパラメータは、G画素をR画素、またはB画素に変換する補間パラメータである。
 第2画素補間パラメータ算出部(RBonGofHV)204は、7×7画素の入力画素単位501のエッジ方向に応じて、7×7画素の入力画素単位501の中央位置にある変換対象画素502に対応する高周波成分を算出する。エッジ方向情報は、エッジ検出部209から入力する。
 エッジ検出部209から入力するdirH(水平勾配情報)と、dirV(垂直勾配情)の大小を比較して、7×7画素の入力画素単位501のエッジ方向が横方向であるか縦方向であるか、エッジ方向が特定できない平坦領域であるかを判別する。例えば予め設定した閾値を利用して判別処理を行う。なお、7×7画素の入力画素単位501の中央位置にある変換対象画素502は元々G画素である。
 7×7画素の入力画素単位501の中央位置にある変換対象画素502に対応する高周波成分を推定する処理について図22、図23を参照して説明する。
 7×7画素の入力画素単位501のエッジ方向が横方向である場合は、
 図22(a)に示すように、フィルタ531を適用して、中央位置の変換対象画素502の横に隣接する2つのW画素の画素値の平均を算出する。
 この平均値を横方向のエッジ方向を持つ変換対象画素502に対応する高周波成分(w_h)として算出する。
 フィルタ531はエッジ方向(横方向)に平行なラインにフィルタ係数を設定したフィルタである。すなわち、画素値の変化の少ないと推定される方向の画素値のみを反映させるフィルタである。
 7×7画素の入力画素単位501のエッジ方向が縦方向である場合は、
 図22(b)に示すように、フィルタ532を適用して、中央位置の変換対象画素502の縦に隣接する2つのW画素の画素値の平均を算出する。
 この平均値を縦方向のエッジ方向を持つ変換対象画素502に対応する高周波成分(w_v)として算出する。
 フィルタ532はエッジ方向(縦方向)に平行なラインにフィルタ係数を設定したフィルタである。すなわち、画素値の変化の少ないと推定される方向の画素値のみを反映させるフィルタである。
 なお、図22の右端には、処理対象となる7×7画素の入力画素単位501のエッジ例を表現したイメージ図を示している。
 さらに、第2画素補間パラメータ算出部(RBonGofHV)204は、7×7画素の入力画素単位501のエッジ方向にかかわらず、すべての画素について、図23(c)に示すように、フィルタ533を適用して、中央位置の変換対象画素502の縦横に隣接する4つのW画素の画素値の平均を算出して、変換対象画素502に対応する高周波成分(w_n)を算出する。
 フィルタ533は全方向に均等にフィルタ係数を設定したフィルタとして設定される。
 次に、第2画素補間パラメータ算出部(RBonGofHV)204は、G画素をR画素、またはB画素に変換する処理に適用するパラメータとして、縦または横エッジ対応のパラメータを算出する。
 具体的には、G画素をR画素に変換する処理に適用するパラメータとして以下のパラメータを算出する。
 RonG(H)=(mR'/mW)(w_h)
 RonG(V)=(mR'/mW)(w_v)
 RonGn=(mR'/mW)(w_n)
 また、G画素をB画素に変換する処理に適用するパラメータとしては以下のパラメータを算出する。
 BonG(H)=(mB'/mW)(w_h)
 BonG(V)=(mB'/mW)(w_v)
 BonGn=(mB'/mW)(w_n)
 なお、RonG(H)、BonG(H)は、エッジ方向が横方向であると判定され、横方向エッジ対応高周波成分(w_h)を算出した画素について算出するパラメータである。
 また、RonG(V)、BonG(V)は、エッジ方向が縦方向であると判定され、縦方向エッジ対応高周波成分(w_v)を算出した画素について算出するパラメータである。
 RonGn、BonGnは、エッジ方向に関わらず全画素に対応するパラメータとして算出する。
 なお、上記パラメータ算出式において、mR'は、先に説明した第1仮画素設定部(RBonWaroundG)203の算出した入力画素単位501の中心にある変換対象画素502の周囲に隣接するW画素位置のR画素値を利用して算出した7×7画素の入力画素単位501に対応するR信号の低周波成分mRの補正値mR'である。
 すなわち、図21に示す7×7画素の入力画素単位501の中心にある変換対象画素502の周囲に隣接するW画素位置のR画素値(Rxy'=R23',R32',R43',R34')を適用して算出した7×7画素の入力画素単位501に対応するR信号の低周波成分補正値mR'である。
 同様に、mB'は、先に説明した第1仮画素設定部(RBonWaroundG)203の算出した入力画素単位501の中心にある変換対象画素502の周囲に隣接するW画素位置のB画素値を利用して算出した7×7画素の入力画素単位501に対応するB信号の低周波成分mBの補正値mB'である。
 すなわち、図21に示す7×7画素の入力画素単位501の中心にある変換対象画素502の周囲に隣接するW画素位置のB画素値(Bxy'=B23',B32',B43',B34')を適用して算出した7×7画素の入力画素単位501に対応するB信号の低周波成分補正値mB'である。
 7×7画素の入力画素単位501に対応するR信号の低周波成分補正値mR'と、B信号の低周波成分補正値mB'の算出処理例について、図24を参照して説明する。
 図24上段に示すR信号の補正低周波成分mR'を求めるフィルタ551は、変換対象画素対応位置552を中心とした7×7画素のフィルタであり、係数設定部は、入力RGBW配列画像のオリジナルのR画素対応位置と、先に説明した第1仮画素設定部(RBonWaroundG)203がR画素値(Rxy'=R23',R32',R43',R34')を算出した位置である。
 先に図21を参照して説明したように、第1仮画素設定部(RBonWaroundG)203は、変換対象画素対応位置502の周囲(上下左右)にある4つのW画素の位置に対応するR画素値(Rxy'=R23',R32',R43',R34')を推定している。
 7×7画素の入力画素単位501に対応するR信号の低周波成分補正値mR'の算出処理は、RGBW配列に本来含まれるR画素に加え、第1仮画素設定部(RBonWaroundG)203の推定したR画素値(Rxy'=R23',R32',R43',R34')も利用して算出する。
 低周波成分補正値mR'の算出に際しては、7×7画素の入力画素単位501の本来のR画素位置の各R画素値と、第1仮画素設定部(RBonWaroundG)203の推定したR画素値(Rxy'=R23',R32',R43',R34')の各々に、フィルタ551の対応画素位置のフィルタ係数を乗算する処理が行われる。各乗算結果の加算値がR信号の補正低周波成分mR'として算出される。
 同様に低周波成分補正値mB'の算出に際しては、7×7画素の入力画素単位501の本来のB画素位置の各B画素値と、第1仮画素設定部(RBonWaroundG)203の推定したR画素値(Bxy'=B23',B32',B43',B34')の各々に、フィルタ553の対応画素位置のフィルタ係数を乗算する処理が行われる。各乗算結果の加算値がB信号の補正低周波成分mB'として算出される。
 第2画素補間パラメータ算出部(RBonGofHV)204の算出するパラメータ、すなわち、
 RonG(H)=(mR'/mW)(w_h)
 RonG(V)=(mR'/mW)(w_v)
 RonGn=(mR'/mW)(w_n)
 BonG(H)=(mB'/mW)(w_h)
 BonG(V)=(mB'/mW)(w_v)
 BonGn=(mB'/mW)(w_n)
 これらのパラメータは、
 図19を参照して説明したと同様の処理によって算出したW信号の低周波成分mW、
 図22~図23を参照して説明した変換対象画素502に対応する高周波成分(w_h),(w_v),(w_n)
 図24を参照して説明したR信号の補正低周波成分mR'、B信号の補正低周波成分mB'、
 これらを用いて算出することができる。
 なお、図19を参照して説明したW信号の低周波成分mWは、第1仮画素設定部(RBonWaroundG)203において算出された値であり、第2画素補間パラメータ算出部(RBonGofHV)204は、この算出値をそのまま利用してもよいし、再度、図19を参照して説明した処理と同様の処理を実行して再算出する構成としてもよい。
 第2画素補間パラメータ算出部(RBonGofHV)204は、算出した上記のパラメータをブレンド処理部211に出力する。ブレンド処理部211は、エッジ状態に応じてブレンド処理を実行し、7×7画素の入力画素単位501の中央位置にある変換対象画素502であるG画素位置をR画素に変換する際のR画素値を決定する。ブレンド処理部211の処理については後段で説明する。
  (3-4-4.第3画素補間パラメータ算出部(RBonGofAD)205の処理)
 次に、第3画素補間パラメータ算出部(RBonGofAD)205の処理について説明する。第3画素補間パラメータ算出部(RBonGofAD)205は、G画素をR画素、またはB画素に変換する処理に適用するパラメータとして、斜めエッジ対応のパラメータ等を算出する。
 エッジ検出部209は、前述したように、
 dirH:水平勾配情報
 dirV:垂直勾配情報
 dirA:右斜め上方向勾配情報
 dirD:左斜め上方向勾配情報
 これらのエッジ情報(dirH,dirV,dirA,dirD)を、各画素対応のエッジ情報として生成する。第3画素補間パラメータ算出部(RBonGofAD)205は、変換対象とするG画素対応のこれらのエッジ情報を入力する。
 第3画素補間パラメータ算出部(RBonGofAD)205は、変換対象とするG画素対応の4方向のエッジ情報(dirH,dirV,dirA,dirD)のdirAとdirDを比較して、比較結果に応じた異なる処理を実行して斜めエッジ対応のパラメータを算出する。算出するパラメータは、G画素をR画素、またはB画素に変換する補間パラメータである。
 第3画素補間パラメータ算出部(RBonGofAD)205は、まず、7×7画素の入力画素単位501のエッジ方向に応じて、7×7画素の入力画素単位501の中央位置にある変換対象画素502に対応する高周波成分を推定する。エッジ方向情報は、エッジ検出部209から入力する。
 エッジ検出部209から入力するdirA(右斜め上方向勾配情報)と、dirD(左斜め上方向勾配情報)の大小を比較して、7×7画素の入力画素単位501のエッジ方向が右斜め上方向であるか左斜め上方向であるかを判別する。例えば予め設定した閾値を利用して判別処理を行う。なお、7×7画素の入力画素単位501の中央位置にある変換対象画素502は元々G画素である。
 7×7画素の入力画素単位501のエッジ方向が右斜め上方向である場合と左斜め方向である場合とでは処理が異なる。
 まず、7×7画素の入力画素単位501のエッジ方向が右斜め上方向である場合の処理について説明する。
 7×7画素の入力画素単位501のエッジ方向が右斜め上方向である場合、第3画素補間パラメータ算出部(RBonGofAD)205は、7×7画素の入力画素単位501の中央位置にある変換対象画素502に対応する高周波成分を推定する。この処理について図25を参照して説明する。
 7×7画素の入力画素単位501のエッジ方向が右斜め上方向である場合は、図25に示すように、フィルタ571を適用して、中央位置の変換対象画素502の右斜め上から左斜め下方向の12のW画素の画素値を適用して、変換対象画素502に対応する高周波成分(W_a)を算出する。フィルタ571はエッジ方向(右斜め上)に平行なラインにフィルタ係数を設定し中心部の係数値を高くしたフィルタである。すなわち、画素値の変化の少ないと推定される方向の画素値のみを反映させるフィルタである。
 第3画素補間パラメータ算出部(RBonGofAD)205は、例えば図25に示すフィルタ571を適用して算出した高周波成分(W_a)を用いて、
 G画素をR画素に変換する処理に適用するパラメータとして以下のパラメータを算出する。
 RonG(A)=(mR'/mW)(w_a)
 また、G画素をB画素に変換する処理に適用するパラメータとして以下のパラメータを算出する。
 BonG(A)=(mB'/mW)(w_a)
 これらのパラメータは、変換対象画素を中心画素として設定される7×7画素の入力画素単位501のエッジ方向が右斜め上方向であると判定された変換対象画素に対応するパラメータとして算出され、ブレンド処理部211に出力される。
 なお、上記パラメータ算出式において、
 mWは、図19を参照して説明した処理と同様の処理によって算出したW信号の低周波成分mW、
 w_aは、図25を参照して説明した変換対象画素502に対応する高周波成分(w_a)
 mR',mB'は図24を参照して説明したR信号の補正低周波成分mR'、B信号の補正低周波成分mB'、
 である。
 これらの各値は、第1仮画素設定部(RBonWaroundG)203において算出された値、第2画素補間パラメータ算出部(RBonGofHV)204において算出された値を用いてもよいし、第3画素補間パラメータ算出部(RBonGofAD)205において新たに算出してもよい。
 次に、7×7画素の入力画素単位501のエッジ方向が左斜め上方向である場合に、第3画素補間パラメータ算出部(RBonGofAD)205の実行するパラメータ算出処理について、図26を参照して説明する。
 7×7画素の入力画素単位501のエッジ方向が左斜め上方向である場合、第3画素補間パラメータ算出部(RBonGofAD)205は、図26に示すように、7×7画素の入力画素単位501の中央位置にある変換対象画素502に対応するG信号の低周波成分mGと、高周波成分gを算出する。
 G信号の低周波成分mGの算出には、例えば図26に示すフィルタ581を適用する。フィルタ581は7×7画素のG信号画素部分にフィルタ係数を設定したフィルタであり、中心部の係数を高く設定している。
 G信号の高周波成分gの算出には、例えば図26に示すフィルタ582を適用する。フィルタ582は変換対象画素502の画素値を取得するフィルタ係数を設定したフィルタである。
 第3画素補間パラメータ算出部(RBonGofAD)205は、例えば図26に示すフィルタ581,582を適用して算出したG信号の低周波成分mGと、高周波成分gを用いて、
 G画素をR画素に変換する処理に適用するパラメータとして以下のパラメータを算出する。
 RonG(D)=(mR'/mG)g
 また、G画素をB画素に変換する処理に適用するパラメータとして以下のパラメータを算出する。
 BonG(D)=(mB'/mG)g
 これらのパラメータは、変換対象画素を中心画素として設定される7×7画素の入力画素単位501のエッジ方向が左斜め上方向であると判定された変換対象画素に対応するパラメータとして算出され、ブレンド処理部211に出力される。
 なお、上記パラメータ算出式において、
 mGは、図26を参照して説明したG信号の低周波成分mG、
 gは、図26を参照して説明したG信号の高周波成分g、
 mR',mB'は図24を参照して説明したR信号の補正低周波成分mR'、B信号の補正低周波成分mB'、
 である。
 第3画素補間パラメータ算出部(RBonGofAD)205は、このように、斜めエッジ上のG画素をR画素、またはB画素に変換する処理に適用するパラメータ、すなわち、
 RonG(A)=(mR'/mW)(w_a)
 RonG(D)=(mR'/mG)g
 BonG(A)=(mB'/mW)(w_a)
 BonG(D)=(mB'/mG)g
 これらのパラメータを算出してブレンド処理部211に出力する。
 なお、本実施例においては、7×7画素の入力画素単位501のエッジ方向が左斜め上方向である場合のG画素位置のR画素値推定処理に際して、
 RonG(D)=(mR'/mG)g
 上記式を適用し、
 G画素位置のB画素値推定処理に際して、
 BonG(D)=(mB'/mG)g
 この式を適用している。これらは、G画素とR画素の相関からRonG(D)や、BonG(D)を推定するものである。この理由は、左斜め上方向に対して、G画素とR画素の位相が揃っているために、偽色の発生を防ぐ効果が高まるためである。
  (3-4-5.第2仮画素設定部(RBonWaroundRB)206の処理)
 次に、第2仮画素設定部(RBonWaroundRB)206の処理について説明する。第2仮画素設定部(RBonWaroundRB)206は、図6に示す構成図から理解されるように、第4画素補間パラメータ算出部(RBonRBofHV)207と、第5画素補間パラメータ算出部(RBonRBofAD)208の前段に設定されている。
 第4画素補間パラメータ算出部(RBonRBofHV)207と、第5画素補間パラメータ算出部(RBonRBofAD)208はいずれもRまたはB画素を同じRまたはB画素に変換(補正)するためのパラメータを算出する。第2仮画素設定部(RBonWaroundRB)206は、これらの処理に先行して、RB画素に隣接するW画素位置を仮のR画素(R')またはB画素(B')に変換する処理を実行する。
 第2仮画素設定部(RBonWaroundRB)206は、まず、処理単位の7×7画素領域におけるW信号の低周波成分mW、R信号の低周波成分mR、B信号の低周波成分mBを求める。
 W信号の低周波成分mWの算出処理は、先に、図19を参照して説明した第1仮画素設定部(RBonWaroundG)203の処理と同様の処理として行われる。
 さらに、図27に示すように、7×7画素の入力画素単位601に対してフィルタ611,613を適用して、7×7画素の入力画素単位601の中央の変換対象画素602に対応するR信号の低周波成分mR、B信号の低周波成分mBを求める。
 図27上段に示すR信号の低周波成分mRを求めるフィルタ611は、変換対象画素対応位置612を中心とした7×7画素のフィルタであり、係数設定部はR画素対応位置である。フィルタ611のR画素対応位置には係数として(1/32~9/32)の各係数を設定している。7×7画素の入力画素単位601のR画素位置の各画素値に、フィルタ611の対応画素位置のフィルタ係数を乗算して、各乗算結果の加算値を、R信号の低周波成分mRとして算出する。
 図27下段に示すB信号の低周波成分mBを求めるフィルタ613は、変換対象画素対応位置614を中心とした7×7画素のフィルタであり、係数設定部はB画素対応位置である。フィルタ613のB画素対応位置には係数として(1/32~9/32)の各係数を設定している。7×7画素の入力画素単位601のB画素位置の各画素値に、フィルタ613の対応画素位置のフィルタ係数を乗算して、各乗算結果の加算値を、B信号の低周波成分mBとして算出する。
 次に、第2仮画素設定部(RBonWaroundRB)206は、7×7画素の入力画素単位601の中心にある変換対象画素602の周囲に隣接するW画素位置のR画素値とB画素値を推定する。
 この処理は、先に図21を参照して説明した第1仮画素設定部(RBonWaroundG)203の処理と同様の処理であり、説明を省略する。
 第2仮画素設定部(RBonWaroundRB)206は、図26に示す7×7画素の入力画素単位601の中心にある変換対象画素602の周囲に隣接するW画素位置のR画素値(Rxy'=R23',R32',R43',R34')と、B画素値(Bxy'=B23',B32',B43',B34')を以下のように推定する。
 R23'=(mR/mW)w23
 R32'=(mR/mW)w32
 R43'=(mR/mW)w43
 R34'=(mR/mW)w34
 B23'=(mB/mW)w23
 B32'=(mB/mW)w32
 B43'=(mB/mW)w43
 B34'=(mB/mW)w34
 なお、w23、w32、w43、w34は図に示す7×7画素の入力画素単位601の中心にある変換対象画素602の周囲に隣接するW画素位置のW画素値である。
 このように、第2仮画素設定部(RBonWaroundRB)206は、7×7画素の入力画素単位601の中心にある変換対象画素602の周囲に隣接するW画素位置のR画素値とB画素値を推定して、これらを第4画素補間パラメータ算出部(RBonRBofHV)207と、第5画素補間パラメータ算出部(RBonRBofAD)208に提供する。
  (3-4-6.第4画素補間パラメータ算出部(RBonRBofHV)207の処理)
 次に、第4画素補間パラメータ算出部(RBonRBofHV)207の処理について説明する。第4画素補間パラメータ算出部(RBonRBofHV)207は、R画素をB画素に、またはB画素をR画素に変換する処理に適用するパラメータとして、縦または横エッジ対応のパラメータ等を算出する。
 エッジ検出部209は、前述したように、
 dirH:水平勾配情報
 dirV:垂直勾配情報
 dirA:右斜め上方向勾配情報
 dirD:左斜め上方向勾配情報
 これらのエッジ情報(dirH,dirV,dirA,dirD)を、各画素対応のエッジ情報として生成する。第4画素補間パラメータ算出部(RBonRBofHV)207は、変換対象とするRまたはB画素対応のこれらのエッジ情報を入力する。
 第4画素補間パラメータ算出部(RBonRBofHV)207は、変換対象とするR/B画素対応の4方向のエッジ情報(dirH,dirV,dirA,dirD)のdirHとdirVを比較して、比較結果に応じて縦または横エッジ対応のパラメータ等を算出する。算出するパラメータは、R画素をB画素に、またはB画素をR画素に変換する処理に適用するパラメータである。
 第4画素補間パラメータ算出部(RBonRBofHV)207は、まず、7×7画素の入力画素単位601のエッジ方向に応じて、7×7画素の入力画素単位601の中央位置にある変換対象画素602に対応する高周波成分を算出する。エッジ方向情報は、エッジ検出部209から入力する。
 エッジ検出部209から入力するdirH(水平勾配情報)と、dirV(垂直勾配情)の大小を比較して、7×7画素の入力画素単位601のエッジ方向が横方向であるか縦方向であるか、エッジ方向が特定できない平坦領域であるかを判別する。例えば予め設定した閾値を利用して判別処理を行う。なお、7×7画素の入力画素単位601の中央位置にある変換対象画素602は元々RまたはB画素である。
 この7×7画素の入力画素単位601の中央位置にある変換対象画素602に対応する高周波成分を推定する処理は、先に、第2画素補間パラメータ算出部(RBonGofHV)204の処理として図22~図23を参照して説明した処理と同様の処理であり、説明を省略する。
 第4画素補間パラメータ算出部(RBonRBofHV)207の算出する高周波成分データは以下の通りである。
 7×7画素の入力画素単位601のエッジ方向が横方向である場合は、例えば図22(a)に示すフィルタ531を適用して横方向のエッジ方向を持つ変換対象画素602に対応する高周波成分(w_h)を算出する。
 7×7画素の入力画素単位601のエッジ方向が縦方向である場合は、例えば図22(b)に示すフィルタ532を適用して縦方向のエッジ方向を持つ変換対象画素602に対応する高周波成分(w_v)を算出する。
 さらに、エッジ方向に無関係に全ての画素について、例えば図23(c)に示すフィルタ533を適用して変換対象画素602に対応する高周波成分(w_n)を算出する。
 次に、第4画素補間パラメータ算出部(RBonRBofHV)207は、R画素をB画素に、またはB画素をR画素に変換する処理に適用するパラメータを算出する。
 具体的には、B画素をR画素に変換する処理に適用するパラメータとして以下のパラメータを算出する。
 RonB(H)=(mR'/mW)(w_h)
 RonB(V)=(mR'/mW)(w_v)
 RonBn=(mR'/mW)(w_n)
 また、R画素をB画素に変換する処理に適用するパラメータとしては以下のパラメータを算出する。
 BonR(H)=(mB'/mW)(w_h)
 BonR(V)=(mB'/mW)(w_v)
 BonRn=(mB'/mW)(w_n)
 なお、RonB(H)、BonR(H)は、エッジ方向が横方向であると判定され、横方向エッジ対応高周波成分(w_h)を算出した画素について算出するパラメータである。
 また、RonB(V)、BonR(V)は、エッジ方向が縦方向であると判定され、縦方向エッジ対応高周波成分(w_v)を算出した画素について算出するパラメータである。
 RonBn、BonRnは、エッジ方向に関わらず全画素に対応するパラメータとして算出する。
 なお、上記パラメータ算出式において、mR'は、先に説明した第2仮画素設定部(RBonWaroundRB)206の算出した入力画素単位601の中心にある変換対象画素602の周囲に隣接するW画素位置のR画素値を利用して算出した7×7画素の入力画素単位601に対応するR信号の低周波成分mRの補正値mR'である。
 同様に、mB'は、先に説明した第2仮画素設定部(RBonWaroundRB)206の算出した入力画素単位501の中心にある変換対象画素502の周囲に隣接するW画素位置のB画素値を利用して算出した7×7画素の入力画素単位501に対応するB信号の低周波成分mBの補正値mB'である。
 7×7画素の入力画素単位601に対応するR信号の低周波成分補正値mR'と、B信号の低周波成分補正値mB'の算出処理例について、図28を参照して説明する。
 図28上段に示すR信号の補正低周波成分mR'を求めるフィルタ621は、変換対象画素対応位置622を中心とした7×7画素のフィルタであり、係数設定部は、入力RGBW配列画像のオリジナルのR画素対応位置と、先に説明した第2仮画素設定部(RBonWaroundRB)206がR画素値(Rxy'=R23',R32',R43',R34')を算出した位置である。
 第2仮画素設定部(RBonWaroundRB)206は、変換対象画素対応位置602の周囲(上下左右)にある4つのW画素の位置に対応するR画素値(Rxy'=R23',R32',R43',R34')を推定している。
 7×7画素の入力画素単位601に対応するR信号の低周波成分補正値mR'の算出処理は、RGBW配列に本来含まれるR画素に加え、第2仮画素設定部(RBonWaroundRB)206の推定したR画素値(Rxy'=R23',R32',R43',R34')も利用して算出する。
 低周波成分補正値mR'の算出に際しては、7×7画素の入力画素単位601の本来のR画素位置の各R画素値と、第2仮画素設定部(RBonWaroundRB)206の推定したR画素値(Rxy'=R23',R32',R43',R34')の各々に、フィルタ621の対応画素位置のフィルタ係数を乗算する処理が行われる。各乗算結果の加算値がR信号の補正低周波成分mR'として算出される。
 同様に低周波成分補正値mB'の算出に際しては、7×7画素の入力画素単位601の本来のB画素位置の各B画素値と、第2仮画素設定部(RBonWaroundRB)206の推定したR画素値(Bxy'=B23',B32',B43',B34')の各々に、フィルタ623の対応画素位置のフィルタ係数を乗算する処理が行われる。各乗算結果の加算値がB信号の補正低周波成分mB'として算出される。
 第4画素補間パラメータ算出部(RBonRBofHV)207の算出するパラメータ、すなわち、
 RonB(H)=(mR'/mW)(w_h)
 RonB(V)=(mR'/mW)(w_v)
 RonBn=(mR'/mW)(w_n)
 BonR(H)=(mB'/mW)(w_h)
 BonR(V)=(mB'/mW)(w_v)
 BonRn=(mB'/mW)(w_n)
 これらのパラメータは、
 図19を参照して説明した処理と同様の処理によって算出したW信号の低周波成分mW、
 図22~図23を参照して説明した処理と同様の処理によって算出した高周波成分(w_h),(w_v),(w_n)
 図28を参照して説明したR信号の補正低周波成分mR'、B信号の補正低周波成分mB'、
 これらを用いて算出することができる。
 なお、W信号の低周波成分mW等、他の処理部において算出済みの値が適用できる場合は、その算出済みの値を利用してもよい。
 第4画素補間パラメータ算出部(RBonRBofHV)207は、算出した上記のパラメータをブレンド処理部211に出力する。ブレンド処理部211は、エッジ状態に応じてブレンド処理を実行して、7×7画素の入力画素単位601の中央位置にある変換対象画素602であるRまたはB画素の変換画素値を決定する。ブレンド処理部211の処理については後段で説明する。
  (3-4-7.第5画素補間パラメータ算出部(RBonRBofAD)208の処理)
 次に、第5画素補間パラメータ算出部(RBonRBofAD)208の処理について説明する。第5画素補間パラメータ算出部(RBonRBofAD)208は、R画素をB画素、またはB画素をR画素に変換する処理に適用するパラメータとして、斜めエッジ対応のパラメータ等を算出する。
 エッジ検出部209は、前述したように、
 dirH:水平勾配情報
 dirV:垂直勾配情報
 dirA:右斜め上方向勾配情報
 dirD:左斜め上方向勾配情報
 これらのエッジ情報(dirH,dirV,dirA,dirD)を、各画素対応のエッジ情報として生成する。第5画素補間パラメータ算出部(RBonRBofAD)208は、変換対象とするG画素対応のこれらのエッジ情報を入力する。
 第5画素補間パラメータ算出部(RBonRBofAD)208は、変換対象とするG画素対応の4方向のエッジ情報(dirH,dirV,dirA,dirD)のdirAとdirDを比較して、比較結果に応じた異なる処理を実行して斜めエッジ対応のパラメータを算出する。算出するパラメータは、R画素をB画素、またはB画素をR画素に変換する補間パラメータである。
 第5画素補間パラメータ算出部(RBonRBofAD)208は、まず、例えば図27、図28に示す7×7画素の入力画素単位601のエッジ方向に応じて、7×7画素の入力画素単位601の中央位置にある変換対象画素602に対応する高周波成分を推定する。エッジ方向情報は、エッジ検出部209から入力する。
 エッジ検出部209から入力するdirA(右斜め上方向勾配情報)と、dirD(左斜め上方向勾配情報)の大小を比較して、7×7画素の入力画素単位601のエッジ方向が右斜め上方向であるか左斜め上方向であるかを判別する。例えば予め設定した閾値を利用して判別処理を行う。なお、7×7画素の入力画素単位601の中央位置にある変換対象画素602はRまたはB画素である。
 7×7画素の入力画素単位601のエッジ方向が右斜め上方向である場合と左斜め方向である場合とでは処理が異なる。
 まず、7×7画素の入力画素単位601のエッジ方向が右斜め上方向である場合の処理について説明する。
 この場合、第5画素補間パラメータ算出部(RBonRBofAD)208は、先に第3画素補間パラメータ算出部(RBonGofAD)205の処理として図25を参照して説明したと同様の処理により、7×7画素の入力画素単位の中央位置にある変換対象画素に対応する高周波成分(W_a)を算出する。
 第5画素補間パラメータ算出部(RBonRBofAD)208は、例えば図25に示すフィルタ571を適用して算出した高周波成分(W_a)を用いて、
 B画素をR画素に変換する処理に適用するパラメータとして以下のパラメータを算出する。
 RonB(A)=(mR'/mW)(w_a)
 また、R画素をB画素に変換する処理に適用するパラメータとして以下のパラメータを算出する。
 BonR(A)=(mB'/mW)(w_a)
 これらのパラメータは、変換対象画素を中心画素として設定される7×7画素の入力画素単位601のエッジ方向が右斜め上方向であると判定された変換対象画素に対応するパラメータとして算出され、ブレンド処理部211に出力される。
 なお、上記パラメータ算出式において、
 mWは、図19を参照して説明した処理と同様の処理によって算出したW信号の低周波成分mW、
 w_aは、図25を参照して説明した変換対象画素502に対応する高周波成分(w_a)
 mR',mB'は図28を参照して説明したR信号の補正低周波成分mR'、B信号の補正低周波成分mB'、
 である。
 これらの各値は、他の処理部で算出済みの値を適用してもよいし、第5画素補間パラメータ算出部(RBonRBofAD)208において新たに算出してもよい。
 次に、7×7画素の入力画素単位601のエッジ方向が左斜め上方向である場合に、第5画素補間パラメータ算出部(RBonRBofAD)208の実行するパラメータ算出処理について、図29を参照して説明する。
 7×7画素の入力画素単位601のエッジ方向が左斜め上方向である場合、第5画素補間パラメータ算出部(RBonRBofAD)208は、図29に示すように、7×7画素の入力画素単位601の中央位置にある変換対象画素602に対応するG信号の低周波成分mGと、高周波成分gを算出する。
 G信号の低周波成分mGの算出には、例えば図29に示すフィルタ661を適用する。フィルタ661は7×7画素のG信号画素部分にフィルタ係数を設定したフィルタであり、中心部の係数を高く設定している。
 G信号の高周波成分gの算出には、例えば図29に示すフィルタ662を適用する。フィルタ662は変換対象画素602の左上と右下の画素値の平均、すなわちエッジ方向の画素値の平均を取得するフィルタ係数を設定したフィルタである。
 第5画素補間パラメータ算出部(RBonRBofAD)208は、例えば図29に示すフィルタ661,662を適用して算出したG信号の低周波成分mGと、高周波成分gを用いて、
 B画素をR画素に変換する処理に適用するパラメータとして以下のパラメータを算出する。
 RonB(D)=(mR'/mG)g
 また、R画素をB画素に変換する処理に適用するパラメータとして以下のパラメータを算出する。
 BonR(D)=(mB'/mG)g
 これらのパラメータは、変換対象画素を中心画素として設定される7×7画素の入力画素単位601のエッジ方向が左斜め上方向であると判定された変換対象画素に対応するパラメータとして算出され、ブレンド処理部211に出力される。
 なお、上記パラメータ算出式において、
 mGは、図29を参照して説明したG信号の低周波成分mG、
 gは、図29を参照して説明したG信号の高周波成分g、
 mR',mB'は図28を参照して説明したR信号の補正低周波成分mR'、B信号の補正低周波成分mB'、
 である。
 第5画素補間パラメータ算出部(RBonRBofAD)208は、このように、斜めエッジ上のB画素をR画素、またはR画素をB画素に変換する処理に適用するパラメータ、すなわち、
 RonB(A)=(mR'/mW)(w_a)
 RonB(D)=(mR'/mG)g
 BonR(A)=(mB'/mW)(w_a)
 BonR(D)=(mB'/mG)g
 これらのパラメータを算出してブレンド処理部211に出力する。
 なお、本実施例においては、7×7画素の入力画素単位601のエッジ方向が左斜め上方向である場合のR画素位置のR画素値、またはB画素位置のB画素値推定(補正)処理に際して、
 RonB(D)=(mR'/mG)g
 BonR(D)=(mB'/mG)g
 上記式を適用している。これらは、G画素とR画素の相関からRonB(D)や、BonR(D)を推定するものである。この理由は、左斜め上方向に対して、G画素とR画素、B画素の位相が揃っているために、偽色の発生を防ぐ効果が高まるためである。
  (3-5.ブレンド処理部の処理について)
 次に、ブレンド処理部211の処理について説明する。ブレンド処理部211は、第1~第5画素補間パラメータ算出部の生成した画素補間パラメータを入力し、さらにエッジ検出部209の検出したエッジ情報と、テクスチャ検出部210の検出したテクスチャ情報を入力して、最終的な変換画素値を算出する。
 エッジ検出部209から入力するエッジ情報は以下の情報である。
 dirH:水平勾配情報
 dirV:垂直勾配情報
 dirA:右斜め上方向勾配情報
 dirD:左斜め上方向勾配情報
 これらのエッジ情報(dirH,dirV,dirA,dirD)を入力する。
 また、テクスチャ検出部210から入力するテクスチャ情報は、先に説明した式(式7)に従って算出する以下の平坦度重み(weightFlat)情報である。
 weightFlat(x,y)=fflat(WTX(p))・・・(式7)
 なお、前述したように、上記式(式7)において、fflat(r)は、例えば図14に示すような線形近似関数を用いることができる。図14に示す線形近似関数は、閾値として0<Th0<Th1<1を設定し、
  r=0~Th0→φ(r)=0
  r=Th0~Th1→φ(r)=0~1.0(線形変化)
  r=Th1以上→φ(r)=1
 このような設定とした線形近似関数である。
 平坦度重み(weightFlat)の値が小さいほど、平坦度が低くテクスチャが多い画像領域であり、平坦度重み(weightFlat)の値が大きいほど、平坦度が高くテクスチャが少ない画像領域である可能性が高いことを示す。
 ブレンド処理部211は、これらの情報を入力して、RGBW配列をRGB配列に変換するための最終的な変換画素値を決定する。
 ブレンド処理部211の実行する処理シーケンスについて、図30、図31に示すフローチャートを参照して説明する。
 ブレンド処理部211は、まず、図30に示すステップS11において、画素単位のエッジ方向属性を判定する。
 ブレンド処理部211は、エッジ検出部209から入力する画素単位のエッジ情報(dirH,dirV,dirA,dirD)を用いて以下の判定式に従って、画素単位のエッジ方向属性を判定する。
 まず、dirHVを以下のように定義する。
 dirH≦dirVの場合、
 dirHV=H
 dirH>dirVの場合、
 dirHV=V
 dirHVはH(横方向)またはV(縦方向)のいずれかとなる。
 さらに、dirADを以下のように定義する。
 dirA≦dirDの場合、
 dirAD=A
 dirA>dirDの場合、
 dirAD=D
 dirADはA(右斜め上方向)またはD(左斜め上方向)のいずれかとなる。
 これら、dirHV、dirADは、各画素におけるエッジ方向を示す属性情報である。
 次に、ブレンド処理部211は、図30に示すステップS12において、これらのdirHV、dirADから、以下の式に従って、縦横方向エッジと斜め方向エッジのエッジ方向度合い(ratioHV)を求める。
 dirA≦dirDの場合、
 ratioHV=(dirD+offset)/(dirA+offset)
 dirA>dirDの場合、
 ratioHV=(dirA+offset)/(dirD+offset)
 なお、
 上記式における(offset)は、非負の値であり、ゼロ割りの回避と検出感度の調整のためのパラメータである。
 さらに、上記式で算出したエッジ方向度合い(ratioHV)は、例えば図32に示す関数fratio(ratioHV)による非線形化処理により、
 縦横方向エッジ方向重み(weightHV)を算出する。なお、閾値Th0(HV_LIMIT0)、Th1(HV_LIMIT1)は、非線形処理に適用する閾値としての調整用パラメータである。
 図32に示す線形近似関数fratio(r)は、閾値として0<Th0(HV_LIMIT0)<Th1(HV_LIMIT1)<1を設定し、
  r=0~Th0(HV_LIMIT0)→fratio(r)=0
  r=Th0(HV_LIMIT0)~Th1(HV_LIMIT1)→fratio(r)=0~1.0(線形変化)
  r=Th1(HV_LIMIT1)以上→fratio(r)=1
 このような設定とした線形近似関数である。
 なお、縦横方向エッジ方向重み(weightHV)は、斜め方向エッジに対する縦横方向エッジの強さを示し、縦横方向エッジ方向重み(weightHV)の値が大きいほど、斜め方向エッジより縦横方向エッジが強く、縦横方向エッジ方向重み(weightHV)の値が小さいほど、斜め方向エッジが縦横方向エッジより強いことを示す。
 次に、ブレンド処理部211は、図31に示すステップS13において、RGBW配列をRGB配列に変換するための最終的な変換画素値(RGB画素値)を決定する。
 本発明の画像処理装置のデータ変換処理部200は、先に図2を参照して説明したように、RGBW配列181からRGB配列182への変換処理を実行する。この変換処理に際しては、前述のように、
 W画素位置をG画素に変換(G画素値を推定)する=(GonW)
 G画素位置をR画素に変換(R画素値を推定)する=(RonG)
 G画素位置をB画素に変換(B画素値を推定)する=(BonG)
 B画素位置をR画素に変換(R画素値を推定)する=(RonB)
 R画素位置をB画素に変換(B画素値を推定)する=(BonR)
 これら5つの変換や補正処理を実行する。
 ブレンド処理部211は、これらの最終的な変換画素値を決定する。
 W画素位置のG画素への変換処理において設定するG画素値(GonW)は、以下の式(式11)によって算出する。
 GonW=(weightFlat)(mG/mW)w+(1-weightFlat)(k(mG/mW)(w-mW)+mG)
 ・・・・・・(式11)
 なお、上記式において、
 mW:W信号の低周波成分mW、
 w:W信号の高周波成分w、
 mG:G信号の低周波成分mG
 weightFlat:平坦度重み
 k:コントラスト強調処理調整パラメータ(k=1でコントラスト強調なし(図18参照))
 このようにして、RGBW配列のW画素位置をG画素へ変換する場合のG画素値(GonW)を算出する。
 なお、上記の式(式11)に示すG画素値(GonW)算出式は、変換対象画素の平坦度重み(weightFlat)に応じて、
 (GonW(dirHV)):コントラスト強調を適用して算出した変換G画素値
 (GonWn(dirHV)):コントラスト強調を適用しないで算出した変換G画素値
 これらの値のブレント比率を変更して最終的な変換G画素値を算出する式である。
 変換対象画素の平坦度重み(weightFlat)が大きく、平坦な領域である場合は、コントラスト強調のない変換G画素値に相当する(GonWn(dirHV))のブレント比率が高くなり、平坦度重み(weightFlat)が小さく、平坦度が低くテクスチャが多い領域である場合は、コントラスト強調後の変換画素値に相当する(GonW(dirHV))のブレント比率が高くなる。
 このように変換対象画素の平坦度に応じて、ブレンド比率を変更して最終的なG画素値(GonW)を決定する。
 次に、RGBW配列中のG画素位置をR画素へ変換する処理におけるR画素値(RonG)の算出処理について説明する。
 まず、以下の式(式21)、(式22)に従って縦横方向エッジ対応の変換画素値(RonG_hv)、斜め方向エッジ対応の変換画素値(RonG_ad)を求める。
 RonG_hv=(1-weightFlat)・(RonG(dirHV))+(weightFlat)・(RonGn)
 ・・・・・・(式21)
 RonG_ad=(RonG(dirAD))
 ・・・・・・(式22)
 さらに、上記式(式21)、(式22)で算出した(RonG_hv)と(RonG_ad)を以下の式(式23)に従ってブレンド処理を実行して、最終的なR画素値(RonG)を算出する。
 RonG=(weightHV)・(RonG_hv)+(1-weightHV)RonG_ad
 ・・・・・・(式23)
 このようにして、RGBW配列中のG画素位置をR画素へ変換する場合のR画素値(RonG)の算出処理を行う。
 上記式について説明する。
 上記式(式21)において、
 RonG(dirHV)、
 RonGn
 これらは、先に説明した第2画素補間パラメータ算出部(RBonGofHV)204の算出した補間パラータであり、縦、または横エッジ上のG画素をR画素に変換する処理に適用する以下のパラメータである。
 RonG(H)=(mR'/mW)(w_h)
 RonG(V)=(mR'/mW)(w_v)
 RonGn=(mR'/mW)(w_n)
 dirH≦dirVの場合、ステップS11に示すように、
 dirHV=Hであり、
 RonG(dirHV)=RonG(H)=(mR'/mW)(w_h)、
 また、dirH>dirVの場合、ステップS11に示すように、
 dirHV=Vであり、
 RonG(dirHV)=RonG(V)=(mR'/mW)(w_v)、
 となる。
 また、上記式(式22)において、
 RonG(dirAD)
 これは、第3画素補間パラメータ算出部(RBonGofAD)205の算出した補間パラータであり、斜め方向エッジ上のG画素をR画素に変換する処理に適用する以下のパラメータである。
 RonG(A)=(mR'/mW)(w_a)
 RonG(D)=(mR'/mG)g
 dirA≦dirDの場合、ステップS11に示すように、
 dirAD=Aであり、
 RonG(dirAD)=RonG(A)=(mR'/mW)(w_a)、
 また、dirA>dirDの場合、ステップS11に示すように、
 dirAD=Dであり、
 RonG(dirAD)=RonG(D)=(mR'/mG)g、
 となる。
 式(式21)は、変換対象画素の縦横方向エッジ情報と、平坦度重み(weightFlat)に応じて縦横方向エッジに依存するR画素値(RonG_hv)を算出する算出式である。
 変換対象画素の平坦度重み(weightFlat)が大きく、平坦な領域である場合は、先に説明した図25(c)に示すフィルタ533を適用して算出したW画素値(w_n)を利用して推定したR画素値、すなわち、
 RonGn=(mR'/mW)(w_n)
 この値の重みを大きくする。
 一方、変換対象画素の平坦度重み(weightFlat)が小さく、平坦度が低くテクスチャが多い領域である場合は、先に説明した図25(a),(b)に示すフィルタ531,532を適用して算出したW画素値(w_h)または(w_v)を利用して推定したR画素値、すなわち、
 RonG(H)=(mR'/mW)(w_h)
 RonG(V)=(mR'/mW)(w_v)
 これらの値の重みを大きくする。
 なお、RonG(dirHV)の値は、
 横方向エッジの場合は、dirH≦dirVとなり、先に説明した図25(a)に示すフィルタ531を適用して算出したW画素値(w_h)を利用して推定したR画素値、すなわち、
 RonG(dirHV)=RonG(H)=(mR'/mW)(w_h)、
 この値が適用される。
 また、縦方向エッジの場合は、dirH>dirVとなり、先に説明した図25(b)に示すフィルタ532を適用して算出したW画素値(w_v)を利用して推定したR画素値、すなわち、
 RonG(dirHV)=RonG(H)=(mR'/mW)(w_v)、
 この値が適用される。
 このように式(式21)は、変換対象画素の縦横方向エッジ情報と、平坦度重み(weightFlat)に応じて縦横方向エッジに依存するR画素値(RonG_hv)を算出する算出式である。
 式(式22)は、
 RonG_ad=(RonG(dirAD))
 であり、第3画素補間パラメータ算出部(RBonGofAD)205の算出した補間パラータ斜め方向エッジ上のG画素をR画素に変換する処理に適用する以下のパラメータ、すなわち、
 RonG(A)=(mR'/mW)(w_a)
 RonG(D)=(mR'/mG)g
 これらを選択する式である。
 dirA>dirDの場合、先に説明した図26(a)に示すフィルタ541を適用して算出したW画素値(w_d)を利用して推定したR画素値、すなわち、
 RonG(dirAD)=RonG(D)=(mR'/mG)g、
 dirA≦dirDの場合、先に説明した図26(b)に示すフィルタ542を適用して算出したW画素値(w_a)を利用して推定したR画素値、すなわち、
 RonG(dirAD)=RonG(A)=(mR'/mW)(w_a)、
 これらを選択する。
 このように式(式22)は、変換対象画素の斜め方向のエッジ方向情報に応じて斜め方向エッジに依存するR画素値(RonG_hv)を算出する算出式である。
 ブレンド処理部211は、さらに、上記式(式21)、(式22)で算出した(RonG_hv)と(RonG_ad)を以下の式(式23)に従ってブレンド処理を実行して、最終的なR画素値(RonG)を算出する。
 RonG=(weightHV)・(RonG_hv)+(1-weightHV)RonG_ad
 上記式(式23)は、
 式21で算出した縦横方向エッジに依存するR画素値(RonG_hv)
 式22で算出した斜め方向エッジに依存するR画素値(RonG_ad)
 これらを、ステップS12で算出した縦横方向エッジ方向重み(weightHV)に応じてブレンドして最終的なR画素値(RonG)を算出する式である。
 縦横方向エッジ方向重み(weightHV)は、先に説明したように、斜め方向エッジに対する縦横方向エッジの強さを示し、縦横方向エッジ方向重み(weightHV)の値が大きいほど、斜め方向エッジより縦横方向エッジが強く、縦横方向エッジ方向重み(weightHV)の値が小さいほど、斜め方向エッジが縦横方向エッジより強いことを示す。
 従って、式(式23)は、縦横方向エッジが強く縦横方向エッジ方向重み(weightHV)の値が大きい場合は、
 式21で算出した縦横方向エッジに依存するR画素値(RonG_hv)の重みが大きく設定される。
 また、斜め方向エッジが強く縦横方向エッジ方向重み(weightHV)の値が小さい場合は、
 式22で算出した斜め方向エッジに依存するR画素値(RonG_ad)の重みが大きく設定される。
 このように変換対象画素のエッジ方向に応じて、ブレンド比率を変更して最終的なR画素値(RonG)を決定する。
 次に、RGBW配列中のG画素位置をB画素へ変換する処理におけるB画素値(BonG)の算出処理について説明する。
 ブレンド処理部211は、まず、以下の式(式31)、(式32)に従って縦横方向エッジ対応の変換画素値(BonG_hv)、斜め方向エッジ対応の変換画素値(BonG_ad)を求める。
 BonG_hv=(1-weightFlat)・(BonG(dirHV))+(weightFlat)・(BonGn)
 ・・・・・・(式31)
 BonG_ad=(BonG(dirAD))
 ・・・・・・(式32)
 さらに、上記式(式31)、(式32)で算出した(BonG_hv)と(BonG_ad)を以下の式(式33)に従ってブレンド処理を実行して、最終的なB画素値(BonG)を算出する。
 BonG=(weightHV)・(BonG_hv)+(1-weightHV)BonG_ad
 ・・・・・・(式33)
 このようにして、RGBW配列中のG画素位置をB画素へ変換する場合のB画素値(BonG)の算出処理を行う。
 これらの式31~33は、前述の式21~23、すなわち、RGBW配列中のG画素位置をR画素へ変換する場合のR画素値(RonG)の算出処理において適用した式において、RをBに変更した式であり、処理は、RをBに変更する以外は同様の処理となる。
 上記式(式31)において、
 BonG(dirHV)、
 BonGn
 これらは、先に説明した第2画素補間パラメータ算出部(RBonGofHV)204の算出した補間パラータであり、縦、または横エッジ上のG画素をB画素に変換する処理に適用する以下のパラメータである。
 BonG(H)=(mB'/mW)(w_h)
 BonG(V)=(mB'/mW)(w_v)
 BonGn=(mB'/mW)(w_n)
 また、上記式(式32)において、
 BonG(dirAD)
 これは、第3画素補間パラメータ算出部(RBonGofAD)205の算出した補間パラータであり、斜め方向エッジ上のG画素をR画素に変換する処理に適用する以下のパラメータである。
 BonG(A)=(mB'/mW)(w_a)
 BonG(D)=(mB'/mW)(w_d)
 上記式(式33)は、
 式31で算出した縦横方向エッジに依存するB画素値(BonG_hv)
 式32で算出した斜め方向エッジに依存するB画素値(BonG_ad)
 これらを、ステップS12で算出した縦横方向エッジ方向重み(weightHV)に応じてブレンドして最終的なB画素値(BonG)を算出する式である。
 式(式33)は、縦横方向エッジが強く縦横方向エッジ方向重み(weightHV)の値が大きい場合は、
 式31で算出した縦横方向エッジに依存するB画素値(BonG_hv)の重みが大きく設定される。
 また、斜め方向エッジが強く縦横方向エッジ方向重み(weightHV)の値が小さい場合は、
 式32で算出した斜め方向エッジに依存するB画素値(BonG_ad)の重みが大きく設定される。
 このように変換対象画素のエッジ向に応じて、ブレンド比率を変更して最終的なB画素値(BonG)を決定する。
 次に、RGBW配列中のB画素位置をR画素へ変換する処理におけるR画素値(RonB)の算出処理について説明する。
 ブレンド処理部211は、まず、以下の式(式41)、(式42)に従って縦横方向エッジ対応変換画素値(RonB_hv)、斜め方向エッジ対応変換画素値(RonB_ad)を求める。
 RonB_hv=(1-weightFlat)・(RonB(dirHV))+(weightFlat)・(RonBn)
 ・・・・・・(式41)
 RonB_ad=(RonB(dirAD))
 ・・・・・・(式42)
 さらに、上記式(式41)、(式42)で算出した(RonB_hv)と(RonB_ad)を以下の式(式43)に従ってブレンド処理を実行して、最終的なR画素値(RonB)を算出する。
 RonB=(weightHV)・(RonB_hv)+(1-weightHV)RonB_ad
 ・・・・・・(式43)
 このようにして、RGBW配列中のB画素位置をR画素へ変換する場合のR画素値(RonB)の算出処理を行う。
 これらの式41~43は、前述の式21~23、すなわち、RGBW配列中のG画素位置をR画素へ変換する場合のR画素値(RonG)の算出処理において適用した式において、GをBに変更した式であり、処理は、GをBに変更する以外は同様の処理となる。
 上記式(式41)において、
 RonB(dirHV)、
 RonBn
 これらは、先に説明した第4画素補間パラメータ算出部(RBonRBofHV)207の算出した補間パラータであり、縦、または横エッジ上のB画素をR画素に変換する処理に適用する以下のパラメータである。
 RonB(H)=(mR'/mW)(w_h)
 RonB(V)=(mR'/mW)(w_v)
 RonBn=(mR'/mW)(w_n)
 また、上記式(式42)において、RonB(dirAD)は、第5画素補間パラメータ算出部(RBonRBofAD)208の算出した補間パラータであり、斜め方向エッジ上のB画素をR画素に変換する処理に適用する以下のパラメータである。
 dirA≦dirDの場合、
 W画素値(w_a)を利用して推定したR画素値、すなわち、
 RonB(dirAD)=RonB(A)=(mR'/mW)(w_a)、
 これを選択する。
 また、dirA>dirDの場合、
 RonB(dirAD)=RonB(D)=(mR'/mG)g、
 これを選択する。
 上記式(式43)は、
 式41で算出した縦横方向エッジに依存するR画素値(RonB_hv)
 式42で算出した斜め方向エッジに依存するR画素値(RonB_ad)
 これらを、ステップS12で算出した縦横方向エッジ方向重み(weightHV)に応じてブレンドして最終的なR画素値(RonB)を算出する式である。
 式(式43)は、縦横方向エッジが強く縦横方向エッジ方向重み(weightHV)の値が大きい場合は、
 式41で算出した縦横方向エッジに依存するR画素値(RonB_hv)の重みが大きく設定される。
 また、斜め方向エッジが強く縦横方向エッジ方向重み(weightHV)の値が小さい場合は、
 式42で算出した斜め方向エッジに依存するR画素値(RonB_ad)の重みが大きく設定される。
 このように変換対象画素のエッジ向に応じて、ブレンド比率を変更して最終的なR画素値(RonB)を決定する。
 次に、RGBW配列中のR画素位置をB画素へ変換する処理におけるB画素値(BonR)の算出処理について説明する。
 ブレンド処理部211は、まず、以下の式(式51)、(式52)に従って縦横方向エッジ対応変換画素値(BonR_hv)、斜め方向エッジ対応変換画素値(BonR_ad)を求める。
 BonR_hv=(1-weightFlat)・(BonR(dirHV))+(weightFlat)・(BonRn)
 ・・・・・・(式51)
 BonR_ad=(BonR(dirAD))
 ・・・・・・(式52)
 さらに、上記式(式51)、(式52)で算出した(BonR_hv)と(BonR_ad)を以下の式(式53)に従ってブレンド処理を実行して、最終的なB画素値(BonR)を算出する。
 BonR=(weightHV)・(BonR_hv)+(1-weightHV)BonR_ad
 ・・・・・・(式53)
 このようにして、RGBW配列中のR画素位置をB画素へ変換する場合のB画素値(BonR)の算出処理を行う。
 これらの式51~53は、前述の式41~43、すなわち、RGBW配列中のB画素位置をR画素へ変換する場合のR画素値(RonB)の算出処理において適用した式において、RとBを変更した式であり、処理は、RとBを変更する以外は同様の処理となる。
 上記式(式51)において、
 BonR(dirHV)、
 BonRn
 これらは、先に説明した第4画素補間パラメータ算出部(RBonRBofHV)207の算出した補間パラータであり、縦、または横エッジ上のR画素をB画素に変換する処理に適用する以下のパラメータである。
 BonR(H)=(mB'/mW)(w_h)
 BonR(V)=(mB'/mW)(w_v)
 BonRn=(mB'/mW)(w_n)
 また、上記式(式52)において、BonR(dirAD)は、第5画素補間パラメータ算出部(RBonRBofAD)208の算出した補間パラータであり、斜め方向エッジ上のR画素をB画素に変換する処理に適用する以下のパラメータである。
 dirA≦dirDの場合、
 W画素値(w_a)を利用して推定したB画素値、すなわち、
 BonR(dirAD)=BonR(A)=(mB'/mW)(w_a)、
 これを選択する。
 また、dirA>dirDの場合、
 BonR(dirAD)=BonR(D)=(mB'/mG)g、
 これを選択する。
 上記式(式53)は、
 式51で算出した縦横方向エッジに依存するB画素値(BonR_hv)
 式52で算出した斜め方向エッジに依存するB画素値(BonR_ad)
 これらを、ステップS12で算出した縦横方向エッジ方向重み(weightHV)に応じてブレンドして最終的なB画素値(BonR)を算出する式である。
 式(式53)は、縦横方向エッジが強く縦横方向エッジ方向重み(weightHV)の値が大きい場合は、
 式51で算出した縦横方向エッジに依存するB画素値(BonR_hv)の重みが大きく設定される。
 また、斜め方向エッジが強く縦横方向エッジ方向重み(weightHV)の値が小さい場合は、
 式52で算出した斜め方向エッジに依存するB画素値(BonR_ad)の重みが大きく設定される。
 このように変換対象画素のエッジ向に応じて、ブレンド比率を変更して最終的なB素値(BonR)を決定する。
 上述したように、ブレンド処理部211は、第1~第5画素補間パラメータ算出部の生成した画素補間パラメータを入力し、さらにエッジ検出部209の検出したエッジ情報と、テクスチャ検出部210の検出したテクスチャ情報を入力して、最終的な変換画素値を算出する。すなわち、RGBW配列からRGB配列への変換処理において以下の変換画素値を決定する。
 W画素位置をG画素に変換(G画素値を推定)する際のG画素値(GonW)
 G画素位置をR画素に変換(R画素値を推定)する際のR画素値(RonG)
 G画素位置をB画素に変換(B画素値を推定)する際のB画素値(BonG)
 B画素位置をR画素に変換(R画素値を推定)する際のB画素値(RonB)
 R画素位置をB画素に変換(B画素値を推定)する際のR画素値(BonR)
 これら5つの変換や補正画素値を決定する。
 ブレンド処理部211は、変換対象画素に対応するエッジ情報、すなわちエッジ強度と、エッジ方向に応じて、第1~第5画素補間パラメータ算出部の生成した画素補間パラメータのブレンド比率を決定して、最終的な画素値を算出する。各画素値の算出式を以下にまとめて示す。
 GonW=(1-weightFlat)・(GonW(dirHV))+(weightFlat)・(GonWn(dirHV))
 RonG=(weightHV)・(RonG_hv)+(1-weightHV)RonG_ad
 BonG=(weightHV)・(BonG_hv)+(1-weightHV)BonG_ad
 RonB=(weightHV)・(RonB_hv)+(1-weightHV)RonB_ad
 BonR=(weightHV)・(BonR_hv)+(1-weightHV)BonR_ad
  [4.画像処理装置のデータ変換処理部が実行するリモザイク処理シーケンス]
 次に、図33に示すフローチャートを参照して、画像処理装置のデータ変換処理部が実行するリモザイク処理シーケンスについて説明する。図33に示すフローチャートは、図5に示す画像処理装置において実行するRGBW配列からRGB配列への変換処理、すなわちリモザイク処理の全体シーケンスを示すフローチャートである。これまで説明してきた処理全体のシーケンスである。なお、図33に示すフローは、例えば、図5に示す画像処理装置の制御部140がメモリ130に格納されたプログラムを実行して、各処理部を制御して実行させることができる。
 図33に示すフローチャートの各ステップについて説明する。
 まず、ステップS101において、RGBW配列に含まれるW画素を適用して、エッジ方向を判定する。
 この処理は、図6に示すエッジ検出部209の実行する処理である。先に説明したように、エッジ検出部209は、入力するRGBW配列の信号中、ホワイト(W)信号を利用して、エッジ方向とエッジ強度を判定する。
 エッジ検出部209は、エッジ検出処理によって、画素対応のエッジ情報(dirH,dirV,dirA,dirD)を算出して、ブレンド処理部211、および複数の画素補間パラメータ算出部に出力する。
 次に、ステップS102において、RGBW配列に含まれるW画素を適用して、テクスチャ検出処理を行う。
 この処理は、図6に示すテクスチャ検出部210の実行する処理である。先に説明したように、テクスチャ検出部210は、入力するRGBW配列の信号中、ホワイト(W)信号を利用して、画素対応テクスチャ情報、具体的には、平坦度重み(weightFlat)を算出する。
 weightFlat(x,y)=fflat(WTX(p))
 fflat(r)は、例えば図14に示すような線形近似関数であり、
  r=0~Th0→fflat(r)=0
  r=Th0~Th1→fflat(r)=0~1.0(線形変化)
  r=Th1以上→fflat(r)=1
 このような設定とした平坦度重み(weightFlat)を算出し、ブレンド処理部211に出力する。
 次に、ステップS103において、入力画素単位の中心のW画素に対するノイズ除去を実行する。
 この処理は、図6に示すノイズ除去部201の処理である。先に説明したように、ノイズ除去部201は、入力画素単位の中心にあるW画素に対してノイズ除去を実行する。
 先に図7を参照して説明したように、ノイズ除去部201は、例えばバイラテラルフィルタを適用して処理単位(7×7画素の中央の5×5画素)の中心にW画素が設定されている場合、前述の式(式1)に従って、ノイズ低減画素値INR(p)を算出する。算出したノイズ低減W画素値(INR(p))は、図6に示す第1画素補間パラメータ算出部(GonW)202に出力される。
 次に、ステップS104において、RGBW配列中のW画素をG画素に変換するために適用する補間パラメータを算出する。
 この処理は、図6に示す第1画素補間パラメータ算出部(GonW)202の処理である。
 第1画素補間パラメータ算出部(GonW)202は、RGBW配列におけるW画素をG画素に変換するために適用する補間パラメータとして、先に説明したように、以下のパラメータを算出する。
 W信号の低周波成分mW(図15参照)、
 W信号の高周波成分w(図16参照)、
 G信号の低周波成分mG(図17参照)、
 次に、ステップS105において、R/W,B/W相関からG画素隣接のW位置のR,Bを補間する。
 この処理は、図6に示す第1仮画素設定部(RBonWaroundG)203の処理である。
 第1仮画素設定部(RBonWaroundG)203は、図21を参照して説明したように、7×7画素の入力画素単位501の中心にある変換対象画素502の周囲に隣接するW画素位置のR画素値とB画素値を推定する。図21に示す7×7画素の入力画素単位501の中心にある変換対象画素502の周囲に隣接するW画素位置のR画素値(Rxy'=R23',R32',R43',R34')は以下のように推定することができる。
 R23'=(mR/mW)w23
 R32'=(mR/mW)w32
 R43'=(mR/mW)w43
 R34'=(mR/mW)w34
 なお、w23、w32、w43、w34は図21に示す7×7画素の入力画素単位501の中心にある変換対象画素502の周囲に隣接するW画素位置のW画素値である。
 同様に、図21に示す7×7画素の入力画素単位501の中心にある変換対象画素502の周囲に隣接するW画素位置のB画素値(Bxy'=B23',B32',B43',B34')は以下のように推定することができる。
 B23'=(mB/mW)w23
 B32'=(mB/mW)w32
 B43'=(mB/mW)w43
 B34'=(mB/mW)w34
 なお、w23、w32、w43、w34は図21に示す7×7画素の入力画素単位501の中心にある変換対象画素502の周囲に隣接するW画素位置のW画素値である。
 なお、
 mW:入力画素単位のW信号の低周波成分
 w:入力画素単位の中心のW画素の画素値
 mR':RB画素に隣接するW画素位置に設定した仮のR画素(R')を適用して算出したR信号の低周波成分
 mB':RB画素に隣接するW画素位置に設定した仮のB画素(B')を適用して算出したB信号の低周波成分
 である。
 次に、ステップS106において、R/W,B/W相関を利用して縦横方向のG位置のR,Bを補間する。
 この処理は、図6に示す第2画素補間パラメータ算出部(RBonGofHV)204の処理である。第2画素補間パラメータ算出部(RBonGofHV)204は、主に縦、または横エッジ上のG画素をR画素、またはB画素に変換する処理に適用するパラメータの算出処理を実行する。
 第2画素補間パラメータ算出部(RBonGofHV)204は、縦、または横エッジ上のG画素をR画素、またはB画素に変換する処理に適用するパラメータ、すなわち、
 RonG(H)=(mR'/mW)(w_h)
 RonG(V)=(mR'/mW)(w_v)
 RonGn=(mR'/mW)(w_n)
 BonG(H)=(mB'/mW)(w_h)
 BonG(V)=(mB'/mW)(w_v)
 BonGn=(mB'/mW)(w_n)
 これらのパラメータを算出してブレンド処理部211に出力する。
 なお、
 mR':入力画素単位のR信号の補正低周波成分
 mB':入力画素単位のBR信号の補正低周波成分
 mW:入力画素単位のW信号の低周波成分
 (w_h)、(w_v)、(w_n)は、図22、図23を参照して説明したように、エッジ方向に応じて選択されるフィルタを適用して算出する入力画素単位の中心画素位置の高周波成分値である。
 次に、ステップS107aにおいて、R/W,B/W相関を利用して右斜め上方向エッジを持つG位置のR,Bを補間する。
 この処理は、図6に示す第3画素補間パラメータ算出部(RBonGofAD)205の処理である。第3画素補間パラメータ算出部(RBonGofAD)205は、斜めエッジ上のG画素をR画素、またはB画素に変換する処理に適用するパラメータの算出処理を実行する。
 第3画素補間パラメータ算出部(RBonGofAD)205は、右斜め上方向エッジを持つG画素をR画素、またはB画素に変換する処理に適用するパラメータ、すなわち、
 RonG(A)=(mR'/mW)(w_a)
 BonG(A)=(mB'/mW)(w_a)
 これらのパラメータを算出してブレンド処理部211に出力する。
 次に、ステップS107bにおいて、R/W,B/W相関を利用して左め上方向エッジを持つG位置のR,Bを補間する。
 この処理は、図6に示す第3画素補間パラメータ算出部(RBonGofAD)205の処理である。第3画素補間パラメータ算出部(RBonGofAD)205は、斜めエッジ上のG画素をR画素、またはB画素に変換する処理に適用するパラメータの算出処理を実行する。
 第3画素補間パラメータ算出部(RBonGofAD)205は、左め上方向エッジを持つG画素をR画素、またはB画素に変換する処理に適用するパラメータ、すなわち、
 RonG(D)=(mR'/mG)g
 BonG(D)=(mB'/mG)g
 これらのパラメータを算出してブレンド処理部211に出力する。
 次に、ステップS108において、R/W,B/W相関を利用して、R,B画素隣接のW位置のR,Bを補間する。
 この処理は、図6に示す第2仮画素設定部(RBonWaroundRB)206の処理である。
 次に、第2仮画素設定部(RBonWaroundRB)206は、図28を参照して説明したように、7×7画素の入力画素単位601の中心にある変換対象画素602の周囲に隣接するW画素位置のR画素値とB画素値を推定する。
 ステップS105の処理と同様、入力画素単位の中心にある変換対象画素の周囲に隣接するW画素位置のR画素値(Rxy'=R23',R32',R43',R34')と、B画素値(Bxy'=B23',B32',B43',B34')を算出する。
 次に、ステップS109において、R/W,B/W相関を利用して、縦横方向のR,B位置のR,Bを補間する。この処理は、図6に示す第4画素補間パラメータ算出部(RBonRBofHV)207の処理である。第4画素補間パラメータ算出部(RBonRBofHV)207は、縦、または横エッジ上のR画素をB画素、B画素をR画素に変換する処理に適用するパラメータとして、以下のパラメータの算出処理を実行する。
 RonB(H)=(mR'/mW)(w_h)
 RonB(V)=(mR'/mW)(w_v)
 RonBn=(mR'/mW)(w_n)
 BonR(H)=(mB'/mW)(w_h)
 BonR(V)=(mB'/mW)(w_v)
 BonRn=(mB'/mW)(w_n)
 これらのパラメータを算出してブレンド処理部211に出力する。
 次に、ステップS110aにおいて、R/W,B/W相関を利用して右斜め上方向エッジを持つR,B位置のR,Bを補間する。
 この処理は、図6に示す第5画素補間パラメータ算出部(RBonRBofAD)208の処理である。第5画素補間パラメータ算出部(RBonRBofAD)208は、斜めエッジ上のR画素を補正したR画素、B画素を補正したB画素に変換する処理に適用するパラメータの算出処理を実行する。
 第5画素補間パラメータ算出部(RBonRBofAD)208は、このように、右斜め上方向エッジを持つエッジ上のR画素を補正したR画素、B画素を補正したB画素に変換する処理に適用するパラメータ、すなわち、
 RonB(A)=(mR'/mW)(w_a)
 BonR(A)=(mB'/mW)(w_a)
 これらのパラメータを算出してブレンド処理部211に出力する。
 次に、ステップS110bにおいて、R/W,B/W相関を利用して左め上方向エッジを持つR,B位置のR,Bを補間する。
 この処理は、図6に示す第5画素補間パラメータ算出部(RBonRBofAD)208の処理である。第5画素補間パラメータ算出部(RBonRBofAD)208は、斜めエッジ上のR画素をB画素、B画素をR画素に変換する処理に適用するパラメータの算出処理を実行する。
 第5画素補間パラメータ算出部(RBonRBofAD)208は、左め上方向エッジを持つR画素を補正したR画素、B画素を補正したB画素に変換する処理に適用するパラメータ、すなわち、
 RonB(D)=(mR'/mG)g
 BonR(D)=(mB'/mG)g
 これらのパラメータを算出してブレンド処理部211に出力する。
 次に、ステップS111において、エッジ方向属性に従いブレンド処理を実行して、RGBW配列の変換後のRGB配列を構成するRGB画素値を決定する。この処理は、図6に示すブレンド処理部211の処理である。
 ブレンド処理部211は、第1~第5画素補間パラメータ算出部の生成した画素補間パラメータを入力し、さらにエッジ検出部209の検出したエッジ情報と、テクスチャ検出部210の検出したテクスチャ情報を入力して、最終的な変換画素値を算出する。
 ブレンド処理部211は、変換対象画素に対応するエッジ情報、すなわちエッジ強度と、エッジ方向に応じて、第1~第5画素補間パラメータ算出部の生成した画素補間パラメータのブレンド比率を決定して、最終的な画素値を算出する。この処理は、図30、図31に示すフローを参照して説明した処理である。各変換画素値の算出式を以下にまとめて示す。
 GonW=(weightFlat)(mG/mW)w+(1-weightFlat)(k(mG/mW)(w-mW)+mG)
 RonG=(weightHV)・(RonG_hv)+(1-weightHV)RonG_ad
 BonG=(weightHV)・(BonG_hv)+(1-weightHV)BonG_ad
 RonB=(weightHV)・(RonB_hv)+(1-weightHV)RonB_ad
 BonR=(weightHV)・(BonR_hv)+(1-weightHV)BonR_ad
 このように、本発明の画像処理装置においては、補間パラメータ算出部各々が変換画素対応のエッジ方向に応じて適用画素位置を変更した補間処理を実行して、補間画素値に相当するパラメータを生成する。さらに、ブレンド処理部が、各補間パラメータ算出部の生成したパラメータと、エッジ情報およびテクスチャ情報を入力し、変換画素対応のエッジ情報とテクスチャ情報に応じて、パラメータ算出部の算出したパラメータのブレンド比率を変更してブレンド処理を実行して変換画素値を決定する。これらの処理により、偽色の少ない高品質なカラー画像を生成可能なRGB配列データを生成することができる。
 以上、特定の実施例を参照しながら、本発明について詳解してきた。しかしながら、本発明の要旨を逸脱しない範囲で当業者が実施例の修正や代用を成し得ることは自明である。すなわち、例示という形態で本発明を開示してきたのであり、限定的に解釈されるべきではない。本発明の要旨を判断するためには、特許請求の範囲の欄を参酌すべきである。
 また、明細書中において説明した一連の処理はハードウェア、またはソフトウェア、あるいは両者の複合構成によって実行することが可能である。ソフトウェアによる処理を実行する場合は、処理シーケンスを記録したプログラムを、専用のハードウェアに組み込まれたコンピュータ内のメモリにインストールして実行させるか、あるいは、各種処理が実行可能な汎用コンピュータにプログラムをインストールして実行させることが可能である。例えば、プログラムは記録媒体に予め記録しておくことができる。記録媒体からコンピュータにインストールする他、LAN(Local Area Network)、インターネットといったネットワークを介してプログラムを受信し、内蔵するハードディスク等の記録媒体にインストールすることができる。
 なお、明細書に記載された各種の処理は、記載に従って時系列に実行されるのみならず、処理を実行する装置の処理能力あるいは必要に応じて並列的にあるいは個別に実行されてもよい。また、本明細書においてシステムとは、複数の装置の論理的集合構成であり、各構成の装置が同一筐体内にあるものには限らない。
 以上、説明したように、本発明の一実施例の構成によれば、ホワイト(W:White)を含む例えばRGBW型のカラーフィルタを持つ撮像素子(イメージセンサ)の取得データを入力して偽色の少ない高品質なカラー画像を生成するためのRGB配列データを生成することができる。具体的には、エッジ検出部がRGBW配列の撮像素子の出力信号を解析して各画素対応のエッジ情報を取得し、テクスチャ検出部がテクスチャ情報を生成する。さらにパラメータ算出部が変換画素対応のエッジ方向に応じて適用画素位置を変更した補間処理を実行して、補間画素値に相当するパラメータを生成する。ブレンド処理部において、パラメータ算出部の生成したパラメータと、エッジ情報およびテクスチャ情報を入力し、変換画素対応のエッジ情報とテクスチャ情報に応じて、パラメータ算出部の算出したパラメータのブレンド比率を変更してブレンド処理を実行して変換画素値を決定する。これらの処理により、偽色の少ない高品質なカラー画像を生成可能なRGB配列データを生成することができる。
 100 撮像装置
 105 光学レンズ
 110 撮像素子(イメージセンサ)
 120 信号処理部
 130 メモリ
 140 制御部
 181 RGBW配列
 182 RGB配列
 183 カラー画像
 200 データ変換処理部
 201 ノイズ除去部
 202 第1画素補間パラメータ算出部(GonW)
 203 第1仮画素設定部(RBonWaroundG)
 204 第2画素補間パラメータ算出部(RBonGofHV)
 205 第3画素補間パラメータ算出部(RBonGofAD)
 206 第2仮画素設定部(RBonWaroundRB)
 207 第4画素補間パラメータ算出部(RBonRBofHV)
 208 第5画素補間パラメータ算出部(RBonRBofAD)
 209 エッジ検出部
 210 テクスチャ検出部
 211 ブレンド処理部

Claims (17)

  1.  輝度信号の主成分となる画素が市松状に配置され、残りの部分に色情報成分となる複数色の画素が配置された2次元画素配列信号を解析して画素変換を行うデータ変換処理部を有し、
     前記データ変換処理部は、
     前記2次元画素配列信号を解析して画素変換処理に適用するパラメータを算出するパラメータ算出部を有し、
     前記パラメータ算出部は、
     画素変換処理に適用するパラメータの算出処理において、前記2次元画素配列信号に含まれる輝度信号の主成分となる画素と、変換後の画素の色情報成分との第1相関情報、
     または、前記色情報成分中から選択された1つの選択色情報成分と、変換後の画素の色情報成分との第2相関情報、
     上記第1相関情報または第2相関情報の少なくともいずれかの相関情報を利用して前記パラメータの算出処理を行う画像処理装置。
  2.  前記パラメータ算出部は、
     前記第2相関情報として、前記色情報成分中、配分比率の最も高い色情報成分と、変換後の画素の色情報成分との相関情報を用いる請求項1に記載の画像処理装置。
  3.  前記データ変換処理部は、
     前記2次元画素配列信号を解析してエッジ情報を生成するエッジ検出部を有し、
     前記パラメータ算出部は、
     前記エッジ検出部の検出したエッジ方向に応じて、
     前記第1相関情報、または前記第2相関情報のいずれかを選択的に利用して前記パラメータの算出処理を行う請求項1または2に記載の画像処理装置。
  4.  前記輝度信号の主成分となる色は白色、前記配分比率の最も高い色情報成分は緑色であり、
     前記パラメータ算出部は、
     画素変換処理に適用するパラメータの算出処理において、前記エッジ検出部の検出したエッジ方向に応じて、
     白色と変換後の画素の色情報成分との第1相関情報、または、
     緑色と変換後の画素の色情報成分との第2相関情報のいずれかを取得し、取得した相関情報を利用して前記パラメータの算出処理を行う請求項3に記載の画像処理装置。
  5.  前記データ変換処理部は、
     前記2次元画素配列信号を解析してテクスチャ情報を生成するテクスチャ検出部と、
     前記パラメータ算出部の算出したパラメータと、前記エッジ情報および前記テクスチャ情報を入力し、変換画素対応のエッジ情報とテクスチャ情報に応じて、前記パラメータ算出部の算出したパラメータのブレンド比率を変更してブレンド処理を実行して変換画素値を決定するブレンド処理部と、
     を有する請求項3または4に記載の画像処理装置。
  6.  前記エッジ検出部は、RGB画素とホワイト(W)画素からなるRGBW配列信号を解析して各画素対応のエッジ方向および強度情報を含むエッジ情報を生成し、
     前記テクスチャ検出部は、前記RGBW配列信号を解析して各画素対応のテクスチャ度合いを示すテクスチャ情報を生成し、
     前記パラメータ算出部は、
     RGBW配列をRGB配列に変換するためのパラメータを算出するパラメータ算出部であり、変換画素対応のエッジ方向に応じて適用画素位置を変更した補間処理により算出した補間画素値に相当するパラメータを生成し、
     前記ブレンド処理部は、
     前記パラメータ算出部の算出したパラメータと、前記エッジ情報および前記テクスチャ情報を入力し、変換画素対応のエッジ情報とテクスチャ情報に応じて、前記パラメータ算出部の算出したパラメータのブレンド比率を変更してブレンド処理を実行して変換画素値を決定する処理を実行する請求項5に記載の画像処理装置。
  7.  前記パラメータ算出部は、
     補間処理に適用する画素位置をエッジ方向に沿った画素位置とする補間処理によりパラメータを生成する構成である請求項6に記載の画像処理装置。
  8.  前記パラメータ算出部は、
     RGBW配列を構成するW画素とその他のRGB画素との局所領域での相関、または、RGBW配列を構成するG画素とその他のRGB画素との局所領域での相のいずれかの相関を利用した補間処理によりパラメータを生成する構成である請求項6~7いずれかに記載の画像処理装置。
  9.  前記画像処理装置は、さらに、
     RGBW配列を構成するW画素とその他のRGB画素との局所領域での相関を利用した補間処理によりW画素位置に対してRGBいずれかの画素の画素値を設定する仮画素設定部を有し、
     前記パラメータ算出部は、
     前記仮画素設定データを適用した補間処理によりパラメータを生成する構成である請求項6~8いずれかに記載の画像処理装置。
  10.  前記パラメータ算出部は、
     前記エッジ検出部の検出した縦、横、左斜め上、右斜め上の4種類のエッジ方向に応じて、
     RGBW配列を構成するW画素と変換後の画素の色情報成分との第1相関情報、または、
     RGBW配列を構成するG画素と変換後の画素の色情報成分との第2相関情報のいずれを利用するかを選択する請求項6~9いずれかに記載の画像処理装置。
  11.  前記パラメータ算出部は、
     参照画素位置をエッジ方向に沿った画素位置に設定して、前記第1相関情報、または前記第2相関情報を利用して画素変換処理に適用する複数のパラメータを生成し、
     前記ブレンド処理部は、
     縦、横、左斜め上、右斜め上の4種類のエッジ方向の強度比較を実行して、比較結果に応じて前記複数のパラメータのブレンド比率を変更したブレンド処理を実行する請求項10に記載の画像処理装置。
  12.  前記ブレンド処理部は、
     変換画素対応の縦横方向エッジと斜め方向エッジのエッジ方向度合い(ratioFlat)を算出し、さらに、エッジ方向度合い(ratioFlat)に基づいて、値が大きいほど斜め方向エッジより縦横方向エッジが強く、値が小さいほど斜め方向エッジが縦横方向エッジより強いことを示す縦横方向エッジ方向重み(weightHV)を算出し、
     変換画素対応の縦横方向エッジが斜め方向エッジより強い場合は、エッジ方向を縦または横方向として設定して算出したパラメータのブレンド比率を高くし、
     変換画素対応の縦横方向エッジが斜め方向エッジより弱い場合は、エッジ方向を斜め方向として設定して算出したパラメータのブレンド比率を高くしたブレンド処理を実行する請求項11に記載の画像処理装置。
  13.  前記テクスチャ検出部は、
     前記テクスチャ情報として、テクスチャが少なく平坦度が高い画素領域については高い値を示し、テクスチャが多く平坦度が低い画素領域については低い値を示す各画素対応の平坦度重み(weightFlat)を算出し、
     前記パラメータ算出部は、
     前記補間画素値に対するコントラスト強調処理を実行したコントラスト強調処理適用パラメータと、前記補間画素値に対するコントラスト強調処理を実行しないコントラスト強調処理非適用パラメータを算出し、
     前記ブレンド処理部は、
     前記平坦度重みの大きい画素については、前記コントラスト強調処理非適用パラメータのブレンド比率を大きく設定し、
     前記平坦度重みの小さい画素については、前記コントラスト強調処理適用パラメータのブレンド比率を大きく設定したブレンド処理を実行する請求項6~12いずれかに記載の画像処理装置。
  14.  前記エッジ検出部は、
     前記RGBW配列信号のホワイト(W)画素のみを利用した解析処理により、各画素対応のエッジ情報を生成する構成であり、
     処理対象画素近傍のW画素の信号値勾配を算出して各画素対応のエッジ方向および強度情報を含むエッジ情報を生成する請求項3~13いずれかに記載の画像処理装置。
  15.  前記テクスチャ検出部は、
     前記RGBW配列信号のホワイト(W)画素のみを利用した解析処理により、各画素対応のテクスチャ度合いを示すテクスチャ情報を生成する請求項5~14いずれかに記載の画像処理装置。
  16.  画像処理装置において画像信号処理を実行する画像処理方法であり、
     エッジ検出部が、RGB画素とホワイト(W)画素からなるRGBW配列信号を解析して各画素対応のエッジ方向および強度情報を含むエッジ情報を生成するエッジ検出ステップと、
     テクスチャ検出部が、前記RGBW配列信号を解析して各画素対応のテクスチャ度合いを示すテクスチャ情報を生成するテクスチャ検出ステップと、
     パラメータ算出部が、RGBW配列をRGB配列に変換するためのパラメータを算出するパラメータ算出ステップであり、変換画素対応のエッジ方向に応じて適用画素位置を変更した補間処理により算出した補間画素値に相当するパラメータを生成するパラメータ算出ステップと、
     ブレンド処理部が、前記パラメータ算出部の算出したパラメータと、前記エッジ情報および前記テクスチャ情報を入力し、変換画素対応のエッジ情報とテクスチャ情報に応じて、前記パラメータ算出部の算出したパラメータのブレンド比率を変更してブレンド処理を実行して変換画素値を決定するブレンド処理ステップを実行し、
     前記パラメータ算出ステップは、
     画素変換処理に適用するパラメータの算出処理において、前記2次元画素配列信号に含まれる輝度信号の主成分となる画素と、変換後の画素の色情報成分との第1相関情報、
     または、前記色情報成分中、配分比率の最も高い色情報成分と、変換後の画素の色情報成分との第2相関情報、
     上記第1相関情報または第2相関情報の少なくともいずれかの相関情報を利用して前記パラメータの算出処理を行うステップである画像処理方法。
  17.  画像処理装置において画像信号処理を実行させるプログラムであり、
     エッジ検出部に、RGB画素とホワイト(W)画素からなるRGBW配列信号を解析して各画素対応のエッジ方向および強度情報を含むエッジ情報を生成させるエッジ検出ステップと、
     テクスチャ検出部に、前記RGBW配列信号を解析して各画素対応のテクスチャ度合いを示すテクスチャ情報を生成させるテクスチャ検出ステップと、
     パラメータ算出部に、RGBW配列をRGB配列に変換するためのパラメータを算出させるパラメータ算出ステップであり、変換画素対応のエッジ方向に応じて適用画素位置を変更した補間処理により算出した補間画素値に相当するパラメータを生成させるパラメータ算出ステップと、
     ブレンド処理部に、前記パラメータ算出部の算出したパラメータと、前記エッジ情報および前記テクスチャ情報を入力し、変換画素対応のエッジ情報とテクスチャ情報に応じて、前記パラメータ算出部の算出したパラメータのブレンド比率を変更してブレンド処理を実行して変換画素値を決定させるブレンド処理ステップとを実行させ、
     前記パラメータ算出ステップにおいては、
     画素変換処理に適用するパラメータの算出処理において、前記2次元画素配列信号に含まれる輝度信号の主成分となる画素と、変換後の画素の色情報成分との第1相関情報、
     または、前記色情報成分中、配分比率の最も高い色情報成分と、変換後の画素の色情報成分との第2相関情報、
     上記第1相関情報または第2相関情報の少なくともいずれかの相関情報を利用して前記パラメータの算出処理を行わせるプログラム。
PCT/JP2011/050043 2010-03-04 2011-01-05 画像処理装置、および画像処理方法、並びにプログラム WO2011108290A2 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
CN201180011437.XA CN103238335B (zh) 2010-03-04 2011-01-05 图像处理装置和图像处理方法
US13/581,784 US8948506B2 (en) 2010-03-04 2011-01-05 Image processing device, image processing method, and program
EP11750403.5A EP2544452A4 (en) 2010-03-04 2011-01-05 Image processing device, image processing method, and program

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2010-047369 2010-03-04
JP2010047369A JP5724185B2 (ja) 2010-03-04 2010-03-04 画像処理装置、および画像処理方法、並びにプログラム

Publications (1)

Publication Number Publication Date
WO2011108290A2 true WO2011108290A2 (ja) 2011-09-09

Family

ID=44542673

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2011/050043 WO2011108290A2 (ja) 2010-03-04 2011-01-05 画像処理装置、および画像処理方法、並びにプログラム

Country Status (6)

Country Link
US (1) US8948506B2 (ja)
EP (1) EP2544452A4 (ja)
JP (1) JP5724185B2 (ja)
CN (1) CN103238335B (ja)
TW (1) TWI516132B (ja)
WO (1) WO2011108290A2 (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104584542A (zh) * 2012-08-27 2015-04-29 富士胶片株式会社 图像处理装置、方法、程序、记录介质及摄像装置
EP2843947A4 (en) * 2012-04-24 2016-01-13 Sony Corp IMAGE PROCESSING DEVICE, IMAGE PROCESSING METHOD, AND PROGRAM

Families Citing this family (24)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013066146A (ja) * 2011-08-31 2013-04-11 Sony Corp 画像処理装置、および画像処理方法、並びにプログラム
JP2013219705A (ja) 2012-04-12 2013-10-24 Sony Corp 画像処理装置、および画像処理方法、並びにプログラム
JP5749406B2 (ja) * 2012-08-23 2015-07-15 富士フイルム株式会社 画像処理装置、撮像装置、コンピュータ、画像処理方法及びプログラム
KR20140028959A (ko) * 2012-08-31 2014-03-10 삼성전자주식회사 화상형성장치 및 화상형성방법
JP6188448B2 (ja) * 2013-06-26 2017-08-30 オリンパス株式会社 画像処理装置
US9692992B2 (en) * 2013-07-01 2017-06-27 Omnivision Technologies, Inc. Color and infrared filter array patterns to reduce color aliasing
US9667933B2 (en) * 2013-07-01 2017-05-30 Omnivision Technologies, Inc. Color and infrared filter array patterns to reduce color aliasing
TWI690209B (zh) * 2013-09-25 2020-04-01 新力股份有限公司 固體攝像裝置、攝像裝置及電子機器
JP6302272B2 (ja) 2014-02-06 2018-03-28 株式会社東芝 画像処理装置、画像処理方法及び撮像装置
US9219896B1 (en) * 2014-06-12 2015-12-22 Himax Imaging Limited Method of color processing using a color and white filter array
CN104077997B (zh) * 2014-07-17 2016-10-12 深圳市华星光电技术有限公司 Rgb到rgbw的颜色转换系统和方法
JP6422500B2 (ja) * 2014-08-28 2018-11-14 株式会社日立国際電気 撮像装置及び撮像方法
CN104485064B (zh) * 2014-12-31 2017-03-15 深圳市华星光电技术有限公司 基于边缘像素检测的rgbw显示装置的子像素补偿着色的方法
JP6598507B2 (ja) 2015-05-11 2019-10-30 キヤノン株式会社 撮像装置、撮像システム、信号処理方法
US9947258B2 (en) * 2015-08-28 2018-04-17 Novatek Microelectronics Corp. Image processing method and image processing apparatus
EP3424403B1 (en) * 2016-03-03 2024-04-24 Sony Group Corporation Medical image processing device, system, method, and program
JP6825617B2 (ja) * 2016-03-09 2021-02-03 ソニー株式会社 画像処理装置、撮像装置、および画像処理方法、並びにプログラム
US20180188427A1 (en) * 2016-12-29 2018-07-05 Uber Technologies, Inc. Color Filter Array for Image Capture Device
JP6980492B2 (ja) * 2017-11-13 2021-12-15 キヤノン株式会社 撮像装置及び撮像システム
KR102594038B1 (ko) * 2018-01-15 2023-10-26 에스케이하이닉스 주식회사 이미지 센싱 장치
CN111757182B (zh) * 2020-07-08 2022-05-31 深圳创维-Rgb电子有限公司 图像花屏检测方法、设备、计算机设备和可读存储介质
CN111899178B (zh) * 2020-08-18 2021-04-16 Oppo广东移动通信有限公司 图像处理方法、图像处理系统、电子设备及可读存储介质
CN114449231B (zh) * 2020-10-31 2023-11-24 荣耀终端有限公司 一种图像转换方法及设备
CN114466170B (zh) * 2021-08-27 2023-10-31 锐芯微电子股份有限公司 图像处理方法及系统

Family Cites Families (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030117507A1 (en) * 2001-12-21 2003-06-26 Nasser Kehtarnavaz Color filter array interpolation
EP1475745B1 (en) * 2002-02-12 2014-07-09 Panasonic Corporation Image processing device and image processing method
KR101081000B1 (ko) * 2003-10-23 2011-11-09 소니 가부시키가이샤 화상 처리 장치 및 화상 처리 방법과 기록 매체
JP4534594B2 (ja) * 2004-05-19 2010-09-01 ソニー株式会社 画像処理装置、画像処理方法、画像処理方法のプログラム及び画像処理方法のプログラムを記録した記録媒体
JP4600011B2 (ja) * 2004-11-29 2010-12-15 ソニー株式会社 画像処理装置および方法、記録媒体、並びにプログラム
US7830430B2 (en) 2005-07-28 2010-11-09 Eastman Kodak Company Interpolation of panchromatic and color pixels
US8274715B2 (en) 2005-07-28 2012-09-25 Omnivision Technologies, Inc. Processing color and panchromatic pixels
JP5011814B2 (ja) * 2006-05-15 2012-08-29 ソニー株式会社 撮像装置、および画像処理方法、並びにコンピュータ・プログラム
JP4983141B2 (ja) * 2006-08-04 2012-07-25 ソニー株式会社 カラーフィルタ
US7876956B2 (en) * 2006-11-10 2011-01-25 Eastman Kodak Company Noise reduction of panchromatic and color image
JP5085140B2 (ja) * 2007-01-05 2012-11-28 株式会社東芝 固体撮像装置
JP4846608B2 (ja) * 2007-01-26 2011-12-28 株式会社東芝 固体撮像装置
JP4930109B2 (ja) * 2007-03-06 2012-05-16 ソニー株式会社 固体撮像装置、撮像装置
JP2008289090A (ja) * 2007-05-21 2008-11-27 Toshiba Corp 撮像信号処理装置
KR100976284B1 (ko) * 2007-06-07 2010-08-16 가부시끼가이샤 도시바 촬상 장치
US8073246B2 (en) * 2008-11-07 2011-12-06 Omnivision Technologies, Inc. Modifying color and panchromatic channel CFA image
KR100992362B1 (ko) * 2008-12-11 2010-11-04 삼성전기주식회사 컬러 보간 장치
JP5326943B2 (ja) * 2009-08-31 2013-10-30 ソニー株式会社 画像処理装置、および画像処理方法、並びにプログラム
JP5454075B2 (ja) * 2009-10-20 2014-03-26 ソニー株式会社 画像処理装置、および画像処理方法、並びにプログラム

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2843947A4 (en) * 2012-04-24 2016-01-13 Sony Corp IMAGE PROCESSING DEVICE, IMAGE PROCESSING METHOD, AND PROGRAM
US9542759B2 (en) 2012-04-24 2017-01-10 Sony Corporation Image processing device, method of processing image, and image processing program including false color correction
CN104584542A (zh) * 2012-08-27 2015-04-29 富士胶片株式会社 图像处理装置、方法、程序、记录介质及摄像装置
CN104584542B (zh) * 2012-08-27 2016-08-17 富士胶片株式会社 图像处理装置、图像处理方法及摄像装置

Also Published As

Publication number Publication date
EP2544452A4 (en) 2017-05-10
JP2011182354A (ja) 2011-09-15
CN103238335A (zh) 2013-08-07
CN103238335B (zh) 2015-09-30
JP5724185B2 (ja) 2015-05-27
TWI516132B (zh) 2016-01-01
US20130216130A1 (en) 2013-08-22
TW201143467A (en) 2011-12-01
EP2544452A2 (en) 2013-01-09
US8948506B2 (en) 2015-02-03

Similar Documents

Publication Publication Date Title
JP5724185B2 (ja) 画像処理装置、および画像処理方法、並びにプログラム
JP5454075B2 (ja) 画像処理装置、および画像処理方法、並びにプログラム
JP5326943B2 (ja) 画像処理装置、および画像処理方法、並びにプログラム
US9542759B2 (en) Image processing device, method of processing image, and image processing program including false color correction
JP5904213B2 (ja) 画像処理装置、および画像処理方法、並びにプログラム
JP4054184B2 (ja) 欠陥画素補正装置
JP5672776B2 (ja) 画像処理装置、および画像処理方法、並びにプログラム
WO2013031367A1 (ja) 画像処理装置、および画像処理方法、並びにプログラム
US8837853B2 (en) Image processing apparatus, image processing method, information recording medium, and program providing image blur correction
RU2527198C2 (ru) Устройство обработки изображения и способ управления устройством обработки изображения
JP2012239103A (ja) 画像処理装置、および画像処理方法、並びにプログラム
KR20110015969A (ko) 에지 적응적 보간 및 노이즈 필터링 방법, 컴퓨터로 판독 가능한 기록매체 및 휴대 단말
JP2010016814A (ja) 画像処理装置、画像処理方法およびコンピューター読み取り可能な媒体
JP2013055623A (ja) 画像処理装置、および画像処理方法、情報記録媒体、並びにプログラム
KR20060078646A (ko) 디지털 촬영장치의 색상 보간법
US9401006B2 (en) Image processing apparatus, image processing method, and storage medium
KR101327790B1 (ko) 영상 보간 방법 및 장치
Battiato et al. Recent patents on color demosaicing
JP2013055622A (ja) 画像処理装置、および画像処理方法、情報記録媒体、並びにプログラム
JP2012100215A (ja) 画像処理装置、撮像装置および画像処理プログラム
WO2017125162A1 (en) Method and device for demosaicing of color images

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 11750403

Country of ref document: EP

Kind code of ref document: A2

WWE Wipo information: entry into national phase

Ref document number: 2011750403

Country of ref document: EP

WWE Wipo information: entry into national phase

Ref document number: 7523/DELNP/2012

Country of ref document: IN

NENP Non-entry into the national phase

Ref country code: DE

WWE Wipo information: entry into national phase

Ref document number: 13581784

Country of ref document: US