以下、添付図面に従って本発明に係る画像処理装置及び方法の好ましい実施形態について詳説する。ただし、発明の範囲は図示例に限定されるものではない。
[第1実施形態]
OCT装置で被検眼(検査対象である眼)を撮影する場合、網膜上に血管や白斑等が存在すると測定光の強度が低下するため、得られた画像上で網膜色素上皮層が減弱し、層を検出することが難しくなる。そこで、本実施形態では、被検眼の断層像から偽像領域を判定し、該領域内の統計量に応じて該領域を画像補正することを特徴とする。以下、添付図面に従って本発明に係る画像処理装置及び方法の好ましい実施形態について詳説する。ただし、発明の範囲は図示例に限定されるものではない。
図2は、本実施形態に係る画像処理装置10と接続される機器の構成図である。図2に示すように、画像処理装置10は、断層像撮像装置20と、光ファイバ、USBやIEEE1394等のインターフェイスを介して接続されている。断層像撮像装置20は、データサーバ40と、イーサネット(登録商標)等によるローカル・エリア・ネットワーク(LAN)30を介して接続されている。なお、これらの機器との接続は、インターネット等の外部ネットワークを介して接続される構成であってもよい。断層像撮像装置20は、眼部の断層像を撮像する装置であり、例えばタイムドメイン方式のOCTやフーリエドメイン方式のOCTからなる。断層像撮像装置20は、不図示の操作者による操作に応じて、不図示の被検眼の断層像を3次元的に撮像する。そして、得られた断層像を画像処理装置10へと送信する。データサーバ40は、被検眼の断層像や被検眼の画像特徴量などを保持するサーバである。データサーバ40は、断層像撮像装置20が出力する被検眼の断層像や、画像処理装置10が出力する解析結果を保存する。また、画像処理装置10からの要求に応じて、被検眼に関する過去のデータを画像処理装置10へと送信する。
なお、本実施形態では網膜色素上皮層候補を取得する場合について説明するが、必ずしも網膜色素上皮層の外側境界2に限定されるわけではない。他の層境界(網膜色素上皮層の内側境界(不図示)、視細胞内節外節境界3、もしくは外境界膜(不図示)等)を検出してもよい。また、黄斑部ではなく視神経乳頭部において層候補の取得や偽像領域の判定、画像補正を行う場合は、乳頭中心部(陥凹部)のように層が存在しない領域をあらかじめ公知の部位認識手法を用いて処理対象領域から除外しておけばよい。
次に、図3を用いて、本実施形態に係る画像処理装置10の機能構成を説明する。図3は画像処理装置10の機能ブロック図である。図3に示す通り、画像処理装置10は、断層像取得部310、記憶部320、画像処理部330、表示部340、及び結果出力部350、指示取得部360で構成される。さらに、画像処理部330は層候補検出部331、偽像領域判定部332、画像補正部333を備える。画像処理装置10を構成する各ブロックの機能については、図4のフローチャートを参照して本実施形態の画像処理装置10が実行する具体的な処理の手順と関連づけて説明する。
S410において、断層像取得部310は、断層像撮像装置20に断層像の送信を要求し、断層像撮像装置20から送信される断層像を取得する。そして、取得した情報を記憶部320へと送信する。記憶部320は、断層像を格納する。S420において、層候補検出部331は、記憶部320から断層像を取得し、該断層像から内境界膜1及び網膜色素上皮層候補点列{Pi}を検出する。そして、これらの結果を記憶部320へと出力する。
網膜層は層ごとに輝度値が異なるため、隣接する2層の境界には濃度値のコントラスト(エッジ)が生じる。そこで、このコントラストに注目して、層の境界を抽出する。このようなコントラストの存在する領域を抽出する手法には様々なものがあるが、例えばコントラストをエッジと見なし、エッジを検出することで層位置を抽出することができる。具体的には、エッジ検出フィルタを断層像に適用することでエッジ成分を検出し、硝子体側から眼底の深度方向にエッジを探索し最初のピーク位置を硝子体と網膜層との境界、最大のピーク位置を網膜色素上皮層境界とする。
また、Snakesやレベルセット法のようなDeformable Modelを適用して層の境界を検出してもよい。レベルセット法の場合、検出対象の領域の次元よりも1次元高いレベルセット関数を定義し、検出したい層の境界をそのゼロ等高線であるとみなす。そして、レベルセット関数を更新することで輪郭を制御し、層の境界を検出する。他には、グラフカットのようなグラフ理論を用いて層の境界を検出してもよい。この場合、画像の各ピクセルに対応したノードと、sinkとsourceと呼ばれるターミナルを設定し、ノード間を結ぶエッジ(n-link)と、ターミナル間を結ぶエッジ(t-link)を設定する。これらのエッジに対して重みを与えて、作成したグラフに対して、最小カットを求めることで、層の境界を検出する。
上記の層位置抽出手法は、いずれも3次元断層像全体を処理対象として3次元的に適用してもよいし、入力した3次元断層像を2次元断層像の集合と考え、夫々の2次元断層像に対して独立的に適用してもよい。なお、層の境界を検出する方法はこれらに限定されるものではなく、眼部の断層像から層の境界を検出可能な方法であれば、いずれの方法を用いてもよい。
続くS430において、偽像領域判定部332が、S420で検出した網膜色素上皮の候補点列{Pi}の連結性に基づいて各層候補点付近で偽像が発生しているかどうか(偽像領域かどうか)の判定を行う。そして、偽像領域と判定された場合には偽像領域内の輝度値に関する統計量を求める。さらに、その判定結果を記憶部320へと出力する。本ステップの偽像領域判定処理については、図6に示すフローチャートを用いて後に詳しく説明する。
続くS440において、偽像領域判定部332は、S430で得た判定に応じて処理の分岐を行う。すなわち、偽像が発生していると判定した層候補点に対しては、画像補正部333に所定の処理の実行を指示する信号を送信する(処理フローはS450へと進む)。一方、偽像が発生していない偽像領域以外の領域(以下では真像領域と呼ぶ)と判定した場合には、表示部340に所定の処理の実行を指示する信号を送信する(処理フローはS455へと進む)。
更にS450において、画像処理部330は、所定の層の候補点付近で偽像が発生している場合の解析処理を実行する。本ステップの処理については、図7に示すフローチャートを用いて後に詳しく説明する。一方、S455において、表示部340は、所定の層の候補点付近で偽像が発生していない場合の処理として、真像領域に関して断層像の表示を行う通常の画像表示を行う。
S460において、指示取得部360は、披検眼に関する今回の処理の結果を、データサーバ40へ保存するか否かの指示を外部から取得する。この指示は、例えば不図示のキーボードやマウス等を介して、操作者により入力される。そして、保存が指示された場合はS470へと処理を進め、保存が指示されなかった場合はS480へと処理を進める。その後、S470において、結果出力部350は、検査日時と、披検眼を同定する情報と、披検眼の断層像と、画像処理部330によって得られた解析結果とを関連付けて、保存すべき情報としてデータサーバ40へと送信する。
S480において、指示取得部360は、画像処理装置10による断層像の解析処理を終了するか否かの指示を外部から取得する。この指示は、不図示のキーボードマウス等を介して、操作者により入力される。処理を終了する指示を取得した場合には、画像処理装置10はその処理を終了する。一方、処理を継続する指示を取得した場合には、S410に処理を戻して、次の披検眼に対する処理(あるいは、同一披検眼に対する再処理)を実行する。以上によって、画像処理装置10の処理が行われる。
次に、図5を用いてS430で実行される偽像領域判定処理の手順を説明する。図5は、偽像領域を含む断層像の一例を示しており、ここでは点線で囲まれた領域5が偽像領域として示されている。このような偽像が発生している領域の特徴として以下の2つが挙げられる。なお、図5の断層像では、網膜の深度方向に対応する断層像の縦方向をz軸、該深度に直交する横方向をx軸として考えており、z軸方向はAスキャン方向に該当する。
(1)該領域5内の輝度値の平均や分散、最大値が、真像領域内の場合に比べていずれも小さい。
(2)該領域5を含む領域で網膜色素上皮層候補点を求めた場合、網膜色素上皮層以外の高輝度領域、例えば網膜血管領域が誤抽出されることによってPiとPi+1のように層候補点間で非連結な部分が発生しやすい。
そこで、本実施形態ではこれらの特徴を利用して、以下のように偽像領域の判定を行う。
(i) 層候補点間が非連結である候補点の組を求める。
(ii) 非連結と判定された層候補点の組のどちら側で偽像が発生しているかを調べる。
(iii) 偽像が発生している側の層候補点列を次の非連結点に出会うまで追跡する。
(iv) 該追跡した層候補点を通るAスキャンライン上で、該層候補点より深層側における輝度値の統計量(平均、分散、最大値等)を求める。ここで、深層側とは、図5中に2つの点を考えた場合、z軸方向の座標値が大きいほうを指す。
(v) 該非連結な候補点を端点とする輝度統計量の低い領域を偽像領域とする。さらに、該輝度統計量は、偽像領域内の輝度減弱の程度を反映した量と考えられるので、S450において偽像領域内の画像処理法を決定する際に利用する。
以下、網膜色素上皮の候補点列{Pi}での偽像判定を行う具体的な方法を図6のフローチャートを参照して説明する。ここでは、処理対象である3次元断層像を2次元断層像の集合と考え、各々の2次元断層像に対して以下の2次元画像処理を実行する。
S610では、まず式1に示すような各層候補点間の連結度Cを全ての層候補点に対して求める。ここで、iは層候補点番号を表し、Siは、図5に示す層候補点Pi、Pi+1の間を補間した曲線分上の画素における輝度値の統計量を表す。また、Sは層候補点列全体{Pi}がなす曲線分上の画素における輝度値の統計量であり、Tsは閾値を表す。ここでは、輝度値の統計量Si、Sとして、各々定義された曲線分上の画素における輝度値の平均を用いる。式1において、|Si−S|が閾値Ts以下であれば連結していると判定される。
なお、輝度の統計量は上記に限るものではなく、他の統計量、例えば最大値、分散、最頻値、中央値などでもよい。あるいはこれらの統計量の組み合わせによって連結度を判定してもよい。またSとしてあらかじめ撮像装置や被験者ごとに求めた所定の層の輝度値に関する統計量を用いてもよいし、あらかじめ設定された標準値を用いてもよい。ここで、連結度の判定に用いる指標としては層候補点間を結ぶ曲線分上の輝度値に関する統計量を用いたが、これに限らない。例えば、血管や白斑を誤検出して非連結となっているような候補点の近傍ではz軸方向に平行なエッジ(図5の7)が発生し、このような特徴をとらえる指標としてAスキャン方向に関する複数の輝度プロファイル間の相違度を利用してもよい。なお、輝度プロファイルとは図1の(a)または(b)の右側に示すような、Aスキャン方向における空間的位置と該位置における輝度値との関係を示すグラフを指し,通常は隣接する輝度プロファイル同士の相違は小さい。
該輝度プロファイル間の相違度に関する指標の具体的な計算方法は、例えば式2のように表される。
(1)図5に示すようなPi、Pi+1'、Pi''、Pi+1''の4点で囲まれるような局所領域内の各画素で、x軸方向に関する輝度値の差分Dを計算する。なお、Pi''は、Piと同じx座標値を持ち、最大のz座標値を持つ点である。また、Pi+1''はPi+1と同じx座標値を持ち、最大のz座標値を持つ点である。
(2)閾値Td1以上の大きさを持つDのみ加算した場合の合計値ΣDを求める。エッジが広範囲に、はっきり表れている場合ほど、ΣDの大きさが大きくなる。
(3)合計値ΣDが閾値Td2より大であれば、非連結であると判定する。
また、上記の複数の指標を組み合わせて連結度を判定してもよい。
次に、S620では、非連結と判定された層候補点の組のどちら側で偽像が発生しているかを調べ、偽像領域の端部を特定する。偽像領域端部の特定処理は各々の非連結な層候補点の組に対して実行される。具体的には、図5のPi、Pi+1の組の場合、
(i)Pi を通るAスキャンライン上における、Piよりz軸の正方向側での輝度値の統計量を求める。
(ii)Pi+1 を通るAスキャンライン上における、Pi+1'よりz軸の正方向側での輝度値の統計量を求める。なお、Pi+1'は、Pi+1と同じx座標を持ち、Piと同じz座標を持つ点である。
(iii)両統計量を比較し、より小さい統計量を持つ候補点側で偽像が発生していると判定する。ここで判定された小さい統計量を持つ候補点を偽造領域の端部と定義する。
この例においては、Pi+1側の方が該輝度値の統計量が小さくなるので、Pi+1側で偽像が発生していると判定される。なお、輝度値の統計量を求める際に用いる点の組の選び方は上記の方法に限るものではない。例えば図5に示すようにPi'(Piと同じx座標を持ち、Pi+1と同じz座標を持つ点)とPi+1を用いて判定してもよい。
続くS630では、偽像が発生している側の層候補点を次の非連結点に出会うまで追跡し、偽像領域の範囲を求める。例えば、図5のPi+1に対してはPi+3までが偽像領域と判定される。
S640では、偽像領域と判定された領域において、各層候補点よりz軸の正方向側にある領域の輝度値の平均や分散、最大値を求める。ただし、輝度値に関する統計量を求める空間的範囲はこれに限らない。例えば、偽像領域内を任意の局所領域に分割して各々の領域ごとに該統計量を求めてもよい。この場合は、層候補点の追跡処理と、輝度信号に関する統計量の計算処理とを必ずしも別ステップとして実行する必要はなく、層候補点を任意の範囲追跡するごとに輝度信号の統計量を計算してよい。
以上より、非連結部を端とした偽像領域の範囲と、偽像領域における輝度値に関する統計量が求められる。なお、偽像領域の判定は、上記の方法に限らない。例えばBスキャン像(y軸に垂直な断層像)に対してだけでなくx軸に垂直な断層像上でも同様に偽像領域判定を行い、いずれの判定でも偽像領域と判定された場合に偽像領域と判定してもよい。あるいは、3次元断層像を対象として3次元的に適用してもよい。
次に、図7を参照して、S450で実行される処理の手順を説明する。
S710において、画像補正部333は偽像領域判定部332によって求められた偽像領域における輝度値に関する統計量を基に偽像領域における輝度値の補正を行う。輝度値の補正方法として、ここでは偽像領域におけるヒストグラムの変換に基づく方法について説明する。具体的には、偽像領域内の輝度平均と分散を真像領域における輝度平均及び分散と各々同一に揃える。すなわち、補正前の信号をx、補正後の信号をy、偽像領域における輝度値の標準偏差、平均値を各々Sf、Af、偽像領域を除いた画像全体における輝度値の標準偏差、平均値を各々St、Atとすると
y = (St/Sf)*(x-Af)+At のように補正する。なお、画像補正の方法はこれに限らない。例えば、以下の(i)から(iii)に示すような方法で画像補正を行ってよい。あるいは、偽像領域における補正前の輝度値と補正後の輝度値との間に増加関数の関係が成り立つような補正であれば任意の画像補正を行ってよい。
(i)例えば偽像領域内の最大輝度を真像領域の最大輝度に合わせるよう、輝度値を線形変換する。この場合、画像補正後の偽像領域の輝度値をy、画像補正前の偽像領域の輝度値をx、偽像領域内の最大輝度をImaxF、真像領域内の最大輝度をImaxTとすると、
y = ImaxT * (x - IminF)/( ImaxF - IminF) のように補正する。
(ii)例えばSobelフィルタやラプラシアンフィルタのようなエッジ強調処理や、高周波成分のみを通過させるような空間周波数フィルタ処理を行う。
(iii)層構造を強調するような、ヘッセ行列の固有値に基づく層構造強調フィルタ処理を行う。これは、ヘッセ行列の3つの固有値(λ1、λ2、λ3)の関係に基づいて、3次元濃淡分布の2次局所構造を強調するフィルタである。ヘッセ行列は式3で与えられるような画像の濃淡値Iの2階偏導関数で構成される正方行列である。式4にヘッセ行列の固有値の関係を示し、式5に層構造を強調するための固有値の条件式を示す。
これらで求めた3つの固有値から、以下の式6を求めることで、網膜の層構造を強調することが出来る。ここで、式6におけるω(λs;λt)は重み関数であり、それを式7に示す。式7におけるγとαは重みである。
なお、上記のような画像補正方法は必ずしも単独で実行する必要はなく、組み合わせて実行してもよい。また、S640 にて偽像領域内を複数の局所領域に分割して該領域ごとに輝度値に関する統計量を求めている場合は、画像補正も局所領域ごとに実行してよい。
続くS720において、表示部340は、S710における画像の補正結果を断層像に重畳して表示する。偽像領域の境界を線で示す場合には、夫々の境界に対して予め定めた色の線を用いるか、境界を明示的に示さずに層に半透明の色をつけて提示してもよい。また、GUI等によって指定した領域に関して、補正前の画像と補正後の画像を切り替えたり、S640で求めた偽像領域内の輝度値に関する統計量の情報を表示してもよい。以上によって、S450の処理が実行される。
以上で述べた構成によれば、画像処理装置10は、偽像領域を特定し、該領域における輝度値に関する統計量等を基に画像補正を行うことで、偽像領域に存在する層を検出しやすい画像を得ることができる。
[第2実施形態]
本実施形態は、第1実施形態のように偽像領域における画像補正を行うだけでなく、該補正された画像から所定の層の検出を行うようにしたものである。この実施形態は、偽像が発生して輝度が減弱している領域であっても、残存しているエッジ情報が検出しやすくなるように画像補正してそのエッジ情報を検出することで、より正確な層位置を求められることに対応している。
本実施形態に係る画像処理装置10と接続される機器の構成は、第1実施形態の場合と同様であるため、説明を省略する。本実施形態に係る画像処理装置10の機能ブロックは、図8に示す通りである。図8において本実施形態の画像処理部801は、層決定部334が追加されている点で第1実施形態の画像処理装置10の画像処理部330の構成と異なっている。
以下に、本実施形態の画像処理フローを説明する。ただし、本実施形態の処理フローは、S450とS455を除いて図4のフローチャートと同じである。そこで、ここではS450とS455の説明のみを行い、他のステップの説明は省略する。
まず、S450では、偽像領域における画像処理を行う。以下、本ステップにおける処理の詳細を、図9を用いて説明する。
まず、S1010では、画像補正部333が偽像領域判定部332によって求められた偽像領域における輝度値に関する統計量を基に、該領域における輝度値の補正を行う。なお、この処理はS710における画像補正の処理と同様であるので詳細な説明は省略する。続くS1020では、層決定部334が画像補正部333によって画像補正された領域の輝度情報を基に、抽出対象である層の画像特徴を取得し、それらの特徴点を接続して層位置とする。
例えば、網膜色素上皮層はもともと各Aスキャン線上で最も輝度が高い領域であり、偽像領域内でも輝度が高くなりやすい。そこで、画像補正された領域の各Aスキャン線において、層候補点よりz軸の正方向側にある輝度最大の画素をx軸方向に接続することにより層位置を決定する。ただし、画像補正結果から層を検出する方法は上記に限定されるものではない。
例えば、画像補正された領域の各Aスキャン線において、層候補点よりz軸の正方向側にある輝度値が所定値以上の画素のうち、もっともz座標が大きいものをx軸方向に接続し層を抽出してもよい。あるいは、偽像領域の各Aスキャン線上の各画素において、画像補正前後の輝度値の線形和を求め、その和が最大となるような画素をx軸方向に接続して、層を抽出してもよい。
あるいは、偽像領域の各Aスキャンラインにおいて網膜色素上皮層の候補点を複数選択し、該層候補点全体を偽像領域における層候補点集合とする。該層候補点集合の中から得られる層候補点列の各組み合わせに対して、
(i)該層候補点列の輝度値の和の大きさ
(ii)該層候補点列形状の滑らかさ
に関する評価関数を設定し、両評価関数値の線形和が最大となる層候補点の組み合わせを層位置と決定してもよい。ここで、前記層候補点の組み合わせを選択する際には、偽像領域内の層候補点列だけでなく、該領域近傍の層候補点も前記層候補点列に含めて評価関数値を計算してよい。
続くS1030では、求めた網膜色素上皮層に相当する層候補点列と、S420にて求めた内境界膜1との間の距離を各x、y座標において求めることで、網膜層厚を計測する。ただし計測内容はこれに限らず、例えば層形状の凹凸を調べるために層候補点間の角度分布を求めてもよい。また計測する層厚としては網膜層厚に限らず、視細胞層など他の層形状の解析を行う構成であってもよい。そして、求めた層厚や層形状の情報は記憶部320へと出力される。
続くS1040では、表示部340は、
(i) 層の決定結果
(ii) 層形状の計測結果
(iii) 偽像領域の範囲及び該領域における画像補正結果
を断層像に重畳して表示する。
(i)については、S1020における層決定結果を断層像に重畳して表示する。層の境界を線で示す場合には、夫々の境界に対して予め定めた色の線を用いるか、層位置を明示的に示さずに層の領域に半透明の色をつけて提示してもよい。なお、これらの表示を行う際には、注目する断面をGUI等によって選択可能な構成であることが望ましい。また、公知のボリュームレンダリングの技術を用いて、3次元的に表示してもよい。
(ii)について、表示部340は層形状の計測結果として、3次元断層像全体(xy平面)に対する層厚の分布マップを表示する。ただし表示法はこれに限らず、注目断面における各層の面積を表示してもよいし、所定の層全体の体積を表示してもよい。あるいは、操作者がxy平面上において指定した領域における体積を算出して表示してもよい。
(iii)についてS1020において、検出された層の信号が弱い場合など、検出された層の信頼性が低い場合に層を検出せず画像補正結果を断層像に重畳して表示する。ただし画像補正結果の表示はこれに限らず、層検出結果が良好な場合にも表示部340に表示してよい。
以上のようにして、S450の偽像領域用画像処理が実行される。次に、S455における真像領域用画像処理について説明する。S455では、真像領域における処理として
(i)S420において取得された層候補点列を層位置とし、該層位置から層形状を計測し、
(ii)該層位置及び層形状の計測結果を表示部340に表示する。
そこで、以下では本ステップにおける処理の詳細を説明する。
まず、図9のS1030と同様にして層形状の計測を行う。ただし、真像領域用画像処理の場合、解析対象が補正されていない画像である点がS1030の場合と異なる。続いて、図10のS1040と同様にして表示部340が結果表示を行う。ただし、真像領域用画像処理の場合、画像補正結果の表示を行わない点がS1040の場合と異なる。
以上述べた構成によれば、画像処理装置10は、特定した偽像領域の画像補正を行い、該補正結果から層位置に相当する画像特徴を検出することで、偽像領域内の層位置をより正確に求めることができる。
[第3実施形態]
本実施形態は第1及び第2実施形態のように断層像のみを用いて偽像領域を判定せず、被検眼の断層像から投影像を作成し、該投影像から抽出した組織や病変の位置情報を断層像上に逆投影して、予め偽像候補領域を絞り込むことを特徴とする。ここで一般的には、血管(もしくは出血)等が原因で発生する偽像領域の位置情報は、断層像のみから求めるよりも、投影像から求めるほうが簡単である。そこで、本実施形態では、投影像から血管(出血)領域を抽出してその位置情報を断層像上にマッピングし、その領域の周辺で偽像領域の端部を探索、特定することにより高精度に偽像領域の範囲を求める場合を説明する。
本実施形態に係る画像処理装置10と接続される機器の構成は、第1の実施形態と同様であるため、説明を省略する。図10は、本実施形態に係る画像処理装置10の機能ブロックである。図10において、画像処理部1001は、投影像生成部335及び特徴抽出部336を有する点で、第1実施形態の画像処理装置10の画像処理部330と異なっている。残りの各部に関しては図3と同じであるため、説明を省略する。
次に、図11に示すフローチャートを用いて、本実施形態での画像処理の内容を説明する。なお、本フローチャートは図4のフローチャートと大部分が共通し、共通する箇所には同一の参照番号を付している。共通箇所については、その説明を省略する。本実施形態では、S420の層候補検出処理とS430の偽像領域判定処理の間に、投影像生成処理S1301と、特徴抽出処理S1302が行われる点で第1実施形態とは異なる。
まず、S1110では、投影像生成部335において断層像を投影した画像を生成する。具体的には断層像上の各画素における輝度値をz軸の正方向に単純加算した値を投影像の画素値とする。ただし、投影像の画素値はこれに限らず、該輝度値の和を加算した画素数で割ってもよい。あるいは各深度位置における輝度値の最大値や最小値を投影像の画素値としてもよい。またz軸方向に全画素の輝度値を加算する必要はなく、任意の範囲、もしくは特定の層間のみ加算するようにしてもよい。
続くS1120では、投影像生成部335によって生成された投影像から網膜血管などの被検眼内の生体組織あるいは病変などの存在する特徴領域を抽出する。網膜血管は細い線状構造を有しているため、線状構造を強調するフィルタを用いて網膜血管を抽出する。ここでは、線分を構造要素としたときに構造要素内での画像濃度値の平均値と構造要素を囲む局所領域内での平均値の差を計算するようなコントラストに基づく線分強調フィルタを用いる。ここでフィルタの処理結果として得られる多値領域をそのまま血管抽出結果としても良いし、ある閾値で2値化した領域を抽出結果としてもよい。
ただし、線状構造を強調する方法はこれに限らない。例えば、SobelフィルタやLaplacianフィルタのような差分型フィルタを用いてもよい。また濃度値画像の画素ごとにヘッセ行列の固有値を計算し、結果として得られる2つの固有値の組み合わせから線分状の領域を抽出してもよい。さらには単純に線分を構造要素とするトップハット演算など、任意の公知の血管抽出法を用いてよい。
このようにしてS1120において求められた投影像上の特徴領域(x、y)を断層像上に逆投影すると、図12の点線領域8に示すような逆投影領域が得られる。一般に網膜血管よりz軸の正方向側では輝度の減弱が発生しやすい。従って抽出された特徴の(x - y方向の)位置を断層像上に逆投影した場合、逆投影された点線領域8内には偽像領域5が含まれている可能性が高いと考えられる。ただし、誤抽出された領域が逆投影された場合には逆投影領域内での輝度の減弱は発生しない。また、正しく抽出された網膜血管領域を逆投影した場合でも逆投影領域下の輝度減弱が軽微で層抽出にほとんど影響を与えない場合もある。
そこで逆投影領域内及び該領域の境界近傍において偽像が発生しているか否かを判定し、偽像領域である場合には該領域内での輝度値に関する統計量を求める。よってS430での偽像領域の判定法は、基本的に第1実施形態のS610からS640の場合と同じであるが、連結度の算出対象となる層候補点の範囲が第1実施形態と異なっている。具体的には、連結度の算出を全ての層候補点について実行するのではなく、逆投影領域内及び該領域のx−y方向に関する近傍において実行する。
以上で述べた構成によれば、本実施形態の画像処理装置10では、断層像と投影像から偽像領域を特定し、該領域において輝度統計量等を基に画像補正を行うことにより、偽像領域に存在する層領域をより検出しやすい画像を得ることができる。
[第4実施形態]
本実施形態は第3実施形態において偽像領域を判定した後、偽像領域における画像補正を行うだけでなく、該補正された画像から所定の層の検出を行うようにしたものである。本実施形態では、以下の点にに対応している。
(i) 血管(もしくは出血)などによって偽像が発生している場合においては、投影像から求めた血管(出血)領域の位置情報を断層像上にマッピングし、その領域の周辺で偽像領域の端部を探索、特定した方がより高精度に偽像領域の範囲を求められる。
(ii) 偽像が発生して輝度が減弱している領域であっても、残存しているエッジ情報が検出しやすくなるよう画像補正してそのエッジ情報を検出することで、より正確な層位置を求められる。
本実施形態に係る画像処理装置10と接続される機器の構成は、第3実施形態と同様であるため、説明を省略する。また、本実施形態に係る画像処理装置10の機能ブロックを図13に示す。本実施形態の画像処理部1301は、層決定部334を持つ点で、第3実施形態の画像処理部1001と異なっている。本実施形態での画像処理の内容は、S450とS455における処理を除けば図13の画像処理内容と同じである。そこで、本実施形態S450とS455における処理のみを説明し、他のステップの説明を省略する。
S450では、偽像領域における画像処理として画像補正、層決定、層形状計測及び結果表示を行う。本ステップにおける処理は、第2実施形態におけるS1010からS1040の場合と同様であるので詳細は省略する。また、S455では、偽像が発生していない場合の処理として、S420において取得された層位置から層形状を計測し、該層位置及び層形状計測結果を断層像に重畳して表示する。重畳表示の方法についての詳細は、第2実施形態におけるS1110からS1120における場合と同様であるので詳細は省略する。
以上述べた構成によれば、本実施形態の画像処理装置10では、断層像と投影像から偽像領域を特定し、該領域における画像補正を行う。該補正結果から層の持つ画像特徴を検出することで、該領域内の層位置をより正確に求めることができる。
[第5実施形態]
本実施形態では第3実施形態に対して、被検眼の表面像もしくは投影像の少なくとも一方から抽出した組織や病変の位置情報を断層像上に逆投影し、あらかじめ偽像候補領域を絞るようにしたものである。これは、特に白斑のように表面像から抽出しやすい病変が発生している場合、表面像を利用して白斑領域を求め、その周辺で偽像領域の端部を探索、特定した方がより高精度に偽像領域の範囲を求められるからである。
本実施形態に係る画像処理装置10と接続される機器の構成を図14に示す。本実施形態では断層像撮像装置20に加えて、表面像撮像装置50も構成に含まれる点が第3実施形態と異なっている。表面像撮像装置50は、眼部の表面像を撮像する装置であり、例えば眼底カメラや走査型レーザー検眼鏡(SLO;Scanning Laser Ophthalmoscope)である。また、本実施形態に係る画像処理装置10の機能ブロックを図15に示す。本実施形態の画像処理装置10は表面像取得部315を有し、更に画像処理部1501が位置合せ部337を有する点で、第3実施形態の画像処理装置10の構成と異なっている。
次に、本実施形態における画像処理部1501における画像処理を、図16のフローチャートを参照して説明する。本実施形態の画像処理フローは、図11に示したものとほぼ同様である。但し、S1610からS1650の処理が異なっている。そこで、以下では、これらのステップにおける処理を説明する。
S1610では、断層像取得部310による断層像の取得以外に、表面像取得部315が表面像撮像装置50に表面像の送信を要求し、表面像撮像装置50から送信される表面像を取得する。ここでは、表面像として眼底カメラ像が入力されているものとする。そして、取得した情報を記憶部320へと送信する。
S1110の投影像生成処理に続くS1620では、表面像取得部315によって取得された表面像から、特徴抽出部336が血管などの組織や白斑などの病変領域を抽出する。網膜血管は線状構造を有しているため、線状構造を強調するようなフィルタを用いて抽出する。線状構造の抽出手法はS1120と同様であるので省略する。また、白斑は粒状の高輝度領域として存在するため、トップハット変換などのモルフォロジ-演算によって求める。ここで白斑領域はモルフォロジ演算によって高輝度な多値領域として得られ、該多値領域そのものを抽出結果としてもよいし、ある閾値で2値化した領域を抽出結果としてもよい。ただし、白斑の抽出法はこれに限らず、表面像の輝度値や公知のコントラストを強調するようなフィルタの出力結果を特徴量として、Support Vector Machineなどの識別器やAda Boostなど識別器のアンサンブルによって白斑を識別してもよい。
続くS1630では、投影像の座標と表面像の座標とを対応付けるために、位置合せ部337において投影像と表面像との位置合せを行う。位置合わせの際には、2つの画像間の類似度を表す評価関数を事前に定義し、この評価値が最も良くなるように画像の変形を行う。類似度評価手法として、ここでは相互情報量を用いて画素値ベースで評価する方法を用いる。ただし、これに限らず、平均2乗誤差や相関係数、あるいは特徴抽出部336において表面像及び投影像から抽出した血管領域同士の重なる面積、血管の分岐部同士の距離などを用いてもよい。また、画像の変形としては、アフィン変換を想定して並進や回転、拡大率を変化させることで実現する。
続くS1640では、まずS1620において求められた表面像からの血管もしくは白斑抽出結果を、S1630で求められた位置合わせパラメータを用いて断層像上に逆投影する。逆投影領域として、図17(a)の点線領域8に示すような領域が得られる。一般に網膜血管よりz軸の正方向側では輝度の減弱がしばしば発生するため、特徴抽出された領域の(x - y方向の)座標及び輝度を断層像上に逆投影すると、逆投影された点線領域8内には偽像が含まれている可能性が高くなる。ただし、本実施形態のように表面像から白斑を抽出した場合には、白斑候補領域の中にドルーゼンなどの粒状の高輝度領域が誤抽出される可能性があり、その場合には図17(b)に示すように層領域の輝度減弱は発生しない。また正しく抽出された網膜血管領域を逆投影した場合でも逆投影領域下の輝度減弱が軽微で、層抽出にほとんど影響を与えないこともある。そこで逆投影領域内及び該領域の境界近傍において偽像が発生しているか否かを判定し、偽像が発生している場合には該領域内の輝度信号の統計量を求める。
偽像領域の判定法は基本的に第1実施形態のS610からS640 の場合と同じであるが、連結度の算出対象となる層候補点の範囲が第1実施形態と異なっている。具体的には、連結度の算出を全ての層候補点について実行するのではなく、逆投影領域内及び該領域のx−y方向に関する近傍において実行する。なお、偽像領域の判定を断層像のみを参照して決定するのではなく、投影像や眼底像から得られる情報も参照して決定してもよい。例えば、投影像から得られた網膜血管領域と眼底像から得られた網膜血管領域が重なり合っている場合に該領域の血管らしさが大きいと考え、該領域の端部を非連結と判定してもよい。あるいは、断層像から求めた連結度の値と、該血管領域の重なり具合の値の線形和を計算し、閾値で2値化して連結度を判定してもよい。
S1650の偽像領域用画像処理では、図7に示すように、画像補正後に該補正結果を表示するという第1実施形態と基本的には同様の手順であるので詳細は省略する。ただし本実施形態では、偽像領域の画像補正の際に眼底像から得られる情報も参照してよい。例えば眼底像上で白斑の輝度が非常に高い場合、断層像上でも層候補点よりz軸の正方向側で輝度がより減弱する可能性が高くなるため、白斑領域の輝度信号値に比例して輝度値を増幅もしくは強調する。ここでは、白斑領域の輝度値として眼底像上の該領域の画素値を直接参照する。ただし白斑領域の輝度値としてはこれに限らず、モルフォロジ演算等により得られる処理結果の値(多値データ)を参照してもよい。
以上述べた構成によれば、本実施形態の画像処理装置10は、表面像や投影像を用いて特定された偽像領域において、輝度値の統計量を基に画像補正を行うことで、該領域に存在する層領域をより検出しやすい画像を得ることができる。
[第6実施形態]
本実施形態では第5実施形態において偽像領域の画像補正を行うだけでなく、該補正された画像から所定の層の検出を行うようにしたものである。この実施形態は、特に白斑によって偽像が発生している場合においては、以下の事項を利用する。
(i) 表面像から求めた白斑領域の位置情報を断層像上にマッピングし、その領域の周辺で偽像領域の端部を探索、特定した方がより高精度に偽像領域の範囲を求められる。
(ii) 偽像が発生して輝度が減弱している領域であっても、残存しているエッジ情報が検出しやすくなるよう画像補正してそのエッジ情報を検出することで、より正確な層位置を求められる。
本実施形態に係る画像処理装置10と接続される機器の構成は第5実施形態の場合と同じである。また、本実施形態に係る画像処理装置10の機能ブロックを図18に示す。本実施形態の画像処理部1801は、層決定部334を持つ点で第5実施形態の画像処理部1501とは異なっている。また、本実施形態での画像処理フローは、S1650とS455における処理を除けば、図16の画像処理フローと同じである。そこで、ここではS1650とS455における処理のみを説明し、他のステップの説明を省略する。
S1650では、偽像領域における画像処理として画像補正、層決定、層形状計測及び結果表示を行う。本ステップにおける処理は、実施形態2におけるS1010からS1040の場合と同様であるので詳細は省略する。ただし、本実施形態ではS1010において、眼底像から得られる情報も用いて画像補正を行ってよい。画像補正の際に眼底像から得られる情報を参照する具体的な手順は、実施形態5におけるS1650の場合と同様であるので省略する。
S455では、偽像が発生していない場合の処理として、S420において取得された層位置から層形状を計測し、該層位置及び層形状計測結果を断層像に重畳して表示する。ここでの重畳表示の方法は、第2実施形態における場合と同様であるので詳細は省略する。
以上述べた構成によれば、画像処理装置10は、表面像と投影像から特定された偽像領域における画像補正を行う。該補正結果から層の持つ画像特徴を検出することで、該領域内の層位置をより正確に求めることができる。
[第7実施形態]
本実施形態では、被検眼の断層像から偽像領域を判定し、偽像領域内の輝度値や該領域周辺の層形状も考慮したうえで双方の情報を用いて偽像領域内の層位置を求めることを特徴とする。
本実施形態に係る画像処理装置10と接続される機器の構成は、第1実施形態の図2に示したものと同様であるため、説明を省略する。本実施形態に係る画像処理装置10の機能ブロックは、図19に示す通りである。図19において本実施形態の画像処理部1901は、画像補正部333の代わりに画像処理法決定部1910を備え、さらに層決定部334が追加されている点で第1実施形態の画像処理装置10の画像処理部330の構成と異なっている。また、画像処理法決定部1910は、輝度利用判断部1911と評価関数設定部1912を有している。画像処理装置10を構成する各ブロックの機能については、図20のフローチャートを参照して本実施形態の画像処理装置10が実行する具体的な処理の手順と関連づけて説明する。
以下に、本実施形態の画像処理フローを説明する。ただし、本実施形態の処理フローは、S2010からS2030における処理を除いて図4のフローチャートと同じである。そこで、ここではS2010からS2030の説明のみを行い、他のステップの説明は省略する。
S2010において、偽像領域判定部332は、S430で得た判定に応じて処理の分岐を行う。すなわち、偽像が発生していると判定した層候補点に対しては、画像処理法決定部1910に所定の処理の実行を指示する信号を送信する。一方、偽像が発生していない真像領域と判定した場合には、画像処理法決定部1910に所定の処理の実行を指示する信号を送信する。
続くS2020において、画像処理部1901は、所定の層の候補点付近で偽像が発生している場合の解析処理を実行する。本ステップの処理については、図21に示すフローチャートを用いて後に詳しく説明する。続くS2030において、表示部340は、層の決定結果を断層像に重畳して表示する。層の境界を線で示す場合には、夫々の境界に対して予め定めた色の線を用いるか、層位置を明示的に示さずに層の領域に半透明の色をつけて提示してもよい。なお、これらの表示を行う際には、注目する断面をGUI等によって選択可能な構成であることが望ましい。また、公知のボリュームレンダリングの技術を用いて、3次元的に表示してもよい。
さらに、求めた網膜色素上皮層に相当する層候補点列と、S420にて求めた内境界膜1との間の距離を各座標(x、y)において計測することで、網膜層厚を計測することができる。この場合、表示部340は計測された層形状に関する情報を、3次元断層像全体(xy平面)に対する層厚の分布マップとして提示する。ただし、これに限らず、上記の検出結果の表示と連動させて注目断面における各層の面積を表示してもよい。また、全体の体積を表示してもよいし、操作者がxy平面上において指定した領域における体積を算出して表示してもよい。
次に、本実施形態におけるS2020における偽像領域用画像処理について説明する。本実施形態では、ノイズを含んだ断層像に対しても層位置が求められるようにするため、可変形状モデル(Deformable Model)を層位置に当てはめる。以下では可変形状モデルとしてSnakesを用いる例について説明する。この場合、モデルの形状に関する評価関数値と、モデルを構成する制御点付近の輝度に関する評価関数値の線形和を最小化することにより、層位置を決定する。
ここで、形状に関する評価関数としては、モデルを構成する制御点位置同士の差分値と2次微分値の線形和が用いられる。これらが小さくなるほど、モデル形状が滑らかになる。また輝度に関する評価関数としては、モデルを構成する制御点近傍の輝度勾配に負の符号をつけた値が用いられる。これは、エッジに近づくほど、該評価関数値が小さくなるようにするためである。可変形状モデルを変形する際に用いる評価関数の重みについては、モデルを構成する各制御点が偽像領域にあるか否かに関係なく、固定値に設定することが多い。この場合、偽像領域内では輝度値が減弱しており、該領域内では輝度値の変化が小さいことから実質的にモデル形状に関する評価関数値の大小によって層位置が決まってしまう。偽像領域内でエッジ等の情報が残存している場合には、該輝度に関する情報を重視して層位置を決定する方が(モデル形状の滑らかさによって層位置を求める場合に比べて)より正確に層形状を検出することができる。そのため、偽像領域内の制御点においては輝度値の減弱の程度に応じて輝度に関する評価関数の重みが真像領域における場合より大きくなるように設定する。
ただし、偽像領域内の輝度値が低くエッジ等の情報がほとんど残存しない場合は、層位置の決定にあたりエッジ等の輝度情報が利用できない。そこで、輝度に関する評価関数の重みは増やさず、モデル形状に関する評価関数値の大小によって層位置が決まるようにする。
以下、可変形状モデルの各評価関数の重みを具体的に設定する方法を図21のフローチャートを参照して説明する。
S2110では、まずS430の偽像領域判定処理の詳細を示す図6のフローチャートのS640において計算された偽像領域内の輝度値に関する統計量を、記憶部320から画像処理法決定部1910に読み出す。次に該統計量から、該領域で(減弱した)エッジが残存しているため層検出の際に輝度情報を利用するのか、あるいは輝度が欠損しているためエッジ等の輝度情報を利用しないのかを判断する。
具体的には、式8に示すような指標E(i)を求め、E(i)=1なら層位置の決定にあたって輝度情報を利用する、E(i)=0なら輝度情報を利用しないと判断する。ここで、iは可変形状モデルの制御点番号、Bは背景領域(例えば内境界膜1よりもz軸の負方向側の領域)における輝度値に関する統計量、F(i)は制御点iが属する偽像領域内の輝度値に関する統計量である。輝度値に関する統計量としては、ここでは最大値を用いる。またTsは閾値を表している。
なお、輝度値に関する統計量はこれに限定されるものではなく、例えば平均値や分散、標準偏差でもよい。また、偽像領域内を任意の局所領域に分割し、各制御点が属する局所領域における輝度値の統計量をF(i)として用いてもよい。
続くS2120では、画像処理法決定部1910が偽像領域の周囲における層候補点列の凹凸に関する情報を取得する。もし偽像領域の周辺で層形状の凹凸がある場合は、該領域内でも凹凸が発生している可能性があり、形状の滑らかさの評価に関する重みを低くして層位置を求める必要があるためである。具体的な層形状の凹凸を計算する方法としては、偽像領域周辺における層候補点間の角度に関する統計量を求める。ここでは該統計量として最大値を用いる。
層候補点iにおける層候補点間の角度は、図22に示すように線分Qi-1-QiをQi+1側に延長して得られる線分と、線分Qi-Qi+1との間の角度θiとして求められる。θiが大きいほど凹凸が大きいことを表す。このような角度の計算を偽像領域周辺の各層候補点について実行し、その最大値を層候補点列の凹凸の度合いを表す指標とする。なお、凹凸の度合いに関する指標としては層候補点間角度に限るものではなく、該層候補点位置の2次微分値(Qi-1‐2Qi+Qi+1)の統計量(平均、分散もしくは最大値等)を求めても良い。あるいは、偽像領域周辺の層候補点列を曲線とみなしたときの極値もしくは変曲点の数を求めてもよい。また層候補点の凹凸の度合いに関する統計量としては最大値に限定されるものではなく、例えば、平均値や分散、標準偏差を用いてもよい。
続くS2130では、画像処理法決定部1910は、S2110での判断結果及びS2120で求めた層形状の凹凸の度合いに関する指標を用いて可変形状モデルの評価関数の重みを設定する。まず形状に関する評価関数の重みとしては、S2120において求めた層形状モデルの凹凸の度合いを表す指標に反比例した値を、形状に関する評価関数の重みとして設定する。輝度値に関する評価関数の重みは、S2110で求めた偽像領域内での輝度情報の利用に関する判断結果によって以下のように設定する。
(i)層位置の決定に当たって偽像領域内の輝度情報を利用する場合
偽像領域における輝度値の減弱具合に応じて輝度に関する評価関数の重みを増加させる。そこでS640で求めた該領域内の輝度統計量Fsと、真像領域内の輝度統計量Tsとの比率Ts/Fsに比例した値を、輝度に関する評価関数の重みとして設定する。ただし、輝度に関する評価関数の重みの設定法はこれに限るものではなく、Fsと輝度に関する評価関数の重みとの間に減少関数の関係が成り立つようなものであれば任意の重み関数を設定してよい。
(ii)層位置の決定に当たって偽像領域内の輝度情報を利用しない場合
偽像領域においては、形状モデルの輝度値に関する評価関数の重みを真像領域における場合と同じ値に設定する。なお、(ii)において、輝度値に関する評価関数の重みの設定法はこれに限らない。例えば、輝度値に関する評価関数の重みを小さくしたり、0に設定してもよい。
続くS2140では、層決定部334が、S2130で設定された評価関数の重みづけに従って評価値を求め、Greedy Algorithmなどの最適化手法を用いて繰り返し計算を行い、該評価関数値を最小化する。該評価値の変化量が一定値未満になるか、繰り返し計算数が一定回数を超えた場合に層形状モデルの変形を終了し、該終了時の層形状モデルの位置を層位置とする。
なお、これらの形状モデルは2次元の曲線モデルとして計算してもよいし、3次元の曲面モデルとして計算してもよい。また、本実施形態では可変形状モデルとしてSnakesを用いる例について説明したが、LevelSetを用いてもよい。さらに、モデルの変形にあたり輝度値を参照するようなモデルベースのセグメンテーション手法において、輝度値に関する評価関数の重みを設定するものであれば任意の手法を用いてよい。
以上で述べた構成によれば、画像処理装置10は偽像領域を特定し、該領域周辺の層形状の凹凸や、該領域内のエッジ情報も考慮した画像処理を行うことにより、従来よりも精度よく層位置を求めることができる。
[第8実施形態]
本実施形態では、該領域内の層位置を求める際に偽像領域内のエッジ等の輝度情報を利用するか否かを判断し、利用する場合には該領域の輝度値を補正した上で層位置を求め、利用しない場合には補間によって層位置を求めるようにしたものである。本実施形態では、以下の事項に対応している。
(i) 血管や小さな白斑など輝度値が減弱しているものの欠損していない領域では、残存するエッジ等の情報が利用しやすくなるよう輝度値を変換した上で層位置を検出することで、より正確な層位置を求める。
(ii) 大きな白斑や激しく出血している領域など輝度が欠損してエッジ情報が利用できない領域では、偽像領域の発生位置や周囲の層形状などを考慮した上で周囲の層位置同士を補間することにより、より正確な層位置を求める。
本実施形態に係る画像処理装置10と接続される機器の構成は、第7実施形態と同様であるため、説明を省略する。また、本実施形態に係る画像処理装置10の機能ブロックを図23に示す。本実施形態では、画像処理部2301が、画像補正部333を備え、画像処理法決定部1910が画像補正法設定部1913及び補間関数設定部1914を備える点が第7実施形態の場合と異なっている。
図20に示す画像処理フローを参照しながら、本実施形態での画像処理の内容を説明する。なお、S2020における処理を除いては第7実施形態の場合と同様であるので、ここでは、S2020における処理の変更点を図24を参照して説明し、他のステップの説明は省略する。
まず、S2410では、偽像領域で弱いエッジが残存しているため層位置を求める際に輝度情報を利用するのか、あるいは輝度が欠損しているためエッジ等の輝度情報を利用しないのかを判断する。具体的な判断手順については、第7実施形態のS2110における場合と同様であるので説明を省略する。
S2420では、輝度利用判断部1911が、S2410における判断結果に応じて処理の分岐を行う。すなわち、層位置の決定にあたって偽像領域内の輝度情報を利用すると判断した場合には、画像補正法設定部1913に所定の処理を指示する信号を送信する。一方、該領域内の輝度情報を利用しないと判断した場合には、補間関数設定部1914に所定の処理の実行を指示する信号を送信する。
S2430において、偽像領域における輝度値の変換(画像補正)を行うためのパラメータを設定する。画像補正法としては様々なものが考えられるが、ここでは以下の画像補正法におけるパラメータの設定手順を説明する。
(i) 線形変換による方法
(ii) ヒストグラム変換に基づく方法
(iii) 層構造の強調を行う方法
まず、(i)の線形変換による画像補正を行う場合、偽像領域内の最大輝度ImaxF、該領域内の最小輝度IminF、真像領域内の最大輝度ImaxTを用いて線形変換のパラメータを以下のように設定する。
y = ImaxT * (x - IminF)/( ImaxF - IminF)
ここで、yは画像補正後の偽像領域の輝度値であり、xは画像補正前の偽像領域の輝度値を表す。この場合、偽像領域内の最大輝度を真像領域の最大輝度に合わせるような画像補正が行われることになる。
次に(ii)の方法では、偽像領域内のヒストグラムの特性を真像領域の場合に近づけるために様々なヒストグラム変換が行われるが、ここでは偽像領域内の輝度平均と分散を真像領域における輝度平均及び分散と各々同一に揃える。この場合、偽像領域における輝度値の標準偏差Sf、平均値Af、偽像領域を除いた画像全体における輝度値の標準偏差St、平均値Atを用いて以下のように画像補正関数のパラメータを設定することができる。
y = (St/Sf)*(x-Af)+At
ここで、xは補正前の信号、yは補正後の信号を表す。
さらに(iii)の方法では、ヘッセ行列の固有値を用いて層構造の強調処理を行う場合、層状の構造物を強調するための該固有値λ1、λ2、λ3(λ1≧λ2≧λ3)に関する条件式は、上述の式5のようになる。ここで、ヘッセ行列は式3に示すような多変数関数の2階偏導関数全体が作る正方行列であり、Iは画像の濃淡値である。これら3つの固有値から上記の式6を用いて層構造を強調することができる。ここで、ω(λs;λt)は層構造強調処理のために用いられる重みであり、上記式7のように設定する。ただし、式7において、具体的なsとtの値の組み合わせは、(s,t)=(1,3)もしくは(2,3)であり、γとαは各々固定値とする。
また、検出対象とする層の厚みに応じた層構造の強調処理を行うために、層構造強調の前処理として実行されるガウス関数による平滑化のパラメータσを以下のように設定する。
(i) 偽像領域周辺の層位置におけるAスキャン線上の輝度プロファイルから、該層位置における層厚を求める。ここでは、該層位置における輝度値との差が一定値以内であるような該線上の範囲を求め、その長さを層厚とする。
(ii)平滑化の際に用いるガウスフィルタの解像度σの値を偽像領域周辺の層厚の値に比例して設定する。
なお、本実施形態における画像補正の方法はこれに限るものではなく、偽像領域における補正前の輝度値と補正後の輝度値との間に増加関数の関係が成り立ち、調節可能なパラメータを含む画像補正法であれば任意の画像補正を行ってよい。
次に、S2440では、S2430において設定された画像補正法に基づき、画像補正部333は偽像領域における輝度値の変換(画像補正)を行い、層位置をより検出しやすくする。さらにS2450では、層決定部334が画像補正部333によって画像補正された領域の輝度情報を基に、抽出対象である層の画像特徴を取得し、それらの特徴点を接続して層位置とする。例えば、網膜色素上皮層はもともと各Aスキャン線上で最も輝度が高い領域であり、偽像領域内でも輝度が高くなりやすい。そこで、画像補正された領域の各Aスキャン線において、層候補点よりz軸の正方向側にある輝度最大の画素をx軸方向に接続することにより層位置を決定する。
以上の手順により、輝度利用判断部1911が偽像領域内の輝度情報を利用すると判断した場合の層位置が決定される。次に、輝度利用判断部1911が偽像領域内の輝度情報を利用しないと判断した場合の画像処理法決定部1910の処理内容を説明する。
まず、S2460において、画像処理法決定部1910は偽像領域判定部332によって求められた偽像領域の範囲に関する情報を取得する。具体的には、図25において偽像領域のラベルをiとした時に、偽像の発生位置(xi、 yi)とその幅Wi、該領域近傍における真像領域niに属する層候補点数diに関する情報を取得する。続くS2470では、偽像領域の周囲に存在する層候補点列の凹凸具合を表す指標を求める。このような指標は、S2120において求めたものと同様であるので、ここでは詳細を省略する。
さらにS2480では、画像処理法決定部1910は、S2460及びS2470において取得された情報から、偽像領域間の層候補点列を補間する際に用いる補間関数の種類や次数の選択、及び補間に用いる層候補点の選択を行う。
(i)まず各偽像領域において、偽像領域の幅Wiや、S2470で求めた該領域近傍の層形状に関する指標の値(層候補点間角度θiの統計量など)から、補間関数の種類もしくは次数を選択する。例えばWiが一定値未満であれば線形補間とし、一定値以上であればBスプライン補間を選択する。或いは、層形状の凹凸が大きい(θiの平均もしくは最大値が一定値以上ある)場合には、補間曲線が制御点を通り、Bスプライン補間の場合より正確な層位置を求めることができる自然スプライン補間を用いるような選択法でもよい。また、同じ種類の補間関数に対しても、偽像領域周辺の層候補点間角度θiの統計量(平均値や最大値等)の大きさに比例して補間関数の次数を設定する、といった選択法でもよい。
(ii) 次に、偽像領域内の層位置の補間に用いる層候補点を選択する。具体的には、偽像領域iの近傍における真像領域ni-1、niに属する層候補点数di-1、diが該選択した補間関数で補間するのに最低限必要な数を満たしているか調べる。もし満たしていれば、各々の真像領域に属する層候補点のうち偽像領域に近い層候補点を補間に必要な数だけ選択する。もし満たしていない場合は、別の真像領域に属する層候補点を選択する。例えば図25のni+1のように補間に用いるのに十分な数の層候補点が存在しない場合は、さらに隣の近傍領域ni+2の層候補点を選択する。
また、画像領域の端に偽像領域がある場合など、現在補間しようとしている方向に十分な層候補点数を持つ真像領域が存在しない場合は以下のように層候補点を選択する。すなわち、補間する方向を補間に利用可能な層候補点が十分存在する方向に変更し、該方向における近傍の真像領域に属する層候補点を選択する。例えば図25に示すように偽像領域が画像の端に存在し、x方向に関して補間に用いる層候補点が足りない場合には、該偽像領域を通るy-z平面上での近傍に存在する真像領域の層候補点を選択すればよい。ここで補間する方向の種類として必ずしもx軸やy軸に平行な方向に限定する必要はなく、補間に利用可能な層候補点が十分存在する任意の方向に変更してよい。例えば黄斑部や視神経乳頭部などで層形状が同心円状に似た画像特徴を持ちやすいことを考慮して、図25のように円形走査によって生成される平面上での近傍に存在する真像領域の層候補点を選択してもよい。本ステップにおいて決定された画像処理法に関する情報は、層決定部334へと送信される。
S2450において層決定部334は、S2480にて選択された層候補点間を、該ステップで選択された種類の補間関数を用いて補間することで偽像領域における層位置を決定する。そして、求めた層位置の情報は記憶部320へと出力される。
以上によって、本実施形態に対応する偽像領域用画像処理が実行される。なお、本実施形態では画像処理法決定後に画像補正を実行しているが、画像補正を行うタイミングはこれに限らない。例えば、偽像領域判定部332による処理の後に画像補正部333が該領域内の輝度の減弱具合に応じて画像補正を行っても良い。この場合、画像処理法決定部には画像補正結果が入力され、輝度利用判断部による判断を受けて補間処理に関する設定が行われる。また、画像補正法設定部1913は画像補正部333内に備えられる。
以上述べた構成によれば、画像処理装置10は偽像領域を特定し、偽像領域内のエッジ等の輝度情報を利用するか否かを判断する。エッジ等の輝度情報を利用する場合には該領域の輝度値を補正した上で層決定を行い、該情報を利用しない場合には偽像領域の範囲や該領域周辺の層形状に応じて補間処理することにより、精度よく層位置を求めることができる。
[第9実施形態]
本実施形態では第7実施形態のように断層像のみを用いて偽像領域内の層位置を求めるのではなく、被検眼の断層像から投影像を作成し、該投影像から抽出した組織や病変の位置情報を断層像上に逆投影し、あらかじめ偽像候補領域を絞るようにしたものである。
本実施形態では、以下の事項に対応している。
(i)投影像から求めた血管(出血)領域の位置情報を断層像上にマッピングし、その領域の周辺で偽像領域の端部を探索、特定した方がより高精度に偽像領域の範囲を求められる。
(ii)偽像領域内に残存するエッジ情報や、偽像領域周辺の層形状の凹凸も考慮した評価関数の重み付けによって層モデルをあてはめることにより、より正確な層位置を求められる。
本実施形態に係る画像処理装置10と接続される機器の構成は、第7実施形態と同様であるため、説明を省略する。図26は、本実施形態に係る画像処理装置10の機能ブロック図である。本実施形態の画像処理部2601は投影像生成部335、特徴抽出部336を有する点で、第7実施形態の図19の画像処理部1901と構成が異なっている。残りの各部に関しては図19と同じであるため、説明を省略する。
次に、図27に示す画像処理フローを参照しながら、本実施形態での画像処理の内容を説明する。なお、本実施形態における処理は、S2710、S2720及びS2730における処理を除いて、第7実施形態の図20における処理と同様である。そこで、以下、S2710、S2720及びS2730における処理を説明する。
まずS2710では、投影像生成部335において断層像を投影した画像を生成する。具体的な生成方法は、第3実施形態の図11のS1110において説明したものと同様であるので、ここでの説明は省略する。次に、S2720では、投影像生成部335が生成した投影像から網膜血管などの組織あるいは病変などの特徴を抽出する。具体的な生成方法は、第3実施形態の図11のS1120において説明したものと同様であるので、ここでの説明は省略する。
続くS2730では、記S2720において求められた投影像上の血管領域(x、y)を断層像上に逆投影すると、図28の点線領域2801に示すような領域(以下では逆投影領域と呼ぶ)が得られる。一般に網膜血管よりz軸の正方向側では輝度値の減弱が発生しやすい。従って抽出された特徴の(x - y方向の)位置を断層像上に逆投影した場合、逆投影された点線領域2801内には偽像領域5が含まれている可能性が高いと考えられる。ただし、誤抽出された領域が逆投影された場合には逆投影領域内での輝度の減弱は発生しない。また、正しく抽出された網膜血管領域を逆投影した場合でも逆投影領域下の輝度減弱が軽微で層抽出にほとんど影響を与えない場合もある。そこで逆投影領域内及び該領域の境界近傍において偽像が発生しているか否かを判定し、偽像領域である場合には該領域内での輝度値に関する統計量を求める。
偽像領域の判定法は基本的に第1実施形態のS610からS640における方法と同じであるが、連結度の算出対象となる層候補点の範囲が第1実施形態と異なっている。具体的には、連結度の算出を全ての層候補点について実行するのではなく、逆投影領域内及び該領域のx−y方向に関する近傍において実行する。
以上の構成によれば、断層像と投影像を用いて偽像領域を特定し、該領域周辺の層形状だけでなく、該領域内のエッジ情報も考慮した評価関数の重み付けで層モデルをあてはめることにより、精度よく層位置を求めることができる。
[第10実施形態]
本実施形態は第9実施形態において、輝度利用判断部による判断の後、エッジ等の輝度情報を利用する場合には該領域の画像補正を行った上で層位置を求め、該情報を利用しない場合は補間処理により層位置を求めるようにしたものである。
本実施形態は、以下の事項に対応している。
(i)投影像から求めた血管(出血)領域の位置情報を断層像上にマッピングし、その領域の周辺で偽像領域の端部を探索、特定した方がより高精度に偽像領域の範囲を求められる。
(ii)血管など減弱したエッジ等の情報が残存する領域では、輝度値を変換した上で層位置を検出した方が、より正確に層位置が求められる。
(iii)輝度が欠損してエッジ等の輝度情報が利用できない領域では、偽像領域の発生位置や周囲の層形状などを考慮した上で周囲の層位置同士を補間した方が、より正確に層位置を求められる。
本実施形態に係る画像処理装置10と接続される機器の構成は、第9実施形態と同様であるため、説明を省略する。また、本実施形態に係る画像処理装置10の機能ブロックを図29に示す。本実施形態の画像処理部2901は、位置合わせ部337をさらに備え、画像処理法決定部1910は、評価関数設定部1912の代わりに画像補正法設定部1913及び補間関数設定部1914を備える点が第9実施形態の場合と異なっている。以下、図24及び図27に示す画像処理フローを参照しながら、本実施形態での画像処理の内容を説明する。なお、S2020以外の処理は第9実施形態の場合と同様であるので、S2020の処理のみ説明し、それ以外のステップの説明は省略する。
S2020において、偽像領域における画像処理を行う。本ステップにおける処理は、第8実施形態における図24のS2410からS2480の場合と同様であるので詳細は省略する。
以上で述べた構成によれば、画像処理装置10は断層像及び投影像を用いて偽像領域を特定し、該領域内のエッジ等の輝度情報を利用するかどうかを判断する。該情報を利用する場合には該領域の輝度値を補正した上で層決定を行い、該情報を利用しない場合には偽像領域の範囲や該領域周辺の層形状に応じて補間処理することにより、精度よく層位置を求めることができる。
[第11実施形態]
本実施形態は、第9実施形態に対して、被検眼の表面像もしくは投影像の少なくとも一方から抽出した組織や病変の位置情報を断層像上に逆投影し、あらかじめ偽像候補領域を絞る処理を加えたものである。
この実施形態は、以下の事項に対応している。
(i) 白斑のように表面像から抽出しやすい病変が発生している場合においては、表面像から白斑領域を抽出してその位置情報を断層像上にマッピングし、その領域の周辺で偽像領域の端部を探索、特定した方がより高精度に偽像領域の範囲を求められる。
(ii) 偽像領域内に残存するエッジ情報や、偽像領域周辺の層形状の凹凸も考慮した評価関数の重み付けによって層モデルをあてはめることにより、より正確な層位置を求められる。
本実施形態に係る画像処理装置10と接続される機器の構成は、図14に示すように表面像撮像装置50が加わっている点が第9実施形態と異なっている。また、本実施形態に係る画像処理装置10は、図30に示すように画像処理部3001が表面像取得部315を有する点が第9実施形態と異なっている。
以下、図31に示す画像処理フローを参照しながら、本実施形態での画像処理の内容を説明する。なお、S3110からS3150以外の処理は第9実施形態の場合と同様であるので、その説明は省略する。また、S3110からS3140については、上述の第5実施形態のS1610からS1640と同様であるので説明を省略する。
さらに、S3150では偽像領域における画像処理を行うが、本ステップにおける処理は、基本的に第7実施形態におけるS2110からS2140の場合と同様である。ただし、本実施形態ではS2130において、眼底像から得られる情報も用いて画像処理パラメータの設定を行ってよい。例えば眼底像上で白斑の輝度が非常に高い場合、断層像上でも白斑領域よりz軸の正方向側で輝度がより減弱する可能性が高くなるため、白斑領域の輝度信号値に比例して形状に関する評価関数の重みを増す。白斑領域の輝度信号値としては眼底像上の該領域の画素値を直接参照してもよいし、モルフォロジ演算等の処理結果として得られる領域の値(多値データ)を参照してもよい。
以上で述べた構成によれば、表面像や投影像を用いて特定した偽像領域において、該領域周辺の層形状だけでなく、該領域内の輝度情報も考慮した評価関数の重み付けで層モデルをあてはめることにより、精度よく層位置を求めることができる。
[第12実施形態]
本実施形態では第11実施形態において、輝度利用判断部による判断の後、エッジ等の輝度情報を利用する場合には該領域の画像補正を行った上で層位置を決定し、該情報を利用しない場合は補間処理によって層位置を求めるようにしたものである。
本実施形態では、特に白斑によって偽像が発生している場合において、以下の事項に対応している。
(i)表面像から求めた白斑領域の位置情報を断層像上にマッピングし、その領域の周辺で偽像領域の端部を探索、特定した方がより高精度に偽像領域の範囲を求められる。
(ii)血管など減弱したエッジ等の情報が残存する領域では、輝度値を変換した上で層位置を検出した方が、より正確に層位置が求められる。
(iii)輝度が欠損してエッジ等の輝度情報が利用できない領域では、偽像領域の発生位置や周囲の層形状などを考慮した上で周囲の層位置同士を補間した方が、より正確に層位置を求められる。
本実施形態に係る画像処理装置10と接続される機器の構成は、第11実施形態と同様であるため、説明を省略する。また、本実施形態に係る画像処理装置10の機能ブロックを図32に示す。本実施形態では、画像処理法決定部1910が、評価関数設定部1912の代わりに画像補正法設定部1913及び補間関数設定部1914を備える点が第5実施形態の構成と異なっている。また本実施形態における画像処理フローも基本的には第11実施形態と同様である。ただし、S3150の処理は以下のように実行される。
但し、S3150で実行される処理も、図24に示すように、偽像領域内のエッジ等の輝度情報を利用するかどうかを判断した上で、該情報を利用する場合には該領域の輝度値を補正した上で層決定を行う。該情報を利用しない場合には該領域の範囲や該領域周辺の層形状に応じて補間関数の種類やパラメータを設定し、補間するという第10実施形態の場合と同様の手順であるので詳細は省略する。
以上述べた構成によれば、表面像や投影像を用いて特定された偽像領域において、該領域内のエッジ等の輝度情報を利用するかどうかを判断する。該情報を利用する場合には該領域の輝度値を補正した上で層決定を行い、該情報を利用しない場合には偽像領域の範囲や該領域周辺の層形状に応じて補間処理することにより、精度よく層位置を求めることができる。
[その他の実施形態]
上述の実施形態は、本発明を画像処理装置として実現したものである。しかしながら、本発明の実施形態は画像処理装置のみに限定されるものではなく、コンピュータのCPUにより実行することでその機能を実現するソフトウェアとして実現しても良い。
図33は、画像処理装置10の各部の機能をソフトウェアで実現するためのコンピュータの基本構成を示す図である。CPU3301は、RAM3302やROM3303に格納されたプログラムやデータを用いてコンピュータ全体の制御を行う。また、画像処理装置10の各部に対応するソフトウェアの実行を制御して、各部の機能を実現する。RAM3302は、外部記憶装置3304からロードされたプログラムやデータを一時的に記憶するエリアを備えると共に、CPU3301が各種の処理を行うために必要とするワークエリアを備える。記憶部320の機能はRAM3302によって実現される。
ROM3303は、一般にコンピュータのBIOSや設定データなどが格納されている。外部記憶装置3304は、ハードディスクドライブなどの大容量情報記憶装置として機能する装置であって、ここにオペレーティングシステムやCPU3301が実行するプログラム等を保存する。また本実施形態の説明において既知としている情報はここに保存されており、必要に応じてRAM3302にロードされる。モニタ3305は、液晶ディスプレイなどにより構成されている。例えば、表示部340が出力する内容を表示することができる。
キーボード3306、マウス3307は入力デバイスであり、操作者はこれらを用いて、各種の指示を画像処理装置10に与えることができる。インターフェイス3308は、画像処理装置10と外部の機器との間で各種データのやりとりを行うためのものであり、IEEE1394やUSB、イーサネット(登録商標)ポート等によって構成される。インターフェイス3308を介して取得したデータは、RAM3302に取り込まれる。断層像取得部310や結果出力部350の機能は、インターフェイス3308を介して実現される。上述した各構成要素は、バス3309によって相互に接続される。
本実施形態では、前述した実施形態の機能を実現するソフトウェアのコンピュータプログラムコードを記憶した記憶媒体を、システムあるいは装置に供給する。そして、そのシステムあるいは装置のコンピュータ(またはCPUやMPU)が記憶媒体に格納されたプログラムコードを読出し実行することによっても、達成されることは言うまでもない。この場合、記憶媒体から読出されたプログラムコード自体が前述した実施形態の機能を実現することになり、そのプログラムコードを記憶した記憶媒体は本発明を構成することになる。