(58)【調査した分野】(Int.Cl.,DB名)
R,G,Bの3フレームを少なくとも含む第1〜第N(Nは3以上の整数)のフレームを1周期として、面順次方式で撮像を行う撮像部から撮像画像を取得する画像取得部と、
合成マップに基づいて、撮像された撮像画像を合成する合成処理を行う処理部と、
を含み、
前記画像取得部は、
第i(iは1≦i≦Nを満たす整数)のフレームにおける前記撮像部の撮像により、合焦物体位置の異なる複数の前記撮像画像を取得し、
前記第iのフレームが前記Rに対応するフレームの場合に、
前記処理部は、
前記Gに対応するフレームで求められた前記合成マップ及び前記Bに対応するフレームで求められた前記合成マップの少なくとも一方に基づいて、前記Rに対応する前記第iのフレームでの前記合成マップを求め、
前記処理部は、
前記合成マップに基づいて、前記第iのフレームで撮像された前記合焦物体位置の異なる前記複数の画像を合成する前記合成処理を行うことを特徴とする画像処理装置。
第1〜第N(Nは2以上の整数)のフレームを1周期として、面順次方式で撮像を行う撮像部から、第i(iは1≦i≦Nを満たす整数)のフレームにおいて合焦物体位置の異なる複数の撮像画像を取得し、
前記第iのフレームで撮像された前記合焦物体位置の異なる複数の前記撮像画像に基づいて、第1の合成マップを求め、
前記第iのフレームで求められた前記第1の合成マップと、前記第iのフレームとは異なる第k(kは1≦k≦N、k≠iを満たす整数)のフレームで求められた前記第1の合成マップとに基づいて、第2の合成マップを求め、
前記第2の合成マップに基づいて、前記第iのフレームで撮像された前記合焦物体位置の異なる前記複数の画像を合成する合成処理を行うことを特徴とする画像処理方法。
R,G,Bの3フレームを少なくとも含む第1〜第N(Nは3以上の整数)のフレームを1周期として、面順次方式で撮像を行う撮像部から、第i(iは1≦i≦Nを満たす整数)のフレームにおいて、合焦物体位置の異なる複数の撮像画像を取得し、
前記第iのフレームが前記Rに対応するフレームの場合に、
前記Gに対応するフレームで求められた合成マップ及び前記Bに対応するフレームで求められた前記合成マップの少なくとも一方に基づいて、前記Rに対応する前記第iのフレームでの前記合成マップを求め、
前記合成マップに基づいて、前記第iのフレームで撮像された前記合焦物体位置の異なる前記複数の画像を合成する合成処理を行うことを特徴とする画像処理方法。
【発明を実施するための形態】
【0015】
以下、本実施形態について説明する。なお、以下に説明する本実施形態は、請求の範囲に記載された本発明の内容を不当に限定するものではない。また本実施形態で説明される構成の全てが、本発明の必須構成要件であるとは限らない。
【0016】
1.本実施形態の手法
まず本実施形態の手法について説明する。近年、複数の異焦点画像を合成して全焦点画像を生成する手法が用いられている。例えば、撮像部からの距離が近い位置にフォーカスが合っている第1の画像と、当該第1の画像と比較した場合に、撮像部からの距離が遠い位置にフォーカスが合っている第2の画像を、複数の異焦点画像として取得しておく。ここで、撮像部からの距離が近い位置にフォーカスが合っているとは、合焦物体位置が撮像部に近い、と言い換えることが可能である。また、第1の画像と第2の画像の画角(撮像される被写体の範囲)は基本的に同一となる。
【0017】
このような場合、撮像された被写体のうち、撮像部からの距離が比較的近い第1の被写体については、第1の画像でピントが合っており、撮像部からの距離が比較的遠い第2の被写体については、第2の画像でピントが合っていると考えられる。よって、撮像画像のうち、第1の被写体が撮像されている領域については第1の画像の画素値を採用し、第2の被写体が撮像されている領域については第2の画像の画素値を採用することで合成画像を生成すれば、当該合成画像では第1の被写体と第2の被写体の両方にピントが合うことになる。
【0018】
具体的な処理としては、撮像画像の各画素(或いは複数画素からなる領域)に対して、第1,第2の画像のいずれでよりピントが合っているかを判定すればよく、当該判定にはコントラスト等の評価値を用いればよい。第1の画像での評価値>第2の画像での評価値となれば、当該画素は第1の画像でピントが合っていると判定できるし、そうでなければ、第2の画像でピントが合っていると判定できる。或いは、評価値の差が小さいのであれば、第1の画像の画素値と第2の画像の画素値を合成して、合成画像における処理対象画素の画素値を求めてもよい。
【0019】
ここでは、異焦点画像を2枚用いるものとしたが、異焦点画像は3枚以上であってもよい。上述したように、原理的には複数の異焦点画像のいずれかにおいてピントが合っている被写体は、合成画像においてピントがあった状態とすることが可能である。よって、異焦点画像の枚数を増やすことで、広い距離範囲に分布している被写体にピントを合わせることや、撮像画像の広い領域に対してピントを合わせること等が可能になる。
【0020】
なお、各異焦点画像でどの距離範囲の被写体にピントが合うかは合焦物体位置や被写界深度の幅に依存するし、被写体がどのような距離範囲に分布しているかはどのような被写体をどのような条件で撮像するかによって変化する。よって、種々の条件によっては、少ない異焦点画像でも、広い領域にピントがあった合成画像が取得できる可能性はあるが、基本的には異焦点画像の枚数が多いほど、合成画像において広い距離範囲の被写体に対してピントを合わせられる傾向にあると言える。
【0021】
例えば、近年の顕微鏡等の分野では数十枚の異焦点画像を実時間で合成する手法も用いられている。その場合、視野全体(撮像画像の全領域)に対してピントが合っている画像を出力可能と考えられるため、合成画像を全焦点画像とも呼んでいる。以下、本明細書において、合成処理前の画像を異焦点画像、合成処理後の画像を全焦点画像とも表記する。ただし、本実施形態の全焦点画像とは、必ずしも画像中の全領域に対してピントが合っていることを保証するものではない。
【0022】
また、撮像方式として面順次方式が知られている。具体的な構成は、例えば
図1に示すような光源部100により実現できる。光源部100は、白色光源110と、複数の分光透過率を持った回転色フィルタ120と、回転色フィルタ120を駆動させる回転駆動部130を有する。そして、回転色フィルタ120は、例えば
図2に示すように、三原色の赤色(以下Rと略す)フィルタ121と、緑色(以下Gと略す)フィルタ122と、青色(以下Bと略す)フィルタ123とから構成されている。なお、
図1の他の構成については後述する。
【0023】
回転駆動部130は、撮像制御部400からの制御信号に基づき撮像素子220の撮像期間と同期して回転色フィルタ120を所定回転数で回転させる。例えば色フィルタを1秒間に20回転させると、各色フィルタは60分の1秒間隔で入射白色光を横切る事になり、撮像素子220は60分の1秒間隔で3原色の各色光(R或はG或はB)に対する観察対象からの反射光を撮像し、画像の転送を完了することになる。つまりこの例ではR画像、G画像、B画像が60分の1秒間隔で撮像され、実質のフレームレートは20fpsとなる。
【0024】
フィルタ121〜123の分光特性は
図3(A)〜
図3(C)に示したとおりであり、この例では、所与のフレームtでフィルタ121を透過したR帯域の光が照射され、その次のフレームt+1でフィルタ122を透過したG帯域の光が照射され、その次のフレームt+2でフィルタ123を透過したB帯域の光が照射されることになる。
【0025】
面順次方式では、所与の1フレームに着目した場合に、撮像素子の全画素に対して1つの色(1つのチャネル、波長帯域)での信号が取得される。広く用いられているベイヤ配列の撮像素子であれば、所与の1フレームに着目した場合、R、G、Bの各信号は撮像素子の全画素の1/4、或いは1/2の画素分しか取得されない。そのため、ベイヤ配列等の撮像素子を用いた場合、R、G、Bの各信号を全画素分取得するための補間処理が必要となり、解像度が低下する。つまり、面順次方式は各チャネルの信号を撮像素子の全画素で取得できるという意味で、解像度の点でベイヤ配列等の撮像素子を用いる場合に比べて有利である。ただし、1フレーム当たり1色の信号しか取得できないため、各色を合成したカラー画像を出力するためには、複数フレーム分の信号を合成する必要がある。R,GBの3色であれば、3フレーム当たり1枚のカラー画像が出力されることになり、ベイヤ配列等の撮像素子に比べてフレームレートでは劣ることになる。
【0026】
以上に示したように、複数の異焦点画像を合成して全焦点画像を生成する手法、及び面順次方式の撮像手法が、それぞれ知られていた。しかしこれらを組み合わせて用いようとした場合、問題が生じることがわかった。
【0027】
具体的な組み合わせ方を
図4を用いて説明する。
図4ではR,G,Bの3色を用いる例を説明するが、チャネル数(1枚のカラー画像出力に必要なフレーム数)は2以上であれば任意である。
図4の横軸は時間軸であり、所与の1フレームで、特定の色の信号を用いて複数の異焦点画像を取得する。
図4のA1のフレームの例であれば、互いに合焦物体位置の異なるM(Mは2以上の整数)枚のR画像が取得されている。同様に、A2のフレームではM枚のG画像、A3のフレームではM枚のB画像が取得されている。
【0028】
そして、各フレーム毎に複数の異焦点画像を合成して、特定の色信号における全焦点画像を生成する。具体的には、A1で取得されたM枚のR画像を合成して、Rの全焦点画像を生成し、A2で取得されたM枚のG画像を合成して、Gの全焦点画像を生成し、A3で取得されたM枚のB画像を合成して、Bの全焦点画像を生成する。ここでの全焦点画像は、上述したように単色の信号である。よって、Rの全焦点画像、Gの全焦点画像、Bの全焦点画像を合成して1枚のカラー画像を出力する。A3以降のフレームについても以上の処理を繰り返せばよく、3フレーム当たり1枚の全焦点画像が出力される。
【0029】
上記先行技術では撮影画像のグレースケール画像、つまり輝度情報から周波数成分の強度を算出することで画素毎の焦点位置を推定し、合成画像を生成している。つまり、
図4の例であれば、Rの全焦点画像を生成する際には、M枚のR画像を用いて処理を行うし、G、Bの全焦点画像を生成する際には、それぞれM枚のG画像、B画像を用いることになる。
【0030】
しかし被写体の輪郭やテクスチャでコントラストを形成する色の波長帯域が照明光の波長帯域と重複しない場合、算出される周波数成分の強度が小さくノイズの影響が相対的に大きくなる。その結果焦点位置の推定精度が落ちるため画像の合成精度も低下する。特に、面順次撮像方式ではフレーム毎に照射する照明光の波長が異なるため、画像合成精度もフレーム毎に異なる。
【0031】
例えば面順次撮像方式が多く使用されている内視鏡で撮影する生体画像では、Rチャンネルの照明で撮影した画像で周波数成分の強度が小さくなる傾向がある。一例としては、血管は画像中でコントラストを形成する要素となるが、血管の色味は主としてG信号及びB信号により作られるものであり、R信号の寄与は非常に小さい。そのため、R画像、G画像、B画像のそれぞれに分けて考えた場合、G画像及びB画像では当該血管部分でコントラストが高くなるのに対して、R画像ではコントラストが非常に小さい。その結果、面順次撮像方式の同時化処理の際にRチャンネルの画像だけ合成精度が低下して焦点ぼけを生じ、結果として生体における血管等のRGBバランス、すなわち色みが崩れるという問題がある。
【0032】
そこで本出願人は、所与の1フレームでの複数の異焦点画像を合成する際に、必要に応じて他のフレームの情報を用いる手法を提案する。具体的には、本実施形態に係る画像処理装置300は
図5に示したように、第1〜第N(Nは2以上の整数)のフレームを1周期として、面順次方式で撮像を行う撮像部200から撮像画像を取得する画像取得部310と、合成マップに基づいて、撮像された撮像画像を合成する合成処理を行う処理部320を含む。
【0033】
画像取得部310は、第i(iは1≦i≦Nを満たす整数)のフレームにおける撮像部200の撮像により、合焦物体位置の異なる複数の撮像画像を取得する。これは
図4を用いて上述したように、各フレームにおいて、対応する色(波長帯域)の異焦点画像をM枚取得することに相当する。
【0034】
そして処理部320は、第iのフレームで撮像された合焦物体位置の異なる複数の撮像画像に基づいて、第1の合成マップを求め、第iのフレームで求められた第1の合成マップと、第iのフレームとは異なる第k(kは1≦k≦N、k≠iを満たす整数)のフレームで求められた第1の合成マップとに基づいて、第2の合成マップを求める。さらに処理部320は、第2の合成マップに基づいて、第iのフレームで撮像された合焦物体位置の異なる複数の画像を合成する。
【0035】
ここで合成マップとは、複数の異焦点画像の合成処理に用いられる情報(合成情報)であり、例えば画像の各画素に対して、当該画素の画素値を決定するための情報が対応付けられた情報であってもよい。画素の画素値を決定するための情報は種々考えられるが、所与の1つの異焦点画像の画素値をそのまま全焦点画像の画素値とする場合であれば、選択対象である異焦点画像を特定する情報(画像のID情報等)となる。或いは、いくつかの異焦点画像の画素値を合成して全焦点画像の画素値を求める場合であれば、その合成比率を表す情報を画素値を決定するための情報としてもよい。
【0036】
また、第iのフレームでの第1の合成マップは、第iのフレームで取得された複数の異焦点画像から求められる。すなわち、ここでの第1の合成マップとは所与の1フレームの情報から求められる合成マップである。
【0037】
それに対して、本実施形態の手法で合成処理に用いられる合成マップは第2の合成マップである。つまり、所与の1フレームで取得された複数の異焦点画像を合成する際に、当該フレームの情報だけでなく、他のフレームで取得された情報も利用可能になる。これにより、所与のフレームの情報だけでは精度よく合成処理を行うことができない場合であっても、他のフレームの情報を用いることができるため、当該所与のフレームの異焦点画像についても精度よく合成処理を行うことが可能になる。
【0038】
例えば、上述した生体内画像の血管のように、R信号のコントラストが小さい被写体を対象とする場合、R信号から求めた第1の合成マップの精度が低いため、当該第1の合成マップから合成処理を行うとRの全焦点画像の合成精度が低くなる。それに対して本実施形態の手法では、例えばG信号から求めた第1の合成マップやB信号から求めた第1の合成マップを用いてRの複数の異焦点画像を合成できるため、Rの全焦点画像を精度よく求めることが可能になる。
【0039】
以下、第1〜第3の実施形態について説明する。第1の実施形態において基本的手法を説明し、第2の実施形態では、時系列に応じて第2の合成マップを求める際の重みづけを行う手法を説明する。第3の実施形態では、評価値を用いて複数の重みづけを使い分ける手法、及び既に求めてある第2の合成マップを異なるフレームでの処理に流用する手法を説明する。
【0040】
2.第1の実施形態
図1に本実施形態に係る画像処理装置300、及び当該画像処理装置300を含む内視鏡装置(広義には電子機器)のシステム構成例を示す。
図1に示したように、内視鏡装置は、光源部100と、撮像部200と、画像処理装置300と、撮像制御部400と、照明光色情報取得部500を含む。ただし、画像処理装置300及び内視鏡装置は
図1の構成に限定されず、これらの一部の構成要素を省略したり、他の構成要素を追加するなどの種々の変形実施が可能である。例えば、
図1では撮像制御部400と、照明光色情報取得部500を、画像処理装置300とは別体の構成としたが、画像処理装置300が撮像制御部400及び照明光色情報取得部500を含むものとしてもよい。
【0041】
光源部100は、白色光源(光源ランプ)110と、回転色フィルタ120と、回転駆動部(回転モータ)130を含む。光源部100については、上述した通りであるため、詳細な説明は省略する。なお、
図2の回転色フィルタ120は、R,G,Bの3色を用いる例であるため、分光特性の異なる3つのフィルタ121〜123を有するものであり、N通りの波長帯域を用いる場合には、N個のフィルタを有するものとなる。以下ではR,G,Bの3色を用いて説明を行うが、色数Nは他の数に拡張して考えることが可能である。
【0042】
撮像部200は、光学系(レンズ系)210と、撮像素子220と、A/D変換部230と、撮像用フレームメモリ240を含む。光学系210の構成は種々考えられるが、例えばズームレンズと、フォーカスレンズを含むものであってもよい。撮像素子220は、回転色フィルタ120を透過した特定の波長帯域の光が、被写体により反射された反射光を、光学系210を介して受光する。撮像素子220では、上記特定の波長帯域での信号を、撮像素子の全面(全画素)で取得することになる。
【0043】
A/D変換部230は、撮像素子からのアナログ信号をデジタル信号に変換する。撮像用フレームメモリ240は、デジタル変換された撮像画像を記憶するためのメモリである。
【0044】
ここで、光学系210と撮像素子220は、同被写体に対して合焦物体位置(焦点位置)の異なるM枚の画像が同時刻で取得できるものとする。具体的には、ステレオカメラを用いてもよく、この場合には光学系210と撮像素子220をそれぞれM組有する撮像部200を用いればよい。或いは、入射光をプリズム等で分割してもよく、この場合光学系210のうちレンズ部分は1つでもよいが、入射光をM分割するだけのプリズムやハーフミラーを有する必要があり、撮像素子220についても各分割光に対応させてM個用いることになる。なお、以下では説明を簡略化するために2枚の異焦点画像を取得するものとするが、異焦点画像の枚数は3枚以上に拡張して考えることが可能である。
【0045】
撮像制御部400は、白色光源110前の回転色フィルタ120を回転させる回転駆動部130の制御と、撮像素子220の読み出し制御を同期させ、面順次方式で撮像した画像を撮像用フレームメモリ240に格納する。
【0046】
照明光色情報取得部500は、撮像制御部400の信号を元に各フレームにおいてRGBの何れの色の光が照射されているかを表すラベルを取得する。例えば、Rならラベルの値を0、Gなら1、Bなら2とすればよい。
【0047】
画像処理装置300は、上述したように画像取得部310と、処理部320を含む。画像取得部310は、撮像部200で撮像された撮像画像を取得する。ここでの撮像画像とは合成処理前の画像、すなわち複数の異焦点画像である。画像取得部310は、例えば撮像部200との間のインターフェースとして実現されてもよい。また、画像取得部310は、撮像画像保存用のメモリを含んでもよい。
【0048】
処理部320は、複数の異焦点画像を合成して全焦点画像を求める処理等を行う。この処理部320の機能は、各種プロセッサ(CPU等)、ASIC(ゲートアレイ等)などのハードウェアや、プログラムなどにより実現できる。
【0049】
処理部320は、周波数成分算出部321と、第1の合成マップ算出部322と、第1の合成マップ用フレームメモリ323と、第2の合成マップ算出部324と、画像合成処理部325と、合成画像用フレームメモリ326と、同時化処理部327を含む。
【0050】
以下、処理部320の各部の詳細とともに、本実施形態の処理の流れを説明する。また、以下ではR,G,Bの3色を用いる例(N=3)、及び2枚の異焦点画像を合成する例(M=2)を説明するが、上述したようにM及びNは種々の変形実施が可能である。
【0051】
周波数成分算出部321は、撮像した複数の異焦点画像それぞれに対して、所定の周波数帯域抽出フィルタを用いて算出した評価値eを出力する。フィルタには一般的な微分フィルタや、フィルタサイズと係数を実験的に算出したバンドパスフィルタを用いればよい。周波数成分算出部321で求められる情報は、例えば一般的なコントラストAFで用いられるコントラスト値等であり、評価値eはコントラスト値そのものや、コントラスト値に基づいて求められる値である。ここではM=2(2焦点)なので全ての画像座標xに対して2つの評価値e1(x)及びe2(x)を出力する。e1が第1の異焦点画像(焦点1の画像)から求められた評価値eであり、e2が第2の異焦点画像(焦点2の画像)から求められた評価値eである。
【0052】
第1の合成マップ算出部322は、e1(x)、e2(x)の大小関係を表す評価値E(x)を用いて、座標毎に各画像のどちらを合成画像として選択するか決定する値MFを算出し出力する。画素毎に求められるMFの、画像の全領域分の集合が第1の合成マップを表すことになる。
【0053】
Eはe1とe2の比、または差の値を用いればよい。MFはEを用いて、例えば下式(1)により求めればよい。なお、E1,E2は実験的に求められる閾値であり、1は焦点1,0は焦点2の画像をそれぞれ100%で合成することを意味する。
【数1】
【0054】
また、第1の合成マップ用フレームメモリ323は、求められた第1の合成マップを保存する。後の説明のため、現フレームからj番目の過去フレームで算出した第1の合成マップをMF
jと定義する。現フレームで算出したものはMF
0となる。
【0055】
第2の合成マップ算出部324は、照明光色情報のラベルと現フレームと過去フレームで算出した第1の合成マップを用いて第2の合成マップを算出する。具体的には、第2の合成マップ算出部324は、第1の合成マップ加重算出部(重み算出部)3241と、第1の合成マップ時系列平滑化処理部(加重平均処理部)3242と、合成マップ読出し制御部3243を含む。
【0056】
第1の合成マップ加重算出部3241は、照明色情報のラベルに基づいて、面順次の周期に対応するN個の第1の合成マップを加重平均するための重みW
i(x)を算出する。重みは下式(2)を満たすように設定する。
【数2】
【0057】
ここではNがR,G,Bの3つなのでW
0(x),W
1(x),W
2(x)の3つを上式(2)を満たすように求めることとなる。本実施形態では、照明がRの波長帯域ならラベル0,Gなら1,Bなら2なので、例えば、
図6に示したテーブルのように重みを設定すればよい。ここでは、光がR、G、B、R・・・の順に照射されるものとしている。つまり、ラベル=0の場合、現フレームがR、1フレーム前がB、2フレーム前がGとなるため、W
0はR信号から求められた第1の合成マップに対する重みを表し、W
1がB信号、W
2がG信号から求められた第1の合成マップに対する重みを表す。同様に、ラベル=1の場合、現フレームがGであるため、W
0がG信号、W
1がR信号、W
2がB信号に対応する。ラベル=2の場合、現フレームがBであるため、W
0がB信号、W
1がG信号、W
2がR信号に対応する。
【0058】
図6からわかるように、本実施形態ではRの帯域の光を照射したフレームに対する重みを0とし、G,Bに対応するフレームに対する重みをそれぞれ0.5とする。ただし、第1の合成マップを加重平均して第2の合成マップを求める際の重みはこれに限定されない。例えば上記テーブルの値は、被写体に対して実験的に最適値を与えることが望ましい。
【0059】
ここでは生体内画像における血管のように、R信号からはコントラストを精度よく求められない例を考えているため、R信号に対応する重みを相対的に小さくし、それ以外、すなわちG信号とB信号に対応する重みを相対的に大きくした。この処理はRに限定されるものではなく、N個のチャネルのうち、特定のチャネルで精度が低下することがわかっていれば、当該チャネルの重みを小さくし、他のチャネルの重みを大きくすればよい。或いは、重みを小さくする場合にも0とするものには限定されず、相対的に小さく且つ0でない値を用いてもよい。
【0060】
合成マップ読出し制御部3243は、現フレームと過去2フレームの3フレームで保存した第1の合成マップMF
iを読み出す。ここでは、R,G,Bの3色からなる3フレームを1周期としているため、MF
0,MF
1,MF
2の3つの第1の合成マップを読み出すものとしたが、1周期がNフレームであれば、Nフレーム分の第1の合成マップを読み出せばよい。具体的には、MF
0〜MF
N−1のN個の第1の合成マップを読み出す。
【0061】
第1の合成マップ時系列平滑化処理部3242は、下式(3)を用いて、現フレームの複数の異焦点画像を合成する際に用いられる第2の合成マップMSを算出し、出力する。
【数3】
【0062】
以上の第2の合成マップ算出部324における処理により、照明の色が被写体のコントラストを形成しにくい色となるフレームでは算出した合成マップの重みが小さくなり、それ以外のフレームで算出した合成マップの値と加重平均される。第1の合成マップ時系列平滑化処理部3242で求められた第2の合成マップは、画像合成処理部325に出力される。
【0063】
画像合成処理部325は、第1の異焦点画像と、第2の異焦点画像を、求められた第2の合成マップに基づいて合成し、合成画像用フレームメモリ326に保存する。具体的には、画素位置xでの合成画像(全焦点画像)の画素値をI’(x)、第1の異焦点画像の画素値をI1(x)、第2の異焦点画像の画素値をI2(x)とした場合に、下式(4)により合成処理を行えばよい。上述したように、MS(x)=1であれば、当該画素の画素値は第1の異焦点画像の画素値が100%用いられ、MS(x)=0であれば、当該画素の画素値は第2の異焦点画像の画素値が100%用いられる。
I’(x) = MS(x)×I1(x) + {1-MS(x)}×I2(x) ・・・・・(4)
【0064】
以上の処理を1周期分(3フレーム)の情報を対象として行うことで、各色の全焦点画像が取得される。同時化処理部327では、面順次撮影の1周期で算出した合成画像に基づいて、現フレームのRGBフルカラー画像を生成する。
【0065】
具体的には、同時化処理部327は、フルカラー画像生成部3271と、合成画像読出し制御部3272を含んでもよい。合成画像読出し制御部3272は、所与のフレームであることを条件に、過去フレームで合成画像用フレームメモリ326に保存された合成画像を読み出す。例えば
図4の例であれば、A1〜A3の3フレームの情報を用いてカラー画像を出力するものとしているため、現フレームがA3のフレーム(Bのフレーム)である場合に、過去2フレーム(RとGのフレーム)で保存された合成画像を読み出せばよい。
【0066】
フルカラー画像生成部3271では、上記制御に従って読み出された過去フレームでの合成画像と、現フレームでの合成画像を合成する処理を行ってフルカラー画像を生成、出力する。
【0067】
以上の本実施形態による効果を、従来手法と比較しつつ
図7(A)〜
図8(F)を用いて説明する。
図7(A)は第1のフォーカス状態での画像の例であり、
図7(B)は第2のフォーカス状態での画像の例である。
図7(A)、
図7(B)はフルカラー画像を表す模式図であるが、本実施形態ではR,G,Bの各フレームにおいて、第1の異焦点画像として
図7(A)に対応する単色画像が取得され、第2の異焦点画像として
図7(B)に対応する単色画像が取得される。それぞれの画像中央部に縦方向に見えるラインが血管を表しており、図からわかるように
図7(A)では血管がはっきり観察できるのに対して、
図7(B)では血管がぼやけている。つまりこの例では、R,G,Bのいずれのフレームにおいても、少なくとも血管周辺部では、第1の異焦点画像の画素値を合成画像の画素値とすることで、合成画像において当該血管にピントを合わせることが可能である。
【0068】
第1の異焦点画像及び第2の異焦点画像の所与の位置に、点P及び点Qを設定する。第1の異焦点画像でのPの位置と第2の異焦点画像でのPの位置は一致し、同様にQの位置についても一致する。ここで、各異焦点画像での線分PQ上での画素値の変化を
図8(A)及び
図8(B)に示す。
図8(A)及び
図8(B)は、横軸が画素位置を表し、縦軸が対応する画素位置での画素値を表す。
【0069】
この場合、血管の位置、すなわちPとQの中間位置では他の領域(生体でいえば粘膜等)に比べて画素値が大きく変化する。そのため、
図8(A)のG1やB1に示したように、第1の異焦点画像の画素値のうち、GとBの画素値については、PとQの中間点で非常に小さくなっている。それに対して、ピントが合っていない第2の異焦点画像では、
図8(B)のB2、G2に示したように、GとBの画素値に変化はみられるものの、当該変化が緩やか(画素位置の変化に対する画素値の変化が小さい、傾きが小さい)である。
【0070】
そのため、GとBの画素については、血管付近の情報を用いて評価値e(コントラスト値)を求めれば、e1>e2であってその差が明確である。よって、E=e1−e2、或いはE=e1/e2によりEを求めた場合、当該Eは上式(1)のうちE>E2を満たすものとなる。これを表したものが
図8(C)のうちのG,Bである。
図8(C)はR信号、G信号、B信号から求められる第1の合成マップの値のうち、PQ上に位置する画素での値を表したグラフである。上述したように、G信号、B信号では2つの異焦点画像でそれぞれ評価値を精度よく求めることができるため、当該評価値に基づく第1の合成マップも、適切な値、すなわち第1の異焦点画像を用いることを表す値(縦軸=1)となっている。
【0071】
つまり、G信号やB信号では、合成処理に第1の合成マップMFを用いた場合、すなわち、従来手法と同様に現フレームの情報だけを用いて現フレームの合成処理を行ったとしても、大きな問題とならない。
図8(E)は
図8(C)に示した第1の合成マップを用いて、
図8(A)の第1の異焦点画像及び
図8(B)の第2の異焦点画像を合成した場合の合成画像の画素値を表す図である。
図8(E)からわかるように、G信号及びB信号については、
図8(A)に示した第1の異焦点画像と同様の値となり、適切な画像を選択できていることがわかる。
【0072】
一方、上述したように血管の色味にはR信号はあまり含まれていない。そのため、
図7(A)に示したように、カラー画像をユーザが観察すれば画像中央部に縦方向に走る被写体があることは一目瞭然であるが、Rの画素値にはそれが十分反映されない。具体的には、
図8(A)のR1に示したように、実際にはピントが合っている状況でも、R信号はG信号やB信号に比べて、血管部分での画素値の変化が非常に小さい。さらにピントが合っていない状況では、
図8(B)のR2に示したように、画素値の変化がノイズと区別できない程度に小さくなってしまうこともある。
【0073】
この場合、
図8(A)のRの値の変化は非常に小さく、精度よくノイズと区別することは容易ではない。その結果、
図8(A)と
図8(B)のRの画素値を用いて求められる評価値eは、e1とe2で明確な差が生じない。結果として、Eは上式(1)のうち、E1<E<E2を満たすものとなり、例えば
図8(C)のRに示したようにMF=0.5といった値となる。
【0074】
そのため、R信号で従来手法と同様に第1の合成マップを用いて現フレームの合成処理を行ってしまうと、
図8(E)に示したように、合成画像のR画素値は、第1の異焦点画像のR画素値(R1)と第2の異焦点画像のR画素値(R2)の平均値となってしまう。
図8(A)のR1と、
図8(E)の(R1+R2)/2を比較すればわかるように、ただでさえ小さい血管部分での画素値変化が、合成処理によりさらに小さいものとなってしまっている。カラー画像での色味はR,G,Bの各画素値の割合によって決定されるため、画素値の変化がわずかでもユーザにとっての色味は大きく変化する。その点、現フレームの情報だけを用いる従来手法では、特定の照明光で撮像したフレームでは適切な合成処理を行えないことになる、結果として被写体(ここでは血管)の色味が不自然なものとなってしまう。
【0075】
ここでは、e1とe2に差がない場合には2つの異焦点画像を合成するものとしたが、合成処理の手法によっては第1の異焦点画像と第2の異焦点画像のいずれかを必ず選択する(第1の合成マップの値を0又は1の2値に限定する)ことがあり得る。その場合、e1とe2に差がない以上、第2の異焦点画像が選択される(第1の合成マップの値が0となる)おそれもある。そうなると、合成後のR画素値が
図8(B)に一致してしまい、
図8(E)よりもRの画素値が小さい、すなわちより不適切な色味となるおそれがある。
【0076】
それに対して、本実施形態の手法では第1の合成マップではなく、第2の合成マップを合成処理に用いる。そして、第2の合成マップは複数の第1の合成マップを所与の重みを用いて加重平均して求められる。
図6のテーブル及び上式(3)の例であれば、第2の合成マップは、G信号での第1の合成マップの値と、B信号での第1の合成マップの値の平均値となる。そのため、第2の合成マップは
図8(D)に示したように、R,G,Bのすべてにおいて、線分PQ上では1となる。
【0077】
図8(F)は
図8(D)に示した第2の合成マップを用いて、
図8(A)の第1の異焦点画像及び
図8(B)の第2の異焦点画像を合成した場合の合成画像の画素値を表す図である。この場合、PQ上では第2の合成マップの値は1であるから、合成処理後の画素値は、第1の異焦点画像と同様となり、
図8(F)は
図8(A)と一致する。つまり本実施形態の手法であれば、
図7(A)に示したようにピントが合っている側の異焦点画像を適切に選択することが可能になる。
【0078】
さて、ここまでの説明により、R信号(広義にはコントラストを形成しにくい色の信号)がそもそも必要なのか、という点を疑問に感じることがあるかもしれない。つまり、特定のチャネル(例えばR)でコントラストがでないのであれば、R画像については複数の異焦点画像のいずれについてもピントが合っていないはずだから、どのように合成しようとピントが合うはずがない、言い換えれば、どのような合成を行ったとしても、R画像がカラー画像に影響を及ぼさないのではないか、との考えが成り立ちそうに思える。
【0079】
しかし、所与の被写体を実現するに当たり、所定の色が全く寄与しないということは現実的には考えにくい。主としてGやBが用いられるとしてもR信号が0ということはなく、対象となる被写体を形成するR信号が存在するはずである。そして、そのR信号は
図8(B)に示したようにピントが合っていない異焦点画像ではノイズに埋もれてしまうかもしれないが、
図8(A)に示したようにピントが合っている異焦点画像では、ある程度の値がみられるものである。
【0080】
つまり、コントラストを形成しにくい色であっても、コントラストを全く形成しないとは言えない以上、適切な異焦点画像を選択する意義がある。そして、上述したように、色味は各チャネルの信号の比率で決定されるものである。そのため、コントラストの形成においてG,Bに比べてRの寄与度が小さいからといって、R信号の色味に対する影響は無視してよいものではない。例えば
図8(E)と
図8(F)ではRの画素値自体の変化量はさほど大きくないが、
図8(F)では色味が自然である(生体内画像撮像時に、血管の色味としてよく見られる色である)のに対して、
図8(E)では色味が不自然となることがわかっている。
【0081】
また、以上の説明により新たな疑問が生じるかもしれない。具体的には、コントラストを形成しにくい色であっても、ピントがあっている異焦点画像とピントがあっていない異焦点画像との間で差異が生じるのであれば、従来手法と同様にR信号だけを用いて当該差異を検出できるのではないか、言い換えれば、第1の合成マップだけを用いても適切な合成処理ができるのではないか、との考えが成り立ちそうに思える。
【0082】
しかし、
図8(A)のR1をみればわかるように、R信号の変化は非常に小さい。また、ノイズの混入度合いも状況に応じて変化する。そのため、各異焦点画像からコントラスト値を求めた場合に、それがノイズに起因するものなのか、本来の信号値変化に起因するものなのかを適切に切り分けることが難しく、複数の異焦点画像同士をコントラスト値を用いて評価することも困難である。つまり、従来手法に関して上述してきたように、コントラストを形成しにくい色では精度よく合成処理を行うことが難しいという課題がある。その際、GやBは
図8(A)から明らかなように、本来の信号値変化がノイズによる信号値変化に比べて十分大きいため、精度のよい合成処理が可能であり、R信号についても、無理にR信号だけから合成するよりは、GやBの情報を用いたほうが精度の面で有利である。
【0083】
以上で説明したように、照明の色が被写体のコントラストを形成しにくい色となるフレームでも、それ以外の照明で撮影したフレームで算出した合成マップの値に基づいて画像を合成することにより、被写体の色と照明の色に依存せず全てのフレームで高い精度の画像合成が可能となる。
【0084】
図9及び
図10が本実施形態に係る処理を説明するフローチャートである。
図9が1フレーム毎に行われる処理を表し、この処理が開始されると、まずM枚の異焦点画像を取得する(S101)。それとともに、S101で取得したM枚の異焦点画像が、どの照明光により撮像されたものであるかを表す照明光色情報を取得する(S102)。ここでの照明光色情報とは、上述したラベルであってもよく、R,G,Bの3色の場合、0,1,2のいずれかの値をとる情報である。
【0085】
次に、複数の異焦点画像の各画像を対象として、周波数成分(コントラスト値、評価値)を算出し(S103)、当該周波数成分に基づいて、現フレームでの第1の合成マップMF
0を算出する(S104)。周波数成分の算出は、上述したようにバンドパスフィルタ等を用いればよく、第1の合成マップの算出は上式(1)等を用いればよい。算出された第1の合成マップMF
0はフレームメモリ(第1の合成マップ用フレームメモリ323)に記憶される。
【0086】
第1の合成マップMF
0が求められたら、実際に合成処理に用いる第2の合成マップMSを算出する(S106)。第2の合成マップの算出処理を表すフローチャートが
図10であり、この処理が開始されると、面順次の1周期を構成するフレーム数をNとして、フレーム数分のループを開始する(S201)。具体的には、S201とS205のブロックの間の処理を、1周期分だけループする。
【0087】
S201のループ内では、第1の合成マップの全画素(撮像画像の全画素)をスキャンして、各画素に対して第2の合成マップを算出する際の重みWiを設定する。
図10ではS202及びS204が画素を始点から終点まで1画素ずつ更新していくループになり、当該ループ内で、処理対象画素に対して、照明光色情報に基づいて重みWi(x)を設定する処理(S203)が行われる。
【0088】
S201〜S205により、重みW
0,W
1,W
2,・・・W
N−1が求められる。また、1周期分の過去の第1の合成マップをフレームメモリ(第1の合成マップ用フレームメモリ323)から読み出し、読み出した第1の合成マップをそれぞれMF
1,MF
2,・・・MF
N−1とする(S206)。
【0089】
そして、S104で求められた現フレームの第1の合成マップMF
0と、S206で読み出したMF
1,MF
2,・・・MF
N−1を、S205までのループ処理で求められた重みW
0,W
1,W
2,・・・W
N−1を用いて加重平均して第2の合成マップMSを求める(S207)。具体的な加重平均は、例えば上式(3)を用いればよい。
【0090】
第2の合成マップMSが求められたら、当該第2の合成マップMSを用いて、M枚の位相点画像を合成して合成画像I
0を求め(S107)、求めた合成画像I
0をフレームメモリ(合成画像用フレームメモリ326に保存する(S108)。
【0091】
また、1周期分の過去の合成画像I
1、I
2、・・・I
N−1を読み出し(S109)、I
0と読み出した過去の合成画像I
1、I
2、・・・I
N−1を用いて1枚のフルカラー画像を生成する(S110)。
【0092】
以上の本実施形態では、画像処理装置300の処理部320は、第iのフレームで求められた第1の合成マップと、第iのフレームよりも時間的に過去のフレームである第kのフレームで求められた第1の合成マップとに基づいて、第2の合成マップを求める。そして処理部320は、第2の合成マップに基づいて、第iのフレームで撮像された合焦物体位置の異なる複数の画像を合成する合成処理を行う。
【0093】
これにより、第1の実施形態として上述したように、現フレーム(処理対象フレーム)よりも前のフレームで求められた第1の合成マップを、現フレームでの第2の合成マップの算出に利用することが可能になる。このようにすれば、仮に現フレームで求められる第1の合成マップMF
0の信頼性が低い場合にも、精度よく第2の合成マップを求めることが可能になる。特に、リアルタイム処理のように、最新フレームを対象として順次第2の合成マップ算出処理、及びそれを用いた合成処理を行っていく場合、各フレームにおいて当該フレームでの第1の合成マップ算出処理が実行される。よって、過去フレームの第1の合成マップは算出済みであるため、それを保存、読み出しすれば、現フレームにおいて過去フレームの第1の合成マップを算出する処理を行う必要がなく、効率的な処理を実行することが可能である。
【0094】
なお、以上の説明では現フレームの処理において過去フレームの情報を用いるものとしたが、本実施形態の処理は異なる変形実施が可能である。具体的には、所与のフレームを処理対象フレームとした場合に、当該フレームよりも時間的に後のフレームで求められる第1の合成マップを処理に用いてもよい。
【0095】
例えば、内視鏡装置を用いて病変の発見と、病変の除去の両方を行うような場合、撮像した画像を可能な限り遅延を減らして表示する必要がある。その場合、上述してきたように、最新フレーム(現フレーム)に対して合成処理を行って即座に表示する必要があり、そのために利用する他のフレームは必然的に過去フレームとなる。しかし、病変のスクリーニングのみを目的とする場合、画像は撮像後蓄積しておき、当該画像のユーザ(医師)による閲覧はある程度時間がたってから行われてもよい。一例としては、カプセル内視鏡を用いた撮像では、撮像画像はユーザが保持する受信機等に保存されるため、当該画像を観察完了後(カプセル内視鏡が体外に排出された後)等に閲覧する利用形態が考えられる。
【0096】
この場合、処理を開始する段階ではある程度のフレームに渡って複数の異焦点画像が取得できているのであるから、第1の合成マップ及び第2の合成マップの算出処理は時間的に前のフレームから始める必要はない。例えば、時間的に最も後のフレームや、観察の重要度が高い被写体が撮像されているフレーム等から処理を開始してもよい。その際、本実施形態の手法は1フレーム(特定の波長帯域)だけで合成処理を閉じず、他のフレーム(他の波長帯域)の情報も利用する点に特徴がある。つまり、処理対象フレームに対して、時間的に前か後かは問題とならず、当該処理対象フレーム以外のフレームを処理に用いればよい。
【0097】
その際、第2の実施形態で後述するように、フレーム間で被写体と撮像部の相対的な動きがあると、当該フレームをまたいで第1の合成マップを流用することは適切ではない。よって、処理対象フレーム以外のフレームを用いる際には、上述したように時間的な前後は問わないが、動きが生じる可能性を低減するためにも、時間的に大きく離れたフレームは用いないことが好ましい。また、動きがない(小さい)ことが求められることを考慮すれば、フレーム間の動き情報を求め、処理対象フレームに対して被写体と撮像部の相対的な動きが小さいと判定されたフレームを優先的に処理に用いるような変形実施も可能である。ここでの動き情報とは、例えば取得タイミングが異なる複数の画像から算出される動きベクトル等であってもよい。
【0098】
また、処理部320は、第iのフレームの第1の合成マップと、第kのフレームの第1の合成マップとを、所与の重み情報を用いて重みづけして合成することで、第iのフレームにおける第2の合成マップを求めてもよい。
【0099】
これにより、処理対象フレームと他のフレームとでそれぞれ第1の合成マップが求められた際に、第2の合成マップをそれら複数の第1の合成マップの重み付け合成により求めることが可能になる。具体的には、上式(3)に示したように、重みづけ加算処理を行えばよい。
【0100】
また、撮像部200は、RGBの3フレームを1周期として、面順次方式で撮像を行い、処理部320は、Rのフレームに対応する第1の合成マップに比べて、Gのフレーム又はBのフレームに対応する第1の合成マップの重みを大きくする重み情報を設定してもよい。
【0101】
これにより、具体的にRGBの三色を用いる場合に、R信号ではコントラストが形成されにくい状況でも精度のよい合成処理を行うことが可能になる。具体的な重み情報は、
図6を用いればよく、
図6の例ではRに対応する重みを0とし、G及びBに対応する重みをそれぞれ0.5としている。これは上述したように、生体内画像で血管を観察対象とする場合に有用である。
【0102】
また、処理部320は、第iのフレームで求められた第1の合成マップと、第1〜第i−1のフレーム、及び第i+1〜第Nのフレームで求められた第1の合成マップとに基づいて、第iのフレームにおける第2の合成マップを求めてもよい。
【0103】
これにより、面順次の1周期の信号を用いて、所与のフレームでの第2の合成マップを求めることが可能になる。例えば、RGBの三色であれば、Rのフレームで第2の合成マップを求める際にはGとBのフレームを参照するし、Gのフレームで第2の合成マップを求める際にはBとRのフレームを参照するし、Bのフレームで第2の合成マップを求める際にはRとGのフレームを参照する。なお、上述したように、参照するフレーム(処理対象フレームとは異なるフレーム)は時間的な前後を問わない。よって、R1→G1→B1→R2→G2→B2・・・といった順で光が照射される場合であって、R2のフレームで第2の合成マップを求める場合、参照するGとBの組は、(G1,B1)であってもよいし(B1,G2)であってもよいし(G2,B2)であってもよい。このようにすれば、撮像可能な全ての色(全ての波長帯域)の情報を用いることになるため、第2の合成マップを精度よく求めることが可能になる。
【0104】
また、処理部320は、第2の合成マップに基づいて、第iのフレームで撮像された合焦物体位置の異なる複数の撮像画像を合成する合成処理により第iの合成画像を生成し、第1〜第Nのフレームに対応する第1〜第Nの合成画像を合成することで、出力画像(表示画像、フルカラー画像)を生成する。
【0105】
これにより、各フレームにおいて合成画像(全焦点画像)が求められた後については、一般的な面順次方式の撮像と同様に、1周期分の画像をさらに合成して、フルカラー画像を生成することが可能になる。具体的には
図4に示した処理を行えばよい。
【0106】
また、以上の本実施形態は、R,G,Bの3フレームを少なくとも含む第1〜第N(Nは3以上の整数)のフレームを1周期として、面順次方式で撮像を行う撮像部200から撮像画像を取得する画像取得部310と、合成マップに基づいて、撮像された撮像画像を合成する合成処理を行う処理部320を含む画像処理装置300に適用できる。そして、画像取得部310は、第i(iは1≦i≦Nを満たす整数)のフレームにおける撮像部200の撮像により、合焦物体位置の異なる複数の前記撮像画像を取得し、第iのフレームがRに対応するフレームの場合に、処理部320は、Gに対応するフレームで求められた合成マップ及びBに対応するフレームで求められた合成マップの少なくとも一方に基づいて、Rに対応する第iのフレームでの合成マップを求め、処理部320は、合成マップに基づいて、第iのフレームで撮像された合焦物体位置の異なる複数の画像を合成する合成処理を行う。
【0107】
ここでのR,G,Bとは、上述したように光の三原色における赤色(R)、緑色(G)、青色(B)を表し、Rのフレーム、Bのフレーム、Gのフレームとは、それぞれ対応する色(波長帯域)の光の照射により撮像画像が取得されたフレームを表す。なお、R,G,Bの各光の波長帯域は種々の変形実施が可能であるが、例えば
図3(A)〜
図3(C)に示す帯域であってもよい。
【0108】
これにより、RGBの三色を含む(三色のみであってもよい)面順次方式の撮像を行う場合、処理対象フレームがRに対応する場合には、G及びBの少なくとも一方の情報に基づいて第2の合成マップを求める画像処理装置を実現することが可能になる。例えば
図6のテーブルの場合、ラベルがどの値であってもR信号から求められる第1の合成マップは参照の対象とならない。つまり、現フレームがRである場合、現フレームにおける第1の合成マップの算出処理、保存処理をスキップするといった実施形態も考えられる。この場合、処理の一部をスキップできるため、処理負荷が軽減できたり、メモリ容量の圧迫を抑止すること等が可能である。
【0109】
また、以上の本実施形態は、
図1に示したように、撮像部200と、上述してきた画像処理装置300とを含む内視鏡装置に適用できる。
【0110】
この場合、生体内画像を対象とする可能性が高いため、上述した血管に関する問題に適切に対応可能となる。
【0111】
3.第2の実施形態
図11に本実施形態に係る第2の合成マップ算出部324の構成例を示す。
図11以外は第1実施例と同様の構成となる。
図11と
図1からわかるように、本実施形態では第1の実施形態の第2の合成マップ算出部324に対して、時系列方向加重調整部3244が追加された構成となっている。
【0112】
時系列方向加重調整部3244は、第1の合成マップ加重算出部3241で求められる重みWiの値に対して、さらに時系列方向の調整係数Ciをかけて上書きする。上書き前のWi,Ciは下式(5)を満たすように設定する。
【数4】
【0113】
第1の実施形態で上式(2)に示したように、最終的に各第1の合成マップに対して作用する重みは、その総和が1となることが好ましい。本実施形態では、Wi×Ciの値で重みを上書きする、すなわちWi×Ciの値が最終的な重みとなるため、上式(2)に相当する条件は上式(5)により満たすことが可能である。
【0114】
NがR,G,Bの3つなので調整係数としてはC
0(x),C
1(x),C
2(x)の3つを考慮することとなるが、本実施形態ではCはiの値が小さい程大きい値とすることが望ましい。
図12の表が調整係数C、及び最終的な重みCi×Wiの一例であり、
図12ではR信号ではなく、且つ現フレームに近い信号の優先度を高くする調整係数が設定されている。なお、Wiの値は
図6のものを用いている。
【0115】
具体的には、ラベル=0では、現フレームがRであるため、C0の値を小さくし、C1,C2についてはともにRではないため、より現フレームに近いC1の値を大きくしている。ここでは、C0=0、C1=2、C2=0である。また、ラベル=1及びラベル=2では、現フレームがそれぞれG,BでありRでないため、現フレームであるC0の値を2と大きくし、C1及びC2を0としている。
【0116】
このような調整係数Cと、
図6のWを用いることで、最終的な重みCi×Wiは
図12に示したようになる。ラベル=0では1フレーム前のB信号での第1の合成マップの重みが1となり、他の重みが0となる。ラベル=1では現フレームのG信号での第1の合成マップの重みが1となり、他の重みが0となる。ラベル=2では現フレームのB信号での第1の合成マップの重みが1となり、他の重みが0となる。
【0117】
このようにすれば、R信号の重みを相対的に下げるという前提のもので、時系列的に現フレームに近い第1の合成マップの優先度を高くする(重みを大きくする)ことが可能になる。上述してきた本発明の手法は、所与のフレームでの合成処理に他のフレームで求められた合成マップを用いている。しかし、過去フレームでの合成マップは、当該過去フレームでの合焦状態を反映したものである。そのため、過去フレームと現フレームの間で合焦状態が異なるものとなれば、過去フレームでの合成マップを現フレームに流用することは適切とは言えない。
【0118】
例えば、過去フレームと現フレームの間で、被写体が動いてしまった、或いは撮像部が動いてしまったといったように、被写体自体が変わってしまったり、被写体が同一であっても撮像部との相対位置関係が変わってしまえば、過去フレームの合成マップを現フレームで用いることは不適切と言える。
【0119】
そして、そのような被写体の相対的な動きは、フレーム間の時間が長いほど生じやすい傾向にある。つまり、第1の合成マップを求めたフレームが現フレームから時間的に離れていればいるほど、当該第1の合成マップを現フレームで用いても精度が出ない可能性が高い。逆に、第1の合成マップを求めたフレームが現フレームから時間的に近いほど、当該第1の合成マップを高精度で利用できる可能性が高い。つまり、現フレームに対する時系列の情報を重みの調整に用いるとよい。
【0120】
本実施形態の調整係数Cはこの点を考慮したものであり、上述したようにiの値が小さい程大きい値とすることで、現フレームに対して時間的に近いフレームで求められた第1の合成マップの寄与度を高くすることが可能になる。
【0121】
図13に本実施形態における第2の合成マップ算出処理を説明するフローチャートを示す。
図13のS301〜S303は
図10のS201〜S203と同様である。本実施形態では、S303の重みWiの設定後に、当該重みに対して時系列方向の調整係数Cをかける処理を行う(S304)。S304の処理は、S301のループ及びS302のループの内部であるため、1周期分の情報を対象として、各画素に対して行われることになる。
【0122】
S306までで時系列方向の調整が加えられた重みが求められる。その後の処理(S307,S308)については、
図10のS206,S207と同様である。
【0123】
以上の本実施形態では、処理部320は、第iのフレームに対して時間的に近いフレームで求められた第1の合成マップの重みを大きくする重み情報を用いて、第2の合成マップを求める。
【0124】
これにより、時間的に近いフレームの重みが大きくなるため、被写体と撮像部の相対的な動き等による影響を抑止して、精度のよい合成処理を行うことが可能になる。具体的には
図12のC0〜C2に示した調整係数を用いればよい。なお、時間的に近いとは、処理対象フレームとの時間差が問題であり、第1の実施形態で上述したように、処理対象フレームよりも時間的に前か後かは問題とならない。よって、処理対象フレームの1フレーム後と、1フレーム前とは、特段の事情がない限り区別して取り扱う必要はない。
【0125】
なお、ここでの「第iのフレームに対して時間的に近い」とは、第iのフレームのタイミングを基準とした場合の、対象フレームのタイミングの時間差(或いはフレーム差)が小さいことを表す。例えば、第iのフレームに対して、時間的にpフレーム後に取得された第i+pのフレームと、第iのフレームに対して、時間的にqフレーム後に取得された第i+qのフレームがあり、p<qの場合、第i+pのフレームは第i+qのフレームに比べて、第iのフレームに対して時間的に近いことになる。また、第iのフレームの取得から時間tpの経過後に取得された第i+pのフレームと、第iのフレームの取得から時間tqの経過後に取得された第i+qのフレームがあり、tp<tqの場合も、第i+pのフレームは第i+qのフレームに比べて、第iのフレームに対して時間的に近い。
【0126】
また、上述したように処理対象フレーム(第iのフレーム)に対する変化は前か後ろかは問わない。よって、pフレーム後或いは時間tpの経過後とは、第iのフレームに対する時間的に変化幅としては、pフレーム前或いは時間tpだけ前の時間、すなわち−pフレーム後、或いは時間(−tp)の経過後と同等に扱うことが可能である。つまり、「第iのフレームに対して時間的に近い」か否かの判定においては、フレーム数や時間の符号を考慮せずに、その絶対値を用いて処理を行ってもよい。例えば、pフレーム後と、qフレーム前(−qフレーム後)であれば、|p|<|−q|であるため、pフレーム後の方が第iのフレームに対して時間的に近いことになる。また、以上の本実施形態で説明したように、第iのフレームそのものも重み付けの対象となることから、上述したpとしてp=0の場合を考慮してもよい。
【0127】
4.第3の実施形態
図14に本実施形態に係る内視鏡装置の構成例を示す。
図14に示したように、本実施形態の内視鏡装置は、
図1に示した第1の実施形態と比較した場合に、閾値判定部328が追加されており、第1の合成マップ用フレームメモリ323が、第2の合成マップ用フレームメモリ329に置き換えられている。また、第2の合成マップ算出部324が、合成マップ加重算出部3245と、合成マップ時系列平滑化処理部3246と、合成マップ読出し制御部3243とを含むものに変更されている。
【0128】
以下、第1の実施形態と同様の箇所については説明を省略し、異なる構成について詳細に説明する。まず本実施形態では、上述したように第1の合成マップ用フレームメモリ323が、第2の合成マップ用フレームメモリ329に置き換えられている。つまり本実施形態では、所与のフレームにおいて第2の合成マップが求められたら、当該第2の合成マップをメモリに保存する。そのため、第2の合成マップを出力する合成マップ時系列平滑化処理部3246は、画像合成処理部325とともに、第2の合成マップ用フレームメモリ329にも接続されている。
【0129】
そして本実施形態では、現フレームの第2の合成マップを求める際に、現フレームでの第1の合成マップと、過去フレームでの第2の合成マップを用いる。その際、過去フレームの第2の合成マップについては、1周期分(1フレーム過去〜N−1フレーム過去)の全てを用いる必要はなく、例えば直近1フレームの第2の合成マップを用いればよい。
【0130】
なぜなら、第1の実施形態や第2の実施形態の手法により1回第2の合成マップが求められた場合、当該第2の合成マップは、1周期分の第1の合成マップに基づいた情報となっている。つまり、第2の合成マップとは複数のフレームを考慮した上で、適切である(精度が高い)と判定された合成マップであるため、当該第2の合成マップは、一部の例外的な状況を除いて現フレームにおいても精度よく利用可能と考えられる。ここでの例外的な状況とは、現フレームと1フレーム過去との間で被写体に動きが生じた、或いは過去1周期において機器の故障等の要因により適切な画像が取得されなかったといった状況であり、生じる可能性は低いものである。
【0131】
第1の合成マップは、1フレームの情報のみを用いて求められるため、Rに対応するフレームのように信頼性が低いものも含まれている。それに対して、第2の合成マップは複数フレームの情報を含む信頼性が高いものである以上、現フレームの第2の合成マップを求めるに当たり、過去の第2の合成マップを複数利用するメリットは大きくない。
【0132】
よって本実施形態での重みWは、現フレームで求められた第1の合成マップMF
0に対する重みW
0と、1フレーム前に求められた第2の合成マップMS
1に対する重みW
1の2つを考慮すればよい。そして、第2の合成マップ算出部324の合成マップ時系列平滑化処理部3246では、下式(6)により、現フレームでの第2の合成マップMS
0を求めればよい。
MS
0(x) = W
0(x)×MF
0(x) + W
1(x)×MS
1(x) ・・・・・(6)
【0133】
このようにすれば、過去の合成マップを1フレーム分のみ保存すればよいため、フレームメモリの容量も小さくて済むという利点がある。
【0134】
また本実施形態では、現フレームの情報がどれだけ信頼できるかを閾値を用いて判定してもよい。そして、判定結果に基づいて第2の合成マップの算出に用いられる重み(上述したW
0,W
1)を変化させてもよい。
【0135】
上述したように、本実施形態の画像処理装置300は閾値判定部328を含む。そして閾値判定部328は、各異焦点画像から求められた周波数成分の評価値(狭義にはコントラスト値)であるe1(x)、e2(x)のいずれかが、所定の閾値thrを超えるかどうか判定し、閾値判定マップTH(x)を生成する。具体的には下式(7)により閾値判定マップTH(x)を求めればよい。下式(7)において、max(α,β)はαとβのうちの大きい方の値を表す。
【数5】
【0136】
生成された閾値判定マップTH(x)は第2の合成マップ算出部324の合成マップ加重算出部3245に出力され、第2の合成マップを求める際の重みの決定に利用される。
【0137】
合成マップ加重算出部3245は、照明色情報のラベルと、閾値判定マップTH(x)に基づいて、現フレームの第1の合成マップMF
0と、1フレーム過去の第2の合成マップMS
1を加重平均するための重みW
i(x)を、
図15(A)、
図15(B)に示したテーブルを用いて算出する。
【0138】
具体的には、TH(x)=0となる画素xについては、
図15(A)に示したテーブルを用い、TH(x)=1となる画素xについては、
図15(B)に示したテーブルを用いる。TH(x)=1の場合、当該画素xにおいては、e1(x)とe2(x)の少なくとも一方がある程度(thrよりも)大きい値となっている。つまり、現フレームの画像は、複数の異焦点画像のうち少なくとも1枚においてしっかりピントが合っている状態である。そのため、現フレームで取得された複数の異焦点画像に基づいて第1の合成マップMF
0を求めた場合、当該MF
0は精度の高い合成処理を実現可能と言える。具体的には、第1の異焦点画像でピントが合っており(e1(x)>thr)、第2の異焦点画像でピントが合っていない状況であれば、上式(1)においてE(x)≧E2となり、MF(x)=1、すなわち第1の異焦点画像を100%合成するという結果となるはずである。
【0139】
この場合、現フレームで求められる第1の合成マップMF
0の信頼性が高い以上、過去フレームで求められた情報を敢えて用いる必要はなく、第1の合成マップMF
0だけから現フレームの複数の異焦点画像を合成すればよい。よって
図15(B)に示したように、ラベルによらず、W0=1、W1=0としている。ただし、現フレームの重みを大きくすればよく、W0を1とする実施形態には限定されない。例えば、被写体の色に合わせて実験的に最適な重みを設定してもよい。
【0140】
上述したように、生体内画像の血管等を対象とした場合、Rはコントラストを形成しにくいことがわかっているが、血管以外が撮像されることもあるし、被写体が血管であっても照明光等の撮像条件が変わればR信号がコントラストを形成する場合もあり得る。第1,第2の実施形態では、具体的な状況を考慮せず、一律に「R信号はコントラストを形成しにくいため寄与度を下げる」という方針で処理を行っていたが、閾値判定部328を設けることで、実際に取得された信号でコントラストが検出できるか否かを判定することが可能である。よって、たとえR信号であっても、コントラストが十分形成されているのであれば、当該信号を合成処理に活用すること等が可能になる。
【0141】
一方、TH(x)=0の場合、現フレームで取得された複数の異焦点画像はいずれも十分なコントラストが形成されていないため、そこから第1の合成マップMF
0を求めたとしても精度が低いおそれがある。よって現フレームの重みを小さく、過去フレームの重みを大きくすればよく、一例としては
図15(A)に示したようにW0=0、W1=1とすればよい。ただし、TH(x)=0の場合の重みも
図15(A)に限定されない。
【0142】
例えば、TH(x)=0の場合に
図15(C)に示した重みを用いてもよい。
図15(C)のテーブルは、第1,第2の実施形態と同様にR信号の寄与度をできるだけ下げるというスタンス、及び時系列で現フレームに近い情報を優先するというスタンスでの処理に対応する。
【0143】
ラベル=0、すなわち現フレームがRで、1フレーム過去がBの場合には、
図15(A)と同様にW0=0、W1=1とする。この場合の処理は、上述したように現フレームの信頼性が低いという観点の処理でもあるし、R信号の寄与度をできるだけ下げる処理でもある。
【0144】
また、ラベル=1、すなわち現フレームがGで、1フレーム過去がRの場合には、W0=1、W1=0とする。この場合、現フレームでコントラストが十分形成されていないため、G信号といえどもそこから求められる第1の合成マップMF
0の信頼性は十分高いとは言えないかもしれない。しかし1フレーム過去はR信号である。そのため、仮に1フレーム過去の第2の合成マップMS
1を第1,第2の実施形態の手法により求める場合、2フレーム過去のB信号から求められる第1の合成マップMF
2や、3フレーム過去のG信号から求められる第1の合成マップMF
3を用いて処理を行っている。また、
図15(C)を用いて第2の合成マップMS
1を求めている場合、上述したようにさらに1フレーム過去のB信号に対応する第2の合成マップMS
2を利用して求めている。いずれにせよ、この場合のMS
1は、見かけ上1フレーム前に求められているが、その算出処理にはさらに過去のフレームの情報を利用している。つまり、現フレームからの時間軸での差異が大きく、上述した被写体の相対的な動き等の問題が生じうる。よって
図15(C)では、現フレームでの評価値がthr以下であっても、現フレームを優先する重みを設定している。
【0145】
また、ラベル=2、すなわち現フレームがBで、1フレーム過去がGの場合には、W0=0.5、W1=0.5とする。この場合、R信号は関係しないため、Rの寄与度を下げる点の考慮は不要である。また、TH(x)=0であるから、現フレームの寄与度を下げることが好ましい一方、時系列を考慮すれば過去フレームよりも現フレームの寄与度を上げることが好ましい。ここではそのバランスをとって、現フレームと過去フレームの重みとして同じ値を設定している。
【0146】
以上により閾値判定の結果である閾値判定マップTH(x)を用いて重みを設定することができる。本実施形態の合成マップ読出し制御部3243は、直前のフレームで保存した第2の合成マップMS
1を読み出す。そして、合成マップ時系列平滑化処理部3246は、上式(6)で第2の合成マップMS
0を算出し、出力する。
【0147】
図16及び
図17が本実施形態に係る処理を説明するフローチャートである。
図16が1フレーム毎に行われる処理を表し、S401〜S403は
図9のS101〜S103と同様である。周波数成分の算出後に、上式(7)を用いて閾値判定を行い、閾値判定マップTH(x)を生成する(S404)。そして、第1の合成マップMF
0を算出し(S405)、現フレームでの第2の合成マップMS
0を算出する(S406)。
【0148】
本実施形態での第2の合成マップMS
0の算出処理を表すフローチャートが
図17である。S501、S502は
図10のS201、S202と同様である。本実施形態では、各画素に対してTH(x)の値を判定する(S503)。TH(x)=0の場合には、対応するテーブル(具体的には
図15(A)や
図15(C))を用いて重みW
iを設定する(S504)。一方、TH(x)=1の場合には、現フレームの寄与度を高くするテーブル(具体的には
図15(B))を用いて重みW
iを設定する(S505)。S506、S507は、それぞれS502、S501に対応するループの終点を表す。
【0149】
S507までで全画素について重みが設定されたので、フレームメモリから1フレーム過去の第2の合成マップMS
1を読み出し(S508)、S405で求めた現フレームの第1の合成マップMF
0と、読み出したMS
1を、設定した重みを用いて合成して、現フレームの第2の合成マップMS
0を求める(S509)。
【0150】
現フレームでの第2の合成マップMS
0が算出されたら、当該第2の合成マップMS
0をフレームメモリに保存する(S407)。その後のS408〜S411については
図9のS107〜S110と同様である。
【0151】
以上の本実施形態では、処理部320は、第iのフレームで撮像された合焦物体位置の異なる複数の撮像画像のそれぞれから評価値を求め、求められた評価値と所与の閾値を用いた閾値判定処理の結果に基づいて、重み情報を設定する。
【0152】
これにより、処理対象フレームの情報が信頼できるか否かを実際に取得された画像に基づいて判定することが可能になる。具体的には、上式(7)に示した処理を行って閾値判定マップTH(x)を求め、求めたTH(x)に基づいて重みW
iを設定すればよい。
【0153】
また、処理部320は、撮像画像のうち、評価値が閾値より大きいと判定された第1の領域では、第1の重み情報を設定し、第1の重み情報を用いて、第1の領域で用いられる第2の合成マップを求め、撮像画像のうち、評価値が閾値以下であると判定された第2の領域では、第1の重み情報とは異なる第2の重み情報を設定し、第2の重み情報を用いて、第2の領域で用いられる前記第2の合成マップを求めてもよい。
【0154】
これにより、閾値判定の結果に基づいて、画像の領域毎に第2の合成マップ算出処理に用いる重みを変更することが可能になる。具体的には、上式(7)や
図17のS502〜S506に示したように、閾値判定部328による処理は画素毎に行われるため、各画素に対していずれの重みを用いるかが決定されることになる。また、第1の重み情報とは、処理対象フレームの重みが大きい重み情報であり、例えば
図15(B)に対応する。また、第2の重み情報とは他のフレームの重みが大きい重み情報であり、例えば
図15(A)や
図15(C)に対応する。ただし、
図15(C)からもわかるように、他の観点も含めて複合的に重みが決定されてもよく、その場合第2の重み情報において、必ずしも処理対象フレームによりも他のフレームの重みが大きくなるとは限らない。
【0155】
また、処理部320は、第j(jは1≦j≦N、j≠i、j≠kを満たす整数)のフレームで求められた第1の合成マップと、第iのフレームで求められた第2の合成マップとに基づいて、第jのフレームにおける第2の合成マップを求めてもよい。
【0156】
これにより、所与のフレーム(第iのフレーム)の処理により当該フレームでの第2の合成マップが既に求められている場合には、処理対象フレーム(第jのフレーム)での処理に、既に求められている上記第2の合成マップを流用することが可能になる。第2の合成マップは複数のフレームの情報に基づいた信頼度が高い情報であると考えられるため、第2の合成マップを流用することで、異なるフレームでの第2の合成マップを容易に求めることが可能になる。一例としては、処理開始後ある程度の期間(例えば最初の数フレーム、或いは最初の1周期)において第1,第2の実施形態と同様に、第1の合成マップから第2の合成マップを求める処理を行い、その後の処理では求められた第2の合成マップを流用していくといった実施形態を考えることが可能である。
【0157】
また、第jのフレームは、第iのフレームと時間的に隣り合うフレームであってもよい。具体的には、第jのフレームは第iのフレームの1フレーム前或いは1フレーム後であってもよい。
【0158】
このようにすれば、第2の合成マップの参照先として時間的に近いフレームを指定することが可能になり、上述したように撮像部と被写体との相対的な動きによる影響等を抑止することができる。
【0159】
以上、本発明を適用した3つの実施の形態1〜3およびその変形例について説明したが、本発明は、各実施の形態1〜3やその変形例そのままに限定されるものではなく、実施段階では、発明の要旨を逸脱しない範囲内で構成要素を変形して具体化することができる。また、上記した各実施の形態1〜3や変形例に開示されている複数の構成要素を適宜組み合わせることによって、種々の発明を形成することができる。例えば、各実施の形態1〜3や変形例に記載した全構成要素からいくつかの構成要素を削除してもよい。さらに、異なる実施の形態や変形例で説明した構成要素を適宜組み合わせてもよい。また、明細書又は図面において、少なくとも一度、より広義または同義な異なる用語と共に記載された用語は、明細書又は図面のいかなる箇所においても、その異なる用語に置き換えることができる。このように、発明の主旨を逸脱しない範囲内において種々の変形や応用が可能である。