JP2016201037A - 画像処理装置、画像処理方法及びプログラム - Google Patents

画像処理装置、画像処理方法及びプログラム Download PDF

Info

Publication number
JP2016201037A
JP2016201037A JP2015081941A JP2015081941A JP2016201037A JP 2016201037 A JP2016201037 A JP 2016201037A JP 2015081941 A JP2015081941 A JP 2015081941A JP 2015081941 A JP2015081941 A JP 2015081941A JP 2016201037 A JP2016201037 A JP 2016201037A
Authority
JP
Japan
Prior art keywords
pixel
image data
weight
image processing
similarity
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
Application number
JP2015081941A
Other languages
English (en)
Inventor
良隆 佐々木
Yoshitaka Sasaki
良隆 佐々木
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Canon Inc
Original Assignee
Canon Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Canon Inc filed Critical Canon Inc
Priority to JP2015081941A priority Critical patent/JP2016201037A/ja
Publication of JP2016201037A publication Critical patent/JP2016201037A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Studio Devices (AREA)
  • Image Processing (AREA)

Abstract

【課題】複数の画像データを用いるノイズ低減処理において、残留ノイズムラを抑制した画像データのノイズ低減処理を行う。
【解決手段】本発明における画像処理装置は、ノイズ低減対象の基準画像データの着目画素を含む着目領域と、基準画像データとは異なる参照画像データの複数の参照画素のうち少なくとも1つを含む参照領域と、を比較することにより、着目画素と複数の参照画素それぞれとの類似度を導出する。画像処理装置は、参照画像データにおいて着目画素に対応する位置に存在する対応画素と、複数の参照画素それぞれとの距離を導出し、類似度と、距離とに基づいて複数の参照画素それぞれの重みを導出する。画像処理装置は、複数の参照画素それぞれの画素値に重みによる加重平均を適用することにより、着目画素の画素値を決定する。
【選択図】図4

Description

