USRE44717E1 - Edge detecting method - Google Patents
Edge detecting method Download PDFInfo
- Publication number
- USRE44717E1 USRE44717E1 US12/770,346 US77034610A USRE44717E US RE44717 E1 USRE44717 E1 US RE44717E1 US 77034610 A US77034610 A US 77034610A US RE44717 E USRE44717 E US RE44717E
- Authority
- US
- United States
- Prior art keywords
- kernel
- pixel
- value
- green
- edge
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active, expires
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/10—Segmentation; Edge detection
- G06T7/13—Edge detection
-
- E—FIXED CONSTRUCTIONS
- E01—CONSTRUCTION OF ROADS, RAILWAYS, OR BRIDGES
- E01F—ADDITIONAL WORK, SUCH AS EQUIPPING ROADS OR THE CONSTRUCTION OF PLATFORMS, HELICOPTER LANDING STAGES, SIGNS, SNOW FENCES, OR THE LIKE
- E01F9/00—Arrangement of road signs or traffic signals; Arrangements for enforcing caution
- E01F9/60—Upright bodies, e.g. marker posts or bollards; Supports for road signs
- E01F9/604—Upright bodies, e.g. marker posts or bollards; Supports for road signs specially adapted for particular signalling purposes, e.g. for indicating curves, road works or pedestrian crossings
- E01F9/619—Upright bodies, e.g. marker posts or bollards; Supports for road signs specially adapted for particular signalling purposes, e.g. for indicating curves, road works or pedestrian crossings with reflectors; with means for keeping reflectors clean
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/20—Special algorithmic details
- G06T2207/20172—Image enhancement details
- G06T2207/20192—Edge enhancement; Edge preservation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N2209/00—Details of colour television systems
- H04N2209/04—Picture signal generators
- H04N2209/041—Picture signal generators using solid-state devices
- H04N2209/042—Picture signal generators using solid-state devices having a single pick-up sensor
- H04N2209/045—Picture signal generators using solid-state devices having a single pick-up sensor using mosaic colour filter
- H04N2209/046—Colour interpolation to calculate the missing colour values
Definitions
- the present invention relates to a method for processing an image signal; and, more particularly, to a method for detecting an edge of an image signal.
- An image sensor can be used in various fields, such as a cell phone, a personal computer (PC) camera, a medical science, a toy, and so on. That is, the image sensor is widely used in all fields where an image signal is used.
- PC personal computer
- Such an image sensor captures an image of an object and the captured image is displayed on a screen.
- a picture quality of the displayed image is largely determined depending on a sharpness of an edge. Accordingly, various correction methods for improving the sharpness of the edge of the image have been proposed.
- FIG. 1 is a schematic block diagram of a conventional image sensor.
- the conventional image sensor includes a control and external system interface 11 , a pixel array 10 , an analog-to-digital converter (hereinafter, referred to as an ADC) 12 , a line memory 13 , and an image signal processor 14 .
- ADC analog-to-digital converter
- the pixel array 10 includes pixels arranged in an N ⁇ M matrix and detects an image information.
- the control and external system interface 11 controls an overall operation of the image sensor by using a finite state machine (FSM), and manages an interface operation for an external system.
- the control and external system interface 11 includes a batch register (not shown) so that several internal operations can be programmed. Also, the control and external system interface 11 controls an operation of the entire chip according to the programmed information.
- an analog line buffer detects and stores voltages of selected pixels of one row.
- a data value of a column selected by a column decoder is transferred to a variable amplifier through an analog bus.
- variable amplifier for example a programmable gain amplifier (PGA)
- PGA programmable gain amplifier
- the line memory stores the digitalized RGB image signals based on the lines.
- the image signal processor 14 performs an error correction, a color interpolation, a gamma correction, a color space conversion, and so on.
- the image sensor employs a correlated double sampling (hereinafter, referred to as a CDS), which reads reset voltage signals and data voltage signals from the pixels of the pixel array 11 10 and outputs a difference therebetween.
- CDS correlated double sampling
- the image signal processor 14 performs a color interpolation, a color space conversion, a gamma correction, and an edge detection and enhancement.
- a color space conversion is performed to convert an RGB Bayer pattern into an YcbCr pattern space.
- a brightness signal Y is used to detect an edge.
- the brightness signal is stored in the line buffer and is inputted to a first-order differentiator.
- the first-order differentiator differentiates an image signal to obtain a strength and a direction.
- the brightness signal is inputted to a second-order differentiator.
- the second-order differentiator performs the differential to extract an edge of an inputted image signal. At this point, the second-order differentiator obtains only a strength of an edge.
- the edge extracted by the second-order differentiator forms a closed curve.
- the extracted edge is transferred to a multiplier.
- the multiplier multiplies the inputted edge by a preset gain so as to enhance a sharpness of the extracted edge.
- the information on the edge multiplied by the gain is transferred to a Coring.
- the Coring prevents an amplification of noise existing in a low frequency band. That is, the information on the edge having a lower frequency band than a predetermined value is converted into zero. The converted edge information is then transferred to an adder.
- the adder adds the converted edge information transferred from the Coring to the inputted image signal and transfers the result to a clipping circuit.
- the clipping circuit limits the inputted image within a range of 0-255 in its brightness level.
- the clipped image signal is outputted as an image signal whose edge is enhanced in the sharpness.
- the conventional edge detecting and correcting method does not consider a noise caused by a detective pixel or the imaging devices (the pixel array 10 , the ADC 12 and the line memory 13 ). Therefore, an unintended edge may be detected.
- the edge is detected using the brightness signal after the color interpolation, the image signal is affected by noise caused in the color interpolation. Due to this, there is a problem in that a false color caused by the color interpolation is more distinct.
- an object of the present invention to provide an edge detecting method, which is capable of preventing a noise influence caused by imaging device and a color interpolation and also detecting the edge can be detected without a line memory.
- an edge detecting method including the steps of: setting a first kernel based on a center pixel in pixel data arranged in a mosaic structure; setting a second kernel based on the center pixel within the first kernel; detecting whether a pixel having a green value in the second kernel is a defective pixel, and correcting the pixel; converting all pixels of the second kernel into pixels having green value; calculating a slope value by using a mask for detecting an edge in the second kernel; and detecting an edge by adding the slope value to a luminance value obtained by a color space conversion.
- the present invention can detect an edge by using the RGB Bayer signal prior to the color interpolation, without using the brightness signal (Y).
- the image is not affected by the noise occurring in the color interpolation.
- the noise caused by the detective pixel or the previous-stage imaging devices can be compensated, so that the edge is detected more correctly.
- FIG. 1 is a schematic block diagram of a conventional image sensor
- FIG. 2 is a flowchart illustrating an edge detecting method in accordance with an embodiment of the present invention
- FIGS. 3A and 3B are flowchart illustrating the step S 204 of FIG. 2 ;
- FIG. 4 is an exemplary diagram of a case where G luminance values of R and B pixels are interpolated using G pixels in 5 ⁇ 5 kernel by a median filter;
- FIG. 5 is another exemplary diagram of a case where G luminance values of R and B pixels are interpolated using an average value.
- FIG. 2 is a flowchart illustrating an edge detecting method in accordance with an embodiment of the present invention.
- a first kernel (for example, a 5 ⁇ 5 kernel) is set based on a center pixel in pixel data of a mosaic arrangement so as to detect an edge.
- This process is aimed to interpolate a G value because the respective pixels have a luminance value only in one specific color in a color filter array (hereinafter, referred to as a CFA).
- a second kernel (for example, a 3 ⁇ 3 kernel) is set within the first kernel, based on the center pixel.
- G values of all pixels in the second kernel are interpolated using the G pixel (pixel having a luminance value in a green component) of the first kernel. In this manner, the G value is interpolated and the edge is detected using the interpolated G value. That is, in step S 205 , all pixels of the second kernel have the G value.
- step S 203 before all pixels of the second kernel have the G value, it is checked whether or not all pixels of the second kernel have the G value.
- step S 204 it is checked whether the pixel having the G value is a defective pixel or a noise, and then its luminance value is corrected.
- step S 206 it is checked whether there is the pixel having no G value. If so, the process returns to the step S 203 .
- step S 207 if all pixels have the G value, a slope value is calculated using several masks for the edge detection in the second kernel. At this point, a Laplacian filter is used.
- step S 208 the slope value is added to a luminance value obtained by a color space conversion.
- step S 209 a Coring and a clipping are performed to prevent a noise amplification and an overflow of an image signal.
- step S 210 a new second kernel is set and the above processes are repeated.
- FIGS. 3A and 3B are flowcharts of the step S 204 in FIG. 2 .
- step S 301 a second kernel for correcting a distorted luminance value is set. This step of setting the second kernel is the same as the step S 202 of FIG. 2 .
- step S 302 threshold values Th 1 and Th 2 are set and all counters are initialized so as to determine whether or not a center pixel having a G value (a luminance value of the center pixel) in the second kernel is distorted.
- step S 303 the luminance value of the center pixel is compared with the threshold value Th 2 . If the luminance value of the center pixel is larger than the threshold value Th 2 , the process proceeds to step S 305 .
- step S 304 if the luminance value of the center pixel is smaller than the threshold value Th 2 , the threshold value Th 1 is again set. That is, the threshold value Th 1 is adjusted according to a luminance value of a current pixel. It is because noise cannot be correctly found when the same threshold value is applied regardless of the luminance values of the pixels.
- step S 305 if the threshold value Th 1 is determined, a difference ⁇ in the luminance values of the center pixel and the pixel of the second kernel (an adjacent pixel having the same color characteristic) is calculated.
- step S 307 if the ⁇ value is larger than the threshold value Th 1 , a value count 1 representing the number of the adjacent pixels whose luminance value is larger than the threshold value increases.
- step S 308 if the ⁇ value is smaller than the threshold value Th 1 , a value count 2 representing the number of the pixels whose color characteristic is equal to that of the center pixel increases.
- steps S 310 and S 311 if the value count 1 is zero, it is considered that there is no noise and Edge(i, j) is set to zero. Then, in step S 318 , a next kernel is set.
- the value count 2 is used to count the number of the adjacent pixels arranged in vertical or horizontal positions with respect to the G pixel (pixel having the luminance value of the G value) to be currently interpolated.
- the pixel to be interpolated and the adjacent pixels are the pixels contained in the second kernel.
- step S 312 it is checked whether or not the value count 1 and the value count 2 are equal to each other and whether differences in the luminance values of the center pixel and the pixels having the same G value are equal to each other.
- the row corresponds to a height of the image and the column corresponds to a width of the image.
- steps S 313 to S 316 if the values count 1 and count 2 are equal to each other and signs of the ⁇ values for all the adjacent pixels are equal to each other, a weight value is multiplied according to a single (edge) representing whether the pixel luminance value of a (i ⁇ 1)-th row.
- Edge(i ⁇ 1, j ⁇ 1), Edge(i ⁇ 1, j) and Edge(i ⁇ 1, j+1) represent whether pixel values of (j ⁇ 1)-th, j-th and (j+1)-th columns are abnormal (that is, extremely large or 5 extremely small). If there is the abnormal value among them and a pixel value of the current i-th row and j-th column is abnormal, the corresponding pixel is considered as an edge and thus is not corrected. If there is no abnormal value in the previous row and the pixel value of the current row is abnormal, the corresponding pixel is considered as a noise and thus is corrected. Also, the reason why the weight value of the distorted signal is different is that a white defect must be corrected with a little large value and a dark defect must be corrected with a little small value.
- step S 317 if the two count values is not equal to each other and the signs of the ⁇ values are not equal to each other, Edge(i, j) becomes 1 and a next kernel is set.
- FIG. 4 is an exemplary diagram of a case where G luminance values of R and B pixels are interpolated using G pixels in 5 ⁇ 5 kernel by a median filter.
- the R and B pixels represent pixels having luminance values in R and B color components
- the G pixel is a pixel having luminance value in G color component.
- a G luminance value of a pixel R 23 is interpolated in a Gb-type kernel.
- ExG 12 In order to calculate a G luminance value ExG 12 of the pixel R 23 in the Gb-type kernel, luminance values of the adjacent G pixels are required. That is, ExG 12 is used as the G luminance value of the pixel R 23 .
- the ExG 12 is a median output of the luminance values of the four pixels G 13 , G 22 , G 24 and G 33 . The median output is obtained by selecting two small luminance values and averaging them.
- the G luminance values E ⁇ G 21 , E ⁇ G 23 and E ⁇ G 32 of the pixels B 32 , B 34 and R 43 are calculated in the same manner.
- G luminance values of pixels R 22 , R 24 , B 33 , R 42 and R 44 are interpolated in a B-type kernel.
- FIG. 5 is another exemplary diagram of a case where G luminance values of R and B pixels are interpolated using an average value.
- a difference VDiff 1 in luminance values of pixels G 13 and G 33 a difference VDiff 2 in luminance values of pixels G 13 and R 23 , a difference VDiff 3 in luminance values of pixels G 33 and R 23 , a difference HDiff 1 in luminance values of pixels G 22 and G 24 , a difference HDiff 2 in luminance values of pixels G 22 and R 23 , and a difference HDiff 3 in luminance values of pixels G 24 and R 23 are calculated.
- the two absolute values AbsVDiff and AbsHDiff are compared with each other. If the value AbsVDiff is larger than the value AbsHDiff, a value of (G22+G24) is used as the G luminance value of the pixel R 23 . If the value AbsVDiff is smaller than the value AbsHDiff, a value of (G13+G33) is used as the G luminance value of the pixel R 23 .
- the present invention can detect an edge by using the RGB Bayer signal prior to the color interpolation, without using the brightness signal (Y).
- the image is not affected by the noise occurring in the color interpolation.
- the noise caused by the detective pixel or the previous-stage imaging devices can be compensated, so that the edge is detected more correctly.
- edge detection algorithm and the color interpolation can be achieved at the same time.
Landscapes
- Engineering & Computer Science (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Architecture (AREA)
- Civil Engineering (AREA)
- Structural Engineering (AREA)
- Color Television Image Signal Generators (AREA)
- Facsimile Image Signal Circuits (AREA)
Abstract
There is provided an edge detecting method, which is capable of preventing a noise influence caused by imaging device and a color interpolation. The edge detecting method includes the steps of: setting a first kernel based on a center pixel in pixel data arranged in a mosaic structure; setting a second kernel based on the center pixel within the first kernel; detecting whether a pixel having a green value in the second kernel is a defective pixel, and correcting the pixel; converting all pixels of the second kernel into pixels having green value; calculating a slope value by using a mask for detecting an edge in the second kernel; and detecting an edge by adding the slope value to a luminance value obtained by a color space conversion.
Description
The present invention relates to a method for processing an image signal; and, more particularly, to a method for detecting an edge of an image signal.
An image sensor can be used in various fields, such as a cell phone, a personal computer (PC) camera, a medical science, a toy, and so on. That is, the image sensor is widely used in all fields where an image signal is used.
Such an image sensor captures an image of an object and the captured image is displayed on a screen. A picture quality of the displayed image is largely determined depending on a sharpness of an edge. Accordingly, various correction methods for improving the sharpness of the edge of the image have been proposed.
Referring to FIG. 1 , the conventional image sensor includes a control and external system interface 11, a pixel array 10, an analog-to-digital converter (hereinafter, referred to as an ADC) 12, a line memory 13, and an image signal processor 14.
The pixel array 10 includes pixels arranged in an N×M matrix and detects an image information. The control and external system interface 11 controls an overall operation of the image sensor by using a finite state machine (FSM), and manages an interface operation for an external system. The control and external system interface 11 includes a batch register (not shown) so that several internal operations can be programmed. Also, the control and external system interface 11 controls an operation of the entire chip according to the programmed information.
Although not shown in FIG. 1 , an analog line buffer detects and stores voltages of selected pixels of one row. A data value of a column selected by a column decoder is transferred to a variable amplifier through an analog bus.
If a pixel voltage stored in the analog line buffer is small, the variable amplifier, for example a programmable gain amplifier (PGA), amplifies the pixel voltage. A color correction is performed on the analog data passing through the variable amplifier. Then, the ADC 12 converts the analog data into a digital value.
The line memory stores the digitalized RGB image signals based on the lines. The image signal processor 14 performs an error correction, a color interpolation, a gamma correction, a color space conversion, and so on.
Meanwhile, a fixed pattern noise occurs in the image sensor due to an offset voltage, which is caused by a minute difference in the manufacturing process. In order to compensate for the fixed pattern noise, the image sensor employs a correlated double sampling (hereinafter, referred to as a CDS), which reads reset voltage signals and data voltage signals from the pixels of the pixel array 11 10 and outputs a difference therebetween.
As described above, the image signal processor 14 performs a color interpolation, a color space conversion, a gamma correction, and an edge detection and enhancement.
According to a conventional edge detecting and correcting method, a color space conversion is performed to convert an RGB Bayer pattern into an YcbCr pattern space. Among them, a brightness signal Y is used to detect an edge.
The edge detection will now be described briefly.
The brightness signal is stored in the line buffer and is inputted to a first-order differentiator. The first-order differentiator differentiates an image signal to obtain a strength and a direction. Then, the brightness signal is inputted to a second-order differentiator. The second-order differentiator performs the differential to extract an edge of an inputted image signal. At this point, the second-order differentiator obtains only a strength of an edge. The edge extracted by the second-order differentiator forms a closed curve. The extracted edge is transferred to a multiplier. The multiplier multiplies the inputted edge by a preset gain so as to enhance a sharpness of the extracted edge. The information on the edge multiplied by the gain is transferred to a Coring.
The Coring prevents an amplification of noise existing in a low frequency band. That is, the information on the edge having a lower frequency band than a predetermined value is converted into zero. The converted edge information is then transferred to an adder.
The adder adds the converted edge information transferred from the Coring to the inputted image signal and transfers the result to a clipping circuit. The clipping circuit limits the inputted image within a range of 0-255 in its brightness level. The clipped image signal is outputted as an image signal whose edge is enhanced in the sharpness.
However, the conventional edge detecting and correcting method does not consider a noise caused by a detective pixel or the imaging devices (the pixel array 10, the ADC 12 and the line memory 13). Therefore, an unintended edge may be detected.
In addition, since the edge is detected using the brightness signal after the color interpolation, the image signal is affected by noise caused in the color interpolation. Due to this, there is a problem in that a false color caused by the color interpolation is more distinct.
It is, therefore, an object of the present invention to provide an edge detecting method, which is capable of preventing a noise influence caused by imaging device and a color interpolation and also detecting the edge can be detected without a line memory.
In an aspect of the present invention, there is provided an edge detecting method, including the steps of: setting a first kernel based on a center pixel in pixel data arranged in a mosaic structure; setting a second kernel based on the center pixel within the first kernel; detecting whether a pixel having a green value in the second kernel is a defective pixel, and correcting the pixel; converting all pixels of the second kernel into pixels having green value; calculating a slope value by using a mask for detecting an edge in the second kernel; and detecting an edge by adding the slope value to a luminance value obtained by a color space conversion.
The present invention can detect an edge by using the RGB Bayer signal prior to the color interpolation, without using the brightness signal (Y). Thus, the image is not affected by the noise occurring in the color interpolation. Also, in the edge detection, the noise caused by the detective pixel or the previous-stage imaging devices can be compensated, so that the edge is detected more correctly.
The above and other objects and features of the instant invention will become apparent from the following description of preferred embodiments taken in conjunction with the accompanying drawings, in which:
Hereinafter, the present invention will be described in detail with reference to the accompanying drawings.
Referring to FIG. 2 , in step S201, a first kernel (for example, a 5×5 kernel) is set based on a center pixel in pixel data of a mosaic arrangement so as to detect an edge. This process is aimed to interpolate a G value because the respective pixels have a luminance value only in one specific color in a color filter array (hereinafter, referred to as a CFA).
In step S202, a second kernel (for example, a 3×3 kernel) is set within the first kernel, based on the center pixel. In step S203, G values of all pixels in the second kernel are interpolated using the G pixel (pixel having a luminance value in a green component) of the first kernel. In this manner, the G value is interpolated and the edge is detected using the interpolated G value. That is, in step S205, all pixels of the second kernel have the G value.
Meanwhile, in step S203, before all pixels of the second kernel have the G value, it is checked whether or not all pixels of the second kernel have the G value.
In step S204, it is checked whether the pixel having the G value is a defective pixel or a noise, and then its luminance value is corrected. In step S206, it is checked whether there is the pixel having no G value. If so, the process returns to the step S203.
In step S207, if all pixels have the G value, a slope value is calculated using several masks for the edge detection in the second kernel. At this point, a Laplacian filter is used.
In step S208, the slope value is added to a luminance value obtained by a color space conversion.
In step S209, a Coring and a clipping are performed to prevent a noise amplification and an overflow of an image signal. In step S210, a new second kernel is set and the above processes are repeated.
In step S301, a second kernel for correcting a distorted luminance value is set. This step of setting the second kernel is the same as the step S202 of FIG. 2 .
In step S302, threshold values Th1 and Th2 are set and all counters are initialized so as to determine whether or not a center pixel having a G value (a luminance value of the center pixel) in the second kernel is distorted.
In step S303, the luminance value of the center pixel is compared with the threshold value Th2. If the luminance value of the center pixel is larger than the threshold value Th2, the process proceeds to step S305. In step S304, if the luminance value of the center pixel is smaller than the threshold value Th2, the threshold value Th1 is again set. That is, the threshold value Th1 is adjusted according to a luminance value of a current pixel. It is because noise cannot be correctly found when the same threshold value is applied regardless of the luminance values of the pixels.
In step S305, if the threshold value Th1 is determined, a difference Δ in the luminance values of the center pixel and the pixel of the second kernel (an adjacent pixel having the same color characteristic) is calculated. In step S307, if the Δ value is larger than the threshold value Th1, a value count1 representing the number of the adjacent pixels whose luminance value is larger than the threshold value increases. In step S308, if the Δ value is smaller than the threshold value Th1, a value count2 representing the number of the pixels whose color characteristic is equal to that of the center pixel increases. In steps S310 and S311, if the value count1 is zero, it is considered that there is no noise and Edge(i, j) is set to zero. Then, in step S318, a next kernel is set.
Here, the value count2 is used to count the number of the adjacent pixels arranged in vertical or horizontal positions with respect to the G pixel (pixel having the luminance value of the G value) to be currently interpolated. The pixel to be interpolated and the adjacent pixels are the pixels contained in the second kernel.
If the value count1 is not zero, the following processes will be performed.
It is assumed that the current center pixel is disposed at an i-th row and a j-th column. In step S312, it is checked whether or not the value count1 and the value count2 are equal to each other and whether differences in the luminance values of the center pixel and the pixels having the same G value are equal to each other.
Here, the row corresponds to a height of the image and the column corresponds to a width of the image. In steps S313 to S316, if the values count1 and count2 are equal to each other and signs of the Δ values for all the adjacent pixels are equal to each other, a weight value is multiplied according to a single (edge) representing whether the pixel luminance value of a (i−1)-th row.
In other words, Edge(i−1, j−1), Edge(i−1, j) and Edge(i−1, j+1) represent whether pixel values of (j−1)-th, j-th and (j+1)-th columns are abnormal (that is, extremely large or 5 extremely small). If there is the abnormal value among them and a pixel value of the current i-th row and j-th column is abnormal, the corresponding pixel is considered as an edge and thus is not corrected. If there is no abnormal value in the previous row and the pixel value of the current row is abnormal, the corresponding pixel is considered as a noise and thus is corrected. Also, the reason why the weight value of the distorted signal is different is that a white defect must be corrected with a little large value and a dark defect must be corrected with a little small value.
In step S317, if the two count values is not equal to each other and the signs of the Δ values are not equal to each other, Edge(i, j) becomes 1 and a next kernel is set.
In FIG. 4 , a G luminance value of a pixel R23 is interpolated in a Gb-type kernel.
In order to calculate a G luminance value ExG12 of the pixel R23 in the Gb-type kernel, luminance values of the adjacent G pixels are required. That is, ExG12 is used as the G luminance value of the pixel R23. Here, the ExG12 is a median output of the luminance values of the four pixels G13, G22, G24 and G33. The median output is obtained by selecting two small luminance values and averaging them. Likewise, the G luminance values E×G21, E×G23 and E×G32 of the pixels B32, B34 and R43 are calculated in the same manner.
Also, in FIG. 4 , G luminance values of pixels R22, R24, B33, R42 and R44 are interpolated in a B-type kernel.
In order to interpolate the G luminance value of the pixel R23 in the Gb-type kernel, a difference VDiff1 in luminance values of pixels G13 and G33, a difference VDiff2 in luminance values of pixels G13 and R23, a difference VDiff3 in luminance values of pixels G33 and R23, a difference HDiff1 in luminance values of pixels G22 and G24, a difference HDiff2 in luminance values of pixels G22 and R23, and a difference HDiff3 in luminance values of pixels G24 and R23 are calculated. Then, a sum VDiff of the difference values in a vertical direction and a sum HDiff of the difference values in a horizontal direction are calculated and then their absolute values are calculated as follows:
AbsVDiff=abs(VDiff1+VDiff2+VDiff3)
AbsHDiff=abs(HDiff1+HDiff2+HDiff3)
AbsVDiff=abs(VDiff1+VDiff2+VDiff3)
AbsHDiff=abs(HDiff1+HDiff2+HDiff3)
The two absolute values AbsVDiff and AbsHDiff are compared with each other. If the value AbsVDiff is larger than the value AbsHDiff, a value of (G22+G24) is used as the G luminance value of the pixel R23. If the value AbsVDiff is smaller than the value AbsHDiff, a value of (G13+G33) is used as the G luminance value of the pixel R23.
As described above, the present invention can detect an edge by using the RGB Bayer signal prior to the color interpolation, without using the brightness signal (Y). Thus, the image is not affected by the noise occurring in the color interpolation. Also, in the edge detection, the noise caused by the detective pixel or the previous-stage imaging devices can be compensated, so that the edge is detected more correctly.
In addition, the edge detection algorithm and the color interpolation can be achieved at the same time.
The present application contains subject matter related to Korean patent application No. 2004-31989, filed in the Korean Patent Office on May 6, 2004, the entire contents of which being incorporated herein by reference.
While the present invention has been described with respect to the particular embodiments, it will be apparent to those skilled in the art that various changes and modifications may be made without departing from the spirit and scope of the invention as defined in the following claims.
Claims (20)
1. An edge detecting method comprising the steps of:
a) setting a first kernel based on a center pixel in pixel data arranged in a mosaic structure;
b) setting a second kernel based on the center pixel within the first kernel;
c) detecting whether a pixel having a green value in the second kernel is a defective pixel, and, if defective, correcting the pixel;
d) converting all pixels of the second kernel into pixels having green value values;
e) calculating a slope value by using a mask for detecting an edge in the second kernel; and
f) detecting an edge by adding the slope value to a luminance value obtained by a color space conversion.
2. The edge detecting method as recited in claim 1 , wherein the first kernel is a 5×5 kernel and the second kernel is a 3×3 kernel.
3. The edge detecting method as recited in claim 1 , further comprising the step of:
prior to the step d), determining whether all pixels of the second kernel have the G value green values.
4. The edge detecting method as recited in claim 3 , further comprising the steps of:
checking whether the pixel having the G value among the pixels a pixel of the second kernel having the green values is a defective pixel or a noise; and
correcting a luminance value of the corresponding a defective or noise pixel.
5. The edge detecting method as recited in claim 4 , wherein the step of correcting the luminance value of the corresponding defective or noise pixel includes the steps of:
setting first and second threshold values according to a luminance value of the center pixel so as to determine whether the center pixel having the G green value in the second kernel is distorted or not;
calculating a difference in luminance values of the center pixel and a pixel having the same G green value;
comparing the difference with the first threshold value;
if the difference is smaller than the first threshold value, increasing a count value representing the number of pixels having the same color characteristic as the center pixel;
determining whether there exists a pixel having the same color characteristic in a position adjacent to the center pixel;
if there is no pixel having the same color characteristic, determining whether a count value representing the number of adjacent pixels whose difference in the luminance value from the center pixel is larger than the first threshold value is zero; and
if the count value is zero, making an edge zero and setting a next 3×3 kernel.
6. The edge detecting method as recited in claim 5 , further comprising the steps of:
if the difference in the luminance value is larger than the first threshold value, increasing the count value representing the number of adjacent pixels whose difference in the luminance value from the center pixel is larger than the first threshold value.
7. The edge detecting method as recited in claim 5 , further comprising the steps of:
if the count value representing the number of the adjacent pixels whose difference in the luminance value from the center pixel is larger than the first threshold value is not zero, determining whether the count number value representing the number of the adjacent pixels larger than the first threshold value is equal to the count value representing the number of the pixel having the same color characteristic as the center pixel and whether the differences in the luminance values of the center pixel and the pixel having the same G green value; and
if the condition is satisfied, multiplying a weight value by the luminance value of the center pixel according to the distortion of using distorted luminance values of derived from pixels arranged in a previous row.
8. The edge detecting method as recited in claim 7 , further comprising the step of:
if the condition is not satisfied, setting the edge to 1 and setting a next second kernel.
9. The edge detecting method as recited in claim 1 , wherein the slope value is calculated using a Laplacian filter.
10. The edge detecting method as recited in claim 1 , wherein a median filter or an average value is used in the step d).
11. A method for operating an image sensor comprising:
setting a first kernel about a target pixel of an image;
setting a second kernel within the first kernel, wherein the second kernel is configured about the target pixel;
determining whether the target pixel is a green pixel;
correcting the target pixel if it is green and defective;
interpolating an effective green value for all non-green pixels of the second kernel using green values of green pixels adjacent each respective non-green pixel; and
using the green values and the effective green values of the second kernel to detect an edge of the image.
12. The method of claim 11, wherein the first kernel is configured so that the target pixel is centrally disposed within the first kernel.
13. The method of claim 11, wherein the second kernel is configured so that the target pixel is centrally disposed within the second kernel.
14. The method of claim 11, wherein said correcting the target pixel comprises correcting the target pixel if it is green and defective or green and noise.
15. The method of claim 11, wherein said step of using the green values and the effective green values of the second kernel to detect the edge of the image comprises calculating a slope value using a mask for detecting an edge in the second kernel using the green values and the effective green values of the second kernel.
16. The method of claim 15, wherein the step of using the green values and effective green values of the second kernel to detect the edge of the image comprises detecting the edge by adding the slope value to a luminance value obtained by a color space conversion operation.
17. A method comprising:
setting a first kernel and a second kernel, wherein a green pixel is located in the first and second kernels, and wherein the second kernel is configured within the first kernel;
setting first and second threshold values based on a luminance value of the green pixel;
determining whether the luminance value of the green pixel exceeds the second threshold value;
adjusting the first threshold value if the luminance value of the green pixel does not exceed the second threshold value;
determining a first luminance difference value between the green pixel and one or more green pixels of the second kernel;
increasing a first count value if the first luminance difference is greater than the first threshold value;
increasing a second count value; and
using the first count value and the second count value to determine whether the green pixel needs correction.
18. The method of claim 17, wherein the first kernel is configured so that the target pixel is centrally disposed within the first kernel.
19. The method of claim 17, wherein the second kernel is configured so that the target pixel is centrally disposed within the second kernel.
20. The method of claim 17, further comprising:
correcting the target pixel if it is green and needs correction;
interpolating an effective green value for all non-green pixels of the second kernel using green values of green pixels adjacent each respective non-green pixel; and
using the green values and the effective green values of the second kernel to detect the edge of an image.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US12/770,346 USRE44717E1 (en) | 2004-05-06 | 2010-04-29 | Edge detecting method |
Applications Claiming Priority (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR10-2004-0031989 | 2004-05-06 | ||
KR1020040031989A KR100587143B1 (en) | 2004-05-06 | 2004-05-06 | Method for edge detection of image signal |
US11/096,637 US7366347B2 (en) | 2004-05-06 | 2005-03-30 | Edge detecting method |
US12/770,346 USRE44717E1 (en) | 2004-05-06 | 2010-04-29 | Edge detecting method |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US11/096,637 Reissue US7366347B2 (en) | 2004-05-06 | 2005-03-30 | Edge detecting method |
Publications (1)
Publication Number | Publication Date |
---|---|
USRE44717E1 true USRE44717E1 (en) | 2014-01-21 |
Family
ID=35239499
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US11/096,637 Ceased US7366347B2 (en) | 2004-05-06 | 2005-03-30 | Edge detecting method |
US12/770,346 Active 2026-11-22 USRE44717E1 (en) | 2004-05-06 | 2010-04-29 | Edge detecting method |
Family Applications Before (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US11/096,637 Ceased US7366347B2 (en) | 2004-05-06 | 2005-03-30 | Edge detecting method |
Country Status (2)
Country | Link |
---|---|
US (2) | US7366347B2 (en) |
KR (1) | KR100587143B1 (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110785757A (en) * | 2017-06-19 | 2020-02-11 | 西门子股份公司 | Edge device and method for operating an edge device |
Families Citing this family (17)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100573487B1 (en) * | 2004-04-27 | 2006-04-24 | 매그나칩 반도체 유한회사 | Image sensor |
US7830426B2 (en) * | 2005-12-29 | 2010-11-09 | Micron Technology, Inc. | Method and apparatus providing color interpolation in color filter arrays using edge detection and correction terms |
KR100776385B1 (en) * | 2005-12-29 | 2007-11-16 | 엠텍비젼 주식회사 | Color interpolation apparatus for edge enhancement and noise removal |
GB2438905B (en) * | 2006-06-07 | 2011-08-24 | Tandberg Television Asa | Temporal noise analysis of a video signal |
KR100809346B1 (en) | 2006-07-03 | 2008-03-05 | 삼성전자주식회사 | Apparatus and method for correcting edge |
TWI319676B (en) * | 2006-10-18 | 2010-01-11 | Quanta Comp Inc | Image processing apparatus and method |
US20110097010A1 (en) * | 2006-12-13 | 2011-04-28 | Jian Wang | Method and system for reducing noise in images in video coding |
US8035704B2 (en) * | 2008-01-03 | 2011-10-11 | Aptina Imaging Corporation | Method and apparatus for processing a digital image having defective pixels |
US8135237B2 (en) * | 2008-02-25 | 2012-03-13 | Aptina Imaging Corporation | Apparatuses and methods for noise reduction |
JP2009239394A (en) * | 2008-03-26 | 2009-10-15 | Seiko Epson Corp | Coloring image generating apparatus and method |
KR101934261B1 (en) * | 2012-07-09 | 2019-01-03 | 삼성전자 주식회사 | Method and device for converting image resolution, and electronic device having the device |
CA2906802A1 (en) | 2013-03-15 | 2014-09-18 | Olive Medical Corporation | Noise aware edge enhancement |
US9088740B2 (en) * | 2013-06-21 | 2015-07-21 | Himax Imaging Limited | System and method of reducing noise |
US9183453B2 (en) * | 2013-10-31 | 2015-11-10 | Stmicroelectronics Asia Pacific Pte. Ltd. | Banding noise detector for digital images |
WO2016154970A1 (en) * | 2015-04-01 | 2016-10-06 | 中国科学院自动化研究所 | Method and system for image interpolation based on edge detection |
WO2019066704A1 (en) * | 2017-09-26 | 2019-04-04 | Dozero Tech Ab | Method in an image compression device and in an image decompression device |
KR102160352B1 (en) | 2019-01-02 | 2020-09-28 | 동국대학교 산학협력단 | Edge Detecting Circuit and Method Thereof |
Citations (22)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4561022A (en) | 1983-08-11 | 1985-12-24 | Eastman Kodak Company | Image processing method based on processing of interrelated image gradients |
US4642676A (en) | 1984-09-10 | 1987-02-10 | Color Systems Technology, Inc. | Priority masking techniques for video special effects |
US4685071A (en) * | 1985-03-18 | 1987-08-04 | Eastman Kodak Company | Method for determining the color of a scene illuminant from a color image |
US5008752A (en) | 1989-06-16 | 1991-04-16 | Eastman Kodak Company | Digital image interpolator with multiple interpolation algorithms |
US5093717A (en) | 1987-08-03 | 1992-03-03 | American Film Technologies, Inc. | System and method for digitally coloring images |
US5400135A (en) | 1993-06-08 | 1995-03-21 | Nikon Corporation | Automatic defect inspection apparatus for color filter |
US5475769A (en) | 1992-07-13 | 1995-12-12 | Polaroid Corporation | Method and apparatus for recovering image data through the use of a color test pattern |
US5588069A (en) | 1990-12-19 | 1996-12-24 | Canon Kabushiki Kaisha | Image processing apparatus for advantageously encoding blocks of data having either substantially the same or varied colors |
US5754678A (en) * | 1996-01-17 | 1998-05-19 | Photon Dynamics, Inc. | Substrate inspection apparatus and method |
US5931960A (en) * | 1997-10-31 | 1999-08-03 | Xerox Corporation | Method and apparatus for handling error diffusion values |
KR0132809Y1 (en) | 1996-10-31 | 1999-10-01 | 대우자동차주식회사 | Engine room lamp of a car |
US6049338A (en) | 1998-04-01 | 2000-04-11 | Hewlett-Packard Company | Spatial filter for surface texture navigation |
US6115092A (en) | 1999-09-15 | 2000-09-05 | Rainbow Displays, Inc. | Compensation for edge effects and cell gap variation in tiled flat-panel, liquid crystal displays |
US6229578B1 (en) * | 1997-12-08 | 2001-05-08 | Intel Corporation | Edge-detection based noise removal algorithm |
US6263101B1 (en) * | 1995-09-01 | 2001-07-17 | Cerulean Colorization Llc | Filtering in picture colorization |
US6348929B1 (en) * | 1998-01-16 | 2002-02-19 | Intel Corporation | Scaling algorithm and architecture for integer scaling in video |
US6587592B2 (en) * | 2001-11-16 | 2003-07-01 | Adobe Systems Incorporated | Generating replacement data values for an image region |
US6633297B2 (en) * | 2000-08-18 | 2003-10-14 | Hewlett-Packard Development Company, L.P. | System and method for producing an antialiased image using a merge buffer |
US6885766B2 (en) * | 2001-01-31 | 2005-04-26 | Imaging Solutions Ag | Automatic color defect correction |
US6901170B1 (en) * | 2000-09-05 | 2005-05-31 | Fuji Xerox Co., Ltd. | Image processing device and recording medium |
US6914628B1 (en) * | 1997-11-25 | 2005-07-05 | Seiko Epson Corporation | Image processing apparatus and method, and medium containing image processing control program |
US7212689B2 (en) * | 2002-11-06 | 2007-05-01 | D. Darian Muresan | Fast edge directed polynomial interpolation |
-
2004
- 2004-05-06 KR KR1020040031989A patent/KR100587143B1/en active IP Right Grant
-
2005
- 2005-03-30 US US11/096,637 patent/US7366347B2/en not_active Ceased
-
2010
- 2010-04-29 US US12/770,346 patent/USRE44717E1/en active Active
Patent Citations (24)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4561022A (en) | 1983-08-11 | 1985-12-24 | Eastman Kodak Company | Image processing method based on processing of interrelated image gradients |
US4642676A (en) | 1984-09-10 | 1987-02-10 | Color Systems Technology, Inc. | Priority masking techniques for video special effects |
US4685071A (en) * | 1985-03-18 | 1987-08-04 | Eastman Kodak Company | Method for determining the color of a scene illuminant from a color image |
US5093717A (en) | 1987-08-03 | 1992-03-03 | American Film Technologies, Inc. | System and method for digitally coloring images |
US5008752A (en) | 1989-06-16 | 1991-04-16 | Eastman Kodak Company | Digital image interpolator with multiple interpolation algorithms |
US5588069A (en) | 1990-12-19 | 1996-12-24 | Canon Kabushiki Kaisha | Image processing apparatus for advantageously encoding blocks of data having either substantially the same or varied colors |
US5475769A (en) | 1992-07-13 | 1995-12-12 | Polaroid Corporation | Method and apparatus for recovering image data through the use of a color test pattern |
US5400135A (en) | 1993-06-08 | 1995-03-21 | Nikon Corporation | Automatic defect inspection apparatus for color filter |
US6263101B1 (en) * | 1995-09-01 | 2001-07-17 | Cerulean Colorization Llc | Filtering in picture colorization |
US5754678A (en) * | 1996-01-17 | 1998-05-19 | Photon Dynamics, Inc. | Substrate inspection apparatus and method |
KR0132809Y1 (en) | 1996-10-31 | 1999-10-01 | 대우자동차주식회사 | Engine room lamp of a car |
US5931960A (en) * | 1997-10-31 | 1999-08-03 | Xerox Corporation | Method and apparatus for handling error diffusion values |
US6914628B1 (en) * | 1997-11-25 | 2005-07-05 | Seiko Epson Corporation | Image processing apparatus and method, and medium containing image processing control program |
US6229578B1 (en) * | 1997-12-08 | 2001-05-08 | Intel Corporation | Edge-detection based noise removal algorithm |
US6348929B1 (en) * | 1998-01-16 | 2002-02-19 | Intel Corporation | Scaling algorithm and architecture for integer scaling in video |
US6049338A (en) | 1998-04-01 | 2000-04-11 | Hewlett-Packard Company | Spatial filter for surface texture navigation |
US6115092A (en) | 1999-09-15 | 2000-09-05 | Rainbow Displays, Inc. | Compensation for edge effects and cell gap variation in tiled flat-panel, liquid crystal displays |
US6188454B1 (en) | 1999-09-15 | 2001-02-13 | Rainbow Displays, Inc. | Compensation for edge effects and cell gap variation in tiled flat-panel, liquid crystal displays |
US6181392B1 (en) | 1999-09-15 | 2001-01-30 | Rainbow Display, Inc. | Compensation for edge effects and cell gap variation in tiled flat-panel, liquid crystal displays |
US6633297B2 (en) * | 2000-08-18 | 2003-10-14 | Hewlett-Packard Development Company, L.P. | System and method for producing an antialiased image using a merge buffer |
US6901170B1 (en) * | 2000-09-05 | 2005-05-31 | Fuji Xerox Co., Ltd. | Image processing device and recording medium |
US6885766B2 (en) * | 2001-01-31 | 2005-04-26 | Imaging Solutions Ag | Automatic color defect correction |
US6587592B2 (en) * | 2001-11-16 | 2003-07-01 | Adobe Systems Incorporated | Generating replacement data values for an image region |
US7212689B2 (en) * | 2002-11-06 | 2007-05-01 | D. Darian Muresan | Fast edge directed polynomial interpolation |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110785757A (en) * | 2017-06-19 | 2020-02-11 | 西门子股份公司 | Edge device and method for operating an edge device |
CN110785757B (en) * | 2017-06-19 | 2023-09-26 | 西门子股份公司 | Edge device and method for operating an edge device |
Also Published As
Publication number | Publication date |
---|---|
US20050249417A1 (en) | 2005-11-10 |
KR100587143B1 (en) | 2006-06-08 |
US7366347B2 (en) | 2008-04-29 |
KR20050106919A (en) | 2005-11-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
USRE44717E1 (en) | Edge detecting method | |
US8571346B2 (en) | Methods and devices for defective pixel detection | |
US8391629B2 (en) | Method and apparatus for image noise reduction using noise models | |
US7015961B2 (en) | Digital image system and method for combining demosaicing and bad pixel correction | |
US8013914B2 (en) | Imaging apparatus including noise suppression circuit | |
US8964069B2 (en) | Image processing device and solid-state imaging device including a defect correcting function | |
WO2011152174A1 (en) | Image processing device, image processing method and program | |
JP5112238B2 (en) | Imaging apparatus, setting value changing method, and program | |
US8593546B2 (en) | Image processing apparatus, image processing method, and camera module for detecting and correcting defective pixels based on contrast and illuminance | |
EP1525744A1 (en) | Device and method of detection of erroneous image sample data of defective image samples | |
US7471842B2 (en) | Method and apparatus for dynamically detecting pixel values | |
US7106912B2 (en) | Circuit for correction of white pixel defects and an image sensor using the circuit for correction of white pixel defects | |
US20060017824A1 (en) | Image processing device, image processing method, electronic camera, and scanner | |
JP5262953B2 (en) | Image processing apparatus, image processing method, and program | |
US8896731B2 (en) | Image processing apparatus, image processing method, and camera module | |
US8054348B2 (en) | Noise reduction device and digital camera | |
JP4166974B2 (en) | Pixel scratch detection / correction device | |
US11889241B2 (en) | Image sensing device for detecting and correcting color noise of a target pixel value and operating method thereof | |
KR20080015545A (en) | Method of detecting defect pixel and apparatus used in the same | |
JP6261353B2 (en) | Imaging apparatus and imaging method | |
JP2016139841A (en) | Image processing device and method and program |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
AS | Assignment |
Owner name: INTELLECTUAL VENTURES II LLC, DELAWARE Free format text: MERGER;ASSIGNOR:CROSSTEK CAPITAL, LLC;REEL/FRAME:026637/0632 Effective date: 20110718 |
|
FPAY | Fee payment |
Year of fee payment: 8 |
|
MAFP | Maintenance fee payment |
Free format text: PAYMENT OF MAINTENANCE FEE, 12TH YEAR, LARGE ENTITY (ORIGINAL EVENT CODE: M1553); ENTITY STATUS OF PATENT OWNER: LARGE ENTITY Year of fee payment: 12 |