説明

エッジ検出装置及びその方法

【課題】rawデータに適用でき、精度が高く、画素の分光感度と配置に制限がないエッジ検出装置を提供する。
【解決手段】撮像素子が有する異なる分光感度を持つ複数の撮像画素のそれぞれから、撮像画素の位置、分光感度、測定信号量と含む撮像データを入力する撮像データ入力部101と、ブロック内において、異なる位置に存在し、かつ、同一の分光感度を持つ各撮像画素の位置と測定信号量とに基づいて、前記位置に対応する前記測定信号量の増減量を表す2次元ベクトルである局所エッジを算出する局所エッジ検出部102と、局所エッジにおける自己相関行列からエッジ強度とエッジ方向を求めるブロックエッジ推定部103とを備える。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、撮像素子からの測定信号量に基づいてエッジを検出するエッジ検出装置及びその方法に関する。
【背景技術】
【0002】
撮像素子におけるエッジ検出は、rawデータへの適用が可能であり、精度が高く、画素の分光感度と配置に制限がないことが望ましい。なお、「rawデータ」とは、デジタルカメラ内部で何の処理もしてない画像データ、つまり撮像素子から得られた電気信号を単純にデジタル化した測定信号量である。
【0003】
しかし、特許文献1の方法はBayer配列にしか適用できない。また、ブロックサイズが固定のため精度に限界がある。
【0004】
これに対し、非特許文献1の方法は参照画素数と画素の配置に柔軟に対処でき、参照画素数を増やせば精度の向上が期待できる。但し、そのままではrawデータに適用できない。
【特許文献1】米国特許第5629734号公報
【非特許文献1】A. Cumani, 「Edge Detection in Multispectral Images,」 1989.
【非特許文献2】H. Takeda et. al., 「Kernel Regression for Image Processing and Reconstruction,」 2007.
【発明の開示】
【発明が解決しようとする課題】
【0005】
上述したように、特許文献1の方法は、Bayer配列にしか適用できず、精度に限界があるという問題点があった。
【0006】
また、非特許文献1の方法は、画素の配置変更には柔軟に対処でき、画素数を増やすことにより精度向上が期待できるが、rawデータには適用できないという問題点があった。
【0007】
そこで本発明は、上記従来技術の問題点を解決するためになされたものであって、rawデータに適用でき、精度が高く、画素の分光感度と配置に制限がないエッジ検出装置及びその方法を提供することを目的とする。
【課題を解決するための手段】
【0008】
上記目的を達成するために、本発明のエッジ検出装置は、撮像素子が有する異なる分光感度を持つ複数の撮像画素のそれぞれから、前記撮像画素の位置、分光感度、測定信号量と含む撮像データを入力する撮像データ入力部と、前記撮像素子の任意のブロック内において、異なる位置に存在し、かつ、同一の分光感度を持つ前記各撮像画素の位置と前記測定信号量とに基づいて、前記位置に対応する前記測定信号量の増減量を表す2次元ベクトルである局所エッジを算出する局所エッジ検出部と、前記局所エッジの自己相関行列における固有値から前記ブロック内のエッジ強度を求め、前記自己相関行列における固有ベクトルからエッジ方向を求めるブロックエッジ推定部と、を備える。
【発明の効果】
【0009】
本発明によれば、任意の画素配置と分光感度を持つ撮像素子のrawデータから精度よくエッジを検出することが可能になる。
【発明を実施するための最良の形態】
【0010】
以下、本発明の一実施形態のエッジ検出装置について図1〜図5に基づいて説明する。
【0011】
(1)エッジ検出装置の構成
図1は、本実施形態に係わるエッジ検出装置を示すブロック図である。
【0012】
エッジ検出装置は、撮像素子が有する複数のフォトダイオードの各位置、その分光感度、及び、フォトダイオードから得られた測定信号量を取得する撮像データ入力部101と、撮像データからブロック内における光の強度の変化量を検出する局所エッジ検出部102と、局所エッジ検出部102から得られた局所エッジを統合してブロック内のエッジ強度とエッジ方向を推定するブロックエッジ推定部103とを備える。
【0013】
なお、このエッジ検出装置は、例えば、汎用のコンピュータ装置を基本ハードウェアとして用いることでも実現することが可能である。すなわち、撮像データ入力部101、局所エッジ検出部102及びブロックエッジ推定部103は、上記のコンピュータ装置に搭載されたプロセッサにプログラムを実行させることにより実現することができる。このとき、本実施形態のエッジ検出装置は、上記のプログラムをコンピュータ装置に予めインストールすることで実現してもよいし、CD−ROMなどの記憶媒体に記憶して、あるいはネットワークを介して上記のプログラムを配布して、このプログラムをコンピュータ装置に適宜インストールすることで実現してもよい。
【0014】
次に、本実施形態に係わるエッジ検出装置の動作について説明する。なお、図2は、エッジ検出装置の動作を示すフローチャートである。
【0015】
(2)撮像データ入力部101
まず、撮像データ入力部101は、撮像素子が有するフォトダイオードの位置、分光感度、及び、フォトダイオードから得られた測定信号量を撮像テータとして取得する。本実施形態では、フォトダイオードのそれぞれが撮像画素を構成している。また、フォトダイオードから得られた測定信号量としては、フォトダイオードのrawデータが挙げられる。以後は、図3に示すように、Bayer配列からフォトダイオード300〜324からなる5×5のブロックの撮像データを取得した場合を例に説明する。
【0016】
ブロックの中心を原点とする座標系を定義する。すなわち、(x312,y312)=(0,0)であり、フォトダイオード318の座標は(x318,y318)=(1,1)となる。
【0017】
フォトダイオードの分光感度と周囲のカラーフィルタの配置を表すラベルc(c={R,Gr,Gb,B})を定義する。GrとGbは同じ分光感度を表すが、周囲のカラーフィルタの配置が異なる。例えば、フォトダイオード318のラベルはc318=Rとし、フォトダイオード319のラベルはc319=Grとする。
【0018】
フォトダイオードから得られた測定信号量をsで表記する。例えばフォトダイオード318から得られた測定信号量はs318と表記する。
【0019】
(3)局所エッジ検出部102
次に、局所エッジ検出部102の動作について図2に基づいて説明する。
【0020】
ステップ1において、ブロック内から同じ分光感度を持つ2個以上のフォトダイオードを選択する。例えば、青の分光感度を持つフォトダイオードを300,302,310を選択したとする。
【0021】
ステップ2において、フォトダイオードの位置(x,y)と、実数である測定信号量sの関係を表すスペクトル強度関数f(x,y)のパラメータを推定する。例えば、スペクトル強度関数f(x,y)の形を下記の式(1)で表す。
【数1】