本発明は、画像データに含まれるノイズ低減処理を行う画像処理装置、画像処理方法およびプログラムに関する。
従来より、デジタルカメラやデジタルビデオカメラなどのデジタル撮像装置が広く一般に利用されている。これらのようなデジタル撮像装置は、CCDやCMOSセンサなどの光電荷変換素子(撮像素子)で受光した光をデジタル信号に変換することにより、画像データを生成する。画像データを生成する過程において、撮像素子や回路の特性によっては暗電流ノイズ、熱ノイズ、ショットノイズなどが発生し、画像データにノイズが混入する場合がある。近年の撮像素子の小型化、高画素化に伴い、画像データの画素ピッチが極小化する傾向にあるため、画像データに混入するノイズが目立ちやすくなっている。特に、デジタル撮像装置の撮影感度を高くした場合には、画像データに混入するノイズが顕著となり、その結果撮像した画像データの画質が劣化する大きな要因となっている。
画像処理の分野では、空間方向または時間方向に画素値を平均処理することにより、画像データに含まれるノイズを低減する手法が知られている。空間方向のノイズ低減処理では、処理対象の着目画素近傍の画素値を平均することにより、着目画素の画素値を補正し、ノイズを低減する。また、時間方向のノイズ低減処理では、連続撮影した複数の画像データ間で、着目画素と同じ位置に存在する対応画素の画素値を平均することにより、着目画素の画素値を補正し、ノイズを低減する。
ところが、時間方向のノイズ低減処理において、着目画素が動被写体領域の画素である場合、平均処理を施した画像の動被写体が多重になったりぼけたりすることがある。これは、着目画素が動被写体領域の画素、対応画素が静止被写体領域の画素のように、着目画素と対応画素のそれぞれの画素値が大きく乖離している場合、着目画素の画素値がそれぞれの乖離した画素値の平均によって置き換えられるからである。
このような課題を解決するために、画像処理の分野では、複数の参照画素に対してそれぞれ重み付けを行い、当該重みによる加重平均を適用することにより、画像データのノイズを低減する手法が知られている。例えば、Non Local Means法では、着目画素を含む画素の集合である着目領域と、着目領域近傍の画素の集合である参照領域とのブロックマッチングを用いて各参照画素の重みを決定する技術が提案されている(特許文献1)。あるいはまた、着目画素を含む画素の集合である着目領域と、対応画素を含む画素の集合である対象領域とのブロックマッチングを、連続撮影した複数の画像データや、動画撮影した複数のフレームに適用する技術も提案されている(特許文献2)。このように、Non Local Means法などのブロックマッチングを用いて各参照画素の重みを決定し、当該重みによる加重平均を施すことにより、出力画像の動被写体が多重になったりぼけたりする現象を低減することができる。
特表2007−536662号公報 特開2010−141663号公報
しかしながら、上記説明したNon Local Means法などのブロックマッチングを適用したノイズ低減処理では、出力画像に残留ノイズムラが目立ってしまうという課題が生じていた。一般に、Non Local Means法などのブロックマッチングを適用してノイズ低減処理を行う場合、着目領域と近似する画素値を有する参照領域の画素に対して大きな重みが付与される。そのため、着目領域にノイズが混入していた場合、本来近似しない参照領域の画素に対して大きな重み付けがなされてしまう場合がある。逆に、参照領域にノイズが混入していた場合、本来近似しているはずの参照領域の画素に対して小さな重み付けがなされてしまう場合がある。誤った重みに基づいて加重平均処理が行われ、着目画素に対して誤った画素値の補正が施されると、画像データにノイズが残留したままになってしまう。この結果、出力画像に残留ノイズムラと呼ばれるムラが発生してしまう場合がある。複数の画像データに対してブロックマッチングを適用する場合、空や建物などの静止被写体が存在する平坦領域において、特に残留ノイズムラが目立ってしまうという課題があった。
本発明にかかる画像形成装置は、複数の画像データを用いて基準画像データに含まれるノイズを低減する画像処理装置であって、ノイズ低減対象の基準画像データの着目画素を含む着目領域と、前記基準画像データとは異なる参照画像データの複数の参照画素のうち少なくとも1つを含む参照領域と、を比較することにより、前記着目画素と前記複数の参照画素それぞれとの類似度を導出する類似度導出手段と、前記参照画像データにおいて前記着目画素に対応する位置に存在する対応画素と、前記複数の参照画素それぞれとの距離を導出する距離導出手段と、前記類似度と、前記距離とに基づいて前記複数の参照画素それぞれの重みを導出する重み導出手段と、前記複数の参照画素それぞれの画素値に前記重みによる加重平均を適用することにより、前記着目画素の画素値を決定する決定手段とを備えることを特徴とする。
本発明の画像処理装置、画像処理方法及びプログラムによれば、複数の画像データを用いるノイズ低減処理において、残留ノイズムラを抑制したノイズ低減処理を行うことができる。
実施形態における画像処理装置のハードウェア構成を示すブロック図である。 実施形態における画像データのノイズ低減方法を示す図である。 実施形態におけるノイズ低減方法で参照される関数を示す図である。 実施形態における画像処理装置のソフトウェア機能構成を示すブロック図である。 実施形態における画像処理装置の処理内容を示すフローチャートである。 実施形態における参照画素の選択方法を示す模式図である。 実施形態における参照領域の選択方法を示す模式図である。 実施形態における距離の導出方法を示す模式図である。 実施形態2における画像処理装置のソフトウェア機能構成を示すブロック図である。 実施形態2における画像処理装置の処理内容を示すフローチャートである。 実施形態2における係数テーブルの一例を示す図である。
以下、本発明を実施するための形態について図面を参照して説明する。ただし、この実施形態に記載されている構成要素はあくまで例示であり、本発明の範囲をそれらに限定する趣旨のものではない。また、実施形態で説明されている構成要素の組み合わせのすべてが、課題を解決するための手段に必須のものとは限らない。
[実施形態1]
図1は、本実施形態における画像処理装置1の構成を示す図である。本実施形態における画像処理装置1の構成について、図1を参照して説明する。画像処理装置1は、CPU101、RAM102、ハードディスクドライブ(以下「HDD」と記す)103、汎用インターフェース(以下インターフェースは「I/F」と記す)104、モニタ108、及びメインバス109を備える。汎用I/F104は、カメラなどの撮像装置105、マウスやキーボードなどの入力装置106、及びメモリーカードなどの外部メモリ107と、画像処理装置1のメインバス109とを相互に通信可能に接続する。
本実施形態において説明される各種処理は、HDD103に格納されたプログラムコードがRAM102に展開され、CPU101によって動作されることにより実現される。まず、CPU101はHDD103に格納されている画像処理アプリケーションを呼び出し、RAM102に展開するとともに、モニタ108にユーザインターフェースを表示させる処理を実行する。次に、画像処理アプリケーションの処理に従って、CPU101は、HDD103や外部メモリ107に格納されている各種データをRAM102に読み込む。同様に、CPU101は、画像処理アプリケーションの処理に従って、撮像装置105で撮影されたRAW画像データや、入力装置106を介して入力を受け付けたユーザからの指示などをRAM102に読み込む。次に、CPU101は、画像処理アプリケーションの処理に従って、RAM102に格納された各種データに対して各種演算処理を施す。
CPU101は、画像処理アプリケーションの処理に従って、演算結果をモニタ108に表示し、または再びHDD103や外部メモリ107に格納する処理を実行する。尚、各種データと各種データの格納領域とは実施形態に限定されるものではない。HDD103や外部メモリ107に格納されたRAW画像データが、RAM102に読み込まれる態様であってもよい。さらには、画像処理装置1のネットワークI/F(不図示)が、画像処理装置1とネットワークを介して接続される外部サーバからRAW画像データを受信し、受信したRAW画像データをRAM102に読み込んでもよい。
次に、本実施形態の要部である、入力された画像データに対してノイズ低減処理を施し、補正した画像データを出力する処理内容の詳細について説明する。
(Non Local Means法)
本実施形態では、Non Local Means法(以下「NLM法」と記す)を用いて画像データに含まれるノイズを低減する。NLM法では、加重平均処理と呼ばれる処理により着目画素の画素値を置き換える。より詳細には、ノイズ低減対象となる着目画素の画素値と、着目画素の周辺に存在する複数の参照画素の画素値とに対して適応的な重みをかけ、重みかけした画素値を全て加算した結果で着目画素の画素値を置き換える。画像データに含まれる画素それぞれに対して、上述の着目画素の画素値の置き換え処理を施すことにより、画像データに含まれるノイズを低減する。
参照画素の画素数をNS、参照画素の画素値をIj(j=1〜NS)、参照画素の重みをwj(j=1〜NS)とすると、ノイズ低減処理後の着目画素の画素値Inewは次式によって表される。
次に、参照画素の重みを算出する方法について、図2及び図3を参照して説明する。図2(a)は、左上の画素を原点(0,0)として各画素の画素値をI(x,y)と表すことができる画像データ200の一例を示す。画像データ200は、ノイズ低減対象となる着目画素201を有し、着目画素201の画素値はI(4,4)である。着目画素201を中心とした3×3画素の矩形領域は、着目領域202である。着目画素201を含む5×5画素(NS=25)の矩形領域は、参照画素203が存在する領域である。本実施例においては、着目画素201を含む5×5画素の矩形領域のいずれかに参照画素203が存在する。
一方、参照画素203を中心とした3×3画素の矩形領域は、参照領域204である。本実施例では、参照領域204は、着目領域202と同サイズの3×3画素の矩形領域である。尚、参照領域204は参照画素203毎に存在するが、図2(a)の図示例では、参照画素204が画像データ200の座標系(2,2)に存在する場合の参照領域204のみを示している。
参照画素203の重みを得るために、まず、着目領域202と参照領域204とを比較して類似度Cjを算出する。例えば、図2(b)に示されるように、着目領域202に存在するそれぞれの画素の画素値をbs(p,q)、参照領域204に存在するそれぞれの画素の画素値をbj(p,q)(j=1〜NS)とする。着目領域202における(x,y)=(0,1)と、参照領域204における(x,y)=(0,1)等のように、着目領域202と参照領域204のそれぞれの座標系において空間的に対応する画素の画素値の差を2乗する。次いで、それぞれの座標系において空間的に対応する画素の画素値の差を2乗したものを、さらに合計した値を類似度とする。このとき、類似度Cjは次式によって表される。
本実施形態においては、類似度Cjの値が小さいほど着目領域202と参照領域204の濃淡が類似する。すなわち、着目領域202の画素の画素値と、参照領域204の画素の画素値とが近似する値となる。尚、本実施例では上記の数式を用いて類似度を取得する態様について説明したが、これに限定されず、類似度を他の方法により取得することもできる。
次に、算出された類似度Cjに応じて、参照画素203の重みWjを決定する。図3は、類似度Cjから重みWjを決定するために参照される関数の一例を示す図である。図3に示される関数によると、類似度Cjの値が小さいほど重みWjの値が大きくなり、類似度Cjの値が大きいほど重みWjの値が小さくなるように重みWjを決定することができる。本実施例において、図3に示される関数は例えば次式によって表される。
ここで、hは重みWjの大きさを制御する変数である。変数hを大きくすると着目画素201のノイズ低減効果が高くなるが、着目画素201のエッジがぼける。
以下同様に、着目領域202と、参照領域204とを順次比較して類似度Cjを算出し、算出した類似度Cjに基づいて参照画素203それぞれの重みWjを得ることができる。
尚、本実施例のノイズ低減処理において、着目画素201が存在する画像データ200から参照画素203を選択する態様を示したが、着目画素201が存在しない異なる画像データから参照画素203を選択してもよい。異なる画像データから参照画素203を選択する場合、異なる画像データは、同じ撮像装置で同じ被写体を連写して得られた画像データのように、同じ被写体に由来する異なる画像データであることが望ましい。あるいはまた、着目画素201が存在する画像データ200と、着目画素201が存在しない異なる画像データとの、双方から参照画素203を選択することもできる。尚、本実施形態では、着目画素201を含む画像データ200を基準画像データとし、参照画素203を含む画像データを参照画像データとして説明する。
(画像処理装置1のソフトウェア機能構成)
図4は、本実施形態における画像処理装置1のソフトウェア機能構成を示すブロック図である。以下、図4のブロック図を参照して画像処理装置1のソフトウェア機能について説明する。なお、図4のソフトウェア機能ブロック図によって説明される処理は、HDD103に格納されたプログラムコードがRAM102に展開され、CPU101によって実行される。
図4において、制御部400は、類似度導出部402、距離導出部403などの各処理モジュールを管理する。入力部401は、撮像装置105、HDD103、または外部メモリ107から画像データを入力する。本実施形態では、入力部401は、ノイズ低減対象である基準画像データと、基準画像データのものと同じ被写体を撮影することにより生成された1または複数の参照画像データとを入力する。入力部401は、撮像装置105から画像データを入力してもよいし、撮像装置105で撮影した画像データを一旦HDD103などの記憶装置に記憶した後で、記憶装置から画像データを入力してもよい。
類似度導出部402は、入力部401が入力した基準画像データの各画素と、参照画像データの各参照画素との類似度を導出する。尚、類似度導出方法の詳細については後述する。
距離導出部403は、入力部401が入力した基準画像データの各画素間と、基準画像データまたは参照画像データの各参照画素との距離を導出する。尚、距離導出方法の詳細については後述する。
重み導出部404は、類似度導出部402及び距離導出部403で導出した類似度及び距離に基づいて各参照画素の重みを導出する。尚、重み導出方法の詳細については後述する。
決定部405は、各参照画素の画素値に、重み導出部404で導出した重みによる加重平均を適用することにより、着目画素の画素値を決定する。尚、画素値の決定方法の詳細については後述する。
出力部406は、入力部401によって入力された複数の画像データと、決定部405が決定した各着目画素の画素値と、に基づいて基準画像データを補正し、補正後の画像データを、モニタ108やHDD103等に出力する。尚、出力先はこれらに限られるものではなく、例えば、出力部406は、汎用I/F104を介して接続される外部メモリ107や、不図示のプリンタ、またはネットワークを介して接続される外部サーバ等に出力してもよい。
(メイン処理フロー)
図5は、本実施形態における画像処理装置1の処理の内容を示すフローチャートである。以下、図5のフローチャートを参照して画像処理装置1の処理内容について説明する。なお、図5に示されるフローチャートによる処理は、HDD103に格納されたプログラムコードがRAM102に展開され、CPU101によって実行される。
S501において、入力部401は複数の画像データを入力する。本実施形態では、入力部401は、ノイズ低減対象である基準画像データと、基準画像データのものと同じ被写体を撮影することにより生成された1または複数の参照画像データとを入力する。尚、本実施例では、複数の画像データのサイズは各々幅X画素、高さY画素であることを前提に説明する。また、本実施例において、入力部401は、1つの基準画像データと、2つの参照画像データとを入力する態様について説明する。また、実施例の説明において、各画像データの左上の画素を基準として、基準画像データの画素値をI0(x,y)、2つの参照画像データの画素値をそれぞれI1(x,y)、I2(x,y)と表現して説明する。但し、x,yは0≦x<X,0≦y<Yを満たす整数である。勿論、参照画像データの数は2つに限られるものではなく、1つでもよいし、3つ以上でもよい。
S502において、制御部400は、ノイズ低減対象である基準画像データから着目画素を選択する。制御部400は着目画素を任意に選択可能であり、例えば左上I0(0,0)から右下I0(x−1,y−1)へと順次選択することができる。
S503において、制御部400は基準画像データまたは参照画像データから参照画素を選択する。制御部400は参照画素を任意に選択可能であるが、一般に基準画像データにおける着目画素の近傍画素及び、参照画像データにおける着目画素に対応する対応画素の近傍を選択すれば、基準画像データについて充分なノイズ低減効果を得ることができる。
ここで、図6を参照して参照画素の選択方法の例について説明する。図6は、本実施形態における参照画素の選択方法を示す模式図である。図6において、基準画像データ601は、着目画素I0(x0,y0)604を有する。同様に、参照画像データ602、603は、着目画素604に対応する対応画素I1(x0,y0)605、対応画素I2(x0,y0)606をそれぞれ有する。さらに、着目画素604を含む5×5画素の矩形領域は、参照画素607が存在する領域である。本実施例においては、着目画素604を含む5×5画素の矩形領域のいずれかに参照画素607が存在する。同様に、対応画素605、606を含む5×5画素の矩形領域は、参照画素608、609が存在する領域である。本実施例においては、対応画素605、606を含む5×5画素の矩形領域のいずれかに参照画素608、609が存在する。
図6に示されるように、制御部400は、着目画素近傍及び対応画素近傍に存在する画素の中から参照画素を選択することができる。尚、本実施形態では図6において、着目画素604または対応画素605、606の近傍5×5画素の領域に存在する画素の中から参照画素を選択する態様を示している。しかし、他の実施形態では、参照画素の選択方法はこれに限られない。例えば、制御部400は、着目画素604または対応画素605、606の近傍3×3や7×7など異なる領域に存在する画素の中から参照画素を選択してもよい。あるいはまた、制御部400は、基準画像データ601または参照画像データ602、603に存在する画素の中からそれぞれランダムに参照画素を選択してもよい。さらに、制御部400は、必ずしも基準画像データ601と参照画像データ602、603の全てについて参照画素を設定しなくてもよい。例えば、制御部400は、参照画像データ602、603のみについて参照画素を設定する態様であってもよい。また、入力部201が入力した画像データが、ベイヤ配列などのカラーフィルタを備える撮像装置で撮影されたRAW画像データであった場合、制御部400は入力された画像データについて1画素おきに参照画素を設定する態様であってもよい。
再び図5に戻り、S504において、類似度導出部402は、S502で選択した着目画素を含む着目領域と、S503で選択した参照画素を含む参照領域とを比較する。
S505において、類似度導出部402は、S502で選択した着目画素と、S503で選択した参照画素との類似度Cjを導出する。本実施形態において、類似度導出部402は、S504の比較処理およびS505の導出処理を、前述の数式(2)に従って行うことができる。類似度導出部402は、S504およびS505の処理の結果、類似度Cjを導出することができる。
ここで、図7を参照して参照領域の選択方法の例について説明する。図7において、基準画像データ601は、着目画素604を含む着目領域610を有する。本実施形態では、着目画素604を中心とした3×3画素の矩形領域は、着目領域610である。
一方、図7の基準画像データ601において、参照画素607を中心とした3×3画素の矩形領域は、参照領域611である。同様に、図7の参照画像データ602、603において、参照画素608、609を中心とした3×3画素の矩形領域は、それぞれ参照領域612、613である。本実施形態では、参照領域611、612、613は、それぞれ着目領域604と同サイズの3×3画素の矩形領域である。
再び図5に戻り、S506において、制御部400は、S505で導出した類似度Cjが所定の閾値Eth以下か否かを判定する。即ち、制御部400は、着目画素604と参照画素とが類似しているか否かを判定する。類似度Cjが閾値Eth以下であれば(S506:Yes)着目画素604と参照画素とが類似していると判定され、S507に移行する。類似度Cjが閾値Ethよりも大きければ(S506:No)着目画素604と参照画素とが類似していないと判定され、再びS503に戻る。S506において、類似度Cjが閾値Ethよりも大きいか判定することにより、後述のS508において、重み導出部404は、着目画素604と類似していない参照画素を予め除外して重みを導出することができる。
これは、基準画像データ601と参照画像データ602、603とが動被写体を連続して撮影した複数の画像である場合に有効な処理である。つまり、着目画素604が動被写体領域に属する画素であり、参照画素608、609が静止被写体領域に属する画素である場合、着目画素604と参照画素608、609の画素値が大きく相違することがある。本実施形態では、このような着目画素604と類似していない参照画素を予め除外して重みを導出することにより、画像データに対するノイズ低減処理の精度を向上させることができる。
S507において、距離導出部403は、着目画素604または対応画素605、606と、参照画素607、608、609との距離Djを導出する。ここで、距離Djは、例えば基準画像データ601における着目画素604と参照画素607との間、または参照画像データ602における対応画素605と参照画素608との間のように、画像データ毎に決定される空間方向の距離である。
ここで、図8を参照して距離Djの導出方法について説明する。図8は、本実施形態における距離Djの導出方法を示す模式図である。図8において、符号601から609は、図7と同じ構成を示す。
距離導出部403は、基準画像データ601における着目画素604と参照画素607との間の距離801を導出する。同様に、距離導出部403は、参照画像データ602、603における対応画素605、606と参照画素608、609との間のそれぞれの距離802、803を導出する。
図8に示される通り、本実施形態においては、距離Djは画像データ毎の空間方向の距離であるから、着目画素と参照画素とが同一の画素である場合(例えば参照画素604となる場合)、常に距離Djは最小値が導出される。同様に、対応画素605、606と参照画素608、609とがそれぞれ同一の画素である場合、常にそれぞれ距離Djは最小値が導出される。尚、重み導出部404は、ユークリッド距離やマンハッタン距離など所望の方法を用いて距離Djを導出することができる。
再び図5に戻り、S508において、重み導出部404は、S505で導出された類似度Cjと、S507で導出された距離Djとに基づき、参照画素の重みを導出する。より詳細には、重み導出部404は、次式より重みWjを得ることができる。
ここで、Hは重みWjの大きさを制御する変数である。本実施形態において、重み導出部404は、着目画素(または対象画素)と参照画素との距離Djが小さいほど、当該参照画素の重みを大きく導出する。逆に、重み導出部404は、着目画素(または対象画素)と参照画素との距離Djが大きいほど、当該参照画素の重みを小さく導出する。対応画素と参照画素との関係も同様である。本実施形態における重み導出処理では、上記の通り類似度Cjに加えて、距離Djを加味したうえで参照画素の重みを導出している。そのため、類似度Cjが大きくても(すなわち、着目画素と参照画素とが互いに似ていない場合)、距離Djが小さければ大きい重みWjが導出される場合がある。逆に、類似度Cjが小さくても(すなわち、着目画素と参照画素とが互いに似ている場合)、距離Djが大きければ小さい重みWjが導出される場合がある。尚、本実施形態における重み導出部404は、類似度Cj、距離Dj、および変数Hを用いて上記の式(4)を参照することにより重みWjを導出した。しかし、重みWjの導出方法は、距離Djが小さいほど重みWjの値が大きく、距離Djが大きいほど重みWjの値が小さくなるように決定できれば、実施形態のものに限られるものではない。
再び図8を参照し、本実施形態のノイズ低減処理について、具体的数値を適用して説明する。着目画素604と、参照画素604、605、606、607、608、609との類似度それぞれをC604、C605,C606、C607、C608、C609で表し、本実施例において、それぞれの類似度は以下の値であるとする。尚、このとき参照画素604は、基準画像データ601の座標系において、着目画素604と同じ座標に位置している。対応画素605、606と参照画素605、606についても同様である。
C604=0.0
C605=2.7
C606=1.3
C607=0.6
C608=2.7
C609=1.9
次に、着目画素604と、参照画素604、607との距離をそれぞれD604、D607で表す。同様に、対応画素605と、参照画素605、608との距離をそれぞれD605、D608で表す。同様に、対応画素606と、参照画素606、609との距離をそれぞれD605、D608で表す。本実施例において、それぞれの距離は以下の値であるとする。
D604=0.0
D605=0.0
D606=0.0
D607=2.8
D608=2.0
D609=1.4
類似度および距離がそれぞれ上記の値となる場合、参照画素604、605、606、607、608、609の重みは、それぞれW604、W605、W606、W607、W608、W609で表す。H=10.0とした場合、前述の数式(4)を適用すると、それぞれの重みは以下の値となる。
W604=1.00
W605=0.76
W606=0.88
W607=0.71
W608=0.63
W609=0.72
以上説明した通り、本実施例において、類似度Cの値が小さい参照画素607よりも、距離Dの値が小さい参照画素605、606、609の方が、対応する重みW605、W606、W609の値が大きくなる。つまり、従来技術におけるNLM法によるブロックマッチングとは異なり、本実施形態における画像処理装置1は、着目領域と参照領域との類似度に加えて、着目画素(または対応画素)と参照画素との距離を加味したうえで、参照画素の重みを導出する。そのため、本実施形態における画像処理装置1は、参照領域の画素にノイズが含まれているような場合、本来とは異なる重みの値が導出され、着目画素に対して誤った画素値の補正が行われるのを抑制することができる。このような処理の結果、本実施形態における画像処理装置1は、NLM法によるブロックマッチングに起因して発生する残留ノイズムラを抑制することが可能になる。
動被写体に現れる多重やぼけを抑制し、さらに静止被写体に現れる残留ノイズムラを抑制するために、動被写体領域に対してはブロックマッチングによるノイズ低減処理を、静止被写体領域に対しては平均処理によるノイズ低減処理を施す手法も考えられる。しかしながら、この手法によるノイズ低減処理では、複数の画像データそれぞれに対して、画像データにおける動被写体領域と静被写体領域とを区分するための処理が別途必要になる。複数の画像データが動画を構成するフレームなどであった場合、画像形成装置1のCPU101の負荷が高くなり、画像データに対して煩雑な処理を行う必要が生じる。
一方、上記の例において、参照画素607よりも参照画素605、606、609の方が大きい重み付けがなされる。一般に、参照画素605、606、609のような参照画素は、着目画素604との関係において、平均処理を行う際に用いられる画素群である。本実施形態のノイズ低減処理によれば、例えば数式(4)に表されるように、着目領域と参照領域との類似度に加えて、着目画素(または対応画素)と参照画素との距離を加味したうえで、参照画素の重みを導出する。そのため、従来技術におけるノイズ低減処理に対して、大幅な変更を加えることを必要とせずに、残留ノイズムラを抑制したノイズ低減処理を実現することができる。
尚、前述の数式(2)において、類似度Cjは、着目領域の画素数Nb(例えば、図2の参照領域204においてはNb=9)の値に応じて可変し、Nbの値が大きくなるほど、類似度Cjの値も大きくなる。そのため、類似度Cjは、着目領域の画素数Nbの値に応じて導出されることが好ましい。一方、距離Djは、着目画素から最も離れた参照画素との距離Dmaxとその導出方法に応じて可変する(例えば、図2(a)において、着目画素201と参照画素203との距離Djを、ユークリッド距離を用いて算出した場合、Dmax=2.8となる)。そこで、距離Djは、着目領域の画素数Nb及び距離Djの最大値Dmaxに基づいて導出してもよい。例えば、着目画素と参照画素との距離をdとすると、着目画素と参照画素との距離は次式によって表される。
ここで、kは距離Djの大きさを制御する変数である。変数kを小さくすると類似度Cjにより重みが決定される割合が大きくなり、変数kを大きくすると距離Djにより重みが決定される割合が大きくなる。
再び図5に戻り、S509において、S503で選択した全参照画素の重みの導出が完了したかを判定する。全参照画素の重みの導出が完了している場合(S509:Yes)、S510に移行し、全参照画素の重みの導出が完了していない場合(S509:No)、再びS503に移行して処理を継続する。
S510において、決定部405は、各参照画素の画素値に、重み導出部404で導出した重みによる加重平均を適用することにより、着目画素の画素値を決定する。本実施形態において、決定部405は、S510の画素値決定処理を、前述の数式(1)に従って行うことができる。具体的には、各参照画素それぞれの画素値に対して、S508で導出された各重みによる加重平均を適用することにより画素値を決定する。決定部405は、S510の処理の結果、ノイズ低減処理後の着目画素の画素値を決定することができる。
S511において、S501で入力された基準画像データの全画素について、画素値決定処理(S510)が完了したかを判定する。基準画像データの全画素について画素値決定処理が完了している場合(S511:Yes)、S512に移行し、基準画像データの全画素について画素値決定処理が完了していない場合(S511:No)、再びS503に移行して処理を継続する。
最後に、S512において、出力部406は、S501で入力された画像データと、S510で決定された画素値と、に基づいて基準画像データを補正し、補正後の画像データを出力する。
以上説明した通り、本実施形態における画像処理装置は、複数の画像データを用いるノイズ低減処理において、残留ノイズムラを抑制したノイズ低減処理を行うことができる。
[実施形態2]
実施形態1では、複数の画像データを用いるノイズ低減処理において、着目画素と参照画との類似度に加えて、着目画素と参照画素との距離を加味して重みを決定する、画像データのノイズ低減処理について説明した。ここで、手持ちの撮像装置で撮影した複数の画像データに対して、画像データのノイズ低減処理を施した場合について考える。この場合、複数の画像データがそれぞれ静止被写体を撮影したものであっても、手ブレに起因するエッジ部分の画素ズレが生じる可能性があり、補正後の画像データに多重像やぼけが含まれる場合がある。そこで、本実施形態では、実施形態1におけるノイズ低減処理に加えて、着目画素がエッジ部に存在するか平坦部に存在するかをさらに判定し、当該判定結果を考慮して重みを導出するノイズ低減処理について説明する。尚、以下の実施形態2の説明において、実施形態1の説明と重複する内容については説明を割愛し、実施形態1と差異を有する内容のみ説明する。
図9は、本実施形態における画像処理装置1のソフトウェア機能構成を示すブロック図である。以下、図9のブロック図を参照して画像処理装置1のソフトウェア機能について説明する。なお、図9のソフトウェア機能ブロック図によって説明される処理は、HDD103に格納されたプログラムコードがRAM102に展開され、CPU101によって実行される。図9において、入力部401〜距離導出部403、および決定部405〜出力部406は、実施形態1の図4における入力部401〜距離導出部403、および決定部405〜出力部406と同じ構成のため説明は割愛する。
本実施形態における特徴量導出部407は、入力部401が入力した基準画像データの各画素の特徴量を導出する。特徴量の導出方法の詳細は後述する。
さらに、本実施形態における重み導出部404は、類似度導出部402で導出した類似度、距離導出部403で導出した距離、および特徴量導出部407で導出した特徴量に基づいて重みを導出する。尚、重み導出方法の詳細については後述する。
(実施形態2メイン処理フロー)
図10は、本実施形態における画像処理装置1の処理の内容を示すフローチャートである。以下、図10のフローチャートを参照して画像処理装置1の処理内容について説明する。なお、図10に示されるフローチャートによる処理は、HDD103に格納されたプログラムコードがRAM102に展開され、CPU101によって実行される。尚、以下のメイン処理フローの説明において、実施形態1と重複する処理内容については説明を割愛し、実施形態1と差異を有するS1003及びS1009の処理内容のみを説明する。
S1003において、特徴量導出部407は、着目画素604の特徴量Pを導出する。本実施例では、特徴量Pとしてエッジ強度を用いる態様を例として説明する。エッジ強度は、例えば、Robertsフィルタ、Sobelフィルタ、Prewittフィルタ、Laplacianフィルタなどによって、入力画像データに対してフィルタ処理を施した結果から得られるエッジ強度を用いることができる。この場合、制御部400は、特徴量Pが大きいほど着目画素604がエッジ領域の画素であることを特定できる。逆に、特徴量Pが小さいほど着目画素604が平坦領域の画素であることを特定できる。尚、エッジ強度を特徴量Pとして用いる態様と同様に、着目画素604近傍の画素値の分散も特徴量Pとして用いることができる。即ち、特徴量Pは、着目画素604がエッジ領域の画素か、平坦領域の画素かを判断可能であれば任意の特徴量を用いることができる。
S1009において、重み導出部404は、類似度Cjと、距離Djと、特徴量Pとに基づき参照画素の重みを導出する。このとき、重みWjは次式によって表される。ここで、kは特徴量Pの値に応じて決定される変数である。
図11は、特徴量Pの値と、変数kの値との対応関係を示した係数テーブル1101の例である。本実施形態においては、係数テーブル1101に示される通り、特徴量Pの値が小さいほど変数kの値は大きくなり、逆に特徴量Pの値が大きいほど変数kの値が小さくなるように、特徴量Pの値と変数kの値とが対応付けられている。
例えば、特徴量P=0、即ちS1003において、特徴量導出部407が着目画素を平坦領域に存在する画素であると判定した場合、係数k(P)=1.0となる。この場合、距離Djに対する係数k(P)の値が大きくなり、数式(5)において距離Djの寄与度が大きい重みWjが算出される。この結果、例えば参照画素608や609よりも対応画素605や606(図6,図7)の重みWjが大きくなり、画像データの残留ノイズムラを低減する効果を高めることができる。
一方、特徴量P=1、即ちS1003において、特徴量導出部407が着目画素をエッジ領域に存在する画素であると判定した場合、係数k(P)=0となる。この場合、距離Djに対する係数k(P)の値が小さくなり、数式(6)において類似度Cjの寄与度が大きい重みWjが算出される。この結果、例えば対応画素605や606よりも参照画素608や609(図6,図7)の重みWjが大きくなり、画像データの多重像やぼけを低減する効果を高めることができる。
尚、本実施形態においては、重み導出部404が係数テーブル1101を参照して係数k(P)の値を特定していた。しかし、実施形態はこれに限られず、特徴量Pの値に応じて類似度Cjまたは距離Djの寄与度を決定する関数を用いる態様であってもよい。
以上説明した通り、本実施形態における画像処理装置においては、特徴量Pに応じて距離Djの寄与度が異なる重みWjを導出する。そのため、本実施形態における画像処理装置は、撮像装置側のブレに起因する多重像やぼけが含まれる複数の画像データを用いる場合であっても、残留ノイズムラを抑制しつつ画像データのノイズ低減処理を行うことができる。
[その他の実施例]
実施形態2において、特徴量としてエッジ強度を用いる例を説明したが、着目画素が属する領域の被写体の種類に応じて可変する値を、特徴量として用いることも可能である。例えば、着目画素が動被写体領域の画素である場合をP=1、静止被写体領域の画素である場合をP=0とする。着目画素が動被写体領域の画素である場合(P=1)、変数k=0となり、数式(6)において距離Djが重みWjの導出に与える寄与度が小さくなる。結果として、類似度Cjの寄与度が大きい重みWjが導出されることとなり、動被写体が多重になったりぼけたりするのを低減することができる。一方、着目画素が静止被写体領域の画素である場合(P=0)、変数k=1となり、数式(6)において距離Djが重みWjの導出に与える寄与度が大きくなる。結果として、距離Djの寄与度が大きい重みWjが導出されることとなり、残留ノイズムラを抑制しつつ画像データのノイズ低減処理を行うことができる。尚、上述の変形例においては、着目画素が動被写体領域に属する場合と、着目画素が静止被写体領域に属する場合とに応じて特徴量Pを可変させていたが、着目画素が属する領域が3以上であり、それぞれの領域に応じて変数kを設定する実施例であってもよい。
本発明は、上述の実施形態の1以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける1つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、1以上の機能を実現する回路(例えば、ASIC)によっても実現可能である。
1・・・・画像処理装置
400・・制御部
401・・入力部
402・・類似度導出部
403・・距離導出部
404・・重み導出部
405・・決定部
406・・出力部

