JP5035646B2 - Image processing apparatus and method, and program - Google Patents
Image processing apparatus and method, and program Download PDFInfo
- Publication number
- JP5035646B2 JP5035646B2 JP2010163165A JP2010163165A JP5035646B2 JP 5035646 B2 JP5035646 B2 JP 5035646B2 JP 2010163165 A JP2010163165 A JP 2010163165A JP 2010163165 A JP2010163165 A JP 2010163165A JP 5035646 B2 JP5035646 B2 JP 5035646B2
- Authority
- JP
- Japan
- Prior art keywords
- image
- processing unit
- images
- pixel
- value
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
- 238000012545 processing Methods 0.000 title claims description 606
- 238000000034 method Methods 0.000 title description 152
- 238000004364 calculation method Methods 0.000 claims description 168
- 238000006243 chemical reaction Methods 0.000 claims description 104
- 238000012937 correction Methods 0.000 claims description 68
- 239000006185 dispersion Substances 0.000 claims description 23
- 230000000875 corresponding effect Effects 0.000 claims description 20
- 230000002093 peripheral effect Effects 0.000 claims description 14
- 230000002596 correlated effect Effects 0.000 claims description 10
- 238000000605 extraction Methods 0.000 claims description 5
- 238000012986 modification Methods 0.000 claims 2
- 230000004048 modification Effects 0.000 claims 2
- 230000001131 transforming effect Effects 0.000 claims 2
- 230000008569 process Effects 0.000 description 130
- 230000015654 memory Effects 0.000 description 112
- 238000005070 sampling Methods 0.000 description 37
- 230000009466 transformation Effects 0.000 description 33
- 230000006870 function Effects 0.000 description 31
- 230000004075 alteration Effects 0.000 description 15
- 230000009467 reduction Effects 0.000 description 15
- 238000010586 diagram Methods 0.000 description 14
- 238000012417 linear regression Methods 0.000 description 8
- 238000013507 mapping Methods 0.000 description 8
- 230000014509 gene expression Effects 0.000 description 7
- 238000003384 imaging method Methods 0.000 description 7
- 230000003287 optical effect Effects 0.000 description 6
- 239000004065 semiconductor Substances 0.000 description 5
- 239000000284 extract Substances 0.000 description 4
- 230000035945 sensitivity Effects 0.000 description 4
- 230000003595 spectral effect Effects 0.000 description 4
- 238000009792 diffusion process Methods 0.000 description 3
- 230000000694 effects Effects 0.000 description 3
- 239000003086 colorant Substances 0.000 description 2
- 239000011159 matrix material Substances 0.000 description 2
- 238000012935 Averaging Methods 0.000 description 1
- 241001326510 Phacelia sericea Species 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000004040 coloring Methods 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 230000000295 complement effect Effects 0.000 description 1
- 238000007906 compression Methods 0.000 description 1
- 230000006835 compression Effects 0.000 description 1
- 238000013144 data compression Methods 0.000 description 1
- 230000006837 decompression Effects 0.000 description 1
- 230000010339 dilation Effects 0.000 description 1
- 230000005611 electricity Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000005484 gravity Effects 0.000 description 1
- 238000009499 grossing Methods 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 229910044991 metal oxide Inorganic materials 0.000 description 1
- 150000004706 metal oxides Chemical class 0.000 description 1
- 239000000203 mixture Substances 0.000 description 1
- 238000003672 processing method Methods 0.000 description 1
- 238000000926 separation method Methods 0.000 description 1
- 230000003313 weakening effect Effects 0.000 description 1
Images
Landscapes
- Studio Devices (AREA)
- Image Processing (AREA)
- Transforming Light Signals Into Electric Signals (AREA)
- Color Television Image Signal Generators (AREA)
- Processing Of Color Television Signals (AREA)
Description
本発明は、画像処理装置および方法、並びにプログラムに関し、特に、固体撮像素子などのイメージセンサを用いて得られた画像信号に混在するノイズ成分の中でも特にイメージセンサで生じるノイズ成分を除去できるようにした画像処理装置および方法、並びにプログラムに関する。 The present invention relates to an image processing apparatus, method, and program, and in particular, can remove noise components generated by an image sensor among noise components mixed in an image signal obtained by using an image sensor such as a solid-state imaging device. The present invention relates to an image processing apparatus and method, and a program.
ノイズを含んだ信号から信号成分とノイズ成分を分離する処理は信号処理の最大の関心事であり、非常に多種多様の技術がこれまでに開発されてきた。画像信号の場合、特に撮像時にイメージセンサ内部で生じるランダムなノイズ成分が問題となっている。イメージセンサ起因のノイズにもいろいろな種類があるが、そのなかでも、クロマ成分に混在するノイズであって、画像を観察したときに色ムラあるいは色ズレという現象として認識されるノイズが、改善されることにより、高画質化が期待される。 The process of separating a signal component and a noise component from a noisy signal is the greatest concern in signal processing, and a great variety of techniques have been developed so far. In the case of an image signal, a random noise component generated inside the image sensor particularly during imaging is a problem. There are various types of noise caused by image sensors. Among them, noise that is mixed in chroma components and recognized as a phenomenon of color unevenness or color shift when observing an image has been improved. Therefore, high image quality is expected.
このようなクロマ成分に混在するノイズの原因としては、少なくとも以下の2点が挙げられる。 The cause of noise mixed in such chroma components includes at least the following two points.
第1点としては、チャネル間で独立にランダムノイズが発生していることが挙げられる。すなわち、固体撮像素子は、通常それ自体が幅広い分光感度を持っているので、カラー画像を撮像する場合、カラーフィルタなどで分光感度を変えた複数(通常3種類)のイメージセンサが利用される。この場合、3チップの固体撮像素子を用いてそれぞれに独立した異なる分光感度を持たせる方法と、1チップのみで、画素単位で分光感度を変える方法とがある。しかしながら、いずれの方法においてもそれぞれのチャネル(色)の信号は独立した異なるイメージセンサによって獲得されるので、イメージセンサで発生するランダムノイズも当然のことながらチャネル間に独立に発生することになる。結果として、クロマ成分に独立なノイズ成分が生じてしまう。 The first point is that random noise is generated independently between channels. That is, since the solid-state imaging device usually has a wide spectral sensitivity, when imaging a color image, a plurality (usually three types) of image sensors whose spectral sensitivity is changed by a color filter or the like is used. In this case, there are a method of giving independent and different spectral sensitivities using a three-chip solid-state imaging device, and a method of changing spectral sensitivities in units of pixels with only one chip. However, in either method, since the signals of the respective channels (colors) are acquired by independent and different image sensors, it is natural that the random noise generated by the image sensors is also generated independently between the channels. As a result, a noise component independent of the chroma component is generated.
また、第2の点としては、光学系の色収差が原因となっていることが挙げられる。すなわち、色収差は、波長ごとに屈折率が異なるため、色によって収差の出方が異なることにより発生するものであるが、この色収差により特定のチャネルの画像だけがぼけたり、被写体のエッジ部分で位置がずれたりという現象が発生する。結果として、この現象が、上述した色ムラあるいは色ズレとして観察されてしまう。 The second point is caused by chromatic aberration of the optical system. In other words, chromatic aberration is caused by the difference in the refractive index for each wavelength, so that the appearance of the aberration varies depending on the color. However, this chromatic aberration causes only the image of a specific channel to be blurred or positioned at the edge of the subject. The phenomenon of misalignment occurs. As a result, this phenomenon is observed as the color unevenness or color shift described above.
そこで、このようなクロマ成分に混在するノイズを除去する技術が提案されている。 Therefore, a technique for removing noise mixed in such chroma components has been proposed.
例えば、画像の高輝度領域など色収差によって色ズレを生じやすい領域を輝度信号をたよりに検出し、検出した領域に対して適度に膨張処理したのち、膨張させた領域内の色差信号に平滑化処理をおこなうものがある(例えば、特許文献1参照)。 For example, areas that are prone to color shift due to chromatic aberration, such as high-luminance areas of the image, are detected based on the luminance signal, and the detected area is appropriately expanded, and then the color difference signal in the expanded area is smoothed. (For example, refer to Patent Document 1).
また、画像中の被写体エッジ領域以外については、色差信号に高周波はあまりないという仮定から、エッジ領域以外の領域に対しては、平均値処理によって高周波成分を除去した色差信号を算出することで色差ノイズを除去するものがある(例えば、特許文献2参照)。同様に輝度信号に高周波成分がないところでは色差信号にも高周波成分はあまりないという仮定に基づいて色差ノイズを除去するものがある(例えば、特許文献3参照)。 For areas other than the object edge area in the image, the color difference signal is calculated by calculating a color difference signal from which high-frequency components have been removed by averaging processing for areas other than the edge area, assuming that the color difference signal does not have a high frequency. Some devices remove noise (see, for example, Patent Document 2). Similarly, there is a technique that removes color difference noise based on the assumption that there are not many high-frequency components in the color difference signal where there is no high-frequency component in the luminance signal (see, for example, Patent Document 3).
以上の従来技術は、イメージセンサ出力から輝度信号と色差信号を生成した後に行うことができるものであるが、イメージセンサが原色(RGB)信号を出力するような場合にRGB信号においてクロマ成分のノイズを除去する技術として、RGB画像に対し、局所的なR-G相関係数とB-G相関係数を算出し、それぞれの相関係数に基づいてRとBに対する補正値を算出することによって、特に被写体エッジにおける色ズレを効果的に補正しようとするものがある(例えば、特許文献4参照)。 The above prior art can be performed after the luminance signal and the color difference signal are generated from the output of the image sensor. However, when the image sensor outputs the primary color (RGB) signal, the noise of the chroma component in the RGB signal. As a technology to remove the image, local RG correlation coefficient and BG correlation coefficient are calculated for RGB images, and correction values for R and B are calculated based on the respective correlation coefficients. Some attempt to effectively correct the color misalignment in (see, for example, Patent Document 4).
しかしながら、上述した技術においては、例えば、特許文献1に記載されている高輝度領域の色収差による色ズレに対処する技術では、適切な効果を得るためには画像上に発生する色収差の大きさに応じて膨張処理や伝播・拡散処理をおこなう広さを調整することが必要である。色収差の大きさはイメージセンサの画素数や光学系の性能に依存し、場合によっては数十画素(orライン)規模の膨張処理や伝播・拡散処理が必要となりうる。膨張処理や伝播・拡散処理は均一な局所処理を全画素に対しておこなうことを複数回繰り返す処理なので、それらをハードウェアで実現することを検討した場合、繰り返し回数に比例したフレームメモリへのアクセス回数、若しくは相当量のディレイラインの実装が必要となり、回路規模が大きくなりすぎてしまい、現実的ではない。
However, in the technique described above, for example, in the technique for dealing with the color shift due to the chromatic aberration in the high luminance region described in
また、特許文献1乃至3に記載されている技術は、輝度信号に基づいて、色差信号に平滑化処理をおこなう場所を限定し、限定された領域において色差信号が平滑化されることによりノイズが低減する、という共通点がある。すなわち、これらの技術においてはクロマ成分のノイズを除去する代償として色差信号の高周波成分が失われてしまう恐れがある。
In addition, the techniques described in
一方、特許文献4に記載されている技術は、RGBチャネル間の相関の強さに基づいて、補正すべきチャネル(通常はRとB)の補正値を算出するものである。この補正値は参照されるチャネル(通常はG)の高周波成分に基づいて、補正すべきチャネルの適切な高周波成分が含まれるように算出されるので、この手法を用いれば上述した特許文献1乃至3の技術におけるクロマ成分の高周波成分を劣化させないようにすることが可能である。
On the other hand, the technique described in Patent Document 4 calculates a correction value of a channel to be corrected (usually R and B) based on the strength of correlation between RGB channels. Since this correction value is calculated based on the high-frequency component of the channel to be referenced (usually G) so as to include an appropriate high-frequency component of the channel to be corrected, if this method is used, the above-described
しかしながら、近年イメージセンサの画素数増大にともない、色収差による色ズレやチャネル間に独立なランダムノイズが低周波成分にも拡大し、特許文献4で示されている手法のような局所的な演算で高周波成分のクロマ成分ノイズを除去するだけでは不十分な状況になりつつある。 However, with the increase in the number of pixels of image sensors in recent years, color misregistration due to chromatic aberration and random noise independent between channels have expanded to low frequency components, and local computations such as the method disclosed in Patent Document 4 have been performed. It is becoming inadequate to simply remove high-frequency chroma noise.
本発明はこのような状況に鑑みてなされたものであり、特に、固体撮像素子などのイメージセンサを用いて得られた画像信号のクロマ成分に混在するノイズ成分を効率よく除去し、色ムラや色ズレという現象を抑制するものである。 The present invention has been made in view of such a situation, and in particular, a noise component mixed in a chroma component of an image signal obtained using an image sensor such as a solid-state image sensor is efficiently removed, and color unevenness or This suppresses the phenomenon of color misregistration.
本発明の一側面の画像処理装置は、各画素について、その近傍の局所領域において、線形な関係があると仮定できる3個以上の画像を多重解像度画像の複数のレイヤ画像に変換する多重解像度変換手段と、多重解像度変換手段により変換されたレイヤ画像のうち、最低解像度のレイヤ画像を除く各レイヤ画像において、3個以上の画像中の1つの画像を、3個以上の画像間の相関に基づいて修正する修正手段と、修正手段により修正された各レイヤ画像を多重解像度逆変換する多重解像度逆変換手段と、注目画素の周辺から3個以上の画像のそれぞれの注目画素に対応した位置に配置される周辺画素の画素値を抽出する抽出手段と、3個以上の画像のそれぞれについて、周辺画素の画素値に基づいて、分散値を算出する分散値算出手段と、3個以上の画像のそれぞれの分散値に基づいて、3個以上の画像のうちのいずれか1個の特定画像の注目画素の画素値を、特定画像以外の画像における注目画素の画素値として選択する選択手段とを備えることを特徴とする。 An image processing apparatus according to an aspect of the present invention is a multiresolution conversion that converts, for each pixel, three or more images that can be assumed to have a linear relationship in a local region in the vicinity thereof into a plurality of layer images of a multiresolution image. And a layer image converted by the multi-resolution conversion unit, in each layer image excluding the lowest resolution layer image, one image among the three or more images is based on the correlation between the three or more images. Correcting means for correcting the image, multi-resolution inverse converting means for performing multi-resolution inverse conversion on each layer image corrected by the correcting means, and arranging the three or more images from the periphery of the target pixel at positions corresponding to the target pixels. Extracting means for extracting the pixel values of the peripheral pixels to be calculated, variance value calculating means for calculating the variance values for each of the three or more images based on the pixel values of the peripheral pixels, and 3 Selection for selecting the pixel value of the target pixel of any one specific image of the three or more images as the pixel value of the target pixel in an image other than the specific image based on the respective variance values of the above images Means .
修正手段には、3個以上の画像のそれぞれの周辺画素の画素値に基づいて、3個以上の画像の共分散値を算出する共分散値算出手段と、3個以上の画像のそれぞれの分散値、および共分散値の全ての組み合わせの相関を算出する相関算出手段とを設けるようにさせることができ、選択手段には、3個以上の画像の全ての組み合わせで相関が弱い場合、3個以上の画像のうちのいずれか1個の特定画像の注目画素の画素値を、特定画像以外の画像における注目画素の画素値として選択させるようにすることができる。 The correcting means includes covariance value calculating means for calculating covariance values of three or more images based on pixel values of respective peripheral pixels of three or more images, and variances of each of the three or more images. Correlation calculation means for calculating the correlation of all combinations of values and covariance values can be provided , and the selection means includes three if the correlation is weak in all combinations of three or more images. The pixel value of the target pixel of any one specific image of the above images can be selected as the pixel value of the target pixel in an image other than the specific image.
選択手段には、3個以上の画像のそれぞれの分散値がいずれも所定の範囲内にある場合、3個以上の画像のうちのいずれか1個の特定画像の注目画素の画素値を、特定画像以外の画像における注目画素の画素値として選択させるようにすることができる。 The selection means specifies the pixel value of the target pixel of any one specific image of the three or more images when each of the variance values of the three or more images is within a predetermined range. It can be made to select as a pixel value of an attention pixel in an image other than an image.
多重解像度画像変換手段には、3個以上の画像を多重解像度画像の複数のレイヤ画像に変換する前に入力画像に非線形変換を適用する非線形変換手段をもうけるようにさせることができる。 The multi-resolution image conversion means can be provided with non-linear conversion means for applying non-linear conversion to the input image before converting three or more images into a plurality of layer images of the multi-resolution image.
非線形変換手段には、対数変換により、3個以上の画像を多重解像度画像の複数のレイヤ画像に変換することを特徴とする請求項4に記載の画像処理装置。 5. The image processing apparatus according to claim 4, wherein the nonlinear conversion means converts three or more images into a plurality of layer images of a multi-resolution image by logarithmic conversion.
非線形変換手段には、ガンマ補正処理により、3個以上の画像を多重解像度画像の複数のレイヤ画像に変換させるようにすることができる。 The nonlinear conversion means can convert three or more images into a plurality of layer images of a multi-resolution image by gamma correction processing.
本発明の一側面の画像処理方法は、各画素について、その近傍の局所領域において、線形な関係があると仮定できる3個以上の画像を多重解像度画像の複数のレイヤ画像に変換する多重解像度変換ステップと、多重解像度変換ステップの処理により変換されたレイヤ画像のうち、最低解像度のレイヤ画像を除く各レイヤ画像において、3個以上の画像中の1つの画像を、3個以上の画像間の相関に基づいて修正する修正ステップと、修正ステップの処理により修正された各レイヤ画像を多重解像度逆変換する多重解像度逆変換ステップと、注目画素の周辺から3個以上の画像のそれぞれの注目画素に対応した位置に配置される周辺画素の画素値を抽出する抽出ステップと、3個以上の画像のそれぞれについて、周辺画素の画素値に基づいて、分散値を算出する分散値算出ステップと、3個以上の画像のそれぞれの分散値に基づいて、3個以上の画像のうちのいずれか1個の特定画像の注目画素の画素値を、特定画像以外の画像における注目画素の画素値として選択する選択ステップとを含むことを特徴とする。 According to an image processing method of one aspect of the present invention, for each pixel, multi-resolution conversion that converts three or more images that can be assumed to have a linear relationship in a local region in the vicinity thereof to a plurality of layer images of the multi-resolution image. Of the layer images converted by the processing of the step and the multi-resolution conversion step, in each layer image excluding the lowest resolution layer image, one of the three or more images is correlated with the three or more images. A correction step for correcting based on the multi-resolution, a multi-resolution reverse conversion step for performing multi-resolution reverse conversion on each layer image corrected by the processing of the correction step, and corresponding target pixels of three or more images from the periphery of the target pixel An extraction step of extracting the pixel values of the peripheral pixels arranged at the position, and for each of the three or more images, based on the pixel values of the peripheral pixels, Based on the variance value calculating step for calculating the variance value and the variance value of each of the three or more images, the pixel value of the target pixel of any one of the three or more images is determined as the specific image. And a selection step of selecting as a pixel value of a target pixel in an image other than the above.
本発明の一側面のプログラムは、各画素について、その近傍の局所領域において、線形な関係があると仮定できる3個以上の画像を多重解像度画像の複数のレイヤ画像に変換する多重解像度変換ステップと、多重解像度変換ステップの処理により変換されたレイヤ画像のうち、最低解像度のレイヤ画像を除く各レイヤ画像において、3個以上の画像中の1つの画像を、3個以上の画像間の相関に基づいて修正する修正ステップと、修正ステップの処理により修正された各レイヤ画像を多重解像度逆変換する多重解像度逆変換ステップと、注目画素の周辺から3個以上の画像のそれぞれの注目画素に対応した位置に配置される周辺画素の画素値を抽出する抽出ステップと、3個以上の画像のそれぞれについて、周辺画素の画素値に基づいて、分散値を算出する分散値算出ステップと、3個以上の画像のそれぞれの分散値に基づいて、3個以上の画像のうちのいずれか1個の特定画像の注目画素の画素値を、特定画像以外の画像における注目画素の画素値として選択する選択ステップとを含む処理をコンピュータに実行させることを特徴とする。 A program according to one aspect of the present invention includes a multi-resolution conversion step of converting three or more images that can be assumed to have a linear relationship in each local pixel to a plurality of layer images of the multi-resolution image. Based on the correlation between the three or more images, one of the three or more images in each layer image excluding the lowest resolution layer image among the layer images converted by the multi-resolution conversion step process. A correction step for correcting the image, a multi-resolution inverse conversion step for performing multi-resolution reverse conversion on each layer image corrected by the processing of the correction step, and positions corresponding to the target pixels of three or more images from the periphery of the target pixel The extraction step of extracting the pixel values of the peripheral pixels arranged in the image and the three or more images are divided based on the pixel values of the peripheral pixels. Based on the variance value calculating step for calculating the value and the variance value of each of the three or more images, the pixel value of the target pixel of any one of the three or more images is set to a value other than the specific image. And a selection step of selecting as a pixel value of a pixel of interest in the image of (2 ).
本発明の一側面においては、3個以上の画像が多重解像度画像の複数のレイヤ画像に変換され、変換されたレイヤ画像のうち、最低解像度のレイヤ画像を除く各レイヤ画像において、3個以上の画像中の1つの画像が、3個以上の画像間の相関に基づいて修正され、修正された各レイヤ画像が多重解像度逆変換され、注目画素の周辺から3個以上の画像のそれぞれの注目画素に対応した位置に配置される周辺画素の画素値が抽出され、3個以上の画像のそれぞれについて、周辺画素の画素値に基づいて、分散値が算出され、3個以上の画像のそれぞれの分散値に基づいて、3個以上の画像のうちのいずれか1個の特定画像の注目画素の画素値が、特定画像以外の画像における注目画素の画素値として選択される。 In one aspect of the present invention, three or more images are converted into a plurality of layer images of a multi-resolution image, and among the converted layer images, three or more images are included in each layer image excluding the lowest resolution layer image. One image in the image is corrected based on the correlation between the three or more images, and each of the corrected layer images is subjected to inverse multi-resolution conversion, so that each target pixel of the three or more images from the periphery of the target pixel The pixel values of the peripheral pixels arranged at the positions corresponding to are extracted, and for each of the three or more images, the variance value is calculated based on the pixel values of the peripheral pixels, and the variance of each of the three or more images is calculated. based on the value, the pixel value of the pixel of interest any one specific image of the three or more images, Ru is selected as the pixel value of the pixel of interest in the image other than the specific image.
本発明の画像処理装置は、独立した装置であっても良いし、画像処理を行うブロックであっても良い。 The image processing apparatus of the present invention may be an independent apparatus or a block that performs image processing.
本発明によれば、固体撮像素子などのイメージセンサを用いて得られた画像信号のクロマ成分に混在するノイズ成分を効率よく除去し、色ムラや色ズレという現象を抑制することが可能となる。 According to the present invention, it is possible to efficiently remove a noise component mixed in a chroma component of an image signal obtained using an image sensor such as a solid-state imaging device, and to suppress a phenomenon such as color unevenness or color misregistration. .
以下、図を参照して、本発明の実施の形態について説明する。 Hereinafter, embodiments of the present invention will be described with reference to the drawings.
図1は、本発明を適用した演算処理を実行するデジタルスチルカメラ1の一実施の形態の構成を示すブロック図である。
FIG. 1 is a block diagram showing a configuration of an embodiment of a digital
図1に示すように、デジタルスチルカメラ1は、レンズ11、絞り12、イメージセンサ13、相関2重サンプリング(CDS:Correlated Double Sampling)回路14、A/D(Analog/Digital)コンバータ15、DSP(Digital Signal Processor)ブロック16、タイミングジェネレータ17、D/A(Digital/Analog)コンバータ18、ビデオエンコーダ19、表示部20、コーデック(CODEC:COmpression/DECompression)処理部21、メモリ22、CPU(Central Processing Unit)23、および、操作入力部24から構成される。
As shown in FIG. 1, a digital
イメージセンサ13は、光情報を電気信号に変換するCCD(Charge Coupled Devices)やCMOS(Complementary Metal Oxide Semiconductor)などに代表される(光電変換)半導体素子であり、光を電気に変換する受光素子(画素)を複数個並べ、光の変化を画素ごとに独立して電気信号に変換するものである。相関2重サンプリング回路14は、イメージセンサ13の出力信号に含まれるノイズのうちの主な成分であるリセットノイズを、出力の各画素信号のうち、映像信号期間をサンプリングしたものと、基準期間をサンプリングしたものとを引き算することにより除去する回路である。A/Dコンバータ15は、供給されたノイズ除去後のアナログ信号をデジタル信号に変換する。
The
DSPブロック16は、信号処理用プロセッサと画像用RAM(Random Access Memory)を持つブロックで、信号処理用プロセッサが画像用RAMに格納された画像データに対して、予めプログラムされた画像処理、または、ハードウェアによる演算処理として構成された画像処理を行うものである。タイミングジェネレータ17は、イメージセンサ13を駆動するために必要な、水平および垂直の各種駆動パルス、並びに、アナログフロント処理で用いるパルスを、基準クロックに同期して発生させるロジック回路である。また、タイミングジェネレータ17により発生されるタイミングクロックは、バス25を介して、コーデック処理部21、メモリ22、および、CPU23にも供給されている。
The
D/Aコンバータ18は、供給されたデジタル信号をアナログ信号に変換して出力する。ビデオエンコーダ19は、供給されたアナログ信号を、表示部20において表示可能な形式のビデオデータにエンコードする。表示部20は、例えば、LCD(Liquid Crystal Display)などで構成され、ビデオエンコーダ19から供給されたビデオ信号を表示する。
The D /
コーデック処理部21は、例えばJPEG(Joint Picture Experts Group)などの、デジタル画像データの圧縮または伸張アルゴリズムによる処理を実行する。メモリ22は、例えば、半導体メモリ、磁気ディスク、光磁気ディスク、または、光ディスクなどにより構成され、CPU23の制御に基づいて、供給されたデータを記憶したり、または、記憶しているデータを出力する。なお、メモリ22は、デジタルスチルカメラ1に対して着脱可能なようになされていても良い。
The
CPU23は、バス25を介して、操作入力部24から供給されたユーザの操作入力を基に、デジタルスチルカメラ1の各部を制御する。操作入力部24は、録画を指令する場合のボタンをはじめとして、例えば、ジョグダイヤル、キー、レバー、ボタン、またはタッチパネルなどにより構成され、ユーザによる操作入力を受ける。
The
レンズ11および絞り12を介して入力された光は、イメージセンサ13に入射され、受光素子での光電変換によって電気信号に変換され、相関2重サンプリング回路14に供給される。相関2重サンプリング回路14は、イメージセンサ13の出力の各画素信号のうち、映像信号期間をサンプリングしたものと、基準期間をサンプリングしたものとを引き算することによりノイズを除去し、A/Dコンバータ15に供給する。A/Dコンバータ15は、供給されたノイズ除去後のアナログ信号をデジタル信号に変換し、DSPブロック16の画像用RAMに一時格納する。
Light input through the
タイミングジェネレータ17は、撮像中の状態において、一定のフレームレートによる画像取り込みを維持するように、イメージセンサ13、相関2重サンプリング回路14、A/Dコンバータ15、および、DSPブロック16を制御する。
The
DSPブロック16は、一定のレートで画素のストリームデータの供給を受け、画像用RAMに一時格納し、信号処理用プロセッサにおいて、一時格納された画像データに対して、後述する画像処理を実行する。DSPブロック16は、画像処理の終了後、CPU23の制御に基づいて、その画像データを表示部20に表示させる場合は、D/Aコンバータ18に、メモリ22に記憶させる場合は、コーデック処理部21に画像データを供給する。
The
D/Aコンバータ18は、DSPブロック16から供給されたデジタルの画像データをアナログ信号に変換し、ビデオエンコーダ19に供給する。ビデオエンコーダ19は、供給されたアナログの画像信号を、ビデオ信号に変換し、表示部20に出力して表示させる。すなわち、表示部20は、デジタルスチルカメラ1において、カメラのファインダの役割を担っている。コーデック処理部21は、DSPブロック16から供給された画像データに対して、所定の方式の符号化を施し、符号化された画像データをメモリ22に供給して記憶させる。
The D /
また、コーデック処理部21は、操作入力部24からユーザの操作入力を受けたCPU23の制御に基づいて、メモリ22に記憶されているデータのうち、ユーザに指定されたデータを読み取り、所定の復号方法で復号し、復号した信号をDSPブロック16に出力する。これにより、復号された信号が、DSPブロック16を介してD/Aコンバータ18に供給され、アナログ変換された後、ビデオエンコーダ19によりエンコードされて、表示部20に表示される。
The
次に、図2を参照して、DSPブロック16により実現される機能の一実施の形態の構成について説明する。
Next, the configuration of an embodiment of the function realized by the
デモザイク処理部41は、入力されたモザイク画像の各画素位置のRGB(Red,Green,Blueの光の3原色)の画像信号の全ての強度を揃え、それぞれ非線形変換処理部42に供給する。尚、ここでいうモザイク画像は、図1のA/Dコンバータ15によってデジタイズされ、DSPブロック16に入力される画像信号である。モザイク画像は各画素にRGBのどれかの色に対応する強度信号が格納されており、通常、Bayer配列と呼ばれる色配列に従って配置されている。
The
非線形変換処理部42は、RGBの画像信号について、非線形変換関数を用いて変換処理し、それぞれノイズ除去処理部43に供給する。尚、非線形変換処理部42については、詳細を後述する。
The non-linear
ノイズ除去処理部43は、非線形変換処理部42より供給されたRGBの画像信号についてノイズを除去して非線形逆変換処理部44に供給する。尚、ノイズ除去処理部43については、詳細を後述する。
The noise
非線形逆変換処理部44は、ノイズ除去処理部43より供給されてくる、ノイズが除去されたRGBの画像信号を、非線形変換処理部42の変換で利用した非線形変換関数により逆変換し、ホワイトバランス処理部45に供給する。尚、非線形逆変換処理部44については、詳細を後述する。
The nonlinear inverse
ホワイトバランス処理部45は、非線形変換処理部42、ノイズ除去処理部43、および非線形逆変換処理部44によりノイズ除去されたRGBのそれぞれの画像信号に適切な係数を掛けることで、被写体領域の色バランスが無彩色になるように処理し、ガンマ補正処理部46に供給する。
The white
ガンマ補正処理部46は、ホワイトバランス処理部45によりホワイトバランスが調整されたRGBのそれぞれの画像信号の各画素強度をガンマ補正し、YC変換処理部47に出力する。YC変換処理部47は、ガンマ補正された3チャネル画像信号にYCマトリックス処理を施すと共に、クロマ成分に対する帯域制限を掛けてY画像およびC画像を生成し、コーデック処理部21に対してYCbCr画像信号として出力する。
The gamma
尚、図2においては、デモザイク処理部41の後段に非線形変換処理部42、ノイズ除去処理部43、および非線形逆変換処理部44を配置する構成となっているが、これらの配置順序は、図2で示されるものに限らず、例えば、デモザイク処理部41の前段に非線形変換処理部42、ノイズ除去処理部43、および非線形逆変換処理部44を配置し、モザイク画像のノイズ除去を行った後、デモザイク処理を実行するようにしても良い。ただし、この場合、モザイク画像の各画素はRGBのうちのいずれか1色の値しかもたないので、RGB毎の非線形変換処理部42、ノイズ除去処理部43、および非線形逆変換処理部44を設け、各画素毎の処理を色によって振り分けるようにする必要がある。
In FIG. 2, a non-linear
また、非線形変換処理部42、ノイズ除去処理部43、および非線形逆変換処理部44は、それぞれ単独でもノイズ除去処理を実行することは可能である。すなわち、例えば、図2の構成から非線形変換処理部42、および非線形逆変換処理部44を省き、ノイズ除去処理部43のみの構成でもノイズを除去することは可能である。また、非線形変換処理部42、および非線形逆変換処理部44は、ノイズ除去処理部43以外のノイズ除去処理能力を持った構成と組み合わせるようにしてもノイズを除去する効果がある。
In addition, each of the nonlinear
次に、図3を参照して、非線形変換処理部42の詳細な機能の一実施の形態の構成について説明する。尚、非線形変換処理部42はRGB各チャネルに対して同一の構成である。また、図3においては、1チャネル分の構成が示されている。
Next, the configuration of an embodiment of the detailed functions of the nonlinear
変換曲線LUT62は、非線形変換に用いられる関数形状がLUTの形式で格納している。マッピング処理部61は、変換曲線LUT62より非線形変換に用いられる関数形状のLUTに基づいて、入力された画像の各画素に対して非線形変換してノイズ除去部43に出力する。
The
この非線形変換処理部42による非線形変換処理は、入射光強度にリニアな(線形的な)イメージセンサ13の出力を、ノンリニアな(非線形的な)特性の輝度値に変換することを目的とした変換処理であり、この処理により後段のノイズ除去処理で利用するチャネル間の線形回帰計算の安定度を向上させている。すなわち、例えば、高コントラストなエッジのような画像の場合、リニアな輝度では重心からみた輝度値の分布に偏りが生じやすく、このような状況で線形回帰計算を実行するよりも、適切な非線形変換により輝度値を変換し分布の偏りを補正した後に線形回帰計算を実行する方が計算が安定する。本発明にとって適切な非線形変換とは上に凸の滑らかな単調増加曲線であり、例えばガンマ補正などに利用されるべき乗曲線(指数は1より小さい)または、対数曲線などが有効である。
The non-linear conversion processing by the non-linear
次に、図4を参照して、ノイズ除去処理部43の機能の一実施の形態の構成について説明する。
Next, a configuration of an embodiment of the function of the noise
尚、図4で示されるノイズ除去処理部43の構成は、GとRの2チャネルの入力によりRのノイズを除去するようになっている。実際のノイズ除去処理部43の構成としては、これに加えて、同様の構成でGとBを入力としてBのノイズを除去する構成が必要である。Gに対してRとBの相関がない成分が除去されればクロマ成分ノイズは除去されるので、この例においては、Gのノイズを除去する構成は設けられていない。しかしながら、実用においては、Gのノイズを何らかの構成により除去した後に、RとBのそれぞれのノイズを除去する方がより適切である。尚、ここでは、Gは、特に処理されることなく、そのまま後段に出力されるものとする。
The configuration of the noise
多重解像度変換処理部81−1,81−2は、それぞれGおよびRの入力画像を複数の多重解像度の表現形式の画像に変換し、変換された複数の各レイヤの画像信号をそれぞれ対応するレイヤ0画像メモリ82−1,82−2、レイヤ1画像メモリ83−1,83−2、レイヤ2画像メモリ84−1,84−2、およびレイヤ3画像メモリ85−1,85−2に格納する。
The multi-resolution conversion processing units 81-1 and 81-2 convert the input images of G and R into images of a plurality of multi-resolution representation formats, respectively, and convert the converted image signals of the respective layers to the corresponding layers, respectively. 0 image memories 82-1 and 82-2,
尚、多重解像度変換処理部81−1,82−2における多重解像度表現にはいろいろな形式があるが、例えば、Laplacian Pyramid形式や、wavelet変換を用いた多重解像度形式を利用するようにしてもよい。尚、多重解像度変換処理部81は、Laplacian Pyramid形式であるものとして説明を進める。
There are various formats for the multi-resolution expression in the multi-resolution conversion processing units 81-1 and 82-2. For example, a Laplacian Pyramid format or a multi-resolution format using wavelet conversion may be used. . The multi-resolution
修正処理部86−1乃至86−3は、最低解像度のレイヤ以外のレイヤの画像にそれぞれ対応し、各レイヤのG、Rチャネルの画像より、ノイズが混在したRチャネルの各画素値を修正してノイズを除去し、それぞれレイヤ0修正画像メモリ87、レイヤ1修正画像メモリ88、および、レイヤ2修正画像メモリ89に格納する。
The correction processing units 86-1 to 86-3 respectively correspond to images of layers other than the lowest resolution layer, and correct each pixel value of the R channel mixed with noise from the G and R channel images of each layer. The noise is removed and stored in the layer 0 corrected
多重解像度逆変換処理部90は、レイヤ0修正画像メモリ87、レイヤ1修正画像メモリ88、および、レイヤ2修正画像メモリ89より各レイヤのノイズ除去されたRチャネル画像を読み出すと共に、最低解像度のレイヤのRチャネル画像を用いて、多重解像度逆変換処理を実行し、元画像と同じ解像度の画像へ統合し、非線形逆変換処理部44に出力する。
The multi-resolution inverse
次に、図5を参照して、Laplacian pyramid形式の多重解像度画像を生成する多重解像度変換処理部81の機能の一実施の形態の構成について説明する。
Next, the configuration of an embodiment of the function of the multiresolution
多重解像度変換処理部81の縮小処理部111−1乃至111−3は、サブサンプリングによって入力された画像の画像サイズを例えば半分に縮小し(例えば、半分の解像度の画像に変換し)、後段に出力する。
The reduction processing units 111-1 to 111-3 of the multi-resolution
拡大処理部113−1乃至113−3は、スーパーサンプリングによって入力された画像の画像サイズを例えば2倍に拡大し(例えば、2倍の解像度の画像に変換し)、後段に出力する。 The enlargement processing units 113-1 to 113-3 enlarge the image size of the image input by supersampling, for example, by 2 times (for example, convert it to an image having a resolution of 2 times), and output it to the subsequent stage.
減算処理部112−1乃至112−3は、縮小処理部111により縮小された後、拡大処理部113により拡大された画像と、その元画像のそれぞれの各画素について差分を求め、その差分からなる画像をレイヤごとの画像として出力する。すなわち、減算処理部112−1乃至112−3は、それぞれレイヤ0乃至3の画像を生成し、それぞれレイヤ0画像メモリ82、レイヤ1画像メモリ83、レイヤ2画像メモリ84、およびレイヤ3画像メモリ85に格納させる。
The subtraction processing units 112-1 to 112-3 obtain a difference for each pixel of the image that has been reduced by the reduction processing unit 111 and then enlarged by the enlargement processing unit 113 and the original image, and includes the difference. The image is output as an image for each layer. That is, the subtraction processing units 112-1 to 112-3 generate images of layers 0 to 3, respectively, and a layer 0
縮小処理部111により縮小された後、拡大処理部113により拡大された画像は、元画像の高周波成分が除去されることになるため、元画像との差分が計算されることにより、高周波成分のみのが抽出された画像が生成されることになる。 Since the high-frequency component of the original image is removed from the image that has been reduced by the reduction processing unit 111 and then enlarged by the enlargement processing unit 113, only the high-frequency component is calculated by calculating the difference from the original image. The extracted image is generated.
このため、減算処理部112−1は、それぞれ入力された画像の高周波成分のみからなる画像をレイヤ0画像として生成し、減算処理部112−2は、入力された画像のレイヤ0画像よりも低い周波数成分の画像をレイヤ1画像として生成する。また、減算処理部112−3は、入力された画像のレイヤ1画像よりも低い周波数成分の画像をレイヤ2画像として生成する。尚、縮小処理部111より出力される画像は、レイヤ2以下の帯域成分を備えたレイヤ3画像となる。すなわち、多重解像度変換処理部81は入力された画像を、帯域分離して各レイヤ0乃至3の画像を出力しているとも言える。
For this reason, the subtraction processing unit 112-1 generates an image composed of only the high-frequency component of each input image as a layer 0 image, and the subtraction processing unit 112-2 is lower than the layer 0 image of the input image. A frequency component image is generated as a
次に、図6を参照して、修正処理部86の機能の一実施の形態の構成について説明する。
Next, the configuration of an embodiment of the function of the
サンプリング処理部131は、当該するレイヤのGチャネル画像から、注目画素位置に対応して設定される所定位置の近傍画素から複数個のGチャネル画素値をサンプリング(抽出)し、乗算処理部137、分散算出処理部133、および共分散算出処理部136に供給する。サンプリング処理部132は、当該するレイヤのRチャネル画像から、注目画素位置に対応して設定される所定の位置の近傍画素から複数個のRチャネル画素値をサンプリング(抽出)し、共分散算出処理部136に供給する。尚、サンプリング処理部131,132は、注目画素位置に対して設定される同一の所定の位置のG画素値とR画素値を抽出する。
The
分散算出処理部133は、サンプリングされたGの画素値に基づいて、Gの注目画素周辺の分散値を算出し、クリッピング処理部134に供給する。
The variance
共分散算出処理部136は、サンプリングされたGとRの画素値に基づいて、それらの共分散値を算出し、除算処理部135に供給する。クリッピング処理部134は、Gチャネルのサンプルの分散値が所定の閾値より小さい場合、その閾値でクリッピングし、除算処理部135に供給する。除算処理部135は、クリッピング処理部134より供給される分散値により、共分散処理部136より供給される共分散値を除算し、分散値に対する共分散値の割合(共分散値/分散値)として乗算処理部137に供給する。尚、クリッピング処理部135の処理は、後続の除算処理部135が(共分散値/分散値)を算出するため、0割を回避ための処理である。乗算処理部137は、(共分散値/分散値)に注目画素位置のGチャネル画素値を乗じることで注目画素のノイズ除去されたRチャネル画素値を推定し、それを出力する。
The covariance
ここで、修正処理部86の処理の詳細について説明する。
Here, the details of the processing of the
修正処理部86は、チャネル間相関を利用した画素値推定方法により画素値を修正している。より具体的には、チャネル間相関を利用した画素値推定方法は、局所領域に注目した場合、2つのチャネル(例えばGとR)間には線形な関係があるという仮定に基づいて、局所領域内のある画素位置Rの推定値を線形回帰計算によって算出するというものである。
The
例えば、画像中の注目画素周辺の局所領域においてC1チャネル(例えばG)の画素値のサンプル(注目画素の位置に対応する所定の位置の複数の画素の画素値){C11,C12,C13,・・・,C1N}とC2チャネル(例えばR)の画素値のサンプル(注目画素の位置に対応する所定の位置の複数の画素の画素値){C11,C12,C13,・・・,C1N}とが得られたとき、上述した両者間の線形な関係があると仮定することにより、C2チャネルの注目画素位置の輝度推定値C2C’は注目画素位置のC1チャネルの輝度値C1Cから以下の式(1)により推定することができる。 For example, in the local region around the target pixel in the image, a sample of pixel values of the C 1 channel (for example, G) (pixel values of a plurality of pixels at predetermined positions corresponding to the target pixel position) {C 11 , C 12 , C 13 ,..., C 1N } and C 2 channel (for example, R) pixel value samples (pixel values of a plurality of pixels at predetermined positions corresponding to the position of the target pixel) {C 11 , C 12 , C 13 ,..., C 1N } is obtained, the luminance estimated value C 2C ′ of the target pixel position of the C 2 channel is obtained by assuming that there is a linear relationship between the two. Can be estimated from the luminance value C 1C of the C 1 channel by the following equation (1).
ここで、MC1は、その局所領域におけるC1チャネルの期待値、MC2は、C2チャネルの期待値、VC1C2は、C1,C2チャネルの共分散値、VC1C1は、C1チャネルの分散値である。 Here, M C1 is the expected value of the C 1 channel in the local region, M C2 is the expected value of the C 2 channel, V C1C2 is the covariance value of the C 1 and C 2 channels, and V C1C1 is C 1 The variance value of the channel.
また、共分散値VC1C2および分散値VC1C1は、それぞれ以下の式(2),式(3)により求められる。 Further, the covariance value V C1C2 and the variance value V C1C1 are obtained by the following equations (2) and (3), respectively.
式(2),式(3)において、wiは、所定の重み係数である。 In Expressions (2) and (3), w i is a predetermined weight coefficient.
従って、上述した式(1)を算出することでノイズを除去することが可能となる。しかしながら、図4で示されるようにノイズ除去処理部43には、多重解像度変換処理部81が設けられており、修正処理部86は、帯域毎に分離された画像に対して上述した2チャネルの相関を利用して画素値を修正することになる。
Therefore, noise can be removed by calculating the above-described equation (1). However, as shown in FIG. 4, the noise
ところで、多重解像度変換により生成された複数のレイヤの画像においては、画像の直流成分は最低解像度のレイヤに集中するので、それ以外のレイヤでは局所的な画素の期待値は0になる。結果として、多重解像度処理を利用する場合、上述した式(1)乃至式(3)は、以下の式(4)乃至式(6)で置き換えられることになる。 By the way, in the image of a plurality of layers generated by the multi-resolution conversion, the direct current component of the image is concentrated on the layer of the lowest resolution, so that the expected value of the local pixel is 0 in the other layers. As a result, when using multi-resolution processing, the above-described equations (1) to (3) are replaced with the following equations (4) to (6).
従って、図6の分散値算出処理部133は、実質的に式(6)により分散値を算出し、共分散算出処理部136は、式(5)により共分散値を算出し、さらに、乗算処理部137は、式(4)により画素値を修正している(補正している)。
Accordingly, the variance value
さらに、式(5)乃至式(6)の共分散値および分散値の算出処理にあたり、コンピュータによる算出処理で処理負荷の大きな乗算処理を軽減させるため、近似関数を用いて、乗算処理回数を低減させるようにしてもよく、例えば、以下の式(7)乃至式(8)のような近似関数により算出するようにしてもよい。 Further, in the calculation processing of the covariance value and the variance value of the equations (5) to (6), the number of multiplication processing is reduced by using an approximation function in order to reduce the multiplication processing with a large processing load by the calculation processing by the computer. For example, it may be calculated by an approximation function such as the following formulas (7) to (8).
次に、図7を参照して、多重解像度逆変換処理部90の機能の一実施の形態の構成について説明する。
Next, the configuration of an embodiment of the function of the multiresolution inverse
拡大処理部151−1乃至151−3は、多重解像度変換処理部90の拡大処理部113と同様のものであり、スーパーサンプリングによって入力された画像の画像サイズを例えば2倍に拡大し(例えば、2倍の解像度の画像に変換し)、後段に出力する。
The enlargement processing units 151-1 to 151-3 are the same as the enlargement processing unit 113 of the multi-resolution
加算処理部152−1乃至152−3は、それぞれレイヤ0ノイズ除去画像メモリ87、レイヤ1ノイズ除去画像メモリ88、レイヤ2ノイズ除去画像メモリ89、およびレイヤ3画像メモリ85に格納されたレイヤ0ノイズ除去画像乃至レイヤ2ノイズ除去画像、およびレイヤ3画像を読み出し、拡大処理部152−1乃至152−3のそれぞれより供給されてくる画像とを加算して、後段に出力する。
The addition processing units 152-1 to 152-3 are layer 0 noise stored in the layer 0 noise removed
すなわち、拡大処理部151−1は、最低周波成分のレイヤ3ノイズ除去画像を拡大し、レイヤ2ノイズ除去画像と同じサイズの画像にして、加算処理部152−1に供給する。そして加算処理部152−1は、拡大されたレイヤ3ノイズ除去画像とレイヤ2ノイズ除去画像とを加算することにより、レイヤ3乃至レイヤ2までの帯域を持つ画像を生成し、拡大処理部151−2に供給する。
That is, the enlargement processing unit 151-1 enlarges the layer 3 noise-removed image of the lowest frequency component, makes an image of the same size as the
同様にして、拡大処理部151−2は、レイヤ3乃至レイヤ2のノイズ除去画像を拡大し、レイヤ1ノイズ除去画像と同じサイズの画像にして、加算処理部152−2に供給する。そして加算処理部152−2は、拡大されたレイヤ3乃至レイヤ2までのノイズ除去画像とレイヤ1ノイズ除去画像とを加算することにより、レイヤ3乃至レイヤ1までの帯域を持つ画像を生成し、拡大処理部151−3に供給する。
Similarly, the enlargement processing unit 151-2 enlarges the noise-removed images of
さらに、拡大処理部151−3は、レイヤ3乃至レイヤ1のノイズ除去画像を拡大し、レイヤ0ノイズ除去画像と同じサイズの画像にして、加算処理部152−3に供給する。そして加算処理部152−3は、拡大されたレイヤ3乃至レイヤ1までのノイズ除去画像とレイヤ0ノイズ除去画像とを加算することにより、レイヤ3乃至レイヤ0までの帯域の画像を統合し、最終的に元画像に等しい解像度と帯域を持つ画像を出力する
Further, the enlargement processing unit 151-3 enlarges the noise-removed images of layers 3 to 1 to form an image having the same size as the layer 0 noise-removed image and supplies the image to the addition processing unit 152-3. Then, the addition processing unit 152-3 adds the noise-removed images from layer 3 to
次に、図8を参照して、非線形逆変換処理部44の機能の一実施の形態の構成について説明する。
Next, the configuration of an embodiment of the function of the nonlinear inverse
非線形逆変換処理部44は、非線形変換処理部42における変換の逆変換を実行するため、非線形変換処理部42とほぼ同様の構成である。変換曲線LUT172は非線形変換処理部42の変換曲線LUT62と同様の構成であり、共用するようにしてもよいものである。逆マッピング処理部171は、入力された画像の各画素に対して変換曲線LUT172を参照して、非線形逆変換し、ホワイトバランス処理部45に出力する。
The non-linear inverse
次に、図9のフローチャートを参照して、図2のDSPブロック16による画像処理について説明する。
Next, image processing by the
デモザイク処理部41は、モザイク画像が入力されたか否か(フレームメモリから読み込まれたか否か)を判定し、入力されるまで、その処理を繰り返す。例えば、画像が入力されたと判定された場合、ステップS2において、デモザイク処理部41は、入力されたモザイク画像からRGBの3チャンネルの画像信号を生成するデモザイク処理を実行し、生成したRGBの画像信号を非線形変換処理部42に供給する。
The
ステップS3において、非線形変換処理部44のマッピング処理部61は、変換曲線LUT62より非線形変換に用いられる関数形状のLUTに基づいて、入力された画像の各画素に対して非線形変換してノイズ除去部43に出力する。
In step S3, the
ステップS4において、ノイズ除去部43は、ノイズ除去処理を実行し、供給された1つのチャネル画像の各画素についてノイズを除去し、非線形逆処理部44に供給する。尚、ノイズ除去処理については、図10を参照して、その詳細を後述する。
In step S <b> 4, the
ステップS5において、非線形逆変換処理部44の逆マッピング処理部171は、入力された画像の各画素に対して変換曲線LUT172を参照して、ステップS3の非線形変換処理により適用した非線形特性を打ち消すように強度変換し、ホワイトバランス処理部45に供給する。
In step S5, the inverse
尚、ステップS3乃至S5の処理については、RGBの各画像信号に対して、非線形変換処理部42、ノイズ除去処理部43、および非線形逆変換処理部44が並列処理するようにしても良いし、各チャンネルに対して、順次処理するようにしても良い。
In addition, about the process of step S3 thru | or S5, you may make it the nonlinear
ステップS6において、ホワイトバランス処理部45は、ノイズが除去され、非線形特性が解除されたRGB3チャネル画像に対してそれぞれの画像信号に適切な係数を掛けることで、被写体領域の色バランスが無彩色になるようにホワイトバランス処理を施し、ガンマ補正処理部46に供給する。
In step S6, the white
ステップS7において、ガンマ補正処理部46は、ホワイトバランス処理部45によりホワイトバランスが調整されたRGBのそれぞれの画像信号の各画素強度をガンマ補正し、YC変換処理部47に出力する。
In step S <b> 7, the gamma
ステップS8において、YC変換処理部47は、ガンマ補正処理部46によりガンマ補正処理されたRGBの画像信号にYCマトリクス処理を施すYC変換処理を実行し、Y画像とC画像に変換し、ステップS9において、Y画像とC画像を出力(フレームメモリに書き込む)する。
In step S8, the YC
以上の処理により、ノイズが除去されたYC画像が生成されることになる。 With the above processing, a YC image from which noise has been removed is generated.
次に、図10のフローチャートを参照して、図9のフローチャートにおけるステップS4の処理であるノイズ除去処理について説明する。 Next, the noise removal process which is the process of step S4 in the flowchart of FIG. 9 will be described with reference to the flowchart of FIG.
ステップS21において、多重解像度変換処理部81−1,81−2は、それぞれ非線形変換処理部42により生成された非線形変換処理されたG,Rチャネル分の画像が入力されたか否かを判定し、入力されたと判定されるまで、その処理を繰り返し、入力されたと判定された場合、その処理は、ステップS22に進む。
In step S21, the multi-resolution conversion processing units 81-1 and 81-2 determine whether or not images for the G and R channels subjected to the nonlinear conversion processing generated by the nonlinear
ステップS22において、多重解像度変換処理部81−1は、多重解像度変換処理を実行し、入力されたGの画像を複数の多重解像度画像を生成し、生成した画像をレイヤ毎にそれぞれレイヤ0画像メモリ82−1、レイヤ1画像メモリ83−1、レイヤ2画像メモリ84−1、およびレイヤ3画像メモリ85−1に格納する。尚、多重解像度変換処理については、図11のフローチャートを参照して、詳細を後述する。
In step S22, the multi-resolution conversion processing unit 81-1 performs multi-resolution conversion processing, generates a plurality of multi-resolution images from the input G image, and generates the generated images for each layer in a layer 0 image memory. 82-1, the
ステップS23において、多重解像度変換処理部82−1は、多重解像度変換処理を実行し、入力されたRの画像を複数の多重解像度画像を生成し、生成した画像をレイヤ毎にそれぞれレイヤ0画像メモリ82−2、レイヤ1画像メモリ83−2、レイヤ2画像メモリ84−2、およびレイヤ3画像メモリ85−2に格納する。尚、多重解像度処理については、信号の成分が、GではなくRである点を除いては、同様の処理である。
In step S23, the multi-resolution conversion processing unit 82-1 executes multi-resolution conversion processing, generates a plurality of multi-resolution images from the input R image, and generates the generated images for each layer in the layer 0 image memory. 82-2, the
ステップS24において、修正処理部86−1乃至86−3は、それぞれレイヤ0乃至2のそれぞれのG,Rの信号を用いて、画素値修正処理を実行し、Rの画素値を修正し、それぞれレイヤ0修正画像メモリ87、レイヤ1修正画像メモリ88、およびレイヤ2修正画像メモリ89に格納する。尚、画素値修正処理については、図12のフローチャートを参照して、詳細を後述する。
In step S24, the correction processing units 86-1 to 86-3 execute pixel value correction processing using the G and R signals of layers 0 to 2, respectively, correct the R pixel value, and The layer 0 corrected
ステップS25において、多重解像度逆変換処理部90は、多重解像度逆変換処理を実行し、レイヤ0修正画像メモリ87、レイヤ1修正画像メモリ88、およびレイヤ2修正画像メモリ89に格納されている、画素値が修正されたレイヤ0乃至2の画像、および、レイヤ3画像メモリ85に格納されているRの画像を、ステップS23の処理による多重解像度変換の逆変換を実行することで、複数の多重解像度画像を統合し、ステップS26において、統合されたRの画像を出力する。尚、多重解像度逆変換処理については、図20のフローチャートを参照して、詳細を後述する。
In step S <b> 25, the multi-resolution inverse
以上の処理により、G,Rとの相関性に基づいて、Rの画素値が修正される。 Through the above processing, the R pixel value is corrected based on the correlation with G and R.
次に、図11のフローチャートを参照して、図10のフローチャートにおけるステップS22,S23の処理である多重解像度変換処理について説明する。 Next, the multi-resolution conversion process, which is the process of steps S22 and S23 in the flowchart of FIG. 10, will be described with reference to the flowchart of FIG.
ステップS41において、多重解像度変換処理部81−1は、図示せぬカウンタNを0に設定し初期化する。 In step S41, the multi-resolution conversion processing unit 81-1 sets a counter N (not shown) to 0 and initializes it.
ステップS42において、縮小処理部111は、N回縮小された画像を縮小する。すなわち、最初の処理では、Nは0、すなわち、入力された画像が、縮小処理部111−1により縮小される。 In step S42, the reduction processing unit 111 reduces the image reduced N times. That is, in the first process, N is 0, that is, the input image is reduced by the reduction processing unit 111-1.
ステップS43において、多重解像度変換処理部81−1は、図示せぬカウンタNを1インクリメントする。 In step S43, the multi-resolution conversion processing unit 81-1 increments a counter N (not shown) by 1.
ステップS44において、多重解像度変換処理部81−1は、カウンタNが、カウンタNの最大値Nmax−1であるか否かを判定する。ここで、Nmaxは、入力された画像を多重解像度画像に変換するレイヤ数である。従って、図5で示されるように、レイヤ数は4となる。 In step S44, the multi-resolution conversion processing unit 81-1 determines whether or not the counter N is the maximum value Nmax-1 of the counter N. Here, Nmax is the number of layers for converting the input image into a multi-resolution image. Therefore, the number of layers is four as shown in FIG.
例えば、ステップS44において、カウンタNが、カウンタNの最大値(Nmax−1)ではないと判定された場合、ステップS45において、縮小処理部111は、N回縮小された画像を減算処理部112および拡大処理部113に出力する。すなわち、最初の処理では、縮小処理部111−1が、減算処理部112−2および拡大処理部113−1に1回縮小された画像を出力する。 For example, when it is determined in step S44 that the counter N is not the maximum value (Nmax−1) of the counter N, in step S45, the reduction processing unit 111 reduces the image reduced N times to the subtraction processing unit 112 and The result is output to the enlargement processing unit 113. That is, in the first process, the reduction processing unit 111-1 outputs an image reduced once to the subtraction processing unit 112-2 and the enlargement processing unit 113-1.
ステップS46において、拡大処理部113は、N回縮小された画像を拡大し、減算処理部112に出力する。すなわち、最初の処理においては、拡大処理部113−1が、縮小処理部111−1より供給されてきた1回縮小された画像を拡大し、減算処理部112−1に供給する。 In step S <b> 46, the enlargement processing unit 113 enlarges the image reduced N times and outputs it to the subtraction processing unit 112. That is, in the first process, the enlargement processing unit 113-1 enlarges the image that has been reduced once supplied from the reduction processing unit 111-1, and supplies the enlarged image to the subtraction processing unit 112-1.
ステップS47において、減算処理部112は、(N−1)回縮小された画像から、N回縮小されて、かつ、1回拡大された画像を減算する。すなわち、最初の処理では、減算処理部112−1が、入力された画像から拡大処理部113−1より供給された画像を減算する。 In step S47, the subtraction processing unit 112 subtracts an image that has been reduced N times and enlarged once from an image that has been reduced (N-1) times. That is, in the first process, the subtraction processing unit 112-1 subtracts the image supplied from the enlargement processing unit 113-1 from the input image.
ステップS48において、減算処理部112は、ステップS47の処理により求められたレイヤ(N−1)の画像をレイヤ(N−1)画像メモリに格納させ、その処理は、ステップS42に戻る。すなわち、最初の処理においては、減算処理部112−1は、減算処理により得られた画像をレイヤ0画像メモリ82−1に格納させる In step S48, the subtraction processing unit 112 stores the layer (N-1) image obtained by the processing in step S47 in the layer (N-1) image memory, and the processing returns to step S42. That is, in the first process, the subtraction processing unit 112-1 stores the image obtained by the subtraction process in the layer 0 image memory 82-1.
すなわち、ステップS44の処理において、カウンタNが最大値(Nmax−1)であると判定されるまで、ステップS42乃至S48の処理が繰り返される。結果として、順次、縮小処理部111−2が、1回縮小された画像を縮小して、拡大処理部113−2および減算処理部113−3に供給し、拡大処理部113−2が、供給された2回縮小された画像を拡大して減算処理部112−2に供給し、減算処理部112−2が、1回縮小された画像から、2回縮小されて、かつ、拡大されたた画像を減算し、レイヤ1画像を生成して、レイヤ1画像メモリ83−1に格納する。
That is, in the process of step S44, the processes of steps S42 to S48 are repeated until it is determined that the counter N is the maximum value (Nmax-1). As a result, the reduction processing unit 111-2 sequentially reduces the image reduced once and supplies it to the enlargement processing unit 113-2 and the subtraction processing unit 113-3, and the enlargement processing unit 113-2 supplies the image. The two-time-reduced image is enlarged and supplied to the subtraction processing unit 112-2. The subtraction processing unit 112-2 has been reduced and enlarged twice from the image reduced once. The image is subtracted to generate a
ステップS44の処理において、カウンタNが最大値(Nmax−1)であると判定された場合、ステップS49において、縮小処理部111は、N回縮小された画像をレイヤN画像メモリおよび拡大処理部113に出力する。すなわち、ここでNmaxは、4であるので、縮小処理部111−3が、減算処理部112−3およびレイヤ3メモリ85に3回縮小された画像を出力する。
If it is determined in step S44 that the counter N is the maximum value (Nmax-1), in step S49, the reduction processing unit 111 converts the image reduced N times into the layer N image memory and the enlargement processing unit 113. Output to. That is, since Nmax is 4, the reduction processing unit 111-3 outputs an image reduced three times to the subtraction processing unit 112-3 and the layer 3
ステップS50において、拡大処理部113は、N回縮小された画像を拡大し、減算処理部112に出力する。すなわち、ここでは、拡大処理部113−3が、縮小処理部111−3より供給されてきた3回縮小された画像を拡大し、減算処理部112−3に供給する。 In step S <b> 50, the enlargement processing unit 113 enlarges the image reduced N times and outputs it to the subtraction processing unit 112. That is, here, the enlargement processing unit 113-3 enlarges the image reduced three times supplied from the reduction processing unit 111-3, and supplies the enlarged image to the subtraction processing unit 112-3.
ステップS51において、減算処理部112は、(N−1)回縮小された画像から、N回縮小されて、かつ、1回拡大された画像を減算する。すなわち、ここでは、減算処理部112−3が、2回縮小された画像から拡大処理部113−3より供給された画像を減算する。 In step S51, the subtraction processing unit 112 subtracts an image that has been reduced N times and enlarged once from an image that has been reduced (N-1) times. That is, here, the subtraction processing unit 112-3 subtracts the image supplied from the enlargement processing unit 113-3 from the image reduced twice.
ステップS52において、減算処理部112は、ステップS51の処理により求められたレイヤ(N−1)の画像をレイヤ(N−1)画像メモリに格納させ、その処理は、終了する。すなわち、ここでは、減算処理部112−3は、減算処理により得られた画像をレイヤ2画像メモリ83に格納させる
In step S52, the subtraction processing unit 112 stores the layer (N-1) image obtained by the processing in step S51 in the layer (N-1) image memory, and the processing ends. That is, here, the subtraction processing unit 112-3 stores the image obtained by the subtraction processing in the
以上の処理により、入力された画像が帯域別に分離され、それぞれレイヤ毎に、レイヤ0画像メモリ82、レイヤ1画像メモリ83、レイヤ2画像メモリ84、およびレイヤ3画像メモリ85に格納されることになる。
With the above processing, the input images are separated by band and stored in the layer 0
次に、図12のフローチャートを参照して、図10のフローチャートにおけるステップS24の処理である画素値修正処理について説明する。 Next, the pixel value correction process that is the process of step S24 in the flowchart of FIG. 10 will be described with reference to the flowchart of FIG.
ステップS71において、修正処理部86−1乃至86−3のサンプリング処理部131,132は、それぞれレイヤ0画像メモリ82−1,82−2、レイヤ1画像メモリ83−1,83−2、およびレイヤ2画像メモリ84−1,84−2に、R,Gチャネルの画像が入力されたか否かを判定し、入力されたと判定されるまで、その処理を繰り返す。例えば、入力されたと判定された場合、その処理は、ステップS72に進む。
In step S71, the
ステップS72において、サンプリング処理部131,132は、同一の未処理の画素を注目画素として選択する
In step S72, the
ステップS73において、サンプリング処理部131は、Gチャネルのレイヤ0画像メモリ82−1、レイヤ1画像メモリ83−1、またはレイヤ2画像メモリ84−1より注目画素位置に対応する所定の位置に配置されている複数の画素をサンプリングし(抽出し)、分散算出処理部133、共分散算出処理部134、および乗算処理部137に供給する。
In step S73, the
ステップS74において、サンプリング処理部132は、Rチャネルのレイヤ0画像メモリ82−2、レイヤ1画像メモリ83−2、またはレイヤ2画像メモリ84−2より注目画素位置に対応する所定の位置に配置されている複数の画素をサンプリングし(抽出し)、共分散算出処理部134に供給する。
In step S74, the
ステップS75において、分散算出処理部133は、サンプリング処理部131より供給されたGの画素値のサンプルより分散計算処理を実行し分散値を計算し、クリッピング処理部134に供給する。尚、分散計算処理については、図13,図14のフローチャートを参照して、詳細を後述する。
In step S <b> 75, the variance
ステップS76において、共分散算出処理部136は、サンプリング処理部131,132より供給されたG,Rの画素値のサンプルより共分散計算処理を実行し共分散値を計算し、除算処理部135に供給する。尚、共分散計算処理については、図15のフローチャートを参照して、詳細を後述する。
In step S <b> 76, the covariance
ステップS77において、クリッピング処理部134は、分散算出処理部133より供給されてくるGの分散値をクリッピング処理し、除算処理部135に供給する。より詳細には、クリッピング処理部134は、分散算出処理部133より供給されてくるGの分散値と所定の閾値とを比較し、所定の閾値よりも小さい場合、Gの分散値を所定の閾値に置き換えて、除算処理部135に供給し、所定の閾値よりも大きい場合、そのままのGの分散値を除算処理部135に供給する。
In step S 77, the
ステップS78において、除算処理部135は、クリッピング処理部134より供給されてくる分散値と、共分散算出処理部136より供給されてくる共分散値とに基づいて、(共分散/分散)を算出し、乗算処理部137に供給する。
In step S78, the
ステップS79において、乗算処理部137は、(共分散/分散)に注目画素位置のG画素値を乗じることにより、注目画素位置のR画素の画素値を修正する。すなわち、乗算処理部137は、上述した式(4)計算を実行することで、G,Rの相関性を利用してRの画素値を修正する。
In step S79, the
ステップS80において、サンプリング処理部131,132は、未処理の画素が存在するか否かを判定し、未処理の画素があると判定された場合、その処理は、ステップS72に戻る。すなわち、未処理の画素がないと判定されるまで、ステップS72乃至S80の処理が繰り返されて、順次Rの画素値が修正される。
In step S80, the
ステップS80において、未処理の画素がないと判定された場合、ステップS81において、乗算処理部137は、これまでに計算したRチャネルの画素値が修正された画像を出力する。
If it is determined in step S80 that there is no unprocessed pixel, in step S81, the
以上の処理により、チャネル間の相関性を利用して、ランダムな成分や色収差により生じるクロマ成分のノイズを、画素値を修正することにより除去することが可能となる。 Through the above processing, it is possible to remove the noise of a chroma component caused by a random component or chromatic aberration by correcting the pixel value using the correlation between channels.
次に、図13のフローチャートを参照して、図18のフローチャートにおけるステップS75の処理である分散計算処理について説明する。 Next, with reference to the flowchart of FIG. 13, the distributed calculation process, which is the process of step S75 in the flowchart of FIG. 18, will be described.
ステップS91において、分散算出処理部133は、演算結果であるとして出力するカウンタVt,wを0に初期化する。
In step S91, the variance
ステップS92において、分散算出処理部133は、局所領域のうちの一部(例えば、注目画素を中心とした、(n−2)×(n−2)の範囲)の画素値のうち、処理を実行する画素位置を示す第1のレジスタの値sを初期化して、s=1とし、ステップS93において、局所領域のうちの一部(例えば、注目画素を中心とした、(n−2)×(n−2)の範囲)の画素値のうち、処理を実行する画素位置を示す第2のレジスタの値tを初期化して、t=1とする。
In step S <b> 92, the variance
ステップS94において、分散算出処理部133は、画素(s,t)の強度Xに画素(s,t)の重みwiを乗じた値を2乗して、カウンタVtに加えた値を、カウンタVtとして更新する。すなわち、分散算出処理部133は、Vt=Vt+(|(画素(s,t)の強度X)×(画素(s,t)の重みwi|)2を演算する。
In step S94, the variance
ステップS95において、分散算出処理部133は、画素(s,t)の重みwiを、カウンタwに加えた値を、カウンタwとして更新する。すなわち、分散算出処理部133は、w=w+(画素(s,t)の重みwi)を演算する。
In step S95, the variance
ステップS96において、分散算出処理部133は、処理を実行する画素位置を示す第2のレジスタの値tを参照し、t=n−2であるか否かを判定する。
In step S96, the variance
ステップS96において、t=n−2ではないと判定された場合、ステップS147において、分散算出処理部133は、第2のレジスタの値tを、t=t+1に更新して、処理は、ステップS94に戻り、それ以降の処理が繰り返される。
If it is determined in step S96 that t = n−2 is not satisfied, in step S147, the variance
ステップS96において、t=n−2であると判定された場合、ステップS98において、分散算出処理部133は、処理を実行する画素位置を示す第1のレジスタの値sを参照し、s=n−2であるか否かを判定する。
If it is determined in step S96 that t = n−2, in step S98, the variance
ステップS98において、s=n−2ではないと判定された場合、ステップS99において、分散算出処理部133は、第1のレジスタの値sを、s=s+1に更新して、処理は、ステップS93に戻り、それ以降の処理が繰り返される。
If it is determined in step S98 that s = n−2 is not satisfied, in step S99, the variance
ステップS98において、s=n−2であると判定された場合、ステップS100において、分散算出処理部133は、局所領域のうちの一部(例えば、注目画素を中心とした、(n−2)×(n−2)の範囲)の画素値の分散値VxxをVt/wとして計算し、処理は、終了する。
If it is determined in step S98 that s = n−2, in step S100, the variance
分散値の算出は、定義上では、((画素(s,t)の強度X)×(画素(s,t)の重みwi))2を分散値の演算に用いた画素の数で除算する必要があるが、分散値の算出結果は、後述する処理により、共分散値の算出結果の除算に用いられるため、共分散値の算出においても同数で除算される場合は、除算処理を、分散値の演算および共分散値の演算の両方にて省略することが可能である。 For the calculation of the variance value, by definition, ((intensity X of pixel (s, t)) × (weight of pixel (s, t) wi)) 2 is divided by the number of pixels used to calculate the variance value. Although it is necessary, the calculation result of the variance value is used for division of the calculation result of the covariance value by the process described later. It is possible to omit both the value calculation and the covariance value calculation.
なお、分散値の算出において、ここでは重み付けが施されているので、式(6)を用いて説明した分散値の定義に示されるように、((画素(s,t)の強度X)×(画素(s,t)の重みwi))2を重み係数の総和で除算することにより、分散値が算出されている。しかしながら、分散値の算出結果は、後述する処理により、共分散値の算出結果の除算に用いられるため、共分散値の算出においても重み付けが施されているときは、重み係数の総和での除算処理を、分散値の演算および共分散値の演算の両方にて省略することが可能である。 In the calculation of the dispersion value, since weighting is performed here, as shown in the definition of the dispersion value described using Expression (6), ((intensity X of pixel (s, t)) × (Weight of pixel (s, t) wi)) The variance value is calculated by dividing 2 by the sum of the weight coefficients. However, since the calculation result of the variance value is used to divide the calculation result of the covariance value by the processing described later, when weighting is also applied in the calculation of the covariance value, the division by the sum of the weighting factors is performed. The processing can be omitted in both the variance value calculation and the covariance value calculation.
また、図13を用いて説明した分散計算処理においては、2乗の計算があるため、演算処理に時間がかかったり、ハードウェアの規模が大きくなるという問題が発生する。そこで、近似計算により2乗の計算を省略するようにしても良い。 Further, in the distributed calculation processing described with reference to FIG. 13, there is a problem that the calculation processing takes time and the scale of hardware increases because there is a square calculation. Therefore, the square calculation may be omitted by approximate calculation.
次に、図14のフローチャートを参照して、近似計算により2乗の計算を省略する場合に、図12のフローチャートにおけるステップS75において実行される分散計算処理について説明する。 Next, the distributed calculation process executed in step S75 in the flowchart of FIG. 12 when the square calculation is omitted by the approximate calculation will be described with reference to the flowchart of FIG.
図14のフローチャートにおけるステップS121乃至ステップS123においては、図13を用いて説明したステップS91乃至ステップS93と同様の処理が実行される。 In steps S121 to S123 in the flowchart of FIG. 14, the same processes as those in steps S91 to S93 described with reference to FIG. 13 are executed.
ステップS124において、分散算出処理部133は、(|2×(画素(s,t)の強度X)×(画素(s,t)の重みwi)|)を、現在のカウンタVtに加えた値として更新する。すなわち、分散算出処理部133は、Vt=Vt+(|2×(画素(s,t)の強度X)×(画素(s,t)の重みwi)|)を演算する。
In step S124, the variance
値|p|が正規化され、0≦|P|<1が成り立っているとき、p2は|p|×2で近似することが可能である。 When the value | p | is normalized and 0 ≦ | P | <1, p2 can be approximated by | p | × 2.
そして、ステップS125乃至ステップS130においては、図13を用いて説明したステップS95乃至ステップS100と同様の処理が実行され、処理は、終了する。 In steps S125 to S130, the same processing as that in steps S95 to S100 described with reference to FIG. 13 is executed, and the processing ends.
このように、分散値の演算に必要な2乗の計算を省略した近似演算により、分散値の近似値を求めることが可能となる。 As described above, it is possible to obtain an approximate value of the variance value by an approximation operation that omits the square calculation necessary for the calculation of the variance value.
次に、図15のフローチャートを参照して、図12のステップS76において実行される、共分散計算処理について説明する。 Next, the covariance calculation process executed in step S76 of FIG. 12 will be described with reference to the flowchart of FIG.
ステップS151において、共分散算出処理部136は、出力される値であるカウンタVtt,w(ここでは、第1の信号は、全てG強度であり、第2の信号がR強度であるものとする)を0に初期化する。
In step S151, the covariance
ステップS152において、共分散算出処理部136は、局所領域のうちの一部(例えば、注目画素を中心とした、(n−2)×(n−2)の範囲)の画素値のうち、処理を実行する画素位置を示す第1のレジスタの値sを初期化して、s=1とする
In step S152, the covariance
ステップS153において、共分散算出処理部136は、局所領域のうちの一部(例えば、注目画素を中心とした、(n−2)×(n−2)の範囲)の画素値のうち、処理を実行する画素位置を示す第2のレジスタの値tを初期化して、t=1とする
In step S153, the covariance
ステップS154において、図16または図17を用いて後述する積和処理が実行される。 In step S154, the product-sum processing described later with reference to FIG. 16 or FIG. 17 is executed.
ステップS155において、共分散算出処理部136は、画素(s,t)の重みwiを、カウンタwに加えた値を、カウンタwとして更新する。すなわち、共分散算出処理部136は、w=w+(画素(s,t)の重みwi)を演算する。
In step S155, the covariance
ステップS156において、共分散算出処理部136は、処理を実行する画素位置を示す第2のレジスタの値tを参照し、t=n−2であるか否かを判定する。
In step S156, the covariance
ステップS156において、t=n−2ではないと判定された場合、ステップS157において、共分散算出処理部136は、第2のレジスタの値tを、t=t+1に更新して、処理は、ステップS154に戻り、それ以降の処理が繰り返される。
If it is determined in step S156 that t = n−2 is not satisfied, the covariance
ステップS156において、t=n−2であると判定された場合、ステップS158において、共分散算出処理部136は、処理を実行する画素位置を示す第1のレジスタの値sを参照し、s=n−2であるか否かを判定する。
If it is determined in step S156 that t = n−2, in step S158, the covariance
ステップS158において、s=n−2ではないと判定された場合、ステップS159において、共分散算出処理部136は、第1のレジスタの値sを、s=s+1に更新して、処理は、ステップS153に戻る。
If it is determined in step S158 that s = n−2 is not satisfied, the covariance
ステップS158において、s=n−2であると判定された場合、ステップS159において、共分散算出処理部136は、共分散値VxyをVtt/wとして計算し、処理は、終了する。
When it is determined in step S158 that s = n−2, in step S159, the covariance
共分散値の算出は、(画素(s,t)の強度X)×(画素(s,t)の強度Y)×(画素(s,t)の重みwi)を、共分散値の演算に用いた画素の数で除算する必要があるが、共分散値の算出結果は、後述する処理により、分散値の算出結果で除算されるため、分散値の算出においても同数で除算される場合は、除算処理を、分散値の演算および共分散値の演算の両方にて省略することが可能である。 The covariance value is calculated by calculating (the intensity X of the pixel (s, t)) × (the intensity Y of the pixel (s, t)) × (the weight wi of the pixel (s, t)). Although it is necessary to divide by the number of pixels used, the calculation result of the covariance value is divided by the calculation result of the dispersion value by the process described later. The division process can be omitted in both the variance value calculation and the covariance value calculation.
なお、式(5)においては、共分散値の算出において、(画素(s,t)の強度X)×(画素(s,t)の強度Y)×(画素(s,t)の重みwi)の総和が、重み係数の総和wで除算することにより、共分散値が算出されている。しかしながら、共分散値の算出結果は、後述する処理により、分散値の算出結果で除算されるため、分散値の算出においても重み付けが施されているときは、重み係数の総和での除算処理を、分散値の演算および共分散値の演算の両方にて省略することが可能である。 In Equation (5), in calculating the covariance value, (intensity X of pixel (s, t)) × (intensity Y of pixel (s, t)) × (weight wi of pixel (s, t)) ) Is divided by the sum w of the weighting coefficients to calculate a covariance value. However, since the calculation result of the covariance value is divided by the calculation result of the dispersion value by a process described later, when weighting is applied also in the calculation of the dispersion value, the division process by the sum of the weighting coefficients is performed. It is possible to omit both the calculation of the variance value and the calculation of the covariance value.
上述した図15の共分散計算処理のステップS154において実行される積和処理には、共分散値が算出される場合に実行される積和処理と、近似演算を用いて共分散値が算出される場合に実行される積和処理との、2種類の処理がある。 In the product-sum process executed in step S154 of the above-described covariance calculation process of FIG. 15, the covariance value is calculated using the product-sum process executed when the covariance value is calculated and the approximation operation. There are two types of processing: product-sum processing executed in the
次に、図16のフローチャートを参照して、図15のステップS154において実行される共分散値が算出される場合に実行される積和処理について説明する。 Next, the product-sum processing executed when the covariance value executed in step S154 in FIG. 15 is calculated will be described with reference to the flowchart in FIG.
ステップS181において、共分散算出処理部136は、(第1の信号の画素(s,t)の強度X)、(第2の信号の画素(s,t)の強度Y)、および(画素(s,t)の重みwi)を乗算する。
In step S181, the covariance
ステップS182において、共分散算出処理部136は、Vtt=Vtt+(乗算結果)とする。
In step S182, the covariance
このような積和処理が実行されることにより、共分散値が算出される。図16のフローチャートを参照して説明した積和処理が実行された場合、定義どおりの演算であるので、その演算結果は、非常に精度の高いものであるが、そのかわり、積和処理が多いため演算に時間がかかったり、ハードウェア実装におけるゲート数の増加を招いてしまう。 By executing such a product-sum process, a covariance value is calculated. When the multiply-accumulate process described with reference to the flowchart of FIG. 16 is executed, the calculation is as defined, so the result of the calculation is very accurate, but instead, there are many multiply-accumulate processes. As a result, the computation takes time and the number of gates in hardware implementation increases.
次に、図17のフローチャートを参照して、図12のステップS76において実行される積和処理について説明する。図17のフローチャートを参照して説明する積和処理は、近似された共分散値が算出される場合に実行される処理である。 Next, the product-sum process executed in step S76 in FIG. 12 will be described with reference to the flowchart in FIG. The product-sum process described with reference to the flowchart of FIG. 17 is a process that is executed when an approximate covariance value is calculated.
ステップS201において、共分散算出処理部136は、{第1の信号の画素(s,t)の強度X}をpとする。
In step S201, the covariance
ステップS202において、共分散算出処理部136は、{第2の信号の画素(s,t)の強度Y}をqとする。
In step S202, the covariance
ステップS203において、図18を用いて後述する乗算近似処理が実行される。 In step S203, multiplication approximation processing described later with reference to FIG. 18 is executed.
ステップS204において、共分散算出処理部136は、Vtt=Vtt+(pqの近似値)×(画素(s,t)の重みwi)とし、処理は、終了する。
In step S204, the covariance
次に、図18のフローチャートを参照して、図17のステップS203において実行される乗算近似処理について説明する。乗算近似処理は、上述した式(7)を用いて、近似された共分散値が算出される場合に実行される処理である。 Next, the multiplication approximation process executed in step S203 in FIG. 17 will be described with reference to the flowchart in FIG. The multiplication approximation process is a process executed when an approximate covariance value is calculated using the above-described equation (7).
ステップS221において、共分散算出処理部136は、図17のステップS201およびステップS202において置き換えられた値pおよびqを用いて、|p|≧|q|であるか否かを判定する。
In step S221, the covariance
ステップS221において、|p|≧|q|であると判定された場合、ステップS262において、共分散算出処理部136は、p≧0であるか否かを判定する。
If it is determined in step S221 that | p | ≧ | q |, in step S262, the covariance
ステップS222において、p≧0であると判定された場合、ステップS223において、共分散算出処理部136は、pqの近似値=+2qとし、処理は、図17のステップS204に戻る。
If it is determined in step S222 that p ≧ 0, in step S223, the covariance
ステップS222において、p≧0ではないと判定された場合、ステップS224において、共分散算出処理部136は、pqの近似値=−2qとし、処理は、図17のステップS204に戻る。
If it is determined in step S222 that p ≧ 0 is not satisfied, in step S224, the covariance
ステップS221において、|p|≧|q|ではないと判定された場合、ステップS225において、共分散算出処理部136は、q≧0であるか否かを判定する。
When it is determined in step S221 that | p | ≧ | q | is not satisfied, in step S225, the covariance
ステップS225において、q≧0であると判定された場合、ステップS226において、共分散算出処理部136は、pqの近似値=+2pとし、処理は、図17のステップS204に戻る。
If it is determined in step S225 that q ≧ 0, in step S226, the covariance
ステップS225において、q≧0ではないと判定された場合、ステップS227において、共分散算出処理部136は、pqの近似値=−2pとし、処理は、図17のステップS204に戻る。
If it is determined in step S225 that q ≧ 0 is not satisfied, in step S227, the covariance
この処理において、qまたはpが0である場合、pqの近似値は必ず0となる。具体的には、qが0であるとき、|p|≧|q|は必ず成り立つので、pの値に関わらず、pqの近似値は0となる。また、pが0であるとき、|p|≧|q|は必ず成り立たないので、qの値に関わらず、pqの近似値は0となる。 In this process, when q or p is 0, the approximate value of pq is always 0. Specifically, when q is 0, | p | ≧ | q | always holds, so that the approximate value of pq is 0 regardless of the value of p. Also, when p is 0, | p | ≧ | q | does not always hold, so the approximate value of pq is 0 regardless of the value of q.
図17,図18を用いて説明した積和処理が実行されることにより、上述した式(7)を用いて、共分散値を近似することが可能である。このようにした場合、式(5)に示される定義どおりの共分散値の演算が実行された場合と比較して、計算速度が高速化されたり、計算のために実装されるハードウェアのゲート数を少なくすることができるなどの利点が発生する。 By executing the product-sum processing described with reference to FIGS. 17 and 18, the covariance value can be approximated using the above-described equation (7). In this case, the calculation speed is increased compared to the case where the calculation of the covariance value as defined in Expression (5) is executed, or the hardware gate implemented for the calculation is used. Advantages such as being able to reduce the number occur.
次に、図19のフローチャートを参照して、図10のフローチャートにおけるステップS25の処理である多重解像度逆変換処理について説明する。 Next, with reference to the flowchart of FIG. 19, the multi-resolution inverse transform process that is the process of step S25 in the flowchart of FIG. 10 will be described.
ステップS271において、多重解像度逆変換処理部90は、図示せぬカウンタNをNmax−1に設定する。このカウンタは、複数の多重解像度画像の数により設定されるものであり、図7の多重解像度逆変換処理部90においては、レイヤ0乃至3であるので、Nmaxは、4となる。
In step S271, the multiresolution inverse
ステップS272において、拡大処理部151は、最低レイヤの画像を拡大する。すなわち、図7の場合、拡大処理部151−1が、最低レイヤであるレイヤ3画像メモリ85に格納されている画像を拡大し、加算処理部152−1に供給する。
In step S272, the
ステップS273において、多重解像度逆変換処理部90は、カウンタNを1デクリメントする。
In step S273, the multi-resolution inverse
ステップS274において、多重解像度逆変換処理部90は、カウンタNが0であるか否かを判定する。例えば、カウンタNが0ではない場合、ステップS275において、加算処理部152は、拡大処理部151により拡大された画像に、レイヤN修正画像を加算し、1レイヤ上の拡大処理部151に出力する。すなわち、最初の処理では、加算処理部152−1が、拡大処理部151−1より供給された画像に、レイヤ2修正画像メモリ89に格納されているレイヤ2修正画像を加算し、拡大処理部151−2に供給する。
In step S274, the multiresolution inverse
ステップS275において、拡大処理部151は、加算処理部152より供給されたレイヤN修正画像が加算された画像を拡大し、1レイヤ上の加算処理部152に供給し、ステップS274の処理に戻る。すなわち、最初の処理の場合、拡大処理部151−2が、加算処理部152−1より供給された画像を拡大し、加算処理部152−2に供給する。
In step S275, the
すなわち、ステップS274において、カウンタNが0であると判定されるまで、ステップS273乃至S276の処理が繰り返される。図7の場合、さらに、加算処理部152−2が、拡大処理部151−2より供給された画像に、レイヤ1修正画像メモリ88に格納されているレイヤ1修正画像を加算し、拡大処理部151−3に供給する。
That is, the processes in steps S273 to S276 are repeated until it is determined in step S274 that the counter N is 0. In the case of FIG. 7, the addition processing unit 152-2 further adds the
さらに、拡大処理部151−3は、加算処理部152−2より供給された画像を拡大し、加算処理部152−3に供給する。この処理の後、カウンタNは0となるため、ステップS274において、カウンタNは0であると判定され、ステップS277において、加算処理部152は、レイヤN、すなわち、レイヤ0修正画像をレイヤ修正画像メモリ87より読み出し、拡大処理部151により拡大された画像を加算する。すなわち、ここでは、加算処理部152−3が、最上位レイヤであるレイヤ0修正画像を拡大処理部151−3により拡大された画像に加算し、ステップS278において、出力する。
Further, the enlargement processing unit 151-3 enlarges the image supplied from the addition processing unit 152-2 and supplies the enlarged image to the addition processing unit 152-3. After this processing, the counter N becomes 0, so that it is determined in step S274 that the counter N is 0. In step S277, the addition processing unit 152 converts the layer N, that is, the layer 0 corrected image into the layer corrected image. The image read from the
以上の処理により、レイヤ0修正画像、レイヤ1修正画像、レイヤ2修正画像、およびレイヤ3画像を多重化解像度画像逆変換することで、元の解像度の画像に統合することが可能となる。
Through the above processing, the layer 0 modified image, the
以上によれば、チャネル間の相関を利用して、基準となるチャネル(例えばG)信号との相関がなるべく高くなるように、他のチャネル信号の画素値を修正する(推定する)ことで、チャネル間の無相関な成分を低減させることが可能となる。このため、チャネル間の無相関な成分であるクロマ成分に混在するノイズを除去することが可能となり、結果として、クロマ成分のノイズを低減した画像信号を生成することが可能となる。 According to the above, by using the correlation between channels, by correcting (estimating) the pixel values of other channel signals so that the correlation with the reference channel (for example, G) signal is as high as possible, It is possible to reduce uncorrelated components between channels. For this reason, it is possible to remove noise mixed in the chroma component that is an uncorrelated component between channels, and as a result, it is possible to generate an image signal in which the noise of the chroma component is reduced.
以上においては、Rの分散値とG,Rの共分散値とを用いて画素値を推定していた。ところが、クロマ成分のノイズはランダムな成分と色収差の2種類であるが、どちらもその混在によってチャネル間相関を弱くしてしまうという性質がある。そこで、チャネル間相関が十分に強ければ、上述の線形回帰計算により画素値を修正するが、チャネル間相関が十分に強くないときには、一方のチャネルの信号を遮断し、他方のチャネル信号で置き換えるようにしてもよい。 In the above description, the pixel value is estimated using the R variance value and the G and R covariance values. However, there are two types of chroma component noise, random components and chromatic aberration, both of which have the property of weakening the inter-channel correlation due to the mixture of both. Therefore, if the inter-channel correlation is sufficiently strong, the pixel value is corrected by the above-described linear regression calculation. However, if the inter-channel correlation is not sufficiently strong, the signal of one channel is cut off and replaced with the other channel signal. It may be.
図20は、チャネル間相関が十分に強ければ、上述の線形回帰計算により画素値を修正するが、チャネル間相関が十分に強くないときには、一方のチャネルの信号を遮断し、他方のチャネル信号で置き換えるようにした修正処理部86の機能の一実施の形態の構成を示している。
In FIG. 20, when the correlation between channels is sufficiently strong, the pixel value is corrected by the above-described linear regression calculation. However, when the correlation between channels is not sufficiently strong, the signal of one channel is blocked and the signal of the other channel is blocked. The structure of one Embodiment of the function of the
図20において、サンプリング処理部201−1,201−2、分散算出処理部202−1、共分散算出処理部203、クリッピング処理部204、除算処理部205、および乗算処理部206は、図6におけるサンプリング処理部131,132、分散算出処理部133、共分散算出処理部136、クリッピング処理部134、除算処理部135、および乗算処理部137と同様の処理を実行するものであるので、その説明は省略する。
In FIG. 20, the sampling processing units 201-1 and 201-2, the variance calculation processing unit 202-1, the covariance
図20の修正処理部86において、図6の修正処理部86と異なるのは、新たに分散算出処理部202−2、相関係数算出処理部207、およびスイッチ208が設けられている点である。また、分散算出処理部202−1は、計算した分散値を新たに相関係数算出処理部207に供給し、共分散算出処理部203は、計算した共分散値を新たに相関係数算出処理部207に供給している。さらに、乗算処理部206は、乗算結果をスイッチ208に供給している。
20 differs from the
分散算出処理部202−2は、注目画素に対応する所定の位置の近傍のRチャネル画素のサンプルからRチャネルの分散値を算出し、相関係数算出処理部207に供給する。
The variance calculation processing unit 202-2 calculates an R channel variance value from a sample of the R channel pixels near a predetermined position corresponding to the target pixel, and supplies the calculated value to the correlation coefficient
相関係数算出処理部207は、分散算出処理部202−1が算出したGの分散値、分散算出処理部202−2が算出したRの分散値、および、共分散算出算出処理部203が算出したRとGの共分散値からRとGの相関係数(=(共分散値)/(√(Gの分散値)×√(Rの分散値)))を算出し、スイッチ208に供給する。
The correlation coefficient
スイッチ208は、相関係数算出処理部207より供給されたRとGの相関係数と、所定の閾値とを比較し、相関係数が所定の閾値より大きい場合、乗算処理部206で修正された注目画素のRチャネル画素値を出力させ、相関係数が所定の閾値より小さい場合、乗算処理部206により修正したR画素値を遮断し、注目画素のGチャネル画素値をそのまま出力させる。
The
次に、図21のフローチャートを参照して、図20の修正処理部86による画素値修正処理について説明する。尚、図21のフローチャートにおけるステップS291乃至S299、およびステップS305,S306の処理は、図12のフローチャートを参照して説明したステップS71乃至S79およびステップS80,S81の処理と同様であるので、その説明は省略する。
Next, the pixel value correction processing by the
ステップS300において、分散算出処理部202−2は、サンプリング処理部201−2より供給されたRの画素値のサンプルより分散計算処理を実行し分散値を計算し、相関係数算出処理部207に供給する。
In step S300, the variance calculation processing unit 202-2 executes a variance calculation process from the R pixel value sample supplied from the sampling processing unit 201-2 to calculate a variance value, and the correlation coefficient
ステップS301において、相関係数算出処理部207は、分散算出処理部202−1,202−2よりそれぞれ供給されたG,Rの分散値、および共分散算出処理部203より供給されたG,Rの共分散値に基づいて、相関係数(=(G-R共分散値)/(√(Gの分散値)×√(Rの分散値)))を算出し、スイッチ208に供給する。
In step S301, the correlation coefficient
ステップS302において、スイッチ208は、相関係数が所定の閾値よりも大きいか否かを判定し、例えば、大きいと判定した場合、ステップS303において、乗算処理部206より供給されたG,Rの相関に基づいて、修正されたRの画素値(=(共分散)/(分散)×(注目画素のGの輝度値)を選択し、その処理は、ステップS305に進む。
In step S302, the
一方、ステップS302において、相関係数が所定の閾値よりも小さいと判定した場合、ステップS304において、スイッチ208は、サンプリング処理部201−1より供給されてきたGの輝度値を選択し、その処理は、ステップS305に進む。
On the other hand, when it is determined in step S302 that the correlation coefficient is smaller than the predetermined threshold, in step S304, the
以上の処理により、チャネル間の相関が弱いときはクロマ成分に混在するノイズが大きいと判定し、ノイズが大きいサンプルから線形回帰をおこなうよりもGチャネルを出力する。結果として、チャネル間の相関に応じて、クロマ成分のノイズを積極的に低減させることが可能となる。 With the above processing, when the correlation between channels is weak, it is determined that the noise mixed in the chroma component is large, and the G channel is output rather than performing linear regression from a sample with large noise. As a result, it is possible to actively reduce the noise of the chroma component according to the correlation between the channels.
以上においては、チャネル間の相関の強弱を相関係数を用いて判定する例について説明してきたが、これ以外の方法で、チャネル間の相関の強弱を判定してもよく、例えば、2つの分散値の差分絶対値と所定の閾値との比較により、チャネル間の相関の強弱を判定するようにしてもよい。 In the above, the example of determining the strength of correlation between channels using the correlation coefficient has been described. However, the strength of correlation between channels may be determined by other methods, for example, two variances You may make it determine the strength of the correlation between channels by the comparison with the absolute value difference of a value, and a predetermined threshold value.
図22は、チャネル間の相関の強弱を2つの分散値の差分絶対値により判定するようにした修正処理部86の機能の一実施の形態の構成を示している。
FIG. 22 shows the configuration of an embodiment of the function of the
尚、図22の修正処理部86の構成におけるサンプリング処理部221−,221−2、分散算出処理部222−1,222−2、共分散算出処理部223、マッピング処理部224、除算処理部225、および乗算処理部226については、図20の修正処理部86におけるサンプリング処理部201−,201−2、分散算出処理部202−1,202−2、共分散算出処理部203、マッピング処理部204、除算処理部205、および乗算処理部206と同様であるので、その説明は省略する。
Note that the sampling processing units 221 and 221-2, the variance calculation processing units 222-1 and 222-2, the covariance
図22の修正処理部86において、図20の修正処理部86の構成と異なるのは、相関係数算出処理部207およびスイッチ208に代えて、差分算出処理部227およびスイッチ228が設けられている点である。差分算出処理部227は、G,Rチャネルのそれぞれの分散値の差分絶対値を求め、スイッチ228に供給する。スイッチ228は、差分絶対値と所定の閾値とを比較し、比較結果に応じて相関の強弱を判定し、相関が弱ければ、サンプリング処理部221−1より供給された信号を選択し、相関が強ければ、乗算処理部226より供給された信号を選択する。
22 differs from the configuration of the
次に、図23のフローチャートを参照して、図22の修正処理部86による画素値修正処理について説明する。尚、図22のフローチャートにおけるステップS321乃至S330、およびステップS333乃至S336の処理は、図21のフローチャートを参照して説明したステップS291乃至S300およびステップS303乃至S306の処理と同様であるので、その説明は省略する。
Next, the pixel value correction processing by the
ステップS331において、差分算出処理部227は、分散算出処理部222−1,222−2よりそれぞれ供給されたG,Rの分散値に基づいて、差分絶対値(=|(Gの分散値)−(Rの分散値)|)を算出し、スイッチ208に供給する。
In step S331, the difference
ステップS332において、スイッチ228は、差分絶対値が所定の閾値よりも大きいか否かを判定し、例えば、大きいと判定した場合、ステップS333において、乗算処理部206より供給されたG,Rの相関に基づいて、修正されたRの画素値(=(共分散)/(分散)×(注目画素のGの輝度値)を選択し、その処理は、ステップS335に進む。
In step S332, the
一方、ステップS332において、相関係数が所定の閾値よりも小さいと判定した場合、ステップS334において、スイッチ228は、サンプリング処理部221−1より供給されてきたGの輝度値を選択し、その処理は、ステップS335に進む。
On the other hand, when it is determined in step S332 that the correlation coefficient is smaller than the predetermined threshold value, in step S334, the
以上の処理により、分散値の差分絶対値からみたチャネル間の相関が弱いときはクロマ成分に混在するノイズが大きいと判定し、ノイズが大きいサンプルから線形回帰をおこなうよりもGチャネルを出力する。結果として、チャネル間の相関に応じて、クロマ成分のノイズを積極的に低減させることが可能となる。被写体輪郭領域において色収差に起因するエッジの色ずれがある場合、その色ずれがチャネル間の分散値の差として検出されやすい。結果として、以上のような処理により、このような色収差起因のエッジの色ずれに起因するノイズを有効に除去することが可能となる。また、相関係数を演算する際に必要となる乗算処理が不要となるため、コンピュータによる演算の負荷を低減させることが可能となる。 With the above processing, when the correlation between channels as seen from the absolute difference value of the variance value is weak, it is determined that the noise mixed in the chroma component is large, and the G channel is output rather than performing linear regression from a sample with large noise. As a result, it is possible to actively reduce the noise of the chroma component according to the correlation between the channels. When there is an edge color shift caused by chromatic aberration in the object outline region, the color shift is easily detected as a difference in dispersion value between channels. As a result, it is possible to effectively remove the noise caused by the color shift of the edge caused by such chromatic aberration by the above processing. In addition, since the multiplication process required when calculating the correlation coefficient is not necessary, it is possible to reduce the calculation load by the computer.
以上においては、GとR、またはGとBというような2チャネル間の相関に基づいて、修正した画素値か、または、Gの画素値かのいずれかを選択させる処理について説明してきたが、3チャネル以上のチャネル間相関を同時に評価することにより、よりクロマ成分のノイズ除去の効果を高めるようにしてもよい。 In the above, based on the correlation between two channels such as G and R, or G and B, the corrected pixel value or the process of selecting either the G pixel value has been described. You may make it improve the noise removal effect of a chroma component more by evaluating the correlation between three or more channels simultaneously.
図24は、3チャネルのチャネル間相関を同時に評価して、クロマ成分のノイズを除去するようにしたノイズ除去処理部43の機能の一実施の形態の構成を示す図である。尚、図24のノイズ除去処理部43における多重解像度変換処理部251−1乃至251−3、レイヤ0画像メモリ252−1乃至252−3、レイヤ1画像メモリ253−1乃至253−3、レイヤ2画像メモリ254−1乃至254−3、レイヤ3画像メモリ255−1乃至255−3、レイヤ0修正画像メモリ257−1,257−2、レイヤ1修正画像メモリ258−1,258−2、レイヤ2修正画像メモリ259−1,259−2、および多重解像度逆変換処理部260−1,260−2は、図4の多重解像度変換処理部81−1,81−2、レイヤ0画像メモリ82−1,82−2、レイヤ1画像メモリ83−1,83−2、レイヤ2画像メモリ84−1,84−2、レイヤ3画像メモリ85−1,85−2、レイヤ0修正画像メモリ87、レイヤ1修正画像メモリ88、レイヤ2修正画像メモリ89、および多重解像度逆変換処理部90と同様のものなので、その説明は省略する。ただし、多重解像度逆変換処理部260−1,260−2は、それぞれ修正されたR,Bの画素値を出力する。また、3チャネルよりも多い多チャネルのカメラシステムである場合でも、図24に示す構成にRまたはBチャネルの信号に該当する部分をそのまま追加したような構成とすることにより対応可能であるので、ここでは3チャネル構成の場合について説明する。
FIG. 24 is a diagram illustrating a configuration of an embodiment of a function of the noise
図24のノイズ除去処理部43において、新たな構成は、修正処理部256−1乃至256−3が設けられている点である。修正処理部256−1乃至256−3は、それぞれRGBの3チャネルの相関に基づいて、R,Bの画像信号におけるクロマ成分のノイズを除去するようにR,Bの画素値を修正し、それぞれレイヤ0修正画像メモリ257−1,257−2、レイヤ1修正画像メモリ258−1,258−2、およびレイヤ2修正画像メモリ259−1,259−2に格納する。
In the noise
次に、図25を参照して、修正処理部256の機能の一実施の形態の構成について説明する。
Next, the configuration of an embodiment of the function of the
サンプリング処理部281−1乃至281−3は、該当するレイヤのそれぞれGRBチャネル画像から、注目画素位置に対応して設定される所定位置の近傍画素から複数個のGRBチャネル画素値をサンプリング(抽出)し、分散共分散相関係数算出処理部282に供給する。
The sampling processing units 281-1 to 281-3 sample (extract) a plurality of GRB channel pixel values from neighboring pixels at a predetermined position set corresponding to the target pixel position from each GRB channel image of the corresponding layer. And supplied to the variance-covariance correlation coefficient
分散共分散相関係数算出処理部282は、サンプリングされたGRBの画素値に基づいて、GRBの注目画素周辺の分散値を求め、Gの分散値をクリッピング処理部283に供給する。また、分散共分散相関係数算出処理部282は、サンプリングされたGRB画素値に基づいて、G-RおよびG-Bの注目画素周辺の共分散値を求め、それぞれ除算処理部284−1,284−2に供給する。さらに、分散共分散相関係数算出処理部282は、GRBの分散値、G-RおよびG-Bの注目画素周辺の共分散値、並びに、G-RおよびG-Bの相関係数を判定処理部286に供給する。
The variance-covariance correlation coefficient
クリッピング処理部283は、Gチャネルのサンプルの分散値が所定の閾値より小さい場合、その閾値でクリッピングし、除算処理部284−1,284−2に供給する。除算処理部284−1,284−2は、それぞれクリッピング処理部283より供給される分散値により、分散共分散相関係数算出処理部282より供給されるG-RおよびG-B共分散値を除算し、分散値に対する共分散値の割合(共分散値/分散値)としてそれぞれ乗算処理部285−1,285−2に供給する。乗算処理部285−1,285−2は、(共分散値/分散値)に注目画素位置のGチャネル輝度値を乗じることで注目画素のノイズ除去されたRおよびBチャネル輝度値を修正し、それぞれスイッチ287,288に供給する。
When the variance value of the G channel samples is smaller than a predetermined threshold, the
判定処理部286は、分散共分散相関係数算出処理部282により算出されたGRBチャネルのGRBの分散値、G-RおよびG-Bの注目画素周辺の共分散値、並びに、G-RおよびG-Bの相関係数に基づいて、乗算処理部281−1,285−2が算出した注目画素のRチャネル画素の修正値およびBチャネル画素の修正値が利用できるか否かを判定し、判定結果をスイッチ287,288に供給する。
The
スイッチ287,288は、RBチャネルのそれぞれに対応し、判定処理部286より供給される判定結果に基づいて、乗算処理部285−1,285−2により算出された注目画素のRチャネル画素の修正値およびBチャネル画素の修正値を選択させるか、または、注目画素のGチャネルの画素値のいずれかを選択する。
The
次に、図26のフローチャートを参照して、図24のノイズ除去処理部43によるノイズ除去処理について説明する。
Next, the noise removal processing by the noise
ステップS351において、多重解像度変換処理部251−1乃至251−3は、それぞれ非線形変換処理部42により生成された非線形変換処理されたGRBチャネル分の画像が入力されたか否かを判定し、入力されたと判定されるまで、その処理を繰り返し、入力されたと判定された場合、その処理は、ステップS352に進む。
In step S351, the multi-resolution conversion processing units 251-1 to 251-3 determine whether or not the images for the GRB channels subjected to the nonlinear conversion processing generated by the nonlinear
ステップS352乃至S354において、多重解像度変換処理部251−1乃至251−3は、それぞれ多重解像度変換処理を実行し、入力されたGRBの画像をそれぞれ複数の多重解像度画像を生成し、生成した画像をレイヤ毎にそれぞれレイヤ0画像メモリ252−1乃至252−3、レイヤ1画像メモリ253−1乃至253−3、レイヤ2画像メモリ254−1乃至254−3、およびレイヤ3画像メモリ255−1乃至255−3に格納する。尚、GRBそれぞれの多重解像度変換処理は、図11のフローチャートを参照して説明した処理と同様であるので、その説明は省略する。
In steps S352 to S354, the multi-resolution conversion processing units 251-1 to 251-3 each execute multi-resolution conversion processing, generate a plurality of multi-resolution images from the input GRB images, and generate the generated images. For each layer, layer 0 image memories 252-1 to 252-2,
ステップS355において、修正処理部256−1乃至256−3は、それぞれレイヤ0乃至2のそれぞれのGRBの信号を用いて、画素値修正処理を実行し、R,Bの画素値を修正し、それぞれレイヤ0修正画像メモリ257−1,257−2、レイヤ1修正画像メモリ258−1,258−2、およびレイヤ2修正画像メモリ259−1,259−2に格納する。尚、画素値修正処理については、図27のフローチャートを参照して、詳細を後述する。
In step S355, the correction processing units 256-1 to 256-3 execute the pixel value correction processing using the GRB signals of the layers 0 to 2, respectively, and correct the R and B pixel values. The data is stored in the layer 0 corrected image memories 257-1 and 257-2, the
ステップS356,S357において、多重解像度逆変換処理部260−1,260−2は、それぞれ多重解像度逆変換処理を実行し、レイヤ0修正画像メモリ257−1,257−2、レイヤ1修正画像メモリ258−1,258−2、およびレイヤ2修正画像メモリ259−1,259−2に格納されている、R,Bの画素値が修正されたレイヤ0乃至2の画像、および、レイヤ3画像メモリ255−2,255−3に格納されているR,Bの画像を、ステップS353,S354の処理による多重解像度変換の逆変換を実行することで、R,Bの複数の多重解像度画像を統合し、ステップS358において、統合されたR,Bの画像を出力する。尚、多重解像度逆変換処理については、図20のフローチャートを参照して説明した処理と同様であるので、その説明は省略する。
In steps S356 and S357, the multi-resolution inverse transform processing units 260-1 and 260-2 execute multi-resolution inverse transform processing, respectively, and perform the layer 0 modified image memory 257-1 and 257-2 and the
次に、図27のフローチャートを参照して、図25の修正処理部256による画素値修正処理について説明する。
Next, pixel value correction processing by the
ステップS381において、修正処理部256−1乃至256−3のサンプリング処理部281−1乃至281−3は、それぞれレイヤ0画像メモリ252−1乃至252−3、レイヤ1画像メモリ253−1乃至253−3、およびレイヤ2画像メモリ254−1乃至254−3に、RGBチャネルの画像が入力されたか否かを判定し、入力されたと判定されるまで、その処理を繰り返す。例えば、入力されたと判定された場合、その処理は、ステップS382に進む。
In step S381, the sampling processing units 281-1 to 281-3 of the correction processing units 256-1 to 256-3 are the layer 0 image memories 252-1 to 252-2 and the
ステップS382において、サンプリング処理部281−1乃至281−3は、同一の未処理の画素を注目画素として選択する In step S382, the sampling processing units 281-1 to 281-3 select the same unprocessed pixel as the target pixel.
ステップS383乃至S385において、サンプリング処理部281−1乃至281−3は、それぞれGBRチャネルのレイヤ0画像メモリ252−1乃至252−3、レイヤ1画像メモリ253−1乃至253−3、またはレイヤ2画像メモリ254−1乃至254−3より注目画素位置に対応する所定の位置に配置されている複数の画素をサンプリングし(抽出し)、分散共分散相関係数算出処理部282に供給する。
In steps S383 to S385, the sampling processing units 281-1 to 281-3 respectively perform layer 0 image memories 252-1 to 252-2,
ステップS386において、分散共分散相関係数算出処理部282は、サンプリング処理部281−1乃至281−3より供給されたGRBの画素値のサンプルより分散計算処理を実行し、RGBの分散値を計算し、Gの分散値をクリッピング処理部283に供給すると共に、GRBの分散値を判定処理部286に供給する。尚、分散計算処理については、図13,図14のフローチャートを参照して説明した処理であるので、その説明は、省略する。
In step S386, the variance-covariance correlation coefficient
ステップS387において、分散共分散相関係数算出処理部282は、サンプリング処理部281−1乃至281−3より供給されたGRBの画素値のサンプルより共分散計算処理を実行し、G-R、G-BおよびB-Rの共分散値を計算し、それぞれ除算処理部284−1,284−2および判定処理部286に供給する。尚、共分散計算処理については、図15のフローチャートを参照して説明した処理と同様であるので、その説明は省略する。
In step S387, the variance-covariance correlation coefficient
ステップS388において、分散共分散相関係数算出処理部282は、相関係数計算処理を実行し、GRBの画素値のサンプルより計算された分散値と共分散値とに基づいて、G-R、G-B、B-Rの相関係数を計算し、判定処理部286に供給する。尚、相関係数計算処理については、図21のフローチャートにおけるステップS301の処理と同様であるので、その説明は省略する。
In step S388, the variance-covariance correlation coefficient
ステップS389において、クリッピング処理部283は、分散共分散相関係数算出処理部282より供給されてくるGの分散値をクリッピング処理し、除算処理部284−1,284−2に供給する。
In step S389, the
ステップS390,S391において、除算処理部284−1,284−2は、それぞれクリッピング処理部283より供給されてくる分散値と、分散共分散相関係数算出処理部282より供給されてくるG-RおよびG-Bの共分散値とに基づいて、それぞれR,Bに対しての(共分散/分散)を算出し、それぞれ乗算処理部285−1,285−2に供給する。
In steps S390 and S391, the division processing units 284-1 and 284-2 are respectively supplied with the variance value supplied from the
ステップS392,S393において、乗算処理部285−1,285−2は、それぞれR,Bの(共分散/分散)に注目画素位置のG画素値を乗じることにより、注目画素位置のR,B画素の画素値を修正する。 In steps S392 and S393, the multiplication processing units 285-1 and 285-2 multiply the R and B (covariance / dispersion) by the G pixel value of the target pixel position, respectively, thereby obtaining the R and B pixels of the target pixel position. The pixel value of is corrected.
ステップS394において、判定処理部286は、分散共分散相関係数算出処理部282より供給されたGRBの分散値、G-RおよびG-Bの共分散値、並びにG-R、G-B、およびR-Bの相関係数に基づいて、以下の式(9)で示される判定式の値を算出し、スイッチ287,288にそれぞれ供給する。
In step S394, the
ここで、switchは、判定結果であり、条件を満たす場合、passingとなり乗算処理部285−1,285−2より供給された修正された画素値が選択され、条件を満たさない場合、blockingとなり入力されたGの画素値がそのまま使用される。また、VGG,VRR,VBBはそれぞれRGBの分散値であり、CovRG,CovGB,CovBRはそれぞれR-G,G-B,B-Rの相関係数であり、THはそれぞれの所定の閾値である。 Here, “switch” is a determination result, and when the condition is satisfied, it becomes “passing”, and the corrected pixel value supplied from the multiplication processing units 285-1 and 285-2 is selected. The obtained G pixel value is used as it is. V GG , V RR , and V BB are RGB dispersion values, Cov RG , Cov GB , and Cov BR are correlation coefficients of RG, GB, and BR, respectively, and TH is a predetermined threshold value. .
ステップS395において、スイッチ287,288は、判定結果がpassingであるか否かを判定し、例えば、passingであると判定した場合、ステップS396,S397において、それぞれ乗算処理部285−1,285−2より供給されたG-RおよびG-Bの相関に基づいて修正されたR,Bの画素値を選択し、その処理は、ステップS400に進む。
In step S395, the
一方、ステップS395において、passingではないと判定された場合、ステップS398,S399において、スイッチ287,288は、サンプリング処理部281−1より供給されてきたGの輝度値を選択し、その処理は、ステップS400に進む。
On the other hand, if it is determined in step S395 that it is not passing, in steps S398 and S399, the
ステップS400において、サンプリング処理部281−1乃至281−3は、未処理の画素が存在するか否かを判定し、未処理の画素があると判定された場合、その処理は、ステップS381に戻る。すなわち、未処理の画素がないと判定されるまで、ステップS381乃至S400の処理が繰り返されて、順次R,Bの画素値が修正される。 In step S400, the sampling processing units 281-1 to 281-3 determine whether there is an unprocessed pixel. If it is determined that there is an unprocessed pixel, the processing returns to step S381. . That is, until it is determined that there are no unprocessed pixels, the processing of steps S381 to S400 is repeated, and the R and B pixel values are sequentially corrected.
ステップS400において、未処理の画素がないと判定された場合、ステップS401において、スイッチ287,288は、それぞれ、これまでに計算したR,Bチャネルの画素値を修正した画像を出力する。
If it is determined in step S400 that there are no unprocessed pixels, in step S401, the
以上の処理により、チャネル間の相関性を利用して、ランダムな成分や色収差により生じるクロマ成分のノイズを、画素値を修正することにより除去することが可能となる。また、このように、3チャネルを信号を扱う構成の修正手段においては、ノイズ除去したい各チャネル(R,B)と基準となるチャネル(G)の間の関係だけでなく、ノイズ除去したいチャネル間の関係も合わせて判定をおこなうのでより特徴的なノイズ成分への対応が可能となる。特に、上述した式(9)の判定式により、例えば、高コントラストエッジ付近に現れる色収差の一種である色フレア現象はエッジの青乃至紫色の着色(パープルフリンジ)として見えることが多いが、このように特定の色相で目立つ場合を判別してそれを選択的に除去するようにすることが可能となる。 Through the above processing, it is possible to remove the noise of a chroma component caused by a random component or chromatic aberration by correcting the pixel value using the correlation between channels. In addition, in this way of correcting the configuration that handles signals for 3 channels, not only the relationship between each channel (R, B) to be denoised and the reference channel (G), but also between the channels to be denoised Therefore, it is possible to cope with more characteristic noise components. In particular, according to the above-described determination formula (9), for example, a color flare phenomenon that is a kind of chromatic aberration appearing near a high-contrast edge often appears as blue to purple coloring (purple fringe) of the edge. It is possible to discriminate a case where the image is conspicuous in a specific hue and selectively remove it.
判定式の条件を変えることで、その他の現象により発生するノイズを除去することも可能である。 By changing the conditions of the judgment formula, it is possible to remove noise generated by other phenomena.
以上によれば、固体撮像素子などのイメージセンサを用いて得られた画像信号のクロマ成分に混在するノイズ成分を効率よく除去し、色ムラや色ズレという現象をなくすことが可能になる。 According to the above, it is possible to efficiently remove the noise component mixed in the chroma component of the image signal obtained by using an image sensor such as a solid-state image sensor, and to eliminate the phenomenon of color unevenness and color misregistration.
また、以上によれば、基準となるチャネル(例えばG)信号に対して他のチャネル信号の相関がなるべく高くなるように推定(修正)する処理により、チャネル間の無相関な成分を低減することが可能となり、クロマ成分に混在するノイズを低減させるようにすることが可能となる。 In addition, according to the above, non-correlated components between channels can be reduced by estimating (correcting) so that the correlation between other channel signals is as high as possible with respect to a reference channel (for example, G) signal. Therefore, it is possible to reduce noise mixed in chroma components.
さらに、チャネル間相関が十分に強くないと判定された場合に、片方のチャネルの信号を遮断しもう一方のチャネル信号で置き換えるようにすることで、チャネル間相関が十分に高い場合にだけ、チャネル間相関を利用した画素値修正方法を使用することにより、効果的にノイズを除去することが可能となる。 Furthermore, when it is determined that the correlation between channels is not strong enough, the signal of one channel is cut off and replaced with the other channel signal, so that only when the correlation between channels is sufficiently high, By using a pixel value correction method using inter-correlation, noise can be effectively removed.
また、GとR、またはGとBというような2チャネル間の相関に基づく処理だけでなく、3チャネル以上のチャネル間相関を同時に評価することにより、よりクロマ成分のノイズを、さらに効果的に除去することが可能となる。 In addition to processing based on the correlation between two channels such as G and R, or G and B, as well as evaluating the correlation between three or more channels at the same time, the noise of chroma components can be further effectively reduced. It can be removed.
さらに、多重解像度処理により入力画像を複数の帯域に分離した後に、チャネル間相関に基づいたノイズ除去処理を実行することにより、多重解像度処理によって、従来では除去しきれなかった低周波成分のノイズ成分を効果的に除去することが可能となる。 Furthermore, after separating the input image into a plurality of bands by multi-resolution processing, noise removal processing based on inter-channel correlation is performed, so that noise components of low frequency components that could not be removed conventionally by multi-resolution processing Can be effectively removed.
上述した一連の処理は、ハードウェアにより実行させることもできるが、ソフトウェアにより実行させることもできる。一連の処理をソフトウェアにより実行させる場合には、そのソフトウェアを構成するプログラムが、専用のハードウェアに組み込まれているコンピュータ、または、各種のプログラムをインストールすることで、各種の機能を実行させることが可能な、例えば汎用のパーソナルコンピュータなどに記録媒体からインストールされる。 The series of processes described above can be executed by hardware, but can also be executed by software. When a series of processes is executed by software, a program constituting the software may execute various functions by installing a computer incorporated in dedicated hardware or various programs. For example, it is installed from a recording medium in a general-purpose personal computer or the like.
図28は、図2のDSPブロック16の電気的な内部構成をソフトウェアにより実現する場合のパーソナルコンピュータの一実施の形態の構成を示している。パーソナルコンピュータのCPU401は、パーソナルコンピュータの全体の動作を制御する。また、CPU401は、バス404および入出力インタフェース405を介してユーザからキーボードやマウスなどからなる入力部406から指令が入力されると、それに対応してROM(Read Only Memory)402に格納されているプログラムを実行する。あるいはまた、CPU401は、ドライブ410に接続された磁気ディスク421、光ディスク422、光磁気ディスク423、または半導体メモリ424から読み出され、記憶部408にインストールされたプログラムを、RAM(Random Access Memory)403にロードして実行する。これにより、上述した図2のDSPブロック16の機能が、ソフトウェアにより実現されている。さらに、CPU401は、通信部409を制御して、外部と通信し、データの授受を実行する。
FIG. 28 shows a configuration of an embodiment of a personal computer when the electrical internal configuration of the
プログラムが記録されている記録媒体は、図26に示すように、コンピュータとは別に、ユーザにプログラムを提供するために配布される、プログラムが記録されている磁気ディスク421(フレキシブルディスクを含む)、光ディスク422(CD-ROM(Compact Disc-Read Only Memory),DVD(Digital Versatile Disk)を含む)、光磁気ディスク423(MD(Mini-Disc)を含む)、もしくは半導体メモリ424などよりなるパッケージメディアにより構成されるだけでなく、コンピュータに予め組み込まれた状態でユーザに提供される、プログラムが記録されているROM402や、記憶部408に含まれるハードディスクなどで構成される。
As shown in FIG. 26, the recording medium on which the program is recorded is distributed to provide the program to the user separately from the computer. The magnetic disk 421 (including the flexible disk) on which the program is recorded is distributed. By a package medium composed of an optical disk 422 (including compact disc-read only memory (CD-ROM), DVD (digital versatile disk)), a magneto-optical disk 423 (including MD (mini-disc)), or a
尚、本明細書において、記録媒体に記録されるプログラムを記述するステップは、記載された順序に沿って時系列的に行われる処理は、もちろん、必ずしも時系列的に処理されなくとも、並列的あるいは個別に実行される処理を含むものである。 In this specification, the step of describing the program recorded on the recording medium is not limited to the processing performed in time series in the order described, but of course, it is not necessarily performed in time series. Or the process performed separately is included.
11 レンズ, 12 絞り, 13 イメージセンサ, 14 相関2重サンプリング回路, 15 A/Dコンバータ, 16 DSPブロック, 17 タイミングジェネレータ, 18 D/Aコンバータ, 19 ビデオエンコーダ, 20 表示部, 21 コーデック処理部, 22 メモリ, 23 CPU, 24 操作入力部, 25 バス, 41 デモザイク処理部, 42 非線形変換処理部, 43 ノイズ除去処理部, 44 非線形逆変換処理部, 45 ホワイトバランス処理部, 46 ガンマ補正処理部, 47 YC変換処理部, 61 マッピング処理部, 62 変換曲線LUT, 81,81−1,81−2 多重解像度変換処理部, 82 レイヤ0画像メモリ, 83 レイヤ1画像メモリ, 84 レイヤ2画像メモリ, 85 レイヤ3画像メモリ,86,86−1乃至86−3 修正処理部, 87 レイヤ0ノイズ除去画像, 88 レイヤ1ノイズ除去画像, 89 レイヤ2ノイズ除去画像, 90 多重解像度逆変換処理部, 111,111−1乃至111−3 縮小処理部, 112,112−1乃至112−3 減算処理部, 113,113−1乃至113−3, 拡大処理部, 131,132 サンプリング処理部, 133 分散算出処理部, 134 クリッピング処理部, 135 除算処理部, 136 共分散算出処理部, 137 乗算処理部, 151,151−1乃至151−3 拡大処理部, 152,152−1乃至152−3 加算処理部, 171 逆マッピング処理部, 172 変換曲線LUT, 201,201−1,201−2 サンプリング処理部, 202,202−1,202−2 分散算出処理部, 203 共分散算出処理部, 204 クリッピング処理部, 205 除算処理部, 206 乗算処理部, 207 相関係数算出処理部, 208 スイッチ, 221,221−1,221−2 サンプリング処理部, 222,222−1,222−2 分散算出処理部, 223 共分散算出処理部, 224 クリッピング処理部, 225 除算処理部, 226 乗算処理部, 227 差分算出処理部, 228 スイッチ, 251,251−1,251−2 多重解像度変換処理部, 252,252−1乃至252−3 レイヤ0画像メモリ, 253,253−1乃至253−3 レイヤ1画像メモリ, 254,254−1乃至254−3 レイヤ2画像メモリ, 255,255−1乃至255−3 レイヤ3画像メモリ,256,256−1乃至256−3 修正処理部, 257,257−1,257−2 レイヤ0ノイズ除去画像, 258,258−1,258−2 レイヤ1ノイズ除去画像, 259,259−1,259−2 レイヤ2ノイズ除去画像, 260,260−1,260−2 多重解像度逆変換処理部, 281,281−1乃至281−3 サンプリング処理部, 282 分散共分散相関係数算出処理部, 283 クリッピング処理部, 284,284−1,284−2 除算処理部, 285,285−1,285−2 乗算処理部, 286 判定処理部, 287,288 スイッチ 11 lens, 12 aperture, 13 image sensor, 14 correlated double sampling circuit, 15 A / D converter, 16 DSP block, 17 timing generator, 18 D / A converter, 19 video encoder, 20 display unit, 21 codec processing unit, 22 memory, 23 CPU, 24 operation input unit, 25 bus, 41 demosaic processing unit, 42 nonlinear transformation processing unit, 43 noise removal processing unit, 44 nonlinear inverse transformation processing unit, 45 white balance processing unit, 46 gamma correction processing unit, 47 YC conversion processing unit, 61 mapping processing unit, 62 conversion curve LUT, 81, 81-1, 81-2 multi-resolution conversion processing unit, 82 layer 0 image memory, 83 layer 1 image memory, 84 layer 2 image memory, 85 Layer 3 image memory, 6, 86-1 to 86-3 correction processing unit, 87 layer 0 noise-removed image, 88 layer 1 noise-removed image, 89 layer 2 noise-removed image, 90 multi-resolution inverse transform processing unit, 111, 111-1 to 111- 3 reduction processing unit, 112, 112-1 to 112-3 subtraction processing unit, 113, 113-1 to 113-3, enlargement processing unit, 131, 132 sampling processing unit, 133 variance calculation processing unit, 134 clipping processing unit, 135 division processing unit, 136 covariance calculation processing unit, 137 multiplication processing unit, 151, 151-1 to 151-3 enlargement processing unit, 152, 152-1 to 152-3 addition processing unit, 171 inverse mapping processing unit, 172 Conversion curve LUT, 201, 201-1, 201-2 sampling processing unit, 202, 02-1, 202-2 variance calculation processing unit, 203 covariance calculation processing unit, 204 clipping processing unit, 205 division processing unit, 206 multiplication processing unit, 207 correlation coefficient calculation processing unit, 208 switch, 221, 221-1 , 221-2 sampling processing unit, 222, 222-1, 222-2 variance calculation processing unit, 223 covariance calculation processing unit, 224 clipping processing unit, 225 division processing unit, 226 multiplication processing unit, 227 difference calculation processing unit, 228 switch, 251, 251-1, 251-2 multi-resolution conversion processing unit, 252, 252-1 to 252-3 layer 0 image memory, 253, 253-1 to 253-3 layer 1 image memory, 254, 254 1 to 254-3 Layer 2 image memory, 255, 255-1 to 55-3 Layer 3 image memory, 256, 256-1 to 256-3 Correction processing unit, 257, 257-1, 257-2 Layer 0 noise-removed image, 258, 255-1, 255-2 Layer 1 noise-removed image 259, 259-1, 259-2 layer 2 noise-removed image, 260, 260-1, 260-2 multi-resolution inverse transform processing unit, 281, 281-1 to 281-3 sampling processing unit, 282 dispersive covariance phase Relation number calculation processing unit, 283 clipping processing unit, 284, 284-1, 284-2 division processing unit, 285, 285-1, 285-2 multiplication processing unit, 286 determination processing unit, 287, 288 switch
Claims (8)
前記多重解像度変換手段により変換されたレイヤ画像のうち、最低解像度のレイヤ画像を除く各レイヤ画像において、前記3個以上の画像中の1つの画像を、前記3個以上の画像間の相関に基づいて修正する修正手段と、
前記修正手段により修正された各レイヤ画像を多重解像度逆変換する多重解像度逆変換手段と、
注目画素の周辺から前記3個以上の画像のそれぞれの注目画素に対応した位置に配置される周辺画素の画素値を抽出する抽出手段と、
前記3個以上の画像のそれぞれについて、前記周辺画素の画素値に基づいて、分散値を算出する分散値算出手段と、
前記3個以上の画像のそれぞれの分散値に基づいて、前記3個以上の画像のうちのいずれか1個の特定画像の注目画素の画素値を、前記特定画像以外の画像における注目画素の画素値として選択する選択手段と
を備えることを特徴とする画像処理装置。 For each pixel, multi-resolution conversion means for converting three or more images that can be assumed to have a linear relationship in a local region in the vicinity thereof to a plurality of layer images of the multi-resolution image;
Among the layer images converted by the multi-resolution conversion means, in each layer image excluding the lowest resolution layer image, one of the three or more images is determined based on the correlation between the three or more images. Correction means to correct,
Multi-resolution inverse transforming means for multi-resolution inverse transforming each layer image modified by the modifying means ;
Extraction means for extracting pixel values of peripheral pixels arranged at positions corresponding to the respective target pixels of the three or more images from the periphery of the target pixel;
For each of the three or more images, a variance value calculating means for calculating a variance value based on the pixel values of the surrounding pixels;
Based on the variance value of each of the three or more images, the pixel value of the target pixel of any one specific image of the three or more images is used as the pixel of the target pixel in an image other than the specific image. An image processing apparatus comprising: selection means for selecting as a value .
前記3個以上の画像のそれぞれの前記周辺画素の画素値に基づいて、前記3個以上の画像の共分散値を算出する共分散値算出手段と、
前記3個以上の画像のそれぞれの分散値、および前記共分散値の全ての組み合わせの相関を算出する相関算出手段とを備え、
前記選択手段は、前記3個以上の画像の全ての組み合わせで相関が弱い場合、前記3個以上の画像のうちのいずれか1個の特定画像の注目画素の画素値を、前記特定画像以外の画像における注目画素の画素値として選択する
ことを特徴とする請求項1に記載の画像処理装置。 The correcting means is
Based on the pixel value of each of the peripheral pixels of the three or more images, and covariance value calculation means for calculating a covariance value of said three or more images,
Each of the dispersion values of the three or more images, and a correlation calculating means for calculating a correlation of all combinations of the covariance value,
When the correlation is weak in all combinations of the three or more images , the selection unit determines the pixel value of the pixel of interest of any one specific image of the three or more images other than the specific image. It is selected as the pixel value of the pixel of interest in the image
The image processing apparatus according to claim 1, characterized in that.
ことを特徴とする請求項1に記載の画像処理装置。 The selection means determines the pixel value of the target pixel of any one specific image of the three or more images when the variance values of the three or more images are all within a predetermined range. It is selected as the pixel value of the pixel of interest in the image other than the specific image
The image processing apparatus according to claim 1, characterized in that.
前記3個以上の画像を多重解像度画像の複数のレイヤ画像に変換する前に入力画像に非線形変換を適用する非線形変換手段を備える
ことを特徴とする請求項1に記載の画像処理装置。 The multi-resolution image conversion means includes:
The image processing apparatus according to claim 1, further comprising non-linear conversion means that applies non-linear conversion to an input image before converting the three or more images into a plurality of layer images of a multi-resolution image.
ことを特徴とする請求項4に記載の画像処理装置。 The image processing apparatus according to claim 4, wherein the non-linear conversion unit converts the three or more images into a plurality of layer images of a multi-resolution image by logarithmic conversion.
ことを特徴とする請求項4に記載の画像処理装置。 The image processing apparatus according to claim 4, wherein the non-linear conversion unit converts the three or more images into a plurality of layer images of a multi-resolution image by gamma correction processing.
前記多重解像度変換ステップの処理により変換されたレイヤ画像のうち、最低解像度のレイヤ画像を除く各レイヤ画像において、前記3個以上の画像中の1つの画像を、前記3個以上の画像間の相関に基づいて修正する修正ステップと、
前記修正ステップの処理により修正された各レイヤ画像を多重解像度逆変換する多重解像度逆変換ステップと、
注目画素の周辺から前記3個以上の画像のそれぞれの注目画素に対応した位置に配置される周辺画素の画素値を抽出する抽出ステップと、
前記3個以上の画像のそれぞれについて、前記周辺画素の画素値に基づいて、分散値を算出する分散値算出ステップと、
前記3個以上の画像のそれぞれの分散値に基づいて、前記3個以上の画像のうちのいずれか1個の特定画像の注目画素の画素値を、前記特定画像以外の画像における注目画素の画素値として選択する選択ステップと
を含むことを特徴とする画像処理方法。 For each pixel, a multi-resolution conversion step of converting three or more images that can be assumed to have a linear relationship in a local region in the vicinity thereof to a plurality of layer images of the multi-resolution image;
Among the layer images converted by the multi-resolution conversion step, in each layer image excluding the lowest resolution layer image, one of the three or more images is correlated with the three or more images. A correction step to correct based on
A multi-resolution inverse transform step of performing multi-resolution inverse transform on each layer image modified by the modification step ;
An extraction step of extracting pixel values of peripheral pixels arranged at positions corresponding to the target pixels of the three or more images from the periphery of the target pixel;
For each of the three or more images, a variance value calculating step for calculating a variance value based on a pixel value of the surrounding pixels;
Based on the variance value of each of the three or more images, the pixel value of the target pixel of any one specific image of the three or more images is used as the pixel of the target pixel in an image other than the specific image. And a selection step of selecting as a value .
前記多重解像度変換ステップの処理により変換されたレイヤ画像のうち、最低解像度のレイヤ画像を除く各レイヤ画像において、前記3個以上の画像中の1つの画像を、前記3個以上の画像間の相関に基づいて修正する修正ステップと、
前記修正ステップの処理により修正された各レイヤ画像を多重解像度逆変換する多重解像度逆変換ステップと、
注目画素の周辺から前記3個以上の画像のそれぞれの注目画素に対応した位置に配置される周辺画素の画素値を抽出する抽出ステップと、
前記3個以上の画像のそれぞれについて、前記周辺画素の画素値に基づいて、分散値を算出する分散値算出ステップと、
前記3個以上の画像のそれぞれの分散値に基づいて、前記3個以上の画像のうちのいずれか1個の特定画像の注目画素の画素値を、前記特定画像以外の画像における注目画素の画素値として選択する選択ステップと
を含む処理をコンピュータに実行させることを特徴とするプログラム。 For each pixel, a multi-resolution conversion step of converting three or more images that can be assumed to have a linear relationship in a local region in the vicinity thereof to a plurality of layer images of the multi-resolution image;
Among the layer images converted by the multi-resolution conversion step, in each layer image excluding the lowest resolution layer image, one of the three or more images is correlated with the three or more images. A correction step to correct based on
A multi-resolution inverse transform step of performing multi-resolution inverse transform on each layer image modified by the modification step ;
An extraction step of extracting pixel values of peripheral pixels arranged at positions corresponding to the target pixels of the three or more images from the periphery of the target pixel;
For each of the three or more images, a variance value calculating step for calculating a variance value based on a pixel value of the surrounding pixels;
Based on the variance value of each of the three or more images, the pixel value of the target pixel of any one specific image of the three or more images is used as the pixel of the target pixel in an image other than the specific image. A program for causing a computer to execute processing including a selection step of selecting as a value .
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2010163165A JP5035646B2 (en) | 2010-07-20 | 2010-07-20 | Image processing apparatus and method, and program |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2010163165A JP5035646B2 (en) | 2010-07-20 | 2010-07-20 | Image processing apparatus and method, and program |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2005128832A Division JP5035585B2 (en) | 2005-04-27 | 2005-04-27 | Image processing apparatus and method, and program |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2011004407A JP2011004407A (en) | 2011-01-06 |
JP5035646B2 true JP5035646B2 (en) | 2012-09-26 |
Family
ID=43561906
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2010163165A Expired - Fee Related JP5035646B2 (en) | 2010-07-20 | 2010-07-20 | Image processing apparatus and method, and program |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP5035646B2 (en) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104285173B (en) * | 2012-05-07 | 2018-05-25 | 株式会社尼康 | Focus detection device |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3670754B2 (en) * | 1996-04-15 | 2005-07-13 | オリンパス株式会社 | Signal processing device |
JP3914628B2 (en) * | 1998-01-28 | 2007-05-16 | オリンパス株式会社 | Image processing device |
JP3995854B2 (en) * | 1999-06-10 | 2007-10-24 | 富士フイルム株式会社 | Image processing method and apparatus, and recording medium |
JP4216973B2 (en) * | 1999-11-09 | 2009-01-28 | オリンパス株式会社 | Signal processing device |
US7079705B2 (en) * | 2002-10-30 | 2006-07-18 | Agilent Technologies, Inc. | Color interpolation for image sensors using a local linear regression method |
-
2010
- 2010-07-20 JP JP2010163165A patent/JP5035646B2/en not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP2011004407A (en) | 2011-01-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7139022B1 (en) | Edge enhancer for RGB-Beyer to YUV 4:2:0 converter with sharpened-Y feedback to U, V transformer | |
US7548264B2 (en) | Image processing apparatus and image processing method, and program | |
JP4290193B2 (en) | Image processing device | |
US8103119B2 (en) | Image processing device, image processing method, image processing program product, and image-capturing device | |
JP5443533B2 (en) | Image processing apparatus, image display apparatus, and image processing method | |
US7570288B2 (en) | Image processor | |
CN102143322B (en) | Image capturing apparatus and control method thereof | |
JP2007293431A (en) | Image processor | |
JP2008205691A (en) | Image processor and image processing method, recording medium, and program | |
JP2008263475A (en) | Image processing device, method, and program | |
US11546562B2 (en) | Efficient and flexible color processor | |
WO2016047240A1 (en) | Image processing device, image pickup element, image pickup device, and image processing method | |
JP5709131B2 (en) | Image processing system | |
JP4406443B2 (en) | Image correction device | |
JP2005056374A (en) | Apparatus for and method of edge enhancement in image processing | |
JP4321064B2 (en) | Image processing apparatus and image processing program | |
KR102406215B1 (en) | Methods of correcting color fringe and processing image data using the same | |
JP5771677B2 (en) | Image processing apparatus, imaging apparatus, program, and image processing method | |
CN104410786A (en) | Image processing apparatus and control method for image processing apparatus | |
US20100295975A1 (en) | Image processing device and image processing program | |
JP4241774B2 (en) | Image processing apparatus, image processing method, and program | |
JP4947624B2 (en) | White balance adjustment method | |
CN115004220B (en) | Neural network for raw low-light image enhancement | |
JP5035585B2 (en) | Image processing apparatus and method, and program | |
JP5035646B2 (en) | Image processing apparatus and method, and program |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20110524 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20110725 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20120607 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20120620 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20150713 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20150713 Year of fee payment: 3 |
|
LAPS | Cancellation because of no payment of annual fees |