【0022】
フォトダイオードを300,302,310の3個使用する場合、下記の式(2)で示す連立方程式を考える。
【数2】

【0023】
そして、この式(2)を解くことで、スペクトル強度関数f(x,y)のパラメータa,b,cを算出できる。
【0024】
図5で説明すれば、式(2)は図5においてスペクトル強度関数f(x,y)に対応する三角形501のパラメータを求めることに相当する。
【0025】
ステップ3において、局所エッジ検出部102はスペクトル強度関数f(x,y)を空間微分し、光の強度の変化量の2次元ベクトル(以下、「局所エッジ」という)を検出する。すなわち、局所エッジとは、フォトダイオードの位置に対応する測定信号量の増減量を表している。
【0026】
式(2)の連立方程式を解いた場合に得られる局所エッジはd=(dx,dy)=(a,b)である。図5においてはパラメータaが三角形501のx軸方向の傾きを表し、パラメータbが三角形501のy軸方向の傾きを表している。
【0027】
局所エッジの検出に用いるフォトダイオードの組み合わせとその数は、ユーザーが事前に設定する必要がある。但し、フォトダイオードはスペクトル強度関数f(x,y)の独立なパラメータの個数以上の数を使う必要がある。
【0028】
また、フォトダイオード300,312,324の組み合わせのように、全てのフォトダイオードが一直線上に配置される組み合わせは利用できない。
【0029】
但し、前述の条件を満たせば、フォトダイオードの配置が正方格子状でなくとも利用可能である。
【0030】
以後は図3のブロックにおいて、同じカラーフィルタを持つフォトダイオードで構成できる面積最小の三角形毎に一つの局所エッジを検出する場合を例に説明する。なお、図3では色が表現できないため、赤色(R)はドットで表現し、緑色(G)は左上がりのハッチング線で表現し、青色(B)は右上がりのハッチング線で表現している。図4も同様である。
【0031】
このとき、Bのカラーフィルタを持つ画素から、局所エッジは16個算出できる。同様にGのカラーフィルタから24個、Rのカラーフィルタから4個、合計44個の局所エッジが算出できる。
【0032】
(4)ブロックエッジ推定部103
ステップ4において、局所エッジ検出部102が、全てのフォトダイオードの組み合わせから局所エッジの検出を行った後、ブロックエッジ推定部103は、非特許文献1と同様の手順でエッジ方向とエッジ強度を求める。
【0033】
まず、ステップ5において、ブロックエッジ推定部103は、下記の式(3)に示す局所エッジの自己相関行列Cを求める。
【数3】