Claims (13)

  1. 複数の画像データを用いて基準画像データに含まれるノイズを低減する画像処理装置であって、
    ノイズ低減対象の基準画像データの着目画素を含む着目領域と、前記基準画像データとは異なる参照画像データの複数の参照画素のうち少なくとも1つを含む参照領域と、を比較することにより、前記着目画素と前記複数の参照画素それぞれとの類似度を導出する類似度導出手段と、
    前記参照画像データにおいて前記着目画素に対応する位置に存在する対応画素と、前記複数の参照画素それぞれとの距離を導出する距離導出手段と、
    前記類似度と、前記距離とに基づいて前記複数の参照画素それぞれの重みを導出する重み導出手段と、
    前記複数の参照画素それぞれの画素値に前記重みによる加重平均を適用することにより、前記着目画素の画素値を決定する決定手段とを備える
    ことを特徴とする画像処理装置。
  2. 前記重み導出手段は、
    前記距離が小さいほど前記重みを大きく導出し、
    前記距離が大きいほど前記重みを小さく導出する
    ことを特徴とする請求項1に記載の画像処理装置。
  3. 前記類似度導出手段は、
    前記着目領域と、前記対応画素近傍の前記複数の参照画素のうち少なくとも1つを含む前記参照領域と、を比較することにより、前記着目画素と前記複数の参照画素それぞれとの類似度を導出する
    ことを特徴とする請求項1または2に記載の画像処理装置。
  4. 前記重み導出手段は、
    前記複数の参照画素のうち、前記類似度が所定の閾値よりも大きい前記参照画素を除外して前記重みを導出する
    ことを特徴とする請求項1から3のいずれか1項に記載の画像処理装置。
  5. 前記着目画素の特徴量を導出する特徴量導出手段をさらに備え、
    前記重み導出手段は、前記類似度と、前記距離と、前記特徴量とに基づいて前記複数の参照画素それぞれの重みを導出する
    ことを特徴とする請求項1から4のいずれか1項に記載の画像処理装置。
  6. 前記重みは、
    前記特徴量が小さいほど前記距離の寄与度が大きくなるように導出され、
    前記特徴量が大きいほど前記距離の寄与度が小さくなるように導出される
    ことを特徴とする請求項5に記載の画像処理装置。
  7. 前記特徴量はエッジ強度である
    ことを特徴とする請求項5または6に記載の画像処理装置。
  8. 前記特徴量は前記着目画素が属する領域の被写体の種類に応じて可変する値である
    ことを特徴とする請求項5または6に記載の画像処理装置。
  9. 前記類似度導出手段は、
    前記着目領域と、前記基準画像データの複数の参照画素のうち少なくとも1つを含む参照領域と、をさらに比較することにより、前記着目画素と前記複数の参照画素それぞれとの類似度をさらに導出し、
    前記距離導出手段は、
    前記着目画素と、前記複数の参照画素それぞれとの距離をさらに導出する
    ことを特徴とする請求項1から8のいずれか1項に記載の画像処理装置。
  10. 前記類似度導出手段は、
    前記着目領域および前記参照領域のそれぞれの座標系において空間的に対応するそれぞれの画素の画素値の差を合計した値を、前記着目画素と前記参照画素との類似度として導出する
    ことを特徴とする請求項1から9のいずれか1項に記載の画像処理装置。
  11. 前記基準画像データに対して、前記決定された前記画素値を適用した画像データを出力する出力手段をさらに備える
    ことを特徴とする請求項1から10のいずれか1項に記載の画像処理装置。
  12. 複数の画像データを用いて基準画像データに含まれるノイズを低減する画像処理方法であって、
    ノイズ低減対象の基準画像データの着目画素を含む着目領域と、前記基準画像データとは異なる参照画像データの複数の参照画素のうち少なくとも1つを含む参照領域と、を比較することにより、前記着目画素と前記複数の参照画素それぞれとの類似度を導出する類似度導出ステップと、
    前記参照画像データにおいて前記着目画素に対応する位置に存在する対応画素と、前記複数の参照画素それぞれとの距離を導出する距離導出ステップと、
    前記類似度と、前記距離とに基づいて前記複数の参照画素それぞれの重みを導出する重み導出ステップと、
    前記複数の参照画素それぞれの画素値に前記重みによる加重平均を適用することにより、前記着目画素の画素値を決定する決定ステップとを備える
    ことを特徴とする画像処理方法。
  13. コンピュータを、請求項1乃至請求項11のいずれか1項に記載の画像処理装置として機能させるためのプログラム。
