JP2019063446A - 画像処理装置、画像処理方法及びプログラム - Google Patents
画像処理装置、画像処理方法及びプログラム Download PDFInfo
- Publication number
- JP2019063446A JP2019063446A JP2017195155A JP2017195155A JP2019063446A JP 2019063446 A JP2019063446 A JP 2019063446A JP 2017195155 A JP2017195155 A JP 2017195155A JP 2017195155 A JP2017195155 A JP 2017195155A JP 2019063446 A JP2019063446 A JP 2019063446A
- Authority
- JP
- Japan
- Prior art keywords
- image
- motion contrast
- alignment
- contrast image
- cluster
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Landscapes
- Eye Examination Apparatus (AREA)
Abstract
【課題】より高精度なモーションコントラスト画像を生成可能な画像処理装置、及び画像処理方法を提供する。【解決手段】眼底の同一線上を走査するように制御された測定光に基づいて得られた複数の断層画像を含むクラスタを、クラスタ単位で複数取得する取得手段と、クラスタ内の複数の断層画像の位置が合い、さらにクラスタ間の複数の断層画像の位置が合うように、複数のクラスタの断層画像の位置合わせを行う位置合わせ手段と、1つのクラスタに含まれる複数の断層画像に基づいて、第1の原モーションコントラスト画像を生成し、さらに、互いに異なる2つのクラスタに含まれる複数の断層画像に基づいて、第2の原モーションコントラスト画像を生成する第1の生成手段と、第1の生成手段により生成された第1の原モーションコントラスト画像と第2の原モーションコントラスト画像とに基づいて、合成モーションコントラスト画像を生成する合成手段とを有する。【選択図】図3
Description
本発明は、画像処理装置、画像処理方法及びプログラムに関する。
近年、造影剤を用いない血管造影法として、Optical Coherence Tomography(OCT)を用いたOCT Angiography(OCTA)が提案されている。OCTAでは、OCTにより取得した3次元のモーションコントラスト画像を2次元平面に投影することで、血管画像を生成する。ここで、モーションコントラスト画像とは、測定対象の同一断面をOCTで繰り返し撮影し、その撮影間における測定対象の時間的な変化を検出したデータである。モーションコントラスト画像は、例えば、複素OCT信号の位相やベクトル、強度の時間的な変化を差、比率、又は相関等から計算することによって得られる。
特許文献1には、眼底の1箇所に対し、スキャンを4回繰り返すことで得られた4つの断層データを1つのクラスタとし、1つのクラスタから、眼底の1箇所のモーションコントラストデータを生成することが開示されている。特許文献1にはさらに、1つのクラスタに対応したスキャンの繰り返し中に失敗がある場合には、同一クラスタの断層データをすべて破棄し、再度断層データを再取得することが開示されている。
同一箇所に対し得られた複数の断層画像から得られた複数のモーションコントラスト画像を合成することで、モーションコントラスト画像の高精度化を図ることができる。しかしながら、合成の対象となるモーションコントラスト画像を多数得るためには多数の断層画像が必要となるという問題があった。
本発明はこのような問題点に鑑みなされたもので、より高精度なモーションコントラスト画像を生成することを目的とする。
そこで、本発明は、画像処理装置であって、眼底の同一線上を走査するように制御された測定光に基づいて得られた複数の断層画像を含むクラスタを、クラスタ単位で複数取得する取得手段と、クラスタ内の複数の断層画像の位置が合い、さらにクラスタ間の複数の断層画像の位置が合うように、前記複数のクラスタの断層画像の位置合わせを行う位置合わせ手段と、前記位置合わせ手段による位置合わせ後の、1つのクラスタに含まれる複数の断層画像に基づいて、第1の原モーションコントラスト画像を少なくとも1つ生成し、さらに、複数のクラスタのうち互いに異なる2つのクラスタに含まれる複数の断層画像に基づいて、第2の原モーションコントラスト画像を少なくとも1つ生成する第1の生成手段と、前記第1の生成手段により生成された前記第1の原モーションコントラスト画像と前記第2の原モーションコントラスト画像とに基づいて、合成モーションコントラスト画像を生成する合成手段と、前記クラスタ単位で再走査を指示する再走査指示手段とを有することを特徴とする。
本発明によれば、より高精度なモーションコントラスト画像を生成することができる。
以下、本発明の実施形態について図面に基づいて説明する。
(第1の実施形態)
図1は、第1の実施形態に係る画像処理システム100の全体図である。画像処理システム100は、画像処理装置110と、撮影装置120と、を有している。画像処理装置110と撮影装置120は有線または無線により通信可能に接続されている。
(第1の実施形態)
図1は、第1の実施形態に係る画像処理システム100の全体図である。画像処理システム100は、画像処理装置110と、撮影装置120と、を有している。画像処理装置110と撮影装置120は有線または無線により通信可能に接続されている。
撮影装置120は、眼部の断層画像を撮影する装置(Optical Coherence Tomography:OCTとも言う)である。撮影装置120は、例えば、SD−OCTやSS−OCTを有している。ガルバノミラー121は、測定光の眼底における走査を行うためのものであり、OCTによる眼底の撮影範囲を規定する。駆動制御部122は、ガルバノミラー121の駆動範囲及び速度を制御することで、眼底における平面方向の撮影範囲及び走査線数(平面方向の走査速度)を規定する。図1においては、簡単のためガルバノミラーは1つのユニットとして示したが、実際にはXスキャン用のミラーとYスキャン用の2枚のミラーで構成され、眼底上で所望の範囲を測定光で走査できる。通信部123は、画像処理装置110との通信を行う。フォーカス124は被検体である眼の前眼部を介し、眼底の網膜層にフォーカスするためのものである。測定光は、非図示のフォーカスレンズにより、被検体である眼の前眼部を介し、眼底の網膜層にフォーカスされる。眼底を照射した測定光は各網膜層で反射・散乱して戻る。
内部固視灯125は、表示部126及びレンズ127を有している。表示部126は、複数の発光ダイオード(LD)がマトリックス状に配置されたものである。発光ダイオードの点灯位置は、駆動制御部122の制御により撮影したい部位に合わせて変更される。表示部126からの光は、レンズ127を介し、被検眼に導かれる。表示部126から出射される光は520nmで、駆動制御部122により所望のパターンが表示される。ヒーレンスゲートステージ128は、被検眼の眼軸長の相違等に対応し、駆動制御部122により制御されている。コヒーレンスゲートとは、OCTにおける測定光と参照光の光学距離が等しい位置を表す。さらには、駆動制御部122は、撮影方法としてコヒーレンスゲートの位置を制御することにより、網膜層側か、あるいは網膜層より深部側とする撮影を行うことを制御する。
図2は、目の構造及び撮影装置120により得られる断層画像の説明図である。図2(a)は、眼球の模式図である。図2(a)において、Cは角膜、CLは水晶体、Vは硝子体、Mは黄斑部(黄斑の中心部は中心窩を表す)、Dは視神経乳頭部を表す。撮影装置120は、主に、硝子体、黄斑部、視神経乳頭部を含む網膜の後極部を撮影する。なお、撮影装置120は、これ以外にも角膜、水晶体の前眼部等も撮影することができる。
図2(b)は、撮影装置120が取得する網膜を撮影した場合の断層画像200の一例を示す図である。図2(b)において、ASはAスキャンというOCT断層画像における画像取得の単位を表す。このAスキャンが複数集まって一つのBスキャンを構成する。そしてこのBスキャンのことを断層画像と呼ぶ。図2(b)において、Veは血管、Vは硝子体、Mは黄斑部、Dは視神経乳頭部を表す。また、L1は内境界膜(ILM)と神経線維層(NFL)との境界、L2は神経線維層と神経節細胞層(GCL)との境界、L3は視細胞内節外節接合部(ISOS)、L4は網膜色素上皮層(RPE)、L5はブルッフ膜(BM)、L6は脈絡膜を表す。断層画像において、横軸(OCTの主走査方向)をx軸、縦軸(深さ方向)をz軸とする。
次に、撮影装置120による撮影処理について説明する。撮影装置120は、被検眼をスキャンして撮影を行う。被検眼のスキャンは、操作者がスキャン開始を指示すると、撮影装置120の駆動制御部122は、ガルバノミラー121を動作させて断層画像のスキャンを行う。ガルバノミラー121は、水平方向用のYスキャナと垂直方向用のYスキャナで構成される。そのため、これらのスキャナの向きをそれぞれ変更することで、装置座標系における水平方向(x)、垂直方向(y)それぞれの方向に走査するように測定光を制御ことができる。そして、これらのスキャナの向きを同時に変更させることで、水平方向と垂直方向とを合成した方向に走査することができる。これらの走査により、眼底平面上の任意の方向に走査するよう測定光を制御ことが可能となる。
駆動制御部122は、撮影を行うにあたり各種撮影パラメータの調整を行う。具体的には、駆動制御部122は、内部固視灯125の位置、スキャン範囲、スキャンパターン、コヒーレンスゲート位置、フォーカスを少なくとも設定する。駆動制御部122は、表示部126の発光ダイオードを制御して、黄斑部中心や視神経乳頭に撮影を行うように内部固視灯125の位置を制御する。撮影装置120は、これら撮影パラメータの調整終了後、操作者からの開始指示に従い、撮影を開始する。
さらに、本実施形態においては、画像処理装置110はモーションコントラスト画像を生成し、撮影装置120は、モーションコントラスト画像を生成するために利用される複数の断層画像の撮影を行う。具体的には、撮影装置120は、副走査方向において同一位置、すなわち同一線上をM回繰り返し主走査方向に走査する。なお、本実施形態においては例えば、M=3とし、同一位置での主走査方向への走査を3回繰り返すものとする。この3回の走査により得られる3つの断層画像のグループをクラスタと称する。すなわち、クラスタに含まれる断層画像の数は、撮影装置120が一連の処理として繰り返す撮影回数に対応した数となる。また、このM回の走査をクラスタスキャンと称する。撮影装置120は、例えば、1回のクラスタスキャン中に撮影に失敗した場合には、クラスタスキャンの単位でリスキャンを開始する。すなわち、M=2までスキャンが終了したところで、被検者が瞬きをしてしまった場合には、撮影装置120は、M=2までに得られた信号を破棄し、再びM=1からスキャンを開始する。
なお、被検眼は動くため、撮影装置120が眼底の同一位置を走査しようとしても、眼底の完全に同一な位置を走査することができない場合がある。また、被検眼を追尾するトラッキング機能を撮影装置120が有している場合もトラッキング機能の不完全さにより眼底の完全に同一な位置を走査することができない場合がある。すなわち、撮影装置120により眼底の同一位置を走査するように制御された測定光であっても、実際には眼底の同一位置を走査できるとは限らない。これに対応し、本明細書における眼底の同一位置(同一線上)とは、眼底の完全に同一な位置のみならず眼底の略同一な位置を含む概念である。また、上記のクラスタは例えば断層画像の撮影に失敗した場合の再走査の最小単位である。例えば、1のクラスタ内における断層画像が瞬き等により十分な画質ではない場合には、1のクラスタに含まれるM枚の断層画像が再走査により取得される。例えば、同一位置において複数のクラスタが存在する場合において、複数のクラスタのうち撮影に失敗した断層画像が含まれるクラスタのみが再走査の対象となる。
また、本実施形態においては、撮影装置120は、同一位置での走査を行うべく、被検眼のトラッキングを行うことで、固視微動の影響を少なくして被検眼のスキャンを行う。さらに、撮影装置120は、まばたきなどの画像を生成するにあたりアーティファクトとなる動きを検出した場合には、アーティファクトが発生した場所で再スキャンを自動的に行うものとする。
図1に戻り、画像処理装置110について説明する。CPU111は、ROM112に記憶された制御プログラムを読み出して各種処理を実行する。RAM113は、CPU111の主メモリ、ワークエリア等の一時記憶領域として用いられる。HDD114は、各種データや各種プログラム等を記憶する。表示部115は、各種情報を表示する。入力部116は、キーボードやマウスを有し、ユーザによる各種操作を受け付ける。通信部117は、撮影装置120との通信を行う。
なお、後述する画像処理装置110の機能や処理は、CPU111がROM112又はHDD114に格納されているプログラムを読み出し、このプログラムを実行することにより実現されるものである。また、他の例としては、CPU111は、ROM112等に替えて、SDカード等の記録媒体に格納されているプログラムを読み出してもよい。また、他の例としては、画像処理装置110の機能や処理の少なくとも一部は、例えば複数のCPU、RAM、ROM、及びストレージを協働させることにより実現してもよい。また、他の例としては、画像処理装置110の機能や処理の少なくとも一部は、ハードウェア回路を用いて実現してもよい。
図3は、画像処理装置110の機能構成図である。通信処理部301は、撮影装置120との通信を制御する。通信処理部301は例えば、撮影指示を撮影装置120に送信したり、撮影装置120から断層画像の信号データを受信したりする。受付部302は、ユーザ操作に応じて、撮影指示等の各種指示を受け付ける。表示処理部303は、各種データを表示部115に表示するよう制御する。表示処理部303は、例えば、断層画像や、断層画像から生成されたモーションコントラスト画像等を表示するよう制御する。
断層画像生成部304は、通信処理部301を介して撮影装置120から断層画像の干渉信号を受信し、受信した干渉信号に対し信号処理を行うことで断層画像を生成する。位置合わせ部305は、断層画像間の位置合わせを行う。モーションコントラスト画像生成部306は、断層画像を用いてモーションコントラスト画像を生成する。合成部307は、モーションコントラスト画像生成部306により得られた、同一位置に対する複数のモーションコントラスト画像を加算平均することにより、より高精度なモーションコントラスト画像を取得する。なお、合成部307は、複数のモーションコントラスト画像を合成すればよく、そのための処理は加算平均に限定されるものではない。以下、説明の便宜上、モーションコントラスト画像生成部306により得られたモーションコントラスト画像を、原モーションコントラスト画像と称する。また、合成部307により得られた加算平均後のモーションコントラスト画像を合成モーションコントラスト画像と称する。
判定部308は、断層画像の撮影の成否を判定する。判定部308は例えば、断層画像の輝度に基づいて撮影の成否を判定する。例えば、判定部308は、断層画像全体の輝度の平均値等の統計値が所定の閾値以下の場合には撮影失敗と判定することとしてもよい。なお、判定部308は公知の種々手法により撮影の成否を判定することが可能である。再走査指示部309は、判定部308が撮影失敗と判定した断層画像が含まれるクラスタを特定し、当該クラスタに含まれる断層画像の数分の再走査を撮影装置120に指示する。すなわち、再走査指示部309は、撮影装置120に対してクラスタ単位で再走査を指示する。再走査指示部309から指示を受けた撮影装置120はガルバノミラー121を用いて撮影失敗と判定された断層画像が含まれるクラスタのみ再走査を行う。なお、撮影失敗と判定した断層画像が含まれないクラスタに関して再走査は行われない。
図4は、画像処理装置110によるモーションコントラスト画像生成処理を示すフローチャートである。図5は、モーションコントラスト画像生成処理の説明図である。S401において、通信処理部301は、被検眼を同定する情報として被検者識別番号を外部から取得する。そして、被検者識別番号に基づいて、HDD114に格納されている、被検者の被検眼に関する情報を取得する。
次に、S402において、断層画像生成部304は、撮影装置120から断層画像の干渉信号を受信し、干渉信号に基づいて、眼底の断層画像を生成する。断層画像生成部304は、まず干渉信号から固定パターンノイズ除去を行う。固定パターンノイズ除去は、検出した複数のAスキャン信号を平均することで固定パターンノイズを抽出し、これを入力した干渉信号から減算する処理である。次に、断層画像生成部304は、有限区間でフーリエ変換した場合にトレードオフの関係となる深さ分解能とダイナミックレンジを最適化するために、所望の窓関数処理を行う。次に、断層画像生成部304は、FFT処理を行うことで断層画像を生成する。
本実施形態においては、前述の通り、撮影装置120は、M=3として同一位置の走査を3回行う。これに対応し、断層画像生成部304は、3回の走査により得られた3つの信号それぞれから3つの断層画像を生成し、1つのクラスタを取得する。さらに、画像処理装置110の通信処理部301は、複数のクラスタスキャンに対応した干渉信号を受信し、断層画像生成部304は、各干渉信号から断層画像を生成することで、クラスタを複数取得する。本処理は、モーションコントラスト画像を生成する際に、撮影装置120が繰り返す撮影回数に対応した数の断層画像が含まれるクラスタ単位で、複数のクラスタ(複数の断層画像)を取得する取得処理の一例である。
例えば、図5に示すように、断層画像生成部304は、2つのクラスタT1,T2を生成する。ここで、クラスタT1には、3つの断層画像T11,T12,T13が含まれている。また、クラスタT2には、3つの断層画像T21,T22,T23が含まれている。ここで、断層画像T11,T12,T13は、この順に撮影されたものとする。同様に、断層画像T21,T22,T23は、この順に撮影されたものとする。また、断層画像T21,T22,T23は、断層画像T11,T12,T13の撮影の後、所定時間をおいて撮影されたものとする。撮影装置120は、このようにクラスタ単位で撮影を行うので、被検者は、複数のクラスタスキャンを行う場合に、1回のクラスタスキャンが終了し、次のクラスタスキャンが開始するまでの間に、目を閉じたり、顔を離したりして休憩することができる。なお、クラスタT1、T2は上記所定時間のインターバルを設けることなく連続的に撮影されたものであってもよい。また、クラスタT1、T2に含まれる断層画像は3枚以上であってもよいし、2枚であってもよい。また、クラスタT1、T2に含まれる断層画像の枚数は等しくなくともよい。
次に、S403において、位置合わせ部305は、クラスタ内の複数の断層画像について、x方向及びy方向への移動とxy面内の回転と、を行うことにより、断層画像の位置合わせを行う。具体的には、位置合わせ部305は、一の断層画像を基準画像として選択し、基準画像とクラスタ内の他の断層画像との相関を比較することにより、基準画像との比較の対象となった他の断層画像について移動や回転を行うことで、両断層画像の位置合わせを行う。位置合わせ部305は、これをクラスタ内のすべての断層画像について基準画像と位置合わせを行うことで、すべての断層画像の位置合わせを完了する。なお、位置合わせ部305はさらに、位置合わせにおいて網膜の各層の境界線の情報を用いてもよい。これにより、図5に示すクラスタT1の3つの断層画像T11,T12,T13の位置合わせと、クラスタT2の3つの断層画像T21,T22,T23の位置合わせが完了する。
次に、S404において、位置合わせ部305は、クラスタ間の断層画像、すなわち異なるクラスタに属する複数の断層画像について、x方向及びy方向への移動とxy面内の回転と、を行うことにより、位置合わせを行う。この場合には、位置合わせ部305は、各クラスタの代表の断層画像を選択し、代表の断層画像間で位置合わせを行う。代表の断層画像間での位置合わせは、S403における処理と同様である。そして、位置合わせ部305は、位置合わせにより移動や回転の対象となる代表画像について移動や回転を行うと共に、代表の断層画像と同一のクラスタに属する他の断層画像についても同様に移動や回転を行うことで位置合わせが完了する。なお、本実施形態においてはステップS403を実行した後にステップS404を実行することとしたが、これらのステップの順序は逆であってもよい。
次に、S405において、モーションコントラスト画像生成部306は、断層画像に対し、ノイズ除去処理を行う。モーションコントラスト画像の生成においては、ノイズの影響を受けやすい傾向がある。複数の断層画像の信号部分にノイズがあり、ノイズの値が互いに異なる場合には、両画素の脱相関値が高くなり、モーションコントラスト画像にもノイズが重畳してしまうためである。これを避けるために、本実施形態のモーションコントラスト画像生成部306は、モーションコントラスト画像の生成前に、断層画像に対しノイズ除去を行う。なお、ノイズ除去を行うことは必須ではない。
S405において、モーションコントラスト画像生成部306は、まず、ノイズ除去に用いる閾値を決定する。モーションコントラスト画像生成部306は、具体的には、処理対象となる複数のクラスタそれぞれに含まれる断層画像の背景部分(例えばRPEより所定距離深い位置おける網膜が描画されていない部分)の画素値に基づいて、閾値を決定する。なお、閾値の決定には複数の断層画像を用いることなく1の断層画像の背景部分の画素値を用いることとしてもよい。図5の例では、モーションコントラスト画像生成部306は、クラスタT1内の3つの断層画像T11,T12,T13と、クラスタT2内の3つの断層画像T21,T22,T23の計6つの断層画像に基づいて閾値を決定する。このように、クラスタを跨いだ複数の断層画像から閾値を決定することで、より適切な値を閾値として決定することができる。例えば、モーションコントラスト画像生成部306は、断層画像T11,T12,T13,T21,T22,T23のそれぞれの背景部分の画素値を取得し、その平均値に基づいて閾値を決定することとしてもよい。なお、求めた平均値そのものを閾値としてもよいし、求めた平均値に対して処理のオフセットを加えた値を閾値とすることとしてもよい。オフセットは例えば正の値である。また、当該閾値をモーションコントラスト画像におけるモーションコントラスト値(脱相関値)の算出に用いることとしてもよい。例えば、モーションコントラスト画像生成部306は、閾値以下の画素の位置におけるモーションコントラスト値は0にすることとしてもよい。
そして、モーションコントラスト画像生成部306は、処理対象の各断層画像に対し、S405において決定した閾値を用いてノイズ除去を行う。例えば、モーションコントラスト画像生成部306、断層画像において閾値を下回る画素の値を0に置き換える。ここで、処理対象となる断層画像は、クラスタT1の3つの断層画像T11,T12,T13と、クラスタT2の3つの断層画像T21,T22,T23である。図5に示すように、クラスタT1の断層画像T11,T12,T13は、クラスタ内の位置合わせ、クラスタ間の位置合わせ及びノイズ除去が施されることにより、それぞれ断層画像T11',T12',T13'に変換される。同様に、クラスタT2の断層画像T21,T22,T23は、クラスタ内の位置合わせ、クラスタ間の位置合わせ及びノイズ除去が施されることにより、それぞれ断層画像T21',T22',T23'に変換される。
次に、S406において、モーションコントラスト画像生成部306は、ノイズ除去後の断層画像に基づいて、原モーションコントラスト画像を複数生成する。具体的には、モーションコントラスト画像生成部306は、M個の断層画像から(M−1)個の原モーションコントラスト画像を生成する。さらに、モーションコントラスト画像生成部306は、2つのクラスタから1つずつ選択した2つの断層画像から1個の原モーションコントラスト画像を生成する。ここで、1のクラスタ内に含まれる複数の断層画像から生成された原モーションコントラスト画像を第1の原モーションコントラスト画像と称する場合がある。また、異なるクラスタに属する複数の断層画像から生成された原モーションコントラスト画像を第2の原モーションコントラスト画像と称する場合がある。
図5の例では、モーションコントラスト画像生成部306は、クラスタT1の3つの断層画像T11',T12',T13'から、2つの原モーションコントラスト画像(第1の原モーションコントラスト画像)A1,A2を生成する。モーションコントラスト画像生成部306は、同様に、クラスタT1の3つの断層画像T21',T22',T23'から、2つの原モーションコントラスト画像(第1の原モーションコントラスト画像)A4,A5を生成する。モーションコントラスト画像生成部306はさらに、クラスタT1の断層画像T13'とクラスタT2の断層画像T21'から、1つの原モーションコントラスト画像(第2の原モーションコントラスト画像)A3を生成する。
なお、第2の原モーションコントラスト画像を1枚以上生成することとしてもよい。例えば、複数の第2の原モーションコントラスト画像を生成するとする。この場合、モーションコントラスト画像生成部306は、複数の第2の原モーションコントラスト画像の基礎となる断層画像の取得間隔が等しくなるように、断層画像の組み合わせを特定する。そして、モーションコントラスト画像生成部306は、特定した断層画像の組み合わせそれぞれから第2の原モーションコントラスト画像を生成するようにしてもよい。モーションコントラスト画像生成部306は、例えば、断層画像T11'とT21'、T12'とT22'、T13'とT23'のそれぞれの組み合わせから第2の原モーションコントラスト画像を生成してもよい。
また、モーションコントラスト画像生成部306は、クラスタ内で得られるモーションコントラスト画像の基礎となる断層画像の取得間隔に近づくように断層画像の組み合わせを選択してもよい。モーションコントラスト画像生成部306は、例えば、断層画像T13'とT21'の組み合わせから第2の原モーションコントラスト画像を生成してもよい。例えば、モーションコントラスト画像生成部306は第2の原モーションコントラスト画像として断層画像T13'とT21'の組み合わせのみからモーションコントラスト画像を生成する。これにより、モーションコントラスト画像の基礎となる断層画像の取得間隔をクラスタ内外で揃えるようにしてもよい。なお、モーションコントラスト画像生成部306は、クラスタ内で得られるモーションコントラスト画像の基礎となる断層画像の取得間隔と異なる取得間隔の断層画像を基礎として第2の原モーションコントラスト画像を生成することとしてもよい。例えば、モーションコントラスト画像生成部306は、断層画像T11'とT23'に基づいてモーションコントラスト画像を生成することとしてもよい。クラスタ内で得られるモーションコントラスト画像の基礎となる断層画像の取得間隔と異なる取得間隔の断層画像を基礎とすることで、クラスタ内から得られるモーションコントラスト画像には十分に描出されていない血管を描出できる可能性がある。
次に、S407において、合成部307は、S407において得られた複数の原モーションコントラスト画像(第1の原モーションコントラスト画像と第2の原モーションコントラスト画像)の加算平均を合成モーションコントラスト画像として得る。次に、S408において、表示処理部303は、S408において得られた合成モーションコントラスト画像を表示部115に表示するよう制御する。本処理は、表示制御処理の一例である。以上で、モーションコントラスト画像生成処理は終了する。
以上のように、画像処理装置110は、撮影装置120により得られた複数のクラスタを用いて、合成モーションコントラスト画像を生成する。すなわち、画像処理装置110は、クラスタを跨いで、多数の断層画像を用いて合成モーションコントラスト画像を生成することができる。これにより、より高精度なモーションコントラスト画像を生成することができる。さらに、画像処理装置110は複数のクラスタを用いることができるため、高精度なモーションコントラスト画像を得るために、撮影装置120がクラスタスキャンにおける走査の繰り返し回数Mを増やす必要がない。このため、クラスタスキャンにおける繰り返し回数を少なく抑えることができる。したがって、本実施形態の画像処理システム100においては、被検者は適宜休憩しながら撮影を行った場合においても、高精度、高画質なモーションコントラスト画像を得ることができる。再走査の観点からみれば、再走査をクラスタ単位とすることで再走査の回数を抑制しながら、クラスタ内、クラスタ間から得られたモーションコントラスト画像を合成することでモーションコントラスト画像の画質向上を図っている。すなわち、本実施形態は、走査回数の抑制による被検者の負担軽減とモーションコントラスト画像の高画質化との両立を実現している。高画質とは一度の撮影と比較してS/N比が向上している画像をいう。または、診断に必要な情報量が増えている画像のことをいう。
第1の実施形態の第1の変形例としては、画像処理装置110の位置合わせ部305は、処理対象の複数のクラスタに含まれるすべての断層画像の位置が合うような処理を行えばよく、そのための具体的な処理は実施形態に限定されるものではない。他の例としては、位置合わせ部305は、処理対象の複数のクラスタに含まれるすべての断層画像に対し、一の断層画像を基準画像とし、基準画像に合わせることで位置合わせを行ってもよい。
第2の変形例としては、合成部307は、同一のクラスタの断層画像から生成された原モーションコントラスト画像と、異なる2つのクラスタの断層画像から生成された原モーションコントラスト画像を合成すればよく、具体的な処理は実施形態に限定されない。例えば、図5の例において、合成部307は、T1のT11'とT13'から原モーションコントラスト画像を生成してもよい。また、合成部307は、クラスタT1の断層画像T11'とクラスタT2の断層画像T22'から原モーションコントラスト画像を生成してもよい。このように、合成部307が、同一のクラスタの断層画像から生成する原モーションコントラスト画像の数や、同一のクラスタにおいて原モーションコントラスト画像を生成する際に利用される2つの断層画像の組み合わせ方は、任意に決定できる。また、合成部307が、異なるクラスタの断層画像から生成する原モーションコントラスト画像の数や、異なるクラスタ間で原モーションコントラスト画像を生成する際に利用される2つの断層画像の組み合わせ方は、任意に決定できる。
第3の変形例としては、第1の実施形態においては、画像処理装置110は、クラスタスキャンにおいて、同じ撮影範囲を同じスキャンパターンで撮影したデータを処理対象とすることとしたが、これに限らない。画像処理装置110は、例えば、3mm×3mmの範囲を300×300(主走査×副走査)で撮影したデータと、3mm×3mmの範囲を600×600で撮影したデータとを処理対象としてもよい。この時の深度方向のサイズはどちらのデータにおいても共通で、例えば1000とする。その場合には、画像処理装置110は、1ボクセルあたりの物理サイズを揃えるデータ変換処理を行った後に、上述した位置合わせ処理を実行する。なお、この例では、画像処理装置110は、300×300のデータを補間処理によって600×600に拡大してから処理をするようにしてもよいし、600×600のデータを補間処理によって300×300に縮小してから処理をするようにしてもよい。また、3mm×3mmの範囲を300×300で撮影したデータと、6mm×6mmの範囲を600×600で撮影したデータとを位置合わせする場合には、1ボクセルあたりの物理サイズは同じである。そこで、この場合には、画像処理装置110は、このままのサイズ同士で位置合わせを行う。これにより、異なる撮影範囲や異なるスキャン密度で撮影したデータ同士も加算平均することができる。
第4の変形例としては、モーションコントラスト画像生成処理の実行タイミングは特に限定されるものではない。画像処理装置110は、撮影装置120による撮影後速やかにモーションコントラスト画像生成処理を行ってもよい。また、他の例としては、撮影装置120から干渉信号を受信し、これを自装置のHDD114等に記憶しておき、ユーザから表示指示を受け付けた場合に、モーションコントラスト画像生成処理を行ってもよい。
第5の変形例としては、画像処理装置110は、クラスタを跨いで複数の断層画像から合成モーションコントラスト画像を生成するのに加えて、同一のクラスタに断層画像のみからも合成モーションコントラスト画像を生成してもよい。例えば、図5の例において、画像処理装置110は、クラスタT1の干渉信号を取得したタイミングで、クラスタT1に含まれる複数の断層画像に基づいて、原モーションコントラスト画像A1,A2を生成する。そして、画像処理装置110は、これらの加算平均を合成モーションコントラスト画像(B1と称する)として取得する。続いて、画像処理装置110は、クラスタT2の干渉信号を取得すると、クラスタT2に含まれる複数の断層画像に基づいて、原モーションコントラスト画像A4,A5を生成する。そして、画像処理装置110は、これらの加算平均を合成モーションコントラスト画像(B2と称する)として取得する。画像処理装置110はさらに、原モーションコントラスト画像A3を生成し、原モーションコントラスト画像A1,A2,A3,A4,A5を加算平均することで合成モーションコントラスト画像(B3と称する)を取得する。表示処理部303は、走査の進行に応じて合成モーションコントラスト画像B1を表示部115に表示させる。そして、表示処理部303は、合成モーションコントラスト画像B2が生成された段階で合成モーションコントラスト画像B1を合成モーションコントラスト画像B2に置き換えるようにしてもよい。同様に、表示処理部303は表示部115に表示された合成モーションコントラスト画像B2を、合成モーションコントラスト画像B3が生成された段階で合成モーションコントラスト画像B3に置き換えることとしてもよい。このようにすれば、最終的な合成モーションコントラスト画像である合成モーションコントラスト画像B3が生成される以前にも、ユーザは合成モーションコントラスト画像を確認することが可能となる。
さらに、画像処理装置110は、ユーザ操作に応じて、少なくとも1つの合成モーションコントラスト画像を表示部115に表示するよう制御してもよい。例えば、ユーザ操作に応じて、クラスタT1が選択された場合には、表示処理部303は、クラスタT1に対応した合成モーションコントラスト画像B1を表示部115に表示するよう制御する。また、クラスタT1とクラスタT2が選択された場合には、表示処理部303は、クラスタT1,T2に対応した合成モーションコントラスト画像B3を表示部115に表示するよう制御する。また、他の例としては、すべての合成モーションコントラスト画像B1,B2,B3を同時に表示部115に表示してもよい。これにより、合成モーションコントラスト同士を比較することができる。
(第2の実施形態)
次に、第2の実施形態に係る画像処理システム100について、第1の実施形態に係る画像処理システム100と異なる点を主に説明する。第2の実施形態に係る画像処理システム100は、3次元モーションコントラスト画像を生成し、さらにこれを2次元面に投影することで2次元投影画像を生成する。
次に、第2の実施形態に係る画像処理システム100について、第1の実施形態に係る画像処理システム100と異なる点を主に説明する。第2の実施形態に係る画像処理システム100は、3次元モーションコントラスト画像を生成し、さらにこれを2次元面に投影することで2次元投影画像を生成する。
画像処理装置110は、3次元モーションコントラスト画像の生成に対応し、特殊なラスタスキャンを実施する。画像処理装置110は、具体的には同一箇所を主走査方向にM回走査しつつ、M回の走査が完了すると、副走査方向にシフトすることで、3次元ボリューム像が得られる。図6は、このスキャン方法の説明図である。図6には、M=3、副走査ライン数300の場合を示す。さらに、本実施形態においては、クラスタスキャンをN回繰り返すものとする。ただし、N回のクラスタスキャンは必ずしも連続で行われる必要はない。また、N回のクラスタスキャンにおいては、同一部位を撮影するものとし、前回のクラスタスキャンの撮影範囲と略同一になるように観察像の画像を用いて、制御を行うこととする。ただし、両範囲に重なる範囲があればよく、必ずしも完全に一致する必要はない。
図7は、第2の実施形態に係る画像処理装置110による、モーションコントラスト画像生成処理を示すフローチャートである。S701において、通信処理部301は、被検眼を同定する情報として被検者識別番号を外部から取得し、被検者識別番号に基づいて、HDD114に格納されている、被検者の被検眼に関する情報を取得する。次に、S702において、断層画像生成部304は、撮影装置120から断層画像の干渉信号を受信し、干渉信号に基づいて、眼底の断層画像を生成する。さらに、副走査方向の位置が異なる複数の断層画像を生成することで、3次元ボリューム像を得る。例えばM=3の場合には、3つの3次元ボリューム像が得られる。すなわち、1つのクラスタには、3つの3次元ボリューム像が含まれる。さらに、N回のクラスタスキャンにより、N個のクラスタが得られる。次に、S703において、位置合わせ部305は、3次元ボリューム像として得られた各断層画像の位置合わせを行う。S703において、クラスタ内の位置合わせとクラスタ間の位置合わせを行う。
図8は、位置合わせ処理(S703)における詳細な処理を示すフローチャートである。S801において、位置合わせ部305は、3次元ボリューム像を2次元平面状に投影し、2次元投影画像(プロジェクション画像)を生成する。具体的には、位置合わせ部305は、全体の断層画像に基づいて、断層画像の深度方向に平均値や、最大値などを計算することで、3次元の断層画像の正面画像であるプロジェクション画像を生成する。なお、プロジェクション画像の生成方法は平均値や最大値に限らない。最小値、中央値、分散、標準偏差、総和などの値で生成してもよい。またプロジェクション画像は、網膜の層検出結果に基づき、決まった層に限定した画像(いわゆるEnFace画像)を生成してもよい。プロジェクション画像は、クラスタ間の位置合わせを目的に生成される。このため、最低限、クラスタ内に含まれる複数の3次元ボリューム像のうち1つを選択し、それに対して1枚のプロジェクション画像を生成すればよい。ただし、これに限らず、クラスタ内のM個の3次元ボリューム像それぞれに対してプロジェクション画像を生成してもよい。
次に、S802において、位置合わせ部305は、第1の位置合わせとして、クラスタ毎のN枚のプロジェクション画像において、画像の横方向(x軸)と縦方向(y軸)の移動と、xy面内の回転の位置合わせを行う。
図9は、第1の位置合わせ処理(S802)における詳細な処理を示すフローチャートである。S901において、位置合わせ部305は、プロジェクション画像から、アーティファクト領域を検出し、除去する。図10は、S901の処理の説明図である。プロジェクション画像1000の領域1001は、黒帯である。黒帯は、撮影中の眼の動きにより、網膜の位置が感度の高い位置から遠ざかることで網膜断層像の輝度値が低下したり、まばたき等により画像全体が暗くなることで脱相関の値が低くなったりすることで発生する。またこれらは、眼の動きがあった部分を再度スキャンする際の眼の条件変化によっても発生することがある。これらのアーティファクトは主走査方向の1ライン単位で発生する。そのため、位置合わせ部305は、1ライン単位でアーティファクトを検出する。例えば、位置合わせ部305は、1ラインでの断層像の平均値が閾値THAVG_B以下の場合、黒帯として検出する。位置合わせ部305は、上記で求めたアーティファクト領域を、プロジェクション画像に対応するMask画像1010に記憶しておく。例えば、図10のMask画像1010の白い領域1011a,1011bには「1」、黒い領域1012には「0」の値が設定、記憶される。
図9に戻り、S901の後、S902において、位置合わせ部305は、クラスタ毎のプロジェクション画像をそれぞれ位置合わせした場合の位置合わせパラメータや画像類似度等を保存するための2次元行列を初期化する。各行列の要素には、位置合わせ時の変形パラメータや画像類似度などの画像高画質化に必要な情報が記録される。
次に、S903において、位置合わせ部305は、位置合わせ対象を選択する。本実施形態においては、位置合わせ部305は、全てのプロジェクション画像を基準画像に設定して残りのプロジェクション画像と位置合わせを行う。例えば、位置合わせ部305は、Data0のプロジェクション画像を基準とし、Data1〜Data(N−1)それぞれとの位置合わせを行う。次に、位置合わせ部305は、Data1のプロジェクション画像を基準とし、Data2〜Data(N−1)それぞれとの位置合わせを行う。次に、位置合わせ部305は、Data2のプロジェクション画像を基準とし、Data3〜Data(N−1)それぞれとの位置合わせを行う。このようにして、位置合わせ部305は、すべてのプロジェクション画像の組み合わせでの位置合わせを行う。図11は、S903の処理の説明図である。図11においては、簡単のため、Data0〜Data2を示しているが、N個のクラスタが存在する場合には、N個のプロジェクション画像間での位置合わせを行う。
なお、ここで示したように基準画像のDataを1つずつ繰り上げた場合に、位置合わせの対象とする画像のスタートDataも1つずつ大きくする。これについてData2のプロジェクション画像を基準とする場合について説明をする。Data2を基準とする場合に、Data0とData1、Data0とData2、Data1とData2の位置合わせは、それまでの処理により既に位置合わせ済みである。そのため、Data2のプロジェクション画像を基準とする場合には、Data3から位置合わせをすればよい。これにより、全部のプロジェクション画像同士の位置合わせとはいえ、半分の組み合わせを計算すればよいことになる。
図9に戻り、S904において、位置合わせ部305は、複数のクラスタに対応するプロジェクション画像間において画像の横方向(x軸)と縦方向(y軸)、xy面内の回転位置合わせを行う。プロジェクション画像間の位置合わせでは、xy面内においてサブピクセル位置合わせを行うために、位置合わせ部305は、プロジェクション画像のサイズを拡大して位置合わせを行う。サブピクセル位置合わせとすることで、ピクセル位置合わせよりも位置合わせの精度が向上することが期待される。例えば、プロジェクション画像の撮影サイズを300×300とした場合、位置合わせ部305は、600×600に拡大する。位置合わせ部305は、拡大する際にはBicubicやLanczos(n)法のような補間方法を用いる。そして、位置合わせ部305は、例えば、2つのプロジェクション画像の類似度を表す評価関数を事前に定義しておき、プロジェクション画像位置をずらしたり、回転させたりしながら評価値を計算し、評価値が最もよくなる場所を位置合わせ結果とする。
評価関数としては、画素値で評価する方法が挙げられる(例えば、相関係数を用いて評価を行う方法が挙げられる)。類似度を表す評価関数として相関係数を用いる場合には、(式1)を用いることができる。
(式1)において、Data0のプロジェクション画像の領域をf(x,y)、Data1のプロジェクション画像の領域をf(x,y)とする。fave、gaveは、それぞれ領域f(x,y)と領域g(x,y)の平均を表す。なお、ここで領域とは位置合わせに用いるための画像領域であり、通常プロジェクション画像のサイズ以下の領域が設定され、上述したROIサイズが設定される。なお、評価関数は、画像の類似度や相違度を評価可能な関数であればよく、実施形態に限定されるものではない。評価関数の他の例としては、SSD(Sum of Squared Difference)や、SAD(Sum of Absolute Difference)が挙げられる。また、他の例としては、位置合わせ部305は、POC(Phase Only Correlation)のような方法で、位置合わせを行ってもよい。この処理により、xy面内の大局的な位置合わせが行われる。
なお、ここではプロジェクション画像のサイズを拡大して位置合わせを行う例について示したが、これに限らない。また、入力のプロジェクション画像サイズが900×900のような高密度スキャンの場合には、必ずしも拡大をする必要はない。また、位置合わせを高速で行うため、ピラミッド構造データを生成して位置合わせをしてもよい。
次に、S905において、位置合わせ部305は、プロジェクション画像の画像評価値を計算する。位置合わせ部305は、S904において2次元での位置合わせが完了しているプロジェクション画像において、位置合わせにより発生する無効領域を含まない画像の共通領域を用いて画像評価値を計算する。例えば、画像評価値Qは(式2)により計算される。
(式2)の最初の項は相関係数を表し、(式1)で示した式と同様である。そのため、式の中のσf、σgはそれぞれ、(式1)で示したものと対応する。2番目の項は明るさを評価する項である。3番目の項はコントラストを評価する項である。それぞれの項の、最小値は0、最大値は1となる。例えば、Data0とData1が同じ画像である場合には評価値は1となる。そのため、N個のプロジェクション画像の中で平均的な画像を基準とした場合に評価値は高く、他のプロジェクション画像と異なるようなプロジェクション画像を基準とした場合には評価値は低くなる。ここで、他のプロジェクション画像と異なるとは、撮影位置が異なる、画像がひずんでいる、全体的に暗いあるいは明るすぎる、黒帯などのアーティファクトが含まれているような場合である。なお、画像評価値の算出方法は、実施形態に限定されるものではない。他の例としては、位置合わせ部305は、(式2)に含まれる3つの項それぞれを単独で評価してもよく、また他の組み合わせで評価してもよい。
次に、S906において、位置合わせ部305は、S902において初期化した2次元行列に値を保存する。位置合わせ部305は、例えば、基準画像をData0、対象画像をData1とする場合、2次元行列の要素(0、1)に対し、値を保存する。保存される値は、横方向の位置合わせパラメータx、縦方向の位置合わせパラメータy、xy面内の回転パラメータα、画像評価値、画像類似度である。位置合わせ部305はまた、図10を参照しつつ説明したMask画像1010をプロジェクション画像1000に関連付けて保存しておく。また、位置合わせ部305は、倍率補正を行う場合には、倍率を保存してもよい。
次に、S907において、位置合わせ部305は、第1の位置合わせ処理を終了するか否かを判断する。位置合わせ部305は、すべてのプロジェクション画像を基準画像として設定し、S904〜S906の処理を行った場合に終了すると判断する。位置合わせ部305は、終了すると判断した場合には(S907でYES)、処理をS908へ進める。位置合わせ部305は、終了すると判断しなかった場合には(S907でNO)、処理をS903へ進める。この場合、S903において、未処理のプロジェクション画像を基準画像として設定し、S904以降の処理を継続する。
S908において、位置合わせ部305は、2次元行列の残りの要素を更新する。S903の処理において説明したように、上記の処理においては、すべてのプロジェクション画像の組み合わせのうち半分の組み合わせしか計算をしていない。そこで、S908においては、位置合わせ部305は、計算をしていない要素に対し、計算済みの要素の値をコピーする。位置合わせ部305は、例えば、2次元行列の要素(0、1)のパラメータを(1、0)の要素にコピーする。すなわち、位置合わせ部305は、要素(i、j)を要素(j、i)にコピーする。この際、位置合わせパラメータx、yと回転パラメータαは逆になるため、位置合わせ部305は、負の値を掛けてコピーをする。画像類似度などは逆にならないため、位置合わせ部305は、同じ値をそのままコピーする。これらの処理によりプロジェクション画像位置合わせが行われる。以上で、第1の位置合わせ処理(S802)が完了する。
図8に戻り、第1の位置合わせ処理(S802)の後、S803において、位置合わせ部305は、S803における位置合わせの結果に基づいて基準画像を選択する。S803において、2次元行列の各要素に高画質化画像生成に必要な情報が保存されているので、位置合わせ部305は、2次元行列の情報に基づいて、基準画像を選択する。具体的には、位置合わせ部305は、画像評価値、位置合わせパラメータ、アーティファクト領域評価値を用いて選択を行う。画像評価値には、S905で求めた値が用いられる。位置合わせパラメータは、S904で求めた位置合わせ結果のxとyを用いて算出される。位置合わせ部305は、例えば、(式3)により位置合わせパラメータを求める。(式3)において、位置合わせパラメータは、移動量が大きいほど大きな値となる。
アーティファクト領域評価値は、S901において得られたMask画像を用いて、例えば、(式4)により算出される。
(式4)において、T(x,y)は、はMask画像でのアーティファクトではない領域のピクセルを表し、A(x,y)は、Mask画像の全ピクセルを表す。アーティファクトが存在しない場合、最大値は1となる。
画像評価値とアーティファクト領域評価値は数値が大きい方がよく、位置合わせパラメータ評価値は数値が小さい方がよい。また、画像評価値と位置合わせパラメータ評価値は、ある画像を基準とした時に、その他の画像との関係で求める値であるため、N−1個の合計値となる。これらの評価値は評価尺度が異なるため、位置合わせ部305は、それぞれの値でソートを行い、ソートしたインデックスの合計値により基準画像を選択する。位置合わせ部305は、例えば、画像評価値とアーティファクト領域評価値の数値が大きい程、ソート後のインデックスが小さくなるように、かつ、位置合わせパラメータ評価値の数値が小さい程、ソート後のインデックスが小さくなるようにソートを行う。そして、位置合わせ部305は、これらのソート後のインデックス値が最も小さくなる画像を基準画像として選択する。
なお、基準画像選択の方法について、ソート値を合計することで基準画像を選択する例について述べたがこれに限らない。他の例としては、位置合わせ部305は、それぞれの評価値のソート後のインデックスに重みをつけて評価値を計算してもよい。また、他の例としては、位置合わせ部305は、ソート値ではなく、それぞれの評価値が1になるように正規化し、その結果に応じて基準画像を選択してもよい。例えば、画像評価値は1に正規化しているが、本実施形態においてはN−1個の合計値であるため、平均値を用いるようにすればよい。
例えば、位置合わせパラメータ評価値を(式5)のように定義することで1に正規化でき、この場合、評価値が1に近いほうが良い評価値となる。
(式5)において、SVnは(式3)で求めた値のN−1個の合計値で、添え字のnはData番号に対応する。そのため、Data0の場合は、SV0である。SVmaxは、Data0〜Data(N−1)の間で最大の位置合わせパラメータ評価値である。αは重みであり、SVnとSVmaxが同じ数値の時に、NSVnの値をいくつに設定するかを調整するパラメータである。なお、最大値SVmaxは上述したように実際のデータから決めてもよいし、閾値として事前に定義しておいてもよい。アーティファクト領域評価値は0〜1に正規化してあるので、そのまま用いればよい。このように、全ての評価値を1に正規化した場合には、評価値の合計値が最も大きくなるものを基準画像として選択する。
ここで説明したように、基準画像は、N個の画像の中で平均的な画像であり、他の画像を位置合わせする際に移動量が少なく、アーティファクトが少ないという条件を最も満たす画像が選択される。これにより、例えば、図11の例において、基準画像にData1が基準画像として選択される。この場合、Data0とData2に対し、第1の位置合わせ処理において得られた位置合わせパラメータに基づき、移動や回転等が施される。
次に、S804において、位置合わせ部305は、第2の位置合わせとして、プロジェクション画像を用いて網膜の横方向(x軸)の位置合わせを行う。S804の処理について図12を参照しつつ説明する。図12(a)は、基準画像Data1と、位置合わせ対象がData2において、横方向の位置合わせを行う例を示している。また、Maskにおいては、Data2に含まれるアーティファクト(図では横方向の黒いライン)と、Data1との位置合わせの結果Data2が移動することにより生じる無効領域(図ではMask画像の縦方向の黒いライン)に0が設定されている。位置合わせ部305は、基準画像と位置合わせ対象画像についてそれぞれのラインで横方向に位置合わせを行い、ライン単位での類似度を計算する。位置合わせ部305は、類似度の計算には、例えば(式1)を用いる。そして、位置合わせ部305は、類似度が最大となる位置にラインを移動させる。また、位置合わせ部305は、ライン単位で基準画像に対しての類似度を計算し、類似度に応じてMaskに重みを設定する。
図12(b)は、位置合わせの結果の例を示す図である。図12(b)では、画像上端と画像中心付近では、基準画像と似ていないと判断され、重ね合わせに使用しないラインとしてMask画像に横方向の黒ラインが設定された例を示している。また、画像中心付近と画像下端では、ライン単位の位置合わせの結果として、中心付近では左側に、画像下端では右側にずらされた例を示している。画像をずらすことで無効領域が生じるため、Maskには無効領域に0が設定される。この処理により、xy面内の局所的な位置合わせが行われる。なお、第1の位置合わせで求めた回転パラメータαに関して、第2の位置合わせを行う前にそれぞれの画像に対して適用してもよいし、第2の位置合わせを行った後に適用するようにしてもよい。
図8に戻り、S804の処理の後、S805において、位置合わせ部305は、第3の位置合わせとして、基準の3次元ボリューム像とその他の3次元ボリューム像との深さ方向(z方向)における位置合わせを行う。図13は、第3の位置合わせ処理(S805)における詳細な処理を示すフローチャートである。S1301において、位置合わせ部305は、3次元ボリューム像としての断層画像をそれぞれ記憶しておく。位置合わせ部305は、例えば、Data1の3次元ボリューム像を記憶する。次に、S1302において、位置合わせ部305は、境界線情報を取得する。ここで、深さ方向位置合わせに用いる境界線をL1とする。
次に、S1303において、位置合わせ部305は、それぞれの3次元ボリューム像毎に深さ方向の位置と傾きを合わせる。2次元の断層像を撮影する際に眼は動いている。xy面内の移動に関しては、1つのクラスタスキャン内は、リアルタイムにトラッキングを行いながら撮影を行うため、撮影時にほとんど位置合わせができている。しかし、深さ方向に関してはリアルタイムトラッキングをしていないため、データ内部でも位置合わせを行う必要がある。なお、この場合においても、断層画像間の相関等に基づいてxy面内においても位置合わせを行ってもよい。
ここでは、1つの3次元ボリューム像(1つのクラスタ)内の位置合わせについて、図14を参照しつつ説明をする。図14(a)は、位置合わせに用いる境界線L1の一例を示す図である。ここでは、境界線L1(ILM)を用いる場合について説明するが、境界線の種類はこれに限らない。他の境界線でもよく、複数の境界線を組み合わせてもよい。図14(a)において、基準データをIndexc、対象データをIndexc−1としている。なお、最初の基準データは3次元ボリューム像の中心、対象データは基準データに対して副走査方向において隣の境界線とする。
図14(b)には、説明のために基準データの境界線L1と位置合わせ対象の境界線L1'とを重ねて示す。図14(b)の例では、境界線L1は縦方向に12分割されている。ここでは、分割数を12として説明をする。それぞれの領域をArea0〜Area11とする。なお、図14(b)において、画像中心部に分割領域を描画していないが、実際には画像全体を領域分割している。そして、上下矢印Difference1は、L1とL1'との差を表す。これらの差は、それぞれの領域Area0〜Area11それぞれで求める。これらの分割数は横方向の画像サイズに応じて変更してもよい。また、共通して検出した境界線の横幅のサイズに応じて変更してもよい。ここでは、簡単のため、横方向の境界線サイズを同じとしているが、実際には、網膜層が画像の上方向にずれ(z軸で0の方向)、網膜層の一部領域が画像から欠損する場合がある。その場合には、画像全体で境界線を検出することができない。そのため、境界線同士の位置合わせにおいては、基準データの境界線L1と位置合わせ対象の境界線L1'との境界線が検出できている範囲を分割して位置合わせをすることが望ましい。
図14(b)において各領域のDifference1の平均をそれぞれD0〜D11とする。すなわち、ILMの差の平均をその領域の差分の代表値とする。位置合わせ部305は、各領域で求めた代表値D0〜D11を小さい順にソートする。そして、位置合わせ部305は、ソートした代表値を小さい順から8個用いて、平均と分散を計算する。本実施形態においては、選択数は8個とするが、選択数は分割数よりも小さい数であればよく、8個に限定されない。モーションコントラスト画像生成部306は、ソートした代表値を一つずつずらして平均と分散を計算する。本実施形態では12個に分割した領域のうち8個の代表値を用いて計算をするため、全部で5種類の平均値と分散値が求まる。次に、位置合わせ部305は、求めた5種類の分散値の中で最小となる分散値を算出した際の8個の差分の代表値を用いて深さ方向のシフト値と傾きを求める。
図14(c)は、横軸に分割領域の中心x座標、縦軸に差分の代表値としたグラフである。図14(c)において、黒丸は分散値が最小となった組み合わせの差分の代表値の例であり、黒三角は選択されなかった差分の代表値の例を示している。位置合わせ部305は、分散値が最小となった組み合わせの差分の代表値(図14(c)における黒丸)を用いて、(式6)により、深さ方向のシフト値Dを求める。
(式6)のxはx座標、すなわちAスキャン位置である。また、(式6)のa、bは、それぞれ(式7)、(式8)により得られる。(式7)、(式8)において、xiは選択された分割領域の中心x座標、Diは選択された差分の代表値であり、nは選択した代表値の数である。すなわち、本例においては、n=8である。
ここで示すように境界線位置合わせ時に領域を分割し、分割した領域の差分値の組み合わせにおいて最もバラつきが小さくなる値を用いる。これにより、境界線検出に誤りがあったとしても、それらの領域の値は使用されない。そのため、安定して深さ方向のシフト値を計算することができる。なお、各領域の深さ方向の代表値として平均値を用いたが、これに限定されるものではなく、中央値等、代表的な値を用いることができればよい。さらに、バラつきの値として分散値を用いたが、これに限定されるものではなく、標準偏差等、値のバラつきを評価できる指標であればよい。
この処理に関して、位置合わせ部305は、基準データと対象データを変えながらすべてデータに関して位置合わせを行う。すなわち、最初の基準データは3次元ボリューム像の中心境界線、対象データは基準データの隣の境界線データとした。この位置合わせが終了したら、その次には、位置合わせ部305は、先ほど対象データとしたデータを基準データとして、さらにその隣のデータを対象データとして位置合わせを行う。この処理が画像の端まで完了したら、位置合わせ部305は、再度、基準データを中心境界線として、最初の位置合わせとは反対側の隣の境界線データを対象データとして位置合わせをする。反対側においてもこの処理を画像の端まで行う。位置合わせ部305は、層検出できていないデータがある場合には、1つ前の位置合わせパラメータを用いて補正を行い、次のデータに進む。
この処理を適用した例を図15(a)に示す。図15(a)は、境界線L1のz座標を輝度値として表現したDepthMapである。DepthMapが明るい場合はz座標の値が大きく、DepthMapが暗い場合はz座標の値が小さいことを表している。図15(a)にはData0〜Data2を示し、上側のDepthMapは位置合わせ前で、下側のDepthMapは位置合わせ後である。位置合わせ前のDepthMapには、すべてDataにおいて、横方向の色むらがある。これは、撮影時にz方向に網膜が動いていることを表している。一方、位置合わせ後のDepthMapには、横方向の色むらが減少し、隣接するデータ間でz方向の位置合わせが行われたこを表している。なお、深さ方向位置合わせにおいて、データの片側を位置合わせした後に、反対側の位置合わせをする例について示したが、それに限らない。最初の基準データを同じにして、両側の処理を並列に実行してもよい。なお、位置合わせ部305は、基準データ(本実施形態ではData1)の各Aスキャンの深度方向への移動量を記憶しておく。
図13に戻り、S1303の後、S1304において、位置合わせ部305は、複数の3次元ボリューム像間(複数のクラスタ間)での深さ方向の位置と傾きを合わせる。S1304においては、位置合わせ部305は、S1303で3次元ボリューム像内での深さ方向の位置合わせをしたデータを用いて、境界線L1を用いて位置合わせを行う。計算方法は、S1303において説明したのと同様であるが、計算する対象は、データ内ではなくデータ間となる。この処理を適用した例を図15(b)に示す。ここで、基準データはData1で、位置合わせの対象データはData0とData2とする。位置合わせ部305は、DepthMapに対して、第1の位置合わせ及び第2の位置合わせで求めたパラメータを適用して、Data0とData2のDepthMapをそれぞれ変形させる。そして、位置合わせ部305は、Data0とData2共に、Data1に対して、各Bスキャンに相当する境界線L1の深さ方向位置合わせを実行する。
図15(b)では、Data0〜Data2を示し、上側のDepthMapはデータ内での位置合わせ後で、下側のDepthMapはデータ間での位置合わせ後である。データ内での位置合わせ後のDepthMapでは、Data0〜Data2において網膜のz位置が異なるため、DepthMapの明るさが異なっている。一方、データ間での位置合わせ後のDepthMapでは、Data0〜Data2において網膜のz位置が揃っているため、DepthMapの明るさも揃っていることを表している。これらの処理により、z方向の大局的な位置合わせが行われる。
図13に戻り、S1304の後、S1305において、位置合わせ部305は、第1の位置合わせ、第2の位置合わせ及び第3の位置合わせにおいて求めた、x、y、Rotation、zに関する変形パラメータを適用して3次元ボリューム像を変形する。具体的には、位置合わせ部305は、3次元ボリューム像に含まれる断層画像を変形する。なお、S904(図4)においてxy面内において画像を拡大して位置合わせを行っている場合には、位置合わせ部305は、元のサイズに相当する変形パラメータに戻した上で、変形処理を行う。すなわち、2倍に拡大した画像でのxy面内位置合わせパラメータの数値が1であった場合、ここでは、0.5であるとする。そして、元のサイズで3次元ボリューム像の形状変形を行う。
x、y、Rotation、zに関する変形パラメータがサブピクセルあるいはサブボクセルでの移動量である場合、位置合わせ部305は、3次元ボリューム像を補間処理で変形させる。ここで、サブピクセルあるいはサブボクセルであるとは、移動量が0.5のような実数値の場合や、Rotationパラメータが0ではなく、データを回転させる場合などのことである。形状データの補間には、BicubicやLanczos(n)法などを用いることができる。
図16は、Data0〜Data2の3次元ボリューム像を示す図である。上側の3次元ボリューム像は、位置合わせを行う前の3次ボリューム像であり、下側の3次元ボリューム像は、第1の位置合わせ、第2の位置合わせ、第3の位置合わせを行った後に画像変形した3次元ボリューム像である。ここで示すように、データ内かつデータ間での位置合わせ後の3次元ボリューム像は、Data0〜Data2において網膜のxyzに関する位置合わせが成されたことを表している。
図13に戻り、S1305の後、S1306において、位置合わせ部305は、データ間でのz位置合わせを行ったDepthMapにおいて、基準データと対象データとの差分検出を行う。そして、差分の絶対値が閾値以上の場所(x、y)においては、位置合わせの精度が低いと判断し重ね合わせに使用しないこととする。そのため、対象データのMask画像に無効領域として0を設定する。以上で、第3の位置合わせ処理(S805)が完了する。
図8に戻り、第3の位置合わせ処理(S805)の後、S806において、位置合わせ部305は、第4の位置合わせ処理を行う。第4の位置合わせ処理は、基準データと対象データ間において、断層画像内部の特徴がある部分に位置合わせのための領域を複数設定し、その領域単位で網膜の横方向(x軸)と深さ方向(z軸)の位置合わせを行う処理である。なお、ここでの位置合わせはz方向の局所位置合わせとして説明をする。
図17は、第4の位置合わせ処理(S806)における詳細な処理を示すフローチャートである。S1701において、位置合わせ部305は、位置合わせ部305は、境界線情報を取得する。ここで、深さ方向位置合わせに用いる境界線をL1とL3とする。次に、S1702において、位置合わせ部305は、対象画像の特徴領域を含むように位置合わせ用の領域を設定する。S1702の処理について図18を参照しつつ説明する。
図18には基準データの3次元ボリューム像の断層画像と、位置合わせ対象となる3次元ボリューム像の断層画像を示している。位置合わせ対象となる対象画像1には、基準断層画像の境界線情報(L1とL3)を基に、複数の位置合わせ用の領域(ROI:Region of Interesting)が設定されている。ROIの深さ方向サイズは、L1とL3を基準として、それよりもそれぞれ数10ピクセル程度、上方向と下方向に広く設定される。なお、上下方向に数10ピクセル程度パラメータを設定する場合において、大局位置合わせの結果を用いてパラメータを補正することがある。図18の対象画像1に示すように大局位置合わせにおいて、画像全体を下方向にシフトさせている場合、画像の上端部に無効領域が存在する。この場合、ROIを設定する範囲とその探索領域が無効領域を含まないように初期のROIサイズを補正する必要がある。
ROIの横方向サイズは、画像を分割したサイズに応じて設定される。分割数は、画像のサイズ(Aスキャン本数)や画像の撮影サイズ(3mm)など、撮影パラメータに合わせて設定される。例えば、本実施形態において、Aスキャン本数を300、撮影サイズを3mmとした場合、分割数は10とする。なお、位置合わせ部305は、横方向のサイズとROIの設定値においても大局位置合わせの結果を用いて補正を行う。上下方向のパラメータ同様に横方向においても無効領域が存在することがあるため、ROIを設定する範囲とその探索領域が無効領域を含まないように設定する必要がある。
そして、位置合わせ部305は、局所位置合わせ用のROIをそれぞれ重畳するように設定する。これは、ROIを重複させずに、ROIのサイズを小さくする場合、ROIの中に特徴的な部位を含まない場所が存在することがあるためである。例えば、網膜を狭画角で撮影した場合、画像内に平坦な組織が広い範囲において写る場合がある。また一方、ROIを重複させずに、特徴を含むようにROIの範囲を広く設定すると、局所位置合わせのためのサンプリング数が少なくなり、粗い位置合わせとなってしまうためである。そのため、これらの問題を解決するために、ROIのx方向のサイズを広くして、かつそれぞれのROI同士を重畳させて設定することとする。
なお、図18において、画像中心部にROIを描画していないが、実際には画像の左端から右端まで網膜上にROIを設定する。さらに、ROIを設定する間隔は、ROI位置合わせ時の探索範囲を考慮するのが望ましい。具体的には、ROI位置合わせ時の横方向探索範囲をXRとする場合、位置合わせ部305は、隣接するROIの中心座標の間隔が2XR以上となるように設定をする。これは、中心座標の間隔を2XR未満とする場合、隣接するROI同士の中心位置が入れ替わる可能性があるためである。
図17に戻り、S1702の処理の後、S1703において、位置合わせ部305は、ROIを使って領域位置合わせを行う。位置合わせ部305は、S904(図9)において説明したプロジェクション画像の位置合わせと同様に(式1)を用いて画像類似度に応じた位置合わせを行う。画像位置合わせにおいては、位置合わせ部305は、対象画像に設定したROIが基準となる断層画像ではどこにあるかを探索する。この際、第1〜第3の位置合わせにより、3次元ボリューム像の変形を行っているので、基準画像と対象画像とのおおよその位置は合っている。そのため、基準画像での位置合わせの探索範囲は、ROIの初期位置から上下左右数〜数10ピクセルを探索すればよく、最も類似する場所を位置合わせ結果とする。なお、探索領域は固定でもよく、撮影画角、撮影部位、画像の場所(端や中心)に応じて変更してもよい。撮影画角が狭くスキャンスピードが速い場合には、1枚の画像を撮影している間の眼の移動量は小さいが、撮影画角が広くなると眼の移動量も大きくなる。そのため、撮影画角が大きい場合には探索範囲を広くしてもよい。また、眼が回転する中心部分と周辺部とでは、移動量は周辺部の方が大きくなるため、周辺部の方へ探索範囲を広くしてもよい。
次に、S1704において、位置合わせ部305は、S1703において求めた位置合わせパラメータを補間することで各Aスキャンの移動量を算出する。S1704の処理について図19を参照しつつ説明する。図19(a)は、初期設定した領域のROI1〜ROI3を表している。C1〜C3の下三角はROI1〜ROI3の中心位置を表している。また、図19(b)は、S1703での位置合わせ後のROIの移動例を示している。図19(b)においては、ROI1とROI3がそれぞれ右側に移動し、ROI2が移動しない場合の例である。そのため、ROIの中心C1とC3がそれぞれC1'とC3'に移動している。各ROIの移動量からAスキャンの移動量を算出するためには、隣接するROIとROIの中心位置の移動量に基づいて算出をする。例えば、ROI1の中心位置はC1からC1'に移動しており、ROI2の中心位置はC2のままである。
位置合わせ部305は、(式9)〜(式11)を用いて変形前のC1からC2の間にある各Aスキャンのx方向移動量を求める。
(式9)〜(式11)において、X1、X2は各ROIの初期中心座標、ΔX1、ΔX2は各ROIの中心座標のx方向移動量である。A_beforeは変形前のAスキャンインデックスの値、A_afterはA_beforeが参照する、変形前のAスキャンインデックスの値である。例えば、A_beforeが55、計算の結果でA_afterが56とする場合、Aスキャンインデックス55には、Aスキャンインデックス56のAスキャンデータが入る。なお、z方向の移動量も数10〜12と同様の考え方に基づき、各ROIの中心位置の移動量から求めることができ、上下方向に数ピクセルデータを移動する。
なお、A_afterの値は実数でも整数でもよい。実数の場合は、複数のAスキャンデータから補間方法(BilinearやBicubic等)により新しいAスキャンデータを作成する。整数の場合は、対応するAスキャンインデックスのデータをそのまま参照する。なお、ここでは、x方向とz方向の両方を局所的に位置合わせする例を示したがこれに限らない。例えば、x方向だけ、z方向だけのどちらか一方のみを局所的に変形させるようにしてもよい。なお、x方向はトラッキングで撮影時に位置合わせを行っているため、処理負荷を軽減するために、z方向のみ局所的な位置合わせをするようにしてもよい。
次に、S1705において、位置合わせ部305は、S1704で求めたAスキャン移動量を基に、Aスキャン毎にx方向とz方向に移動させる。これにより、Aスキャン単位で変形した断層画像を生成することができる。次に、S1706において、位置合わせ部305は、第4の位置合わせ処理を終了するか否かを判断する。位置合わせ部305は、基準となる3次元ボリューム像の全ての断層画像に対して、位置合わせの対象となるデータのすべての局所位置合わせ行った場合に終了すると判断する。位置合わせ部305は、終了すると判断した場合には(S1706でYES)、第4の位置合わせ処理を終了する。位置合わせ部305は、終了しないと判断した場合には(S1706でNO)、処理をS1701へ進め、処理を継続する。
図8に戻り、第4の位置合わせ処理(S806)の処理の後、S807において、位置合わせ部305は、基準データ(本実施形態ではData1)の網膜位置を入力時の深度位置の状態に戻す。このとき、位置合わせ部305は、S1301(図13)において記憶した3次元ボリューム像と、S1303において記憶した各Aスキャンの深度方向移動量と、を参照する。位置合わせ部305は、加算平均後の3次元の断層画像を、S1303で記憶した各Aスキャンの深度方向移動量を用いて元の状態に戻す。例えば、あるAスキャンにおいて下方向(z方向)に5移動させている場合、位置合わせ部305は、上方向(z方向)に5移動させる。上方向に5移動させることで、データ下部に無効領域が発生するので、位置合わせ部305は、この無効領域には、ステップS1301で記憶した3次元ボリューム像の同じ座標位置のデータをコピーする。
なお、加算平均後データの無効領域に対して入力のデータをコピーする例を示したが、これに限らない。他の例としては、位置合わせ部305は、3次元ボリューム像に対し、加算平均後の3次元ボリューム像から元々の座標位置に対応する範囲のデータを切り出してコピーしてもよい。上述の例では、データ移動後に無効領域へのコピーという2ステップでの処理であるのに対し、本例では、コピーのみの1ステップとなるため、処理負荷を減らすことができる。以上で、位置合わせ処理(S703)が完了する。
図7に戻り、S703の処理の後、S704において、モーションコントラスト画像生成部306は、S703において位置合わせが完了した3次元ボリューム像に基づいて、3次元モーションコントラスト画像を生成する。ここで、3次元モーションコントラスト画像とは、2つの3次元ボリューム像の対応する各位置の断層画像から得られたモーションコントラスト画像群である。モーションコントラスト画像生成部306は、各クラスタに含まれるM個の3次元ボリューム像から(M−1)個の3次元モーションコントラスト画像を生成する。さらに、モーションコントラスト画像生成部306は、2つのクラスタから1つずつ選択した2つの3次元ボリューム像から1個の3次元モーションコントラスト画像を生成する。
S704の処理について、図20、図21を参照しつつ説明する。図20において、MCは3次元のモーションコントラスト画像を示し、LMCは3次元のモーションコントラスト画像を構成する2次元のモーションコントラスト画像を示している。ここでは、このLMCを生成する方法について説明をする。モーションコントラスト画像生成部306は、位置合わせ後の2つの断層画像から(式12)により脱相関値M(x,y)を求め、脱相関値M(x,y)に基づいて、モーションコントラスト画像を生成する。
ここで、A(x,z)は断層像画像Aの位置(x,z)における輝度、B(x,z)は断層画像Bの同一位置(x,z)における輝度を示している。脱相関値M(x,z)は0〜1の値となり、2つの輝度の差が大きいほどM(x,z)の値は大きくなる。モーションコントラスト画像生成部306は、S704において、同一のクラスタの2つの断層画像において脱相関値M(x,z)を算出し、さらに、2つのクラスタから1つずつ選択した2つの断層画像において脱相関値M(x,z)を算出する。ただし、モーションコントラスト画像の生成に用いられる2つの断層画像にマスク部分がある場合は、モーションコントラスト画像生成部306は、モーションコントラスト画像における対応する位置の値はゼロにする。
図21(a)のプロジェクション画像2100及び図21(b)のプロジェクション画像2110は、モーションコントラスト画像の生成に用いられる2つの断層画像A(x,z)、B(x,z)に対応したプロジェクション画像の一例である。図21(a)のマスク画像2101は、プロジェクション画像2100に対応し、図21(b)のマスク画像2122は、プロジェクション画像2110に対応する。プロジェクション画像2100においては、下部にマスク部分が存在し、プロジェクション画像2110においては、左側と中央の少し上側にマスク領域が存在する。
モーションコントラスト画像生成部306は、まずマスク画像2101及びマスク画像2111の論理和を取ることで、図21(c)に示すマスク画像2121を生成する。モーションコントラスト画像生成部306はさらに、マスク画像2121の1箇所に関し(式12)により、脱相関値M(x,z)を算出する。なお、モーションコントラスト画像生成部306は、図21(c)に示すモーションコントラスト画像2120のように、マスクが0の箇所については、脱相関値M(x,z)をゼロとする(図21(c)の斜線部分)。
(式12)に示す脱相関値M(x,y)は、ノイズの影響を受けやすい傾向がある。例えば、複数の断層画像の無信号部分にノイズがあり、互いに値が異なる場合には、脱相関値が高くなり、モーションコントラスト画像にもノイズが重畳してしまう。これを避けるために、モーションコントラスト画像生成部306は、前処理として、各画素毎の断層像の画素値を参照し、所定の閾値を下回る断層画像はノイズとみなして、ゼロに置き換える。これにより、画像生成部332は、生成されたモーションコントラストデータに基づいて、ノイズの影響を低減したモーションコントラスト画像を生成することができる。なお、モーションコントラスト画像生成部306は、第1の実施形態において説明したのと同様、処理対象の複数のクラスタそれぞれに含まれる断層画像に基づいて閾値を決定し、この閾値を用いてノイズ除去を行う。
図7に戻り、S704の処理の後、S705において、合成部307は、S704において生成された複数の3次元モーションコントラスト画像を合成する。具体的には、合成部307は加算平均処理を行う。合成部307は、ボクセル毎に、複数のモーションコントラスト画像とMask画像の値を掛け算した値の合計値SUM_Aと、複数のMask画像の値の合計値SUM_Bをそれぞれ保持しておく。Mask画像にはアーティファクトとして除去した無効領域や、位置合わせによりデータが存在しない無効領域が0として保存されているため、Mask画像の合計値SUM_Bにはボクセル毎に異なる値が保持されている。通常、位置合わせにおいてxyz毎、数10ボクセルの移動が想定されることが多い。この場合には、加算平均前のモーションコントラスト画像のデータ数がK個である場合、画像中心付近のSUM_Bのボクセル値はKであり、画像端部のSUM_Bのボクセル値はKよりも少ない値になる。そして、合成部307は、SUM_AをSUM_Bで割ることにより加算平均を計算したモーションコントラスト画像を求めることができる。
図22を参照しつつ、2つのモーションコントラスト画像に対する加算平均処理について説明する。図22(a)は、モーションコントラスト画像2200と対応するマスク画像2201を示す図である。図22(b)は、モーションコントラスト画像2210と対応するマスク画像2211を示す図である。各モーションコントラスト画像2200,2210の斜線部はマスクされている領域であり、SUM_Aを計算する際にゼロとなる。図22(c)は、モーションコントラスト画像2200,2210の加算平均により得られたモーションコントラスト画像2220とSUM_Bの値を示す図である。なお、本実施形態においては、SUM_Bが1〜2の値を取った例を示しているが、マスクの領域が重複することにより、SUM_Bにゼロの領域がある場合は、モーションコントラスト画像の値もゼロとする。
図7に戻り、S705の処理の後、S706において、表示処理部303は、ユーザ指示に応じた画像を表示部115に表示するよう制御する。例えば、受付部302がxz面のモーションコントラスト画像の表示指示を受け付けたとする。この場合には、合成部307は、S705において得られた3次元モーションコントラスト画像に基づいて、xz面のモーションコントラスト画像を生成する。そして、表示処理部303は、得られたxz面のモーションコントラスト画像を表示するよう制御する。また、受付部302が、xy面のモーションコントラスト画像(OCTA画像)の表示指示を受け付けたとする。この場合には、合成部307は、S705において得られた3次元モーションコントラスト画像に基づいて、xy面のモーションコントラスト画像を生成する。具体的には、合成部307は、指定された生成範囲に対応した3次元モーションコントラスト画像を2次元平面に投影することにより、xy面のモーションコントラスト画像を生成する。そして、表示処理部303は、得られたxy面のモーションコントラスト画像を表示するよう制御する。
また、受付部302が、ボリュームレンダリング画像の表示指示を受け付けたとする。この場合には、合成部307は、S705において得られた3次元モーションコントラスト画像に基づいて、ボリュームレンダリング画像を生成する。そして、表示処理部303は、得られたボリュームレンダリング画像を表示するよう制御する。また、他の例としては、合成部307は、閾値処理が行われた次元モーションコントラストデータにカラーの設定をし、表示処理部303は、輝度値の3次元断層画像に重畳表示してもよい。
なお、表示処理部303は、xz面のモーションコントラスト画像とxy面のモーションコントラスト画像とを表示部115に同時に表示してもよい。また、表示処理部303は、xz面のモーションコントラスト画像と、xy面のモーションコントラスト画像と、ボリュームレンダリング画像とを表示部115に同時に表示してもよい。このように、表示処理部303は、xz面のモーションコントラスト画像、xy面のモーションコントラスト画像及びボリュームレンダリング画像のうち少なくとも1つを表示部115に表示するよう制御すればよい。
図23〜図25は、加算平均処理を行う前後のモーションコントラスト画像を示す図である。図23は、xz面のモーションコントラスト画像、図24は、xy面のモーションコントラスト画像(OCTA画像)、図25は、ボリュームレンダリング画像である。図23(a)は、加算平均前の3次元モーションコントラスト画像から生成されたxz面のモーションコントラスト画像を示す図である。図23(b)は、加算平均後の3次元モーションコントラスト画像から生成されたxz面のモーションコントラスト画像を示す図である。図24(a)は、加算平均前の3次元モーションコントラスト画像から生成された、網膜表層のOCTA画像、図24(b)は、加算平均後の3次元モーションコントラスト画像から生成された、網膜表層のOCTA画像を示す画像である。図25(a)は、加算平均前の3次元モーションコントラスト画像から生成されたボリュームレンダリング画像を示す図である。図25(b)は、加算平均後の3次元モーションコントラスト画像から生成されたボリュームレンダリング画像を示す図である。
図23〜図25に示すように加算平均処理により、コントラストが向上したモーションコントラスト画像を得ることができる。さらに、図25のようにモーションコントラスト画像のボリュームレンダリングを行うと、2次元のOCTA画像では認識し難い血管の深さ方向における上下関係なども把握しやすくなる。3次元モーションコントラスト画像と同様に、複数の3次元断層画像に関しても加算平均処理を行ってもよい。このようにすれば、高画質なOCTA画像とともに、高画質な3次元断層像を得ることができる。
以上のように、第2の実施形態にかかる画像処理装置110は、第1の実施形態に係る画像処理装置110と同様に、多数の断層画像を用いて合成モーションコントラスト画像を生成することができる。したがって、より高精度なモーションコントラスト画像を生成することができる。さらに、第2の実施形態に係る画像処理装置110は、3次元ボリューム像を生成することで、精度よく位置合わせを行うことができる。
第2の実施形態の第1の変形例としては、画像処理装置110は、さらに層検出の評価値に基づいて基準画像の選択を行うこととしてもよい。画像処理装置110は、例えば、層検出時にAスキャン毎に断層像の輝度値を参照するが、検出時の断層像の輝度値の情報を基に、Aスキャン毎に検出精度の信頼度を設定して総検出の評価値を求めてもよい。例えば、断層像の輝度値が低い場合などは、まばたき等があり、正しく網膜を検出できていない可能性がある。そこで、画像処理装置110は、この場合に検出の信頼度が低くなるよう定義された評価値を用いるものとする。また、他の例としては、画像処理装置110は、輝度値だけではなく境界線の位置に基づいて定義された評価値を用いてもよい。評価値は、境界線の位置がz方向において上端や下端に接している場合には、正しく層を検出できない可能性があるため検出の信頼度が低くなるよう定義されていてもよい。
そして、画像処理装置110は、層検出の評価値が閾値以上の層検出領域を評価する。層検出領域の評価値は、(式4)のアーティファクト領域評価値と同様の方法で評価することができる。例えば、(式4)において、T(x,y)のアーティファクトではない領域を、閾値以上の層検出領域と置き換えればよい。これにより、断層画像の深さ情報も用いることになるため、基準画像として、より確からしい画像を選択することができる。
第2の変形例としては、画像処理装置110は、3次元ボリューム像内でのz方向位置合わせにおいて、最初の基準データをデータの中心としたがこれに限らない。例えば、画像中心付近において境界線L1の層検出の信頼度が高い場所を基準として始めるようにしてもよい。層検出の信頼度は、画像の明るさや検出した層境界のz方向位置によって定義される。これにより、信頼度の高い箇所を基にして位置合わせを開始するため、位置合わせのエラーを低減することが期待できる。
第3の変形例としては、画像処理装置110は、S904(図9)においてプロジェクション画像をxy面内で拡大し、その後S1305(図13)において、元のサイズに戻した上で、3次元ボリューム像の変形(S1305)を行ったが、これに限らない。他の例としては、画像処理装置110は、3次元ボリューム像そのものを拡大して位置合わせを行い、そのままの状態で出力することとしてもよい。例えば、3次元ボリューム像のサイズが300×300×1000(主走査×副走査×深度)の場合に、画像処理装置110は、これを600×600×1000に拡大して位置合わせ、加算平均を行い、そのままのサイズでデータ出力を行ってもよい。また他の例としては、画像処理装置110は、600×600×1000に拡大して位置合わせと加算平均を行った後、最後に300×300×1000のサイズに戻して出力してもよい。これにより、出力される3次元の加算平均後のデータは、より高画質になることが期待される。
第4の変形例としては、画像処理装置110は、S807において、入力時のz方向に戻す処理を行ったが、本処理を行わず、第3の位置合わせ処理におけるz方向の位置合わせの結果のまま出力することとしてもよい。これにより、z方向に関する深さと傾きの位置合わせが済んだデータを表示することができる。なお、この場合には、S1301の処理は不要である。ただし、この場合には、z方向にデータ全体を変形させているため、画像処理装置110は、層境界のz方向の位置をS1303において記憶した移動量に基づいて補正する。
以上、本発明の好ましい実施形態について詳述したが、本発明は係る特定の実施形態に限定されるものではなく、特許請求の範囲に記載された本発明の要旨の範囲内において、種々の変形・変更が可能である。
(その他の実施例)
本発明は、上述の実施形態の1以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける1つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、1以上の機能を実現する回路(例えば、ASIC)によっても実現可能である。
本発明は、上述の実施形態の1以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける1つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、1以上の機能を実現する回路(例えば、ASIC)によっても実現可能である。
100 画像処理システム
110 画像処理装置
120 撮影装置
110 画像処理装置
120 撮影装置
Claims (11)
- 眼底の同一線上を走査するように制御された測定光に基づいて得られた複数の断層画像を含むクラスタを、クラスタ単位で複数取得する取得手段と、
クラスタ内の複数の断層画像の位置が合い、さらにクラスタ間の複数の断層画像の位置が合うように、前記複数のクラスタの断層画像の位置合わせを行う位置合わせ手段と、
前記位置合わせ手段による位置合わせ後の、1つのクラスタに含まれる複数の断層画像に基づいて、第1の原モーションコントラスト画像を少なくとも1つ生成し、さらに、複数のクラスタのうち互いに異なる2つのクラスタに含まれる複数の断層画像に基づいて、第2の原モーションコントラスト画像を少なくとも1つ生成する第1の生成手段と、
前記第1の生成手段により生成された前記第1の原モーションコントラスト画像と前記第2の原モーションコントラスト画像とに基づいて、合成モーションコントラスト画像を生成する合成手段と、
前記クラスタ単位で再走査を指示する再走査指示手段と、
を有することを特徴とする画像処理装置。 - 前記合成手段により生成された前記合成モーションコントラスト画像を表示手段に表示させる表示制御手段をさらに有することを特徴とする請求項1に記載の画像処理装置。
- 前記取得手段は、前記第1の原モーションコントラスト画像を生成する際に撮影装置が繰り返す撮影回数に対応した数の断層画像を含むクラスタ単位で、複数のクラスタを取得することを特徴とする請求項1又は2に記載の画像処理装置。
- 前記合成手段は、前記第1の原モーションコントラスト画像と、前記第2の原モーションコントラスト画像と、を加算平均することにより前記合成モーションコントラスト画像を生成することを特徴とする請求項1乃至3の何れか1項に記載の画像処理装置。
- 前記取得手段が取得した複数のクラスタそれぞれに含まれる断層画像に基づいて閾値を決定する決定手段をさらに有し、
前記決定手段により決定された閾値を用いて前記断層画像のノイズ除去処理を行うノイズ除去処理手段と
をさらに有し、
前記第1の生成手段は、ノイズ除去処理が行われた前記断層画像に基づいて、前記第1の原モーションコントラスト画像と、前記第2の原モーションコントラスト画像と、を生成することを特徴とする請求項1乃至4の何れか1項に記載の画像処理装置。 - 前記取得手段は、前記眼底の異なる位置それぞれに対し、複数のクラスタを取得し、
前記位置合わせ手段は、さらに前記眼底の異なる位置それぞれに対応した複数のクラスタ間の断層画像の位置が合うように断層画像の位置合わせを行い、
前記第1の生成手段は、前記眼底の各位置に対し、前記第1の原モーションコントラスト画像と前記第2の原モーションコントラスト画像とを生成し、
前記合成手段は、前記眼底の各位置に対し、前記合成モーションコントラスト画像を生成し、
前記眼底の各位置の前記合成モーションコントラスト画像に基づいて、3次元のモーションコントラスト画像を生成する第2の生成手段と、
前記3次元のモーションコントラスト画像を2次元平面に投影することにより2次元投影画像を生成する第3の生成手段と
を有することを特徴とする請求項1に記載の画像処理装置。 - 前記第3の生成手段により生成された前記2次元投影画像を表示手段に表示するよう制御する表示制御手段をさらに有することを特徴とする請求項6に記載の画像処理装置。
- 前記表示制御手段は、前記合成手段により生成された前記合成モーションコントラスト画像と、前記2次元投影画像と、を前記表示手段に同時に表示するよう制御することを特徴とする請求項7に記載の画像処理装置。
- 前記取得手段は、互いに異なる第1のクラスタと第2のクラスタとを取得し、
前記第1の生成手段は、前記第1のクラスタの複数の断層画像に基づいて、前記第1の原モーションコントラスト画像を複数生成し、さらに前記第1のクラスタの断層画像と前記第2のクラスタの断層画像に基づいて、前記第2の原モーションコントラスト画像を少なくとも1つ生成し、
前記合成手段は、第1のクラスタに基づいて生成された複数の前記第1の原モーションコントラスト画像に基づいて第1の合成モーションコントラスト画像を生成し、さらに前記第1のクラスタの断層画像と前記第2のクラスタの断層画像に基づいて生成された前記第2の原モーションコントラスト画像と、前記第1のクラスタに基づいて生成された前記第1の原モーションコントラスト画像と、に基づいて、第2の合成モーションコントラスト画像を生成し、
ユーザ操作に応じて、前記第1の合成モーションコントラスト画像及び前記第2の合成モーションコントラスト画像のうち少なくとも一方を表示手段に表示するよう制御する表示制御手段をさらに有することを特徴とする請求項1に記載の画像処理装置。 - 画像処理装置が実行する画像処理方法であって、
眼底の同一線上を走査するように制御された測定光に基づいて得られた複数の断層画像を含むクラスタを、クラスタ単位で複数取得する取得ステップと、
クラスタ内の複数の断層画像の位置が合い、さらにクラスタ間の複数の断層画像の位置が合うように、前記取得ステップにおいて取得した複数のクラスタの断層画像の位置合わせを行う位置合わせステップと、
前記位置合わせステップにおける位置合わせ後の、1つのクラスタに含まれる複数の断層画像に基づいて、第1の原モーションコントラスト画像を少なくとも1つ生成し、さらに、複数のクラスタのうち互いに異なる2つのクラスタに含まれる複数の断層画像に基づいて、第2の原モーションコントラスト画像を少なくとも1つ生成する第1の生成ステップと、
前記第1の生成ステップにおいて生成された前記第1のモーションコントラスト画像と前記第2の原モーションコントラスト画像とに基づいて、合成モーションコントラスト画像を生成する合成ステップと
前記クラスタ単位で再走査を指示する再走査指示手段と
を含むことを特徴とする画像処理方法。 - コンピュータを、請求項1乃至9の何れか1項に記載の画像処理装置の各手段として機能させるためのプログラム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2017195155A JP2019063446A (ja) | 2017-10-05 | 2017-10-05 | 画像処理装置、画像処理方法及びプログラム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2017195155A JP2019063446A (ja) | 2017-10-05 | 2017-10-05 | 画像処理装置、画像処理方法及びプログラム |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2019063446A true JP2019063446A (ja) | 2019-04-25 |
Family
ID=66338606
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2017195155A Pending JP2019063446A (ja) | 2017-10-05 | 2017-10-05 | 画像処理装置、画像処理方法及びプログラム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2019063446A (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP7383469B2 (ja) | 2019-12-19 | 2023-11-20 | キヤノン株式会社 | 情報処理装置、情報処理方法およびプログラム |
-
2017
- 2017-10-05 JP JP2017195155A patent/JP2019063446A/ja active Pending
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP7383469B2 (ja) | 2019-12-19 | 2023-11-20 | キヤノン株式会社 | 情報処理装置、情報処理方法およびプログラム |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP7229881B2 (ja) | 医用画像処理装置、学習済モデル、医用画像処理方法及びプログラム | |
US20210104313A1 (en) | Medical image processing apparatus, medical image processing method and computer-readable medium | |
US20210390696A1 (en) | Medical image processing apparatus, medical image processing method and computer-readable storage medium | |
JP7269413B2 (ja) | 医用画像処理装置、医用画像処理システム、医用画像処理方法及びプログラム | |
US8781214B2 (en) | Enhanced imaging for optical coherence tomography | |
US11922601B2 (en) | Medical image processing apparatus, medical image processing method and computer-readable medium | |
AU2019340215A1 (en) | Methods and systems for ocular imaging, diagnosis and prognosis | |
US20190073780A1 (en) | Image processing apparatus, alignment method and storage medium | |
US10846892B2 (en) | Image processing apparatus, image processing method, and storage medium | |
JP7362403B2 (ja) | 画像処理装置および画像処理方法 | |
US10789721B2 (en) | Image processing apparatus, alignment method and storage medium | |
US10803568B2 (en) | Image processing apparatus, alignment method and storage medium | |
JP2019063446A (ja) | 画像処理装置、画像処理方法及びプログラム | |
JP2019150485A (ja) | 画像処理システム、画像処理方法及びプログラム | |
JP2022033290A (ja) | 情報処理装置、情報処理方法およびプログラム | |
WO2020090439A1 (ja) | 画像処理装置、画像処理方法およびプログラム | |
JP2022062620A (ja) | 画像処理装置、画像処理方法及びプログラム | |
JP7158860B2 (ja) | 画像処理装置、画像処理方法及びプログラム | |
JP7281872B2 (ja) | 画像処理装置、画像処理方法及びプログラム | |
JP2022062619A (ja) | 画像処理装置、画像処理方法及びプログラム |