【0034】
式(3)の和を下記の式(4)のように算出する。
【数4】

【0035】
ステップ6において、ブロックエッジ推定部103は、ブロック内のエッジ強度λ±とエッジ方向θを式(5)に従って推定する。なお、このエッジ強度λ±は、自己相関行列Cの第1固有値と第2固有値であり、エッジ方向θは自己相関行列Cの固有ベクトルから求まる回転角である。
【数5】

【0036】
また、式(4)の自己相関行列Cを用いて定義する式(6)で示す2次元正規分布N(x,y)を求める。
【数6】

【0037】
式(6)の等高線は図6に示すようにエッジの形状に応じて形を変える楕円となる。例えば、左上から右下に伸びる線上のエッジであれば楕円の形状は図6の楕円601のようになり、水平方向のエッジに対しては楕円の形状は図6の楕円602のようになる。ブロック内で検出された局所エッジの向きがばらばらである場合は図6の楕円603のように円状になる。
【0038】
(5)効果
このように本実施形態に係わるエッジ検出装置によれば、3個のフォトダイオードから算出した局所的な光の量の変化ベクトルを統合することで、エッジ方向とエッジ強度を推定することが可能となる。
【0039】
(変更例)
なお、本実施形態は以下の項目を変更することで実施することも可能である。
【0040】
(1)重みを用いた局所エッジの個数補正
上記実施形態では、図3のブロックにおいて同じカラーフィルタを持つフォトダイオードで構成できる面積最小の三角形毎に一つの局所エッジを検出する場合を例に説明した。このとき、Bのカラーフィルタから16個、Gのカラーフィルタから24個、Rのカラーフィルタから4個、合計44個の局所エッジが算出できる。
【0041】
しかし、Bayer配列のデモザイキングにおいては中心画素がBの場合(図3参照)、Rの場合、Gbの場合(図4参照)、Grの場合の合計4つのパターンを考慮しなくてはならない。全てのパターンで、式(4)の自己相関行列Cを利用すると、同じ色のエッジを入力してもカラーフィルタパターンに応じて出力が変化してしまう。
【0042】
そこで、式(4)の自己相関行列Cの代わりに式(3)の自己相関行列Cの重み付け和である式(7)を用いる。
【数7】

【0043】
w(c)は検出される局所エッジの本数で決まる実数で、例えばRGBのカラーフィルタからそれぞれN,N,N個の局所エッジが得られた場合、

w(B)=1/N
w(Gr)=1/N
w(Gb)=1/N
w(R)=1/N

というように、ブロックから得られる局所エッジの数が多いほど小さくなる正の実数とする。
【0044】
個数と反比例させた重みを掛けることで、ブロック間の局所エッジの数のばらつきを補正することができる。
【0045】
(2)波長による重み付け
また、本来Bayer配列ではR:G:B=1:2:1の割合で存在していること、Gの測定信号量は他の色に比べ大きいことなどから、Gのエッジを重視すると性能が高まる可能性もある。
【0046】
そのため、ターゲットとなるRGBの重みをR:G:B=T:T:Tと事前に決めておき、

w(B)=T/N
w(Gr)=T/N
w(Gb)=T/N
w(R)=T/N

というように、事前に決めた重みに比例するように定義し直してもよい。
【0047】
すなわち、各ブロックから算出する同一スペクトルに対応する局所エッジの個数を、そのスペクトルに対応するカラーフィルタの個数が一番少ないブロックから得られる個数まで削減すれば、重みの乗算は削除することが可能である。色の重みに関しても同様に、重視したい色の局所エッジをより多く算出することで対応できる。
【0048】
また、ホワイトバランスの情報を利用してエッジ検出を行うことも可能である。例えば青(B)の光をあまり含まない光源で照らされた被写体を撮像した場合、B信号はほとんどノイズとなってしまうが、Bの重みを予め下げておくことでノイズにロバストなエッジ検出が可能になる。Bの光を含まない光源で照らされているか否かは、ホワイトバランス調整の段階でBにかける係数の大小で判断することが可能である。
【0049】
(3)ブロック中心からの距離を用いた局所エッジの重み付け
自己相関行列Cを算出する際には、局所エッジを算出するために用いたフォトダイオードとブロック中心の間の距離を用いた重みを利用することも可能である。例えば図3の場合、自己相関行列Cに乗じる位置重みwを式(8)で定義する。
【数8】