JP2015081941A 2015-04-13 2015-04-13 画像処理装置、画像処理方法及びプログラム Pending JP2016201037A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2015081941A JP2016201037A (ja) 2015-04-13 2015-04-13 画像処理装置、画像処理方法及びプログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2015081941A JP2016201037A (ja) 2015-04-13 2015-04-13 画像処理装置、画像処理方法及びプログラム

Publications (1)

Publication Number Publication Date
JP2016201037A true JP2016201037A (ja) 2016-12-01

Family

ID=57424415

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2015081941A Pending JP2016201037A (ja) 2015-04-13 2015-04-13 画像処理装置、画像処理方法及びプログラム

Country Status (1)

Country Link
JP (1) JP2016201037A (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2019041280A (ja) * 2017-08-25 2019-03-14 富士ゼロックス株式会社 画像処理装置、画像形成装置、及びプログラム
JP2019083467A (ja) * 2017-10-31 2019-05-30 キヤノン株式会社 画像処理装置、画像処理方法およびプログラム
CN115330640A (zh) * 2022-10-11 2022-11-11 腾讯科技(深圳)有限公司 光照贴图降噪方法、装置、设备和介质

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2019041280A (ja) * 2017-08-25 2019-03-14 富士ゼロックス株式会社 画像処理装置、画像形成装置、及びプログラム
JP2019083467A (ja) * 2017-10-31 2019-05-30 キヤノン株式会社 画像処理装置、画像処理方法およびプログラム
JP7005280B2 (ja) 2017-10-31 2022-01-21 キヤノン株式会社 画像処理装置、画像処理方法およびプログラム
CN115330640A (zh) * 2022-10-11 2022-11-11 腾讯科技(深圳)有限公司 光照贴图降噪方法、装置、设备和介质

Similar Documents

Publication Publication Date Title
US10515437B2 (en) Image processing apparatus and image processing method that perform noise reduction processing on image data
US20140293074A1 (en) Generating a composite image from video frames
JP7078139B2 (ja) ビデオ安定化方法及び装置、並びに非一時的コンピュータ可読媒体
JP6465563B2 (ja) 画像処理装置、画像処理方法およびプログラム
JP6254938B2 (ja) 画像ノイズ除去装置、および画像ノイズ除去方法
JP2010200179A (ja) 画像処理装置、画像処理方法、画像処理プログラムおよび画像処理プログラムが格納されたプログラム記憶媒体
US9172870B2 (en) Real-time image processing method and device enhancing the resolution of successive images
JP2012208553A (ja) 画像処理装置、および画像処理方法、並びにプログラム
US8644555B2 (en) Device and method for detecting movement of object
US10482580B2 (en) Image processing apparatus, image processing method, and program
JP2014027373A (ja) 画像処理装置、画像処理方法及び画像処理プログラム
JP2016201037A (ja) 画像処理装置、画像処理方法及びプログラム
JP5496036B2 (ja) 画像処理装置および画像処理プログラム
JP2019067169A (ja) 移動ベクトル算出方法、装置、プログラム、及びノイズ除去処理を含む移動ベクトル算出方法
JP6938282B2 (ja) 画像処理装置、画像処理方法及びプログラム
JP3959547B2 (ja) 画像処理装置、画像処理方法、及び情報端末装置
JP7039215B2 (ja) 画像処理装置、画像処理方法、およびプログラム
JP6245847B2 (ja) 画像処理装置および画像処理方法
US20110293192A1 (en) Image processing apparatus and method, and program
JP6584173B2 (ja) 画像処理装置及び画像処理方法
JP2017034608A (ja) 画像処理装置、画像処理方法及びプログラム
JP2018180964A (ja) 画像処理装置及び画像処理方法
JP2014086957A (ja) 画像処理装置及び画像処理方法
JP2019062528A (ja) 画像処理方法、画像処理装置、撮像装置、およびプログラム
JP2021044652A (ja) 動きベクトル検出装置及び動きベクトル検出方法