JP2004303076A - 画像処理方法及び画像処理装置 - Google Patents
画像処理方法及び画像処理装置 Download PDFInfo
- Publication number
- JP2004303076A JP2004303076A JP2003097187A JP2003097187A JP2004303076A JP 2004303076 A JP2004303076 A JP 2004303076A JP 2003097187 A JP2003097187 A JP 2003097187A JP 2003097187 A JP2003097187 A JP 2003097187A JP 2004303076 A JP2004303076 A JP 2004303076A
- Authority
- JP
- Japan
- Prior art keywords
- value
- pixel
- image
- input
- pixels
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000003672 processing method Methods 0.000 title claims description 29
- 230000009467 reduction Effects 0.000 claims abstract description 44
- 238000000034 method Methods 0.000 claims description 98
- 230000000903 blocking effect Effects 0.000 claims description 8
- 238000001914 filtration Methods 0.000 claims description 3
- 238000006467 substitution reaction Methods 0.000 abstract 3
- 238000012545 processing Methods 0.000 description 60
- 230000000694 effects Effects 0.000 description 41
- 230000008569 process Effects 0.000 description 36
- 238000004364 calculation method Methods 0.000 description 25
- 238000010586 diagram Methods 0.000 description 25
- 230000002411 adverse Effects 0.000 description 12
- 230000006870 function Effects 0.000 description 10
- 238000012937 correction Methods 0.000 description 4
- 230000002349 favourable effect Effects 0.000 description 4
- 230000002093 peripheral effect Effects 0.000 description 4
- 230000035945 sensitivity Effects 0.000 description 4
- 230000008859 change Effects 0.000 description 3
- 230000007423 decrease Effects 0.000 description 3
- 239000000284 extract Substances 0.000 description 3
- 238000000605 extraction Methods 0.000 description 3
- 238000003384 imaging method Methods 0.000 description 3
- 230000000007 visual effect Effects 0.000 description 3
- 238000004891 communication Methods 0.000 description 2
- 230000006866 deterioration Effects 0.000 description 2
- 238000009499 grossing Methods 0.000 description 2
- 238000012935 Averaging Methods 0.000 description 1
- 239000003086 colorant Substances 0.000 description 1
- 125000004122 cyclic group Chemical group 0.000 description 1
- 230000003247 decreasing effect Effects 0.000 description 1
- 230000001934 delay Effects 0.000 description 1
- 230000002542 deteriorative effect Effects 0.000 description 1
- 230000008030 elimination Effects 0.000 description 1
- 238000003379 elimination reaction Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 239000004744 fabric Substances 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000004321 preservation Methods 0.000 description 1
- 238000007639 printing Methods 0.000 description 1
- 238000013139 quantization Methods 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 238000000926 separation method Methods 0.000 description 1
- 230000009466 transformation Effects 0.000 description 1
Images
Landscapes
- Picture Signal Circuits (AREA)
- Editing Of Facsimile Originals (AREA)
- Facsimile Image Signal Circuits (AREA)
- Image Processing (AREA)
Abstract
【課題】解像度の低下などの弊害を抑えつつ、低周波ノイズの低減も最小限のメモリ容量で行う。
【解決手段】入力画像を所定の倍率に削減(101)して得た削減画像から入力画素に対応する削減画素を含む所定サイズのウインドウ内の削減画素を抽出(102)する。抽出したウインドウ内の削減画素に基づき、入力画素の値を置換する置換データを生成(103、105、106)し、各置換データと入力画素の値との差分値を求め(107、108、109)、差分値を第1の閾値と比較(111)し、差分値が第1の閾値未満または以下の場合に、入力画素の値を置換データで置換(112)する。
【選択図】 図1
【解決手段】入力画像を所定の倍率に削減(101)して得た削減画像から入力画素に対応する削減画素を含む所定サイズのウインドウ内の削減画素を抽出(102)する。抽出したウインドウ内の削減画素に基づき、入力画素の値を置換する置換データを生成(103、105、106)し、各置換データと入力画素の値との差分値を求め(107、108、109)、差分値を第1の閾値と比較(111)し、差分値が第1の閾値未満または以下の場合に、入力画素の値を置換データで置換(112)する。
【選択図】 図1
Description
【0001】
【発明の属する技術分野】
本発明は、入力された多値画像のノイズを低減する技術に関する。
【0002】
【従来の技術】
従来、信号成分とは異なるノイズが重畳されたデジタル画像からノイズ成分を除去する研究が行われている。またノイズの特性も発生原因毎に多種多様に分類され、その特性に合わせたノイズ除去方法が提案されている。例えば、デジタルカメラやイメージスキャナなどの画像入力機器を想定すると、固体撮像素子などの入力デバイス特性、撮影モード、撮影シーンなどの入力条件に依存するものなどの光電変換したアナログ原信号に既に重畳されているノイズと、A/D変換器を介してデジタル信号に変換された後、各種デジタル信号処理を経る過程により重畳されるノイズとに大別できる。
【0003】
前者の例としては、周囲の画像信号とは無相関に突出した値が発生するインパルス系のノイズや、固体撮像素子の暗電流によるノイズが挙げられる。また後者の例としては、ガンマ補正、感度アップのゲイン補正等の各種補正処理においてノイズ成分が特定濃度、特定色等の強調時に、信号成分と同時に増幅されることによりノイズレベルが増加する例もある。また、デジタル信号処理による劣化としてJPEGアルゴリズムを用いた符号化時には、2次元の画像情報はブロック状に切り出され、ブロック単位に直交変換、量子化を行うために、復号後の画像ではブロック境界で段差が発生するブロック歪みが生じる例がある。
【0004】
昨今、上述した各種ノイズも含め、特に画質を劣化させている要因に挙げられているのは、デジタルカメラで撮影した画像に顕著に見られる低周波帯域に発生するノイズ(以降、低周波ノイズと称す)である。これは、固体撮像素子であるCCDやCMOSセンサの感度に起因する場合もあるし、また信号レベルの低い暗部や影になる部分などでの撮影シーンでは、S/N比が悪いにも関わらず信号成分を持ち上げるゲイン補正により低周波ノイズが強調される場合もある。また、素子感度は撮像素子のチップ面積にも依存するため、小面積にも関わらず画素数を多く配置したデジタルカメラでは、結果的に単位画素当たりの光量が少なくなり、感度が減少してノイズが発生することが多い。低周波ノイズは、青空等の平坦部に数画素から十数画素に渡って擬似的な斑状のテクスチャ(斑状ノイズ)として視認される場合が多い。デジタルカメラによっては偽色を発生させる場合もある。
【0005】
従来より提案されている一般的なノイズ除去方法は、メディアンフィルタを用いた方法と低周波帯域のみを通過させるローパスフィルタ(以下LPFと略す)を用いる方法とが主流である。
【0006】
メディアンフィルタを用いた方法は、注目画素を含む周囲画素からなるウインドウ内でメディアン(中央値)になる画素値を抽出し、その抽出値を注目画素値に置換する方法(例えば、特許文献1参照。)を始めとして多数の提案がある。もし注目画素がインパルス系のノイズ、ランダムノイズである場合、メディアンフィルタを用いると、注目画素の値を周囲画素との相関が低い突出値から相関の高いメディアンに置換することにより、原情報に生じていた突出値を消失させることが可能である。
【0007】
LPFを用いた方法は、例えば図18に示すような注目画素を中心とした周囲の複数画素の平均値を計算し、算出した平均値を注目画素の値として置き換える方法である。この方法は、主に上述のブロック歪みなどに効果がある。ブロック歪みは平坦領域に信号成分とは異なるブロック状の段差が発生するノイズであるため、段差の傾斜を緩やかにすることにより視覚的に段差を見えづらくすることが可能である。
【0008】
尚、上述した2つの方法は、局所的には効果的に働くが、逆にエッジ部がぼけてしまうなどの弊害がある。そのため、両者の方法には数多くの変形例が提案されている。例えば、フィルタ処理によるボケを発生させないために平均値を算出する周辺画素を注目画素の画素値に近似するものだけを選択して積和演算を行う方法(例えば、特許文献2参照。)が提案されている。
【0009】
また、上述したメディアンフィルタを用いた方法やLPFを用いた方法の他にも、ノイズ、歪みを除去する提案は数多く、ブロック歪みを除去するためにブロック境界の両側に位置する画素間で信号値を交換する方法(例えば、特許文献3参照。)や、ブロック境界周辺の画素信号レベルに複数のパターンの中から乱数により選択された所定パターンを加算する方法(例えば、特許文献4参照。)が開示されている。また、ブロック境界を中心とする特定注目画素のレベル値に誤差を加えることにより、符号化時に生じるブロック歪みを除去する方法(例えば、特許文献5参照。)、突出した値をとる白点、黒点を除去するために注目画素の近傍画素群のうち、最大値、最小値を検出し、ノイズが含まれているかの判定結果を制御信号として、最大値、最小値、注目画素値の何れかを選択することによりノイズを除去する方法(例えば、特許文献6参照。)も開示されている。
【0010】
また、近年ノイズ除去のような画像処理はパーソナルコンピュータ(PC)のようなホストコンピュータで行うことが多かったが、最近はホストコンピュータに接続することなく、単体で画像処理を行い、印字を行う記録装置(ダイレクト記録装置)(例えば、特許文献7参照。)も出現している。
【0011】
【特許文献1】
特開平4−235472号公報
【特許文献2】
特開2000−245179号公報
【特許文献3】
特開平8−56357号公報
【特許文献4】
特開平10−98722号公報
【特許文献5】
特開平7−75103号公報
【特許文献6】
特開平4−239886号公報
【特許文献7】
特登録03161427号
【特許文献8】
特開平7−203210号公報
【特許文献9】
特願2002−164625号公報
【発明が解決しようとする課題】
しかしながら、上記従来例の何れも前述した斑状ノイズなどの低周波ノイズには効果を発揮しない。特に、メディアンフィルタを用いた方法では、周囲と相関の低い突出値を削除する効果のみであり、またLPFを用いた方法では、高周波域をカットオフするため、高周波ノイズ、もしくはランダム性の高い白色雑音に効果を示すのみで、低周波ノイズは依然として軽減されない。
【0012】
また、ブロック歪みを除去する目的である特許文献3の方法は、ブロック歪みが矩形状の段差として発生する高周波成分であるが故に、ブロック境界さえ既知であれば、乱数加算による方法やブロック間の画素値を交換する方法により段差が軽減する効果は期待できる。しかし、低周波ノイズでは、数画素から十数画素に渡る広い範囲で、変化の少ない画素値が連続する連結性ノイズであり、ブロック歪み軽減の技術をそのまま応用することはできない。当然、ノイズが発生している位置情報はブロック符号化時のブロック境界のように既知ではない。
【0013】
また、前述した乱数加算による方法では、周囲の画素では存在していない画素値を適合するため、特にカラー画像においては、色分解された各色成分毎に乱数を加算すると、周囲には存在していない新規な色を作成することになり、逆に偽色発生等の画質劣化を引き起こさせる。
【0014】
尚、前述したノイズ除去とは目的が異なるが、特定の周波数の電力を軽減する方法(例えば、特許文献8参照。)についても開示されている。この特許文献8に記載の発明では、網点原稿を入力し、出力時に擬似階調処理のディザ化を行うシステムにおいて、入力した網点の周波数とディザによる周波数が干渉することによりモアレが発生してしまうが、そのモアレ発生を防ぐために、入力した網点の周波数を予め除去するモアレ除去方法が開示されている。網点の周波数を除去するには所定の規則性を乱すことが有効であるため、一次元で所定画素数分距離が先行している画素値と注目画素値とを交換する方法である。所定画素数分は、固定である場合と、ランダムに選択する場合とが開示されている。
【0015】
しかし、このモアレ除去方法も、ピークのある特定周期を乱すのが目的であるために、低周波帯域に広く発生している低周波ノイズには有効ではない。また、画素値の交換のため、濃度保存は保証されるが、選択画素値も変化してしまうため、空間的に画素の位相を移動させているだけになる。また、選択画素値の変化はフィルタ特性としては巡回型となり、インパルス応答は無限大になる。交換画素間距離の所定画素数をランダムに選択した場合でも、サンプリングした画素を逐次交換していくことになるので、単に特定周期で発生する網点のピークの位相を移動することによりモアレ周期をずらしているに過ぎない。
【0016】
即ち、前述した何れの特許文献に記載の発明においても低周波帯域に発生するノイズを効果的に軽減することはできなかった。
【0017】
この低周波帯域に発生するノイズを効果的に軽減する方法については、例えば特許文献9に開示されている。この方法は、入力画像の注目画素及び周辺画素を参照するウインドウから画素を選択し、選択画素と注目画素から新たな画素値を決定して出力する方法であり、低周波帯域に発生するノイズを効果的に軽減することができた。
【0018】
しかしながら、前述したホストコンピュータを介することなく記録を行うダイレクト記録装置において、特許文献9の発明を実施する際にはメモリ容量増大のためにコストアップにつながることがあった。特許文献9の発明では、入力画像の注目画素及び周辺画素を参照するため、参照する周辺画素が多くなるに従って必要なメモリ容量が増大する。ホストコンピュータに比べてダイレクト記録装置はメモリ容量が小さいため、特許文献9の発明実施のメモリ占有率が高くなる。メモリ容量の増大が必要な場合もあった。
【0019】
本発明は、上述の課題を解決するためになされたもので、解像度の低下などの弊害を抑えつつ、低周波ノイズの低減も最小限のメモリ容量で行うことを目的とする。
【0020】
【課題を解決するための手段】
上記目的を達成するために、本発明の画像処理方法は、入力画像を所定の倍率に削減して削減画像を得る工程と、前記削減画像から入力画素に対応する削減画素を含む所定サイズのウインドウ内の削減画素を抽出する工程と、抽出したウインドウ内の削減画素に基づき、前記入力画素の値を置換する置換データを生成する工程と、前記置換データと前記入力画素の値との差分値を求める工程と、前記差分値を第1の閾値と比較する工程と、前記差分値が前記第1の閾値未満または以下の場合に前記入力画素の値を前記置換データで置換する工程とを有することを特徴とする。
【0021】
また上記目的を達成するために、本発明の画像処理装置は、入力画像を所定の倍率に削減して削減画像を得る手段と、前記削減画像から入力画素に対応する削減画素を含む所定サイズのウインドウ内の削減画素を抽出する手段と、抽出したウインドウ内の削減画素に基づき、前記入力画素の値を置換する置換データを生成する手段と、前記置換データと前記入力画素の値との差分値を求める手段と、前記差分値を第1の閾値と比較する手段と、前記差分値が前記第1の閾値未満または以下の場合に前記入力画素の値を前記置換データで置換する手段とを有することを特徴とする。
【0022】
【発明の実施の形態】
以下、図面を参照しながら本発明に係る実施の形態を詳細に説明する。以下に説明する実施形態は、本発明の技術分野における当業者による実施を容易にするために開示を提供するものであり、特許請求の範囲で確定される本発明の技術的範囲に含まれるほんの一部の実施形態に過ぎない。
【0023】
従って、明細書に直接的に記載されていない実施形態であっても、技術思想が共通する限り本発明の技術的範囲に包含されることは当業者にとって自明であろう。
【0024】
尚、便宜上複数の実施形態を記載するが、これらは個別に発明として成立するだけでなく、もちろん、複数の実施形態を適宜組み合わせることでも発明が成立することは、当業者であれば容易に理解できよう。
【0025】
[第1の実施形態]
図1は、第1の実施形態における画像処理装置の構成を示すブロック図である。図1において、101は画像削減部であり、入力画像を所定の倍率(例えば、1/4)に削減する。102は画素抽出部であり、削減された画像より入力画素位置を中心とするn×m(m、nは整数)の矩形状(ウインドウ)に画素を抽出する。103はウインドウ内平均値演算部であり、抽出したウインドウ内の画素値の平均値を生成する。104は領域判定部であり、例えばウインドウ内の削減画素値をウインドウ内平均値と比較し、画素値がウインドウ内平均値以下の画素は領域0と判定し、それ以外の画素は領域1と判定する。105は領域0平均値演算部であり、領域判定部104で領域0と判定された画素のウインドウ内平均値を生成する。106は領域1平均値演算部であり、領域判定部104で領域1と判定された画素のウインドウ内平均値を生成する。
【0026】
110はタイミング調整部であり、入力画像(注目画素)を各処理部におけるレイテンシ相当分遅延する。107は領域0差分値生成部であり、領域0平均値演算部105の出力とタイミング調整部110で遅延補償された入力画像(注目画素)との差分絶対値を生成する。108は領域1差分値生成部であり、領域1平均値演算部106の出力とタイミング調整部110で遅延補償された入力画像(注目画素)との差分絶対値を生成する。109はウインドウ内差分値生成部であり、ウインドウ内平均値演算部103の出力とタイミング調整部110で遅延補償された入力画像(注目画素)との差分絶対値を生成する。111は比較部であり、上記3つの差分値生成部107,108,109の差分絶対値の内、閾値Th1未満または以下で最小となる平均値を選択するように画素置換部112を制御する。尚、何れの差分絶対値も閾値Th1未満または以下にならない場合は入力画像(注目画素)を選択するように画素置換部112を制御する。そして、112は画素置換部であり、閾値Th1未満または以下の最小差分絶対値が存在した時のみ入力画素値を上記条件を満たす平均値で置換する。
【0027】
次に、上述の画像削減部101の概略構成及び処理について説明する。
【0028】
図2は、第1の実施形態における画像削減部101の構成を示すブロック図である。図2において、201は入力画像データを削減率に応じてブロック化するブロック化部である。ここでは、削減率が1/Aである場合、A×Aのブロックサイズを設定する。また、設定のブロックサイズで入力画像データをブロック化する方法は後述するように種々あるが、入力画像の各画素が何れかのブロックに割り当てられるようにブロック設定すれば良い。
【0029】
図3は、ブロック化を説明するための図である。図3に示す(a)は入力画像の少なくとも端部領域の一部にブロックサイズを小さくしたブロックを適用する方法を説明する図である。1286×966画素の元画像を1/4に削減する場合、右端の領域は2×4のブロックサイズ、下端の領域は4×2のブロックサイズ、右端の下端の領域は2×2のブロックサイズ、その他の領域は4×4のブロックサイズを設定してブロック化する。
【0030】
また、図3に示す(b)は入力画像の全端部領域にブロックサイズを小さくしたブロックサイズを適用する方法を説明する図である。1286×966画素の元画像を1/4に削減する場合、元画像の四隅の領域は3×3のブロックサイズ、上端及び下端の領域は4×3のブロックサイズ、左端及び右端の領域は3×4のブロックサイズ、その他の領域は4×4のブロックサイズを設定してブロック化する。
【0031】
更に、図3に示す(c)は入力画像の少なくとも端部領域の一部に大きいブロックサイズを適用する方法を説明する図である。1286×966画素の元画像を1/4に削減する場合、右端の領域は6×4のブロックサイズ、下端の領域は4×6のブロックサイズ、右端の下端の領域は6×6のブロックサイズ、その他の領域は4×4のブロックサイズを設定してブロック化する。
【0032】
そして、図3に示す(d)は入力画像の全端部領域に大きいブロックサイズを適用する方法を説明する図である。1286×966の元画像を1/4に削減する場合、元画像の四隅の領域は7×7のブロックサイズ、上端及び下端の領域は4×7のブロックサイズ、左端及び右端の領域は7×4のブロックサイズ、その他の領域は4×4のブロックサイズを設定してブロック化する。
【0033】
尚、入力画像の横画素数及び縦画素数がブロック化するブロックサイズのそれぞれ横画素数及び縦画素数の倍数になっている場合は、入力画像の全領域に同じサイズのブロックが適用されて良い。
【0034】
図2に戻り、202はブロック抽出部であり、ブロック化部201でブロック化されたブロックから入力画素の位置に対応するブロックを抽出する。尚、対応するブロックとは注目する入力画素(注目画素)を含むブロックのことである。具体的には、注目画素を含むブロックを抽出し、そのブロックを注目ブロックとする。
【0035】
203は代表値決定部であり、注目ブロック内の画素より代表値を決定する。この代表値を決定する方法としては種々の方法があるが、後述する方法に限ったものではなく、注目ブロック内の画素より代表を決定さえできれば良い。代表値の決定方法としては、乱数生成手段により得た乱数を用いて決定する方法がある。例えば、乱数により注目ブロック内の画素について横の位置と縦の位置を決定する。この横と縦の位置の画素の値を代表値とする。ウインドウサイズを4×4とすると、ウインドウの横と縦の画素数はどちらも4であるから乱数の桁数は2ビットとなる。或いは、注目ブロック内の画素を順次番号付けし、生成した乱数に対応する番号の画素の値を代表値とする。ウインドウサイズを4×4とすると、ウインドウ内の画素数は16であるから乱数の桁数は4ビットとなる。上述の乱数生成手段は公知の手法により擬似乱数を生成するものである。
【0036】
代表値を決定する別の方法として、最頻度値を代表値として決定する手段がある。この最頻度値とは、注目ブロック内の画素値の内、最も頻度が多い値であり、その値を注目ブロックの代表値とする。最頻度値が複数存在する場合は、複数の最頻度値から乱数によりランダムに選択した最頻度値を代表値とする。或いは、注目ブロック内の後述する中央値に最も近い最頻度値を代表値とする。複数の最頻度値から代表値とする最頻度値を選択する方法は上述の方法に限らず、注目ブロック内からランダムに選択するか、注目ブロック内の画素値の分布を考慮して決定すれば良い。
【0037】
また、代表値を決定する別の方法として、中央値を代表値として決定する手段がある。注目ブロック内の画素を大きい順に並べた時の中央に位置する画素の値やブロック内の画素レンジの中央値を代表値として決定する。
【0038】
204は削減画像生成部であり、注目ブロック内の代表値を画素値とする削減画像データを生成する。注目ブロック内の代表値を画素値として保存し、入力画像よりデータを削減した削減画像を生成する。
【0039】
次に、上述した構成を有する画像処理装置において、入力画像をブロック化し、注目ブロック内の注目画素を所定の条件に基づいて置換する処理について説明する。
【0040】
図4は、第1の実施形態における画像処理装置の処理を示すフローチャートである。まず、ステップS401において、不図示のCPUが各処理に必要なパラメータの設定を行う。ここで、設定するパラメータは、画像の削減率、ブロックサイズ、ウインドウサイズ、閾値であり、入力画像及び除去すべきノイズの性質により決定する。また、パラメータは入力画像を解析することによって決定しても良いし、入力画像の属性(プロパティ)や出力条件によって予め決められた値に設定しても良い。尚、パラメータを常に一定値とする場合、パラメータ設定は省略される。
【0041】
次に、ステップS402において、画像削減部101が入力画像を所定の削減率で削減する。この削減手順は前述した通りであり、削減処理を行うことにより後述する低周波ノイズ除去のための画素数(ウインドウサイズ)の削減を行う。尚、この削減率を小さくする(出力サイズを小さくする)と、後段のウインドウサイズを小さくできるが、入力画素近傍の影響度が小さくなるため、入力画素との差分が大きくなり、置換される画素が減少するだけでなく、エッジ部では置換のオン又はオフによるジャギー状の妨害が現れてしまう。また、削減率を大きくする(出力サイズを大きくする)と、後段のウインドウサイズを大きくできるが、処理量が増加してしまう。そこで、第1の実施形態では削減率を好例の1つである1/4として説明する。
【0042】
画像の削減が終わると、ステップS403へ進み、画像の終端まで処理したか否かを判定し、処理したのであれば終了するが、処理していなければステップS404へ進み、画素抽出部102が入力画素(注目画素)位置に対応する削減画素を中心に所定形状内(ウインドウ)の削減画素データを抽出する。このウインドウは入力画素(注目画素)位置の移動によりシフトする。尚、上述のように、削減率を1/4としているので、削減画素が4×4のブロックから生成した場合、入力画素が水平方向に4画素移動するとウインドウが1画素水平方向にシフトする。また、入力画素が垂直方向に4ライン移動するとウインドウが1ライン垂直方向にシフトする。つまり、入力画素が移動し、入力画素に対応する削減画素が1画素シフトするとウインドウも1画素分シフトする。
【0043】
ここで、ウインドウサイズを4×4、削減率を1/4とすると、元の入力画像上では16×16のウインドウに相当し、特に8×8の大きさまでの斑状ノイズの削減に効果的である。以下ではウインドウサイズを4×4として説明する。
【0044】
次に、ステップS405において、抽出されたウインドウ内の削減画素より、置換データを生成する。尚、この処理の詳細は後述するが、ウインドウ内平均値演算部103、領域判定部104、領域0平均値演算部105、領域1平均値演算部106、領域0差分値生成部107、領域1差分値生成部108、ウインドウ内差分値生成部109、比較部111によって行われる処理である。
【0045】
図5は、第1の実施形態における置換データ生成処理を示すフローチャートである。まずステップS501において、領域判定部104でウインドウ内の画素が領域0か領域1のどちらの領域かを判定する。具体的には、ウインドウ内平均値演算部103でウインドウ内の画素値の平均を求め、各ウインドウ内の画素をそのウインドウ平均値と比較し、ウインドウ平均値未満または以下なら領域0とし、それ以外では領域1とする。ここで、画素が領域0であればステップS502へ進み、領域0平均値演算部105で画素の平均値を求める。また、画素が領域1であればステップS503へ進み、領域1平均値演算部106で画素の平均値を求める。そして、ステップS504又はS505において、領域0差分値生成部107又は領域1差分値生成部108で、各領域の平均値と入力画素値との差分絶対値D0又はD1を求める。
【0046】
次に、ステップS506において、ウインドウ内差分値生成部109で上述のウインドウ平均値と入力画素値との差分絶対値Dwを求める。そして、ステップS507〜S509において、比較部111で各領域の平均値と入力画素値との差分絶対値D0、D1と、ウインドウ平均値と入力画素値との差分絶対値Dwとを各々比較する。その結果、最小の差分絶対値(最小差分絶対値D)となる平均値を置換データとする(ステップS510〜S512)。
【0047】
つまり、領域0の差分絶対値D0が最小であれば、領域0平均値演算部105で求めた平均値A0を置換データとする。また同様に、領域1の差分絶対値D1が最小であれば、領域1平均値演算部106で求めた平均値A1を置換データとし、ウインドウ内差分値Dwが最小であれば、ウインドウ内平均値演算部103で求めた平均値Awを置換データとする。
【0048】
ここで図4に戻り、ステップS406において、比較部111及び画素置換部112で、上述の最小差分絶対値Dに対して所定の条件が成立すると、入力画素値を生成された置換データで置き換えて出力し、また所定の条件が不成立のときは入力画素値をそのまま出力する。以上の処理を入力画像の終端まで繰り返すと(ステップS403のYES)、この処理を終了する。
【0049】
図6は、第1の実施形態における置換処理を示すフローチャートである。まずステップS601において、比較部111で最小差分絶対値Dと閾値Th1とを比較し、最小差分絶対値Dが閾値Th1未満または以下であればステップS602へ進み、画素置換部112で置換データを出力する。また最小差分絶対値Dが閾値Th1以上であればステップS603へ進み、入力画素値を出力する。
【0050】
上述した一連の処理により、求めた差分絶対値の内、閾値Th1未満または以下で最小となる差分絶対値の平均値を置換データとして入力画素を置換することで、ノイズを除去することができる。
【0051】
上述したように、例えば8×8の大きさまでの斑状ノイズを削減する際に、削減画像を用いない場合、16×16のウインドウが必要になり、水平方向の画素数をWとすると、必要なラインメモリの容量は15Wとなるが、第1の実施形態では、1/4削減画像を用いることで、必要なラインメモリの容量は3ライン×(1/4)W=(3/4)Wとなり1/20に削減される。
【0052】
このように、第1の実施形態によれば、平均値と入力画素値を比較することでノイズと有意信号の分離を図り、削減画像より置換データを生成することにより、より低い周波数成分までノイズ除去効果を有効にし、領域別の平均値を用いることにより、エッジ付近における置換画素を増加させ、ノイズ除去効果が有効となる範囲を拡大させることができると共に簡単な操作で弊害も少なく、より効果的なノイズ除去効果を得ることができる。
【0053】
尚、第1の実施形態では、領域の判定にウインドウ内の画素平均を用いたが、本発明はこれに限らず、例えばウインドウ内の画素を大きい順に並べた時の中央に位置する画素の値やウインドウ内の画素レンジの中央値としても良い。また、置換画素候補も各領域の平均値の代わりに最大値の次に大きい数や最小値の次に小さい数としても良い。
【0054】
[第2の実施形態]
次に、図面を参照しながら本発明に係る第2の実施形態を詳細に説明する。
【0055】
第2の実施形態では、2つの領域の平均値の差分が小さいウインドウにおいては置換データをウインドウ内平均値とするものである。
【0056】
図7は、第2の実施形態における画像処理装置の構成を示すブロック図である。図7において、701〜706、707は第1の実施形態における図1に示した101〜106、110の各処理と同様であり、その説明は省略する。708は平均値演算部、709、713、714は比較部、710、711は選択部、712は減算部、715は差分値生成部、716は画素置換部である。ここでは、第1の実施形態と異なる部分のみ説明する。
【0057】
平均値演算部708では、領域0の平均値と領域1の平均値との平均値を演算する。即ち、領域0の平均値をA0、領域1の平均値をA1とすると、領域0と領域1の平均値A01はA01=(A0+A1)/2となる。この領域0と領域1の平均値A01は比較部709で入力画素値Piと比較される。ここで、入力画素値Piが領域0と領域1の平均値A01未満または以下であれば、選択部710は領域0の平均値A0を出力し、それ以外では領域1の平均値A1を出力する。即ち、選択部710からは入力画素値Piに近い方の平均値が選択される。また、減算部712では、領域0と領域1の平均値の差分D10が求めら、比較部713で閾値Th2と比較され、差分D10が閾値Th2以下であれば、選択部711はウインドウ内平均値Awを出力し、それ以外では選択部710の出力、即ち、入力画素値Piに近い方の平均値を出力する。つまり、選択部711の出力が置換データとなる。ここで、A1>A0であるので、領域0と領域1の平均値の差分D10はD10=A1−A0となる。
【0058】
差分値生成部715は入力画素値Piと選択部711の出力(置換データ)との差分絶対値Dtを生成する。この差分絶対値Dtは比較部714で閾値Th1と比較され、差分絶対値Dtが閾値Th1未満または以下の時のみ画素置換部716で入力画素値Piを選択部711の出力(置換データ)で置換する。尚、それ以外では、画素置換部716からは入力画素値Piがそのまま出力される。
【0059】
次に、第2の実施形態における画像処理装置の処理について説明する。第2の実施形態では、第1の実施形態における図4のS401〜S404は同様であり、ここでは置換データ生成処理(S405)及び置換処理(S406)について詳細に説明する。
【0060】
図8は、第2の実施形態における置換データ生成処理を示すフローチャートである。まずステップS801において、領域判定部704でウインドウ内の画素が領域0か領域1のどちらの領域かを判定する。具体的には、ウインドウ内平均値演算部703でウインドウ内の画素値の平均を求め、各ウインドウ内の画素をそのウインドウ平均値と比較し、ウインドウ平均値以下なら領域0とし、それ以外では領域1とする。ここで、画素が領域0であればステップS802へ進み、領域0平均値演算部705で画素の平均値を求める。また、画素が領域1であればステップS803へ進み、領域1平均値演算部706で画素の平均値を求める。
【0061】
次に、ステップS804において、減算部712で2つの領域の平均値の差分値を求め、比較部713で閾値Th2と比較する。ここで、求めた差分値が閾値Th2以下であればステップS808へ進み、置換データはウインドウ内平均値Awとなる。即ち、選択部711でウインドウ内平均値Awを置換データとして出力する。また、求めた差分値が閾値Th2以上または超過ならばステップS805へ進み、平均値演算部708で2つの領域平均値の平均値を求め、比較部709で入力画素値Piと比較する。尚、ステップS805では2つの領域平均値の平均値との比較の代わりに、2つの領域平均値の加算値と入力画素データPiを2倍(1ビット左シフト)した値との比較を行っている。
【0062】
ここで、入力画素データPiが2つの領域平均値の平均値未満ならステップS806へ進み、置換データは領域0平均値A0となるが、それ以外ではステップS807へ進み、置換データは領域1平均値A1となる。即ち、入力画素データPiがどちらの領域平均値に近いか否かを判定し、選択部710で近い方の領域平均値を置換データとして出力するものである。
【0063】
図9は、第2の実施形態における置換処理を示すフローチャートである。まずステップS901において、入力画素値と選択部711の出力である置換データとの差分値Dを求め、ステップS902において、比較部714で閾値Th1と比較する。ここで、差分値Dが閾値Th1未満または以下であればステップS903へ進み、画素置換部716で置換データを出力する。また差分値Dが閾値Th1以上または超過であればステップS904へ進み、入力画素値を出力する。
【0064】
このように、第2の実施形態によれば、2つの領域の平均値の差分が小さいウインドウにおいては置換データをウインドウ内平均値とすることで、平坦部におけるノイズ除去効果を増加させることができ、また、処理も簡略化される。
【0065】
[第3の実施形態]
次に、図面を参照しながら本発明に係る第3の実施形態を詳細に説明する。
【0066】
第3の実施形態では、第2の実施形態で説明した置換データ生成処理において乱数生成部によって生成された乱数に応じて2つの領域の平均値を置換データとして出力するものである。
【0067】
図10は、第3の実施形態における画像処理装置の構成を示すブロック図である。図10において、1001〜1007、1010〜1012は第2の実施形態における図7に示した701〜707、714〜716の各処理と同様であり、その説明は省略する。1008は乱数生成部、1009は選択部である。ここでは、第2の実施形態と異なる部分のみ説明する。
【0068】
この乱数生成部1008では、公知の手法によって擬似乱数を生成し、選択部1009を制御して領域0の平均値或いは領域1の平均値をランダムに選択し、置換データとする。そして、差分値生成部1011は、入力画素値Piと選択部1009の出力(置換データ)との差分絶対値Dtを生成する。この差分絶対値Dtは比較部1010で閾値Th1と比較され、差分絶対値Dtが閾値Th1未満または以下の時のみ画素置換部1012で入力画素値Piを選択部1009の出力(置換データ)で置換する。また、それ以外では、画素置換部1012からは入力画素値Piがそのまま出力される。
【0069】
ここで、第3の実施形態における画像処理装置の処理について説明する。尚、置換データ生成処理以外については第2の実施形態と同様であるため、その説明は省略する。
【0070】
図11は、第3の実施形態における置換データ生成処理を示すフローチャートである。まずステップS1101において、領域判定部1004でウインドウ内の画素が領域0か領域1のどちらの領域かを判定する。具体的には、ウインドウ内平均値演算部1003でウインドウ内の画素値の平均を求め、各ウインドウ内の画素をそのウインドウ平均値と比較し、ウインドウ平均値以下なら領域0とし、それ以外では領域1とする。ここで、画素が領域0であればステップS1102へ進み、領域0平均値演算部1005で画素の平均値を求める。また、画素が領域1であればステップS1103へ進み、領域1平均値演算部1006で画素の平均値を求める。
【0071】
次に、ステップS1104において、乱数生成部1008で1ビットの乱数を生成し、乱数が0であればステップS1105へ進み、選択部1009で領域0平均値A0を置換データとして出力する。また、乱数が0でなければステップS1106へ進み、領域1平均値A1を置換データとして出力する。
【0072】
このように、第3の実施形態によれば、ランダムに領域0又は領域1の平均値を選択し、置換データとすることにより、低周波ノイズが乱数により高周波側に変調されるため、表示系や視覚のMTFによるノイズ除去効果が得られる。また、更に処理も簡略化される。また、上述の乱数出力の0の連続数及び1の連続数を制限することにより、乱数の周波数特性が高域側にシフトするので、より良好なノイズ除去効果が得られる。
【0073】
[第4の実施形態]
次に、図面を参照しながら本発明に係る第4の実施形態を詳細に説明する。
【0074】
第4の実施形態では、乱数生成部によって生成された乱数に応じてウインドウ内の画素をランダムに選択し、置換データとして出力するものである。
【0075】
図12は、第4の実施形態における画像処理装置の構成を示すブロック図である。図12において、1201、1202、1203は第1乃至第3の実施形態における画像削減部、画素抽出部、タイミング調整部と同様であり、1206〜1208は第2及び第3の実施形態における比較部、差分値生成部、画素置換部と同様であり、その説明は省略する。1204は乱数発生部、1205は画素選択部である。ここでは、前述した実施形態と異なる部分のみ説明する。
【0076】
乱数生成部1204は、第3の実施形態と同様に、公知の手法により擬似乱数を生成し、画素選択部1205を制御してウインドウ内の画素をランダムに選択し、置換データとする。そして、第2及び第3の実施形態と同様に、差分値生成部1207は、入力画素値Piと画素選択部1205の出力(置換データ)との差分絶対値Dtを生成する。この差分絶対値Dtは比較部1206で閾値Th1と比較され、差分絶対値Dtが閾値Th1未満または以下の時のみ画素置換部1208で入力画素データPiを画素選択部1205の出力(置換データ)で置換する。また、それ以外では、画素置換部1208からは入力画素値Piがそのまま出力される。
【0077】
尚、第4の実施形態におけるウインドウサイズを4×4とすると、ウインドウ内の画素数は16であるから乱数の桁数は4ビットとなる。
【0078】
図13は、9ビットのM系列擬似ランダム符号生成回路の一構成例を示す図である。図13において、1301はシフトレジスタ、1302はEXOR回路である。このM系列擬似ランダム符号生成回路では、予めシフトレジスタ1301に0以外の値をロードしておき、シフトレジスタの原始多項式に対応するビットをEXORした結果をビット0に入力し、左シフトすることで次の乱数を得る。第4の実施形態では、シフトレジスタ1301の段数が9段なので、9次の原始多項式X9+X4+1を用いている。よって、シフトレジスタ1301のビット8とビット3をEXOR回路1302でEXORした結果をビット0の入力とし、次のクロックで左シフトする。本構成により1〜511の乱数が、511周期で生成される。
【0079】
ここで、乱数生成部1204のレンジは0〜15であるので、シフトレジスタ1301の任意の4ビットを用いることにより、511周期の0〜15の乱数を得ることができる。また、乱数生成手段はこの方法に限らず、公知の手法により擬似乱数を生成しても良い。
【0080】
また、ウインドウ内の横の位置及び縦の位置をそれぞれ擬似乱数によって発生させ、置換データとする画素を決定することもできる。
【0081】
また、擬似乱数の発生確率は一様な確率分布でも良く、ウインドウ内において入力画素に対応する画素からの距離に依存した確率分布でも良い。例えば、置き換えの確率を高くするために、入力画素に対応する画素から遠い位置にある画素程高い発生確率を与える。
【0082】
また、上述した閾値との比較で、置換がされなかった場合、置換されるまで又は所定回数に達するまで、注目しているウインドウ内から別の新たな置換データを生成し、閾値と比較することで、置き換えの確率を高くすることができる。
【0083】
このように、第4の実施形態によれば、ウインドウ内の画素をランダムに選択して置換データとするので、簡単な構成であるにもかかわらず、低周波ノイズが発生乱数により高周波側に変調されるため、表示系や視覚のMTFによる良好なノイズ除去効果が得られる。また、乱数出力を入力画素が更新されるに従って反転或いは非反転させることにより、乱数の周波数特性が高域側にシフトするので、より良好なノイズ除去効果が得られる。
【0084】
[第5の実施形態]
次に、図面を参照しながら本発明に係る第5の実施形態を詳細に説明する。
【0085】
第5の実施形態では、入力画像を複数のカテゴリに分類し、各カテゴリに応じた置換データを生成するものである。
【0086】
図14は、第5の実施形態における画像処理装置の構成を示すブロック図である。図14において、1401〜1403、1407〜1409は第4の実施形態における図12に示した1201〜1203、1206〜1208の各処理と同様であり、その説明は省略する。1404はカテゴライズ部、1405は置換データ生成部、1506は置換データ選択部である。ここでは、第4の実施形態と異なる部分のみ説明する。
【0087】
カテゴライズ部1404は入力画像を複数のカテゴリに分類する。また、置換データ生成部1405は、第1乃至第4の実施形態において説明したような複数のアルゴリズム又は複数の異なる閾値によってノイズ除去のための置換データを生成する。そして、置換データ選択部1406は、カテゴリに従ってカテゴリに適した置換データを選択する。以下、第4の実施形態と同様の判定を行い、入力画素を置換してノイズを除去する。
【0088】
ここでのカテゴリは、例えば置換処理をした場合に弊害となる部分や、低周波ノイズが目立つ部分、高周波ノイズが目立つ部分、どちらのノイズも目立つ部分などを基準にして分類される。特に、第1乃至第4の実施形態では、弊害の見え方が異なっており、入力画像に対する相性が存在する。
【0089】
例えば、布のように細かなテクスチャが多い部分では、平均化処理を行わない方が見た目は良いので、第4の実施形態が向いている。また、暗部においては、平均化した方が見た目は良いので、第2の実施形態が向いている。更に、入力画素の色域によってもノイズの見え方が異なる。また、平坦部と認識されるレベル差も異なる。よって、第2の実施形態における閾値Th2の最適値も異なる。
【0090】
このように、第5の実施形態によれば、複数のアルゴリズム(閾値制御を含む)によって置換データを生成し、カテゴリに合せた置換データを選択して入力画素を置換するので、弊害が少なく良好なノイズ除去効果が得られる。
【0091】
[第6の実施形態]
次に、図面を参照しながら本発明に係る第6の実施形態を詳細に説明する。
【0092】
第6の実施形態では、第5の実施形態に更にカテゴリに従って複数の閾値から閾値を選択する閾値選択部を加えたものである。
【0093】
図15は、第6の実施形態における画像処理装置の構成を示すブロック図である。図15において、1501〜1509は第5の実施形態における図14に示した各処理と同様であり、その説明は省略する。1510は閾値選択部である。ここでは、第5の実施形態と異なる部分のみ説明する。
【0094】
カテゴライズ部1504は、入力画像を複数のカテゴリに分類する。閾値選択部1510は、分類されたカテゴリに従ってカテゴリに適した閾値Th1を選択する。以下、第5の実施形態と同様の判定を行い、入力画素を置換してノイズを除去する。
【0095】
ここでのカテゴリは、例えば置換処理をした場合に弊害の見え方を基準にして分類される。つまり、弊害が目立たない部分では閾値を大きくすることでノイズ除去効果を強化し、弊害が目立つ部分では閾値を小さくすることで弊害を目立たなくするのである。
【0096】
更に、AGC(Auto Gain Control)などにより、入力ゲインが異なる場合、ノイズの振幅は異なるので、入力ゲインによっても閾値Th1を変更することが望ましい。
【0097】
尚、第6の実施形態では、複数の置換生成部と閾値とを対応付けて説明したが、これに限らず、複数の置換生成部と閾値の数が異なっても良い。例えば、1つの置換生成部より置換データを生成しても良い。この場合は、置換データ選択部1506は省略される。
【0098】
このように、第6の実施形態によれば、カテゴリに応じた閾値を選択して入力画素を置換するので、弊害が少なく良好なノイズ除去効果が得られる。
【0099】
[第7の実施形態]
次に、図面を参照しながら本発明に係る第7の実施形態を詳細に説明する。
【0100】
第7の実施形態では、第1乃至第6の実施形態における図2に示す画像削減部101の削減画像生成部204で生成した削減画像をブロック化部201に戻し、繰り返して削減画像を生成するものである。
【0101】
図16は、第7の実施形態における画像削減部1601の構成を示すブロック図である。ここでは、第1乃至第6の実施形態と異なる部分のみ説明する。
【0102】
まず、画像削減部1601に画像が入力されると、第1の実施形態で説明したように削減画像が出力される。第7の実施形態では、削減画像を少なくとも1回以上画像削減部1601に入力し、別の削減画像を生成する。ここで、削減率を1/4とすると、入力画像を画像削減部1601に入れると1/4に削減された第1の削減画像が得られる。この第1の削減画像を削減率1/4として画像削減部1601に入力すると、更に1/4に削減された第2の削減画像を得ることができる。第2の削減画像は入力画像を1/16に削減した画像として得ることができる。即ち、削減率をMとし、得られた削減画像を画像削減部1601に入力する回数をN回とすると、入力画像に対してM(N+1) に削減された削減画像を得ることができる。
【0103】
また、第1の実施形態の場合も削減率をM(N+1) に設定することで、第7の実施形態と同等の削減量を実現できるが、削減率が固定の場合、第7の実施形態のように複数回繰り返すことで、所望の削減率を実現できる。
【0104】
また、説明した複数回繰り返す際に、削減率を変更しても良い。
【0105】
最終的に得られた削減画像に対しては、入力画素(注目画素)位置に対応する削減画素を中心に所定形状内(ウインドウ)の削減画素を抽出し、第1乃至第6の実施形態で説明した方法でノイズ除去を行う。
【0106】
このように、第7の実施形態によれば、弊害が少なく良好なノイズ除去効果が得られる。
【0107】
[第8の実施形態]
次に、図面を参照しながら本発明に係る第8の実施形態を詳細に説明する。
【0108】
第8の実施形態では、画像削減部101で入力画像を削減する前にフィルタを用いてノイズを除去するものである。
【0109】
図17は、第8の実施形態における画像処理装置の構成を示すブロック図である。ここでは、第2の実施形態における画像処理装置(図7)と異なる部分のみ説明する。
【0110】
第8の実施形態では、図17に示すように、画像削減部1701に入力画像が入力される前にフィルタ部1717においてフィルタ処理を実施する。例えば、図18に示す(a)は、入力画像の3×3の合計9画素で構成されるブロックを示している。このブロックの中心の黒画素をフィルタにより補正する注目画素とする。そして、3×3の画素に図18に示す(b)の3×3の合計9個の画素で構成されるフィルタを用いて処理を行う。尚、図18に示す(a)のブロックの各画素に図18に示す(b)のフィルタの各画素が対応しており、フィルタ中の値は各画素の重み係数を示している。
【0111】
ここで、ブロックの各画素に対応するフィルタの重み係数を乗算し、合計したものをフィルタの重み係数の合計で除算した値が注目画素の平滑後の値である。図18に示す(c)は平滑化された注目画素の値を示すものである。この平滑化により、高周波のノイズを除去することができる。
【0112】
入力画像を平滑化した画像を画像削減部1701に入力し、これ以降の処理は第1乃至第7の実施形態で説明した方法で低周波のノイズを除去する。
【0113】
また、フィルタ部1717において、複数の平滑化画像を出力し、複数の平滑化画像を画像削減部1701にそれぞれ入力し、第1の実施形態で説明した方法でそれぞれの平滑化画像の削減画像を生成して、複数の削減画像の同一画素から代表値を決定することで複数の削減画像から別の削減画像を生成しても良い。
【0114】
この代表値の決定方法は、乱数によってランダムに選択する方法、最頻度値を選択する方法、中央値を選択する方法がある。この方法以外にも、対応する入力画素との差分値をとり、所定の閾値以下で最も閾値に近い値を代表値とする方法もある。
【0115】
また、複数の平滑化画像の生成方法としては、図18に示す(b)の重み係数を変えることで異なる平滑化画像を生成することができる。例えば、図18に示す(b)では注目画素の近傍画素の重み係数は0.25としているが、0.25より大きい値を設定することで、図18に示す(b)を使用するより強い平滑化画像を生成できる。また、0.25より小さい値を設定することで、図18に示す(b)を使用するより弱い平滑化画像を生成できる。
【0116】
フィルタにより、高周波ノイズを除去することができる一方、エッジ部も平滑化される可能性がある。上述した複数の平滑化画像から代表値を決定することは、エッジ情報は保存することに適している。
【0117】
また、フィルタとしては、上述したもの以外に公知のローパスフィルタを使用できる。
【0118】
このように、第8の実施形態によれば、高周波ノイズ除去により大きな効果を発揮し、弊害が少なく良好なノイズ除去効果が得られる。
【0119】
[他の実施形態]
前述した各実施形態の機能を実現するソフトウェアのプログラムコードを記録した記録媒体を、システム或いは装置に供給し、そのシステム或いは装置のコンピュータ(CPU又はMPU)が記録媒体に格納されたプログラムコードを読み出し実行することによっても、本発明の目的が達成されることは言うまでもない。
【0120】
この場合、記録媒体から読み出されたプログラムコード自体が本発明の新規な機能を実現することになり、そのプログラムコードを記録した記録媒体は本発明を構成することになる。
【0121】
プログラムコードを供給するための記録媒体としては、例えば、フレキシブルディスク、ハードディスク、光ディスク、光磁気ディスク、CD−ROM,CD−R、磁気テープ、不揮発性のメモリカード、ROMなどを用いることができる。
【0122】
また、コンピュータが読み出したプログラムコードを実行することによって、前述した実施形態の機能が実現される他、そのプログラムコードの指示に基づき、コンピュータ上で稼動しているOSなどが実際の処理の一部又は全部を行い、その処理によっても前述した実施形態の機能が実現され得る。
【0123】
更に、記録媒体から読み出されたプログラムコードがコンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれた後、そのプログラムコードの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるCPUなどが実際の処理の一部又は全部を行い、その処理によっても前述した実施形態の機能が実現され得る。
【0124】
尚、本発明は、前述した実施形態の機能を実現するソフトウェアのプログラムコードを記録した記憶媒体から、そのプログラムをパソコン通信など通信ラインを介して要求者にそのプログラムを配信する場合にも適用できることは言うまでもない。
【0125】
【発明の効果】
以上説明したように、本発明によれば、平均値と入力画素値を比較することでノイズと有意信号の分離を図り、削減画像より置換データを生成することにより、より低い周波数成分までノイズ除去効果を有効にし、領域別平均値を用いることによって、エッジ付近における置換画素を増加させ、ノイズ除去効果が有効となる範囲を拡大させることができ、簡単な操作で弊害も少なく、より効果的なノイズ除去効果が得られる。特に、処理に必要なラインメモリの容量は大幅に削減される。
【0126】
また、2つの領域平均の差分が小さいウインドウにおいては置換データをウインドウ内平均値とすることで、平坦部におけるノイズ除去効果を増加させることができ、また、処理も簡略化される。
【0127】
また、ランダムに領域0又は領域1の平均値を選択し、置換データとすることで、低周波ノイズを乱数により高周波側に変調し、表示系や視覚のMTFによるノイズ除去効果が得られる。そして、更に処理も簡略化される。
【0128】
また、削減画像のウインドウ内の画素をランダムに選択して置換データとすることで、ディティールを損なわずに低周波ノイズを高周波側に変調して良好なノイズ除去効果が得られる。
【0129】
また、閾値制御を含む複数のアルゴリズムによって置換データを生成し、カテゴリに合せた置換データを選択して入力画素を置換することで、弊害が少なく画像の特性にマッチした良好なノイズ除去効果が得られる。
【0130】
また、カテゴリに合せた閾値を選択して入力画素を置換することで、弊害がより少なく画像の特性にマッチした良好なノイズ除去効果が得られる。
【0131】
また、複数回削減を行うことで、所望の削減画像を容易に生成することができ、効果的なノイズ除去効果が得られる。
【0132】
また、フィルタにより平滑化した画像から削減画像を生成し、置換データを生成することで、高周波ノイズ除去に適した良好なノイズ除去効果が得られる。
【図面の簡単な説明】
【図1】第1の実施形態における画像処理装置の構成を示すブロック図である。
【図2】第1の実施形態における画像削減部101の構成を示すブロック図である。
【図3】ブロック化を説明するための図である。
【図4】第1の実施形態における画像処理装置の処理を示すフローチャートである。
【図5】第1の実施形態における置換データ生成処理を示すフローチャートである。
【図6】第1の実施形態における置換処理を示すフローチャートである。
【図7】第2の実施形態における画像処理装置の構成を示すブロック図である。
【図8】第2の実施形態における置換データ生成処理を示すフローチャートである。
【図9】第2の実施形態における置換処理を示すフローチャートである。
【図10】第3の実施形態における画像処理装置の構成を示すブロック図である。
【図11】第3の実施形態における置換データ生成処理を示すフローチャートである。
【図12】第4の実施形態における画像処理装置の構成を示すブロック図である。
【図13】9ビットのM系列擬似ランダム符号生成回路の一構成例を示す図である。
【図14】第5の実施形態における画像処理装置の構成を示すブロック図である。
【図15】第6の実施形態における画像処理装置の構成を示すブロック図である。
【図16】第7の実施形態における画像削減部1601の構成を示すブロック図である。
【図17】第8の実施形態における画像処理装置の構成を示すブロック図である。
【図18】入力画像のブロックとフィルタ処理を説明するための図である。
【符号の説明】
101 画像削減部
102 画素抽出部
103 ウインドウ内平均値演算部
104 領域判定部
105 領域0平均値演算部
106 領域1平均値演算部
107 領域0差分値生成部
108 領域1差分値生成部
109 ウインドウ内差分値生成部
110 タイミング調整部
111 比較部
112 画素置換部
【発明の属する技術分野】
本発明は、入力された多値画像のノイズを低減する技術に関する。
【0002】
【従来の技術】
従来、信号成分とは異なるノイズが重畳されたデジタル画像からノイズ成分を除去する研究が行われている。またノイズの特性も発生原因毎に多種多様に分類され、その特性に合わせたノイズ除去方法が提案されている。例えば、デジタルカメラやイメージスキャナなどの画像入力機器を想定すると、固体撮像素子などの入力デバイス特性、撮影モード、撮影シーンなどの入力条件に依存するものなどの光電変換したアナログ原信号に既に重畳されているノイズと、A/D変換器を介してデジタル信号に変換された後、各種デジタル信号処理を経る過程により重畳されるノイズとに大別できる。
【0003】
前者の例としては、周囲の画像信号とは無相関に突出した値が発生するインパルス系のノイズや、固体撮像素子の暗電流によるノイズが挙げられる。また後者の例としては、ガンマ補正、感度アップのゲイン補正等の各種補正処理においてノイズ成分が特定濃度、特定色等の強調時に、信号成分と同時に増幅されることによりノイズレベルが増加する例もある。また、デジタル信号処理による劣化としてJPEGアルゴリズムを用いた符号化時には、2次元の画像情報はブロック状に切り出され、ブロック単位に直交変換、量子化を行うために、復号後の画像ではブロック境界で段差が発生するブロック歪みが生じる例がある。
【0004】
昨今、上述した各種ノイズも含め、特に画質を劣化させている要因に挙げられているのは、デジタルカメラで撮影した画像に顕著に見られる低周波帯域に発生するノイズ(以降、低周波ノイズと称す)である。これは、固体撮像素子であるCCDやCMOSセンサの感度に起因する場合もあるし、また信号レベルの低い暗部や影になる部分などでの撮影シーンでは、S/N比が悪いにも関わらず信号成分を持ち上げるゲイン補正により低周波ノイズが強調される場合もある。また、素子感度は撮像素子のチップ面積にも依存するため、小面積にも関わらず画素数を多く配置したデジタルカメラでは、結果的に単位画素当たりの光量が少なくなり、感度が減少してノイズが発生することが多い。低周波ノイズは、青空等の平坦部に数画素から十数画素に渡って擬似的な斑状のテクスチャ(斑状ノイズ)として視認される場合が多い。デジタルカメラによっては偽色を発生させる場合もある。
【0005】
従来より提案されている一般的なノイズ除去方法は、メディアンフィルタを用いた方法と低周波帯域のみを通過させるローパスフィルタ(以下LPFと略す)を用いる方法とが主流である。
【0006】
メディアンフィルタを用いた方法は、注目画素を含む周囲画素からなるウインドウ内でメディアン(中央値)になる画素値を抽出し、その抽出値を注目画素値に置換する方法(例えば、特許文献1参照。)を始めとして多数の提案がある。もし注目画素がインパルス系のノイズ、ランダムノイズである場合、メディアンフィルタを用いると、注目画素の値を周囲画素との相関が低い突出値から相関の高いメディアンに置換することにより、原情報に生じていた突出値を消失させることが可能である。
【0007】
LPFを用いた方法は、例えば図18に示すような注目画素を中心とした周囲の複数画素の平均値を計算し、算出した平均値を注目画素の値として置き換える方法である。この方法は、主に上述のブロック歪みなどに効果がある。ブロック歪みは平坦領域に信号成分とは異なるブロック状の段差が発生するノイズであるため、段差の傾斜を緩やかにすることにより視覚的に段差を見えづらくすることが可能である。
【0008】
尚、上述した2つの方法は、局所的には効果的に働くが、逆にエッジ部がぼけてしまうなどの弊害がある。そのため、両者の方法には数多くの変形例が提案されている。例えば、フィルタ処理によるボケを発生させないために平均値を算出する周辺画素を注目画素の画素値に近似するものだけを選択して積和演算を行う方法(例えば、特許文献2参照。)が提案されている。
【0009】
また、上述したメディアンフィルタを用いた方法やLPFを用いた方法の他にも、ノイズ、歪みを除去する提案は数多く、ブロック歪みを除去するためにブロック境界の両側に位置する画素間で信号値を交換する方法(例えば、特許文献3参照。)や、ブロック境界周辺の画素信号レベルに複数のパターンの中から乱数により選択された所定パターンを加算する方法(例えば、特許文献4参照。)が開示されている。また、ブロック境界を中心とする特定注目画素のレベル値に誤差を加えることにより、符号化時に生じるブロック歪みを除去する方法(例えば、特許文献5参照。)、突出した値をとる白点、黒点を除去するために注目画素の近傍画素群のうち、最大値、最小値を検出し、ノイズが含まれているかの判定結果を制御信号として、最大値、最小値、注目画素値の何れかを選択することによりノイズを除去する方法(例えば、特許文献6参照。)も開示されている。
【0010】
また、近年ノイズ除去のような画像処理はパーソナルコンピュータ(PC)のようなホストコンピュータで行うことが多かったが、最近はホストコンピュータに接続することなく、単体で画像処理を行い、印字を行う記録装置(ダイレクト記録装置)(例えば、特許文献7参照。)も出現している。
【0011】
【特許文献1】
特開平4−235472号公報
【特許文献2】
特開2000−245179号公報
【特許文献3】
特開平8−56357号公報
【特許文献4】
特開平10−98722号公報
【特許文献5】
特開平7−75103号公報
【特許文献6】
特開平4−239886号公報
【特許文献7】
特登録03161427号
【特許文献8】
特開平7−203210号公報
【特許文献9】
特願2002−164625号公報
【発明が解決しようとする課題】
しかしながら、上記従来例の何れも前述した斑状ノイズなどの低周波ノイズには効果を発揮しない。特に、メディアンフィルタを用いた方法では、周囲と相関の低い突出値を削除する効果のみであり、またLPFを用いた方法では、高周波域をカットオフするため、高周波ノイズ、もしくはランダム性の高い白色雑音に効果を示すのみで、低周波ノイズは依然として軽減されない。
【0012】
また、ブロック歪みを除去する目的である特許文献3の方法は、ブロック歪みが矩形状の段差として発生する高周波成分であるが故に、ブロック境界さえ既知であれば、乱数加算による方法やブロック間の画素値を交換する方法により段差が軽減する効果は期待できる。しかし、低周波ノイズでは、数画素から十数画素に渡る広い範囲で、変化の少ない画素値が連続する連結性ノイズであり、ブロック歪み軽減の技術をそのまま応用することはできない。当然、ノイズが発生している位置情報はブロック符号化時のブロック境界のように既知ではない。
【0013】
また、前述した乱数加算による方法では、周囲の画素では存在していない画素値を適合するため、特にカラー画像においては、色分解された各色成分毎に乱数を加算すると、周囲には存在していない新規な色を作成することになり、逆に偽色発生等の画質劣化を引き起こさせる。
【0014】
尚、前述したノイズ除去とは目的が異なるが、特定の周波数の電力を軽減する方法(例えば、特許文献8参照。)についても開示されている。この特許文献8に記載の発明では、網点原稿を入力し、出力時に擬似階調処理のディザ化を行うシステムにおいて、入力した網点の周波数とディザによる周波数が干渉することによりモアレが発生してしまうが、そのモアレ発生を防ぐために、入力した網点の周波数を予め除去するモアレ除去方法が開示されている。網点の周波数を除去するには所定の規則性を乱すことが有効であるため、一次元で所定画素数分距離が先行している画素値と注目画素値とを交換する方法である。所定画素数分は、固定である場合と、ランダムに選択する場合とが開示されている。
【0015】
しかし、このモアレ除去方法も、ピークのある特定周期を乱すのが目的であるために、低周波帯域に広く発生している低周波ノイズには有効ではない。また、画素値の交換のため、濃度保存は保証されるが、選択画素値も変化してしまうため、空間的に画素の位相を移動させているだけになる。また、選択画素値の変化はフィルタ特性としては巡回型となり、インパルス応答は無限大になる。交換画素間距離の所定画素数をランダムに選択した場合でも、サンプリングした画素を逐次交換していくことになるので、単に特定周期で発生する網点のピークの位相を移動することによりモアレ周期をずらしているに過ぎない。
【0016】
即ち、前述した何れの特許文献に記載の発明においても低周波帯域に発生するノイズを効果的に軽減することはできなかった。
【0017】
この低周波帯域に発生するノイズを効果的に軽減する方法については、例えば特許文献9に開示されている。この方法は、入力画像の注目画素及び周辺画素を参照するウインドウから画素を選択し、選択画素と注目画素から新たな画素値を決定して出力する方法であり、低周波帯域に発生するノイズを効果的に軽減することができた。
【0018】
しかしながら、前述したホストコンピュータを介することなく記録を行うダイレクト記録装置において、特許文献9の発明を実施する際にはメモリ容量増大のためにコストアップにつながることがあった。特許文献9の発明では、入力画像の注目画素及び周辺画素を参照するため、参照する周辺画素が多くなるに従って必要なメモリ容量が増大する。ホストコンピュータに比べてダイレクト記録装置はメモリ容量が小さいため、特許文献9の発明実施のメモリ占有率が高くなる。メモリ容量の増大が必要な場合もあった。
【0019】
本発明は、上述の課題を解決するためになされたもので、解像度の低下などの弊害を抑えつつ、低周波ノイズの低減も最小限のメモリ容量で行うことを目的とする。
【0020】
【課題を解決するための手段】
上記目的を達成するために、本発明の画像処理方法は、入力画像を所定の倍率に削減して削減画像を得る工程と、前記削減画像から入力画素に対応する削減画素を含む所定サイズのウインドウ内の削減画素を抽出する工程と、抽出したウインドウ内の削減画素に基づき、前記入力画素の値を置換する置換データを生成する工程と、前記置換データと前記入力画素の値との差分値を求める工程と、前記差分値を第1の閾値と比較する工程と、前記差分値が前記第1の閾値未満または以下の場合に前記入力画素の値を前記置換データで置換する工程とを有することを特徴とする。
【0021】
また上記目的を達成するために、本発明の画像処理装置は、入力画像を所定の倍率に削減して削減画像を得る手段と、前記削減画像から入力画素に対応する削減画素を含む所定サイズのウインドウ内の削減画素を抽出する手段と、抽出したウインドウ内の削減画素に基づき、前記入力画素の値を置換する置換データを生成する手段と、前記置換データと前記入力画素の値との差分値を求める手段と、前記差分値を第1の閾値と比較する手段と、前記差分値が前記第1の閾値未満または以下の場合に前記入力画素の値を前記置換データで置換する手段とを有することを特徴とする。
【0022】
【発明の実施の形態】
以下、図面を参照しながら本発明に係る実施の形態を詳細に説明する。以下に説明する実施形態は、本発明の技術分野における当業者による実施を容易にするために開示を提供するものであり、特許請求の範囲で確定される本発明の技術的範囲に含まれるほんの一部の実施形態に過ぎない。
【0023】
従って、明細書に直接的に記載されていない実施形態であっても、技術思想が共通する限り本発明の技術的範囲に包含されることは当業者にとって自明であろう。
【0024】
尚、便宜上複数の実施形態を記載するが、これらは個別に発明として成立するだけでなく、もちろん、複数の実施形態を適宜組み合わせることでも発明が成立することは、当業者であれば容易に理解できよう。
【0025】
[第1の実施形態]
図1は、第1の実施形態における画像処理装置の構成を示すブロック図である。図1において、101は画像削減部であり、入力画像を所定の倍率(例えば、1/4)に削減する。102は画素抽出部であり、削減された画像より入力画素位置を中心とするn×m(m、nは整数)の矩形状(ウインドウ)に画素を抽出する。103はウインドウ内平均値演算部であり、抽出したウインドウ内の画素値の平均値を生成する。104は領域判定部であり、例えばウインドウ内の削減画素値をウインドウ内平均値と比較し、画素値がウインドウ内平均値以下の画素は領域0と判定し、それ以外の画素は領域1と判定する。105は領域0平均値演算部であり、領域判定部104で領域0と判定された画素のウインドウ内平均値を生成する。106は領域1平均値演算部であり、領域判定部104で領域1と判定された画素のウインドウ内平均値を生成する。
【0026】
110はタイミング調整部であり、入力画像(注目画素)を各処理部におけるレイテンシ相当分遅延する。107は領域0差分値生成部であり、領域0平均値演算部105の出力とタイミング調整部110で遅延補償された入力画像(注目画素)との差分絶対値を生成する。108は領域1差分値生成部であり、領域1平均値演算部106の出力とタイミング調整部110で遅延補償された入力画像(注目画素)との差分絶対値を生成する。109はウインドウ内差分値生成部であり、ウインドウ内平均値演算部103の出力とタイミング調整部110で遅延補償された入力画像(注目画素)との差分絶対値を生成する。111は比較部であり、上記3つの差分値生成部107,108,109の差分絶対値の内、閾値Th1未満または以下で最小となる平均値を選択するように画素置換部112を制御する。尚、何れの差分絶対値も閾値Th1未満または以下にならない場合は入力画像(注目画素)を選択するように画素置換部112を制御する。そして、112は画素置換部であり、閾値Th1未満または以下の最小差分絶対値が存在した時のみ入力画素値を上記条件を満たす平均値で置換する。
【0027】
次に、上述の画像削減部101の概略構成及び処理について説明する。
【0028】
図2は、第1の実施形態における画像削減部101の構成を示すブロック図である。図2において、201は入力画像データを削減率に応じてブロック化するブロック化部である。ここでは、削減率が1/Aである場合、A×Aのブロックサイズを設定する。また、設定のブロックサイズで入力画像データをブロック化する方法は後述するように種々あるが、入力画像の各画素が何れかのブロックに割り当てられるようにブロック設定すれば良い。
【0029】
図3は、ブロック化を説明するための図である。図3に示す(a)は入力画像の少なくとも端部領域の一部にブロックサイズを小さくしたブロックを適用する方法を説明する図である。1286×966画素の元画像を1/4に削減する場合、右端の領域は2×4のブロックサイズ、下端の領域は4×2のブロックサイズ、右端の下端の領域は2×2のブロックサイズ、その他の領域は4×4のブロックサイズを設定してブロック化する。
【0030】
また、図3に示す(b)は入力画像の全端部領域にブロックサイズを小さくしたブロックサイズを適用する方法を説明する図である。1286×966画素の元画像を1/4に削減する場合、元画像の四隅の領域は3×3のブロックサイズ、上端及び下端の領域は4×3のブロックサイズ、左端及び右端の領域は3×4のブロックサイズ、その他の領域は4×4のブロックサイズを設定してブロック化する。
【0031】
更に、図3に示す(c)は入力画像の少なくとも端部領域の一部に大きいブロックサイズを適用する方法を説明する図である。1286×966画素の元画像を1/4に削減する場合、右端の領域は6×4のブロックサイズ、下端の領域は4×6のブロックサイズ、右端の下端の領域は6×6のブロックサイズ、その他の領域は4×4のブロックサイズを設定してブロック化する。
【0032】
そして、図3に示す(d)は入力画像の全端部領域に大きいブロックサイズを適用する方法を説明する図である。1286×966の元画像を1/4に削減する場合、元画像の四隅の領域は7×7のブロックサイズ、上端及び下端の領域は4×7のブロックサイズ、左端及び右端の領域は7×4のブロックサイズ、その他の領域は4×4のブロックサイズを設定してブロック化する。
【0033】
尚、入力画像の横画素数及び縦画素数がブロック化するブロックサイズのそれぞれ横画素数及び縦画素数の倍数になっている場合は、入力画像の全領域に同じサイズのブロックが適用されて良い。
【0034】
図2に戻り、202はブロック抽出部であり、ブロック化部201でブロック化されたブロックから入力画素の位置に対応するブロックを抽出する。尚、対応するブロックとは注目する入力画素(注目画素)を含むブロックのことである。具体的には、注目画素を含むブロックを抽出し、そのブロックを注目ブロックとする。
【0035】
203は代表値決定部であり、注目ブロック内の画素より代表値を決定する。この代表値を決定する方法としては種々の方法があるが、後述する方法に限ったものではなく、注目ブロック内の画素より代表を決定さえできれば良い。代表値の決定方法としては、乱数生成手段により得た乱数を用いて決定する方法がある。例えば、乱数により注目ブロック内の画素について横の位置と縦の位置を決定する。この横と縦の位置の画素の値を代表値とする。ウインドウサイズを4×4とすると、ウインドウの横と縦の画素数はどちらも4であるから乱数の桁数は2ビットとなる。或いは、注目ブロック内の画素を順次番号付けし、生成した乱数に対応する番号の画素の値を代表値とする。ウインドウサイズを4×4とすると、ウインドウ内の画素数は16であるから乱数の桁数は4ビットとなる。上述の乱数生成手段は公知の手法により擬似乱数を生成するものである。
【0036】
代表値を決定する別の方法として、最頻度値を代表値として決定する手段がある。この最頻度値とは、注目ブロック内の画素値の内、最も頻度が多い値であり、その値を注目ブロックの代表値とする。最頻度値が複数存在する場合は、複数の最頻度値から乱数によりランダムに選択した最頻度値を代表値とする。或いは、注目ブロック内の後述する中央値に最も近い最頻度値を代表値とする。複数の最頻度値から代表値とする最頻度値を選択する方法は上述の方法に限らず、注目ブロック内からランダムに選択するか、注目ブロック内の画素値の分布を考慮して決定すれば良い。
【0037】
また、代表値を決定する別の方法として、中央値を代表値として決定する手段がある。注目ブロック内の画素を大きい順に並べた時の中央に位置する画素の値やブロック内の画素レンジの中央値を代表値として決定する。
【0038】
204は削減画像生成部であり、注目ブロック内の代表値を画素値とする削減画像データを生成する。注目ブロック内の代表値を画素値として保存し、入力画像よりデータを削減した削減画像を生成する。
【0039】
次に、上述した構成を有する画像処理装置において、入力画像をブロック化し、注目ブロック内の注目画素を所定の条件に基づいて置換する処理について説明する。
【0040】
図4は、第1の実施形態における画像処理装置の処理を示すフローチャートである。まず、ステップS401において、不図示のCPUが各処理に必要なパラメータの設定を行う。ここで、設定するパラメータは、画像の削減率、ブロックサイズ、ウインドウサイズ、閾値であり、入力画像及び除去すべきノイズの性質により決定する。また、パラメータは入力画像を解析することによって決定しても良いし、入力画像の属性(プロパティ)や出力条件によって予め決められた値に設定しても良い。尚、パラメータを常に一定値とする場合、パラメータ設定は省略される。
【0041】
次に、ステップS402において、画像削減部101が入力画像を所定の削減率で削減する。この削減手順は前述した通りであり、削減処理を行うことにより後述する低周波ノイズ除去のための画素数(ウインドウサイズ)の削減を行う。尚、この削減率を小さくする(出力サイズを小さくする)と、後段のウインドウサイズを小さくできるが、入力画素近傍の影響度が小さくなるため、入力画素との差分が大きくなり、置換される画素が減少するだけでなく、エッジ部では置換のオン又はオフによるジャギー状の妨害が現れてしまう。また、削減率を大きくする(出力サイズを大きくする)と、後段のウインドウサイズを大きくできるが、処理量が増加してしまう。そこで、第1の実施形態では削減率を好例の1つである1/4として説明する。
【0042】
画像の削減が終わると、ステップS403へ進み、画像の終端まで処理したか否かを判定し、処理したのであれば終了するが、処理していなければステップS404へ進み、画素抽出部102が入力画素(注目画素)位置に対応する削減画素を中心に所定形状内(ウインドウ)の削減画素データを抽出する。このウインドウは入力画素(注目画素)位置の移動によりシフトする。尚、上述のように、削減率を1/4としているので、削減画素が4×4のブロックから生成した場合、入力画素が水平方向に4画素移動するとウインドウが1画素水平方向にシフトする。また、入力画素が垂直方向に4ライン移動するとウインドウが1ライン垂直方向にシフトする。つまり、入力画素が移動し、入力画素に対応する削減画素が1画素シフトするとウインドウも1画素分シフトする。
【0043】
ここで、ウインドウサイズを4×4、削減率を1/4とすると、元の入力画像上では16×16のウインドウに相当し、特に8×8の大きさまでの斑状ノイズの削減に効果的である。以下ではウインドウサイズを4×4として説明する。
【0044】
次に、ステップS405において、抽出されたウインドウ内の削減画素より、置換データを生成する。尚、この処理の詳細は後述するが、ウインドウ内平均値演算部103、領域判定部104、領域0平均値演算部105、領域1平均値演算部106、領域0差分値生成部107、領域1差分値生成部108、ウインドウ内差分値生成部109、比較部111によって行われる処理である。
【0045】
図5は、第1の実施形態における置換データ生成処理を示すフローチャートである。まずステップS501において、領域判定部104でウインドウ内の画素が領域0か領域1のどちらの領域かを判定する。具体的には、ウインドウ内平均値演算部103でウインドウ内の画素値の平均を求め、各ウインドウ内の画素をそのウインドウ平均値と比較し、ウインドウ平均値未満または以下なら領域0とし、それ以外では領域1とする。ここで、画素が領域0であればステップS502へ進み、領域0平均値演算部105で画素の平均値を求める。また、画素が領域1であればステップS503へ進み、領域1平均値演算部106で画素の平均値を求める。そして、ステップS504又はS505において、領域0差分値生成部107又は領域1差分値生成部108で、各領域の平均値と入力画素値との差分絶対値D0又はD1を求める。
【0046】
次に、ステップS506において、ウインドウ内差分値生成部109で上述のウインドウ平均値と入力画素値との差分絶対値Dwを求める。そして、ステップS507〜S509において、比較部111で各領域の平均値と入力画素値との差分絶対値D0、D1と、ウインドウ平均値と入力画素値との差分絶対値Dwとを各々比較する。その結果、最小の差分絶対値(最小差分絶対値D)となる平均値を置換データとする(ステップS510〜S512)。
【0047】
つまり、領域0の差分絶対値D0が最小であれば、領域0平均値演算部105で求めた平均値A0を置換データとする。また同様に、領域1の差分絶対値D1が最小であれば、領域1平均値演算部106で求めた平均値A1を置換データとし、ウインドウ内差分値Dwが最小であれば、ウインドウ内平均値演算部103で求めた平均値Awを置換データとする。
【0048】
ここで図4に戻り、ステップS406において、比較部111及び画素置換部112で、上述の最小差分絶対値Dに対して所定の条件が成立すると、入力画素値を生成された置換データで置き換えて出力し、また所定の条件が不成立のときは入力画素値をそのまま出力する。以上の処理を入力画像の終端まで繰り返すと(ステップS403のYES)、この処理を終了する。
【0049】
図6は、第1の実施形態における置換処理を示すフローチャートである。まずステップS601において、比較部111で最小差分絶対値Dと閾値Th1とを比較し、最小差分絶対値Dが閾値Th1未満または以下であればステップS602へ進み、画素置換部112で置換データを出力する。また最小差分絶対値Dが閾値Th1以上であればステップS603へ進み、入力画素値を出力する。
【0050】
上述した一連の処理により、求めた差分絶対値の内、閾値Th1未満または以下で最小となる差分絶対値の平均値を置換データとして入力画素を置換することで、ノイズを除去することができる。
【0051】
上述したように、例えば8×8の大きさまでの斑状ノイズを削減する際に、削減画像を用いない場合、16×16のウインドウが必要になり、水平方向の画素数をWとすると、必要なラインメモリの容量は15Wとなるが、第1の実施形態では、1/4削減画像を用いることで、必要なラインメモリの容量は3ライン×(1/4)W=(3/4)Wとなり1/20に削減される。
【0052】
このように、第1の実施形態によれば、平均値と入力画素値を比較することでノイズと有意信号の分離を図り、削減画像より置換データを生成することにより、より低い周波数成分までノイズ除去効果を有効にし、領域別の平均値を用いることにより、エッジ付近における置換画素を増加させ、ノイズ除去効果が有効となる範囲を拡大させることができると共に簡単な操作で弊害も少なく、より効果的なノイズ除去効果を得ることができる。
【0053】
尚、第1の実施形態では、領域の判定にウインドウ内の画素平均を用いたが、本発明はこれに限らず、例えばウインドウ内の画素を大きい順に並べた時の中央に位置する画素の値やウインドウ内の画素レンジの中央値としても良い。また、置換画素候補も各領域の平均値の代わりに最大値の次に大きい数や最小値の次に小さい数としても良い。
【0054】
[第2の実施形態]
次に、図面を参照しながら本発明に係る第2の実施形態を詳細に説明する。
【0055】
第2の実施形態では、2つの領域の平均値の差分が小さいウインドウにおいては置換データをウインドウ内平均値とするものである。
【0056】
図7は、第2の実施形態における画像処理装置の構成を示すブロック図である。図7において、701〜706、707は第1の実施形態における図1に示した101〜106、110の各処理と同様であり、その説明は省略する。708は平均値演算部、709、713、714は比較部、710、711は選択部、712は減算部、715は差分値生成部、716は画素置換部である。ここでは、第1の実施形態と異なる部分のみ説明する。
【0057】
平均値演算部708では、領域0の平均値と領域1の平均値との平均値を演算する。即ち、領域0の平均値をA0、領域1の平均値をA1とすると、領域0と領域1の平均値A01はA01=(A0+A1)/2となる。この領域0と領域1の平均値A01は比較部709で入力画素値Piと比較される。ここで、入力画素値Piが領域0と領域1の平均値A01未満または以下であれば、選択部710は領域0の平均値A0を出力し、それ以外では領域1の平均値A1を出力する。即ち、選択部710からは入力画素値Piに近い方の平均値が選択される。また、減算部712では、領域0と領域1の平均値の差分D10が求めら、比較部713で閾値Th2と比較され、差分D10が閾値Th2以下であれば、選択部711はウインドウ内平均値Awを出力し、それ以外では選択部710の出力、即ち、入力画素値Piに近い方の平均値を出力する。つまり、選択部711の出力が置換データとなる。ここで、A1>A0であるので、領域0と領域1の平均値の差分D10はD10=A1−A0となる。
【0058】
差分値生成部715は入力画素値Piと選択部711の出力(置換データ)との差分絶対値Dtを生成する。この差分絶対値Dtは比較部714で閾値Th1と比較され、差分絶対値Dtが閾値Th1未満または以下の時のみ画素置換部716で入力画素値Piを選択部711の出力(置換データ)で置換する。尚、それ以外では、画素置換部716からは入力画素値Piがそのまま出力される。
【0059】
次に、第2の実施形態における画像処理装置の処理について説明する。第2の実施形態では、第1の実施形態における図4のS401〜S404は同様であり、ここでは置換データ生成処理(S405)及び置換処理(S406)について詳細に説明する。
【0060】
図8は、第2の実施形態における置換データ生成処理を示すフローチャートである。まずステップS801において、領域判定部704でウインドウ内の画素が領域0か領域1のどちらの領域かを判定する。具体的には、ウインドウ内平均値演算部703でウインドウ内の画素値の平均を求め、各ウインドウ内の画素をそのウインドウ平均値と比較し、ウインドウ平均値以下なら領域0とし、それ以外では領域1とする。ここで、画素が領域0であればステップS802へ進み、領域0平均値演算部705で画素の平均値を求める。また、画素が領域1であればステップS803へ進み、領域1平均値演算部706で画素の平均値を求める。
【0061】
次に、ステップS804において、減算部712で2つの領域の平均値の差分値を求め、比較部713で閾値Th2と比較する。ここで、求めた差分値が閾値Th2以下であればステップS808へ進み、置換データはウインドウ内平均値Awとなる。即ち、選択部711でウインドウ内平均値Awを置換データとして出力する。また、求めた差分値が閾値Th2以上または超過ならばステップS805へ進み、平均値演算部708で2つの領域平均値の平均値を求め、比較部709で入力画素値Piと比較する。尚、ステップS805では2つの領域平均値の平均値との比較の代わりに、2つの領域平均値の加算値と入力画素データPiを2倍(1ビット左シフト)した値との比較を行っている。
【0062】
ここで、入力画素データPiが2つの領域平均値の平均値未満ならステップS806へ進み、置換データは領域0平均値A0となるが、それ以外ではステップS807へ進み、置換データは領域1平均値A1となる。即ち、入力画素データPiがどちらの領域平均値に近いか否かを判定し、選択部710で近い方の領域平均値を置換データとして出力するものである。
【0063】
図9は、第2の実施形態における置換処理を示すフローチャートである。まずステップS901において、入力画素値と選択部711の出力である置換データとの差分値Dを求め、ステップS902において、比較部714で閾値Th1と比較する。ここで、差分値Dが閾値Th1未満または以下であればステップS903へ進み、画素置換部716で置換データを出力する。また差分値Dが閾値Th1以上または超過であればステップS904へ進み、入力画素値を出力する。
【0064】
このように、第2の実施形態によれば、2つの領域の平均値の差分が小さいウインドウにおいては置換データをウインドウ内平均値とすることで、平坦部におけるノイズ除去効果を増加させることができ、また、処理も簡略化される。
【0065】
[第3の実施形態]
次に、図面を参照しながら本発明に係る第3の実施形態を詳細に説明する。
【0066】
第3の実施形態では、第2の実施形態で説明した置換データ生成処理において乱数生成部によって生成された乱数に応じて2つの領域の平均値を置換データとして出力するものである。
【0067】
図10は、第3の実施形態における画像処理装置の構成を示すブロック図である。図10において、1001〜1007、1010〜1012は第2の実施形態における図7に示した701〜707、714〜716の各処理と同様であり、その説明は省略する。1008は乱数生成部、1009は選択部である。ここでは、第2の実施形態と異なる部分のみ説明する。
【0068】
この乱数生成部1008では、公知の手法によって擬似乱数を生成し、選択部1009を制御して領域0の平均値或いは領域1の平均値をランダムに選択し、置換データとする。そして、差分値生成部1011は、入力画素値Piと選択部1009の出力(置換データ)との差分絶対値Dtを生成する。この差分絶対値Dtは比較部1010で閾値Th1と比較され、差分絶対値Dtが閾値Th1未満または以下の時のみ画素置換部1012で入力画素値Piを選択部1009の出力(置換データ)で置換する。また、それ以外では、画素置換部1012からは入力画素値Piがそのまま出力される。
【0069】
ここで、第3の実施形態における画像処理装置の処理について説明する。尚、置換データ生成処理以外については第2の実施形態と同様であるため、その説明は省略する。
【0070】
図11は、第3の実施形態における置換データ生成処理を示すフローチャートである。まずステップS1101において、領域判定部1004でウインドウ内の画素が領域0か領域1のどちらの領域かを判定する。具体的には、ウインドウ内平均値演算部1003でウインドウ内の画素値の平均を求め、各ウインドウ内の画素をそのウインドウ平均値と比較し、ウインドウ平均値以下なら領域0とし、それ以外では領域1とする。ここで、画素が領域0であればステップS1102へ進み、領域0平均値演算部1005で画素の平均値を求める。また、画素が領域1であればステップS1103へ進み、領域1平均値演算部1006で画素の平均値を求める。
【0071】
次に、ステップS1104において、乱数生成部1008で1ビットの乱数を生成し、乱数が0であればステップS1105へ進み、選択部1009で領域0平均値A0を置換データとして出力する。また、乱数が0でなければステップS1106へ進み、領域1平均値A1を置換データとして出力する。
【0072】
このように、第3の実施形態によれば、ランダムに領域0又は領域1の平均値を選択し、置換データとすることにより、低周波ノイズが乱数により高周波側に変調されるため、表示系や視覚のMTFによるノイズ除去効果が得られる。また、更に処理も簡略化される。また、上述の乱数出力の0の連続数及び1の連続数を制限することにより、乱数の周波数特性が高域側にシフトするので、より良好なノイズ除去効果が得られる。
【0073】
[第4の実施形態]
次に、図面を参照しながら本発明に係る第4の実施形態を詳細に説明する。
【0074】
第4の実施形態では、乱数生成部によって生成された乱数に応じてウインドウ内の画素をランダムに選択し、置換データとして出力するものである。
【0075】
図12は、第4の実施形態における画像処理装置の構成を示すブロック図である。図12において、1201、1202、1203は第1乃至第3の実施形態における画像削減部、画素抽出部、タイミング調整部と同様であり、1206〜1208は第2及び第3の実施形態における比較部、差分値生成部、画素置換部と同様であり、その説明は省略する。1204は乱数発生部、1205は画素選択部である。ここでは、前述した実施形態と異なる部分のみ説明する。
【0076】
乱数生成部1204は、第3の実施形態と同様に、公知の手法により擬似乱数を生成し、画素選択部1205を制御してウインドウ内の画素をランダムに選択し、置換データとする。そして、第2及び第3の実施形態と同様に、差分値生成部1207は、入力画素値Piと画素選択部1205の出力(置換データ)との差分絶対値Dtを生成する。この差分絶対値Dtは比較部1206で閾値Th1と比較され、差分絶対値Dtが閾値Th1未満または以下の時のみ画素置換部1208で入力画素データPiを画素選択部1205の出力(置換データ)で置換する。また、それ以外では、画素置換部1208からは入力画素値Piがそのまま出力される。
【0077】
尚、第4の実施形態におけるウインドウサイズを4×4とすると、ウインドウ内の画素数は16であるから乱数の桁数は4ビットとなる。
【0078】
図13は、9ビットのM系列擬似ランダム符号生成回路の一構成例を示す図である。図13において、1301はシフトレジスタ、1302はEXOR回路である。このM系列擬似ランダム符号生成回路では、予めシフトレジスタ1301に0以外の値をロードしておき、シフトレジスタの原始多項式に対応するビットをEXORした結果をビット0に入力し、左シフトすることで次の乱数を得る。第4の実施形態では、シフトレジスタ1301の段数が9段なので、9次の原始多項式X9+X4+1を用いている。よって、シフトレジスタ1301のビット8とビット3をEXOR回路1302でEXORした結果をビット0の入力とし、次のクロックで左シフトする。本構成により1〜511の乱数が、511周期で生成される。
【0079】
ここで、乱数生成部1204のレンジは0〜15であるので、シフトレジスタ1301の任意の4ビットを用いることにより、511周期の0〜15の乱数を得ることができる。また、乱数生成手段はこの方法に限らず、公知の手法により擬似乱数を生成しても良い。
【0080】
また、ウインドウ内の横の位置及び縦の位置をそれぞれ擬似乱数によって発生させ、置換データとする画素を決定することもできる。
【0081】
また、擬似乱数の発生確率は一様な確率分布でも良く、ウインドウ内において入力画素に対応する画素からの距離に依存した確率分布でも良い。例えば、置き換えの確率を高くするために、入力画素に対応する画素から遠い位置にある画素程高い発生確率を与える。
【0082】
また、上述した閾値との比較で、置換がされなかった場合、置換されるまで又は所定回数に達するまで、注目しているウインドウ内から別の新たな置換データを生成し、閾値と比較することで、置き換えの確率を高くすることができる。
【0083】
このように、第4の実施形態によれば、ウインドウ内の画素をランダムに選択して置換データとするので、簡単な構成であるにもかかわらず、低周波ノイズが発生乱数により高周波側に変調されるため、表示系や視覚のMTFによる良好なノイズ除去効果が得られる。また、乱数出力を入力画素が更新されるに従って反転或いは非反転させることにより、乱数の周波数特性が高域側にシフトするので、より良好なノイズ除去効果が得られる。
【0084】
[第5の実施形態]
次に、図面を参照しながら本発明に係る第5の実施形態を詳細に説明する。
【0085】
第5の実施形態では、入力画像を複数のカテゴリに分類し、各カテゴリに応じた置換データを生成するものである。
【0086】
図14は、第5の実施形態における画像処理装置の構成を示すブロック図である。図14において、1401〜1403、1407〜1409は第4の実施形態における図12に示した1201〜1203、1206〜1208の各処理と同様であり、その説明は省略する。1404はカテゴライズ部、1405は置換データ生成部、1506は置換データ選択部である。ここでは、第4の実施形態と異なる部分のみ説明する。
【0087】
カテゴライズ部1404は入力画像を複数のカテゴリに分類する。また、置換データ生成部1405は、第1乃至第4の実施形態において説明したような複数のアルゴリズム又は複数の異なる閾値によってノイズ除去のための置換データを生成する。そして、置換データ選択部1406は、カテゴリに従ってカテゴリに適した置換データを選択する。以下、第4の実施形態と同様の判定を行い、入力画素を置換してノイズを除去する。
【0088】
ここでのカテゴリは、例えば置換処理をした場合に弊害となる部分や、低周波ノイズが目立つ部分、高周波ノイズが目立つ部分、どちらのノイズも目立つ部分などを基準にして分類される。特に、第1乃至第4の実施形態では、弊害の見え方が異なっており、入力画像に対する相性が存在する。
【0089】
例えば、布のように細かなテクスチャが多い部分では、平均化処理を行わない方が見た目は良いので、第4の実施形態が向いている。また、暗部においては、平均化した方が見た目は良いので、第2の実施形態が向いている。更に、入力画素の色域によってもノイズの見え方が異なる。また、平坦部と認識されるレベル差も異なる。よって、第2の実施形態における閾値Th2の最適値も異なる。
【0090】
このように、第5の実施形態によれば、複数のアルゴリズム(閾値制御を含む)によって置換データを生成し、カテゴリに合せた置換データを選択して入力画素を置換するので、弊害が少なく良好なノイズ除去効果が得られる。
【0091】
[第6の実施形態]
次に、図面を参照しながら本発明に係る第6の実施形態を詳細に説明する。
【0092】
第6の実施形態では、第5の実施形態に更にカテゴリに従って複数の閾値から閾値を選択する閾値選択部を加えたものである。
【0093】
図15は、第6の実施形態における画像処理装置の構成を示すブロック図である。図15において、1501〜1509は第5の実施形態における図14に示した各処理と同様であり、その説明は省略する。1510は閾値選択部である。ここでは、第5の実施形態と異なる部分のみ説明する。
【0094】
カテゴライズ部1504は、入力画像を複数のカテゴリに分類する。閾値選択部1510は、分類されたカテゴリに従ってカテゴリに適した閾値Th1を選択する。以下、第5の実施形態と同様の判定を行い、入力画素を置換してノイズを除去する。
【0095】
ここでのカテゴリは、例えば置換処理をした場合に弊害の見え方を基準にして分類される。つまり、弊害が目立たない部分では閾値を大きくすることでノイズ除去効果を強化し、弊害が目立つ部分では閾値を小さくすることで弊害を目立たなくするのである。
【0096】
更に、AGC(Auto Gain Control)などにより、入力ゲインが異なる場合、ノイズの振幅は異なるので、入力ゲインによっても閾値Th1を変更することが望ましい。
【0097】
尚、第6の実施形態では、複数の置換生成部と閾値とを対応付けて説明したが、これに限らず、複数の置換生成部と閾値の数が異なっても良い。例えば、1つの置換生成部より置換データを生成しても良い。この場合は、置換データ選択部1506は省略される。
【0098】
このように、第6の実施形態によれば、カテゴリに応じた閾値を選択して入力画素を置換するので、弊害が少なく良好なノイズ除去効果が得られる。
【0099】
[第7の実施形態]
次に、図面を参照しながら本発明に係る第7の実施形態を詳細に説明する。
【0100】
第7の実施形態では、第1乃至第6の実施形態における図2に示す画像削減部101の削減画像生成部204で生成した削減画像をブロック化部201に戻し、繰り返して削減画像を生成するものである。
【0101】
図16は、第7の実施形態における画像削減部1601の構成を示すブロック図である。ここでは、第1乃至第6の実施形態と異なる部分のみ説明する。
【0102】
まず、画像削減部1601に画像が入力されると、第1の実施形態で説明したように削減画像が出力される。第7の実施形態では、削減画像を少なくとも1回以上画像削減部1601に入力し、別の削減画像を生成する。ここで、削減率を1/4とすると、入力画像を画像削減部1601に入れると1/4に削減された第1の削減画像が得られる。この第1の削減画像を削減率1/4として画像削減部1601に入力すると、更に1/4に削減された第2の削減画像を得ることができる。第2の削減画像は入力画像を1/16に削減した画像として得ることができる。即ち、削減率をMとし、得られた削減画像を画像削減部1601に入力する回数をN回とすると、入力画像に対してM(N+1) に削減された削減画像を得ることができる。
【0103】
また、第1の実施形態の場合も削減率をM(N+1) に設定することで、第7の実施形態と同等の削減量を実現できるが、削減率が固定の場合、第7の実施形態のように複数回繰り返すことで、所望の削減率を実現できる。
【0104】
また、説明した複数回繰り返す際に、削減率を変更しても良い。
【0105】
最終的に得られた削減画像に対しては、入力画素(注目画素)位置に対応する削減画素を中心に所定形状内(ウインドウ)の削減画素を抽出し、第1乃至第6の実施形態で説明した方法でノイズ除去を行う。
【0106】
このように、第7の実施形態によれば、弊害が少なく良好なノイズ除去効果が得られる。
【0107】
[第8の実施形態]
次に、図面を参照しながら本発明に係る第8の実施形態を詳細に説明する。
【0108】
第8の実施形態では、画像削減部101で入力画像を削減する前にフィルタを用いてノイズを除去するものである。
【0109】
図17は、第8の実施形態における画像処理装置の構成を示すブロック図である。ここでは、第2の実施形態における画像処理装置(図7)と異なる部分のみ説明する。
【0110】
第8の実施形態では、図17に示すように、画像削減部1701に入力画像が入力される前にフィルタ部1717においてフィルタ処理を実施する。例えば、図18に示す(a)は、入力画像の3×3の合計9画素で構成されるブロックを示している。このブロックの中心の黒画素をフィルタにより補正する注目画素とする。そして、3×3の画素に図18に示す(b)の3×3の合計9個の画素で構成されるフィルタを用いて処理を行う。尚、図18に示す(a)のブロックの各画素に図18に示す(b)のフィルタの各画素が対応しており、フィルタ中の値は各画素の重み係数を示している。
【0111】
ここで、ブロックの各画素に対応するフィルタの重み係数を乗算し、合計したものをフィルタの重み係数の合計で除算した値が注目画素の平滑後の値である。図18に示す(c)は平滑化された注目画素の値を示すものである。この平滑化により、高周波のノイズを除去することができる。
【0112】
入力画像を平滑化した画像を画像削減部1701に入力し、これ以降の処理は第1乃至第7の実施形態で説明した方法で低周波のノイズを除去する。
【0113】
また、フィルタ部1717において、複数の平滑化画像を出力し、複数の平滑化画像を画像削減部1701にそれぞれ入力し、第1の実施形態で説明した方法でそれぞれの平滑化画像の削減画像を生成して、複数の削減画像の同一画素から代表値を決定することで複数の削減画像から別の削減画像を生成しても良い。
【0114】
この代表値の決定方法は、乱数によってランダムに選択する方法、最頻度値を選択する方法、中央値を選択する方法がある。この方法以外にも、対応する入力画素との差分値をとり、所定の閾値以下で最も閾値に近い値を代表値とする方法もある。
【0115】
また、複数の平滑化画像の生成方法としては、図18に示す(b)の重み係数を変えることで異なる平滑化画像を生成することができる。例えば、図18に示す(b)では注目画素の近傍画素の重み係数は0.25としているが、0.25より大きい値を設定することで、図18に示す(b)を使用するより強い平滑化画像を生成できる。また、0.25より小さい値を設定することで、図18に示す(b)を使用するより弱い平滑化画像を生成できる。
【0116】
フィルタにより、高周波ノイズを除去することができる一方、エッジ部も平滑化される可能性がある。上述した複数の平滑化画像から代表値を決定することは、エッジ情報は保存することに適している。
【0117】
また、フィルタとしては、上述したもの以外に公知のローパスフィルタを使用できる。
【0118】
このように、第8の実施形態によれば、高周波ノイズ除去により大きな効果を発揮し、弊害が少なく良好なノイズ除去効果が得られる。
【0119】
[他の実施形態]
前述した各実施形態の機能を実現するソフトウェアのプログラムコードを記録した記録媒体を、システム或いは装置に供給し、そのシステム或いは装置のコンピュータ(CPU又はMPU)が記録媒体に格納されたプログラムコードを読み出し実行することによっても、本発明の目的が達成されることは言うまでもない。
【0120】
この場合、記録媒体から読み出されたプログラムコード自体が本発明の新規な機能を実現することになり、そのプログラムコードを記録した記録媒体は本発明を構成することになる。
【0121】
プログラムコードを供給するための記録媒体としては、例えば、フレキシブルディスク、ハードディスク、光ディスク、光磁気ディスク、CD−ROM,CD−R、磁気テープ、不揮発性のメモリカード、ROMなどを用いることができる。
【0122】
また、コンピュータが読み出したプログラムコードを実行することによって、前述した実施形態の機能が実現される他、そのプログラムコードの指示に基づき、コンピュータ上で稼動しているOSなどが実際の処理の一部又は全部を行い、その処理によっても前述した実施形態の機能が実現され得る。
【0123】
更に、記録媒体から読み出されたプログラムコードがコンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれた後、そのプログラムコードの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるCPUなどが実際の処理の一部又は全部を行い、その処理によっても前述した実施形態の機能が実現され得る。
【0124】
尚、本発明は、前述した実施形態の機能を実現するソフトウェアのプログラムコードを記録した記憶媒体から、そのプログラムをパソコン通信など通信ラインを介して要求者にそのプログラムを配信する場合にも適用できることは言うまでもない。
【0125】
【発明の効果】
以上説明したように、本発明によれば、平均値と入力画素値を比較することでノイズと有意信号の分離を図り、削減画像より置換データを生成することにより、より低い周波数成分までノイズ除去効果を有効にし、領域別平均値を用いることによって、エッジ付近における置換画素を増加させ、ノイズ除去効果が有効となる範囲を拡大させることができ、簡単な操作で弊害も少なく、より効果的なノイズ除去効果が得られる。特に、処理に必要なラインメモリの容量は大幅に削減される。
【0126】
また、2つの領域平均の差分が小さいウインドウにおいては置換データをウインドウ内平均値とすることで、平坦部におけるノイズ除去効果を増加させることができ、また、処理も簡略化される。
【0127】
また、ランダムに領域0又は領域1の平均値を選択し、置換データとすることで、低周波ノイズを乱数により高周波側に変調し、表示系や視覚のMTFによるノイズ除去効果が得られる。そして、更に処理も簡略化される。
【0128】
また、削減画像のウインドウ内の画素をランダムに選択して置換データとすることで、ディティールを損なわずに低周波ノイズを高周波側に変調して良好なノイズ除去効果が得られる。
【0129】
また、閾値制御を含む複数のアルゴリズムによって置換データを生成し、カテゴリに合せた置換データを選択して入力画素を置換することで、弊害が少なく画像の特性にマッチした良好なノイズ除去効果が得られる。
【0130】
また、カテゴリに合せた閾値を選択して入力画素を置換することで、弊害がより少なく画像の特性にマッチした良好なノイズ除去効果が得られる。
【0131】
また、複数回削減を行うことで、所望の削減画像を容易に生成することができ、効果的なノイズ除去効果が得られる。
【0132】
また、フィルタにより平滑化した画像から削減画像を生成し、置換データを生成することで、高周波ノイズ除去に適した良好なノイズ除去効果が得られる。
【図面の簡単な説明】
【図1】第1の実施形態における画像処理装置の構成を示すブロック図である。
【図2】第1の実施形態における画像削減部101の構成を示すブロック図である。
【図3】ブロック化を説明するための図である。
【図4】第1の実施形態における画像処理装置の処理を示すフローチャートである。
【図5】第1の実施形態における置換データ生成処理を示すフローチャートである。
【図6】第1の実施形態における置換処理を示すフローチャートである。
【図7】第2の実施形態における画像処理装置の構成を示すブロック図である。
【図8】第2の実施形態における置換データ生成処理を示すフローチャートである。
【図9】第2の実施形態における置換処理を示すフローチャートである。
【図10】第3の実施形態における画像処理装置の構成を示すブロック図である。
【図11】第3の実施形態における置換データ生成処理を示すフローチャートである。
【図12】第4の実施形態における画像処理装置の構成を示すブロック図である。
【図13】9ビットのM系列擬似ランダム符号生成回路の一構成例を示す図である。
【図14】第5の実施形態における画像処理装置の構成を示すブロック図である。
【図15】第6の実施形態における画像処理装置の構成を示すブロック図である。
【図16】第7の実施形態における画像削減部1601の構成を示すブロック図である。
【図17】第8の実施形態における画像処理装置の構成を示すブロック図である。
【図18】入力画像のブロックとフィルタ処理を説明するための図である。
【符号の説明】
101 画像削減部
102 画素抽出部
103 ウインドウ内平均値演算部
104 領域判定部
105 領域0平均値演算部
106 領域1平均値演算部
107 領域0差分値生成部
108 領域1差分値生成部
109 ウインドウ内差分値生成部
110 タイミング調整部
111 比較部
112 画素置換部
Claims (33)
- 入力画像を所定の倍率に削減して削減画像を得る工程と、
前記削減画像から入力画素に対応する削減画素を含む所定サイズのウインドウ内の削減画素を抽出する工程と、
抽出したウインドウ内の削減画素に基づき、前記入力画素の値を置換する置換データを生成する工程と、
前記置換データと前記入力画素の値との差分値を求める工程と、
前記差分値を第1の閾値と比較する工程と、
前記差分値が前記第1の閾値未満または以下の場合に前記入力画素の値を前記置換データで置換する工程とを有することを特徴とする画像処理方法。 - 前記置換データを生成する工程は、
前記ウインドウ内の平均値を求める工程と、
前記削減画素が2つの領域の何れの領域かを判定する工程と、
判定された領域毎に代表値を求める工程と、
前記ウインドウ内の平均値及び2つの代表値と前記入力画素の値との差分値を各々求める工程とを有し、
求めた3つの差分値の内、差分値が最小となる差分値を選択して置換データとすることを特徴とする請求項1記載の画像処理方法。 - 前記置換データを生成する工程は、
前記ウインドウ内の平均値を求める工程と、
前記削減画素が2つの領域の何れの領域かを判定する工程と、
判定された領域毎に代表値を求める工程と、
求めた2つの領域代表値の差分を求める工程と、
前記2つの領域代表値の差分を第2の閾値と比較する工程とを有し、
前記2つの領域代表値の差分が前記第2の閾値未満または以下の場合に前記ウインドウ内の平均値を置換データとすることを特徴とする請求項1記載の画像処理方法。 - 前記2つの領域代表値の平均を求める工程と、
前記2つの領域代表値の平均と前記入力画素の値とを比較する工程と、
前記入力画素の値が前記2つの領域代表値の平均未満または以下の場合に小さい方の領域代表値を選択し、前記入力画素の値が前記2つの領域代表値の平均以上または超過の場合に大きい方の領域代表値を選択する工程とを更に有し、
前記2つの領域代表値の差分が前記第2の閾値以上または超過の場合に前記選択された代表値を置換データとすることを特徴とする請求項3記載の画像処理方法。 - 前記置換データを生成する工程は、
前記削減画素が2つの領域の何れの領域かを判定する工程と、
判定された領域毎に代表値を求める工程と、
乱数を生成する工程と、
前記乱数により2つの領域代表値の何れか1つを選択する工程とを有し、
選択した領域代表値を置換データとすることを特徴とする請求項1記載の画像処理方法。 - 前記削減画像は複数回の削減によって生成されることを特徴とする請求項1記載の画像処理方法。
- 前記削減画像を得る工程は、
前記入力画像を所定の削減率に応じてブロック化する工程と、
ブロックより入力画素の位置に対応するブロックを抽出する工程と、
抽出したブロック内の画素より代表値を決定する工程と、
前記代表値を画素の値とする削減画像を生成する工程とを有することを特徴とする請求項1記載の画像処理方法。 - 前記ブロック内の画素より代表値を決定する工程は、
乱数を生成する工程と、
前記乱数により前記ブロック内の画素を選択する工程と、
選択された画素の値を代表値とすることを特徴とする請求項7記載の画像処理方法。 - 前記ブロック内の画素より代表値を決定する工程は、
ブロック内の最頻度値を決定する工程と、
決定された最頻度値を代表値とすることを特徴とする請求項7記載の画像処理方法。 - 前記ブロック内の画素より代表値を決定する工程は、
ブロック内の画素レンジの中央値を決定する工程と、
前記中央値を決定する手段より決定された中央値を代表値とすることを特徴とする請求項7記載の画像処理方法。 - 前記削減画素が2つの領域の何れの領域かを判定する工程は、前記ウインドウ内の平均値との比較によって行うことを特徴とする請求項2記載の画像処理方法。
- 前記削減画素が2つの領域の何れの領域かを判定する工程は、前記ウインドウ内の画素の大きさ順によって行うことを特徴とする請求項2記載の画像処理方法。
- 前記削減画素が2つの領域の何れの領域かを判定する工程は、前記ウインドウ内の画素レンジの中央値との比較によって行うことを特徴とする請求項2記載の画像処理方法。
- 前記2つの代表値は、各領域内の平均値であることを特徴とする請求項2記載の画像処理方法。
- 前記2つの代表値は、前記ウインドウ内で2番目に小さい画素及び2番目に大きい画素であることを特徴とする請求項2記載の画像処理方法。
- 前記乱数を生成する工程は、シフトレジスタを有するM系列擬似ランダム符号生成回路によって乱数を生成することを特徴とする請求項5記載の画像処理方法。
- 前記乱数を生成する工程は、前記M系列擬似ランダム符号生成回路より出力された0及び1の連続数をカウントし、その連続数が所定数になった場合に次の値を異なる値に置き換えて出力することを特徴とする請求項16記載の画像処理方法。
- 前記置換データを生成する工程は、
乱数を生成する工程と、
前記乱数により前記ウインドウ内の画素の1つを選択する工程と、
選択された画素の値を置換データとすることを特徴とする請求項1記載の画像処理方法。 - 前記乱数を生成する工程は、選択に必要なビット数以上のシフトレジスタを有するM系列擬似ランダム符号生成回路のシフトレジスタ出力より前記選択に必要なビット数分抽出して乱数を生成することを特徴とする請求項18記載の画像処理方法。
- 前記乱数を生成する工程は、選択に必要なビット数以上のシフトレジスタを有するM系列擬似ランダム符号生成回路のシフトレジスタ出力より生成した値を画素が入力されるに従って反転・非反転を繰り返して出力することを特徴とする請求項18記載の画像処理方法。
- 前記乱数を生成する工程は、選択に必要なビット数以上のシフトレジスタを有するM系列擬似ランダム符号生成回路のシフトレジスタ出力より生成した値を、画素が入力されるに従ってビット順を反転・非反転を繰り返して出力することを特徴とする請求項18記載の画像処理方法。
- 入力画像を所定の倍率に削減して削減画像を得る工程と、
前記削減画像から入力画素に対応する削減画素を含む所定サイズのウインドウ内の削減画素を抽出する工程と、
抽出したウインドウ内の削減画素に基づき、前記入力画素の値を置換する複数の置換データを生成する工程と、
前記入力画素を複数のカテゴリに分類する工程と、
各カテゴリに従って前記複数の置換データの中から1つを選択する工程と、
選択された置換データと前記入力画素の値との差分値を求める工程と、
前記差分値を第1の閾値と比較する工程と、
前記差分値が前記第1の閾値未満または以下の場合に前記入力画素の値を前記選択された置換データで置換する工程とを有することを特徴とする画像処理方法。 - 前記複数の置換データを生成する工程は、少なくとも請求項2、3、5、18記載の置換データを生成する工程の何れか1つを含むことを特徴とする請求項22記載の画像処理方法。
- 前記複数の置換データを生成する工程は、請求項3に記載の置換データを生成する工程を複数含み、更に第2の閾値が互いに異なることを特徴とする請求項22記載の画像処理方法。
- 前記削減画像は複数回の削減によって生成されることを特徴とする請求項22記載の画像処理方法。
- 前記削減画像を得る工程は、
前記入力画像を所定の削減率に応じてブロック化する工程と、
ブロックより入力画素の位置に対応するブロックを抽出する工程と、
抽出したブロック内の画素より代表値を決定する工程と、
前記代表値を画素の値とする削減画像を生成する工程とを有することを特徴とする請求項22記載の画像処理方法。 - 前記ブロック内の画素より代表値を決定する工程は、請求項8乃至請求項10に記載の工程を少なくとも1つ含むことを特徴とする請求項26記載の画像処理方法。
- 前記カテゴリに従って第1の閾値を選択する工程を有することを特徴とする請求項22記載の画像処理方法。
- 前記複数の置換データを生成する工程は、請求項2、3、5及び18に記載の工程を1つ以上含むことを特徴とする請求項28記載の画像処理方法。
- 入力画像をフィルタ処理する工程を有し、前記削減画像を得る工程はフィルタ処理された入力画像を所定の倍率に削減して削減画像を得ることを特徴とする請求項1又は請求項22記載の画像処理方法。
- 入力画像を所定の倍率に削減して削減画像を得る手段と、
前記削減画像から入力画素に対応する削減画素を含む所定サイズのウインドウ内の削減画素を抽出する手段と、
抽出したウインドウ内の削減画素に基づき、前記入力画素の値を置換する置換データを生成する手段と、
前記置換データと前記入力画素の値との差分値を求める手段と、
前記差分値を第1の閾値と比較する手段と、
前記差分値が前記第1の閾値未満または以下の場合に前記入力画素の値を前記置換データで置換する手段とを有することを特徴とする画像処理装置。 - コンピュータに請求項1記載の画像処理方法を実行させるためのプログラム。
- 請求項32記載のプログラムを記録したコンピュータ読み取り可能な記録媒体。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2003097187A JP2004303076A (ja) | 2003-03-31 | 2003-03-31 | 画像処理方法及び画像処理装置 |
US10/809,526 US7432985B2 (en) | 2003-03-26 | 2004-03-26 | Image processing method |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2003097187A JP2004303076A (ja) | 2003-03-31 | 2003-03-31 | 画像処理方法及び画像処理装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2004303076A true JP2004303076A (ja) | 2004-10-28 |
Family
ID=33409039
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2003097187A Pending JP2004303076A (ja) | 2003-03-26 | 2003-03-31 | 画像処理方法及び画像処理装置 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2004303076A (ja) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2005078345A (ja) * | 2003-08-29 | 2005-03-24 | Canon Inc | 画像処理装置、画像処理方法、コンピュータプログラム及びコンピュータ読み取り可能な記録媒体 |
JP2010021952A (ja) * | 2008-07-14 | 2010-01-28 | Canon Inc | 画像処理装置、画像処理方法及びプログラム |
JP2011235544A (ja) * | 2010-05-11 | 2011-11-24 | Kyocera Mita Corp | 画像形成装置及び画像形成方法 |
JP2012113398A (ja) * | 2010-11-22 | 2012-06-14 | Toshiba Corp | 画像処理装置及び画像処理システム |
JP2018084443A (ja) * | 2016-11-21 | 2018-05-31 | 株式会社リコー | 画像処理装置、画像処理システム、画像処理方法、及び画像処理プログラム |
-
2003
- 2003-03-31 JP JP2003097187A patent/JP2004303076A/ja active Pending
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2005078345A (ja) * | 2003-08-29 | 2005-03-24 | Canon Inc | 画像処理装置、画像処理方法、コンピュータプログラム及びコンピュータ読み取り可能な記録媒体 |
JP4500521B2 (ja) * | 2003-08-29 | 2010-07-14 | キヤノン株式会社 | 画像処理装置、画像処理方法、コンピュータプログラム及びコンピュータ読み取り可能な記録媒体 |
JP2010021952A (ja) * | 2008-07-14 | 2010-01-28 | Canon Inc | 画像処理装置、画像処理方法及びプログラム |
US8294791B2 (en) | 2008-07-14 | 2012-10-23 | Canon Kabushiki Kaisha | Image correction apparatus for digital dodging |
JP2011235544A (ja) * | 2010-05-11 | 2011-11-24 | Kyocera Mita Corp | 画像形成装置及び画像形成方法 |
JP2012113398A (ja) * | 2010-11-22 | 2012-06-14 | Toshiba Corp | 画像処理装置及び画像処理システム |
JP2018084443A (ja) * | 2016-11-21 | 2018-05-31 | 株式会社リコー | 画像処理装置、画像処理システム、画像処理方法、及び画像処理プログラム |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7432985B2 (en) | Image processing method | |
KR100583710B1 (ko) | 화상 처리 장치, 화상 처리 방법, 및 기록 매체 | |
JP5065490B2 (ja) | デジタルオブジェクトを処理するための方法および関係するシステム | |
KR101618298B1 (ko) | 고감도 영상 생성 장치 및 방법 | |
JP2004040235A (ja) | 画像処理装置、及び画像処理方法 | |
JP3862621B2 (ja) | 画像処理装置、画像処理方法、及びそのプログラム | |
JP2012004787A (ja) | 画像処理装置、および画像処理方法、並びにプログラム | |
JP2010034964A (ja) | 画像合成装置、画像合成方法及び画像合成プログラム | |
JP5534787B2 (ja) | 画像処理装置及び画像処理方法 | |
JP2005228333A (ja) | 画像データからハーフトーンスクリーンの周波数および大きさを推定する方法および装置 | |
JP6628987B2 (ja) | 画像処理装置、画像処理方法及び撮像装置 | |
JP5092536B2 (ja) | 画像処理装置及びそのプログラム | |
JP2004303076A (ja) | 画像処理方法及び画像処理装置 | |
JP3706830B2 (ja) | 画像信号処理装置 | |
JPH1141491A (ja) | 2次元ノイズ低減回路 | |
JP2009194721A (ja) | 画像信号処理装置、画像信号処理方法、及び撮像装置 | |
JP4040512B2 (ja) | 画像処理方法及び画像処理装置 | |
JP3106831B2 (ja) | 映像信号処理装置 | |
KR100764395B1 (ko) | 디지털 카메라용 적응적 링잉 제거 장치 | |
JP3751806B2 (ja) | 画像処理装置および記録媒体 | |
JP3734652B2 (ja) | 画像処理装置 | |
JP4217731B2 (ja) | 画像処理装置及び画像処理方法 | |
KR100888428B1 (ko) | 영상의 노이즈 제거 장치 및 방법 | |
JP4197821B2 (ja) | 画像処理装置 | |
JP2024015724A (ja) | 画像処理装置およびプログラム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20050607 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20070309 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20070316 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20070910 |