【0050】
そして、自己相関行列Cを式(9)で定義する。
【数9】

【0051】
すると、ブロック中心の光の量により忠実なエッジの検出が可能になる。σは正の実数であり、出力画像の画質を見て人手で調整を行うものとする。
【0052】
なお、位置重みwの定義は、フォトダイオードとブロック中心の間の距離が大きくなるほど小さな値を取る正の実数であれば、式(8)のものである必要はない。
【0053】
(4)局所エッジを検出する個数をコントロールすることによる重みの排除
重みを用いずに局所エッジの個数を補正することも可能である。
【0054】
例えば、面積最小の三角形を用いて局所エッジを検出する場合赤のカラーフィルタから得られる局所エッジの個数は、図3のブロックにおいては4個であり、図4のブロックにおいては8個である。
【0055】
重みを用いて補正する場合は、図3のブロックにおいて自己相関行列を算出する場合に、局所エッジに図4の2倍の重みを乗じるが、乗算が入るため回路規模の増大を招く。
【0056】
しかし、図4のブロックにおいて局所エッジ検出を行う場合に、フォトダイオード407と417を同時に含む4つの組み合わせから得られた局所エッジを用いることで、重みの乗算を削除することができる。
【0057】
(5)局所エッジの算出方法の変更例
上記の例では、局所エッジは同一の分光感度を持ち、同一直線状に存在しない複数のフォトダイオード3つから算出する方法を例に説明したが、局所エッジの算出にフィルタリングによるエッジ検出を用いることも可能である。
【0058】
フィルタリングはフォトダイオードが規則正しく配置されたものに対して定義され、局所エッジを算出する位置もフィルタを定義した段階で一意に定まる。
【0059】
しかし、非特許文献2の方法を用いてブロック内の光の量の変化を微分可能なスペクトル強度関数f(x,y)でモデル化し、スペクトル強度関数f(x,y)を微分すればブロック内の任意の位置における局所エッジを得ることが可能であり、フォトダイオードの配置がいかなるものであっても対応可能である。
【0060】
上記の例で述べた式(2)を用いた局所エッジ算出は、3つのフォトダイオードを用いたフィルタリングと等価である。また、非特許文献2の方法においてスペクトル強度関数f(x,y)を一次関数で定義したことと等価である。
【0061】
(6)周波数特性を考慮した局所エッジの重み付け
前述の局所エッジの算出方法によって周波数特性が異なるため、必要な周波数特性が予め分かっている場合は、それに応じて自己相関行列Cの算出に用いる重みを変化させることが出来る。
【0062】
例えば、フォトダイオード3つを用いて局所エッジdx,dyを算出する場合、3つのフォトダイオードがなす三角形の面積mが小さくなるほど、高い周波数を検出できる。そこでw(m)=1/mのようなmが小さいほど大きくなる正の実数を重みとすることで、高い周波数を持つエッジを検出しやすくすることができる。
【0063】
(7)ノイズ耐性を考慮した局所エッジの重み付け
同じ周波数特性を持つ局所エッジ算出方法が複数あった場合、局所エッジを算出するために用いるフォトダイオードの数が多いほど、ノイズにロバストになると考えられる。そこで局所エッジdx,dyの算出に用いたフォトダイオードの数をnとしたとき、例えば、w(n)=1/nのようなnが大きくなるほど大きい値をとる正の実数である重みw(n)を用いることでノイズに強いエッジの検出が可能になると考えられる。
【0064】
(8)その他
なお、本発明は上記実施形態そのままに限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で構成要素を変形して具体化できる。また、上記実施形態に開示されている複数の構成要素の適宜な組み合わせにより、種々の発明を形成できる。例えば、実施形態に示される全構成要素から幾つかの構成要素を削除してもよい。さらに、異なる実施形態にわたる構成要素を適宜組み合わせてもよい。
【図面の簡単な説明】
【0065】
【図1】本発明の実施形態に係わるエッジ検出装置の構成を示すブロック図である。
【図2】エッジ検出装置の動作を示すフローチャートである。
【図3】撮像素子上のブロックを表す図である。
【図4】撮像素子上のブロックで、図3と異なるものを表す図である。
【図5】局所エッジ検出の概念を示す図である。
【図6】エッジ検出結果の概念を示す図である。
【符号の説明】
【0066】
101 撮像データ入力部
102 局所エッジ検出部
103 ブロックエッジ推定部

