(58)【調査した分野】(Int.Cl.,DB名)
被検体上を走査手段によって走査された測定光と、前記測定光に対応する参照光とによるOCT信号を取得するためのOCT光学系を備える光コヒーレンストモグラフィ装置であって、
前記測定光を横断方向に走査するBスキャンを被検体上の同一位置に関して複数回行うことによって、各Bスキャン間で時間間隔を空けて取得された複数のOCT信号のモーションコントラストを取得する取得手段と、
前記モーションコントラストの基礎となる前記複数のOCT信号間での位相差のプロファイルが連続であるか否かを判定する判定手段と、
前記判定手段によって前記プロファイルが不連続であると判定された場合、前記走査手段の駆動を制御し、各Bスキャン間の前記時間間隔を変更する駆動制御手段と、
前記駆動制御手段によって変更された前記時間間隔を空けて取得された前記複数のOCT信号のモーションコントラストに基づいて前記被検体の血流速度を算出する制御手段と、
を備えることを特徴とする光コヒーレンストモグラフィ装置。
前記制御手段は、3次元モーションコントラスト画像を生成するために取得した複数のOCT信号を用いて、ある時点での前記血流速度を求め、前記血流速度の大きさに基づいて前記時間間隔を設定することを特徴とする請求項1の光コヒーレンストモグラフィ装置。
被検体上を走査手段によって走査された測定光と、前記測定光に対応する参照光とによるOCT信号を取得するためのOCT光学系を備える光コヒーレンストモグラフィ装置であって、
前記測定光を横断方向に走査するBスキャンを被検体上の同一位置に関して複数回行うことによって、各Bスキャン間で第1の時間間隔を空けて取得された複数のOCT信号のモーションコントラストを取得する取得手段と、
前記被検体の血管の3次元構造に基づいて前記血管の径および種類の少なくともいずれかを取得する血管情報取得手段と、を備え、
前記取得手段は、前記血管情報取得手段によって取得された前記血管の径または種類に基づいて、取得された前記血管の径または種類に応じて予め設定された、前記第1の時間間隔とは異なる第2の時間間隔を各Bスキャン間で空けて取得された複数のOCT信号のモーションコントラストを取得することを特徴とする光コヒーレンストモグラフィ装置。
被検体上を走査手段によって走査された測定光と、前記測定光に対応する参照光とによるOCT信号を取得するためのOCT光学系を備える光コヒーレンストモグラフィ装置に用いられる制御プログラムであって、前記光コヒーレンストモグラフィ装置のプロセッサによって実行されることで、
前記測定光を横断方向に走査するBスキャンを被検体上の同一位置に関して複数回行うことによって、各Bスキャン間で時間間隔を空けて取得された複数のOCT信号のモーションコントラストを取得する取得ステップと、
前記モーションコントラストの基礎となる前記複数のOCT信号間での位相差のプロファイルが連続であるか否かを判定する判定ステップと、
前記判定ステップにおいて前記プロファイルが不連続であると判定された場合、前記走査手段の駆動を制御し、各Bスキャン間の前記時間間隔を変更する駆動制御ステップと、
前記駆動制御ステップにおいて変更された前記時間間隔を空けて取得された前記複数のOCT信号のモーションコントラストに基づいて前記被検体の血流速度を算出する算出ステップと、
を前記光コヒーレンストモグラフィ装置に実行させることを特徴とする制御プログラム。
【発明を実施するための形態】
【0010】
<概要>
以下、本開示に係る光コヒーレンストモグラフィ装置の概要を
図1〜11に基づいて説明する。本開示の光コヒーレンストモグラフィ装置(例えば、光コヒーレンストモグラフィ装置10)は、被検体のモーションコントラストデータを取得する。モーションコントラストとは、例えば、被検体の動き、時間的な変化等の検出情報である。例えば、フロー画像等もモーションコントラスト画像の一種とする。なお、フロー画像は、例えば、流体等の動きを検出し、画像化したものである。血液の動きを検出して得られた血管位置を造影した血管造影画像等は、モーションコントラスト画像の一種と言える。
【0011】
本開示の光コヒーレンストモグラフィ装置(以下、本装置と略す場合がある)は、例えば、OCT光学系(例えば、OCT光学系200)と、取得部(例えば、制御部70)と、を主に備える。OCT光学系は、例えば、被検体上を走査部(例えば、光スキャナ108)によって走査された測定光と、測定光に対応する参照光とによるOCT信号(干渉信号)を取得してもよい。取得部は、例えば、被検体上の同一位置に関して、第1の時間間隔を空けて取得された複数のOCT信号のモーションコントラストを取得する。そして、取得部は、モーションコントラストの基礎となる複数のOCT信号間での位相差のプロファイルが不連続であった場合、第1の時間間隔とは異なる第2の時間間隔を空けて取得された複数のOCT信号のモーションコントラストを取得してもよい。取得部は、位相差のプロファイルが不連続にならないように時間間隔を変更してもよい。なお、第2の時間間隔は、第1の時間間隔より短い時間間隔であってもよい。このように、連続的なプロファイルを持つモーションコントラストが取得されることによって、検者は、移動物体の分布等を容易に確認できる。
【0012】
なお、本装置は、判定部(例えば、制御部70)をさらに備えてもよい。判定部は、例えば、取得部によって取得された位相差のプロファイルの傾きを検出し、検出された傾きに基づいて、位相差のプロファイルが連続であるか否かを判定してもよい。
【0013】
なお、本装置は、駆動制御部(例えば、制御部70)をさらに備えてもよい。駆動制御部は、例えば、位相差のプロファイルが不連続であった場合、走査部の駆動を制御し、同一位置に対する照射の時間間隔を変更してもよい。例えば、駆動制御部は、同一位置に対する照射の時間間隔を短く変更してもよい。
【0014】
なお、取得部は、取得された位相差のプロファイルが不連続であった場合、第1の時間間隔を空けて取得された複数のOCT信号から、第1の時間間隔とは異なる第2の時間間隔を空けて取得されたOCT信号の組を少なくとも1つ選出してもよい。そして、取得部は、選出されたOCT信号の組のモーションコントラストを取得してもよい。
【0015】
例えば、取得部は、第1の時間間隔で取得された複数のOCT信号の内、1つ飛ばしで信号を選出し、選出されたOCT信号に基づいてモーションコントラストを取得してもよい。これによって、取得部は、例えば、第1の時間間隔の2倍である第2の時間間隔を空けて取得された複数のOCT信号に基づくモーションコントラストを取得する。同様に、取得部は、2つ、3つ、・・・、と飛ばして信号を選出してもよい。これによって、わざわざ走査部の駆動を制御しなくとも演算上のタイムインターバルTを変更することができる。
【0016】
なお、取得部は、例えば、モーションコントラストの基礎となる複数のOCT信号間での位相差のプロファイルが連続であった場合、モーションコントラストの信号雑音比を大きくするために、第1の時間間隔より長い第2の時間間隔を空けて取得された複数のOCT信号のモーションコントラストを取得してもよい。
【0017】
なお、本装置は、血管情報取得部(例えば、制御部70)をさらに備えてもよい。血管情報取得部は、例えば、被検体の血管の3次元構造に基づいて血管の径および種類の少なくともいずれかを取得する。そして、取得部は、モーションコントラストの基礎となる複数のOCT信号間での位相差のプロファイルが不連続であった場合、血管情報取得部によって取得された血管の径または種類に基づいて、取得された血管の径または種類に応じて予め設定された、第1の時間間隔とは異なる第2の時間間隔を空けて取得された複数のOCT信号のモーションコントラストを取得してもよい。
【0018】
なお、本装置は、例えば、プロセッサ(例えば、制御部70)等を備え、メモリ等に記憶された制御プログラムを実行してもよい。制御プログラムは、例えば、取得ステップを含む。取得ステップは、例えば、被検体上の同一位置に関して、第1の時間間隔を空けて取得された複数のOCT信号のモーションコントラストを取得し、取得された位相差のプロファイルが不連続であった場合、第1の時間間隔とは異なる第2の時間間隔を空けて取得された複数のOCT信号の位相差を取得するステップである。
【0019】
<実施例>
以下、典型的な実施例の1つについて、図面を参照して説明する。
図1は本実施例に係る光コヒーレンストモグラフィ装置(以下、本装置と呼ぶ場合もある)10の構成について説明するブロック図である。本装置10は、一例として、被検眼の眼底の断層像を取得する眼底撮影装置として説明する。
【0020】
OCT制御系1は、OCT光学系100によって取得された検出信号を処理する。OCT制御系1は、制御部70を有する。OCT光学系100は、例えば、被検眼Eの眼底Efの断層像を撮影する。OCT光学系100は、例えば、制御部70と接続されている。
【0021】
OCT光学系100を
図2に基づいて説明する。OCT光学系100は、眼底に測定光を照射する。OCT光学系100は、眼底から反射された測定光と参照光との干渉状態を受光素子(検出器120)によって検出する。OCT光学系100は眼底Ef上の撮像位置を変更するため、眼底Ef上における測定光の照射位置を変更する照射位置変更ユニット(例えば、光スキャナ108、固視標投影ユニット300など)を備える。制御部70は、設定された撮像位置情報に基づいて照射位置変更ユニットの動作を制御し、検出器120からの受光信号に基づいて断層像を取得する。
【0022】
<OCT光学系>
OCT光学系100は、いわゆる眼科用光断層干渉計(OCT:Optical coherence tomography)の装置構成を持ち、眼Eの断層像を撮像する。OCT光学系100は、測定光源102から出射された光をカップラー(光分割器)104によって測定光(試料光)と参照光に分割する。OCT光学系100は、測定光学系106によって測定光を眼Eの眼底Efに導き、また、参照光を参照光学系110に導く。OCT光学系100は、眼底Efによって反射された測定光と、参照光との合成による干渉光を検出器(受光素子)120に受光させる。
【0023】
検出器120は、測定光と参照光とのOCT信号を検出する。フーリエドメインOCTの場合では、干渉光のスペクトル強度(スペクトルOCT信号)が検出器120によって検出され、スペクトル強度データに対するフーリエ変換によってOCT信号が取得される。例えば、複素OCT信号における振幅の絶対値を算出することによって、所定範囲における深さ方向(Aスキャン方向)のプロファイル(Aスキャン信号)が取得される。光スキャナ108によって走査された測定光の各走査位置における深さ方向の輝度プロファイルを並べることによって、OCT画像データ(断層画像データ)が取得される。ここで、OCT画像データでの輝度プロファイルとは、A−Scanラインで深さ方向に各画素の輝度値を並べた数列であり、深さ方向に対する輝度値のグラフである。
【0024】
なお、測定光を2次元的に走査することによって、OCT3次元データを取得してもよい。また、OCT3次元データから、OCT正面(Enface)画像(例えば、深さ方向に関して積算された積算画像)が取得されてもよい。
【0025】
また、OCT信号の信号処理によって、機能OCT信号が取得されてもよい。光スキャナ108によって走査された測定光の各走査位置における機能OCT信号(モーションコントラストデータ)を並べることによって、機能OCT画像データ(モーションコントラスト画像データ)が取得される。さらに、測定光を2次元的に走査することによって、3次元機能OCT画像データ(3次元モーションコントラストデータ)を取得してもよい。また、3次元機能OCT画像データから、OCT機能正面(En−face)画像(例えば、ドップラー正面(En−face)画像、スペックルバリアンス正面画像)が取得されてもよい。
【0026】
OCT光学系100は、例えば、Spectral-domain OCT(SD−OCT)、Swept-source OCT(SS−OCT)が挙げられる。また、Time-domain OCT(TD−OCT)であってもよい。
【0027】
SD−OCTの場合、光源102として低コヒーレント光源(広帯域光源)が用いられ、検出器120には、干渉光を各周波数成分(各波長成分)に分光する分光光学系(スペクトルメータ)が設けられる。スペクトロメータは、例えば、回折格子とラインセンサからなる。
【0028】
SS−OCTの場合、光源102として出射波長を時間的に高速で変化させる波長走査型光源(波長可変光源)が用いられ、検出器120として、例えば、単一の受光素子が設けられる。光源102は、例えば、光源、ファイバーリング共振器、及び波長選択フィルタによって構成される。そして、波長選択フィルタとして、例えば、回折格子とポリゴンミラーの組み合わせ、ファブリー・ペローエタロンを用いたものが挙げられる。
【0029】
光源102から出射された光は、カップラー104によって測定光束と参照光束に分割される。そして、測定光束は、光ファイバーを通過した後、空気中へ出射される。その光束は、光スキャナ108、及び測定光学系106の他の光学部材を介して眼底Efに集光される。そして、眼底Efで反射された光は、同様の光路を経て光ファイバーに戻される。
【0030】
光スキャナ108は、眼底上で二次元的に(XY方向(横断方向))に測定光を走査させる。光スキャナ108は、瞳孔と略共役な位置に配置される。光スキャナ108は、例えば、2つのガルバノミラーであり、その反射角度が駆動機構50によって任意に調整される。
【0031】
これにより、光源102から出射された光束はその反射(進行)方向が変化され、眼底Ef上で任意の方向に走査される。これにより、眼底Ef上における撮像位置が変更される。光スキャナ108としては、光を偏向させる構成であればよい。例えば、反射ミラー(ガルバノミラー、ポリゴンミラー、レゾナントスキャナ)の他、光の進行(偏向)方向を変化させる音響光学素子(AOM)等が用いられる。
【0032】
参照光学系110は、眼底Efでの測定光の反射によって取得される反射光と合成される参照光を生成する。参照光学系110は、マイケルソンタイプであってもよいし、マッハツェンダタイプであっても良い。参照光学系110は、例えば、反射光学系(例えば、参照ミラー)によって形成され、カップラー104からの光を反射光学系により反射することにより再度カップラー104に戻し、検出器120に導く。他の例としては、参照光学系110は、透過光学系(例えば、光ファイバー)によって形成され、カップラー104からの光を戻さず透過させることにより検出器120へと導く。
【0033】
参照光学系110は、参照光路中の光学部材を移動させることにより、測定光と参照光との光路長差を変更する構成を有する。例えば、参照ミラーが光軸方向に移動される。光路長差を変更するための構成は、測定光学系106の測定光路中に配置されてもよい。
【0034】
<正面観察光学系>
正面観察光学系200は、眼底Efの正面観察画像を得るために設けられている。観察光学系200は、例えば、光源から発せられた測定光(例えば、赤外光)を眼底上で二次元的に走査させる光スキャナと、眼底と略共役位置に配置された共焦点開口を介して眼底反射光を受光する第2の受光素子と、を備え、いわゆる眼科用走査型レーザ検眼鏡(SLO)の装置構成を持つ。正面観察光学系200は、例えば、OCT光学系100によるOCT信号の取得と並行して、正面観察画像を随時取得してもよい。
【0035】
なお、観察光学系200の構成としては、いわゆる眼底カメラタイプの構成であってもよい。また、OCT光学系100は、観察光学系200を兼用してもよい。すなわち、正面観察画像は、二次元的に得られた断層像を形成するデータを用いて取得されるようにしてもよい(例えば、三次元断層像の深さ方向への積算画像、XY各位置でのスペクトルデータの積算値、ある一定の深さ方向におけるXY各位置での輝度データ、網膜表層画像、等)。
【0036】
<固視標投影ユニット>
固視標投影ユニット300は、眼Eの視線方向を誘導するための光学系を有する。固視標投影ユニット300は、眼Eに呈示する固視標を有し、複数の方向に眼Eを誘導できる。
【0037】
例えば、固視標投影ユニット300は、可視光を発する可視光源を有し、視標の呈示位置を二次元的に変更させる。これにより、視線方向が変更され、結果的に撮像部位が変更される。例えば、撮影光軸と同方向から固視標が呈示されると、眼底の中心部が撮像部位として設定される。また、撮影光軸に対して固視標が上方に呈示されると、眼底の上部が撮像部位として設定される。すなわち、撮影光軸に対する視標の位置に応じて撮影部位が変更される。
【0038】
固視標投影ユニット300としては、例えば、マトリクス状に配列されたLEDの点灯位置により固視位置を調整する構成、光スキャナを用いて光源からの光を走査させ、光源の点灯制御により固視位置を調整する構成等、種々の構成が考えられる。また、投影ユニット300は、内部固視灯タイプであってもよいし、外部固視灯タイプであってもよい。
【0039】
<制御部>
制御部70は、CPU(プロセッサ)、RAM、ROM等を備える。制御部70のCPUは、各構成の各部材など、装置全体(OCT制御系1、OCT光学系100)の制御を司る。RAMは、各種情報を一時的に記憶する。制御部70のROMには、装置全体の動作を制御するための各種プログラム、初期値等が記憶されている。なお、制御部70は、複数の制御部(つまり、複数のプロセッサ)によって構成されてもよい。
【0040】
制御部70には、
図1に示すように、不揮発性メモリ(記憶手段)72、操作部(コントロール部)76、および表示部(モニタ)75等が電気的に接続されている。不揮発性メモリ(メモリ)72は、電源の供給が遮断されても記憶内容を保持できる非一過性の記憶媒体である。例えば、ハードディスクドライブ、フラッシュROM、着脱可能なUSBメモリ等を不揮発性メモリ72として使用することができる。メモリ72には、OCT光学系100による正面画像および断層画像の撮影を制御するための撮影制御プログラムが記憶されている。また、メモリ72には、OCT制御系1によって得られたOCT信号を信号処理することを可能にする信号処理プログラムが記憶されている。また、メモリ72には、走査ラインにおける断層像(OCTデータ)、三次元断層像(三次元OCTデータ)、眼底正面像、断層像の撮影位置の情報等、撮影に関する各種情報が記憶される。操作部76には、検者による各種操作指示が入力される。
【0041】
操作部76は、入力された操作指示に応じた信号を制御部70に出力する。操作部76には、例えば、マウス、ジョイスティック、キーボード、タッチパネル等の少なくともいずれかを用いればよい。
【0042】
表示部75は、装置本体に搭載されたディスプレイであってもよいし、本体に接続されたディスプレイであってもよい。パーソナルコンピュータ(以下、「PC」という。)のディスプレイを用いてもよい。複数のディスプレイが併用されてもよい。また、表示部75は、タッチパネルであってもよい。表示部75がタッチパネルである場合、表示部75が操作部として機能する。表示部75には、OCT光学系100によって撮影された断層画像および正面画像を含む各種画像が表示される。
【0043】
<モーションコントラスト画像の撮影>
以下、モーションコントラスト画像を撮影するときの本装置10の操作方法および制御動作について
図3を用いて説明する。制御部70は、例えば、各種制御処理を司るプロセッサ(例えば、CPU)と、プログラムを記憶する記憶媒体とを備える。プロセッサは、プログラムに従って、以下に説明する処理を実行する。なお、以下の説明において、制御の各ステップを識別するための番号を付与するが、付与した番号の順番と実際の制御の順番は必ずしも一致しない。
【0044】
まず、検者は固視標投影ユニット300の固視標を注視するように被検者に指示した後、図示無き前眼部観察用カメラで撮影される前眼部観察像を表示部75で見ながら、被検眼の瞳孔中心に測定光軸がくるように、操作部76(例えば、図示無きジョイスティック)を用いて、アライメント操作を行う。
【0045】
(ステップ1:OCT撮影)
制御部70は、同じ位置において、時間の異なる少なくとも2フレームのOCT信号を取得する。例えば、制御部70は、光スキャナ108の駆動を制御し、眼底上で測定光を走査させる。例えば、
図4に示す第1の走査ラインS1に沿ってx方向に測定光を走査させる。なお、横断方向(例えば、x方向)に測定光を走査させることを「Bスキャン」と呼ぶ。以下、1フレームのOCT信号とは、1回のBスキャンによって得られたOCT信号として説明する。制御部70は、走査中に検出器120によって検出されたOCT信号を取得する。なお、
図4において、z軸の方向は、測定光の光軸の方向とする。x軸の方向は、z軸に垂直かつ左右の方向とする。y軸の方向は、z軸に垂直かつ上下の方向とする。
【0046】
1回目の走査が完了すると、制御部70は、1回目と同じ位置で2回目の走査を行う。例えば、制御部70は、
図4に示す走査ラインS1に沿って測定光を走査させた後、再び走査ラインS1に沿って測定光を走査させる。制御部70は、2回目の走査中に検出器120によって検出されたOCT信号を取得する。これによって、制御部70は、同じ位置における時間の異なる2フレームのOCT信号を取得することができる。なお、本実施例においては、同じ位置での走査を4回繰り返し、時間の異なる連続する4フレームのOCT信号を取得する。制御部70は、例えば、走査ラインS1での走査を4回繰り返し、4フレームのOCT信号を取得する。ただし、4フレームに限らず、時間の異なる少なくも2フレーム以上のOCT信号を取得すればよい。
【0047】
なお、1回の走査で、時間の異なる同じ位置の信号を取得することができる場合は、2回目の走査を行わなくてもよい。例えば、所定間隔だけ光軸のずれた2つの測定光を1度に走査させる場合、複数回走査する必要はない。被検体内の同じ位置における時間の異なるOCT信号を取得することができればよい。
【0048】
なお、制御部70は、別の位置においても、同様に、時間の異なる少なくとも2フレームの信号を取得する。
図4に示すように、第1の走査ラインS1は、例えば、y=y1であるとする。また、第2の走査ラインS2は、例えば、y=y2であるとする。制御部70は、第1の走査ラインS1において、時間の異なる信号の取得が完了すると、引き続き、第2の走査ラインS2において、時間の異なる少なくとも2フレームの信号を取得する。
【0049】
制御部70は、
図4に示すように、測定光をラスター走査(ラスタースキャン)し、各走査ラインにおいて、時間の異なる少なくとも2フレーム以上のOCT信号を得る。これによって、眼底内部の3次元的な情報を取得することができる。
【0050】
なお、ラスタースキャンは、眼底上を測定光が矩形状に走査するパターンである。ラスタースキャンは、例えば、正面(En−face)画像スキャンとして用いられる。
【0051】
(ステップ2:複素OCT信号群の取得)
続いて、制御部70は、OCT光学系100によって取得されたOCT信号を処理し、複素OCT信号を取得する。例えば、制御部70は、ステップ1において取得されたOCT信号(干渉信号)をフーリエ変換する。ここで、Nフレーム中n枚目の(x,z)の位置の信号をAn(x,z)で表す。制御部70は、フーリエ変換によって、複素OCT信号An(x,z)を得る。複素OCT信号An(x,z)は、実数成分と虚数成分とを含む。
【0052】
(ステップ3:血管断層像群の取得)
次いで、制御部70は、ステップ2によって取得された複素OCT信号を処理し、血管断層群(モーションコントラスト画像群)を取得する。複素OCT信号を処理する方法としては、例えば、複素OCT信号の位相差を算出する方法、複素OCT信号のベクトル差分を算出する方法、複素OCT信号の位相差及びベクトル差分を掛け合わせる方法などが考えられる。本実施例では、位相差を算出する方法を例に説明する。
【0053】
まず、制御部70は、同じ位置の少なくとも2つ以上の異なる時間に取得された複素OCT信号A(x,z)に対して位相差を算出する。制御部70は、例えば、式(1)を用いて、位相の変化を算出する。本実施例では、例えば、4つの異なる時間に測定を行うため、T1とT2、T2とT3、T3とT4、の計3回の計算が行われ、3つのデータが算出される。なお、数式中のAnは時間Tnに取得された信号を示し、*は複素共役を示している。
【0055】
制御部70は、例えば、3フレームの信号を加算平均し、ノイズを除去してもよい。ノイズ成分は各フレームにランダムに存在するため、加算平均することによってシグナル成分に比べて小さくなる。
【0056】
以上のように、制御部70は複素OCT信号の位相差に関する深さ方向のプロファイルを取得し、このプロファイルの大きさに応じて濃淡をつけることによって、被検者の機能OCT画像を取得する。制御部70は、上記の処理を走査ラインごとに繰り返し、
図5に示すように、走査ラインごとに断層血管像を生成する。これによって、制御部70は、3次元のモーションコントラスト画像を取得する。
【0057】
<血流の測定>
以上のようにして撮影されたモーションコントラスト画像を利用して、血流速度を求める方法を
図6に基づいて説明する。本実施例においては、3次元のモーションコントラスト画像から得られる血管の3次元構造を用いて、血流の絶対速度を求める。血流の絶対速度を求めるにあたって、制御部70は、まず、モーションコントラスト画像と、観察光学系200によって撮影された観察画像(例えば、SLO画像、赤外眼底画像など)の対応付けを行う(ステップ2−1)。なお、モーションコントラスト画像と対応づける観察画像は、OCT光学系100によってOCT信号を取得しているときに撮影された観察画像でもよいし、モーショントラスト画像が生成された後に撮影された観察画像でもよい。
【0058】
制御部70は、例えば、
図7に示すように、2次元の観察画像D2におけるXY方向の座標と、3次元のモーションコントラスト画像D1におけるXY方向の座標を対応付ける。対応付けの方法としては、例えば、固視灯の点灯位置を利用する方法、血管の位置を利用する方法等が挙げられる。固視灯の点灯位置を利用する場合、例えば、モーションコントラスト画像D1を取得したときの固視灯の点灯位置と、観察画像D2を取得したときの固視灯の点灯位置との関係から、モーションコントラスト画像D1と観察画像D2を対応付けてもよい。血管の位置を利用する場合、例えば、観察画像D2に映った血管の位置と、モーションコントラスト画像D1に映った血管の位置を画像処理によってそれぞれ検出し、血管の位置が一致するように両者を対応付けてもよい。
【0059】
なお、制御部70は、例えば、モーションコントラスト画像D1と観察画像D2の画素位置を対応付けてもよい。例えば、モーションコントラスト画像D1のある画素の座標が(x1,y1)であるとすると、それに対応する観察画像D2の画素の座標(x2,y2)が対応付けられてもよい。
【0060】
このように、制御部70は、観察画像D2とモーションコントラスト画像D1の対応付けを行っておき、これによって取得された対応情報を血流の絶対速度を求める際に用いてもよい。なお、制御部70は、対応情報をメモリ72に記憶させてもよい。
【0061】
続いて、制御部70は、
図8に示すように、前述の方法で取得されたモーションコントラスト画像D1を表示部75の画面上に表示させる(ステップ2−2)。表示部75に表示されるモーションコントラスト画像D1は、例えば、3次元画像でもよいし、2次元画像でもよい。
図8の例では、3次元データをある深度領域において加算処理して得られた2次元画像が表示されている。この場合、加算処理する深度領域を任意に設定できるようにしてもよい。
【0062】
検者は、モーションコントラスト画像D1を確認し、血流を測定する血管を指定する。例えば、検者は、操作部76のポインティングデバイス(例えば、マウス、タッチパネルなど)のクリックまたはタッチ等によってモーションコントラスト画像D1の位置を入力することによって血管を指定してもよい。
図8の例では、制御部70は、操作部76の操作に応じて移動可能なポインタ76aを表示している。検者は、例えば、画面上に表示されたポインタ76aを所望の血管の上に移動させ、クリック等の操作を行うことによって、血管を指定する。この場合、ポインタ76aは、表示部75上における任意の位置を指定するために用いられる。なお、以下の説明において、検者によって指定された血管を指定血管と呼ぶこととする。
【0063】
制御部70は、検者の指示を受け付ける(ステップ2−3)。例えば、制御部70は、操作部76から出力された信号に基づいて検者の指示を受け付ける。例えば、制御部70は、操作部76のポインティングデバイスによって検者が指定した位置(指定位置)を取得してもよい。
【0064】
制御部70は、モーションコントラスト画像上に指定された指定位置が、観察画像D2のどの位置に対応するのかを取得する(ステップ2−4)。例えば、制御部70は、メモリ72に記憶された観察画像D2とモーションコントラスト画像D1との対応情報に基づいて、モーションコントラスト画像上の指定位置のxy座標に対応する観察画像上の対応位置を取得する。例えば、制御部70は、指定血管のxy座標に対応する観察画像上のxy座標をメモリ72に記憶した対応情報から取得する。
【0065】
観察画像上での指定血管の対応位置が求まると、制御部70は、対応位置をトラッキング位置として設定し(ステップ2−5)、スキャンを開始する(ステップ2−6)。制御部70は、常に対応位置をスキャンできるようにトラッキングしながら、時間間隔を空けて複数回スキャンを行う。例えば制御部70は、測定光のスキャンと並行して観察画像を随時撮影し、更新された観察画像に映る眼底の位置ずれに応じてスキャン位置を補正してもよい。
【0066】
より詳細には、制御部70は、モーションコントラスト画像D1との対応付けに用いた観察画像D2の静止画と、現在の観察画像D2と、を比較して、位置ずれ方向及び位置ずれ量を画像処理により検出(演算)する。例えば、制御部70は、モーションコントラスト画像D1との対応付け時における観察画像D2の静止画データを基準画像とし、その基準画像とリアルタイムで取得される観察画像との位置ずれ方向及び位置ずれ量を算出する。これにより、静止画像に対する位置ずれ情報が得られる。
【0067】
上記のようにして、位置ずれ方向及び位置ずれ量が検出されると、制御部70は、走査位置のずれが補正されるように、光スキャナ108の2つのガルバノミラーを適宜駆動制御する。これによって、走査位置が補正される。以上のようにして、被検眼がずれた場合であっても、走査位置が補正され、常時、制御部70は、同じスキャン位置において時間の異なる複数のOCT信号を取得することができる。
【0068】
制御部70は、ステップ2−6において取得された複数回のOCT信号と、3次元のモーションコントラスト画像から得られた血管の3次元構造を用いて、血流の絶対速度を算出する(ステップ2−7)。例えば、制御部70は、複数回のOCT信号からドップラー位相シフトを求める。そして、制御部70は、求められた位相差と血管の3次元構造から得られた血流方向から血流の絶対速度を算出してもよい。
【0069】
モーションコントラスト画像D1から得られた血管の3次元構造から血流の方向を求める方法としては、例えば、血管の3次元構造を細線化する方法が挙げられる。例えば、
図9に示すように、細線化の処理によって、3次元の血管構造Kを1本の線L0で表すことができる。制御部70は、例えば、スキャンラインSL上を走査される測定光に対する線L0の傾きを血流の方向とみなし、前述の位相差から血流の絶対速度を算出してもよい。
【0070】
<血流速度の算出>
血流の絶対速度について説明する。血流の絶対速度vの光軸方向の成分v
zは、測定光と血管のなす角度αを用いて次式(2)で表せる。
【0072】
ここで、成分v
zは、位相差ΔΦ
Doppler(−π〜π)、血管組織の屈折率n、中心波数k、タイムインターバルTを用いて次式(3)で表せる。
【0074】
以上の2つの式を用いて、次式(4)のように位相差から血流の絶対速度vが求められる。
【0076】
以上のように、本実施例において、制御部70は、3次元のモーションコントラスト画像D1と、同じ走査位置に関する時間的に異なる複数のOCT信号とを用いて被検眼の血流を測定する。制御部70は、3次元のモーションコントラスト画像D1によって得られる血管の3次元構造から血流方向を取得できるため、ドップラーシフトから被検眼の絶対的な血流速度を測定することができる。これによって、制御部70は、例えば、複数の被検者に関して血流速度を比較することによって、被検眼の診断等に役立つ情報を取得できる。
【0077】
また、本実施例において、制御部70は、予め取得された3次元モーションコントラスト画像D1から得られた血流方向を血流の絶対速度の算出に用いる。このため、OCT光学系によって被検眼の同一位置において時間的に異なる複数のOCT信号を継続して取得すれば、制御部70は、被検者の拍動の影響を考慮した動的な血流の絶対速度を取得することができる(
図10参照)。このように、制御部70は、時間的な血流速度の変化を取得することによって、動脈硬化等の疾患を発見するのに利用可能な情報を提供できる。
【0078】
さらに、本実施例において、制御部70は、モーションコントラスト画像D1で確認した血管の位置を観察画像D2に対応付け、その対応情報に基づいてトラッキングを行う。例えば、モーションコントラスト画像D1は、画像を生成するまでに時間を要するため、被検眼の微動に対して追従するためのずれ情報を取得することが難しい。一方、観察画像D2は、画像を取得するまでの時間がモーションコントラスト画像に比べて短いため、被検眼の微動に対して追従するためのずれ情報を取得するのに適している。本実施例の制御部70のように、観察画像D2では確認しづらい細かい血管の位置をモーションコントラスト画像から対応付けることによって、観察画像D2では確認しづらい細かい血管であってもトラッキングを行うことができる。これによって、制御部70は、同一位置における時間の異なる複数のOCT信号を継続的に取得することが容易となり、被検者の動的な血流の絶対速度を適切に求めることができる。
【0079】
なお、制御部70は、検者によって指定された血管をスキャンするときのスキャン幅を、モーションコントラスト画像から求めた血管の径に応じて自動で設定してもよい。もちろん、検者が手動で設定してもよい。
【0080】
なお、制御部70は、検者によって指定された血管をスキャンするときのタイムインターバルTを、モーションコントラスト画像から求めた血管の径に応じて設定してもよい。もちろん、検者が手動で設定してもよい。
【0081】
なお、検者によって指定された血管をスキャンするときのスキャン方向は、血流方向に対して垂直であってもよい。例えば、制御部70は、En−face(測定光に対して垂直な方向)において、指定された血管の血流方向に対して垂直な方向を算出し、この方向にスキャンを行ってもよい。血管の血流方向は、前述のように血管の3次元構造を細線化することで求めてもよい。細線化には、例えば、モルフォロジ処理、距離変換処理、またはHilditch、Deutschなどの既存アルゴリズムを用いてもよい。
【0082】
このように、制御部70は、血流方向に対して垂直にスキャンを行うことによって、血流を算出する際に血流方向に対するスキャン角度を考慮する必要がなくなり、計算処理を簡単にすることができる。制御部70は、例えば、指定血管の半径方向を自動的にスキャン方向に設定してもよい。もちろん、制御部70は、検者の操作に応じて操作部76から出力された操作信号に基づいてスキャンラインを設定してもよい。
【0083】
なお、
図8に示すようなモーションコントラスト画像において、検者が新たな血管を指定する度に、制御部70は前述のように指定された血管をトラッキングしながらスキャンを行い、血流速度を求めてもよい。
【0084】
<位置ずれ検出手法>
なお、トラッキングの際に2つの観察画像間の位置ずれを検出する手法としては、種々の画像処理手法(各種相関関数を用いる方法、フーリエ変換を利用する方法、特徴点のマッチングに基づく方法)を用いることが可能である。
【0085】
例えば、所定の基準画像(例えば、過去の正面画像)又は対象画像(現在の正面画像)を1画素ずつ位置ずれさせ、基準画像と対象画像を比較し、両データが最も一致したとき(相関が最も高くなるとき)の両データ間の位置ずれを検出する手法が考えられる。また、所定の基準画像及び対象画像から共通する特徴点を抽出し、抽出された特徴点の位置ずれを検出する手法が考えられる。
【0086】
また、2つの画像間の位置ずれを求めるための関数として、位相限定相関関数を用いるようにしてもよい。この場合、まず、各画像をフーリエ変換し、各周波数成分の位相と振幅を得る。なお、得られた振幅成分は、各周波数成分に関して大きさ1に正規化しておく。次に、2つの画像間で周波数毎の位相差を算出した後、これらに逆フーリエ変換をかける。
【0087】
ここで、2つの画像間の位置ずれがなければ、余弦波のみの加算となり、原点位置(0,0)にピークが出現する。また、位置ずれがある場合、位置ずれに対応する位置にピークが出る。そこで、ピークの検出位置を求めることにより2つの画像間の位置ずれが得られる。この手法によれば、正面画像の位置ずれを高精度かつ短時間で検出できる。
【0088】
なお、前述の式(2)で説明したように、位相差ΔΦ
Dopplerは、逆正接演算により、−πからπの範囲内である。したがって、各走査間の時間間隔(タイムインターバルT)が長い場合、血流が速いと位相差ΔΦ
Dopplerが−πからπの範囲を超えてしまい、例えば、
図11(a)のように、スキャン方向の位相差ΔΦ
Dopplerのプロファイルが不連続になる。このような場合、検出されたプロファイルから速度測定を含めた被検眼の診断を行うことは難しい。そこで、本実施例のように、例えば、制御部70は、適切なタイムインターバルTを探索してスキャンを行う。
【0089】
以下、ステップ2−6のスキャン信号を取得する処理において、位相差ΔΦ
Dopplerが−π〜πの範囲を超えないように適切なタイムインターバルTでスキャンを行う方法について説明する。なお、以下の説明において、位相差ΔΦ
Dopplerが−π〜πの範囲を超えて不連続点が生じることを「ラップされる」と表現する。
【0090】
適切なインターバルでスキャンを行う方法としては、例えば、制御部70は、タイムインターバルTを走査毎に順次変更しながらスキャンを行う方法が挙げられる。以下の説明において、制御部70は、タイムインターバルTを長い間隔から短い間隔に順次変更しながらスキャンを行う。この場合、制御部70は、取得された複数のOCT信号を用いてタイムインターバルTの異なる位相差ΔΦ
Dopplerを順次算出し、位相差ΔΦ
Dopplerの算出結果がラップラップされるか否かを判定する。そして、制御部70は、例えば、位相差ΔΦ
Dopplerがラップされなくなったと判定したときのタイムインターバルT、またはそれよりも短いタイムインターバルTに固定してスキャンを続ける。
【0091】
位相差ΔΦ
Dopplerがラップされるか否か判定する方法としては、例えば、隣り合う画素間における位相差ΔΦ
Dopplerの変化の大きさに基づいて判定する方法等が挙げられる。この場合、制御部70は、複数のOCT信号から取得された位相差ΔΦ
Dopplerに対してエッジ検出フィルタ(例えば、ラプラシアンフィルタなどの微分処理)を適用してもよい。例えば、
図11(a)に示すように、ラップされている位相差ΔΦ
Dopplerのプロファイルに対してエッジ検出フィルタを適用した場合、
図11(b)に示すように、ラップされている位置の強度が局所的に大きくなる。一方、
図11(c)に示すように、ラップされていない位相差ΔΦ
Dopplerのプロファイルに対してエッジ検出フィルタを適用した場合、
図11(d)に示すように、強度の局所的に大きくなることはない。従って、制御部70は、例えば、エッジ検出フィルタ適用後のプロファイルの平均値が所定以下になったときに、ラップされなくなったと判定してもよい。もちろんエッジ検出フィルタ適用後の最大値が所定以下になったときにラップされなくなったと判定してもよい。
【0092】
以上のように、制御部70は、タイムインターバルTを適切に設定することによって、血流の速さの違いに関わらずラップされていない位相差ΔΦ
Dopplerを取得するこができる。ラップされていない位相差ΔΦ
Dopplerを取得することによって血流の層流状態を良好に取得でき、被検眼の診断等に利用できる。また、検者が自らタイムインターバルTの設定を行う手間が省ける。
【0093】
なお、制御部70は、できるだけ位相差ΔΦ
Dopplerの信号強度が大きくなるようなタイムインターバルTを探索してもよい。例えば、制御部70は、位相差ΔΦ
Dopplerがラップされなくなったと判定した場合、−π〜πの範囲内で位相差ΔΦ
Dopplerのプロファイルの最大値ができるだけ大きくなるように、タイムインターバルTを徐々に長く変更し、適切なタイムインターバルTを探索してもよい。
【0094】
なお、上記の説明において、制御部70は、タイムインターバルTを長い間隔から短い間隔に順次変更するものとした。タイムインターバルTが大きい場合、血流によるドップラー信号の位相差ΔΦ
Dopplerが大きくなり、ラップされる可能性が大きい。このように、わざとラップ状態から徐々にタイムインターバルTを短くし、ラップされない状態にした場合、−π〜πの範囲で強度の大きい信号を取得できる可能性が大きい。
【0095】
もちろん、制御部70は、タイムインターバルTを短い間隔から長い間隔に変更させてもよい。タイムインターバルTが短いと、血流によるドップラー信号の位相差ΔΦ
Dopplerが小さく、ラップされない位相差ΔΦ
Dopplerを素早く取得することができる。ただし、タイムインターバルTが短いと、
図11(e),(f)に示すように、信号強度が小さくなり、信号がノイズフロアに埋もれる可能性があるため、制御部70は、ラップされない範囲でできるだけ長いタイムインターバルTを探索してもよい。
【0096】
なお、前述の例では、タイムインターバルTを徐々に長く変更する、または徐々に短く変更するものとしたが、これに限らない。例えば、制御部70は、タイムインターバルTを長い間隔と短い間隔とで交互に変更してもよいし、ランダムにタイムインターバルTの間隔を変更してもよい。なお、タイムインターバルTを短くするか長くするかは、検者の操作によって操作部から出力された操作信号によって設定できるようにしてもよい。
【0097】
なお、制御部70は、3次元モーションコントラスト画像D1を生成するために取得した複数のOCT信号を用いて、ある時点での血流の絶対速度を求め、その大きさに基づいて、最初のタイムインターバルTを設定してもよい。その後、前述のように、タイムインターバルTを順次変更することで適切なタイムインターバルTを求めてもよい。このように、3次元モーションコントラスト画像D1を取得した時点での血流の絶対速度からタイムインターバルTを設定することで、適切なタイムインターバルTを設定するまでに要する時間を短縮できる。
【0098】
なお、血流速度の大きさは、血管の太さ、種類(例えば、動脈または静脈など)等によってある程度推定することができる。したがって、制御部70は、指定血管の太さ、種類等から推定される血流速度に基づいて、タイムインターバルTを設定してもよい。この場合、例えば、制御部70は、血管の太さおよび種類等と、血流速度の大きさとの対応関係を過去の測定データなどから取得し、対応表としてメモリ72に記憶させておく。そして制御部70は、指定された血管の大きさ、および血管の存在する網膜の深度等から推定される血管の種類の少なくともいずれかを、メモリ72に記憶させた対応表と照合して指定血管の血流速度を推定してもよい。
【0099】
なお、制御部70は、例えば、複数の異なるタイムインターバルTで複数のOCT信号の取得を行い、得られた複数のOCT信号から算出されたΔΦ
Dopplerの内、ラップされていないものを血流速度の算出に用いてもよい。
【0100】
なお、以上の説明において、例えば、制御部70はタイムインターバルTを変更するものとしたが、これに限らない。例えば制御部70は、一定のタイムインターバルTでスキャンを行い、得られた複数のOCT信号の内、算出される位相差ΔΦ
DopplerがラップされていないOCT信号の組み合わせを選択して血流の絶対速度を算出してもよい。例えば、制御部70は、短いタイムインターバルTでスキャンを行い、取得された複数のOCT信号からデータを間引いてΔΦ
Dopplerを算出してもよい。例えば、0.5m秒のタイムインターバルTでスキャンを行った場合、取得された複数のOCT信号からデータを間引いて、0.5の倍数となるタイムインターバルT(例えば、1.0m秒、1.5m秒、2.0m秒など)で取得されたOCT信号からΔΦ
Dopplerを算出してもよい。この場合、制御部70は、例えば各タイムインターバルTにおいて取得されたOCT信号の内、ΔΦ
Dopplerがラップされていないものを血流速度の算出に用いてもよいし、最大値が大きいものを血流速度の算出に用いてもよい。さらに、各タイムインターバルTにおいて取得されたOCT信号の内、ΔΦ
Dopplerの傾き(例えば、微分値)の最小値が小さいものを血流速度の算出に用いてもよい。
【0101】
このように、実際に測定光を照射するタイムインターバルTは変更せずに、演算上のタイムインターバルTを変更することによって適切なタイムインターバルTを探索してもよい。