JP2019150485A - 画像処理システム、画像処理方法及びプログラム - Google Patents
画像処理システム、画像処理方法及びプログラム Download PDFInfo
- Publication number
- JP2019150485A JP2019150485A JP2018040031A JP2018040031A JP2019150485A JP 2019150485 A JP2019150485 A JP 2019150485A JP 2018040031 A JP2018040031 A JP 2018040031A JP 2018040031 A JP2018040031 A JP 2018040031A JP 2019150485 A JP2019150485 A JP 2019150485A
- Authority
- JP
- Japan
- Prior art keywords
- image
- dimensional
- data
- eye
- image processing
- 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
【課題】 一つの二次元正面画像において、注目している部位の識別を容易にすること。【解決手段】 画像処理装置は、被検眼の深さ方向に交差する方向における複数の領域に対して異なる深さ範囲を設定する深さ範囲設定手段と、被検眼の三次元データと設定された異なる深さ範囲に関する情報とを用いて、被検眼の二次元正面画像を生成する生成手段と、を有する。【選択図】 図21
Description
開示の技術は、画像処理システム、画像処理方法及びプログラムに関する。
光干渉断層計(OCT;Optical Coherence Tomography)などの眼部の断層画像撮影装置は、網膜層内部の状態を三次元的に観察することが可能である。この断層画像撮影装置は、疾病の診断をより的確に行うのに有用であることから近年注目を集めている。OCTの形態として、例えば、高速に画像を取得する方法として、広帯域光源を用い、分光器でインターフェログラムを取得するOCTとして、SD−OCT(Spectral domain OCT)が知られている。また、光源として、高速波長掃引光源を用いることで、単一チャネル光検出器でスペクトル干渉を計測する手法によるSS−OCT(Swept Source OCT)が知られている。そして、近年では、造影剤を用いない血管造影法としてOCTを用いた血管造影法(OCT Angiography:OCTA)が提案されている。OCTAでは、OCTにより取得した三次元のモーションコントラストデータを二次元平面に投影することで、血管画像(以下、OCTA画像という。)を生成する。ここで、モーションコントラストデータとは、測定対象の同一断面をOCTで繰り返し撮影し、その撮影間における測定対象の時間的な変化を検出したデータである。モーションコントラストデータは、例えば、複素OCT信号の位相やベクトル、強度の時間的な変化を差、比率、又は相関等から計算することによって得られる。
三次元のモーションコントラストデータにおいて、被検眼の深さ範囲(層等で規定される深さ方向の範囲)を設定し、設定された深さ範囲の三次元のモーションコントラストデータを用いて二次元正面画像を生成・表示する技術が、特許文献1に開示されている。
ここで、例えば、緑内障眼などを撮影した画像を確認する際には、視神経乳頭部内では深層に位置する篩状板を観察することが好ましい。一方、視神経乳頭部周囲では浅層の毛細血管を観察することが好ましい。このとき、従来の手法では、1つの二次元正面画像を生成する場合には、1つの二次元正面画像の全域に対して1つの深さ範囲を設定していた。このため、1つの二次元正面画像において深層から浅層までを一度に観察したい場合には、1つの二次元正面画像を生成するための深さ範囲として深層から浅層までを1つの深さ範囲として設定する必要があった。
この場合、被検眼の深さ方向に交差する方向(例えば、XY面の面内方向)における領域によっては、設定された1つの深さ範囲内に、注目している部位だけでなく、注目していない部位も含まれてしまう可能性がある。すなわち、生成された1つの二次元正面画像において、注目している部位の識別が難しい場合があった。
開示の技術は、一つの二次元正面画像において、注目している部位の識別を容易にすることを目的の一つとする。
なお、上記目的に限らず、後述する発明を実施するための形態に示す各構成により導かれる作用効果であって、従来の技術によっては得られない作用効果を奏することも本件の他の目的の1つとして位置付けることができる。
上記目的を達成するための、開示の画像処理装置の一つは、
被検眼の深さ方向に交差する方向における複数の領域に対して異なる深さ範囲を設定する深さ範囲設定手段と、
前記被検眼の三次元データと前記設定された異なる深さ範囲に関する情報とを用いて、前記被検眼の二次元正面画像を生成する生成手段と、を有する。
被検眼の深さ方向に交差する方向における複数の領域に対して異なる深さ範囲を設定する深さ範囲設定手段と、
前記被検眼の三次元データと前記設定された異なる深さ範囲に関する情報とを用いて、前記被検眼の二次元正面画像を生成する生成手段と、を有する。
開示の技術の一つによれば、一つの二次元正面画像において、注目している部位の識別を容易にすることができる。
(第一の実施形態)
以下、図面を参照しながら、本発明の第一の実施形態について説明する。なお、本実施形態に係る画像処理装置の一つは、被検眼の深さ方向(例えば、Z方向)に交差する方向(例えば、XY面の面内方向)における複数の領域(例えば、視神経乳頭部内や視神経乳頭部周囲)に対して異なる深さ範囲を設定(指定)することができる。また、本実施形態に係る画像処理装置の一つは、被検眼の三次元データと、設定された異なる深さ範囲(例えば、深層や浅層)に関する情報(例えば、Z方向の座標値)とを用いて、被検眼の二次元正面画像を生成することができる。これにより、例えば、一つの二次元正面画像において、注目している部位(例えば、血管網)の識別を容易にすることができる。
以下、図面を参照しながら、本発明の第一の実施形態について説明する。なお、本実施形態に係る画像処理装置の一つは、被検眼の深さ方向(例えば、Z方向)に交差する方向(例えば、XY面の面内方向)における複数の領域(例えば、視神経乳頭部内や視神経乳頭部周囲)に対して異なる深さ範囲を設定(指定)することができる。また、本実施形態に係る画像処理装置の一つは、被検眼の三次元データと、設定された異なる深さ範囲(例えば、深層や浅層)に関する情報(例えば、Z方向の座標値)とを用いて、被検眼の二次元正面画像を生成することができる。これにより、例えば、一つの二次元正面画像において、注目している部位(例えば、血管網)の識別を容易にすることができる。
また、本実施形態に係る画像処理装置の一つは、アーティファクトを低減した三次元のモーションコントラストデータを生成するにあたり、複数のモーションコントラストデータの位置合わせをすると共に、加算平均を行うために位置合わせの基準となるモーションコントラストデータを選択することが好ましい。これにより、固視微動などにより、モーションコントラストデータにアーティファクトが存在する場合においても高画質な三次元のモーションコントラストデータを取得することが可能となる。ここで、高画質とは一度の撮影と比較してS/N比が向上している画像をいう。または、診断に必要な情報量が増えている画像のことをいう。なお、本実施形態に係るアーティファクトを低減する処理(例えば、図3のステップS305)は、本発明における必須の構成ではない。
なお、本実施形態の一つにおいて、三次元データは、輝度値からなる三次元の断層像データと、脱相関値からなる三次元のモーションコントラストデータのことを指す。また、三次元の断層像データを用いて生成された二次元正面画像を二次元の輝度正面画像(またはEnface画像や輝度Enface画像)とも言う。また、三次元のモーションコントラストデータを用いて生成された二次元正面画像をモーションコントラスト正面画像(またはOCTA画像やモーションコントラストEnface画像)とも言う。
また、二次元正面画像を生成するための深さ範囲や、被検眼の深さ方向に交差する方向における複数の領域のうち他の領域とは異なる深さ範囲を設定するための少なくとも1つの領域(部分領域)は、操作者の指示に応じて設定(手動設定)されても良いし、三次元データ等の解析結果に基づいて自動的に設定(自動設定)されても良いし、自動的に設定された後に操作者の指示に応じて設定が変更(修正)されても良い。すなわち、深さ範囲や少なくとも1つの領域を設定する設定手段は、これらの機能のうち少なくとも1つの機能を含むことが好ましい。また、設定手段は、複数の機能を含む場合には、複数の機能のいずれかの機能が選択可能に構成されることが好ましい。これにより、操作者は目的に応じていずれかの機能を容易に選択することができる。
また、深さ方向に交差する方向は、深さ方向に直交する方向であることが好ましいが、本発明はこれに限らない。例えば、深さ方向を設定する設定手段は、網膜の断層画像における深さ方向に対する網膜の傾きに関する情報を用いて、少なくとも1つの領域(部分領域)の深さ範囲を設定するための方向を設定することが好ましい。これにより、例えば、傾いた網膜に対する法線方向を設定することができるため、設定された方向に沿って少なくとも1つの領域や他の領域の深さ範囲を設定することができる。このため、医者等の操作者は所望の部位の観察を容易に行うことができる。このとき、設定手段は、傾いた網膜の面内方向を、深さ方向に交差する方向として設定しても良い。
以下、本実施形態に係る画像処理装置を備える画像処理システムについて、詳細を説明する。
図1は、本実施形態に係る画像処理装置300を備える画像処理システム100の構成を示す図である。図1に示すように、画像処理システム100は、画像処理装置300が、インタフェースを介して断層画像撮影装置(OCTとも言う)200、眼底画像撮影装置400、外部記憶部500、表示部600、入力部700と接続されることにより構成されている。
断層画像撮影装置200は、眼部の断層画像を撮影する装置である。断層画像撮影装置に用いる装置は、例えばSD−OCTやSS−OCTからなる。なお、断層画像撮影装置200は既知の装置であるため詳細な説明は省略し、ここでは、画像処理装置300からの指示により行われる断層画像の撮影について説明を行う。
図1において、ガルバノミラー201は、測定光の眼底における走査を行うためのものであり、OCTによる眼底の撮影範囲を規定する。また、駆動制御部202は、ガルバノミラー201の駆動範囲および速度を制御することで、眼底における平面方向の撮影範囲及び走査線数(平面方向の走査速度)を規定する。ここでは、簡単のためガルバノミラーは一つのユニットとして示したが、実際にはXスキャン用のミラーとYスキャン用の2枚のミラーで構成され、眼底上で所望の範囲を測定光で走査できる。
フォーカス203は被検体である眼の前眼部を介し、眼底の網膜層にフォーカスするためのものである。測定光は、非図示のフォーカスレンズにより、被検体である眼の前眼部を介し、眼底の網膜層にフォーカスされる。眼底を照射した測定光は各網膜層で反射・散乱して戻る。
内部固視灯204は、表示部241、レンズ242で構成される。表示部241として複数の発光ダイオード(LD)がマトリックス状に配置されたものを用いる。発光ダイオードの点灯位置は、駆動制御部202の制御により撮影したい部位に合わせて変更される。表示部241からの光は、レンズ242を介し、被検眼に導かれる。表示部241から出射される光は520nmで、駆動制御部202により所望のパターンが表示される。
コヒーレンスゲートステージ205は、被検眼の眼軸長の相違等に対応するため、駆動制御部202により制御されている。コヒーレンスゲートとは、OCTにおける測定光と参照光の光学距離が等しい位置を表す。さらには、撮影方法としてコヒーレンスゲートの位置を制御することにより、網膜層側か、あるいは網膜層より深部側とする撮影を行うことを制御する。ここで、画像処理システムで取得する眼の構造と画像について図2を用いて説明する。
図2(a)に眼球の模式図を示す。図2(a)において、Cは角膜、CLは水晶体、Vは硝子体、Mは黄斑部(黄斑の中心部は中心窩を表す)、Dは視神経乳頭部を表す。本実施形態にかかる断層画像撮影装置200は、主に、硝子体、黄斑部、視神経乳頭部を含む網膜の後極部を撮影する場合について説明を行う。なお、本発明では説明をしないが、断層画像撮影装置200は、角膜、水晶体の前眼部を撮影することも可能である。
図2(b)に断層画像撮影装置200が取得する網膜を撮影した場合の断層画像の例を示す。図2(b)において、ASはAスキャンというOCT断層画像における画像取得の単位を表す。このAスキャンが複数集まって一つのBスキャンを構成する。そしてこのBスキャンのことを断層画像(あるいは断層像)と呼ぶ。図2(b)において、Veは血管、Vは硝子体、Mは黄斑部、Dは視神経乳頭部、Laは篩状板の後面を表す。また、L1は内境界膜(ILM)と神経線維層(NFL)との境界、L2は神経線維層と神経節細胞層(GCL)との境界、L3は視細胞内節外節接合部(ISOS)、L4は網膜色素上皮層(RPE)、L5はブルッフ膜(BM)、L6は脈絡膜を表す。断層画像において、横軸(OCTの主走査方向)をx軸、縦軸(深さ方向)をz軸とする。
図2(c)に眼底画像撮影装置400が取得する眼底画像の例を示す。眼底画像撮影装置400は、眼部の眼底画像を撮影する装置であり、当該装置としては、例えば、眼底カメラやSLO(Scanning Laser Ophothalmoscope)等が挙げられる。図2(c)において、Mは黄斑部、Dは視神経乳頭部を表し、太い曲線は網膜の血管を表す。眼底画像において、横軸(OCTの主走査方向)をx軸、縦軸(OCTの副走査方向)をy軸とする。なお、断層画像撮影装置200と眼底画像撮影装置400の装置構成は、一体型でもよいし別体型でもよい。
画像処理装置300は、画像取得部301、記憶部302、画像処理部303、指示部304、表示制御部305を備える。画像取得部301は、断層画像生成部311、モーションコントラストデータ生成部312からなり、断層画像撮影装置200により撮影された断層画像の信号データを取得し、信号処理を行うことで断層画像の生成、ならびにモーションコントラストデータの生成を行う。また、眼底画像撮影装置400により撮影された眼底画像データを取得する。そして、生成した断層画像と眼底画像を記憶部302に格納する。画像処理部303は、前処理部331、画像生成部332、検出部333、第一の位置合わせ部334、選択部335、第二の位置合わせ部336、第三の位置合わせ部337、第四の位置合わせ部338、画像合成部339、領域抽出部340からなる。
前処理部331は、モーションコントラストデータからアーティファクトを除去する処理を行う。画像生成部332は、三次元のモーションコントラストデータを用いて二次元のモーションコントラスト正面画像(OCTA画像とも言う)、あるいは、三次元の断層像データを用いて二次元の輝度正面画像(Enface画像とも言う)を生成する。検出部333は、網膜から各層の境界線を検出する。第一の位置合わせ部334は、二次元の正面画像の位置合わせを行う。選択部335は、第一の位置合わせ部334の結果から基準とするデータを選択する。第二の位置合わせ部336は、OCTA画像を用いて網膜の横方向(x軸)の位置合わせを行う。第三の位置合わせ部337は、網膜の深さ方向(z軸)の位置合わせを行う。第四の位置合わせ部338は、断層画像内部の特徴がある部分に位置合わせのための領域を複数設定し、その領域単位で網膜の深さ方向(z軸)の位置合わせを行う。画像合成部339は、第一から第四の位置合わせ部によって位置合わせされた三次元データを加算平均する。領域設定手段の一例である領域抽出部340は、被検眼の深さ方向に交差する方向における複数の領域のうち他の領域とは異なる深さ範囲を設定するための少なくとも1つの領域を抽出(設定、特定、検出)する。これは、抽出された少なくとも1つの領域に対して他の領域とは異なる深さ範囲を設定するためである。ここで、設定される深さ範囲は、OCTA画像、Enface画像を生成するための深さの範囲である。
外部記憶部500は、被検眼に関する情報(患者の氏名、年齢、性別など)と、撮影した画像データ、撮影パラメータ、画像解析パラメータ、操作者によって設定されたパラメータをそれぞれ関連付けて保持している。
入力部700は、例えば、マウス、キーボード、タッチ操作画面などであり、操作者は、入力部700を介して、画像処理装置300や断層画像撮影装置200、眼底画像撮影装置400へ指示を行う。
次に、図3を参照して本実施形態の画像処理装置300の処理手順を示す。図3(a)は、本実施形態における本システム全体の動作処理、図3(b)は、本実施形態における高画質画像生成処理の流れを示すフローチャートである。
<ステップS301>
ステップS301では、不図示の被検眼情報取得部は、被検眼を同定する情報として被検者識別番号を外部から取得する。そして、被検者識別番号に基づいて、外部記憶部500が保持している当該被検眼に関する情報を取得して記憶部302に記憶する。
ステップS301では、不図示の被検眼情報取得部は、被検眼を同定する情報として被検者識別番号を外部から取得する。そして、被検者識別番号に基づいて、外部記憶部500が保持している当該被検眼に関する情報を取得して記憶部302に記憶する。
<ステップS302>
ステップS302では被検眼をスキャンして撮影を行う。被検眼のスキャンは、操作者が非図示のスキャン開始を選択すると、断層画像撮影装置200は、駆動制御部202を制御し、ガルバノミラー201を動作させて断層画像のスキャンを行う。ガルバノミラー201は、水平方向用のXスキャナと垂直方向用のYスキャナで構成される。そのため、これらのスキャナの向きをそれぞれ変更すると、装置座標系における水平方向(X)、垂直方向(Y)それぞれの方向に走査することが出来る。そして、これらのスキャナの向きを同時に変更させることで、水平方向と垂直方向とを合成した方向に走査することが出来るため、眼底平面上の任意の方向に走査することが可能となる。
ステップS302では被検眼をスキャンして撮影を行う。被検眼のスキャンは、操作者が非図示のスキャン開始を選択すると、断層画像撮影装置200は、駆動制御部202を制御し、ガルバノミラー201を動作させて断層画像のスキャンを行う。ガルバノミラー201は、水平方向用のXスキャナと垂直方向用のYスキャナで構成される。そのため、これらのスキャナの向きをそれぞれ変更すると、装置座標系における水平方向(X)、垂直方向(Y)それぞれの方向に走査することが出来る。そして、これらのスキャナの向きを同時に変更させることで、水平方向と垂直方向とを合成した方向に走査することが出来るため、眼底平面上の任意の方向に走査することが可能となる。
撮影を行うにあたり各種撮影パラメータの調整を行う。具体的には、内部固視灯の位置、スキャン範囲、スキャンパターン、コヒーレンスゲート位置、フォーカスを少なくとも設定する。駆動制御部202は、表示部241の発光ダイオードを制御して、黄斑部中心や視神経乳頭に撮影を行うように内部固視灯204の位置を制御する。スキャンパターンは、三次元ボリュームを撮影するラスタスキャンや放射状スキャン、クロススキャンなどのスキャンパターンを設定する。これら撮影パラメータの調整終了後、操作者が非図示の撮影開始を選択することで撮影を行う。
本実施形態においては、スキャンパターンはラスタスキャンによる三次元ボリュームで、高画質データ生成のために三次元ボリュームをN回(Nは2以上)撮影する。N回繰り返し撮影するデータは、同じ撮影範囲を同じスキャンパターンで撮影する。例えば、3mm×3mmの範囲を300×300(主走査×副走査)の間隔で繰り返し撮影を行う。三次元ボリュームにおいては、モーションコントラストを計算するために同一のライン箇所をM回(Mは2以上)繰り返し撮影する。すなわち、Mが2回だとする場合、実際には300×600のデータを撮影し、そこから300×300の三次元モーションコントラストデータを生成する。
本発明においては詳細な説明を省略するが、断層画像撮影装置200は、加算平均用に同じ場所を撮影するために、被検眼のトラッキングを行うことで、固視微動の影響を少なくして被検眼のスキャンを行う。さらに、まばたきなどの画像を生成するにあたりアーティファクトとなる動きを検出した場合には、アーティファクトが発生した場所で再スキャンを自動的に行う。
<ステップS303>
ステップS303では、断層画像の生成を行う。断層画像生成部311は、それぞれの干渉信号に対して、一般的な再構成処理を行うことで、断層画像を生成する。
ステップS303では、断層画像の生成を行う。断層画像生成部311は、それぞれの干渉信号に対して、一般的な再構成処理を行うことで、断層画像を生成する。
まず、断層画像生成部311は、干渉信号から固定パターンノイズ除去を行う。固定パターンノイズ除去は検出した複数のAスキャン信号を平均することで固定パターンノイズを抽出し、これを入力した干渉信号から減算することで行われる。次に、断層画像生成部311は、有限区間でフーリエ変換した場合にトレードオフの関係となる深さ分解能とダイナミックレンジを最適化するために、所望の窓関数処理を行う。次に、FFT処理を行う事によって断層信号を生成する。
<ステップS304>
ステップS304では、モーションコントラストデータ生成部312がモーションコントラストデータの生成を行う。このデータ生成について図7を用いて説明を行う。MCは三次元のモーションコントラストデータを示し、LMCは三次元のモーションコントラストデータを構成する二次元のモーションコントラストデータを示している。ここでは、このLMCを生成する方法について説明をする。
ステップS304では、モーションコントラストデータ生成部312がモーションコントラストデータの生成を行う。このデータ生成について図7を用いて説明を行う。MCは三次元のモーションコントラストデータを示し、LMCは三次元のモーションコントラストデータを構成する二次元のモーションコントラストデータを示している。ここでは、このLMCを生成する方法について説明をする。
モーションコントラストデータ生成部312は、まず被検眼の同一範囲で撮影された複数の断層像間の位置ずれを補正する。位置ずれの補正方法は任意の方法であってよい。例えば、モーションコントラスト生成部312は、同一範囲をM回撮影し、同一箇所に相当する断層像データ同士について、眼底形状等の特徴等を利用して位置合わせを行う。具体的には、M個の断層像データのうちの1つをテンプレートとして選択し、テンプレートの位置と角度を変えながらその他の断層像データとの類似度を求め、テンプレートとの位置ずれ量を求める。その後、モーションコントラスト生成部312は、求めた位置ずれ量に基づいて、各断層像データを補正する。
次にモーションコントラスト生成部312は、各断層像データに関する撮影時間が互いに連続する、2つの断層像データ間で式1により脱相関値M(x, z)を求める。
ここで、A(x, z)は断層像データAの位置(x、z)における輝度、B(x, z)は断層像データBの同一位置(x、z)における輝度を示している。
脱相関値M(x, z)は0〜1の値となり、2つの輝度の差が大きいほどM(x, z)の値は大きくなる。モーションコントラスト生成部312は、同一位置で繰り返し取得したMが3以上の場合には、同一位置(x、z)において複数の脱相関値M(x, z)を求めることができる。モーションコントラスト生成部312は、求めた複数の脱相関値M(x, z)の最大値演算や平均演算などの統計的な処理を行うことで、最終的なモーションコントラストデータを生成することができる。なお、繰り返し回数Mが2の場合、最大値演算や平均演算などの統計的な処理は行わず、隣接する2つの断層像AとBの脱相関値M(x, z)が、位置(x、z)におけるモーションコントラストの値となる。
式1に示したモーションコントラストの計算式はノイズの影響を受けやすい傾向がある。例えば、複数の断層像データの無信号部分にノイズがあり、互いに値が異なる場合には、脱相関値が高くなり、モーションコントラスト画像にもノイズが重畳してしまう。これを避けるために、モーションコントラスト生成部312は、前処理として、所定の閾値を下回る断層データはノイズとみなして、ゼロに置き換えることができる。これにより、画像生成部332は、生成されたモーションコントラストデータに基づいて、ノイズの影響を低減したモーションコントラスト画像を生成することができる。
上述したステップS302からステップS304の処理を所定回数繰り返す。それにより、複数の三次元断層画像と複数の三次元モーションコントラストデータを取得することができる。これら取得した複数のデータを用いて、ステップS305では、画像処理部303が高画質データ生成を行う。高画質データを生成するためのデータ選択と実行の表示形態に関しては後述(ステップS306)する。ここでは、画像処理部303の処理について、図3(b)、図4〜図6のフローチャートと、図7〜図15を用いて説明をする。
<ステップS351>
ステップS351では、検出部333は、断層画像撮影装置200が撮影した複数の断層画像において網膜層の境界線を検出する。検出部333は、図2(b)の断層画像においてL1〜L6の各境界、あるいは非図示のGCL/IPL、IPL/INL、INL/OPL、OPL/ONL境界のいずれかを検出する。処理の対象とする断層画像に対して、メディアンフィルタとSobelフィルタをそれぞれ適用して画像を作成する(以下、メディアン画像、Sobel画像とする)。次に、作成したメディアン画像とSobel画像から、Aスキャン毎にプロファイルを作成する。メディアン画像では輝度値のプロファイル、Sobel画像では勾配のプロファイルとなる。そして、Sobel画像から作成したプロファイル内のピークを検出する。検出したピークの前後やピーク間に対応するメディアン画像のプロファイルを参照することで、網膜層の各領域の境界を検出する。
ステップS351では、検出部333は、断層画像撮影装置200が撮影した複数の断層画像において網膜層の境界線を検出する。検出部333は、図2(b)の断層画像においてL1〜L6の各境界、あるいは非図示のGCL/IPL、IPL/INL、INL/OPL、OPL/ONL境界のいずれかを検出する。処理の対象とする断層画像に対して、メディアンフィルタとSobelフィルタをそれぞれ適用して画像を作成する(以下、メディアン画像、Sobel画像とする)。次に、作成したメディアン画像とSobel画像から、Aスキャン毎にプロファイルを作成する。メディアン画像では輝度値のプロファイル、Sobel画像では勾配のプロファイルとなる。そして、Sobel画像から作成したプロファイル内のピークを検出する。検出したピークの前後やピーク間に対応するメディアン画像のプロファイルを参照することで、網膜層の各領域の境界を検出する。
<ステップS352>
ステップS352では、画像生成部332が、三次元のモーションコントラストデータに対して設定された生成範囲上端と生成範囲下端との範囲に対応するモーションコントラストデータを二次元平面上に投影し、OCTA画像を生成する。具体的には、画像生成部332が、全体のモーションコントラストデータのうち生成範囲上端と生成範囲下端の間の範囲に対応するモーションコントラストデータに基づいて、その範囲内のモーションコントラストデータを平均値投影(AIP)、あるいは最大値投影(MIP)などの処理を行うことで、モーションコントラスト画像の正面画像であるOCTA画像を生成する。なお、OCTA画像の生成方法は平均値や最大値に限らない。最小値、中央値、分散、標準偏差、総和などの値で生成しても良い。
ステップS352では、画像生成部332が、三次元のモーションコントラストデータに対して設定された生成範囲上端と生成範囲下端との範囲に対応するモーションコントラストデータを二次元平面上に投影し、OCTA画像を生成する。具体的には、画像生成部332が、全体のモーションコントラストデータのうち生成範囲上端と生成範囲下端の間の範囲に対応するモーションコントラストデータに基づいて、その範囲内のモーションコントラストデータを平均値投影(AIP)、あるいは最大値投影(MIP)などの処理を行うことで、モーションコントラスト画像の正面画像であるOCTA画像を生成する。なお、OCTA画像の生成方法は平均値や最大値に限らない。最小値、中央値、分散、標準偏差、総和などの値で生成しても良い。
本実施形態においては、生成範囲上端をILM/NFL境界線とし、生成範囲下端をGCL/IPLから深度方向に50μm下端の境界線とする。そして、平均値投影法でOCTA画像を生成する。
なお、モーションコントラスト生成部312が、生成範囲上端と生成範囲下端との間の範囲の断層データを用いてモーションコントラストデータを生成する構成としてもよい。この場合、画像生成部332は、生成されたモーションコントラストデータに基づいてOCTA画像を生成することで、設定された深さ範囲の断層データに基づくOCTA画像を生成することができる。
<ステップS353>
ステップS353では、N枚のOCTA画像において、画像の横方向(x軸)と縦方向(y軸)、xy面内の回転位置合わせをそれぞれ行う。これについて、図4のフローチャートを用いて説明をする。
ステップS353では、N枚のOCTA画像において、画像の横方向(x軸)と縦方向(y軸)、xy面内の回転位置合わせをそれぞれ行う。これについて、図4のフローチャートを用いて説明をする。
<ステップS3531>
ステップS3531では、前処理部331は、画像生成部332が生成したOCTA画像から黒帯や白線のようなアーティファクトを検出し、除去する。これについて図8を用いて説明をする。図8において、OCTA画像の黒い領域は脱相関値が高い場所、すなわち血液の流れが検出された場所(血管に相当する)を表し、白い領域は、脱相関値が低い場所を表す。図8(a)のBBは黒帯の例で、図8(b)のWLは白線の例を示している。黒帯は、撮影中の動きにより、網膜の位置が感度の高い位置から遠ざかることで網膜断層像の輝度値が低下し脱相関の値が低くなったり、まばたき等により画像全体が暗くなることで脱相関の値が低くなったりすることで発生する。白線は、脱相関の計算においてM個の断層像を位置合わせして計算をするが、位置合わせがうまくいかなかったり、位置合わせで位置を補正しきれなかったりする場合に、画像全体の脱相関値が高くなることで発生する。これらのアーティファクトは脱相関の計算において発生するため、主走査方向の1ライン単位で発生する。そのため、前処理部331は、1ライン単位でアーティファクトを検出する。
ステップS3531では、前処理部331は、画像生成部332が生成したOCTA画像から黒帯や白線のようなアーティファクトを検出し、除去する。これについて図8を用いて説明をする。図8において、OCTA画像の黒い領域は脱相関値が高い場所、すなわち血液の流れが検出された場所(血管に相当する)を表し、白い領域は、脱相関値が低い場所を表す。図8(a)のBBは黒帯の例で、図8(b)のWLは白線の例を示している。黒帯は、撮影中の動きにより、網膜の位置が感度の高い位置から遠ざかることで網膜断層像の輝度値が低下し脱相関の値が低くなったり、まばたき等により画像全体が暗くなることで脱相関の値が低くなったりすることで発生する。白線は、脱相関の計算においてM個の断層像を位置合わせして計算をするが、位置合わせがうまくいかなかったり、位置合わせで位置を補正しきれなかったりする場合に、画像全体の脱相関値が高くなることで発生する。これらのアーティファクトは脱相関の計算において発生するため、主走査方向の1ライン単位で発生する。そのため、前処理部331は、1ライン単位でアーティファクトを検出する。
例えば、黒帯検出は、1ラインでの脱相関の平均値が閾値THAVG_B以下の場合、黒帯とする。白線検出は、1ラインでの脱相関値の平均値が閾値THAVG_W以上で、かつ、標準偏差(あるいは分散値)がTHSD_W以下である場合、白線とする。白線の場合、平均値だけで判定を行うと大血管などで脱相関値が高く出る場合があり、これらのような脱相関値の高い血管が含まれる領域を白線と誤検出してしまう事がある。そのため、標準偏差や分散のような値のバラつきを評価する指標と組み合わせて判断する。すなわち、脱相関値の高い血管が含まれる1ラインは、平均値が高くて標準偏差も高くなる。一方、白線の1ラインは、平均値は高いが値のバラつきは小さいため標準偏差は低くなる。なお、OCTA画像は健常眼や患眼、患眼などでも病気の種類に応じて脱相関値の値が変動する。そのため、閾値は画像毎に設定することが望ましく、P−tileや判別分析のような動的閾値法を用いて、OCTA画像の明るさに応じて設定することが望ましい。なお、動的閾値法を用いる場合、上限閾値と下限閾値は事前に設定しておき、その値を上回るか下回る場合には、それらの上限閾値、あるいは下限閾値を閾値として設定する。
前処理部331は、上記で求めたアーティファクト領域を、OCTA画像に対応するMask画像に記憶しておく。図のMask画像において、白い領域は1、黒い領域は0の値を設定した例を示す。
<ステップS3532>
ステップS3532では、第一の位置合わせ部334は、各OCTA画像をそれぞれ位置合わせした場合の位置合わせパラメータを保存するための二次元行列を初期化する。各行列の要素には、位置合わせ時の変形パラメータや画像類似度などの画像高画質化に必要な情報をまとめて保存する。
ステップS3532では、第一の位置合わせ部334は、各OCTA画像をそれぞれ位置合わせした場合の位置合わせパラメータを保存するための二次元行列を初期化する。各行列の要素には、位置合わせ時の変形パラメータや画像類似度などの画像高画質化に必要な情報をまとめて保存する。
<ステップS3533>
ステップS3533では、第一の位置合わせ部334は、位置合わせ対象を選択する。本実施形態においては、全てのOCTA画像を基準画像に設定して残りのOCTA画像と位置合わせを行う。そのため、ステップS3533においては、Data0のOCTA画像を基準とする場合に、Data1〜Data(N−1)とそれぞれ位置合わせを行う。次に、Data1のOCTA画像を基準とする場合には、Data2〜Data(N−1)とそれぞれ位置合わせを行う。次に、Data2のOCTA画像を基準とする場合には、Data3〜Data(N−1)とそれぞれ位置合わせを行う。これらの処理を繰り返す。この例を図9(a)に示す。図9では簡単のため、Data0〜Data2を示しているが、三次元ボリュームをN回撮影している場合には、N個のOCTA画像間での位置合わせを行う。
ステップS3533では、第一の位置合わせ部334は、位置合わせ対象を選択する。本実施形態においては、全てのOCTA画像を基準画像に設定して残りのOCTA画像と位置合わせを行う。そのため、ステップS3533においては、Data0のOCTA画像を基準とする場合に、Data1〜Data(N−1)とそれぞれ位置合わせを行う。次に、Data1のOCTA画像を基準とする場合には、Data2〜Data(N−1)とそれぞれ位置合わせを行う。次に、Data2のOCTA画像を基準とする場合には、Data3〜Data(N−1)とそれぞれ位置合わせを行う。これらの処理を繰り返す。この例を図9(a)に示す。図9では簡単のため、Data0〜Data2を示しているが、三次元ボリュームをN回撮影している場合には、N個のOCTA画像間での位置合わせを行う。
なお、ここで示したように基準画像のDataを1つずつ繰り上げた場合に、位置合わせの対象とする画像のスタートDataも1つずつ大きくする。これについてData2のOCTA画像を基準とする場合について説明をする。Data2を基準とする場合に、Data0とData1、Data0とData2、Data1とData2の位置合わせは、それまでの処理により既に位置合わせ済みである。そのため、Data2のOCTA画像を基準とする場合には、Data3から位置合わせをすればよい。これにより、全部のOCTA画像同士の位置合わせとはいえ、半分の組み合わせを計算すればよいことになる。
<ステップS3534>
ステップS3534では、第一の位置合わせ部334は、複数のOCTA画像間において画像の横方向(x軸)と縦方向(y軸)、xy面内の回転位置合わせを行う。OCTA画像間の位置合わせでは、xy面内においてサブピクセル位置合わせを行うために、OCTA画像のサイズを拡大して位置合わせを行う。サブピクセル位置合わせとすることで、ピクセル位置合わせよりも位置合わせの精度が向上することが期待される。例えば、OCTA画像の撮影サイズを300×300とした場合、600×600に拡大をする。拡大する際にはBicubicやLanczos(n)法のような補間方法を用いる。そして、画像同士の位置合わせ処理としては、例えば、2つのOCTA画像の類似度を表す評価関数を事前に定義しておき、OCTA画像位置をずらしたり、回転させたりしながら評価値を計算し、評価値が最もよくなる場所を位置合わせ結果とする。評価関数としては、画素値で評価する方法が挙げられる(例えば、相関係数を用いて評価を行う方法が挙げられる)。
ステップS3534では、第一の位置合わせ部334は、複数のOCTA画像間において画像の横方向(x軸)と縦方向(y軸)、xy面内の回転位置合わせを行う。OCTA画像間の位置合わせでは、xy面内においてサブピクセル位置合わせを行うために、OCTA画像のサイズを拡大して位置合わせを行う。サブピクセル位置合わせとすることで、ピクセル位置合わせよりも位置合わせの精度が向上することが期待される。例えば、OCTA画像の撮影サイズを300×300とした場合、600×600に拡大をする。拡大する際にはBicubicやLanczos(n)法のような補間方法を用いる。そして、画像同士の位置合わせ処理としては、例えば、2つのOCTA画像の類似度を表す評価関数を事前に定義しておき、OCTA画像位置をずらしたり、回転させたりしながら評価値を計算し、評価値が最もよくなる場所を位置合わせ結果とする。評価関数としては、画素値で評価する方法が挙げられる(例えば、相関係数を用いて評価を行う方法が挙げられる)。
類似度を表す評価関数として相関係数を用いた場合の式を式2に示す。
式2において、Data0のOCTA画像の領域をf(x, y)、Data1のOCTA画像の領域をg(x, y)とする。
また、評価関数としては、これに限らずSSD(Sum of Squared Difference)や、SAD(Sum of Absolute Difference)でもよく、画像の類似度あるいは相違度を評価出来ればよい。あるいは、POC(Phase Only Correlation)のような方法で、位置合わせを行っても良い。この処理により、XY面内の大局的な位置合わせが行われる。
なお、ここではOCTA画像のサイズを拡大して位置合わせを行う例について示したが、これに限らない。また、入力のOCTA画像サイズが900×900のような高密度スキャンの場合には、必ずしも拡大をする必要はない。また、位置合わせを高速で行うため、ピラミッド構造データを生成して位置合わせをしてもよい。
<ステップS3535>
ステップS3535では、第一の位置合わせ部334は、OCTA画像の画像評価値を計算する。画像評価値は、ステップS3534での二次元位置合わせ済みのOCTA画像において、位置合わせにより発生する無効領域を含まない画像の共通領域を用いて計算する。例えば、画像評価値Qは式3で求めることが出来る。
ステップS3535では、第一の位置合わせ部334は、OCTA画像の画像評価値を計算する。画像評価値は、ステップS3534での二次元位置合わせ済みのOCTA画像において、位置合わせにより発生する無効領域を含まない画像の共通領域を用いて計算する。例えば、画像評価値Qは式3で求めることが出来る。
式3において、Data0のOCTA画像の領域をf(x, y)、Data1のOCTA画像の領域をg(x, y)とする。最初の項は相関係数を表し、式2で示した式と同様である。そのため、式の中のσf、σgはそれぞれ、式2で示したものと対応する。2番目の項は明るさを評価する項であり、
<ステップS3536>
ステップS3536では、第一の位置合わせ部334は、ステップS3532で初期化した位置合わせや画像類似度などの画像高画質化に必要なパラメータを保存するための二次元行列に対して値を保存する。例えば、基準画像をData0、対象画像をData1とする場合、二次元行列の要素(0、1)に横方向の位置合わせパラメータX、縦方向の位置合わせパラメータY、XY面内の回転パラメータα、画像評価値、画像類似度を保存する。これらの情報の他に、図8で示したMask画像をOCTA画像と関連付けて保存しておく。さらに、本実施形態では説明をしないが、倍率補正を行う場合には、倍率を保存しても良い。
ステップS3536では、第一の位置合わせ部334は、ステップS3532で初期化した位置合わせや画像類似度などの画像高画質化に必要なパラメータを保存するための二次元行列に対して値を保存する。例えば、基準画像をData0、対象画像をData1とする場合、二次元行列の要素(0、1)に横方向の位置合わせパラメータX、縦方向の位置合わせパラメータY、XY面内の回転パラメータα、画像評価値、画像類似度を保存する。これらの情報の他に、図8で示したMask画像をOCTA画像と関連付けて保存しておく。さらに、本実施形態では説明をしないが、倍率補正を行う場合には、倍率を保存しても良い。
<ステップS3537>
ステップS3537では、第一の位置合わせ部334は、全て・BR>フ画像を基準画像として残りの対象画像と位置合わせを行ったか否かを判定する。全ての画像を基準として処理をしていない場合には、ステップS3533に戻る。そして、全ての画像を基準として処理をした場合には、ステップS3538に進む。
ステップS3537では、第一の位置合わせ部334は、全て・BR>フ画像を基準画像として残りの対象画像と位置合わせを行ったか否かを判定する。全ての画像を基準として処理をしていない場合には、ステップS3533に戻る。そして、全ての画像を基準として処理をした場合には、ステップS3538に進む。
<ステップS3538>
ステップS3538では、第一の位置合わせ部334は、二次元行列の残りの要素を更新する。上記処理は、ステップS3533で説明したように、半分の組み合わせしか計算をしていない。そのため、計算をしていない要素にこれらの値をコピーする。例えば、二次元行列の要素(0、1)のパラメータは(1、0)の要素にコピーされる。すなわち、要素(i、j)を要素(j、i)にコピーする。この際、位置合わせパラメータX、Yと回転パラメータαは逆になるため、負の値を掛けてコピーをする。なお、画像類似度などは逆にならないため、同じ値をそのままコピーする。これらの処理によりOCTA画像位置合わせが行われる。次に、図3(b)の処理フローに戻って説明を行う。
ステップS3538では、第一の位置合わせ部334は、二次元行列の残りの要素を更新する。上記処理は、ステップS3533で説明したように、半分の組み合わせしか計算をしていない。そのため、計算をしていない要素にこれらの値をコピーする。例えば、二次元行列の要素(0、1)のパラメータは(1、0)の要素にコピーされる。すなわち、要素(i、j)を要素(j、i)にコピーする。この際、位置合わせパラメータX、Yと回転パラメータαは逆になるため、負の値を掛けてコピーをする。なお、画像類似度などは逆にならないため、同じ値をそのままコピーする。これらの処理によりOCTA画像位置合わせが行われる。次に、図3(b)の処理フローに戻って説明を行う。
<ステップS354>
ステップS354では、選択部335が基準画像の選択を行う。ステップS353で行った位置合わせの結果に基づいて基準画像選択を行う。ステップS353において、二次元行列を作成しており、行列の各要素に高画質化画像生成に必要な情報が保存されている。そのため、その情報を用いることで基準画像選択を行う。基準画像選択において、画像評価値、位置合わせパラメータ評価値、アーティファクト領域評価値を用いて選択を行う。画像評価値は、ステップS3535で求めた値を用いる。位置合わせパラメータは、ステップS3534で求めた位置合わせ結果のXとYを用いて、例えば、式4を用いて評価値とする。式4では、移動量が大きいほど大きな値となる。
ステップS354では、選択部335が基準画像の選択を行う。ステップS353で行った位置合わせの結果に基づいて基準画像選択を行う。ステップS353において、二次元行列を作成しており、行列の各要素に高画質化画像生成に必要な情報が保存されている。そのため、その情報を用いることで基準画像選択を行う。基準画像選択において、画像評価値、位置合わせパラメータ評価値、アーティファクト領域評価値を用いて選択を行う。画像評価値は、ステップS3535で求めた値を用いる。位置合わせパラメータは、ステップS3534で求めた位置合わせ結果のXとYを用いて、例えば、式4を用いて評価値とする。式4では、移動量が大きいほど大きな値となる。
アーティファクト領域評価値は、ステップS3531で求めたMask画像を用いて、例えば、式5を用いて評価値とする。式5では、T(x,y)はMask画像でのアーティファクトではない領域のピクセルを表し、A(x,y)はMask画像の全ピクセルを表す。そのため、アーティファクトが存在しない場合、最大値は1となる。
画像評価値とアーティファクト領域評価値は数値が大きい方が良く、位置合わせパラメータ評価値は数値が小さい方が良い。また、画像評価値と位置合わせパラメータ評価値は、ある画像を基準とした時に、その他の画像との関係で求める値であるため、N−1個の合計値となる。これらの評価値は評価尺度が異なるため、それぞれの値でソートを行い、ソートしたインデックスの合計値により基準画像を選択する。例えば、画像評価値とアーティファクト領域評価値は数値が大きいほど、ソート後のインデックスが小さくなるようにソートを行い、位置合わせパラメータ評価値は数値が小さいほど、ソート後のインデックスが小さくなるようにソートを行う。これらのソート後のインデックス値が最も小さくなる画像を基準画像として選択する。
なお、基準画像選択の方法について、ソート値を合計することで基準画像を選択する例について述べたがこれに限らない。それぞれの評価値のソート後のインデックスに重みをつけて評価値を計算するようにしても良い。
あるいは、ソート値ではなく、それぞれの評価値が1になるように正規化をして計算するようにしても良い。例えば、画像評価値は1に正規化しているが、本実施形態においてはN−1個の合計値であるため、平均値を用いるようにすればよい。
位置合わせパラメータ評価値は、式6のように定義すれば1に正規化でき、この場合、評価値が1に近いほうが良い評価値となる。
式6において、SVnは式4で求めた値のN−1個の合計値で、添え字のnはData番号に対応する。そのため、Data0の場合は、SV0である。SVmaxは、Data0〜Data(N−1)の間で最大の位置合わせパラメータ評価値である。αは重みであり、SVnとSVmaxが同じ数値の時に、NSVnの値をいくつに設定するかを調整するパラメータである。なお、最大値SVmaxは上述したように実際のデータから決めても良いし、閾値として事前に定義しておいても良い。
アーティファクト領域評価値は0〜1に正規化してあるので、そのまま用いればよい。
このように、全ての評価値を1に正規化した場合には、評価値の合計値が最も大きくなるものを基準画像として選択する。
ここで説明したように、基準画像は、N個の画像の中で平均的な画像であり、他の画像を位置合わせする際に移動量が少なく、アーティファクトが少ないという条件を最も満たす画像が選択される。この例により選択される基準画像の例を図9(b)に示す。この例では、基準画像にData1を選択している。そして、Data0とData2は、第一の位置合わせ部334で求めた位置合わせパラメータに基づき、それぞれ移動している。
<ステップS355>
ステップS355では、第二の位置合わせ部336がOCTA画像を用いて網膜の横方向(x軸)の位置合わせを行う。これについて図10を用いて説明をする。図10(a)は、基準画像がData1で、位置合わせ対象がData2との横方向位置合わせを行う例を示している。また、Maskは、Data2に含まれるアーティファクト(図では横方向の黒いライン)と、Data1との位置合わせの結果Data2が移動することにより生じる無効領域(図では縦方向の黒いライン)に0を設定してある。基準画像と位置合わせ対象画像は、それぞれのラインで横方向に位置合わせを行い、ライン単位での類似度を計算する。類似度の計算には、例えば式2を用いる。そして、類似度が最大となる位置にラインを移動させる。また、ライン単位で基準画像に対しての類似度を計算し、類似度に応じてMaskに重みを設定する。
ステップS355では、第二の位置合わせ部336がOCTA画像を用いて網膜の横方向(x軸)の位置合わせを行う。これについて図10を用いて説明をする。図10(a)は、基準画像がData1で、位置合わせ対象がData2との横方向位置合わせを行う例を示している。また、Maskは、Data2に含まれるアーティファクト(図では横方向の黒いライン)と、Data1との位置合わせの結果Data2が移動することにより生じる無効領域(図では縦方向の黒いライン)に0を設定してある。基準画像と位置合わせ対象画像は、それぞれのラインで横方向に位置合わせを行い、ライン単位での類似度を計算する。類似度の計算には、例えば式2を用いる。そして、類似度が最大となる位置にラインを移動させる。また、ライン単位で基準画像に対しての類似度を計算し、類似度に応じてMaskに重みを設定する。
第二の位置合わせ部336による位置合わせ結果の例を図10(b)に示す。図10(b)では、画像上端と画像中心付近では、基準画像と似ていないと判断し、重ね合わせに使用しないラインとしてMask画像に横方向の黒ラインを設定した例を示している。また、画像中心付近と画像下端では、ライン単位の位置合わせの結果として、中心付近では左側にずらし、画像下端では右側にずらした例を示している。画像をずらす事で無効領域が生じるため、Maskには無効領域に0を設定する。この処理により、XY面内の局所的な位置合わせが行われる。
なお、第一の位置合わせで求めた回転パラメータαに関して、第二の位置合わせを行う前にそれぞれの画像に対して適用しても良いし、第二の位置合わせを行った後に適用するようにしても良い。
<ステップS356>
ステップS356では、第三の位置合わせ部335は、基準の三次元データとその他の三次元データとの深さ方向(Z方向)における位置合わせを行う。この処理に関して、図5のフローチャートを用いて説明をする。
ステップS356では、第三の位置合わせ部335は、基準の三次元データとその他の三次元データとの深さ方向(Z方向)における位置合わせを行う。この処理に関して、図5のフローチャートを用いて説明をする。
<ステップS3561>
ステップS3561では、第三の位置合わせ部335は、基準となる三次元モーションコントラストデータと基準となる三次元の断層像データをそれぞれ記憶しておく。例えば、本実施形態ではData1の三次元モーションコントラストデータと三次元の断層像データを記憶する。
ステップS3561では、第三の位置合わせ部335は、基準となる三次元モーションコントラストデータと基準となる三次元の断層像データをそれぞれ記憶しておく。例えば、本実施形態ではData1の三次元モーションコントラストデータと三次元の断層像データを記憶する。
<ステップS3562>
ステップS3562では、第三の位置合わせ部335は、ステップS351で検出した境界線情報を取得する。なお、本実施形態において深さ方向位置合わせに用いる境界線はL1とする。
ステップS3562では、第三の位置合わせ部335は、ステップS351で検出した境界線情報を取得する。なお、本実施形態において深さ方向位置合わせに用いる境界線はL1とする。
<ステップS3563>
ステップS3563では、第三の位置合わせ部335は、それぞれの三次元データ毎に深さ方向の位置と傾きを合わせる。三次元の断層像を撮影する際に眼は動いている。XY面内の移動に関しては、リアルタイムにトラッキングを行いながら撮影を行うため、撮影時にほとんど位置合わせが出来ている。しかし、深さ方向に関してはリアルタイムトラッキングをしていないため、データ内部でも位置合わせを行う必要がある。すなわち、ここでの説明は一つの三次元データ内の位置合わせに関する。これについて、図11を用いて説明をする。図11(a)は、位置合わせに用いる境界線の例を示している。本実施形態においては、境界線L1(ILM)を用いる場合について説明をする。なお、本実施形態においては境界線L1を使用する例について説明を行うが、境界線の種類はこれに限らない。他の境界線でも良いし、複数の境界線を組み合わせても良い。
ステップS3563では、第三の位置合わせ部335は、それぞれの三次元データ毎に深さ方向の位置と傾きを合わせる。三次元の断層像を撮影する際に眼は動いている。XY面内の移動に関しては、リアルタイムにトラッキングを行いながら撮影を行うため、撮影時にほとんど位置合わせが出来ている。しかし、深さ方向に関してはリアルタイムトラッキングをしていないため、データ内部でも位置合わせを行う必要がある。すなわち、ここでの説明は一つの三次元データ内の位置合わせに関する。これについて、図11を用いて説明をする。図11(a)は、位置合わせに用いる境界線の例を示している。本実施形態においては、境界線L1(ILM)を用いる場合について説明をする。なお、本実施形態においては境界線L1を使用する例について説明を行うが、境界線の種類はこれに限らない。他の境界線でも良いし、複数の境界線を組み合わせても良い。
図11(a)において、基準データをIndexc、対象データをIndexc−1としている。なお、最初の基準データは三次元データの中心、対象データは基準データに対して副走査方向において隣の境界線とする。
図11(b)に、説明のために基準データの境界線L1と位置合わせ対象の境界線L1’とを同時に表示する。図11(b)において、境界線を縦方向に12分割している。本実施形態では、分割数を12として説明をする。それぞれの領域はArea0〜Area11とする。なお、図11(b)において、画像中心部に分割領域を描画していないが、実際には画像全体を領域分割している。そして、上下矢印Difference1は、L1とL1’との差を表す。これらの差は、それぞれの領域Area0〜Area11それぞれで求める。これらの分割数は横方向の画像サイズに応じて変更しても良い。あるいは、共通して検出した境界線の横幅のサイズに応じて変更しても良い。本実施形態では簡単のため、横方向の境界線サイズを同じで表示しているが、実際には、網膜層が画像の上方向にずれ(Z軸で0の方向)、網膜層の一部領域が画像から欠損する場合がある。その場合には、画像全体で境界線が検出出来ない。そのため、境界線同士の位置合わせにおいては、基準データの境界線L1と位置合わせ対象の境界線L1’との境界線が検出出来ている範囲を分割して位置合わせをすることが望ましい。
図11(b)において各領域のDifference1の平均をそれぞれD0〜D11とする。すなわち、ILMの差の平均をその領域の差分の代表値とする。次に各領域で求めた代表値D0〜D11を小さい順にソートする。そして、ソートした代表値を小さい順から8個用いて、平均と分散を計算する。なお、本実施形態では選択数は8個とする。しかし、数はこれに限定されない。選択する数は分割数よりも小さければよい。平均と分散の計算は、ソートした代表値を一つずつずらして計算する。すなわち、本実施形態では12個に分割した領域のうち8個の代表値を用いて計算をするため、全部で5種類の平均値と分散値が求まる。次に、求めた5種類の分散値の中で最小となる分散値を算出した際の8個の差分の代表値を用いて深さ方向のシフト値と傾きを求める。これについて、図11(c)と式7を用いて説明をする。図11(c)は、横軸に分割領域の中心x座標、縦軸に差分の代表値としたグラフである。図11(c)において、黒丸は分散値が最小となった組み合わせの差分の代表値の例であり、黒三角は選択されなかった差分の代表値の例を示している。式7は、分散値が最小となった組み合わせの差分の代表値(図11(c)における黒丸)を用いて計算をする。
式7においてDが深さ方向のシフト値であり、xはx座標、すなわちAスキャン位置である。式7におけるaとbに関して、式8と式9に示す。式8、式9において、xiは選択された分割領域の中心x座標、Diは選択された差分の代表値であり、nは選択した代表値の数なので、本実施形態においてnは8となる。式7により、各Aスキャンの深さ方向のシフト値が求まる。
ここで示すように境界線位置合わせ時に領域を分割し、分割した領域の差分値の組み合わせにおいて最もバラつきが小さくなる値を用いることで、境界線検出に誤りがあったとしても、それらの領域の値は使用しない。そのため、安定して深さ方向のシフト値を計算することが出来る。なお、各領域の深さ方向の代表値として平均値としたが中央値でも良く、代表的な値を用いることが出来ればよい。さらに、バラつきの値として分散値としたが標準偏差でもよく、値のバラつきを評価出来る指標であればよい。
この処理に関して、基準データと対象データを変えながら全てのデータに関して位置合わせを行う。すなわち、最初の基準データは三次元データの中心境界線、対象データは基準データの隣の境界線データとした。この位置合わせが終了したら、その次には、先ほど対象データとしたデータを基準データとして、さらにその隣のデータを対象データとして位置合わせを行う。この処理が画像の端まで完了したら、再度、基準データを中心境界線として、最初の位置合わせとは反対側の隣の境界線データを対象データとして位置合わせをする。反対側においてもこの処理を画像の端まで行う。万が一、層検出出来ていないデータがある場合には、一つ前の位置合わせパラメータを用いて補正を行い、次のデータに進む。
この処理を適用した例を図12(a)に示す。図12は、境界線L1のZ座標を輝度値として表現したDepthMapである。すなわち、DepthMapが明るい場合はZ座標の値が大きく、DepthMapが暗い場合はZ座標の値が小さいことを表している。図12(a)にはData0〜Data2を示し、上側のDepthMapは位置合わせ前で、下側のDepthMapは位置合わせ後である。位置合わせ前のDepthMapには、全てのDataにおいて、横方向の色むらがある。これは、撮影時にZ方向に網膜が動いていることを表している。一方、位置合わせ後のDepthMapには、横方向の色むらが無く、隣接するデータ間でZ方向の位置が合っていることを表している。なお、深さ方向位置合わせにおいて、データの片側を位置合わせした後に、反対側の位置合わせをする例について示したが、それに限らない。最初の基準データを同じにして、両側の処理を並列に実行しても良い。
なお、第三の位置合わせ部335は、基準データ(本実施形態ではData1)の各Aスキャンの深度方向への移動量を記憶しておく。
<ステップS3564>
ステップS3564では、第三の位置合わせ部335は、複数の三次元データ間での深さ方向の位置と傾きを合わせる。ここでは、ステップS3563で三次元データ内での深さ方向の位置合わせをしたデータを用いて、三次元データ間での位置合わせを行う。ここでも、先ほどと同様に境界線L1を用いて位置合わせをする。計算方法は、ステップS3563と同様であるが、計算する対象は、データ内ではなくデータ間となる。そのため、基準データと対象データとの位置合わせを行う。これについて、図12(b)を用いて説明をする。本実施形態において、基準データはData1で、位置合わせの対象データはData0とData2とする。そのため、DepthMapに対して、第一の位置合わせ、第二の位置合わせで求めたパラメータを適用して、Data0とData2のDepthMapをそれぞれ変形させる。そして、Data0とData2共に、Data1に対して、各Bスキャンに相当する境界線L1の深さ方向位置合わせを実行する。これらの計算式は式7と同様の方法で行う。
ステップS3564では、第三の位置合わせ部335は、複数の三次元データ間での深さ方向の位置と傾きを合わせる。ここでは、ステップS3563で三次元データ内での深さ方向の位置合わせをしたデータを用いて、三次元データ間での位置合わせを行う。ここでも、先ほどと同様に境界線L1を用いて位置合わせをする。計算方法は、ステップS3563と同様であるが、計算する対象は、データ内ではなくデータ間となる。そのため、基準データと対象データとの位置合わせを行う。これについて、図12(b)を用いて説明をする。本実施形態において、基準データはData1で、位置合わせの対象データはData0とData2とする。そのため、DepthMapに対して、第一の位置合わせ、第二の位置合わせで求めたパラメータを適用して、Data0とData2のDepthMapをそれぞれ変形させる。そして、Data0とData2共に、Data1に対して、各Bスキャンに相当する境界線L1の深さ方向位置合わせを実行する。これらの計算式は式7と同様の方法で行う。
図12(b)では、Data0〜Data2を示し、上側のDepthMapはデータ内での位置合わせ後で、下側のDepthMapはデータ間での位置合わせ後である。データ内での位置合わせ後のDepthMapでは、Data0〜Data2において網膜のZ位置が異なるため、DepthMapの明るさが異なっている。一方、データ間での位置合わせ後のDepthMapでは、Data0〜Data2において網膜のZ位置が揃っているため、DepthMapの明るさも揃っていることを表している。
これらの処理により、Z方向の大局的な位置合わせが行われる。
<ステップS3565>
ステップS3565では、第三の位置合わせ部335は、第一の位置合わせ、第二の位置合わせ、第三の位置合わせで求めたX、Y、Rotation、Zに関する変形パラメータを適用して三次元データを変形する。三次元データは断層像データ、モーションコントラストデータの両方ともに変形をする。なお、ステップS3534においてxy面内において画像を拡大して位置合わせを行っている場合、三次元データ変形時に元のサイズに相当する変形パラメータに戻す。すなわち、2倍に拡大した画像でのxy面内位置合わせパラメータの数値が1であった場合、ここでは、0.5であるとする。そして、元のサイズで三次元データの形状変形を行う。
ステップS3565では、第三の位置合わせ部335は、第一の位置合わせ、第二の位置合わせ、第三の位置合わせで求めたX、Y、Rotation、Zに関する変形パラメータを適用して三次元データを変形する。三次元データは断層像データ、モーションコントラストデータの両方ともに変形をする。なお、ステップS3534においてxy面内において画像を拡大して位置合わせを行っている場合、三次元データ変形時に元のサイズに相当する変形パラメータに戻す。すなわち、2倍に拡大した画像でのxy面内位置合わせパラメータの数値が1であった場合、ここでは、0.5であるとする。そして、元のサイズで三次元データの形状変形を行う。
三次元データを変換する際に、X、Y、Rotation、Zに関する変形パラメータがサブピクセルあるいはサブボクセルでの移動量である場合、三次元データを補間処理で変形させる。ここで、サブピクセルあるいはサブボクセルであるとは、移動量が0.5のような実数値の場合や、Rotationパラメータが0ではなく、データを回転させる場合などの事である。形状データの補間には、BicubicやLanczos(n)法などを用いる。
図13は、Data0〜Data2の三次元断層像を示しており、上側の三次元断層像は、位置合わせを行う前の三次元断層像であり、下側の三次元断層像は、第一の位置合わせ、第二の位置合わせ、第三の位置合わせを行った後に画像変形した三次元断層像である。ここで示すように、データ内かつデータ間での位置合わせ後の三次元断層像は、Data0〜Data2において網膜のXYZに関する位置合わせが成されたことを表している。
<ステップS3566>
ステップS3566では、第三の位置合わせ部335は、データ間でのZ位置合わせを行ったDepthMapにおいて、基準データと対象データとの差分検出を行う。そして、差分の絶対値が閾値以上の場所(x、y)においては、位置合わせの精度が低いと判断し重ね合わせに使用しない。そのため、対象データのMask画像に無効領域として0を設定する。
ステップS3566では、第三の位置合わせ部335は、データ間でのZ位置合わせを行ったDepthMapにおいて、基準データと対象データとの差分検出を行う。そして、差分の絶対値が閾値以上の場所(x、y)においては、位置合わせの精度が低いと判断し重ね合わせに使用しない。そのため、対象データのMask画像に無効領域として0を設定する。
<ステップS357>
ステップS357では、第四の位置合わせ部338は、基準データと対象データ間において、断層画像内部の特徴がある部分に位置合わせのための領域を複数設定し、その領域単位で網膜の横方向(x軸)と深さ方向(z軸)の位置合わせを行う。なお、ここでの位置合わせはZ方向の局所位置合わせとして説明をする。第四の位置合わせ部338が行う局所位置合わせについて、図6のフローチャートを用いて説明をする。
ステップS357では、第四の位置合わせ部338は、基準データと対象データ間において、断層画像内部の特徴がある部分に位置合わせのための領域を複数設定し、その領域単位で網膜の横方向(x軸)と深さ方向(z軸)の位置合わせを行う。なお、ここでの位置合わせはZ方向の局所位置合わせとして説明をする。第四の位置合わせ部338が行う局所位置合わせについて、図6のフローチャートを用いて説明をする。
<ステップS3571>
ステップS3571では、第四の位置合わせ部338は、ステップS351で検出した境界線情報を取得する。なお、本実施形態において深さ方向位置合わせに用いる境界線はL1とL3とする。
ステップS3571では、第四の位置合わせ部338は、ステップS351で検出した境界線情報を取得する。なお、本実施形態において深さ方向位置合わせに用いる境界線はL1とL3とする。
<ステップS3572>
ステップS3572では、第四の位置合わせ部338は、対象画像の特徴領域を含むように位置合わせ用の領域を設定する。これについて、図14を用いて説明をする。
ステップS3572では、第四の位置合わせ部338は、対象画像の特徴領域を含むように位置合わせ用の領域を設定する。これについて、図14を用いて説明をする。
図14には基準データの三次元断層像の中の断層画像と、位置合わせ対象となる三次元断層像の中の断層画像を示している。位置合わせ対象となる対象画像1には、基準断層画像の境界線情報L1とL3を基にして設定する複数の位置合わせ用の領域(ROI:Region of Interesting)の例を示す。ROIの深さ方向サイズは、L1とL3を基準として、それよりもそれぞれ数10ピクセル程度、上方向と下方向に広く設定する。なお、上下方向に数10ピクセル程度パラメータを設定する場合において、大局位置合わせの結果を用いてパラメータを補正することがある。これは、図14の対象画像1に示すように大局位置合わせにおいて、画像全体を下方向にシフトさせている場合、画像の上端部に無効領域が存在する。この場合、ROIを設定する範囲とその探索領域が無効領域を含まないように初期のROIサイズを補正する必要がある。ROIの横方向サイズは、画像を分割したサイズから設定する。分割数は、画像のサイズ(Aスキャン本数)や画像の撮影サイズ(3mm)など、撮影パラメータに合わせて設定をする。例えば、本実施形態において、Aスキャン本数を300、撮影サイズを3mmとした場合、分割数は10とする。なお、横方向のサイズとROIの設定値においても大局位置合わせの結果を用いて補正を行う。上下方向のパラメータ同様に横方向においても無効領域が存在することがあるため、ROIを設定する範囲とその探索領域が無効領域を含まないように設定する必要がある。
そして、局所位置合わせ用のROIは、それぞれ重畳するように設定する。これは、ROIを重複させずに、ROIのサイズを小さくする場合、ROIの中に特徴的な部位を含まない場所が存在することがあるためである。例えば、網膜を狭画角で撮影した場合、画像内に平坦な組織が広い範囲において写る場合がある。また一方、ROIを重複させずに、特徴を含むようにROIの範囲を広く設定すると、局所位置合わせのためのサンプリング数が少なくなり、粗い位置合わせとなってしまうためである。そのため、これらの問題を解決するために、ROIのX方向のサイズを広くして、かつそれぞれのROI同士を重畳させて設定する。なお、図14において、画像中心部にROIを描画していないが、実際には画像の左端から右端まで網膜上にROIを設定する。さらに、ROIを設定する間隔は、ROI位置合わせ時の探索範囲を考慮するのが望ましい。具体的には、ROI位置合わせ時の横方向探索範囲をXRとする場合、隣接するROIの中心座標の間隔が2XR以上となるように設定をする。これは、中心座標の間隔を2XR未満とする場合、隣接するROI同士の中心位置が入れ替わる可能性があるためである。
<ステップS3573>
ステップS3573では、第四の位置合わせ部338は、ROIを使って領域位置合わせを行う。領域位置合わせは断層画像で行う。そのため、ステップS3534で示したOCTA画像位置合わせと同様に式1を用いて画像類似度に応じた位置合わせを行う。ただし、類似度の評価値はこれに限らず、SSD(Sum of Squared Difference)や、SAD(Sum of Absolute Difference)などでも良い。あるいは、POC(Phase Only Correlation)のような方法で、位置合わせを行っても良い。
ステップS3573では、第四の位置合わせ部338は、ROIを使って領域位置合わせを行う。領域位置合わせは断層画像で行う。そのため、ステップS3534で示したOCTA画像位置合わせと同様に式1を用いて画像類似度に応じた位置合わせを行う。ただし、類似度の評価値はこれに限らず、SSD(Sum of Squared Difference)や、SAD(Sum of Absolute Difference)などでも良い。あるいは、POC(Phase Only Correlation)のような方法で、位置合わせを行っても良い。
画像位置合わせは、対象画像に設定したROIが基準となる断層画像ではどこにあるかを探索する。この際、第一〜第三の位置合わせにより、三次元の断層像データの変形を行っているので、基準画像と対象画像とのおおよその位置は合っている。そのため、基準画像での位置合わせの探索範囲は、ROIの初期位置から上下左右数〜数10ピクセルを探索すればよく、最も類似する場所を位置合わせ結果とする。なお、探索領域は固定でも良いし、撮影画角、撮影部位、画像の場所(端や中心)に応じて変更しても良い。撮影画角が狭くスキャンスピードが速い場合には、1枚の画像を撮影している間の眼の移動量は小さいが、撮影画角が広くなると眼の移動量も大きくなる。そのため、撮影画角が大きい場合には探索範囲を広くしても良い。また、眼が回転する中心部分と周辺部とでは、移動量は周辺部の方が大きくなるため、周辺部の方を探索範囲を広くしてもよい。
<ステップS3574>
ステップS3574では、第四の位置合わせ部338は、ステップS3573で求めた位置合わせパラメータを補間することで各Aスキャンの移動量を算出する。これについて、図15を用いて説明をする。図15(a)は、初期設定した領域のROI1〜ROI3を表している。C1〜C3の下三角はROI1〜ROI3の中心位置を表している。また、図15(b)は、ステップS3573での位置合わせ後のROIの移動例を示している。図15(b)においては、ROI1とROI3がそれぞれ右側に移動し、ROI2が移動しない場合の例である。そのため、ROIの中心C1とC3がそれぞれC1’とC3’に移動している。各ROIの移動量からAスキャンの移動量を算出するためには、隣接するROIとROIの中心位置の移動量に基づいて算出をする。例えば、ROI1の中心位置はC1からC1’に移動しており、ROI2の中心位置はC2のままである。ここで、変形前のC1からC2の間にある各AスキャンのX方向移動量を求める式を式10〜12に示す。
ステップS3574では、第四の位置合わせ部338は、ステップS3573で求めた位置合わせパラメータを補間することで各Aスキャンの移動量を算出する。これについて、図15を用いて説明をする。図15(a)は、初期設定した領域のROI1〜ROI3を表している。C1〜C3の下三角はROI1〜ROI3の中心位置を表している。また、図15(b)は、ステップS3573での位置合わせ後のROIの移動例を示している。図15(b)においては、ROI1とROI3がそれぞれ右側に移動し、ROI2が移動しない場合の例である。そのため、ROIの中心C1とC3がそれぞれC1’とC3’に移動している。各ROIの移動量からAスキャンの移動量を算出するためには、隣接するROIとROIの中心位置の移動量に基づいて算出をする。例えば、ROI1の中心位置はC1からC1’に移動しており、ROI2の中心位置はC2のままである。ここで、変形前のC1からC2の間にある各AスキャンのX方向移動量を求める式を式10〜12に示す。
式10〜12において、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方向のみ局所的な位置合わせをするようにしても良い。
<ステップS3575>
ステップS3575では、第四の位置合わせ部338は、ステップS3574で求めたAスキャン移動量を基に、Aスキャン毎にX方向とZ方向に移動させる。それにより、Aスキャン単位で変形した断層画像を生成することが出来る。なお、変形させる三次元データは断層像データ、モーションコントラストデータの両方ともに変形をする。
ステップS3575では、第四の位置合わせ部338は、ステップS3574で求めたAスキャン移動量を基に、Aスキャン毎にX方向とZ方向に移動させる。それにより、Aスキャン単位で変形した断層画像を生成することが出来る。なお、変形させる三次元データは断層像データ、モーションコントラストデータの両方ともに変形をする。
<ステップS3576>
ステップS3576では、基準となる三次元データの全ての断層画像に対して、位置合わせの対象となるデータの全てを局所位置合わせを行ったか否かを判定する。全てのデータを処理していない場合には、ステップS3561に戻る。そして、全てのデータを局所位置合わせした場合には、局所位置合わせの処理が終了する。
ステップS3576では、基準となる三次元データの全ての断層画像に対して、位置合わせの対象となるデータの全てを局所位置合わせを行ったか否かを判定する。全てのデータを処理していない場合には、ステップS3561に戻る。そして、全てのデータを局所位置合わせした場合には、局所位置合わせの処理が終了する。
これらの処理により局所位置合わせが行われる。次に、図3(b)の処理フローに戻って説明を行う。
<ステップS358>
ステップS358では、画像合成部339は、選択部335が選択した基準となる三次元モーションコントラストデータと、複数の三次元モーションコントラストデータ同士を加算平均する。加算平均処理では、ボクセル毎に、複数のモーションコントラストデータとMask画像の値を掛け算した値の合計値SUM_Aと、複数のMask画像の値の合計値SUM_Bをそれぞれ保持しておく。Mask画像にはアーティファクトとして除去した無効領域や、位置合わせによりデータが存在しない無効領域が0として保存されているため、Mask画像の合計値SUM_Bにはボクセル毎に異なる値が保持されている。通常、位置合わせにおいてXYZ毎、数10ボクセルの移動が想定されるため、重ね合わせに用いたデータ数がN個である場合、画像中心付近のSUM_Bのボクセル値はNであり、画像端部のSUM_Bのボクセル値はNよりも少ない値になる。そして、加算平均処理では、SUM_AをSUM_Bで割ることにより加算平均を計算したモーションコントラストデータを求めることが出来る。
ステップS358では、画像合成部339は、選択部335が選択した基準となる三次元モーションコントラストデータと、複数の三次元モーションコントラストデータ同士を加算平均する。加算平均処理では、ボクセル毎に、複数のモーションコントラストデータとMask画像の値を掛け算した値の合計値SUM_Aと、複数のMask画像の値の合計値SUM_Bをそれぞれ保持しておく。Mask画像にはアーティファクトとして除去した無効領域や、位置合わせによりデータが存在しない無効領域が0として保存されているため、Mask画像の合計値SUM_Bにはボクセル毎に異なる値が保持されている。通常、位置合わせにおいてXYZ毎、数10ボクセルの移動が想定されるため、重ね合わせに用いたデータ数がN個である場合、画像中心付近のSUM_Bのボクセル値はNであり、画像端部のSUM_Bのボクセル値はNよりも少ない値になる。そして、加算平均処理では、SUM_AをSUM_Bで割ることにより加算平均を計算したモーションコントラストデータを求めることが出来る。
これらの加算平均処理を行う前後のモーションコントラストデータを図16〜図18に示す。図16はXZ面、図17はXY面、図18は三次元モーションコントラストデータをボリュームレンダリングして表示する例である。
図16(a)の左側は加算平均前の三次元モーションコントラストデータの1断面を示し、図16(a)の右側が加算平均後の三次元モーションコントラストデータの1断面を示す。図17(a)の左側は加算平均前の三次元モーションコントラストデータから生成する網膜表層のOCTA画像、図17(a)の右側が加算平均後の三次元モーションコントラストデータから生成する網膜表層のOCTA画像を示す。図18(a)は加算平均前の三次元モーションコントラストデータのボリュームレンダリングデータ、図18(b)は加算平均後の三次元モーションコントラストデータのボリュームレンダリングデータの例である。図16〜図18に示すように加算平均処理により、コントラストが向上した三次元モーションコントラストデータを得ることが出来る。図18のようにモーションコントラストデータのボリュームレンダリングを行うと、二次元のOCTA画像では認識しにくい血管の深さ方向における上下関係なども把握しやすくなる。
三次元モーションコントラストデータと同様に、複数の三次元断層像データに関しても加算平均処理を行う。なお、モーションコントラストデータと同様に加算平均処理を行う前後の三次元断層像の1断面を図16(b)に示す。図16(b)の左側が加算平均前の三次元断層像を示し、図16(b)の右側が加算平均後の三次元断層像の1断面を示す。図16(b)に示すように、加算平均前の画像ではノイズが多く血管とノイズの差や、層の境界が不明瞭である。しかし、加算平均後の画像ではノイズが少なく血管や網膜層の構造を認識することが出来る。図17(b)には、三次元断層像から生成する正面画像を示す。図17(b)の左側は加算平均前の三次元断層像から生成する正面画像、図17(b)の右側が加算平均後の三次元断層像から生成する正面画像を示す。
<ステップS359>
ステップS359では、第三の位置合わせ部337は、ステップS3561で記憶している入力の三次元モーションコントラストデータと三次元の断層像データと、ステップS3563で記憶している各Aスキャンの深度方向移動量に基づいて、基準データ(本実施形態ではData1)の網膜位置を入力時の深度位置の状態に戻す。具体的には、ステップS358で加算平均後の三次元モーションコントラストデータと三次元の断層像データを、ステップS3563で記憶している各Aスキャンの深度方向移動量を用いて元の状態に戻す。例えば、あるAスキャンにおいて下方向に5移動させている場合、ここでは上方向に5移動させる。さらに、上方向に5移動させることで、データ下部に無効領域が発生してしまう。そのため、その無効領域には、ステップS3561で記憶している入力の三次元モーションコントラストデータと三次元の断層像データにおいて、同じ座標位置のデータをそれぞれコピーする。
ステップS359では、第三の位置合わせ部337は、ステップS3561で記憶している入力の三次元モーションコントラストデータと三次元の断層像データと、ステップS3563で記憶している各Aスキャンの深度方向移動量に基づいて、基準データ(本実施形態ではData1)の網膜位置を入力時の深度位置の状態に戻す。具体的には、ステップS358で加算平均後の三次元モーションコントラストデータと三次元の断層像データを、ステップS3563で記憶している各Aスキャンの深度方向移動量を用いて元の状態に戻す。例えば、あるAスキャンにおいて下方向に5移動させている場合、ここでは上方向に5移動させる。さらに、上方向に5移動させることで、データ下部に無効領域が発生してしまう。そのため、その無効領域には、ステップS3561で記憶している入力の三次元モーションコントラストデータと三次元の断層像データにおいて、同じ座標位置のデータをそれぞれコピーする。
なお、加算平均後データの無効領域に対して入力のデータをコピーする例を示したが、これに限らない。第三の位置合わせ部337で記憶した入力の三次元データに対して、加算平均後の三次元データから元々の座標位置に対応する範囲のデータを切り出してコピーするようにしても良い。それにより、上述ではデータ移動後に無効領域へのコピーという2ステップでの処理であったが、ここでは、コピーのみの1ステップとなるため、処理負荷を減らすことが出来る。なお、この場合、第三の位置合わせ部337で記憶している入力の三次元データに対してコピーをしているため、最終的な出力データは第三の位置合わせ部337で記憶しているデータとなる。
これらの処理を行った後、図3(a)のフローチャートに処理が戻る。
<ステップS306>
ステップS306では、加算平均して作成した高画質な三次元モーションコントラストデータと高画質な三次元断層像を対応可能な状態で表示する。
ステップS306では、加算平均して作成した高画質な三次元モーションコントラストデータと高画質な三次元断層像を対応可能な状態で表示する。
ここで、表示部600に表示する画面の例を図19に示す。1900は画面全体、1901は患者タブ、1902は撮影タブ、1903はレポートタブ、1904は設定タブを表し、1903のレポートタブにおける斜線は、レポート画面のアクティブ状態を表している。本実施形態においては、レポート画面を表示する例について説明をする。1905は患者情報表示部、1906は検査ソートタブ、1907は検査リスト、1908の黒枠は検査リストの選択を表し、選択されている検査データを画面に表示する。図19の検査リスト1907には、SLOと断層画像のサムネイルを表示している。しかし、OCTA撮影の場合には、図示はしないがOCTAのサムネイルを表示しても良い。サムネイル表示の例としては、SLOとOCTAのサムネイル、OCTAのサムネイルだけ、断層画像とOCTAのサムネイルとしても良い。本実施形態においては、撮影で取得した検査データと高画質化処理により生成した検査データとを検査リスト1907に一覧で表示している。高画質化処理により生成した検査データにおいては、サムネイルに表示する画像も高画質化処理済みのデータから生成したものを表示するようにしても良い。
1930、1931はビューモードのタブを表す。1930のタブでは、三次元のモーションコントラストデータから生成した二次元のOCTA画像を表示し、1931のタブでは、図18に示したような三次元モーションコントラストデータを表示する。
1929はモーションコントラストの高画質生成を実行するボタンを表す。なお、本実施形態においては、1929の高画質生成を実行するボタンを押下することで、ステップS305に示した高画質データ生成処理を実行する。高画質化に用いるデータ候補を表示するためにはこのボタンを押下する。なお、選択データと同じ撮影条件で繰り返し撮影したデータを自動的に選択する場合には、データ候補を表示せずに高画質データ生成を実行するようにしてもよい。生成した高画質データは検査リスト1907に表示することでレポート表示として選択することが可能となる。なお、本実施形態においては、既に高画質化処理は完了しており、図19では、その高画質化処理済みのデータを選択して表示している。そのため、以降の説明では、高画質化処理(加算平均)済みのデータに関して説明を行う。なお、図19においては視神経乳頭部の撮影を行い、そのデータを表示する例について示す。本実施形態においては視神経乳頭部での例を説明するが、これに限らない。部位は黄斑部でもよいし、画角は狭画角ではなく広画角を撮影する場合でもよい。
1909はSLO画像、1910は第一のOCTA画像、1911は第一の断層画像、1912は三次元の断層画像から生成した正面画像(Enface画像)、1913は第二のOCTA画像、1914は第二の断層画像を表す。1920は1912の画像の種類を切り替えるタブを表す。Enface画像1912は第一のOCTAと同じ深さ範囲から作成したEnfaceを示しているが、タブ1920により、第二のOCTAと同じ深さ範囲から作成したEnfaceに切り替えることも可能である。なお、本実施形態において1910〜1914に示す画像は、図16と図17に示したように加算平均処理済みの画像を表示しているものとする。1915は1909のSLO画像に重畳している画像、1916は1915の画像の種類を切り替えるタブを表す。1917は第一のOCTA画像として表示するOCTA画像の種類を切り替えるタブ、1921は第二のOCTA画像として表示するOCTA画像の種類を切り替えるタブを表す。OCTAの種類としては、浅層、深層、脈絡膜等や任意の範囲で作成したOCTA画像がある。なお、第一のOCTA画像1910の作成範囲である上端(1918、1925)と下端(1919、1926)で、1918は基準線の一例である上端の境界線の種類とそのオフセット値、1925は上端の境界線を断層画像に重畳表示している。1919は基準線の一例である下端の境界線の種類とそのオフセット値、1926は下端の境界線を第一の断層画像に重畳表示している。第二のOCTA画像も第一のOCTA画像と同様で、上端(1923、1927)と下端(1924、1928)を第二の断層画像に重畳表示している。なお、第一のOCTA画像1910とEnface画像1912は視神経乳頭周囲毛細血管(Radial Peripapillary Capillaris:RPC)の深さ範囲から作成する画像の例で、第二のOCTA画像1913は網膜の浅層の深さ範囲から作成する画像の例を表している。また、2つの境界線でなくても良く、例えば、1つの基準線が設定されるようにしても良い。この場合、1つの基準線に対して上側と下側の2つのオフセット値が設定されるようにしても良い。また、基準線と基準線に対するオフセット値とのうち少なくとも1つが設定されるようにしても良い。
矢印1945は第一の断層画像のXY面内における位置を示し、矢印1946は第二の断層画像のXY面内における位置を示して・BR>「る。矢印1945、1946をマウスドラッグなどにより操作することで第一の断層画像1911、第二の断層画像1914のXY面内における位置を切り替えることが出来る。
ここで、図20〜図22を用いて、本実施形態における、被検眼の深さ方向に交差する方向における複数の領域に対して設定された異なる深さの範囲の三次元データを用いて、一つの二次元正面画像(Enface画像、OCTA画像)を生成することに関して説明をする。図20(a)は、図19において、Enface画像1912、第一のOCTA画像1910と第一の断層画像1911、第一のOCTA画像1910の作成範囲である上の境界線1925と下の境界線1926を表している。図20(a)は、視神経乳頭周囲毛細血管の深さ範囲で作成するOCTA画像の例を示しており、例えば、上の境界線1925は内境界膜(ILM)とし、下の境界線1926は内境界膜(ILM)+オフセット値(数10μm)とする。図20(b)は、篩状板全体を含むように境界線1926全体を深度方向に移動させた場合の例であり、内境界膜(ILM)+オフセット値(数100μm)とする。図20(b)に示すように、Enface画像1912においては、篩状板孔2012が観察されるようになり、OCTA画像1910では視神経乳頭内部、篩状板内部の血管2010が観察される。このように視神経乳頭周囲毛細血管を見るための深度領域から篩状板全体を含む深度領域に変更したため、視神経乳頭内部においては血管や篩状板孔などが観察しやすくなる。一方、視神経乳頭部周囲においては、神経線維層からRPEや脈絡膜あたりの範囲まで含むため、Enface画像1912全体のコントラストが低下したり、OCTA画像に浅層部ではない深層部の血管がアーティファクト(図の破線2011)として観察されたりしてしまう。
そのため、本実施形態では図21(a)に示すように、深さ方向に交差する方向における複数の領域に対して設定された異なる深さ範囲のEnface画像2112、OCTA画像2110を作成する。上記異なる深さ範囲の設定とは、例えば、視神経乳頭部周囲では視神経乳頭周囲毛細血管の深さ範囲となるように境界線2126を設定し、視神経乳頭内部では篩状板を含む深さ範囲となるように境界線2126を設定することである。すなわち、二次元正面画像(Enface、OCTA画像)を生成する際に、一つの基準(境界線やオフセット値)だけではなく、異なる基準(境界線やオフセット値)に基づいて画像を生成する。このような画像を生成することにより、それぞれ注目したい深さ範囲が異なる領域を含む画像であっても、適切な範囲で作成した二次元正面画像を生成することが可能となる。これにより、Enface画像2112は篩状板孔2012が観察されると同時に画像全体のコントラストも保たれる。OCTA画像2110は視神経乳頭内部の血管を観察すると同時に視神経乳頭部周囲では視神経乳頭周囲毛細血管を観察することが出来る。
なお、深さ範囲の設定は図21(a)で示すものに限らない。図21(b)に示すように、境界線3125、境界線3126はそれぞれ篩状板の中心付近を切り出すようにしてもよい。これにより、Enface画像3112においてある特定の深さに位置する篩状板孔3012を観察することが出来る。また、OCTA画像3110においては、視神経乳頭内部のある特定の深さに位置する血管構造を観察することが出来る。また、視神経乳頭部周囲の深さ範囲の設定は視神経乳頭周囲毛細血管の深さ範囲ではなく、網膜浅層の深さ範囲であっても良い。
これら、図21(a)、(b)に示した層範囲の設定は、切り替えて表示することが出来るものであり、例えば、図19の画面に示したOCTA画像として表示する画像の種類を切り替えるタブ1917、1921によって切り替え表示が出来るものである。また、Enface画像においても同様に、画像の種類を切り替えるタブ1920によって表示を切り替えられるものとする。切り替えて表示するだけではなく、図19の画面に示すように画像を並べて表示するようにしても良い。
上述したような、上記異なる深さ範囲を一枚の二次元正面画像に表現するためには、対象となる領域を抽出する必要がある。そのため、本実施形態における二次元正面画像(OCTA画像、Enface画像)の生成方法について図22のフローチャートを用いて説明をする。
<ステップS2201>
ステップS2201では、深さ範囲設定手段の一例である画像生成部332が、OCTA画像、Enface画像を生成するために上下の境界線やオフセット値を取得する。境界線は、ステップS351で検出した座標データを用いる。あるいは、高画質化処理を行った後の三次元断層画像に対して、ステップS351に示した方法と同様な方法で境界線を検出しても良い。オフセット値は、生成する二次元正面画像の種類毎に深さ方向への初期値が設定されており、その値を用いる。例えば、RPCの範囲の二次元正面画像を生成する場合、上の境界線はILM境界線とし、下の境界線はILM境界線+オフセット値とする。
ステップS2201では、深さ範囲設定手段の一例である画像生成部332が、OCTA画像、Enface画像を生成するために上下の境界線やオフセット値を取得する。境界線は、ステップS351で検出した座標データを用いる。あるいは、高画質化処理を行った後の三次元断層画像に対して、ステップS351に示した方法と同様な方法で境界線を検出しても良い。オフセット値は、生成する二次元正面画像の種類毎に深さ方向への初期値が設定されており、その値を用いる。例えば、RPCの範囲の二次元正面画像を生成する場合、上の境界線はILM境界線とし、下の境界線はILM境界線+オフセット値とする。
<ステップS2202>
ステップS2202では、領域抽出部340は、被検眼の深さ範囲に交差する方向における複数の領域のうち、他の領域とは異なる深さ範囲を設定するための少なくとも1つの領域(部分領域)を抽出(特定、検出)する。本実施形態では、視神経乳頭部と篩状板領域を検出する例を示す。最初に、領域抽出部340は、図21の断層画像における視神経乳頭部に関する特徴箇所の一例であるBMO(Bruch’s membrane opening)を検出する。BMOの検出は、例えば、ステップS351で検出したILMとRPEの結果を用いて、視神経乳頭を特定する。なお、境界線の種類はILMとRPEに限定する必要はなく、NFL/GCL境界とIS/OSとしても良い。この場合、特に視神経乳頭の陥凹部を特定することが好ましく、本実施形態では、視神経乳頭の陥凹部の中心付近を特定する。ここで、視神経乳頭の陥凹部の特徴として、RPEが存在しないこと、ILMの形状が深部方向(図21のZ方向)に大きな勾配をもつことが挙げられる。そこで、各A−scanとその周辺A−scanを含めた局所領域を設定し、その局所領域内のRPEの存在状況とILMの深部方向への形状の勾配を算出し、視神経乳頭の陥凹部の中心付近の点を特定する。次に、各断層画像において視神経乳頭の陥凹部の中心付近に近いRPEの点を、全ての断層画像において繋ぐことで、C−scan方向で見た場合に楕円形状となるRPE領域を設定する。それを初期位置として、適切な動的輪郭モデル(例えば、Snakes)を適用することで、各断層画像においてBMOを特定する。次に、先ほど特定した端部、即ちBMO端からエッジ成分を視神経乳頭の陥凹部の中心に向かってトレースすることで、BMO端の正確な位置を特定する。本実施形態では、まず各BMO端について、座標値とエッジ成分を調べる。次に、各BMO端の位置を開始点として、視神経乳頭の陥凹部の中心に向かってエッジをトレースしていく。トレースは各BMO端の位置におけるエッジ成分を参照して、内側の近傍に存在するエッジ成分が一番近い位置に探索点を更新し、参照するエッジ成分も更新する。これを繰り返すことで正確なBMO端を特定する。領域設定手段の一例である領域抽出部340は、検出したBMOを基にして視神経乳頭の陥凹部を特定する。これにより、例えば、領域設定手段は、検出された視神経乳頭部に関する情報(例えば、X方向の座標値とY方向の座標値)を用いて部分領域を設定することができる。
ステップS2202では、領域抽出部340は、被検眼の深さ範囲に交差する方向における複数の領域のうち、他の領域とは異なる深さ範囲を設定するための少なくとも1つの領域(部分領域)を抽出(特定、検出)する。本実施形態では、視神経乳頭部と篩状板領域を検出する例を示す。最初に、領域抽出部340は、図21の断層画像における視神経乳頭部に関する特徴箇所の一例であるBMO(Bruch’s membrane opening)を検出する。BMOの検出は、例えば、ステップS351で検出したILMとRPEの結果を用いて、視神経乳頭を特定する。なお、境界線の種類はILMとRPEに限定する必要はなく、NFL/GCL境界とIS/OSとしても良い。この場合、特に視神経乳頭の陥凹部を特定することが好ましく、本実施形態では、視神経乳頭の陥凹部の中心付近を特定する。ここで、視神経乳頭の陥凹部の特徴として、RPEが存在しないこと、ILMの形状が深部方向(図21のZ方向)に大きな勾配をもつことが挙げられる。そこで、各A−scanとその周辺A−scanを含めた局所領域を設定し、その局所領域内のRPEの存在状況とILMの深部方向への形状の勾配を算出し、視神経乳頭の陥凹部の中心付近の点を特定する。次に、各断層画像において視神経乳頭の陥凹部の中心付近に近いRPEの点を、全ての断層画像において繋ぐことで、C−scan方向で見た場合に楕円形状となるRPE領域を設定する。それを初期位置として、適切な動的輪郭モデル(例えば、Snakes)を適用することで、各断層画像においてBMOを特定する。次に、先ほど特定した端部、即ちBMO端からエッジ成分を視神経乳頭の陥凹部の中心に向かってトレースすることで、BMO端の正確な位置を特定する。本実施形態では、まず各BMO端について、座標値とエッジ成分を調べる。次に、各BMO端の位置を開始点として、視神経乳頭の陥凹部の中心に向かってエッジをトレースしていく。トレースは各BMO端の位置におけるエッジ成分を参照して、内側の近傍に存在するエッジ成分が一番近い位置に探索点を更新し、参照するエッジ成分も更新する。これを繰り返すことで正確なBMO端を特定する。領域設定手段の一例である領域抽出部340は、検出したBMOを基にして視神経乳頭の陥凹部を特定する。これにより、例えば、領域設定手段は、検出された視神経乳頭部に関する情報(例えば、X方向の座標値とY方向の座標値)を用いて部分領域を設定することができる。
次に、篩状板検出について説明をする。ILMを基準として深度方向に輝度勾配を検出する。篩状板の後面は断層画像においては、深部に向かって明るい領域から暗い領域に変化する。そのため、輝度の変化特徴を抽出することで篩状板後面を検出する。なお、篩状板後面を検出するにあたって、篩状板の厚みは数100μm程度の厚みがあるため、厚みに関する知識を用いて検出する範囲を特定しても良い。これにより、例えば、深さ範囲設定手段は、検出された篩状板領域に関する情報(例えば、Z方向の座標値)を用いて部分領域の深さ範囲を設定することができる。
なお、視神経乳頭部や篩状板の検出は、上記で示した例に限らない。視神経乳頭部の検出には、断層画像ではなくSLO画像やEnfaceのようなC−scan方向で見た二次元画像を用いて領域を検出するようにしても良い。視神経乳頭部をC−scan方向で見た場合には、楕円形状をしている。そのため、例えば、二次元画像に対してノイズ除去とエッジ検出を行い、エッジ画像に対してハフ変換を行う事で画像内の楕円領域を特定することが出来る。さらには、撮影時の固視灯位置の情報を用いて、おおよその視神経乳頭部の位置を特定するようにしても良い。さらには、公知の画像検出手法を用いても良い。上記の方法は組み合わせて用いることも可能である。
<ステップS2203>
ステップS2203では、領域抽出部340が領域を抽出したか否かでフローを変更する。ステップS2203で領域を抽出している場合には、ステップS2204へ処理を進め、抽出していない場合には、ステップS2205へ処理を進める。
ステップS2203では、領域抽出部340が領域を抽出したか否かでフローを変更する。ステップS2203で領域を抽出している場合には、ステップS2204へ処理を進め、抽出していない場合には、ステップS2205へ処理を進める。
<ステップS2204>
ステップS2204では、深さ範囲設定手段の一例である画像生成部332が、領域抽出部340が抽出した領域情報を用いてステップS2201で取得した境界線座標を更新する。例えば、下側の境界線のZ座標はILM境界線+オフセット値となっているが、視神経乳頭の陥凹部においては、篩状板後面のZ座標に更新する。すなわち、深さ範囲の設定手段は、設定された少なくとも1つの領域の深さ範囲を、他の領域の深さ範囲を固定した状態で設定された初期値から変更することが好ましい。これにより、例えば、医者等の操作者は、各領域の深さ範囲の変更を容易に行うことができる。なお、深さ範囲の設定手段は、設定された少なくとも1つの領域の深さ範囲と他の領域の深さ範囲とを独立に設定しても良い。
ステップS2204では、深さ範囲設定手段の一例である画像生成部332が、領域抽出部340が抽出した領域情報を用いてステップS2201で取得した境界線座標を更新する。例えば、下側の境界線のZ座標はILM境界線+オフセット値となっているが、視神経乳頭の陥凹部においては、篩状板後面のZ座標に更新する。すなわち、深さ範囲の設定手段は、設定された少なくとも1つの領域の深さ範囲を、他の領域の深さ範囲を固定した状態で設定された初期値から変更することが好ましい。これにより、例えば、医者等の操作者は、各領域の深さ範囲の変更を容易に行うことができる。なお、深さ範囲の設定手段は、設定された少なくとも1つの領域の深さ範囲と他の領域の深さ範囲とを独立に設定しても良い。
<ステップS2205>
ステップS2205では、上下境界線のZ座標に基づいてOCTA画像、Enface画像を生成する。OCTA画像は三次元のモーションコントラストデータから生成し、Enface画像は三次元断層像データから生成する。画像の生成方法は、各Ascanにおいて上下境界線のZ座標範囲内のデータの平均値、最大値、中央値等の統計値や、Z座標範囲内を複数の領域に分けてそれぞれの平均値の最大値をAscanの代表値とする。ここで求めたAscanの代表値が二次元正面画像のピクセル値に相当する。
ステップS2205では、上下境界線のZ座標に基づいてOCTA画像、Enface画像を生成する。OCTA画像は三次元のモーションコントラストデータから生成し、Enface画像は三次元断層像データから生成する。画像の生成方法は、各Ascanにおいて上下境界線のZ座標範囲内のデータの平均値、最大値、中央値等の統計値や、Z座標範囲内を複数の領域に分けてそれぞれの平均値の最大値をAscanの代表値とする。ここで求めたAscanの代表値が二次元正面画像のピクセル値に相当する。
なお、本実施形態においては視神経乳頭部の例で説明をしたため、上記で説明した深さ範囲から二次元正面画像を生成したが、これに限らない。部分領域とそれ以外の領域において、それぞれ異なる深さ範囲で作成するものであればどの範囲でもよい。さらに、部分領域は必ずしも一つである必要はなく、複数抽出しても良い。
<ステップS307>
ステップS307において、不図示の指示取得部は、画像処理システム100による断層画像の撮影あるいは解析を終了するか否かの指示を外部から取得する。この指示は、入力部700を用いて、操作者によって入力される。処理を終了する指示を取得した場合には、画像処理システム100はその処理を終了する。一方、処理を終了せずに、撮影あるいは解析を続ける場合には、ステップS302に処理を戻して続行する。以上によって、画像処理システム100の処理が行われる。
ステップS307において、不図示の指示取得部は、画像処理システム100による断層画像の撮影あるいは解析を終了するか否かの指示を外部から取得する。この指示は、入力部700を用いて、操作者によって入力される。処理を終了する指示を取得した場合には、画像処理システム100はその処理を終了する。一方、処理を終了せずに、撮影あるいは解析を続ける場合には、ステップS302に処理を戻して続行する。以上によって、画像処理システム100の処理が行われる。
以上で述べた構成によれば、本実施形態では、上記異なる深さの範囲の三次元データを用いて二次元正面画像を生成することで、複数の異なる所望の範囲から生成した一枚の二次元正面画像を生成することが出来る。それによって、一枚の二次元正面画像で視神経乳頭周囲毛細血管と視神経乳頭部内の血管や篩状板孔を同時に確認することが出来る。
(第二の実施形態:OCTA画像とEnface画像に対して異なる深さ範囲を設定)
第一の実施形態においては、被検眼の深さ方向に交差する方向における複数の領域に対して設定された異なる深さ範囲の三次元データを用いて、OCTA画像とEnface画像を生成する例について述べた。このとき、OCTA画像とEnface画像に対して設定された深さ範囲が互いに共通である例について述べた。本実施形態においては、OCTA画像とEnface画像に対して異なる深さ範囲を設定する例について述べる。なお、上記第一の実施形態と同様の機能を有するものに関しては、ここでは説明を省略する。本実施形態におけるOCTA画像、Enface画像の生成に関して図23を用いて説明を行う。
第一の実施形態においては、被検眼の深さ方向に交差する方向における複数の領域に対して設定された異なる深さ範囲の三次元データを用いて、OCTA画像とEnface画像を生成する例について述べた。このとき、OCTA画像とEnface画像に対して設定された深さ範囲が互いに共通である例について述べた。本実施形態においては、OCTA画像とEnface画像に対して異なる深さ範囲を設定する例について述べる。なお、上記第一の実施形態と同様の機能を有するものに関しては、ここでは説明を省略する。本実施形態におけるOCTA画像、Enface画像の生成に関して図23を用いて説明を行う。
図23では、OCTA画像2110は、視神経乳頭部周囲では視神経乳頭周囲毛細血管の深さ範囲で、視神経乳頭内部では篩状板を含む深さ範囲となる境界線2125と2126(図では太線の実線)の範囲から作成する。一方、Enface画像3112は、視神経乳頭部周囲では視神経乳頭周囲毛細血管の深さ範囲で、視神経乳頭内部では篩状板の中心付近を切り出す境界線3125と3126(図では太線の破線)の範囲から作成する。これらの異なる深さ範囲により、OCTA画像2110においては血管を漏れなく表示することが出来、Enface画像3112においては篩状板孔をコントラスト高く表示することが出来る。図23において、断層画像1911に重畳表示している境界線2125と2126を実線、境界線3125と3126を破線として示したがこれに限らない。線の種類ではなく、線の色や透明度を変えて表示するようにしても良いし、非図示のチェックボックスなどを用いて、境界線を断層画像に重畳表示する機能のOnとOffを切り替えられるようにしても良い。
なお、これらの深さ範囲の設定は、ここで示したものに限定されるものではなく、他の深さ範囲でもよいし、ここで示した境界線2125と2126の範囲からEnface画像を生成し、境界線3125と3126の範囲からOCTA画像を生成するようにしても良い。
以上で述べた構成によれば、本実施形態では、異なる種類の二次元正面画像(例えば、モーションコントラスト正面画像と輝度正面画像)異なる深さ範囲を設定することが出来る。これにより、例えば、一つの種類に対して一枚の二次元正面画像の観察により、視神経乳頭周囲毛細血管と視神経乳頭部内の血管や篩状板孔を同時に確認することが出来る。なお、深さ範囲を設定する設定手段は、異なる種類の二次元正面画像(例えば、モーションコントラスト正面画像と輝度正面画像)に対して、共通の深さ範囲を設定する機能と異なる深さ範囲を設定する機能とのうち少なくとも1つの機能を含むことが好ましい。また、設定手段は、両方の機能を含む場合には、両方の機能のいずれかの機能を選択可能に構成されることが好ましい。これにより、操作者は目的に応じていずれかの機能を容易に選択することができる。
(第三の実施形態:深さ方向に交差する方向における少なくとも1つの領域を、操作者の指示に応じて設定・変更)
第一、第二の実施形態においては、領域抽出部340が自動的に抽出した部分領域(深さ方向に交差する方向における少なくとも1つの領域)の内外でそれぞれ異なる深さ範囲から二次元正面画像を生成する例について述べた。本実施形態においては、領域抽出部340が抽出した部分領域を操作者の指示に応じて修正(変更)したり、領域抽出部340が部分領域を抽出することなく操作者の指示に応じて部分領域を新規に追加したりする例について説明をする。
第一、第二の実施形態においては、領域抽出部340が自動的に抽出した部分領域(深さ方向に交差する方向における少なくとも1つの領域)の内外でそれぞれ異なる深さ範囲から二次元正面画像を生成する例について述べた。本実施形態においては、領域抽出部340が抽出した部分領域を操作者の指示に応じて修正(変更)したり、領域抽出部340が部分領域を抽出することなく操作者の指示に応じて部分領域を新規に追加したりする例について説明をする。
上記第一、第二の実施形態と同様の機能を有するものに関しては、ここでは説明を省略する。本実施形態における部分領域の修正の方法に関して図24を用いて説明を行う。図24(a)は、図19の画面においてEnface画像をダブルクリックすることによって表示するEnface画像2412の編集画面2400の例を示している。編集画面2400において、Toolsボタン2401をクリックすることでToolsダイアログ2404を表示する。Toolsダイアログ2404を用いた編集機能については、図24(b)を用いて後述する。ShowToolsチェックボックス2402は、Toolsダイアログ2404の編集機能で設定した機能表示のOn/Offを切り替えることが出来る。ShowLinesチェックボックス2403は、断層画像2411のXY平面上の位置を示す矢印2445の表示On/Offを切り替える。断層画像2411には、Enface画像の作成範囲である上の境界線の種類とそのオフセット値2418、下の境界線の種類とそのオフセット値2419を示し、上の境界線2425、下の境界線2426を重畳表示している。また、Enface画像2412を生成している深さ範囲の名称を2420に表示する。この名称2420には、例えば、RPCやCustom等と表示する。
次に、図24(b)を用いてEnface画像2412上にて行う部分領域の編集方法について説明をする。Toolsダイアログ2404には、編集を行う機能の種類2405を表示する。編集機能の例として、距離、面積、部分領域を示しているが、本実施形態においては、部分領域を編集する場合に関して説明を行う。なお、部分領域は、領域抽出部340が既に抽出しているものとして説明をする。部分領域を編集する場合、Enface画像2412には、部分領域2409(図において、円形の斜線部分)と、編集用のコントロールポイント2410を重畳表示している。すなわち、表示制御部305は、部分領域を示す情報(例えば、部分領域の外縁を示す線や部分領域内に重畳する色)を、深さ範囲として初期値や初期値から変更された値等を用いて生成された二次元正面画像に重畳した状態で表示部600に表示させることが好ましい。これにより、例えば、医者等の操作者は、二次元正面画像において部分領域を容易に確認することができる。そして、断層画像2411には、矢印2445と部分領域2409との交差部に相当する箇所を点線2490にて表示している。点線2490により、部分領域2409が断層画像2411において、どこに相当するかを把握することが出来る。すなわち、表示制御部305は、部分領域を示す情報(例えば、部分領域の外縁を示す線や部分領域内に重畳する色)を、被検眼の断層画像2411に重畳した状態で表示部600に表示させることが好ましい。これにより、例えば、医者等の操作者は、断層画像において部分領域を容易に確認することができる。なお、この点線2490は、ShowToolsチェックボックス2402、ShowLinesチェックボックス2403のどちらかのチェックを外した際に非表示にするようにしても良い。
部分領域2409を編集する際には、操作者はコントロールポイント2410をドラッグすることで編集することが出来る。すなわち、表示制御部305は、上述した部分領域を示す情報を、操作者の指示に応じて画像における該情報の位置が更新された状態で表示部600に表示させることが好ましい。これにより、例えば、医者等の操作者は、部分領域の位置を容易に変更することができる。なお、コントロールポイントをドラッグすることで、XY面において部分領域2409の形状が変化するが、それに伴い、矢印2445との交差部の位置も変化する。そのため、点線2490の位置も交叉部に連動してX方向に移動する。部分領域2409の編集が完了した場合には、OKボタン2407をクリックしてToolsダイアログ2404を閉じる。OKボタン2407をクリックした場合には、編集情報が記憶部302に記憶される。一方、キャンセルボタン2408をクリックしてToolsダイアログ2404を閉じ場合には、編集情報を記憶しない。
全て削除2406ボタンをクリックした場合には部分領域2409を削除して、編集機能を続けることが出来る。そのため、そのままOKボタン2407をクリックすれば部分領域2409は削除され、キャンセルボタン2408をクリックする場合には、領域2409の削除が取り消され、部分領域2409は保持される。
ここでは、領域抽出部340が既に抽出済みの部分領域2409を編集する例について述べたがこれに限らない。例えば、新規に任意の部分領域を追加しても良いし、部分領域2409の他に複数の領域を追加しても良い。また、部分領域2409の編集方法についてコントロールポイント2410で編集をする例について述べたがこれに限らない。例えば、断層画像に重畳表示した点線2490を操作して部分領域2409の形状を変形するようにしても良い。これにより、Y断面単位で編集できるため、より細かい部分領域の編集が可能となる。
これらの編集が完了したら閉じるボタン2430をクリックしてレポート画面(例えば、図19)の表示に戻る。
以上で述べた構成によれば、本実施形態では、操作者は上記異なる深さの範囲の三次元データを用いて二次元正面画像を生成するための部分領域の編集や追加を行う事が出来る。それにより、正確な部分領域の設定が出来るようになるとともに、任意の部分領域の設定をすることが出来る。
(第四の実施形態:深さ方向に交差する方向における領域毎に深さ範囲を、操作者の指示に応じて変更)
第一から第三の実施形態においては、被検眼の深さ方向に交差する方向における複数の領域に対して設定された異なる深さの範囲の三次元データを用いて二次元正面画像を生成する例について述べた。本実施形態においては、生成した二次元正面画像の深さの範囲を部分毎に変更(修正)する例について示す。
第一から第三の実施形態においては、被検眼の深さ方向に交差する方向における複数の領域に対して設定された異なる深さの範囲の三次元データを用いて二次元正面画像を生成する例について述べた。本実施形態においては、生成した二次元正面画像の深さの範囲を部分毎に変更(修正)する例について示す。
上記第一から第三の実施形態と同様の機能を有するものに関しては、ここでは説明を省略する。本実施形態における深さの範囲を部分毎に変更する方法に関して図25を用いて説明を行う。
図25(a)は、図19において、Enface画像1912、第一のOCTA画像1910と第一の断層画像1911、第一のOCTA画像1910の作成範囲である上端(1918、1925)と下端(1919、1926)の境界線を表している。そして、部分領域としてEnface画像1912、OCTA画像1910上に部分領域2409を示し、部分領域用の境界線として、上端(2518、2525)と下端(2519、2526)の境界線を表している。なお、図25(a)では、全体と部分領域用の上下の境界線のZ位置は同じである例を示している。
次に、図25(b)と(c)を用いて、部分領域の境界線の位置を変更する例について述べる。図25(b)では、下の境界線の種類は同じでオフセット値のみを変更する場合を示している。オフセットの数値を数10μmから数100μmに変更することで、部分領域内の境界線のZ位置が深さ方向に移動する。図25(c)では、下の境界線の種類を変更する例を示している。部分領域内の境界線をILMからLaminaに変更している。それにより、部分領域内の境界線の形状が変化している。図25(b)と(c)に示すように、部分領域内の深さ範囲は、境界線+オフセット値でのオフセット値を変更するようにしても良いし、境界線の種類を変更するようにしても良い。これらのオフセット値や境界線の種類は、操作者が変更することが出来る。また、変更出来るのは部分領域用のオフセット値や境界線の種類だけではなく、同様に全体範囲用のオフセット値や境界線の種類も操作者が変更することは可能である。図25で示す断層画像1911は、三次元データの一枚の断層画像を表しているが、オフセット値の変更や境界線の変更を行うと、三次元データに対して共通の変更が行われる。すなわち、三次元データにおいて、これらの変更が行われた断層画像とは異なる断層画像に対してもこれらの変更が行われる。部分領域に関する変更は、部分領域が存在する断層画像の部分領域内に対して共通の変更が適用される。なお、図25には、図24の点線2490で示したような領域2409と断層画像1911との交差部に相当する箇所の表示をしていないが、図24と同様に点線2490を断層画像1911に重畳表示しても良い。
なお、図25では、説明のため、全体と部分領域用の上下の境界線の種類とオフセット値(1918と1919、2518と2519)を並べて表示する例を示したがこれに限らない。例えば、画面において表示する場所は同じで、全体用と部分領域用の組み合わせで、上下の境界線の種類とオフセット値をそれぞれ切り替えて表示するようにしても良い。
以上で述べた構成によれば、本実施形態では、上記異なる深さの範囲の三次元データを用いて二次元正面画像を生成するために、操作者は深さ範囲の設定や変更を行う事が出来る。それにより、操作者が所望する深さ範囲の二次元画像を生成することが出来る。
(第五の実施形態:異なる深さ範囲の三次元データを用いて生成された複数の二次元正面画像における互いに異なる領域を用いて、1つの二次元正面画像を生成)
第一から第四の実施形態においては、上記異なる深さの範囲の三次元データを用いて二次元正面画像を生成する際に、部分領域内の境界線座標を他の領域とは異なる境界線座標に更新することで二次元正面画像を生成する例について述べた。本実施形態においては、それぞれ別々に生成した二次元正面画像を部分的に合成することで一つの二次元正面画像とする例について示す。なお、複数の二次元正面画像を生成した後に、深さ方向に交差する方向における複数の領域が設定されても良い。この場合、生成された複数の二次元正面画像の一部の画像が、設定された複数の領域に対応させるように抽出されることが好ましい。これにより、抽出された複数の一部の画像同士を合成することにより、1つの二次元正面画像を生成することができる。また、深さ方向に交差する方向における複数の領域を設定した後に、該複数の領域に対応する複数の二次元正面画像を生成しても良い。この場合、設定された複数の領域に対応する複数の二次元正面画像を生成し、生成された複数の二次元正面画像同士を合成することにより、1つの二次元正面画像を生成することができる。なお、いずれの場合においても、合成される複数の画像同士は一部重複させることが好ましい。これにより、例えば、一部重複している領域を用いて複数の画像同士の位置合わせ等を容易に行うことができる。ここで、複数の画像同士を合成する処理とは、複数の領域に対応する複数の画像同士を貼り合わせる処理でも良いし、複数の画像データから複数の領域に対応する複数の一部のデータを参照することによりデータとして合成する処理でも良いし、一方の画像の一部の領域に対して他方の画像の一部を重畳する処理でも良い。
第一から第四の実施形態においては、上記異なる深さの範囲の三次元データを用いて二次元正面画像を生成する際に、部分領域内の境界線座標を他の領域とは異なる境界線座標に更新することで二次元正面画像を生成する例について述べた。本実施形態においては、それぞれ別々に生成した二次元正面画像を部分的に合成することで一つの二次元正面画像とする例について示す。なお、複数の二次元正面画像を生成した後に、深さ方向に交差する方向における複数の領域が設定されても良い。この場合、生成された複数の二次元正面画像の一部の画像が、設定された複数の領域に対応させるように抽出されることが好ましい。これにより、抽出された複数の一部の画像同士を合成することにより、1つの二次元正面画像を生成することができる。また、深さ方向に交差する方向における複数の領域を設定した後に、該複数の領域に対応する複数の二次元正面画像を生成しても良い。この場合、設定された複数の領域に対応する複数の二次元正面画像を生成し、生成された複数の二次元正面画像同士を合成することにより、1つの二次元正面画像を生成することができる。なお、いずれの場合においても、合成される複数の画像同士は一部重複させることが好ましい。これにより、例えば、一部重複している領域を用いて複数の画像同士の位置合わせ等を容易に行うことができる。ここで、複数の画像同士を合成する処理とは、複数の領域に対応する複数の画像同士を貼り合わせる処理でも良いし、複数の画像データから複数の領域に対応する複数の一部のデータを参照することによりデータとして合成する処理でも良いし、一方の画像の一部の領域に対して他方の画像の一部を重畳する処理でも良い。
上記第一から第四の実施形態と同様の機能を有するものに関しては、ここでは説明を省略する。本実施形態におけるそれぞれ別々に生成した二次元正面画像を部分的に合成する例に関して、図26を用いて説明を行う。
図26(a)は、図19において、Enface画像1912、第一のOCTA画像1910と第一の断層画像1911、第一のOCTA画像1910の作成範囲である上の境界線1925と下の境界線1926を表している。図26(a)は、視神経乳頭周囲毛細血管の深さ範囲で作成するOCTA画像の例を示している。図26(b)は、篩状板全体を含むように境界線2626全体を深度方向に移動させた場合の例であり、内境界膜(ILM)+オフセット値(数100μm)とする。図26(b)に示すように、Enface画像1912においては、篩状板孔2012が観察されるようになり、OCTA画像1910では視神経乳頭内部、篩状板内部の血管2010が観察される。一方、視神経乳頭部周囲においては、神経線維層からRPEや脈絡膜あたりの範囲まで含むため、Enface画像1912全体のコントラストが低下したり、OCTA画像に浅層部ではない深層部の血管がアーティファクト(図の破線2011)として観察されたりしてしまう。
図26(c)では、図26(a)と図26(b)に示すように、異なる深さ範囲から別々に生成した二次元正面画像を一つの画像として合成する場合の画像を示している。図26(c)には図示しないが、上述の実施形態で示したように領域抽出部340が視神経乳頭部の領域を抽出しているものとして説明をする。図26(c)の二次元正面画像において、視神経乳頭部周囲は図26(a)で示す二次元正面画像から生成し、視神経乳頭内部は図26(b)で示す二次元正面画像から生成している。
以上で述べた構成によれば、本実施形態では、それぞれ別々に生成した二次元正面画像を部分的に合成することで一つの二次元正面画像を生成することが出来る。それにより、境界線の座標位置を変更することなく、操作者が所望する深さ範囲の二次元画像を生成することが出来る。
(変形例1)
上記実施形態では、高画質化処理(加算平均)済みのデータに対して、二次元正面画像を生成する例について述べたが、これに限らない。例えば、高画質化処理(ステップS305)を行っていない1回の撮影による三次元データに対しても適用可能である。さらには、加算平均以外の高画質化処理を施した三次元データに対しても適用可能である。本実施形態は、二次元正面画像を生成する際の基準に対するものであるため、三次元データの画質や生成方法はどのような方法であっても構わない。
上記実施形態では、高画質化処理(加算平均)済みのデータに対して、二次元正面画像を生成する例について述べたが、これに限らない。例えば、高画質化処理(ステップS305)を行っていない1回の撮影による三次元データに対しても適用可能である。さらには、加算平均以外の高画質化処理を施した三次元データに対しても適用可能である。本実施形態は、二次元正面画像を生成する際の基準に対するものであるため、三次元データの画質や生成方法はどのような方法であっても構わない。
(変形例2)
上記実施形態では、ステップS306において二次元正面画像の生成方法について述べたが、画像生成だけではなく、生成した二次元正面画像を用いて計測を行っても良い。例えば、OCTA画像に対して面積密度やスケルトン密度などを計測する。視神経乳頭が写った画像においては、視神経乳頭内部血管と、視神経乳頭周囲の毛細血管とを1枚の画像で同時に計測することが可能となる。また、Enface画像を用いれば、篩状板孔の密度、面積、体積などと、視神経乳頭周囲の層厚も同時に計測可能となる。また、これらの計測結果を表示部600に表示することも可能である。例えば、図19のレポート画面に表示することが好ましい。
上記実施形態では、ステップS306において二次元正面画像の生成方法について述べたが、画像生成だけではなく、生成した二次元正面画像を用いて計測を行っても良い。例えば、OCTA画像に対して面積密度やスケルトン密度などを計測する。視神経乳頭が写った画像においては、視神経乳頭内部血管と、視神経乳頭周囲の毛細血管とを1枚の画像で同時に計測することが可能となる。また、Enface画像を用いれば、篩状板孔の密度、面積、体積などと、視神経乳頭周囲の層厚も同時に計測可能となる。また、これらの計測結果を表示部600に表示することも可能である。例えば、図19のレポート画面に表示することが好ましい。
(変形例3)
上記実施形態では、例えば、部分領域の境界線を深度方向に移動させる方法として、オフセット値(2518と2519)を入力することにより移動させる例を示したが、これに限らない。例えば、境界線をドラッグすることにより移動させても良い。あるいは、断層画像の横にスライダーを表示して、スライダーを移動させることで、それに連動して二次元画像生成の範囲設定を移動させるようにしても良い。もちろん、これらの方法は、部分領域以外の領域の境界線を深度方向に移動させる方法にも適用することができる。
上記実施形態では、例えば、部分領域の境界線を深度方向に移動させる方法として、オフセット値(2518と2519)を入力することにより移動させる例を示したが、これに限らない。例えば、境界線をドラッグすることにより移動させても良い。あるいは、断層画像の横にスライダーを表示して、スライダーを移動させることで、それに連動して二次元画像生成の範囲設定を移動させるようにしても良い。もちろん、これらの方法は、部分領域以外の領域の境界線を深度方向に移動させる方法にも適用することができる。
(変形例4)
上記実施形態では、ステップS306においてモーションコントラストデータからOCTA画像を生成する例について説明をしたが、OCTA画像として、プロジェクションアーティファクト除去を行った画像を表示するようにしても良い。プロジェクションアーティファクトとは、上の層の血管の影が下層に写りこむことであり、血液の流れによる変化で影が変化することにより、血管ではない場所にアーティファクトが発生してしまう現象である。モーションコントラストデータにはこのようなアーティファクトが存在することもある。そのため、UIを操作してOCTA画像を生成する範囲を任意に設定する場合においても、このアーティファクトを除去した画像を生成して表示するようにしても良い。
上記実施形態では、ステップS306においてモーションコントラストデータからOCTA画像を生成する例について説明をしたが、OCTA画像として、プロジェクションアーティファクト除去を行った画像を表示するようにしても良い。プロジェクションアーティファクトとは、上の層の血管の影が下層に写りこむことであり、血液の流れによる変化で影が変化することにより、血管ではない場所にアーティファクトが発生してしまう現象である。モーションコントラストデータにはこのようなアーティファクトが存在することもある。そのため、UIを操作してOCTA画像を生成する範囲を任意に設定する場合においても、このアーティファクトを除去した画像を生成して表示するようにしても良い。
(変形例5)
上記実施形態において、撮影から表示までを一連の流れで示したがこれに限らない。例えば、既に撮影が済んでいるデータを用いて高画質画像生成処理を行ってもよい。その場合、撮影に関する処理のステップS302をスキップし、その代わりに撮影済みの複数の三次元のモーションコントラストデータと三次元の断層像を取得する。そして、ステップS305で高画質画像生成処理を行う。これにより、複数回撮影を行ったデータに関して、撮影時に処理をしなくても、必要な時に高画質化処理を実行することが出来る。そのため、撮影時には撮影だけに集中することが出来る。
上記実施形態において、撮影から表示までを一連の流れで示したがこれに限らない。例えば、既に撮影が済んでいるデータを用いて高画質画像生成処理を行ってもよい。その場合、撮影に関する処理のステップS302をスキップし、その代わりに撮影済みの複数の三次元のモーションコントラストデータと三次元の断層像を取得する。そして、ステップS305で高画質画像生成処理を行う。これにより、複数回撮影を行ったデータに関して、撮影時に処理をしなくても、必要な時に高画質化処理を実行することが出来る。そのため、撮影時には撮影だけに集中することが出来る。
(変形例6)
上記実施形態の変形例の一つとして、上記実施形態に係る画像処理装置の一つが、設定された異なる深さ範囲を、生成された二次元正面画像における面内方向と対応付けて記憶する記憶手段を有することが好ましい。これにより、例えば、医者等の操作者は、面内方向における各領域の深さ範囲を記憶手段から読み出すことにより、過去の二次元正面画像と共に、面内方向における各領域の深さ範囲を容易に確認することができる。
上記実施形態の変形例の一つとして、上記実施形態に係る画像処理装置の一つが、設定された異なる深さ範囲を、生成された二次元正面画像における面内方向と対応付けて記憶する記憶手段を有することが好ましい。これにより、例えば、医者等の操作者は、面内方向における各領域の深さ範囲を記憶手段から読み出すことにより、過去の二次元正面画像と共に、面内方向における各領域の深さ範囲を容易に確認することができる。
(変形例7)
上記実施形態の変形例の一つとして、上記実施形態に係る画像処理装置の一つが、モーションコントラスト正面画像と輝度正面画像とを並べて表示する機能と切り換え表示する機能とのいずれかが、操作者の指示に応じて選択的に実行可能に構成されることが好ましい。これにより、例えば、医者等の操作者は、診断目的等に応じて各画像の表示方法を容易に選択することができる。
上記実施形態の変形例の一つとして、上記実施形態に係る画像処理装置の一つが、モーションコントラスト正面画像と輝度正面画像とを並べて表示する機能と切り換え表示する機能とのいずれかが、操作者の指示に応じて選択的に実行可能に構成されることが好ましい。これにより、例えば、医者等の操作者は、診断目的等に応じて各画像の表示方法を容易に選択することができる。
(変形例8)
上記実施形態の変形例の一つとして、上記実施形態に係る画像処理装置の一つが、被検眼のフォローアップ(経過観察)の機能を含むことが好ましい。例えば、表示制御部305が、異なる日に行われた複数の検査に対応する複数の二次元正面画像を並べて表示部600に表示させることが好ましい。また、例えば、操作者の指示に応じて選択された基準となる検査に対応する二次元正面画像の生成に適用された深さ範囲と部分領域とのうち少なくとも1つが、他の検査に対応する二次元正面画像に適用されることが好ましい。また、基準となる検査に関する設定が操作者の指示に応じて変更された場合に、他の検査に関する設定が同時に変更されることが好ましい。これらにより、例えば、医者等の操作者は、被検眼のフォローアップ(経過観察)を効率的に行うことができる。
上記実施形態の変形例の一つとして、上記実施形態に係る画像処理装置の一つが、被検眼のフォローアップ(経過観察)の機能を含むことが好ましい。例えば、表示制御部305が、異なる日に行われた複数の検査に対応する複数の二次元正面画像を並べて表示部600に表示させることが好ましい。また、例えば、操作者の指示に応じて選択された基準となる検査に対応する二次元正面画像の生成に適用された深さ範囲と部分領域とのうち少なくとも1つが、他の検査に対応する二次元正面画像に適用されることが好ましい。また、基準となる検査に関する設定が操作者の指示に応じて変更された場合に、他の検査に関する設定が同時に変更されることが好ましい。これらにより、例えば、医者等の操作者は、被検眼のフォローアップ(経過観察)を効率的に行うことができる。
(変形例9)
上記実施形態の変形例の一つとして、上記実施形態に係る画像処理装置の一つが、被検眼の三次元データの取得対象または二次元正面画像の生成対象である被検眼の部位に応じて、深さ方向に交差する方向における複数の領域に対する異なる深さ範囲の設定の機能を適用するか非適用にするかが切り換わることが好ましい。これにより、例えば、被検眼の視神経乳頭部や篩状板領域が対象となる部位である場合には、この機能が適用され、また、被検眼の黄斑部が対象となる部位である場合には、この機能は非適用とされることが好ましい。すなわち、対象となる部位として被検眼の浅部と深部とが混在する場合には、この機能が適用されることにより、1つの二次元正面画像の観察で浅部と深部との識別を容易にすることができる。一方、例えば、被検眼の浅部のみが対象となる部位である場合には、従来の深さ方向の設定で良いため、この機能は非適用とされれば良い。
上記実施形態の変形例の一つとして、上記実施形態に係る画像処理装置の一つが、被検眼の三次元データの取得対象または二次元正面画像の生成対象である被検眼の部位に応じて、深さ方向に交差する方向における複数の領域に対する異なる深さ範囲の設定の機能を適用するか非適用にするかが切り換わることが好ましい。これにより、例えば、被検眼の視神経乳頭部や篩状板領域が対象となる部位である場合には、この機能が適用され、また、被検眼の黄斑部が対象となる部位である場合には、この機能は非適用とされることが好ましい。すなわち、対象となる部位として被検眼の浅部と深部とが混在する場合には、この機能が適用されることにより、1つの二次元正面画像の観察で浅部と深部との識別を容易にすることができる。一方、例えば、被検眼の浅部のみが対象となる部位である場合には、従来の深さ方向の設定で良いため、この機能は非適用とされれば良い。
(その他の実施形態)
上記実施形態は、本発明を画像処理装置として実現したものである。しかしながら、本発明は画像処理装置のみに限定されるものではない。本発明をコンピュータ上で動作するソフトウェアとして実現することも可能である。画像処理装置のCPUは、RAMやROMに格納されたコンピュータプログラムやデータを用いてコンピュータ全体の制御を行う。また、画像処理装置の各部に対応するソフトウェアの実行を制御して、各部の機能を実現する。また、ボタンなどのユーザーインターフェイスや表示のレイアウトは上記で示したものに限定されるものではない。
上記実施形態は、本発明を画像処理装置として実現したものである。しかしながら、本発明は画像処理装置のみに限定されるものではない。本発明をコンピュータ上で動作するソフトウェアとして実現することも可能である。画像処理装置のCPUは、RAMやROMに格納されたコンピュータプログラムやデータを用いてコンピュータ全体の制御を行う。また、画像処理装置の各部に対応するソフトウェアの実行を制御して、各部の機能を実現する。また、ボタンなどのユーザーインターフェイスや表示のレイアウトは上記で示したものに限定されるものではない。
Claims (24)
- 被検眼の深さ方向に交差する方向における複数の領域に対して異なる深さ範囲を設定する深さ範囲設定手段と、
前記被検眼の三次元データと前記設定された異なる深さ範囲に関する情報とを用いて、前記被検眼の二次元正面画像を生成する生成手段と、
を有することを特徴とする画像処理装置。 - 前記複数の領域のうち他の領域とは異なる深さ範囲を設定するための少なくとも1つの領域を設定する領域設定手段を更に有することを特徴とする請求項1に記載の画像処理装置。
- 前記領域設定手段は、前記三次元データにおける前記少なくとも1つの領域を自動設定する機能、前記自動設定された少なくとも1つの領域を操作者の指示に応じて変更する機能、前記少なくとも1つの領域を操作者の指示に応じて設定する機能、のうち少なくとも1つの機能を含むことを特徴とする請求項2に記載の画像処理装置。
- 前記深さ範囲設定手段は、前記設定された少なくとも1つの領域の深さ範囲と他の領域の深さ範囲とを独立に設定することを特徴とする請求項2または3に記載の画像処理装置。
- 前記深さ範囲設定手段は、前記二次元正面画像を生成するための深さ範囲の初期値を設定し、前記設定された少なくとも1つの領域の深さ範囲を、他の領域の深さ範囲を固定した状態で前記設定された初期値から変更することを特徴とする請求項2または3に記載の画像処理装置。
- 前記少なくとも1つの領域を示す情報を、前記初期値を用いて生成された前記被検眼の二次元正面画像に重畳した状態で表示手段に表示させる表示制御手段を更に有することを特徴とする請求項5に記載の画像処理装置。
- 前記少なくとも1つの領域を示す情報を、前記三次元データから得られる前記被検眼の断層画像に重畳した状態で表示手段に表示させる表示制御手段を更に有することを特徴とする請求項2乃至5のいずれか1項に記載の画像処理装置。
- 前記表示制御手段は、前記少なくとも1つの領域を示す情報を、操作者の指示に応じて前記画像における前記情報の位置が更新された状態で前記表示手段に表示させることを特徴とする請求項6または7に記載の画像処理装置。
- 異なる日に行われた複数の検査に対応する複数の二次元正面画像を並べて表示手段に表示させる表示制御手段を更に有し、
操作者の指示に応じて選択された基準となる検査に対応する二次元正面画像の生成に適用された深さ範囲と前記少なくとも1つの領域とのうち少なくとも1つが、他の検査に対応する二次元正面画像に適用されることを特徴とする請求項2乃至8のいずれか1項に記載の画像処理装置。 - 前記基準となる検査に関する設定が操作者の指示に応じて変更された場合に、他の検査に関する設定が同時に変更されることを特徴とする請求項9に記載の画像処理装置。
- 前記深さ範囲設定手段は、前記設定された少なくとも1つの領域の深さ範囲を自動設定する機能、前記自動設定された深さ範囲を操作者の指示に応じて変更する機能、前記設定された少なくとも1つの領域の深さ範囲を操作者の指示に応じて設定する機能、のうち少なくとも1つの機能を含むことを特徴とする請求項2乃至10のいずれか1項に記載の画像処理装置。
- 前記深さ範囲設定手段は、前記三次元データから得られる前記被検眼の断層画像における前記深さ方向に対する前記被検眼の傾きに関する情報を用いて、前記少なくとも1つの領域の深さ範囲を設定するための方向を設定することを特徴とする請求項2乃至11のいずれか1項に記載の画像処理装置。
- 前記三次元データにおける視神経乳頭部及び篩状板領域を検出する検出手段を更に有し、
前記領域設定手段は、前記検出された視神経乳頭部に関する情報を用いて前記少なくとも1つの領域を設定し、
前記深さ範囲設定手段は、前記検出された篩状板領域に関する情報を用いて前記少なくとも1つの領域の深さ範囲を設定することを特徴とする請求項2乃至12のいずれか1項に記載の画像処理装置。 - 前記設定された異なる深さ範囲を、前記生成された二次元正面画像における面内方向と対応付けて記憶する記憶手段を更に有することを特徴とする請求項1乃至13のいずれか1項に記載の画像処理装置。
- 前記三次元データの取得対象または前記二次元正面画像の生成対象である前記被検眼の部位に応じて、前記複数の領域に対する異なる深さ範囲の設定の機能を適用するか非適用にするかが切り換わることを特徴とする請求項1乃至14に記載の画像処理装置。
- 前記生成手段は、前記三次元データと前記複数の領域に対して設定された異なる深さ範囲に関する情報とを用いて、前記複数の領域に対応する複数の二次元正面画像を生成し、前記生成された複数の二次元正面画像同士を合成することにより、前記被検眼の1つの二次元正面画像を生成することを特徴とする請求項1乃至15のいずれか1項に記載の画像処理装置。
- 被検眼の二次元正面画像を生成するための深さ範囲を設定する深さ範囲設定手段と、
前記被検眼の三次元データと、異なる深さ範囲に関する情報とを用いて前記被検眼の複数の二次元正面画像を生成し、前記被検眼の深さ方向に交差する方向における複数の領域に対応する複数の画像であって、前記生成された複数の二次元正面画像の一部である前記複数の画像同士を合成することにより、前記被検眼の1つの二次元正面画像を生成する生成手段と、
を有することを特徴とする画像処理装置。 - 前記被検眼の同一位置を走査するように制御された測定光に基づいて得られた複数の断層像データを取得する取得手段を更に有し、
前記三次元データは、前記複数の断層像データを用いて得られた三次元のモーションコントラストデータまたは前記複数の断層像データの少なくとも1つの断層像データであり、
前記二次元正面画像は、前記三次元のモーションコントラストデータを用いて得られたモーションコントラスト正面画像または前記複数の断層像データの少なくとも1つの断層像データを用いて得られた輝度正面画像であることを特徴とする請求項1乃至17のいずれか1項に記載の画像処理装置。 - 前記深さ範囲設定手段は、前記モーションコントラスト正面画像及び前記輝度正面画像に対して、共通の深さ範囲を設定する機能と異なる深さ範囲を設定する機能とのうち少なくとも1つの機能を含むことを特徴とする請求項18に記載の画像処理装置。
- 前記モーションコントラスト正面画像と前記輝度正面画像とを並べて表示する機能と切り換え表示する機能とのいずれかが、操作者の指示に応じて選択的に実行可能に構成されることを特徴とする請求項18または19に記載の画像処理装置。
- 前記深さ範囲設定手段は、基準線と前記基準線に対するオフセット値とのうち少なくとも1つを設定することを特徴とする請求項1乃至20のいずれか1項に記載の画像処理装置。
- 被検眼の深さ方向に交差する方向における複数の領域に対して異なる深さ範囲を設定する工程と、
前記被検眼の三次元データと前記設定された異なる深さ範囲に関する情報とを用いて、前記被検眼の二次元正面画像を生成する工程と、
を有することを特徴とする画像処理方法。 - 被検眼の二次元正面画像を生成するための深さ範囲を設定する工程と、
前記被検眼の三次元データと、異なる深さ範囲に関する情報とを用いて前記被検眼の複数の二次元正面画像を生成し、前記被検眼の深さ方向に交差する方向における複数の領域に対応する複数の画像であって、前記生成された複数の二次元正面画像の一部である前記複数の画像同士を合成することにより、前記被検眼の1つの二次元正面画像を生成する工程と、
を有することを特徴とする画像処理方法。 - 請求項22または23に記載の画像処理方法の各工程を実行するためのプログラム。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2018040031A JP2019150485A (ja) | 2018-03-06 | 2018-03-06 | 画像処理システム、画像処理方法及びプログラム |
US16/286,945 US10973406B2 (en) | 2018-03-06 | 2019-02-27 | Image processing apparatus, image processing method, and non-transitory computer readable medium |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2018040031A JP2019150485A (ja) | 2018-03-06 | 2018-03-06 | 画像処理システム、画像処理方法及びプログラム |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2019150485A true JP2019150485A (ja) | 2019-09-12 |
Family
ID=67947394
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2018040031A Pending JP2019150485A (ja) | 2018-03-06 | 2018-03-06 | 画像処理システム、画像処理方法及びプログラム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2019150485A (ja) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2021049205A (ja) * | 2019-09-25 | 2021-04-01 | キヤノン株式会社 | 画像処理装置、画像処理方法 |
JP2021097790A (ja) * | 2019-12-20 | 2021-07-01 | 株式会社トプコン | 眼科情報処理装置、眼科装置、眼科情報処理方法、及びプログラム |
-
2018
- 2018-03-06 JP JP2018040031A patent/JP2019150485A/ja active Pending
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2021049205A (ja) * | 2019-09-25 | 2021-04-01 | キヤノン株式会社 | 画像処理装置、画像処理方法 |
JP7237786B2 (ja) | 2019-09-25 | 2023-03-13 | キヤノン株式会社 | 画像処理装置、画像処理方法 |
JP2021097790A (ja) * | 2019-12-20 | 2021-07-01 | 株式会社トプコン | 眼科情報処理装置、眼科装置、眼科情報処理方法、及びプログラム |
JP7384656B2 (ja) | 2019-12-20 | 2023-11-21 | 株式会社トプコン | 眼科情報処理装置、眼科装置、眼科情報処理方法、及びプログラム |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP2020093076A (ja) | 医用画像処理装置、学習済モデル、医用画像処理方法及びプログラム | |
US10973406B2 (en) | Image processing apparatus, image processing method, and non-transitory computer readable medium | |
WO2020036182A1 (ja) | 医用画像処理装置、医用画像処理方法及びプログラム | |
JP6526145B2 (ja) | 画像処理システム、処理方法及びプログラム | |
US11887288B2 (en) | Image processing apparatus, image processing method, and storage medium | |
JP7374615B2 (ja) | 情報処理装置、情報処理方法及びプログラム | |
JP2020039851A (ja) | 画像処理装置、画像処理方法、及びプログラム | |
JP2015160105A (ja) | 画像処理装置、画像処理方法及びプログラム | |
JP2021122559A (ja) | 画像処理装置、画像処理方法及びプログラム | |
JP7102112B2 (ja) | 画像処理装置、画像処理方法及びプログラム | |
WO2020050308A1 (ja) | 画像処理装置、画像処理方法及びプログラム | |
JP2019047839A (ja) | 画像処理装置、位置合わせ方法及びプログラム | |
JP7027076B2 (ja) | 画像処理装置、位置合わせ方法及びプログラム | |
JP7195745B2 (ja) | 画像処理装置、画像処理方法及びプログラム | |
JP2019150485A (ja) | 画像処理システム、画像処理方法及びプログラム | |
JP2019047841A (ja) | 画像処理装置、画像処理方法及びプログラム | |
JP7005382B2 (ja) | 情報処理装置、情報処理方法およびプログラム | |
WO2019230643A1 (ja) | 情報処理装置、情報処理方法及びプログラム | |
JP7297952B2 (ja) | 情報処理装置、情報処理方法およびプログラム | |
WO2020090439A1 (ja) | 画像処理装置、画像処理方法およびプログラム | |
JP2022062620A (ja) | 画像処理装置、画像処理方法及びプログラム | |
JP2019063446A (ja) | 画像処理装置、画像処理方法及びプログラム | |
JP7158860B2 (ja) | 画像処理装置、画像処理方法及びプログラム | |
JP7281872B2 (ja) | 画像処理装置、画像処理方法及びプログラム | |
JP2019208845A (ja) | 画像処理装置、画像処理方法及びプログラム |