【特許請求の範囲】
【請求項1】
撮像素子が有する異なる分光感度を持つ複数の撮像画素のそれぞれから、前記撮像画素の位置、分光感度、測定信号量と含む撮像データを入力する撮像データ入力部と、
前記撮像素子の任意のブロック内において、異なる位置に存在し、かつ、同一の分光感度を持つ前記各撮像画素の位置と前記測定信号量とに基づいて、前記位置に対応する前記測定信号量の増減量を表す2次元ベクトルである局所エッジを算出する局所エッジ検出部と、
前記局所エッジの自己相関行列における固有値から前記ブロック内のエッジ強度を求め、前記自己相関行列における固有ベクトルからエッジ方向を求めるブロックエッジ推定部と、
を備えるエッジ検出装置。
【請求項2】
前記局所エッジ検出部は、
前記各撮像画素の位置と前記測定信号量との関係を表すスペクトル強度関数のパラメータを、前記各位置と前記各測定信号量に基づいて推定し、
前記スペクトル強度関数によって定まる平面の傾きであって、前記増減量を表す前記局所エッジを、前記推定したパラメータから算出する、
請求項1記載のエッジ検出装置。
【請求項3】
前記ブロックエッジ推定部は、
予め定められたスペクトルの光に対して高い分光感度を持つ前記撮像画素から得られた前記自己相関行列に対して、より大きな値を持つ正の実数である重みを付与し、
前記重みを付与した前記自己相関行列から前記エッジ強度と前記エッジ方向を算出する、
請求項1記載のエッジ検出装置。
【請求項4】
前記ブロックエッジ推定部は、
前記ブロック中心に近い位置に存在する前記撮像画素から得られた前記自己相関行列ほど、より大きな値を持つ正の実数である重みを付与し、
前記重みを付与した前記自己相関行列から前記エッジ強度と前記エッジ方向を算出する、
請求項1記載のエッジ検出装置。
【請求項5】
前記ブロックエッジ推定部は、
前記局所エッジを算出するときに用いた前記撮像画素を含む三角形の面積が大きいほど小さな値を持つ正の実数を、前記自己相関関数に対して重みとして付与し、
前記重みを付与した前記自己相関行列から前記エッジ強度と前記エッジ方向を算出する、
請求項1記載のエッジ検出装置。
【請求項6】
前記ブロックエッジ推定部は、
前記局所エッジを算出するときに用いた前記撮像画素の数が多いほど、大きくなる正の実数である重みを、前記自己相関行列に対して付与し、
前記重みを付与した前記自己相関行列から前記エッジ強度と前記エッジ方向を算出する、
請求項1記載のエッジ検出装置。
【請求項7】
撮像素子が有する異なる分光感度を持つ複数の撮像画素のそれぞれから、前記撮像画素の位置、分光感度、測定信号量と含む撮像データを入力する撮像データ入力ステップと、
前記撮像素子の任意のブロック内において、異なる位置に存在し、かつ、同一の分光感度を持つ前記各撮像画素の位置と前記測定信号量とに基づいて、前記位置に対応する前記測定信号量の増減量を表す2次元ベクトルである局所エッジを算出する局所エッジ検出ステップと、
前記局所エッジの自己相関行列における固有値から前記ブロック内のエッジ強度を求め、前記自己相関行列における固有ベクトルからエッジ方向を求めるブロックエッジ推定ステップと、
を備えるエッジ検出方法。
【請求項8】
撮像素子が有する異なる分光感度を持つ複数の撮像画素のそれぞれから、前記撮像画素の位置、分光感度、測定信号量と含む撮像データを入力する撮像データ入力機能と、
前記撮像素子の任意のブロック内において、異なる位置に存在し、かつ、同一の分光感度を持つ前記各撮像画素の位置と前記測定信号量とに基づいて、前記位置に対応する前記測定信号量の増減量を表す2次元ベクトルである局所エッジを算出する局所エッジ検出機能と、
前記局所エッジの自己相関行列における固有値から前記ブロック内のエッジ強度を求め、前記自己相関行列における固有ベクトルからエッジ方向を求めるブロックエッジ推定機能と、
をコンピュータによって実施させるためのエッジ検出プログラム。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate


【公開番号】特開2010−81177(P2010−81177A)
【公開日】平成22年4月8日(2010.4.8)
【国際特許分類】
【出願番号】特願2008−245578(P2008−245578)
【出願日】平成20年9月25日(2008.9.25)
【出願人】(000003078)株式会社東芝 (54,554)
【Fターム(参考)】