以下、本発明を実施するための例示的な実施例を、図面を参照して詳細に説明する。
ただし、以下の実施例で説明する寸法、材料、形状、及び構成要素の相対的な位置等は任意であり、本発明が適用される装置の構成又は様々な条件に応じて変更できる。また、図面において、同一であるか又は機能的に類似している要素を示すために図面間で同じ参照符号を用いる。
(実施例1)
以下、図1乃至7を参照して、本発明の実施例1に係る、眼部の断層画像を用いた画像処理装置を備える画像処理システムについて説明する。本実施例では、機械学習モデルに関する学習済モデルを用いて対象となる全ての網膜層の検出を行う。なお、以下において、機械学習モデルとは、ディープラーニング等の機械学習アルゴリズムによる学習モデルをいう。また、学習済モデルとは、任意の機械学習アルゴリズムによる機械学習モデルに対して、事前に適切な教師データを用いてトレーニングした(学習を行った)モデルである。ただし、学習済モデルは、それ以上の学習を行わないものではなく、追加の学習を行うこともできるものとする。なお、以下において、教師データとは、学習データのことをいい、入力データ及び出力データのペアで構成される。また、正解データとは、学習データ(教師データ)の出力データのことをいう。
図1は、本実施例に係る画像処理装置20(医用画像処理装置)を備える画像処理システム1の概略的な構成の一例を示す。図1に示すように、画像処理システム1には、断層画像撮影装置の一例であるOCT装置10、画像処理装置20、眼底画像撮影装置30、外部記憶装置40、表示部50、及び入力部60が設けられている。
OCT装置10は、被検眼の断層画像を撮影するための装置である断層画像撮影装置の一例である。OCT装置としては、任意の種類のOCT装置を用いることができ、例えばSD-OCTやSS-OCTを用いることができる。
画像処理装置20は、インターフェースを介してOCT装置10、眼底画像撮影装置30、外部記憶装置40、表示部50、及び入力部60と接続されており、これらを制御することができる。画像処理装置20は、OCT装置10、眼底画像撮影装置30、及び外部記憶装置40から取得する各種信号に基づいて、被検眼の断層画像やEn-Face画像(正面画像)等の各種画像を生成することができる。また、画像処理装置20は、これら画像について画像処理を施すことができる。なお、画像処理装置20は、汎用のコンピュータによって構成されてもよいし、画像処理システム1の専用のコンピュータによって構成されてもよい。
眼底画像撮影装置30は、被検眼の眼底画像を撮影するための装置であり、当該装置としては、例えば、眼底カメラやSLO(Scanning Laser Ophothalmoscope)等を用いることができる。なお、OCT装置10と眼底画像撮影装置30の装置構成は、一体型でもよいし別体型でもよい。
外部記憶装置40は、被検眼に関する情報(患者の氏名、年齢、性別等)と、撮影した各種画像データ、撮影パラメータ、画像解析パラメータ、及び操作者によって設定されたパラメータをそれぞれ関連付けて保持している。外部記憶装置40は、任意の記憶装置によって構成されてよく、例えば、光学ディスクやメモリ等の記憶媒体によって構成されてよい。
表示部50は、任意のディスプレイによって構成され、画像処理装置20による制御に従い、被検眼に関する情報や各種画像を表示することができる。
入力部60は、例えば、マウス、キーボード、又はタッチ操作画面などであり、操作者は、入力部60を介して、画像処理装置20やOCT装置10、眼底画像撮影装置30への指示を画像処理装置20に入力することができる。なお、入力部60をタッチ操作画面とする場合には、入力部60を表示部50と一体として構成することができる。
なお、これら構成要素は、図1では別体として示されているが、これら構成要素の一部又は全部を一体として構成してもよい。
次にOCT装置10について説明する。OCT装置10には、光源11、ガルバノミラー12、フォーカスレンズステージ13、コヒーレンスゲートステージ14、ディテクタ15、及び内部固視灯16が設けられている。なお、OCT装置10は既知の装置であるため詳細な説明は省略し、ここでは、画像処理装置20からの指示により行われる断層画像の撮影について説明を行う。
画像処理装置20から撮影の指示が伝えられると、光源11が光を出射する。光源11からの光は不図示の分割部を用いて測定光と参照光に分割される。OCT装置10では、測定光を被検体(被検眼)に照射し、被検体からの戻り光と、参照光との干渉光を検出することで、被検体の断層情報を含む干渉信号を生成することができる。
ガルバノミラー12は、測定光を被検眼の眼底において走査するために用いられ、ガルバノミラー12による測定光の走査範囲により、OCT撮影による眼底の撮影範囲を規定することができる。画像処理装置20は、ガルバノミラー12の駆動範囲及び速度を制御することで、眼底における平面方向の撮影範囲及び走査線数(平面方向の走査速度)を規定することができる。図1では、説明を簡略化するため、ガルバノミラー12を1つのユニットとして示したが、ガルバノミラー12は、実際にはXスキャン用のミラーとYスキャン用の2枚のミラーで構成され、眼底上における所望の範囲を測定光で走査できる。なお、測定光を走査するための走査部の構成はガルバノミラーに限られず、他の任意の偏向ミラーを用いることができる。また、走査部として、例えば、MEMSミラーなどの1枚で二次元方向に測定光を走査することができる偏向ミラーを用いてもよい。
フォーカスレンズステージ13には不図示のフォーカスレンズが設けられている。フォーカスレンズステージ13を移動させることで、フォーカスレンズを測定光の光軸に沿って移動させることができる。このため、フォーカスレンズによって、被検眼の前眼部を介し、眼底の網膜層に測定光をフォーカスすることができる。眼底を照射した測定光は各網膜層で反射・散乱して戻り光として、光路を戻る。
コヒーレンスゲートステージ14は、被検眼の眼軸長の相違等に対応するため、参照光又は測定光の光路の長さを調整するために用いられる。本実施例では、コヒーレンスゲートステージ14は、ミラーが設けられたステージによって構成され、参照光の光路において光軸方向に移動することで参照光の光路長を測定光の光路長に対応させることができる。ここで、コヒーレンスゲートは、OCTにおける測定光と参照光の光学距離が等しい位置を表す。コヒーレンスゲートステージ14は、画像処理装置20により制御されることができる。画像処理装置20は、コヒーレンスゲートステージ14によりコヒーレンスゲートの位置を制御することによって、被検眼の深さ方向の撮影範囲を制御することができ、網膜層側の撮影、又は網膜層より深部側の撮影等を制御することができる。
ディテクタ15は、不図示の干渉部において生じた、被検眼からの測定光の戻り光と参照光との干渉光を検出し、干渉信号を生成する。画像処理装置20は、ディテクタ15からの干渉信号を取得し、干渉信号に対してフーリエ変換等を行うことで被検眼の断層画像を生成することができる。
内部固視灯16には、表示部161、及びレンズ162が設けられている。本実施例では、表示部161の一例として複数の発光ダイオード(LD)がマトリックス状に配置されたものを用いる。発光ダイオードの点灯位置は、画像処理装置20の制御により撮影したい部位に応じて変更される。表示部161からの光は、レンズ162を介し、被検眼に導かれる。表示部161から出射される光は、例えば520nmの波長を有し、画像処理装置20による制御により所望のパターンで表示される。
なお、OCT装置10には、画像処理装置20による制御に基づいて、各構成要素の駆動を制御するOCT装置10用の駆動制御部が設けられてもよい。
次に、図2(a)乃至2(c)を参照して、画像処理システム1で取得する眼の構造と画像について説明する。図2(a)は眼球の模式図である。図2(a)には、角膜C、水晶体CL、硝子体V、黄斑部M(黄斑の中心部は中心窩を表す)、及び視神経乳頭部Dが表されている。本実施例では、主に、硝子体V、黄斑部M、視神経乳頭部Dを含む網膜の後極部を撮影する場合について説明を行う。なお、以下では説明をしないが、OCT装置10は、角膜や水晶体等の前眼部を撮影することも可能である。
図2(b)は、OCT装置10を用いて網膜を撮影することで取得した断層画像の一例を示す。図2(b)において、ASは一回のAスキャンにより取得される画像単位を示す。ここで、Aスキャンとは、OCT装置10の上記一連の動作により、被検眼の一点における深さ方向の断層情報を取得することをいう。また、Aスキャンを任意の横断方向(主走査方向)において複数回行うことで被検眼の当該横断方向と深さ方向の二次元の断層情報を取得することをBスキャンという。Aスキャンによって取得されたAスキャン画像を複数集めることで、1つのBスキャン画像を構成することができる。以下、このBスキャン画像のことを、断層画像と呼ぶ。
図2(b)には、血管Ve、硝子体V、黄斑部M、及び視神経乳頭部Dが表されている。また、境界線L1は内境界膜(ILM)と神経線維層(NFL)との境界、境界線L2は神経線維層と神経節細胞層(GCL)との境界、境界線L3は視細胞内節外節接合部(ISOS)を表す。さらに、境界線L4は網膜色素上皮層(RPE)、境界線L5はブルッフ膜(BM)、境界線L6は脈絡膜を表す。断層画像において、横軸(OCTの主走査方向)をx軸とし、縦軸(深さ方向)をz軸とする。
図2(c)は、眼底画像撮影装置30を用いて被検眼の眼底を撮影することで取得した眼底画像の一例を示す。図2(c)には、黄斑部M、及び視神経乳頭部Dが表されており、網膜の血管が太い曲線で表されている。眼底画像において、横軸(OCTの主走査方向)をx軸とし、縦軸(OCTの副走査方向)をy軸とする。
次に、画像処理装置20について説明する。画像処理装置20には、取得部21、画像処理部22、駆動制御部23、記憶部24、及び表示制御部25が設けられている。
取得部21は、OCT装置10から被検眼の干渉信号のデータを取得することができる。なお、取得部21が取得する干渉信号のデータは、アナログ信号でもデジタル信号でもよい。取得部21がアナログ信号を取得する場合には、画像処理装置20でアナログ信号をデジタル信号に変換することができる。また、取得部21は、画像処理部22で生成された断層データや断層画像及びEn-Face画像等の各種画像を取得することができる。ここで、断層データとは、被検体の断層に関する情報を含むデータであり、OCTによる干渉信号に基づくデータ、及びこれに高速フーリエ変換(FFT:Fast Fourier Transform)や任意の信号処理を行ったデータを含むものをいう。
さらに、取得部21は、画像処理すべき断層画像の撮影条件群(例えば、撮影日時、撮影部位名、撮影領域、撮影画角、撮影方式、画像の解像度や階調、画像の画素サイズ、画像フィルタ、及び画像のデータ形式に関する情報など)を取得する。なお、撮影条件群については、例示したものに限られない。また、撮影条件群は、例示したもの全てを含む必要はなく、これらのうちの一部を含んでもよい。
また、取得部21は、眼底画像撮影装置30で取得した眼底情報を含むデータ等を取得することができる。さらに、取得部21は、被検者識別番号等の被検眼を同定するための情報を入力部60等から取得することができる。取得部21は、取得した各種データや画像を記憶部24に記憶させることができる。
画像処理部22は、取得部21で取得されたデータや記憶部24に記憶されたデータから、断層画像やEn-Face画像等を生成し、生成又は取得した画像に画像処理を施すことができる。このため、画像処理部22は、En-Face画像や後述するモーションコントラスト正面画像を生成する生成部の一例として機能することができる。画像処理部22には、断層画像生成部221及び処理部222(第一の処理部)が設けられている。
断層画像生成部221は、取得部21で取得された干渉信号に対してフーリエ変換等の処理を施して断層データを生成し、断層データに基づいて断層画像を生成することができる。なお、断層画像の生成方法としては既知の任意の方法を採用してよく、詳細な説明は省略する。
処理部222は、ディープラーニング等の機械学習アルゴリズムによる機械学習モデルに関する学習済モデルを含むことができる。具体的な機械学習モデルに関しては後述する。処理部222は、学習済モデルを用いて、断層画像において被検眼の網膜層を検出するための検出処理を実行し、各網膜層を検出する。
駆動制御部23は、画像処理装置20に接続されている、OCT装置10や眼底画像撮影装置30の各構成要素の駆動を制御することができる。記憶部24は、取得部21で取得された断層データ、及び画像処理部22で生成・処理された断層画像等の各種画像やデータ等を記憶することができる。また、記憶部24は、プロセッサーによって実行されることで画像処理装置20の各構成要素の機能を果たすためのプログラム等を記憶することもできる。
表示制御部25は、取得部21で取得された各種情報や画像処理部22で生成・処理された断層画像、及び操作者によって入力された情報等の表示部50における表示を制御することができる。
画像処理装置20の記憶部24以外の各構成要素は、CPU(Central Processing Unit)やMPU(Micro Processing Unit)等のプロセッサーによって実行されるソフトウェアモジュールにより構成されてよい。なお、プロセッサーは、例えば、GPU(Graphical Processing Unit)やFPGA(Field-Programmable Gate Array)等であってもよい。また、当該各構成要素は、ASIC等の特定の機能を果たす回路等によって構成されてもよい。記憶部24は、例えば、光学ディスクやメモリ等の任意の記憶媒体によって構成されてよい。
次に、図3を参照して、本実施例に係る一連の処理について説明する。図3は、本実施例に係る一連の処理のフローチャートである。本実施例に係る一連の処理が開始されると、処理はステップS301に移行する。
ステップS301では、取得部21が、被検眼を同定する情報の一例である被検者識別番号を入力部60等の画像処理装置20の外部から取得する。取得部21は、被検者識別番号に基づいて、外部記憶装置40が保持している当該被検眼に関する情報を取得して記憶部24に記憶する。
ステップS302では、駆動制御部23がOCT装置10を制御して被検眼をスキャンすることで撮影を行い、取得部21がOCT装置10から被検眼の断層情報を含む干渉信号を取得する。被検眼のスキャンは、操作者によるスキャン開始の指示に応じて、駆動制御部23がOCT装置10を制御し、光源11やガルバノミラー12等を動作させることで行われる。
ガルバノミラー12は、水平方向用のXスキャナと垂直方向用のYスキャナを含む。そのため、駆動制御部23は、これらのスキャナの向きをそれぞれ変更することで、装置座標系における水平方向(X)及び垂直方向(Y)のそれぞれの方向に測定光を走査することができる。なお、駆動制御部23は、これらのスキャナの向きを同時に変更させることで、水平方向と垂直方向とを合成した方向にも測定光を走査することができる。そのため、駆動制御部23は、眼底平面上の任意の方向に測定光を走査することができる。
駆動制御部23は、撮影を行うにあたり各種撮影パラメータの調整を行う。具体的には、駆動制御部23は、内部固視灯16で表示するパターンの位置、ガルバノミラー12によるスキャン範囲やスキャンパターン、コヒーレンスゲート位置、及びフォーカスを少なくとも設定する。
駆動制御部23は、表示部161の発光ダイオードを制御して、被検眼の黄斑部中心や視神経乳頭の撮影を行うように内部固視灯16で表示するパターンの位置を制御する。また、駆動制御部23は、ガルバノミラー12のスキャンパターンとして、三次元ボリュームを撮影するラスタスキャンや放射状スキャン、クロススキャンなどのスキャンパターンを設定する。なお、どのスキャンパターンを選択したとしても、一つのライン上を繰り返し複数枚(繰り返し回数は2枚以上)撮影する。本実施例においては、スキャンパターンはクロススキャン、同一箇所を150枚繰り返し撮影する場合について説明する。これら撮影パラメータの調整終了後、操作者による撮影開始の指示に応じて、駆動制御部23がOCT装置10を制御して被検眼の撮影を行う。なお、本実施例に係る繰り返し回数は一例であり、所望の構成に応じて任意の回数に設定されてよい。
本開示においては詳細な説明を省略するが、OCT装置10は、加算平均用に同じ箇所を撮影するために、被検眼のトラッキングを行うことができる。これにより、OCT装置10は、固視微動の影響を少なくして被検眼のスキャンを行うことができる。
ステップS303では、断層画像生成部221が、取得部21によって取得された干渉信号に基づいて断層画像の生成を行う。断層画像生成部221は、それぞれの干渉信号に対して、一般的な再構成処理を行うことで、断層画像を生成することができる。
まず、断層画像生成部221は、干渉信号から固定パターンノイズ除去を行う。固定パターンノイズ除去は、取得した複数のAスキャンの信号を平均することで固定パターンノイズを抽出し、これを入力した干渉信号から減算することで行われる。その後、断層画像生成部221は、有限区間で干渉信号をフーリエ変換した場合にトレードオフの関係となる深さ分解能とダイナミックレンジを最適化するために、所望の窓関数処理を行う。断層画像生成部221は、窓関数処理を行った干渉信号に対して高速フーリエ変換(FFT)処理を行うことによって断層データを生成する。
断層画像生成部221は、生成した断層データに基づいて断層画像の各画素値を求め、断層画像を生成する。なお、断層画像の生成方法はこれに限られず、既知の任意の方法で行われてよい。
ステップS304では、画像処理部22の処理部222が網膜層の検出処理を行う。図4(a)及び(b)を参照して、処理部222の処理について説明する。
処理部222は、OCT装置10を用いて取得した複数の断層画像において網膜層の境界を検出する。処理部222は、予め機械学習が行われた機械学習モデルに関する学習済モデルを用いて各網膜層を検出する。
ここで、図4(a)乃至6を参照して、本実施例に係る機械学習アルゴリズムについて説明する。本実施例に係る機械学習モデルの学習データ(教師データ)は、1つ以上の入力データと出力データとのペア群で構成される。具体的には、入力データとして、OCTにより取得された断層画像401が挙げられ、出力データとして、当該断層画像について網膜層の境界が特定された境界画像402が挙げられる。本実施例では、境界画像402として、ILMとNFLとの境界403、NFLとGCLとの境界404、ISOS405、RPE406、及びBM407が示された画像を用いる。なお、図示はしないが、その他の境界として、外網状層(OPL)と外顆粒層(ONL)との境界、内網状層(IPL)と内顆粒層(INL)との境界、INLとOPLとの境界、GCLとIPLとの境界等が示された画像を用いてもよい。
なお、出力データとして用いられる境界画像402は、医師等により断層画像において境界が示された画像であってもよいし、ルールベースの境界検出処理により境界が検出された画像であってもよい。ただし、適切に境界検出が行われていない境界画像を教師データの出力データとして用いて機械学習を行うと、当該教師データを用いて学習した学習済モデルを用いて得た画像も適切に境界検出が行われていない境界画像となってしまう可能性がある。そのため、そのような境界画像を含むペアを教師データから取り除くことで、学習済モデルを用いて適切でない境界画像が生成される可能性を低減させることができる。ここで、ルールベースの処理とは既知の規則性を利用した処理をいい、ルールベースの境界検出とは、例えば網膜の形状の規則性等の既知の規則性を利用した境界検出処理をいう。
また、図4(a)及び(b)においては、網膜のXY面内におけるある一つのXZ断面の例を示しているが、断面はこれに限らない。図示しないが、XY面内における任意の複数のXZ断面についての断層画像及び境界画像を事前に学習しておき、ラスタスキャンやラジアルスキャン等、異なる様々なスキャンパターンで撮影された断面に対して対応できるようにしておくことができる。例えば、ラスタスキャンで三次元的に網膜を撮影した断層画像等のデータを用いる場合には、隣接する複数の断層画像間の位置合わせをしたボリュームデータを教師データに用いることができる。この場合には、1つのボリュームデータ(三次元の断層画像)とこれに対応する1つの三次元の境界データ(三次元の境界画像)とから、任意の角度のペア画像群を生成することが可能である。また、機械学習モデルは、実際に様々なスキャンパターンで撮影した画像を教師データとして用いて学習してもよい。
次に、学習時の画像について説明する。機械学習モデルの教師データを構成する、断層画像401と境界画像402とのペア群を構成する画像群を、位置関係が対応する一定の画像サイズの矩形領域画像によって作成する。当該画像の作成について、図5(a)乃至5(c)を参照して説明する。
まず、教師データを構成するペア群の1つを、断層画像401と境界画像402とした場合について説明する。この場合には、図5(a)に示すように、断層画像401の全体である矩形領域画像501を入力データ、境界画像402の全体である矩形領域画像502を出力データとして、ペアを構成する。なお、図5(a)に示す例では各画像の全体により入力データと出力データのペアを構成しているが、ペアはこれに限らない。
例えば、図5(b)に示すように、断層画像401のうちの矩形領域画像511を入力データ、境界画像402における対応する撮影領域である矩形領域画像513を出力データとして、ペアを構成してもよい。矩形領域画像511,513の矩形領域は、Aスキャン単位を基本としている。Aスキャン単位とは、1本のAスキャン単位でもよいし、数本のAスキャン単位でもよい。
なお、図5(b)ではAスキャン単位を基本としているが、画像に対して深さ方向の全てを領域とするのではなく、上下に矩形領域外の部分を設けてもよい。すなわち、矩形領域の横方向のサイズはAスキャン数本分、矩形領域の深さ方向のサイズは、画像の深さ方向のサイズよりも小さく設定してもよい。
また、図5(c)に示すように、断層画像401のうちの矩形領域画像521を入力データ、境界画像402における対応する撮影領域である矩形領域画像523を出力データとして、ペアを構成してもよい。
なお、学習時には、スキャン範囲(撮影画角)、スキャン密度(Aスキャン数)を正規化して画像サイズを揃えて、学習時の矩形領域サイズを一定に揃えることができる。また、図5(a)乃至(c)に示した矩形領域画像は、それぞれ別々に学習する際の矩形領域サイズの一例である。
矩形領域の数は、図5(a)に示す例では1つ、図5(b)及び(c)に示す例では複数設定可能である。例えば、図5(b)に示す例において、断層画像401のうちの矩形領域画像512を入力データ、境界画像402における対応する撮影領域である矩形領域画像514を出力データとしてペアを構成することもできる。また、例えば、図5(c)に示す例において、断層画像401のうちの矩形領域画像522を入力データ、境界画像402における対応する撮影領域である矩形領域画像524を出力データとしてペアを構成することもできる。このように、1枚ずつの断層画像及び境界画像のペアから、互いに異なる矩形領域画像のペアを作成できる。なお、元となる断層画像及び境界画像において、領域の位置を異なる座標に変えながら多数の矩形領域画像のペアを作成することで、教師データを構成するペア群を充実させることができる。
図5(b)及び(c)に示す例では、離散的に矩形領域を示しているが、実際には、元となる断層画像及び境界画像を、隙間なく連続する一定の画像サイズの矩形領域画像群に分割することができる。また、元となる断層画像及び境界画像について、互いに対応する、ランダムな位置の矩形領域画像群に分割してもよい。このように、矩形領域(又は、短冊領域)として、より小さな領域の画像を入力データ及び出力データのペアとして選択することで、もともとのペアを構成する断層画像401及び境界画像402から多くのペアデータを生成できる。そのため、機械学習モデルのトレーニングにかかる時間を短縮することができる。一方で、完成した機械学習モデルの学習済モデルでは、実行する画像セグメンテーション処理の時間が長くなる傾向にある。ここで、画像セグメンテーション処理とは、画像内の領域や境界を識別したり、区別したりする処理をいう。
次に、本実施例に係る機械学習モデルの一例として、入力された断層画像に対して、画像セグメンテーション処理を行う畳み込みニューラルネットワーク(CNN)に関して、図6を参照して説明する。図6は、処理部222における機械学習モデルの構成601の一例を示している。なお、本実施例に係る機械学習モデルとしては、例えば、FCN(Fully Convolutional Network)、又はSegNet等を用いることもできる。また、所望の構成に応じて領域単位で物体認識を行う機械学習モデルを用いてもよい。物体認識を行う機械学習モデルとしては、例えば、RCNN(Region CNN)、fastRCNN、又はfasterRCNNを用いることができる。さらに、領域単位で物体認識を行う機械学習モデルとして、YOLO(You Look Only Onse)、又はSSD(Single Shot MultiBox Detector)を用いることもできる。
図6に示す機械学習モデルは、入力値群を加工して出力する処理を担う複数の層群によって構成される。なお、当該機械学習モデルの構成601に含まれる層の種類としては、畳み込み(Convolution)層、ダウンサンプリング(Downsampling)層、アップサンプリング(Upsampling)層、及び合成(Merger)層がある。
畳み込み層は、設定されたフィルタのカーネルサイズ、フィルタの数、ストライドの値、ダイレーションの値等のパラメータに従い、入力値群に対して畳み込み処理を行う層である。なお、入力される画像の次元数に応じて、フィルタのカーネルサイズの次元数も変更してもよい。
ダウンサンプリング層は、入力値群を間引いたり、合成したりすることによって、出力値群の数を入力値群の数よりも少なくする処理を行う層である。具体的には、このような処理として、例えば、Max Pooling処理がある。
アップサンプリング層は、入力値群を複製したり、入力値群から補間した値を追加したりすることによって、出力値群の数を入力値群の数よりも多くする処理を行う層である。具体的には、このような処理として、例えば、線形補間処理がある。
合成層は、ある層の出力値群や画像を構成する画素値群といった値群を、複数のソースから入力し、それらを連結したり、加算したりして合成する処理を行う層である。
なお、図6に示す構成601に含まれる畳み込み層群に設定されるパラメータとして、例えば、フィルタのカーネルサイズを幅3画素、高さ3画素、フィルタの数を64とすることで、一定の精度の画像セグメンテーション処理が可能である。ただし、ニューラルネットワークを構成する層群やノード群に対するパラメータの設定が異なると、教師データからトレーニングされた傾向を出力データに再現可能な程度が異なる場合があるので注意が必要である。つまり、多くの場合、実施する際の形態に応じて適切なパラメータは異なるので、必要に応じて好ましい値に変更することができる。
また、上述したようなパラメータを変更するという方法だけでなく、CNNの構成を変更することによって、CNNがより良い特性を得られる場合がある。より良い特性とは、例えば、画像セグメンテーション処理の精度が高かったり、画像セグメンテーション処理の時間が短かったり、機械学習モデルのトレーニングにかかる時間が短かったりする等である。
なお、本実施例で用いるCNNの構成601は、複数のダウンサンプリング層を含む複数の階層からなるエンコーダーの機能と、複数のアップサンプリング層を含む複数の階層からなるデコーダーの機能とを有するU-net型の機械学習モデルである。U-net型の機械学習モデルでは、エンコーダーとして構成される複数の階層において曖昧にされた位置情報(空間情報)を、デコーダーとして構成される複数の階層において、同次元の階層(互いに対応する階層)で用いることができるように(例えば、スキップコネクションを用いて)構成される。
図示しないが、CNNの構成の変更例として、例えば、畳み込み層の後にバッチ正規化(Batch Normalization)層や、正規化線形関数(Rectifier Linear Unit)を用いた活性化層を組み込む等をしてもよい。
このような機械学習モデルの学習済モデルにデータを入力すると、機械学習モデルの設計に従ったデータが出力される。例えば、教師データを用いてトレーニングされた傾向に従って入力データに対応する可能性の高い出力データが出力される。
本実施例に係る処理部222の学習済モデルでは、断層画像401が入力されると、教師データを用いてトレーニングされた傾向に従って、境界画像402を出力する。処理部222は、境界画像402に基づいて断層画像401における網膜層及びその境界を検出することができる。
なお、図5(b)及び(c)に示すように、画像の領域を分割して学習している場合、処理部222は学習済モデルを用いて、それぞれの矩形領域に対応する境界画像である矩形領域画像を得る。そのため、処理部222は、各矩形領域において網膜層を検出することができる。この場合、処理部222は、学習済モデルを用いて得た境界画像である矩形領域画像群のそれぞれを、矩形領域画像群のぞれぞれと同様の位置関係に配置して結合することで、入力された断層画像401に対応する境界画像402を生成することができる。この場合にも、処理部222は、生成された境界画像402に基づいて断層画像401における網膜層及びその境界を検出することができる。
ステップS304において、処理部222が網膜層の検出処理を行うと、処理はステップS305に移行する。ステップS305では、表示制御部25が、処理部222によって検出した境界と断層画像とを表示部50に表示する。ここで、図7に表示部50に表示する画面の一例を示す。
図7には表示画面700が示されており、表示画面700には、SLO画像701、SLO画像701に重畳表示される厚みマップ702、En-Face画像703、断層画像711、及び網膜の厚みグラフ712が示されている。断層画像711には、網膜の境界715,716が重畳表示されている。
なお、本実施例では網膜の範囲を、内境界膜と神経線維層との境界L1~網膜色素上皮層L4としており、境界715,716はそれぞれ境界L1及び網膜色素上皮層L4に対応する。網膜の範囲はこれに限られず、例えば、内境界膜と神経線維層との境界L1~脈絡膜L6の範囲としてもよく、この場合、境界715,716はそれぞれ境界L1及び脈絡膜L6に対応することができる。
網膜の厚みグラフ712は、境界715,716から求められる網膜の厚みを示すグラフである。また、厚みマップ702は境界715,716から求められる網膜の厚みをカラーマップで表現したものである。なお、図7では、説明のため、厚みマップ702に対応する色情報は示されていないが、実際には、厚みマップ702は、SLO画像701における各座標に対応する網膜の厚みを対応するカラーマップに従って表示することができる。
En-Face画像703は、境界715,716の間の範囲のデータをXY方向に投影して生成した正面画像である。正面画像は、光干渉を用いて得たボリュームデータ(三次元の断層画像)の少なくとも一部の深度範囲であって、2つの基準面に基づいて定められた深度範囲に対応するデータを二次元平面に投影又は積算して生成される。本実施例に係るEn-Face画像703は、ボリュームデータのうちの、検出された網膜層に基づいて決定された深度範囲(境界715,716の間の深度範囲)に対応するデータを二次元平面に投影して生成された正面画像である。なお、2つの基準面に基づいて定められた深度範囲に対応するデータを二次元平面に投影する手法としては、例えば、当該深度範囲内のデータの代表値を二次元平面上の画素値とする手法を用いることができる。ここで、代表値は、2つの基準面に囲まれた領域の深さ方向の範囲内における画素値の平均値、中央値又は最大値などの値を含むことができる。
また、表示画面700に示されるEn-Face画像703に係る深度範囲は、境界715,716の間の深度範囲に限られない。En-Face画像703に係る深度範囲は、例えば、検出された網膜層に関する2つの層境界715,716の一方を基準として、より深い方向又はより浅い方向に所定の画素数分だけ含んだ範囲であってもよい。また、En-Face画像703に係る深度範囲は、例えば、検出された網膜層に関する2つの層境界715,716の間の範囲から、操作者の指示に応じて変更された(オフセットされた)範囲であってもよい。
なお、表示画面700に示される正面画像は、輝度値に基づくEn-Face画像(輝度のEn-Face画像)に限られない。表示画面700に示される正面画像は、例えば、複数のボリュームデータ間のモーションコントラストデータについて、上述の深度範囲に対応するデータを二次元平面に投影又は積算して生成したモーションコントラスト正面画像であってもよい。ここで、モーションコントラストデータとは、被検眼の同一領域(同一位置)において測定光が複数回走査されるように制御して得た複数のボリュームデータ間での変化を示すデータである。このとき、ボリュームデータは、異なる位置で得た複数の断層画像により構成される。そして、異なる位置それぞれにおいて、略同一位置で得た複数の断層画像の間での変化を示すデータを得ることで、モーションコントラストデータをボリュームデータとして得ることができる。なお、モーションコントラスト正面画像は、血流の動きを測定するOCTアンギオグラフィ(OCTA)に関するOCTA正面画像(OCTAのEn-Face画像)とも呼ばれ、モーションコントラストデータはOCTAデータとも呼ばれる。モーションコントラストデータは、例えば、2枚の断層画像又はこれに対応する干渉信号間の脱相関値、分散値、又は最大値を最小値で割った値(最大値/最小値)として求めることができ、公知の任意の方法により求められてよい。このとき、2枚の断層画像は、例えば、被検眼の同一領域(同一位置)において測定光が複数回走査されるように制御して得ることができる。
また、OCTA正面画像を生成する際に用いられる三次元のOCTAデータ(OCTボリュームデータ)は、網膜層を検出するための断層画像を含むボリュームデータと共通の干渉信号の少なくとも一部を用いて生成されてもよい。この場合には、ボリュームデータ(三次元の断層画像)と三次元のOCTAデータとが互いに対応することができる。そのため、ボリュームデータに対応する三次元のモーションコントラストデータを用いて、例えば、検出された網膜層に基づいて決定された深度範囲に対応するモーションコントラスト正面画像が生成されることができる。
ここで、厚みマップ702、En-Face画像703、厚みグラフ712、及び境界715,716の表示は、処理部222で検出した境界や網膜層に基づいて、画像処理装置20によって生成されることができるものの例である。なお、これらを生成する生成方法は公知の任意の方法を採用してよい。
なお、表示部50の表示画面700には、これらに加えて患者タブ、撮影タブ、レポートタブ、及び設定タブ等を設けてもよい。この場合、図7の表示画面700に示されている内容は、レポートタブに表示されることとなる。また、表示画面700には、患者情報表示部、検査ソートタブ、及び検査リスト等を表示することもできる。検査リストには、眼底画像や断層画像、OCTA画像のサムネイルを表示してもよい。
次に、ステップS306において、取得部21は、画像処理システム1による断層画像の撮影に係る一連の処理を終了するか否かの指示を外部から取得する。この指示は、入力部60を用いて、操作者によって入力されることができる。取得部21が、処理を終了する指示を取得した場合には、画像処理システム1は本実施例に係る一連の処理を終了する。一方、取得部21が、処理を終了しない指示を取得した場合には、ステップS302に処理を戻して撮影を続行する。
上記のように、本実施例に係る画像処理装置20は、取得部21と、処理部222(第一の処理部)とを備える。取得部21は、被検眼の断層画像を取得する。処理部222は、学習済モデルを用いて、断層画像において被検眼の複数の網膜層のうち少なくとも一つの網膜層を検出するための第一の検出処理を実行する。
学習済モデルを用いて画像セグメンテーション処理を行う場合、例えば、疾病眼における病変による層構造の変化についても、学習した傾向に応じて適切に境界検出を行うことができる。このため、本実施例に係る画像処理装置20では、学習済モデルを用いて画像セグメンテーション処理を行うことで、疾患や部位等によらず境界検出を行うことができ、境界検出の精度を向上させることができる。
また、画像処理装置20は、被検眼の三次元の断層画像における少なくとも一部の深度範囲であって、検出された少なくとも一つの網膜層に基づいて決定された深度範囲に対応する正面画像を生成する画像処理部22を更に備える。画像処理部22は、三次元の断層画像に対応する三次元のモーションコントラストデータを用いて、決定された深度範囲に対応するモーションコントラスト正面画像を生成することができる。
なお、本実施例では、1つの学習済モデルを用いて画像セグメンテーション処理を行う構成について説明したが、複数の学習済モデルを用いて画像セグメンテーション処理を行ってもよい。
学習済モデルは、上述のように教師データを用いた学習の傾向に従って出力データを生成するため、特徴について似た傾向を有する教師データを用いて学習を行うことで、出力データに対する学習の傾向の再現性を高めることができる。このため、例えば、撮影部位毎に学習を行った複数の学習済モデルを用いて、対応する撮影部位の断層画像について画像セグメンテーション処理を行うことで、より精度の良い境界画像を生成することができる。この場合には、画像処理システムはより精度よく網膜層を検出することができる。また、この場合には、追加で学習モデルを増やしていくことも可能であるため、性能が徐々に向上するようなバージョンアップを行うことも期待できる。
さらに、処理部222は、断層画像における硝子体側の領域、網膜領域、及び強膜側の領域等の領域毎に学習を行った複数の学習モデルを用い、それぞれの学習モデルの出力を合わせて処理部222の最終的な出力を生成してもよい。この場合には、領域毎により精度の高い境界画像を生成することができるため、より精度よく網膜層を検出することができる。
また、本実施例では、機械学習モデルとして画像セグメンテーション処理を行うものについて説明したが、例えば、断層画像の撮影部位を推定するような機械学習モデルを用いることもできる。
一般に、機械学習モデルの構成は、入力データである画像に対応する画像を出力する構成に限られない。例えば、入力データに対して、教師データを用いてトレーニングされた出力データの種類を出力したり、当該種類のそれぞれについて可能性を数値として出力したりするように機械学習モデルが構成されてもよい。このため、教師データを構成するペア群の入力データと出力データの形式や組み合わせは、一方が画像で他方が数値であったり、一方が複数の画像群で構成され他方が文字列であったり、双方が画像であったりする等、利用形態に適したものとすることができる。
撮影部位を推定する機械学習モデルの教師データの例として、具体的には、OCTによって取得された断層画像と、断層画像に対応する撮影部位ラベルとのペア群によって構成された教師データが挙げられる。ここで、撮影部位ラベルは部位を表すユニークな数値や文字列である。このような教師データを用いてトレーニングされた学習済モデルに、OCTを用いて取得された断層画像を入力すると、画像に撮影されている部位の撮影部位ラベルが出力されたり、設計によっては、撮影部位ラベル毎の確率が出力されたりする。
処理部222は、このような撮影部位を推定する学習済モデルを更に用いて断層画像の撮影部位を推定し、推定された撮影部位や最も確率の高い撮影部位に応じた学習済モデルを用いて画像セグメンテーション処理を行ってもよい。このような構成では、断層画像の撮影部位に関する撮影条件を取得部21が取得できない場合であっても、断層画像から撮影部位を推定し、撮影部位に対応する画像セグメンテーション処理を行うことで、より精度良く網膜層を検出することができる。
(実施例2)
実施例1においては、学習済モデルを用いて、断層画像から対象となる全ての網膜層を検出する画像セグメンテーション処理を行った。これに対し、実施例2では、学習済モデルによる網膜領域の検出結果に基づいて、ルールベースの画像特徴による境界検出を行う。
従来、視神経乳頭部においては、OCT画像を用いてCup(視神経乳頭陥凹)とDisc(視神経乳頭)の検出を行う際にブルッフ膜の開口端の検出を行うことが通例であるが、乳頭周囲網脈絡膜萎縮などの場合、その検出が困難な場合があった。
また、従来のルールベースの画像セグメンテーション処理では、被検眼の個体差や病変に対するロバスト性が低く初めに網膜領域を誤検出してしまうことがあった。この場合には、その後の網膜内層境界の検出が適切に行えなかった。
これに対し、機械学習モデルを用いて画像セグメンテーション処理を行うことで、境界検出の精度を向上させることができる。しかしながら、ディープラーニング等の機械学習アルゴリズムによる機械学習モデルを用いて撮像部位の認識や網膜層の境界検出を行う場合、医療画像分野であることから、正解付きの正常及び病変画像の症例数を集めるのが大変困難であるのが一般的である。さらに、学習のための正解データを作成するのにも時間を要する。
そこで、本実施例では、学習済モデルを用いて網膜領域を検出し、検出した網膜領域に対して、画像特徴による境界検出を併用する。これにより、網膜領域の誤検出を抑制し、網膜内層境界の検出精度を向上させるとともに、機械学習の過程において、学習時には網膜層かそれ以外の正解データを作成するだけで済むため、学習を効率的に行うことができる。
以下、図8乃至13(d)を参照して、本実施例に係る画像処理システム8について説明する。以下、本実施例に係る画像処理システムによる画像処理について、実施例1に係る画像処理との違いを中心として説明する。なお、実施例1に係る画像処理システム1の構成及び処理と同様である本実施例による画像処理システムの構成及び処理については、同一の参照符号を用いて示し、説明を省略する。
図8は、本実施例に係る画像処理システム8の概略的な構成の一例を示す。画像処理システム8では、画像処理装置80の画像処理部82において、処理部222に代えて、第一の処理部822及び第二の処理部823が設けられている。
第一の処理部822は、ディープラーニング等の機械学習アルゴリズムによる機械学習モデルに関する学習済モデルを有し、学習済モデルを用いて断層画像における網膜領域を検出する。第二の処理部823は、第一の処理部822によって検出された網膜領域について、画像特徴抽出の結果をルールベースで判断して網膜層の境界検出を行う。
次に、図9(a)及び(b)を参照して、本実施例に係る一連の処理について説明する。図9(a)は本実施例に係る一連の処理のフローチャートであり、図9(b)は本実施例における境界検出処理のフローチャートである。なお、境界検出処理以外の処理については実施例1の処理と同様であるため、説明を省略する。ステップS303において断層画像が生成されると、処理はステップS904に移行する。
ステップS904における境界検出処理が開始されると、処理はステップS941に移行する。ステップS941では、第一の処理部822が、第一の境界検出処理として、学習済モデルを用いて断層画像における網膜領域を検出する。
ここで、図10(a)乃至12を参照して、本実施例に係る機械学習モデルについて説明する。本実施例に係る機械学習モデルの学習データ(教師データ)は、1つ以上の入力データと出力データとのペア群で構成される。教師データの例として、図10(a)に示すOCTの撮影によって取得された断層画像1001と、図10(b)に示す断層画像1001から任意の層にラベルを与えたラベル画像1002とのペア群によって構成されている教師データ等が挙げられる。
ここで、ラベル画像とは画素毎にラベル付けがなされた画像(アノテーションして得た画像)であり、本実施例では、画素毎に当該画素に現れている(撮影されている)像に関するラベルが与えられた画像をいう。ラベル画像1002においては、ラベルの例として網膜よりも浅層側(硝子体側)のラベル1003、網膜内層のラベル1004、及び網膜よりも深層側(脈絡膜側)のラベル1005が与えられている。本実施例における第一の処理部822は、このようなラベル画像に基づいて網膜内層を検出する。なお、本実施例では網膜の範囲(網膜内層の範囲)を内境界膜と神経線維層との境界L1~網膜色素上皮層L4としたが、これに限らない。例えば、網膜の範囲を内境界膜と神経線維層との境界L1~視細胞内節外節接合部L3の範囲、内境界膜と神経線維層との境界L1~ブルッフ膜L5の範囲、又は内境界膜と神経線維層との境界L1~脈絡膜L6の範囲等と定義してもよい。
さらに、図10(a)及び(b)においては、網膜のXY面内においてある一つのXZ断面の例を示しているが、断面はこれに限らない。図示しないが、XY面内における任意の複数のXZ断面を事前に学習しておき、ラスタスキャンやラジアルスキャン等、異なる様々なスキャンパターンで撮影された断面に対して対応できるようにしておくことができる。例えば、ラスタスキャンで三次元的に網膜を撮影した断層画像等のデータを用いる場合には、隣接する複数の断層画像間の位置合わせをしたボリュームデータを教師データに用いることができる。この場合には、1つのボリュームデータとこれに対応する1つの三次元ラベルデータ(三次元のラベル画像)とから、任意の角度のペア画像群を生成することが可能である。また、機械学習モデルは、実際に様々なスキャンパターンで撮影した画像を教師画像として用いて学習してもよい。
次に、学習時の画像について説明する。機械学習モデルの教師データを構成する、断層画像1001とラベル画像1002とのペア群を構成する画像群を、位置関係が対応する一定の画素サイズの矩形領域画像によって作成する。当該画像の作成について、図11(a)乃至(c)を参照して説明する。
まず、教師データを構成するペア群の1つを、断層画像1001とラベル画像1002とした場合について説明する。この場合には、図11(a)に示すように、断層画像1001の全体である矩形領域画像1101を入力データ、ラベル画像1002の全体である矩形領域画像1102を出力データとして、ペアを構成する。なお、図11(a)に示す例では各画像の全体により入力データと出力データのペアを構成しているが、ペアはこれに限らない。
例えば、図11(b)に示すように、断層画像1001のうちの矩形領域画像1111を入力データ、ラベル画像1002における対応する撮影領域である矩形領域画像1113を出力データとして、ペアを構成してもよい。矩形領域画像1111,1113は、Aスキャン単位を基本としている。Aスキャン単位とは、1本のAスキャン単位でもよいし、数本のAスキャン単位でもよい。
なお、図11(b)ではAスキャン単位を基本としているが、画像に対して深さ方向の全てを領域とするのではなく、上下に矩形領域外の部分を設けてもよい。すなわち、矩形領域の横方向のサイズはAスキャン数本分、矩形領域の深さ方向のサイズは、画像の深さ方向のサイズよりも小さく設定してもよい。
また、図11(c)に示すように、断層画像1001のうちの矩形領域画像1121を入力データ、ラベル画像1002における対応する撮影領域である矩形領域画像1123を出力データとして、ペアを構成してもよい。この場合、矩形領域のサイズは、1つの矩形領域内に複数のラベルを含むサイズとする。
なお、学習時には、スキャン範囲(撮影画角)、スキャン密度(Aスキャン数)を正規化して画像サイズを揃えて、学習時の矩形領域サイズを一定に揃えることができる。また、図11(a)乃至(c)に示した矩形領域画像は、それぞれ別々に学習する際の矩形領域サイズの一例である。
矩形領域の数は、図11(a)に示す例では1つ、図11(b)及び(c)に示す例では複数設定可能である。例えば、図11(b)に示す例において、断層画像1001のうちの矩形領域画像1112を入力データ、ラベル画像1002における対応する撮影領域である矩形領域画像1114を出力データとしてペアを構成することもできる。また、例えば、図11(c)に示す例において、断層画像1001のうちの矩形領域画像1122を入力データ、ラベル画像1002における対応する撮影領域である矩形領域画像1124を出力データとしてペアを構成することもできる。このように、1枚ずつの断層画像及びラベル画像のペアから、互いに異なる矩形領域画像のペアを作成できる。なお、元となる断層画像及びラベル画像において、領域の位置を異なる座標に変えながら多数の矩形領域画像のペアを作成することで、教師データを構成するペア群を充実させることができる。
図11(b)及び(c)に示す例では、離散的に矩形領域を示しているが、実際には、元となる断層画像及びラベル画像を、隙間なく連続する一定の画像サイズの矩形領域画像群に分割することができる。また、元となる断層画像及びラベル画像について、互いに対応する、ランダムな位置の矩形領域画像群に分割してもよい。このように、矩形領域(又は、短冊領域)として、より小さな領域の画像を入力データ及び出力データのペアとして選択することで、もともとのペアを構成する断層画像1001及びラベル画像1002から多くのペアデータを生成できる。そのため、機械学習モデルのトレーニングにかかる時間を短縮することができる。一方で、完成した機械学習モデルの学習済モデルでは、実行する画像セグメンテーション処理の時間が長くなる傾向にある。
次に、本実施例に係る機械学習モデルの一例として、入力された断層画像に対して、セグメンテーション処理を行う畳み込みニューラルネットワーク(CNN)の構成を、図12を参照して説明する。図12は、第一の処理部822における機械学習モデルの構成1201の一例を示している。なお、本実施例に係る機械学習モデルとしては、実施例1と同様に、例えば、FCN、又はSegNet等を用いることもできる。また、所望の構成に応じて、実施例1で述べたような領域単位で物体認識を行う機械学習モデルを用いてもよい。
図12に示す機械学習モデルは、図6に示す実施例1に係る機械学習モデルの例と同様に、入力値群を加工して出力する処理を担う、複数の層群によって構成される。当該機械学習モデルの構成1201に含まれる層の種類としては、畳み込み層、ダウンサンプリング層、アップサンプリング層、及び合成層がある。なお、これら層の構成や、CNNの構成の変形例については、実施例1に係る機械学習モデルと同様であるため詳細な説明については省略する。なお、本実施例で用いるCNNの構成1201は、実施例1で述べたCNNの構成601と同様に、U-net型の機械学習モデルである。
本実施例に係る第一の処理部822の学習済モデルでは、断層画像1001が入力されると、教師データを用いてトレーニングされた傾向に従って、ラベル画像1002を出力する。第一の処理部822は、ラベル画像1002に基づいて断層画像1001における網膜領域を検出することができる。
なお、図11(b)及び(c)に示すように、画像の領域を分割して学習している場合、第一の処理部822は学習済モデルを用いて、それぞれの矩形領域に対応するラベル画像である矩形領域画像を得る。そのため、第一の処理部822は、各矩形領域において網膜層を検出することができる。この場合、第一の処理部822は、学習済モデルを用いて得たラベル画像である矩形領域画像群のそれぞれを、矩形領域画像群のぞれぞれと同様の位置関係に配置して結合する。これにより、第一の処理部822は、入力された断層画像1001に対応するラベル画像1002を生成することができる。この場合も、第一の処理部822は、生成されたラベル画像1002に基づいて断層画像1001における網膜領域を検出することができる。
ステップS941において、第一の処理部822によって網膜領域が検出されると、処理はステップS942に移行する。ステップS942では、第二の処理部823が、第二の検出処理として、図10(a)に示す断層画像1001において第一の処理部822が検出した網膜領域に基づいて、ルールベースの画像セグメンテーション処理により網膜内層での残りの境界を検出する。
図13(a)乃至(d)を参照して、第二の処理部823による第二の境界検出処理について説明する。図13(a)は入力となる断層画像の一例である断層画像1001を示す。図13(b)は第一の処理部822が出力したラベル画像1002であり、網膜領域のラベル1004とそれ以外に対応するラベル1003,1005を付与した画像である。本実施例に係る第二の処理部823は、ラベル画像1002におけるラベル1004で示される網膜領域の範囲を層検出の対象領域とする。
第二の処理部823は、ラベル画像1002におけるラベル1004で示される網膜領域内の輪郭を検出することで、対象となる境界を検出することができる。図13(c)は第二の処理部823が、処理を行ったエッジ強調処理画像1303を示す。当該第二の処理部823による処理について、以下で説明する。なお、図13(c)及び(d)に示すように、視神経乳頭部については、網膜層が途切れるため、第二の処理部823による境界検出を行わないこととする。
第二の処理部823は、処理の対象とする断層画像1001において、ラベル1004に対応する領域に対して、ノイズ除去とエッジ強調処理を行う。第二の処理部823は、ノイズ除去処理としては、例えばメディアンフィルタやガウシアンフィルタを適用する。また、第二の処理部823は、エッジ強調処理としては、SobelフィルタやHessianフィルタを適用する。
ここで、二次元のHessianフィルタを用いた、二次元断層画像に対するエッジ強調処理について説明する。Hessianフィルタは、ヘッセ行列の2つの固有値(λ1、λ2)の関係に基づいて、二次元濃淡分布の二次局所構造を強調することができる。そのため、本実施例では、ヘッセ行列の固有値と固有ベクトル(e1、e2)の関係を用いて、二次元の線構造を強調する。被検眼についての二次元断層画像における線構造は網膜層の構造に相当するため、当該Hessianフィルタの適用により、網膜層の構造を強調することができる。
なお、厚みの異なる網膜層を検出するには、ヘッセ行列を計算する際に行うガウス関数による平滑化の解像度を変更すればよい。また、二次元のHessianフィルタを適用する際には、画像のXZの物理サイズを合わせるようにデータを変形した後に適用することができる。一般的なOCTの場合、XY方向とZ方向の物理サイズが異なる。そのため、画素毎の網膜層の物理サイズを合わせてフィルタを適用する。なお、XY方向とZ方向の物理サイズは、OCT装置10の設計/構成から把握できるため、当該物理サイズに基づいて、断層画像のデータを変形させることができる。また、物理サイズを正規化しない場合には、ガウス関数による平滑化の解像度を変更することでも近似的に対応できる。
上記では、二次元断層画像での処理について説明したが、Hessianフィルタを適用する対象はこれに限らない。断層画像を撮影した際のデータ構造がラスタスキャンによる三次元断層画像である場合、三次元のHessianフィルタを適用することも可能である。この場合、画像処理部82によって、隣接する断層画像間においてXZ方向の位置合わせ処理を行った後に、第二の処理部823がヘッセ行列の3つの固有値(λ1、λ2、λ3)の関係に基づいて、三次元濃淡分布の二次局所構造を強調することができる。そのため、ヘッセ行列の固有値と固有ベクトル(e1、e2、e3)の関係を用いて三次元の層構造を強調することで、三次元的にエッジを強調することも可能である。
エッジ強調処理画像1303においては、エッジを強調した部分が白線1304として現れる。なお、断層画像1001における、ラベル1004に対応しない領域については、エッジ検出されない領域として扱うことができる。また、ここでは、Hessianフィルタを用いてエッジ強調処理を行う構成について説明したが、エッジ強調処理の処理方法はこれに限られず、既存の任意の方法によって行われてよい。
図13(d)は、第二の処理部823が、ラベル画像1002とエッジ強調処理画像1303を用いて検出した網膜層の境界を示す境界画像1305を示す。境界画像1305においては、黒線1306が境界の例を示す。第二の処理部823が、ラベル画像1002とエッジ強調処理画像1303から網膜層の境界を検出する処理について、以下で説明する。
第二の処理部823は、エッジ強調処理画像1303からエッジ強調された境界を検出する。本実施例では、第一の処理部822が既にILMとNFLとの境界とRPEについて検出しているので、第二の処理部823は、続けて、ISOS、NFLとGCL境界を検出する。なお、図示しないが、その他の境界として、外網状層(OPL)と外顆粒層(ONL)との境界、内網状層(IPL)と内顆粒層(INL)との境界、INLとOPLとの境界、GCLとIPLとの境界等を検出してもよい。
境界の検出方法としては、各Aスキャンにおいてエッジ強度が強い箇所を境界候補として複数検出し、隣接するAスキャンにおいて境界候補同士の連続性を基に、点(エッジ強度が強い箇所)を線としてつなげる処理を行う。また、第二の処理部823は、点を線としてつなげた場合に、線の滑らかさを評価することで、外れ値を除去することができる。より具体的には、例えば、つなげた点同士のZ方向の位置を比較し、所定の閾値よりもZ方向の位置の差が大きい場合には、新しくつなげられた点を外れ値として判断し、つなげる処理から除外することができる。また、外れ値を除去した場合、除外した点のAスキャン位置に隣接するAスキャンにおける境界候補を線としてつなげてもよい。なお、外れ値の除去方法はこれに限られず、既存の任意の方法によって行われてよい。
第二の処理部823は、点をつなげて形成した各線について、網膜層の境界のZ方向の上下の距離や位置関係に基づいて、対応する境界を決定する。なお、各Aスキャンにおいて外れ値を除去した結果として検出された境界がない場合には、周囲の境界から補間で求めてもよい。また、周囲の境界からエッジを頼りに水平方向(X又はY方向)に境界候補を探索していき、周囲の境界から探索した境界候補を基にして再度、境界を決定するようにしてもよい。
その後、第二の処理部823は、検出した境界に対して、境界の形状を滑らかに補正する処理を実行する。例えば、SnakesやLevel Set法等の動的輪郭モデル等により、画像特徴と形状特徴とを用いて境界の形状を滑らかにしてもよい。また、境界形状の座標値を信号による時系列データとみなして、Savitzky-Golayフィルタや、単純移動平均、加重移動平均、指数移動平均等の平滑化処理で形状を滑らかにしてもよい。
このような処理により、第二の処理部823は、第一の処理部822が検出した網膜領域内の網膜層を検出することができる。なお、前述した第二の処理部823による網膜層の検出処理は一例であり、既存の任意のセグメンテーション処理を用いて網膜層を検出することもできる。第二の処理部823が網膜層を検出すると、処理はステップS305に移行する。以降の処理は実施例1と同様であるため説明を省略する。
上記のように、本実施例に係る画像処理装置80は、取得部21と、第一の処理部822と、第二の処理部823とを備える。取得部21は、被検眼の断層画像を取得する。第一の処理部822は、学習済モデルを用いて、断層画像において被検眼の複数の網膜層のうち少なくとも一つの網膜層を検出するための第一の検出処理を実行する。第二の処理部823は、学習済モデルを用いずに、断層画像において複数の網膜層のうち少なくとも一つの網膜層を検出するための第二の検出処理を実行する。
具体的には、第二の処理部823は、第二の検出処理によって、第一の検出処理により検出された少なくとも一つの網膜層以外の少なくとも一つの網膜層を検出する。特に本実施例では、第一の検出処理は、被検眼の内境界膜と神経線維層との境界から視細胞内節外節接合部、網膜色素上皮層、及びブルッフ膜のいずれかまでの層を検出する処理である。また、第二の検出処理は、第一の検出処理の後に行われ、第一の検出処理により検出した層に含まれる、すなわち検出した層の間の少なくとも一つの網膜層を検出する処理である。
本実施例に係る画像処理装置80では、疾患や部位等によらず境界検出を行うことができる。また、機械学習モデルが出力した領域に対して、画像特徴による境界検出を併用することで境界検出の精度を向上させることができる。さらに、機械学習の過程において、学習時には網膜層かそれ以外の正解データを作成するだけで済むため、学習も効率的に行うことができる。
また、機械学習モデルによって検出する境界が多くなると、出力されるラベル画像や境界画像において誤検出が生じる可能性が増加する場合がある。これに対して、本実施例による機械学習モデルを用いた網膜領域の検出では、検出するべき境界が少ないため、出力されるラベル画像や境界画像における誤検出を抑制することができる。
なお、本実施例においても、実施例1と同様に、第一の処理部822において、複数の機械学習モデルを用いて網膜領域の検出を行うように構成されてもよい。この場合には、網膜領域の検出の精度を向上させることができる。また、追加で学習モデルを増やしていくことも可能であるため、性能が徐々に向上するようなバージョンアップを行うことも期待できる。
(実施例2の変形例)
上述の実施例2では、ルールベースに基づく第二の処理部823による網膜の境界の検出に先立って、前段階として学習済モデルを用いた第一の処理部822による網膜領域の検出を行う例を示した。しかしながら、第一の処理部822による処理及び第二の処理部823による処理の順序はこれに限らない。例えば、第一の処理部822による網膜領域の検出に非常に時間がかかる場合、当該網膜領域の検出処理を第二の処理部823でルールベースにより、先に実行させることも可能である。
このような場合、第二の処理部823は、実施例2で示した第二の処理部823による方法と同様の方法を用いてILMとNFLとの境界と、RPE又はISOSとを最初に検出する。これは、これら境界が、網膜において輝度値が高い場所であり網膜の浅層部と深層部に位置している境界だからである。ILMとNFLとの境界と、RPE又はISOSを検出する場合、他の境界よりも特徴が出やすいため、ノイズ処理を何度か行ったボケの大きな画像に基づいてこれら境界を検出してもよい。この場合には、大局的な特徴だけを検出することができるので、その他の境界の誤検出を防ぐことができる。また、断層画像に対して、動的閾値による二値化処理を行って網膜領域を限定し、その中からILMとNFLとの境界と、RPE又はISOSとを検出するようにしてもよい。なお、第二の処理部823は、ILMとNFLとの境界と、BMとを検出してもよい。
ただし、このようなルールベースで第一の検出対象である網膜領域を検出する場合、前述のように、被検眼の個体差や病変に対するロバスト性が低く初めに網膜領域を誤検出してしまうことがある。この場合には、その後の網膜内層境界の検出が適切に行えないことがある。
その対策として本変形例では、画像処理部82が、網膜領域の誤検出をチェックするパラメータ、例えば、網膜領域境界の不連続性や局所曲率又は局所領域における境界座標の分散等を所定の閾値と比較する。これらパラメータが所定の閾値を超える場合には、画像処理部82が、第二の処理部823における網膜領域の検出が誤検出であると判断する。そして、画像処理部82により、第二の処理部823による網膜領域の検出が誤検出と判断された場合に、第一の処理部822が網膜領域の検出を行うように構成される。
本変形例に従えば、第一の処理部822による網膜領域の検出に非常に時間がかかる場合であっても、多数の検査を行う検者(操作者)の実質的な処理待ち時間を軽減しつつ被検眼の個体差や病変に対するロバスト性を確保することができる。
また、本変形例では、第二の処理部823の処理を第一の処理部822の処理より先に行う構成について述べたが、これらの処理は同時に開始されてもよい。この場合、画像処理部82により、第二の処理部823による網膜領域の検出が誤検出と判断された場合に、第一の処理部822による網膜領域の検出を待って、第二の処理部823が網膜内層の境界検出を行う。なお、第二の処理部823による網膜領域の検出が適切に行われた場合には、第一の処理部822による処理を中断したり、第一の処理部822による処理結果を破棄したりすることができる。
また、第一の処理部822及び第二の処理部823が網膜領域(同一の網膜層)を検出する場合、表示制御部25が、第一の処理部822及び第二の処理部823による検出処理の処理結果を表示部50に表示させてもよい。この場合には、表示部50に表示された処理結果に対する操作者の指示に応じて、第一の処理部822及び第二の処理部823による検出処理の処理結果のいずれかについて第二の処理部823が網膜内層の境界検出を行ってもよい。この場合、第二の処理部823による網膜領域の検出処理を第二の検出処理、第二の処理部823によるその後の網膜内層の境界の検出処理を第三の検出処理として定義してもよい。
(実施例3)
実施例2においては、学習済モデルを用いて網膜領域を検出し、検出された網膜領域に対して網膜内層の境界を検出する例について示した。これに対して、本実施例では、学習済モデルを用いて検出する領域として、網膜領域に限らず、入力データである画像の撮影部位に関して特徴的な領域を検出する。
以下、本実施例に係る画像処理システムによる画像処理について、実施例2による画像処理との違いを中心として説明する。なお、本実施例に係る画像処理システムの構成及び処理手順は、実施例2に係る画像処理システム8の構成及び処理手順と同様であるため、同一の参照符号を用いて示し、説明を省略する。
本実施例に係る第一の処理部822が学習済モデルを用いて検出する領域に関して、図14(a)乃至(d)を参照して説明する。図14(a)乃至(d)では、被検眼の各部位を撮影した画像と第一の処理部822が処理した処理結果のラベル画像の例を示す。
図14(a)は、黄斑部を撮影した場合の断層画像1401及び学習済モデルを用いて得た黄斑部におけるラベル画像1402を示す。ラベル画像1402には、硝子体ラベル1403、ILMからISOSの範囲のラベル1404、ISOSからRPEの範囲のラベル1405、脈絡膜ラベル1406、及び強膜ラベル1407が示されている。
黄斑部に関しては、例えば、出血や新生血管発生などによる網膜全体の厚み、視力に関する視細胞の欠損、又は病的近視による脈絡膜の菲薄化等を捉えるため、形態変化が現れやすい領域毎にラベルを設定して機械学習モデルに事前に学習させる。学習データとしては、黄斑部の断層画像を入力データとし、例えば、硝子体ラベル、ILMからISOSの範囲のラベル、ISOSからRPEの範囲のラベル、脈絡膜ラベル、及び強膜ラベルが付されたラベル画像を出力データとする。これにより、第一の処理部822は、学習済モデルに黄斑部の断層画像を入力することで、上述した形態変化が現れやすい領域毎にラベルを示すラベル画像を取得し、それらラベルの単位で領域を検出することができる。
図14(b)は、視神経乳頭部を撮影した場合の断層画像1411及び学習済モデルを用いて得た視神経乳頭部におけるラベル画像1412を示す。ラベル画像1412には、硝子体ラベル1413、ILMからNFLとGCL境界の範囲のラベル1414、及びNFLとGCLの境界からGCLとIPLの境界の範囲のラベル1415が示されている。さらに、ラベル画像1412には、GCLとIPLの境界からISOSの範囲のラベル1416、及びISOSからRPEの範囲のラベル1417が示されている。また更に、ラベル画像1412には、RPEから深層の範囲のラベル1418、及び篩状板の範囲のラベル1419が示されている。この場合の学習データとしては、視神経乳頭部の断層画像を入力データとし、例えば、硝子体ラベル、ILMからNFLとGCL境界の範囲のラベル、NFLとGCLの境界からGCLとIPLの境界の範囲のラベル、GCLとIPLの境界からISOSの範囲のラベル、ISOSからRPEの範囲のラベル、RPEから深層の範囲のラベル、及び篩状板の範囲のラベルが付されたラベル画像を出力データとする。
図14(c)の正面画像1421は、視神経乳頭部撮影時において、XY面内の正面方向から見た画像であり、眼底画像撮影装置30を用いて撮影された画像である。また、図14(c)のラベル画像1422は、視神経乳頭部の正面画像1421に対して学習済モデルを用いて得たラベル画像である。ラベル画像1422には、視神経乳頭の周辺部のラベル1423、Discラベル1424、及びCupラベル1425が示されている。
視神経乳頭部においては、緑内障によって、神経節細胞の消失や、RPEの端部(RPE-tip)又はブルッフ膜開口端(BMO)、篩状板、及びCupとDisc等の形態変化が現れやすい。そのため、これらの領域毎にラベルを設定して機械学習モデルに事前に学習させる。学習データとしては、視神経乳頭部の正面画像を入力データとし、例えば、視神経乳頭の周辺部のラベル、Discラベル、及びCupラベルが付されたラベル画像を出力データとする。これにより、第一の処理部822は、学習済モデルに視神経乳頭部の画像を入力することで、上述した形態変化が現れやすい領域毎にラベルを示すラベル画像を取得し、それらラベルの単位で領域を検出することができる。
図14(d)は、前眼部を撮影した場合の断層画像1431及び学習済モデルを用いて得た前眼部撮影におけるラベル画像1432が示されている。ラベル画像1432には、角膜ラベル1433、前房ラベル1434、虹彩ラベル1435、及び水晶体ラベル1436が示されている。前眼部の断層画像1431に関しては、後眼部画像とは異なり、前述したような主要な領域を機械学習モデルに事前に学習させる。学習データとしては、前眼部の断層画像を入力データとし、例えば、角膜ラベル、前房ラベル、虹彩ラベル、及び水晶体ラベルが付されたラベル画像を出力データとする。これにより、第一の処理部822は、学習済モデルに前眼部の画像を入力することで、上述した形態変化が現れやすい領域毎にラベルを示すラベル画像を取得し、それらラベルの単位で領域を検出することができる。
本実施例に係る第二の処理部823は、図14(a)、(b)、及び(d)に示す断層画像1401,1411,1431において、第一の処理部822が検出した領域に基づいて残りの境界を検出する。また、第二の処理部823は、検出した境界や境界に挟まれた層領域、又は第一の処理部822が検出した領域の厚さの計測を実施してもよい。
また、第二の処理部823は、図14(c)の正面画像に対してはラベルにより分類された各領域に対して計測を行い各領域の高さ、幅、面積やCup/Disc比を算出することができる。なお、これらの計測や比率の算出については、既存の任意の方法を用いてよい。
このように本実施例に係る第二の処理部823は、第一の処理部822が検出した領域に対応する画像処理アルゴリズムを実行するとともに、領域毎に画像処理アルゴリズムの適用する際のルールを変更することができる。ここでいうルールとは、例えば、検出すべき境界の種類等を含む。例えば、第二の処理部823は、図14(a)に示す黄斑部の断層画像1401について、ラベル1404で示されるILMからISOSの範囲において実施例1と同様に、追加の境界検出を行うようにしてもよい。なお、境界検出方法は実施例1における境界検出方法と同様であってよい。また、第二の処理部823は、黄斑部の断層画像1401について、ILMとNFLの境界、OPLとONLの境界、IPLとINLの境界、INLとOPLの境界、GCLとIPLの境界を検出するように画像処理アルゴリズム及びルールを適用してもよい。このように、第二の処理部823では、領域毎に、所望の構成に応じて任意の画像処理アルゴリズム及びルールが設定されてよい。
上記のように、本実施例に係る画像処理装置80では、第一の処理部822は、入力された画像について撮影部位毎に予め定められた境界を検出する。このため、本実施例では、学習済モデルを用いて検出する領域は網膜領域に限らず、撮影部位に関して特徴的な領域であるため、疾患などのバリエーションなどにも対応できる。なお、第一の処理部822は、入力された画像が網膜の断層画像である場合には、網膜層の少なくとも一つを検出する第一の検出処理として当該撮影部位毎に予め定められた境界を検出することができる。また、第一の処理部822は、入力された画像が網膜の断層画像以外の画像である場合には、第一の検出処理とは異なる処理として当該撮影部位毎に予め定められた境界を検出することができる。なお、実施例1と同様に、断層画像の領域毎に学習を行った複数の学習モデルのそれぞれの出力を合わせて第一の処理部822の最終的な出力を生成してもよい。
また、本実施例に係る画像処理装置80では、第一の検出処理又は第二の検出処理の結果に基づいて、被検眼に関する各領域の高さ(厚さ)、幅、面積やCup/Disc比等の所定の形状特徴が計測されることができる。
(実施例4)
実施例3においては、学習済モデルを用いて検出する領域を網膜領域に限らず、撮影される部位における特徴的な領域を検出する例について示した。これに対して、実施例4では、画像が撮影された撮影条件に応じて、学習済モデルを用いた処理の実行の選択、さらには学習済モデルを用いて検出する領域の絞込みを行う。
以下、図15乃至16(b)を参照して、本実施例に係る画像処理システム150による画像処理について、実施例2に係る画像処理との違いを中心として説明する。なお、実施例2に係る画像処理システム8の構成及び処理と同様である本実施例による画像処理システムの構成及び処理については、同一の参照符号を用いて示し、説明を省略する。
図15は、本実施例に係る画像処理システム150の概略的な構成の一例を示す。本実施例に係る画像処理システム150では、画像処理装置152の画像処理部1520において、断層画像生成部221、第一の処理部822、及び第二の処理部823に加えて、選択部1524が設けられている。
選択部1524は、取得部21が取得した撮影条件群及び第一の処理部822の学習済モデルに関する学習内容(教師データ)に基づいて、断層画像に対して行う画像処理を選択する。具体的には、撮影条件群と学習済モデルの学習に基づいて、第一の処理部822のみで網膜層を検出するか、第一の処理部822で網膜領域を検出し、第二の処理部823で網膜層を検出するか、又は第二の処理部823のみで網膜層を検出するかを選択する。また、選択部1524は、第一の処理部822が複数の学習済モデルを有する場合に、撮影条件群及び第一の処理部822の学習済モデルに関する学習内容に基づいて、第一の処理部822による検出処理に用いる学習済モデルを選択することができる。
次に、図16(a)及び(b)を参照して、本実施例に係る一連の処理について説明する。図16(a)は、本実施例に係る一連の処理のフローチャートであり、図16(b)は、本実施例に係る境界検出処理のフローチャートである。なお、境界検出処理以外の処理については実施例2の処理と同様であるため、説明を省略する。ステップS303において断層画像が生成されると、処理はステップS1604に移行する。処理がステップS1604に移行すると境界検出処理が開始され、処理はステップS1641に移行する。
ステップS1641では、取得部21が生成された断層画像についての撮影条件群を取得し、画像処理部1520が取得された撮影条件群から、第一の処理部822及び第二の処理部823による処理の選択を実行するのに必要な情報を取得する。例えば、これらの条件は、撮影部位、撮影方式、撮影領域、撮影画角、及び画像の解像度等を含むことができる。
ステップS1642では、選択部1524が、ステップS1641で取得された撮影条件に基づいて、第一の処理部822による処理を実行するか否かの選択を行う。ここでは例として、第一の処理部822の学習済モデルについて、視神経乳頭部及び黄斑部のそれぞれ撮影部位毎の教師データを用いて学習が行われた視神経乳頭部用モデルと黄斑部用モデルの2つのみ用意されている場合を考える。また、この場合において、第一の処理部822は、広画角な画像(視神経乳頭部と黄斑部の両方が撮影されているような範囲の画像)に対応できないものとして説明する。
当該例では、選択部1524が、撮影条件のうち、例えば撮影部位名と撮影画角の情報に基づいて、入力画像が視神経乳頭部や黄斑部を単独で撮影した画像と判定した場合には、選択部1524は第一の処理部822による処理を実行することを選択する。これにより、処理はステップS1643に移行する。一方で、選択部1524が、入力画像が視神経乳頭部や黄斑部以外を撮影した画像、又は視神経乳頭部及び黄斑部の両方を含む広画角な画像であると判定した場合には、選択部1524は第一の処理部822による処理を実行しないことを選択する。これにより、処理はステップS1645に移行する。
ステップS1643では、選択部1524は、ステップS1641で取得された撮影条件に基づいて、第一の処理部822が利用する適切な学習済モデルの選択を行う。上述の例では、選択部1524は、例えば撮影部位名と撮影画角の情報に基づいて、入力画像が視神経乳頭部を撮影した画像であると判定した場合には、視神経乳頭部用のモデルを選択する。同様に、選択部1524は、入力画像が黄斑部を撮影した画像であると判定した場合には、黄斑部用のモデルを選択する。
なお、ここでは、学習済モデルが、視神経乳頭部と黄斑部を撮影した画像だけを学習してある場合の例について示したが、学習済モデルの学習内容はこれに限らない。例えば、他の部位について学習した学習済モデルや、視神経乳頭部及び黄斑部を含む広画角な画像を用いて学習が行われた学習済モデルを用いてもよい。
また、撮影部位ではなく撮影方式に応じた学習済モデルが別々に用意されている場合には、撮影方式に応じて処理の選択や学習済モデルの選択が行われてよい。撮影方式の例としては、SD-OCTとSS-OCTの撮影方式があり、両者の撮影方式の違いにより、画質、撮影範囲、及び深さ方向の深達度等が異なる。そのため、これらの撮影方式の異なる画像に対して、適切な処理の選択や学習済モデルを選択するようにしてもよい。なお、学習時に撮影方式に関係なく一緒に学習してある場合には、撮影方式に応じて処理を変更する必要はない。また、学習済モデルが一つしかない場合には、ステップS1643における学習モデルの選択は必要ないため、この処理はスキップすることができる。
ステップS1644では、第一の処理部822がステップS1643で選択された学習済モデルを用いて第一の境界検出処理を行う。なお、この処理に関しては、実施例1乃至3で説明したものを用いることができる。例えば、黄斑部用モデルが、黄斑部における各網膜層の画像セグメンテーション処理について学習している場合には、第一の処理部822は、第一の検出処理として、実施例1と同様に、検出対象となる全ての境界を検出することができる。また、例えば、視神経乳頭部用モデルが、視神経乳頭部における網膜領域を検出する処理について学習している場合には、第一の処理部822は、第一の検出処理として、実施例2と同様に、網膜領域を検出することができる。同様に、黄斑部用モデルが実施例3と同様に、黄斑部の特徴的な領域を検出する処理を学習している場合には、第一の処理部822は、第一の検出処理として、実施例3と同様に、特徴的な領域を検出することができる。なお、具体的な検出方法は、実施例1乃至3における検出方法と同様であるため説明を省略する。
ステップS1645では、選択部1524は、ステップS1641で取得された撮影条件に基づいて、第二の処理部823による処理を実行するか否かを選択する。選択部1524が第二の処理部823による処理を実行することを選択した場合には、処理はステップS1646に移行する。一方で、選択部1524が第二の処理部823による処理を実行しないことを選択した場合には、ステップS1604の処理が終了し、処理はステップS305に移行する。
ここで、ステップS1645における選択部1524の選択処理の例について説明する。第二の処理部823による処理を実行する場合とは、例えば、実施例2及び3で説明したように、第一の処理部822が検出した領域に基づいて、第二の処理部823が境界を検出する場合である。
また、この他に、第一の処理部822が未学習の画像が入力された場合にも第二の処理部823による処理を実行する。この場合には、ステップS1642において、第一の処理部822による処理をスキップすることが選択されるため、第二の処理部823によって、学習済モデルを使用せずにルールベースの画像セグメンテーション処理によって境界検出を行う。
一方で、第二の処理部823による処理を実行しない場合とは、例えば、第一の処理部822が学習済モデルを用いて、対象となる境界を全て検出できる場合である。この場合は、第一の処理部822のみで処理が完結するため、第二の処理部823の処理をスキップすることが可能である。
ただし、第一の処理部822が学習済モデルを用いて、対象となる境界をすべて検出できる場合であっても、第二の処理部823によって、検出された境界に基づいて層厚の計測等を行う場合には、第二の処理部823による処理を実行することが選択されてもよい。一方で、検出された境界に基づく層厚の計測等は第二の処理部823によって行われる構成に限られず、画像処理部1520において行われればよい。そのため、層厚の計測等が行われる場合であっても、第二の処理部823による処理の実行が選択されなくてもよい。
ステップS1646では、選択部1524は、ステップS1641で取得された撮影条件に基づいて、第二の処理部823による処理を実行するために必要な画像処理と画像処理を適用する際のルールの選択を行う。例えば、入力画像が、図14(a)、(b)及び(d)に示すような断層画像である場合においては、選択部1524は、第一の処理部822が検出した領域に基づいて残りの境界を検出するための処理とルールを選択する。
具体的には、例えば、入力画像が図14(a)に示す黄斑部を撮影した断層画像1401の場合には、選択部1524は、黄斑部が正しく層認識できる画像処理とルールを選択する。また、例えば、図14(b)に示す視神経乳頭部を撮影した断層画像1411の場合には、選択部1524は、ブルッフ膜開口端(BMO)、篩状板、Cup、及びDisc等の影響を考慮した視神経乳頭部の例外処理を考慮した画像処理とルールを選択する。さらに、例えば、図14(d)に示す前眼部を撮影した場合の断層画像1431の場合には、選択部1524は、角膜部の更なる層認識を行いうる画像処理とルールを選択する。
さらに、ステップS1647において層境界の検出に加え又は単独で、検出された境界や境界に挟まれた層領域の厚さの計測を実施する場合には、選択部1524は、そのような画像計測機能に必要な画像処理を選択することもできる。
ステップS1647では、第二の処理部823が境界の検出及び/又は検出された境界や領域に対する計測を行う。なお、実施例2及び3で説明したものと同様に、第一の処理部822が検出した領域に基づいて領域内の境界を検出する処理や境界等に対する計測する処理に関しては、説明を省略する。
ここでは、第一の処理部822の学習済モデルが未学習である画像が入力された場合に、第二の処理部823が行う処理の例について説明する。この場合、入力画像から検出されている網膜領域の候補がないため、第二の処理部823は、実施例2の変形例で説明したように、ILMとNFLとの境界と、RPE又はISOSとを最初に検出する。
第二の処理部823は、ILMとNFLとの境界と、RPE又はISOSとを検出した後は、それら境界の間の領域に基づいて残りの境界を検出する。当該検出処理は、実施例2及び3における検出処理と同様であるため、説明を省略する。第二の処理部823がこれらの処理を実行したら、処理はステップS305に移行する。なお、実施例2の変形例と同様に、第二の処理部823は、ILMとNFLとの境界と、BMとを最初に検出してもよい。また、以降の処理については実施例1乃至3における処理と同様であるため説明を省略する。
上記のように、本実施例に係る画像処理装置152では、取得部21は、被検眼の断層画像に関する撮影条件を取得する。画像処理装置152は、撮影条件に基づいて、処理の選択を行う選択部1524を更に備える。選択部1524は、撮影条件に基づいて、第一の検出処理と第二の検出処理のうち少なくとも一つを選択する。
このため、本実施例に係る画像処理装置152では、撮影条件に基づいて、第一の処理部822が実行する学習済モデルによる境界検出の可否、及び第二の処理部823が実行する画像特徴による境界検出の処理実行の要否が判断される。これにより、学習済モデルによる境界検出が特定の画像にだけ対応している場合においても入力画像に応じて処理を適切に行うことができる。そのため、学習モデルが様々な画像のパターンに対応していない場合でも、境界検出処理を確実に実行することができる。従って、機械学習で作成されるさまざまな成熟段階にある機械学習モデルの少なくとも一つと、画像特徴抽出の結果をルールベースで判断して網膜層の境界検出を行う画像処理方法を併用することにより、境界検出の精度を向上させることができる。
また、第一の処理部822は、異なる教師データを用いて機械学習が行われた複数の学習済モデルを含む。さらに、第一の処理部822は、複数の学習済モデルのうち、撮影条件に対応する教師データを用いて機械学習が行われた学習済モデルを用いて、第一の検出処理を実行する。
本実施例によれば、撮影条件に基づいて、適切な学習モデルを用いて網膜層の検出を行うことができ、入力画像に応じてより適切な処理を行うことができる。また、追加で学習モデルを増やしていくことも可能であるため、性能が徐々に向上するようなバージョンアップを行うことも期待できる。さらに、選択部1524によれば、撮影条件に基づいて、第二の処理部823において用いる画像処理とルールの選択を行うことができ、入力画像に応じてより適切な処理を行うことができる。
なお、本実施例では、ステップS1642及びステップS1645において、第一の処理部822及び第二の処理部823による処理の選択を別々に行ったが、処理の選択の手順はこれに限られない。例えば、選択部1524が、一ステップで、第一の処理部822だけによる処理、第二の処理部823だけによる処理、又は第一の処理部822及び第二の処理部823による処理を選択するように構成されてもよい。
(実施例4の変形例)
実施例4では、第一の処理部822と第二の処理部823が境界検出等を双方で分担する場合、又はどちらか一方のみで完結できる場合等、さまざまな場合において適切な処理が可能であることを示した。これに対し、第一の処理部822と第二の処理部823が同一の処理、例えば同一の境界を検出する処理を並行して実行してもよい。
このような例として、例えば、第一の処理部822が学習済モデルを用いて対象となる境界を全て検出でき、且つ、第二の処理部823が第一の検出対象である網膜領域を含む対象となる境界を全て検出できる場合を考える。この場合、第一の処理部822と第二の処理部823はそれぞれの境界を別々に検出した結果を出力する。
これらの検出結果は、それぞれ学習済モデルによる処理とルールベースによる画像処理の結果であるため、両結果には差異が生じる場合がある。そのため、本変形例では、表示制御部25が、この両結果を表示部50に並べて表示させたり、切り替えて表示させたり、重ねて表示させたりすることができる。また、画像処理部1520において、両結果の一致不一致を判定し、表示制御部25が当該不一致部分を強調して表示部50に表示させることもできる。この場合には、操作者に層検出の信頼度を示すことができる。さらに、表示制御部25は、不一致部分を表示部50に表示させ、操作者の指示に応じて、より納得度の高い結果を選択できるようにしてもよい。
(実施例5)
実施例2乃至4においては、学習済モデルを用いて網膜領域を検出し、検出された網膜領域に対してルールベースで網膜内層の境界を検出する例について示した。これに対し、実施例5では、学習済モデルを用いて検出した領域に対して、医学的特徴に基づいて補正を行う。
以下、図17乃至19(d)を参照して、本実施例に係る画像処理システム170による画像処理について、実施例2に係る画像処理との違いを中心として説明する。なお、実施例2に係る画像処理システム8の構成及び処理と同様である本実施例による画像処理システムの構成及び処理については、同一の参照符号を用いて示し、説明を省略する。
図17は、本実施例に係る画像処理システム170の概略的な構成の一例を示す。本実施例に係る画像処理システム170における画像処理装置172の画像処理部1720には、断層画像生成部221、第一の処理部822、及び第二の処理部823に加えて、補正部1724が設けられている。
補正部1724は、第一の処理部822が学習済モデルを用いて得たラベル画像について、眼の医学的特徴に基づいて、ラベル付けされた領域を補正する。これにより、画像処理部1720はより適切に網膜領域や特徴領域を検出することができる。
次に、図18(a)及び18(b)を参照して、本実施例に係る一連の処理について説明する。図18(a)は、本実施例に係る一連の処理のフローチャートであり、図18(b)は、本実施例に係る境界検出のフローチャートである。なお、境界検出処理以外の処理については実施例2の処理と同様であるため、説明を省略する。ステップS303において断層画像が生成されると、処理はステップS1804に移行する。処理がステップS1804に移行し、ステップS941において第一の処理部822による処理が実行されると、処理はステップS1841に移行する。
ステップS1841では、補正部1724が、ステップS941において第一の処理部822によって検出された網膜領域を補正する。より具体的には、第一の処理部822が学習済モデルを用いて得たラベル画像について、眼の医学的特徴に基づいて、ラベル付けされた領域を補正する。
ここで、図19(a)乃至(d)を参照して、本実施例に係る補正部1724による補正処理について説明する。図19(a)は、第一の処理部822への入力となる断層画像1901の一例を示す。図19(b)は、断層画像1901を入力として第一の処理部822が学習済モデルを用いて得たラベル画像1902の一例を示す。ラベル画像1902には、網膜内層のラベル1904、網膜よりも浅層側(硝子体側)のラベル1903、及び網膜よりも深層側(脈絡膜側)のラベル1905が示されている。
なお、当該ラベル付けについては、学習済モデルの学習時のラベルの設定に基づいている。そのため、ラベルの種類はこれに限られるものではなく、実施例3で示したように網膜層内に複数のラベルを設定してもよい。その場合においても、本実施例に係る補正処理を適用することが可能である。
本実施例において、第一の処理部822は学習済モデルを用いて画素単位で画像セグメンテーション処理を行う。そのため、図19(b)のラベル1903’,1904’に示すように部分的に誤検出してしまうことがある。補正部1724は、眼の医学的特徴に基づいてこれらの誤検出を補正する。
第一の処理部822では、検出したラベル毎にラベリング処理を行い、隣接する画素において同じラベルをもつ画素は一つの領域として統合される。本実施例において付与されるラベルの種類は、網膜内層のラベル1904、網膜よりも浅層側(硝子体側)のラベル1903、及び網膜よりも深層側(脈絡膜側)のラベル1905の3種類である。また、網膜の断層画像を撮影した画像を対象としているため、これらラベルが現れる順番は、画像に対して、上からラベル1903、ラベル1904、ラベル1905の順となる。なお、脈絡膜側を強調して撮影するEDI(Enhanced Depth Imaging)モードの場合には、網膜が反転して撮影されるため、ラベルが現れる順番は画像の上からラベル1905、ラベル1904、ラベル1903の順となる。
上述したように、第一の処理部822に入力する画像は網膜の断層画像であるため、撮影時の条件や撮影部位から医学的特徴に基づいてラベルの位置関係を推定することができる。そこで、補正部1724は、ラベリングされた領域毎に検出結果を特定し、誤検出とみなされる領域を、医学的特徴に基づいて推定される領域に補正する。
具体的には、補正部1724は、例えば、ラベリングされた領域の面積が大きい方から領域を特定していき、ラベリングされた領域の面積が閾値以下のものや、既に特定された領域から空間的な距離が離れているものは誤検出であると判断する。その後、補正部1724は、誤検出であると判断したラベル情報をリセットする。この場合の例を図19(c)に示す。図19(c)に示される領域1910は、補正部1724によって、誤検出とみなされた領域である、ラベル1903’及びラベル1904’で示された領域についてラベル情報がリセットされた領域を示す。
補正部1724は、ラベル情報をリセットした領域1910に対して、周辺のラベル情報から推測されるラベル情報を割り当てる。図19(c)に示す例では、ラベル1903で囲まれた領域1910についてラベル1903を割り当て、ラベル1905で囲まれた領域1910についてラベル1905を割り当てる。
補正部1724によるこれらの処理により、図19(d)に示すように、最終的なラベル画像1920が出力される。これにより、画像処理部1720は、より適切に網膜領域を検出することができる。
補正部1724による補正処理が行われると、処理はステップS942に移行する。ステップS942では、第二の処理部823が補正された網膜領域に基づいて、実施例2と同様に、第二の境界検出処理を行う。以降の処理は、実施例2の処理と同様であるため説明を省略する。
上記のように、本実施例に係る画像処理装置172は、網膜層における医学的特徴に基づいて、第一の処理部822が検出した網膜層の構造を補正する補正部1724を更に備える。
このため、本実施例に係る画像処理装置172では、学習済モデルを用いて検出した領域に対して医学的特徴を用いて領域の補正を行うことができる。そのため、画素単位で画像を検出する場合においても、誤検出を低減することができる。
なお、本実施例では、実施例2に係る処理に、補正部1724による補正処理を加えたが、実施例3や実施例4に係る処理に当該補正処理を加えてもよい。
(実施例6)
実施例1乃至5においては、撮影した断層画像について、学習済モデルを用いて網膜内層の境界や網膜領域を検出した。これに対し、本実施例では、別の学習済モデルを用いて断層画像の画質を改善した高画質画像を生成し、高画質画像に対して、実施例1や2等に係る学習済モデルを用いた境界検出や領域検出を行う。なお、本実施例における画質の改善とは、ノイズの低減や、撮影対象を観察しやすい色や階調への変換、解像度や空間分解能の向上、及び解像度の低下を抑えた画像サイズの拡大等を含む。
以下、本実施例に係る画像処理システムによる画像処理について、実施例2による画像処理との違いを中心として説明する。なお、本実施例に係る画像処理システムの構成及び処理手順は、実施例2に係る画像処理システム8の構成及び処理手順と同様であるため、同一の参照符号を用いて示し、説明を省略する。
本実施例において、第一の処理部822は、網膜領域を検出するための機械学習モデルとは別の機械学習モデルである高画質化モデルに関する学習済モデルを用いて入力画像の画質を改善する処理を行う。高画質化モデルは、任意の機械学習アルゴリズムによる機械学習モデルに対して、事前に適切な教師データを用いてトレーニングし、入力画像の画質を改善した画像を出力する学習済モデルである。
ここで、本実施例に係る高画質化モデルの教師データの一例を図20に示す。図20において、断層画像2001はOCTの撮影によって取得された断層画像の一例を示し、断層画像2002は断層画像2001を高画質化処理した断層画像を示す。断層画像2001は入力データの一例を示し、断層画像2002を出力データの一例を示し、これらの画像によって構成されるペア群により教師データが構成されている。
なお、高画質化処理としては、空間的に同じ位置を複数回撮影した断層画像について位置合わせを行い、それら位置合わせ済みの断層画像を加算平均処理することが挙げられる。なお、高画質化処理は加算平均処理に限られず、例えば、平滑化フィルタを用いた処理や最大事後確率推定処理(MAP推定処理)、階調変換処理等であってもよい。また、高画質化処理された画像としては、例えば、ノイズ除去とエッジ強調などのフィルタ処理を行った画像でもよいし、低輝度な画像から高輝度な画像とするようなコントラストが調整された画像を用いてもよい。さらに、高画質化モデルに係る教師データの出力データは、高画質な画像であればよいため、入力データである断層画像を撮影した際のOCT装置よりも高性能なOCT装置を用いて撮影された断層画像や、高負荷な設定により撮影された断層画像であってもよい。
第一の処理部822は、このような教師データを用いてトレーニングされた高画質化モデルに対して、OCTの撮影によって取得された断層画像を入力し、高画質化された断層画像を取得する。なお、第一の処理部822は、ラスタスキャンにより網膜を三次元的にスキャンしたボリュームの断層画像を高画質化モデルに入力することで、高画質化されたボリューム断層画像を取得することができる。
第一の処理部822は、高画質化モデルを用いて取得した高画質画像を入力として、実施例2乃至5と同様に、学習済モデルを用いて網膜領域又は特徴領域を検出する。
また、第二の処理部823は、第一の処理部822で取得した高画質画像及び検出した網膜領域や特徴領域に基づいて、網膜層を検出することができる。
上記のように、本実施例に係る画像処理装置80では、第一の処理部822は学習済モデルを用いて高画質化された断層画像について、第一の検出処理を行う。
これにより、本実施例に係る画像処理装置80は、機械学習モデルの学習済モデルを用いて入力画像の画質を改善し、画質を改善した画像に対して網膜層の検出を行うことができる。そのため、ノイズ低減等の画質改善がなされた画像を用いて網膜層の検出を行うことができ、誤検出を低減することができる。
なお、本実施例では、実施例2に係る処理に、入力画像である断層画像を高画質化する処理を加えたが、実施例1や実施例3乃至5に係る処理に、当該高画質化の処理を加えてもよい。
また、本実施例では、高画質化を行う高画質化モデルを、検出処理を行う機械学習モデルとは別の機械学習モデルとした。しかしながら、検出処理を行う機械学習モデルに当該高画質化処理を学習させ、高画質化と検出処理の両方を行うように機械学習モデルを構成してもよい。
なお、本実施例では、第一の処理部822が高画質化処理に関する学習済モデル(高画質化モデル)を用いて断層画像の画質を改善した高画質画像を生成した。しかしながら、高画質化モデルを用いて高画質画像を生成する構成要素は第一の処理部822に限られない。例えば、第一の処理部822とは別の第三の処理部(高画質化部)を設け、第三の処理部が高画質化モデルを用いて高画質画像を生成してもよい。このため、第一の処理部822又は当該第三の処理部は、高画質化用の学習済モデルを用いて、断層画像から、当該断層画像と比べて高画質化された断層画像を生成する生成部の一例として機能することができる。なお、第三の処理部や高画質化モデルは、CPUやMPU、GPU、FPGA等のプロセッサーによって実行されるソフトウェアモジュール等で構成されてもよいし、ASIC等の特定の機能を果たす回路等によって構成されてもよい。
(実施例7)
次に、図21(a)乃至23を参照して、実施例7に係る画像処理装置80について説明する。実施例6では、第一の処理部822は、高画質化モデルを用いて高画質化された断層画像について第一の検出処理を行い、網膜領域又は特徴領域を検出した。これに関し、第一の処理部822は、他の画像について高画質化モデルを用いて高画質化処理を行ってもよく、表示制御部25は、高画質化された各種画像を表示部50に表示させてもよい。例えば、第一の処理部822は、第一の検出処理及び第二の検出処理により検出された網膜層の情報(例えば境界画像)に基づいて生成された輝度のEn-Face画像やOCTA正面画像等を高画質化処理してもよい。また、表示制御部25は、第一の処理部822によって高画質化処理された断層画像、輝度のEn-Face画像、及びOCTA正面画像の少なくとも1つを表示部50に表示させることができる。なお、高画質化し表示する画像は、SLO画像や、眼底カメラ等で取得された眼底画像、蛍光眼底画像等であってもよい。ここでSLO画像とは、不図示のSLO(Scanning Laser Ophthalmoscope:走査型検眼鏡)光学系によって取得した眼底の正面画像である。
ここで、各種画像を高画質化処理するための高画質化モデルの学習データは、各種画像について、実施例6に係る高画質化モデルの学習データと同様に、高画質化処理前の画像を入力データとし、高画質化処理後の画像を出力データとする。なお、学習データに関する高画質化処理については、実施例6と同様に、例えば、加算平均処理や、平滑化フィルタを用いた処理、最大事後確率推定処理(MAP推定処理)、階調変換処理等であってよい。また、高画質化処理後の画像としては、例えば、ノイズ除去とエッジ強調などのフィルタ処理を行った画像でもよいし、低輝度な画像から高輝度な画像とするようなコントラストが調整された画像を用いてもよい。さらに、高画質化モデルに係る教師データの出力データは、高画質な画像であればよいため、入力データである画像を撮影した際のOCT装置よりも高性能なOCT装置を用いて撮影された画像や、高負荷な設定により撮影された画像であってもよい。
また、高画質化モデルは、高画質化処理を行う画像の種類毎に用意されてもよい。例えば、断層画像用の高画質化モデルや輝度のEn-Face画像用の高画質化モデル、OCTA正面画像用の高画質化モデルが用意されてよい。さらに、輝度のEn-Face画像用の高画質化モデルやOCTA正面画像用の高画質化モデルは、画像の生成に係る深度範囲(生成範囲)について異なる深度範囲の画像を網羅的に学習した学習済モデルであってよい。異なる深度範囲の画像としては、例えば、図21(a)に示すように、表層(Im2110)、深層(Im2120)、外層(Im2130)、及び脈絡膜血管網(Im1940)などの画像が含まれてよい。また、輝度のEn-Face画像用の高画質化モデルやOCTA正面画像用の高画質化モデルは、異なる深度範囲毎の画像を学習した複数の高画質化モデルが用意されてもよい。
また、断層画像用の高画質化モデルを用意する場合には、異なる副走査(Y)方向の位置で得られた断層画像を網羅的に学習した学習済モデルであってよい。図21(b)に示す断層画像Im2151~Im2153は、異なる副走査方向の位置で得られた断層画像の例である。ただし、撮影部位(例えば、黄斑部中心、視神経乳頭部中心)が異なる場所を撮影した画像の場合には、部位ごとに別々に学習をするようにしてもよいし、撮影部位を気にせずに一緒に学習をするようにしてもよい。なお、高画質化する断層画像としては、輝度の断層画像と、モーションコントラストデータの断層画像とが含まれてよい。ただし、輝度の断層画像とモーションコントラストデータの断層画像においては画像特徴量が大きく異なるため、それぞれの高画質化モデルとして別々に学習を行ってもよい。
以下、本実施例に係る画像処理システムによる画像処理について、実施例6による画像処理との違いを中心として説明する。なお、本実施例に係る画像処理システムの構成及び処理手順は、実施例6に係る画像処理システム8の構成及び処理手順と同様であるため、同一の参照符号を用いて示し、説明を省略する。
本実施例では、第一の処理部822が高画質化処理を行った画像を表示制御部25が表示部50に表示を行う例について説明を行う。なお、本実施例では、図22(a)及び(b)を用いて説明を行うが表示画面はこれに限らない。経過観察のように、異なる日時で得た複数の画像を並べて表示する表示画面においても同様に高画質化処理(画質向上処理)は適用可能である。また、撮影確認画面のように、検者が撮影直後に撮影成否を確認する表示画面においても同様に高画質化処理は適用可能である。表示制御部25は、第一の処理部822が生成した複数の高画質画像や高画質化を行っていない低画質画像を表示部50に表示させることができる。また、表示制御部25は、表示部50に表示された複数の高画質画像や高画質化を行っていない低画質画像について、検者の指示に応じて選択された低画質画像及び高画質画像をそれぞれ表示部50に表示させることができる。また、画像処理装置80は、当該検者の指示に応じて選択された低画質画像及び高画質画像を外部に出力することもできる。
以下、図22(a)及び(b)を参照して、本実施例に係るインターフェースの表示画面2200の一例を示す。表示画面2200は画面全体を示し、表示画面2200には、患者タブ2201、撮影タブ2202、レポートタブ2203、設定タブ2204が示されている。また、レポートタブ2203における斜線は、レポート画面のアクティブ状態を表している。本実施例においては、レポート画面を表示する例について説明する。
図22(a)に示されるレポート画面には、SLO画像Im2205、OCTA正面画像Im2207,2208、輝度のEn-Face画像Im2209、断層画像Im2211,2212、及びボタン2220が示されている。また、SLO画像Im2205には、OCTA正面画像Im2207に対応するOCTA正面画像Im2206が重畳表示されている。さらに、断層画像Im2211,2212には、それぞれOCTA正面画像Im2207,Im2208の深度範囲の境界線2213,2214が重畳表示されている。ボタン2220は、高画質化処理の実行を指定するためのボタンである。ボタン2220は、後述するように、高画質画像の表示を指示するためのボタンであってもよい。
本実施例において、高画質化処理の実行はボタン2220を指定して行うか、データベースに保存(記憶)されている情報に基づいて実行の有無を判断する。初めに、検者からの指示に応じてボタン2220を指定することで高画質画像の表示と低画質画像の表示を切り替える例について説明する。なお、以下、高画質化処理の対象画像はOCTA正面画像として説明する。
なお、OCTA正面画像Im2207,Im2208の深度範囲は、第一の検出処理及び第二の検出処理により検出された網膜層の情報を用いて定められてよい。深度範囲は、例えば、検出された網膜層に関する2つの層境界の間の範囲としてもよいし、検出された網膜層に関する2つの層境界の一方を基準として、より深い方向又はより浅い方向に所定の画素数分だけ含んだ範囲であってもよい。また、深度範囲は、例えば、検出された網膜層に関する2つの層境界の間の範囲から、操作者の指示に応じて変更された(オフセットされた)範囲であってもよい。
検者がレポートタブ2203を指定してレポート画面に遷移した際には、表示制御部25は、低画質なOCTA正面画像Im2207,Im2208を表示する。その後、検者がボタン2220を指定することで、第一の処理部822は画面に表示されているOCTA正面画像Im2207,Im2208に対して高画質化処理を実行する。高画質化処理が完了後、表示制御部25は、第一の処理部822が生成した高画質画像をレポート画面に表示する。なお、OCTA正面画像Im2206は、OCTA正面画像Im2207をSLO画像Im2205に重畳表示しているものであるため、表示制御部25は、OCTA正面Im2206についても高画質化処理した画像を表示させることができる。また、表示制御部25は、ボタン2220の表示をアクティブ状態に変更し、高画質化処理を実行したことが分かるような表示とすることができる。
ここで、第一の処理部822における処理の実行は、検者がボタン2220を指定したタイミングに限る必要はない。レポート画面を開く際に表示するOCTA正面画像Im2207,Im2208の種類は事前に分かっているため、第一の処理部822は、表示される画面がレポート画面に遷移する際に高画質化処理の実行をしてもよい。そして、ボタン2220が押下されたタイミングで、表示制御部25が高画質画像をレポート画面に表示するようにしてもよい。さらに、検者からの指示に応じて、又はレポート画面に遷移する際に高画質化処理を行う画像の種類は2種類である必要はない。表示する可能性の高い画像、例えば、図21(a)で示すような表層(Im2110)、深層(Im2120)、外層(Im2130)、及び脈絡膜血管網(Im2140)などの複数のOCTA正面画像に対して処理を行うようにしてもよい。この場合、高画質化処理を行った画像を一時的にメモリに記憶、あるいはデータベースに記憶しておくようにしてもよい。
次に、データベースに保存(記録)されている情報に基づいて高画質化処理を実行する場合について説明する。データベースに高画質化処理の実行を行う状態が保存されている場合、レポート画面に遷移した際に、第一の処理部822が高画質化処理を実行して得た高画質画像を表示制御部25がデフォルトで表示部50に表示させる。そして、表示制御部25が、ボタン2220をアクティブ状態としてデフォルトで表示させることで、検者に対しては高画質化処理を実行して得た高画質画像が表示されていることが分かるように構成することができる。検者は、高画質化処理前の低画質画像を表示したい場合には、ボタン2220を指定してアクティブ状態を解除することで、表示制御部25が低画質画像を表示部50に表示させることができる。この際、検者は、表示される画像を高画質画像に戻したい場合には、ボタン2220を指定してアクティブ状態とすることで、表示制御部25が高画質画像を表示部50に再び表示させる。
データベースへの高画質化処理の実行有無は、データベースに保存されているデータ全体に対して共通、及び撮影データ毎(検査毎)など、階層別に指定するものとする。例えば、データベース全体に対して高画質化処理を実行する状態を保存してある場合において、個別の撮影データ(個別の検査)に対して、検者が高画質化処理を実行しない状態を保存することができる。この場合、高画質化処理を実行しないとした状態が保存された個別の撮影データについては次回表示する際に高画質化処理を実行しない状態で表示を行うことができる。このような構成によれば、撮影データ単位(検査単位)で高画質化処理の実行の有無が指定されていない場合、データベース全体に対して指定されている情報に基づいて処理を実行することができる。また、撮影データ単位(検査単位)で指定されている場合には、その情報に基づいて個別に処理を実行することができる。
なお、撮影データ毎(検査毎)に高画質化処理の実行状態を保存するために、不図示のユーザーインターフェース(例えば、保存ボタン)を用いてもよい。また、他の撮影データ(他の検査)や他の患者データに遷移(例えば、検者からの指示に応じてレポート画面以外の表示画面に変更)する際に、表示状態(例えば、ボタン2220の状態)に基づいて、高画質化処理の実行を行う状態が保存されるようにしてもよい。
本実施例では、OCTA正面画像として、OCTA正面画像Im2207,Im2208を表示する例を示しているが、表示するOCTA正面画像は検者の指定により変更することが可能である。そのため、高画質化処理の実行が指定されている場合(ボタン2220がアクティブ状態)における、表示する画像の変更について説明する。
表示する画像の変更は、不図示のユーザーインターフェース(例えば、コンボボックス)を用いて行うことができる。例えば、検者が画像の種類を表層から脈絡膜血管網に変更した場合には、第一の処理部822は脈絡膜血管網画像に対して高画質化処理を実行し、表示制御部25は第一の処理部822が生成した高画質な画像をレポート画面に表示する。すなわち、表示制御部25は、検者からの指示に応じて、第一の深度範囲の高画質画像の表示を、第一の深度範囲とは少なくとも一部が異なる第二の深度範囲の高画質画像の表示に変更してもよい。このとき、表示制御部25は、検者からの指示に応じて第一の深度範囲が第二の深度範囲に変更されることにより、第一の深度範囲の高画質画像の表示を、第二の深度範囲の高画質画像の表示に変更してもよい。なお、上述したようにレポート画面遷移時に表示する可能性の高い画像に対しては、既に高画質画像が生成済みである場合、表示制御部25は生成済みの高画質な画像を表示すればよい。
また、画像の種類の変更方法は上記したものに限らず、基準となる層やオフセットの値を変えて異なる深度範囲を設定したOCTA正面画像を生成し、生成したOCTA正面画像に高画質化処理を実行した高画質画像を表示させることも可能である。その場合、基準となる層、又はオフセット値が変更された時に、第一の処理部822は任意のOCTA正面画像に対して高画質化処理を実行し、表示制御部25は高画質画像をレポート画面に表示する。なお、基準となる層やオフセット値の変更は、不図示のユーザーインターフェース(例えば、コンボボックスやテキストボックス)を用いて行われることができる。また、断層画像Im2211,Im2212にそれぞれ重畳表示している境界線2213,2214のいずれかをドラッグ(層境界を移動)することで、OCTA正面画像の深度範囲(生成範囲)を変更することもできる。
境界線をドラッグによって変更する場合、高画質化処理の実行命令が連続的に実施される。そのため、第一の処理部822は実行命令に対して常に処理を行ってもよいし、ドラッグによる層境界の変更後に実行するようにしてもよい。又は、高画質化処理の実行は連続的に命令されるが、次の命令が来た時点で前回の命令をキャンセルし、最新の命令を実行するようにしてもよい。
なお、高画質化処理には比較的時間がかかる場合がある。このため、上述したどのようなタイミングで命令が実行されたとしても、高画質画像が表示されるまでに比較的時間がかかる場合がある。そこで、検者からの指示に応じてOCTA正面画像を生成するための深度範囲が設定されてから、高画質画像が表示されるまでの間、該設定された深度範囲に対応する低画質なOCTA正面画像(低画質画像)が表示されてもよい。すなわち、上記深度範囲が設定されると、該設定された深度範囲に対応する低画質なOCTA正面画像(低画質画像)が表示され、高画質化処理が終了すると、該低画質なOCTA正面画像の表示が高画質画像の表示に変更されるように構成されてもよい。また、上記深度範囲が設定されてから、高画質画像が表示されるまでの間、高画質化処理が実行されていることを示す情報が表示されてもよい。なお、これらの処理は、高画質化処理の実行が既に指定されている状態(ボタン2220がアクティブ状態)を前提とする場合に適用される構成に限られない。例えば、検者からの指示に応じて高画質化処理の実行が指示された際に、高画質画像が表示されるまでの間においても、これらの処理を適用することが可能である。
本実施例では、OCTA正面画像として、異なる層に関するOCTA正面画像Im2207,2108を表示し、低画質と高画質な画像は切り替えて表示する例を示したが、表示される画像はこれに限らない。例えば、OCTA正面画像Im2207として低画質なOCTA正面画像、OCTA正面画像Im2208として高画質なOCTA正面画像を並べて表示するようにしてもよい。画像を切り替えて表示する場合には、同じ場所で画像を切り替えるので変化がある部分の比較を行いやすく、並べて表示する場合には、同時に画像を表示することができるので画像全体を比較しやすい。
次に、図22(a)及び(b)を用いて、画面遷移における高画質化処理の実行について説明を行う。図22(b)は、図22(a)におけるOCTA正面画像Im2207を拡大表示した画面例である。図22(b)においても、図22(a)と同様にボタン2220を表示する。図22(a)から図22(b)への画面遷移は、例えば、OCTA正面画像Im2207をダブルクリックすることで遷移し、図22(b)から図22(a)へは閉じるボタン2230で遷移する。なお、画面遷移に関しては、ここで示した方法に限らず、不図示のユーザーインターフェースを用いてもよい。
画面遷移の際に高画質化処理の実行が指定されている場合(ボタン2220がアクティブ)、画面遷移時においてもその状態を保つ。すなわち、図22(a)の画面で高画質画像を表示している状態で図22(b)の画面に遷移する場合、図22(b)の画面においても高画質画像を表示する。そして、ボタン2220はアクティブ状態にする。図22(b)から図22(b)へ遷移する場合にも同様である。図22(b)において、ボタン2220を指定して低画質画像に表示を切り替えることもできる。
画面遷移に関して、ここで示した画面に限らず、経過観察用の表示画面、又はパノラマ用の表示画面など同じ撮影データを表示する画面への遷移であれば、高画質画像の表示状態を保ったまま遷移を行うことができる。すなわち、遷移後の表示画面において、遷移前の表示画面におけるボタン2220の状態に対応する画像が表示されることができる。例えば、遷移前の表示画面におけるボタン2220がアクティブ状態であれば、遷移後の表示画面において高画質画像が表示される。また、例えば、遷移前の表示画面におけるボタン2220のアクティブ状態が解除されていれば、遷移後の表示画面において低画質画像が表示される。なお、経過観察用の表示画面におけるボタン2220がアクティブ状態になると、経過観察用の表示画面に並べて表示される異なる日時(異なる検査日)で得た複数の画像が高画質画像に切り換わるようにしてもよい。すなわち、経過観察用の表示画面におけるボタン2220がアクティブ状態になると、異なる日時で得た複数の画像に対して一括で反映されるように構成してもよい。
なお、経過観察用の表示画面の例を、図23に示す。検者からの指示に応じてタブ2301が選択されると、図23のように、経過観察用の表示画面が表示される。このとき、OCTA正面画像の深度範囲を、リストボックス2302,2303に表示された既定の深度範囲セットから検者が所望するセットを選択することで変更できる。例えば、リストボックス2302では網膜表層が選択され、また、リストボックス2303では網膜深層が選択されている。上側の表示領域には網膜表層のOCTA正面画像の解析結果が表示され、また、下側の表示領域には網膜深層のOCTA正面画像の解析結果が表示されている。深度範囲が選択されると、異なる日時の複数の画像について、選択された深度範囲の複数のOCTA正面画像の解析結果の並列表示に一括して変更される。
このとき、解析結果の表示を非選択状態にすると、異なる日時の複数のOCTA正面画像の並列表示に一括して変更されてもよい。そして、検者からの指示に応じてボタン2220が指定されると、複数のOCTA正面画像の表示が複数の高画質画像の表示に一括して変更される。
また、解析結果の表示が選択状態である場合には、検者からの指示に応じてボタン2220が指定されると、複数のOCTA正面画像の解析結果の表示が複数の高画質画像の解析結果の表示に一括して変更される。ここで、解析結果の表示は、解析結果を任意の透明度により画像に重畳表示させたものであってもよい。このとき、画像の表示から解析結果の表示への変更は、例えば、表示されている画像に対して任意の透明度により解析結果を重畳させた状態に変更したものであってもよい。また、画像の表示から解析結果の表示への変更は、例えば、解析結果と画像とを任意の透明度によりブレンド処理して得た画像(例えば、二次元マップ)の表示への変更であってもよい。
また、深度範囲の指定に用いる層境界の種類とオフセット位置をそれぞれ、ユーザーインターフェース2305,2306から一括して変更することができる。なお、層境界の種類やオフセット位置を変更するためのユーザーインターフェース2305,2306は一例であり、他の任意の態様のインターフェースを用いてよい。なお、断層画像も一緒に表示させ、断層画像上に重畳された層境界データを検者からの指示に応じて移動させることにより、異なる日時の複数のOCTA正面画像の深度範囲を一括して変更してもよい。このとき、異なる日時の複数の断層画像を並べて表示し、1つの断層画像上で上記移動が行われると、他の断層画像上でも同様に層境界データが移動されてもよい。
また、画像投影法やプロジェクションアーチファクト抑制処理の有無を、例えば、コンテキストメニューのようなユーザーインターフェースから選択することにより変更してもよい。
また、選択ボタン2307を選択して不図示の選択画面を表示させ、該選択画面上に表示された画像リストから選択された画像が表示されてもよい。なお、図23の上部に表示されている矢印2304は現在選択されている検査であることを示す印であり、基準検査(Baseline)はFollow-up撮影の際に選択した検査(図23の一番左側の画像)である。もちろん、基準検査を示すマークを表示部に表示させてもよい。
また、「Show Difference」チェックボックス2308が指定された場合には、基準画像上に基準画像に対する計測値分布(マップもしくはセクタマップ)を表示する。さらに、この場合には、それ以外の検査日に対応する領域に、基準画像に対して算出した計測値分布と当該領域に表示される画像に対して算出した計測値分布との差分計測値マップを表示する。計測結果としては、レポート画面上にトレンドグラフ(経時変化計測によって得られた各検査日の画像に対する計測値のグラフ)を表示させてもよい。すなわち、異なる日時の複数の画像に対応する複数の解析結果の時系列データ(例えば、時系列グラフ)が表示されてもよい。このとき、表示されている複数の画像に対応する複数の日時以外の日時に関する解析結果についても、表示されている複数の画像に対応する複数の解析結果と判別可能な状態で(例えば、時系列グラフ上の各点の色が画像の表示の有無で異なる)時系列データとして表示させてもよい。また、該トレンドグラフの回帰直線(曲線)や対応する数式をレポート画面に表示させてもよい。
本実施例においては、OCTA正面画像に関して説明を行ったが、本実施例に係る処理が適用される画像はこれに限らない。本実施例に係る表示、高画質化、及び画像解析等の処理に関する画像は、輝度のEn-Face画像でもよい。さらには、En-Face画像だけではなく、B-スキャンによる断層画像、SLO画像、眼底画像、又は蛍光眼底画像など、異なる画像であってもよい。その場合、高画質化処理を実行するためのユーザーインターフェースは、種類の異なる複数の画像に対して高画質化処理の実行を指示するもの、種類の異なる複数の画像から任意の画像を選択して高画質化処理の実行を指示するものがあってもよい。
例えば、B-スキャンによる断層画像を高画質化して表示する場合には、図22(a)に示す断層画像Im2211,Im2212を高画質化して表示してもよい。また、OCTA正面画像Im2207,Im2208が表示されている領域に高画質化された断層画像が表示されてもよい。なお、高画質化され、表示される断層画像は、1つだけ表示されてもよいし、複数表示されてもよい。複数の断層画像が表示される場合には、それぞれ異なる副走査方向の位置で取得された断層画像が表示されてもよいし、例えばクロススキャン等により得られた複数の断層画像を高画質化して表示する場合には、異なる走査方向の画像がそれぞれ表示されてもよい。また、例えばラジアルスキャン等により得られた複数の断層画像を高画質化して表示する場合には、一部選択された複数の断層画像(例えば基準ラインに対して互いに対称な位置の2つの断層画像)がそれぞれ表示されてもよい。さらに、図23に示されるような経過観察用の表示画面に複数の断層画像を表示し、上述の方法と同様の手法により高画質化の指示や解析結果(例えば、特定の層の厚さ等)の表示が行われてもよい。また、上述の方法と同様の手法によりデータベースに保存されている情報に基づいて断層画像に高画質化処理を実行してもよい。
同様に、SLO画像を高画質化して表示する場合には、例えば、SLO画像Im2205を高画質化して表示してよい。さらに、輝度のEn-Face画像を高画質化して表示する場合には、例えば輝度のEn-Face画像2209を高画質化して表示してよい。さらに、図23に示されるような経過観察用の表示画面に複数のSLO画像や輝度のEn-Face画像を表示し、上述の方法と同様の手法により高画質化の指示や解析結果(例えば、特定の層の厚さ等)の表示が行われてもよい。また、上述の方法と同様の手法によりデータベースに保存されている情報に基づいてSLO画像や輝度のEn-Face画像に高画質化処理を実行してもよい。なお、断層画像、SLO画像、及び輝度のEn-Face画像の表示は例示であり、これらの画像は所望の構成に応じて任意の態様で表示されてよい。また、OCTA正面画像、断層画像、SLO画像、及び輝度のEn-Face画像の少なくとも2つ以上が、一度の指示で高画質化され表示されてもよい。
このような構成により、本実施例に係る第一の処理部822が高画質化処理した画像を表示制御部25が表示部50に表示することができる。このとき、上述したように、高画質画像の表示、解析結果の表示、及び表示される正面画像の深度範囲等に関する複数の条件のうち少なくとも1つが選択された状態である場合には、表示画面が遷移されても、選択された状態が維持されてもよい。
また、上述したように、複数の条件のうち少なくとも1つが選択された状態である場合には、他の条件が選択された状態に変更されても、該少なくとも1つが選択された状態が維持されてもよい。例えば、表示制御部25は、解析結果の表示が選択状態である場合に、検者からの指示に応じて(例えば、ボタン2220が指定されると)、低画質画像の解析結果の表示を高画質画像の解析結果の表示に変更してもよい。また、表示制御部25は、解析結果の表示が選択状態である場合に、検者からの指示に応じて(例えば、ボタン2220の指定が解除されると)、高画質画像の解析結果の表示を低画質画像の解析結果の表示に変更してもよい。
また、表示制御部25は、高画質画像の表示が非選択状態である場合に、検者からの指示に応じて(例えば、解析結果の表示の指定が解除されると)、低画質画像の解析結果の表示を低画質画像の表示に変更してもよい。また、表示制御部25は、高画質画像の表示が非選択状態である場合に、検者からの指示に応じて(例えば、解析結果の表示が指定されると)、低画質画像の表示を低画質画像の解析結果の表示に変更してもよい。また、表示制御部25は、高画質画像の表示が選択状態である場合に、検者からの指示に応じて(例えば、解析結果の表示の指定が解除されると)、高画質画像の解析結果の表示を高画質画像の表示に変更してもよい。また、表示制御部25は、高画質画像の表示が選択状態である場合に、検者からの指示に応じて(例えば、解析結果の表示が指定されると)、高画質画像の表示を高画質画像の解析結果の表示に変更してもよい。
また、高画質画像の表示が非選択状態で且つ第一の種類の解析結果の表示が選択状態である場合を考える。この場合には、表示制御部25は、検者からの指示に応じて(例えば、第二の種類の解析結果の表示が指定されると)、低画質画像の第一の種類の解析結果の表示を低画質画像の第二の種類の解析結果の表示に変更してもよい。また、高画質画像の表示が選択状態で且つ第一の種類の解析結果の表示が選択状態である場合を考える。この場合には、表示制御部25は、検者からの指示に応じて(例えば、第二の種類の解析結果の表示が指定されると)、高画質画像の第一の種類の解析結果の表示を高画質画像の第二の種類の解析結果の表示に変更してもよい。
なお、経過観察用の表示画面においては、上述したように、これらの表示の変更が、異なる日時で得た複数の画像に対して一括で反映されるように構成してもよい。ここで、解析結果の表示は、解析結果を任意の透明度により画像に重畳表示させたものであってもよい。このとき、解析結果の表示への変更は、例えば、表示されている画像に対して任意の透明度により解析結果を重畳させた状態に変更したものであってもよい。また、解析結果の表示への変更は、例えば、解析結果と画像とを任意の透明度によりブレンド処理して得た画像(例えば、二次元マップ)の表示への変更であってもよい。
なお、本実施例では、第一の処理部822が高画質化処理に関する学習済モデル(高画質化モデル)を用いて断層画像の画質を改善した高画質画像を生成した。しかしながら、高画質化モデルを用いて高画質画像を生成する構成要素は第一の処理部822に限られない。例えば、第一の処理部822とは別の第三の処理部(高画質化部)を設け、第三の処理部が高画質化モデルを用いて高画質画像を生成してもよい。この場合、第三の処理部や高画質化モデルは、CPUやMPU、GPU、FPGA等のプロセッサーによって実行されるソフトウェアモジュール等で構成されてもよいし、ASIC等の特定の機能を果たす回路等によって構成されてもよい。
(実施例6及び7の変形例)
実施例6及び7において、表示制御部25は、第一の処理部822によって生成された高画質画像と入力画像のうち、検者からの指示に応じて選択された画像を表示部50に表示させることができる。また、表示制御部25は、検者からの指示に応じて、表示部50上の表示を撮影画像(入力画像)から高画質画像に切り替えてもよい。すなわち、表示制御部25は、検者からの指示に応じて、低画質画像の表示を高画質画像の表示に変更してもよい。また、表示制御部25は、検者からの指示に応じて、高画質画像の表示を低画質画像の表示に変更してもよい。
さらに、第一の処理部822が、高画質化エンジン(高画質化モデル)による高画質化処理の開始(高画質化エンジンへの画像の入力)を検者からの指示に応じて実行し、表示制御部25が、生成された高画質画像を表示部50に表示させてもよい。これに対し、撮影装置(OCT装置10)によって入力画像が撮影されると、第一の処理部822が自動的に高画質化エンジンを用いて入力画像に基づいて高画質画像を生成し、表示制御部25が、検者からの指示に応じて高画質画像を表示部50に表示させてもよい。ここで、高画質化エンジンとは、上述した画質向上処理(高画質化処理)を行う学習済モデルを含む。
なお、これらの処理は解析結果の出力についても同様に行うことができる。すなわち、表示制御部25は、検者からの指示に応じて、低画質画像の解析結果の表示を高画質画像の解析結果の表示に変更してもよい。また、表示制御部25は、検者からの指示に応じて、高画質画像の解析結果の表示を低画質画像の解析結果の表示に変更してもよい。さらに、表示制御部25は、検者からの指示に応じて、低画質画像の解析結果の表示を低画質画像の表示に変更してもよい。また、表示制御部25は、検者からの指示に応じて、低画質画像の表示を低画質画像の解析結果の表示に変更してもよい。さらに、表示制御部25は、検者からの指示に応じて、高画質画像の解析結果の表示を高画質画像の表示に変更してもよい。また、表示制御部25は、検者からの指示に応じて、高画質画像の表示を高画質画像の解析結果の表示に変更してもよい。
さらに、表示制御部25は、検者からの指示に応じて、低画質画像の解析結果の表示を低画質画像の他の種類の解析結果の表示に変更してもよい。また、表示制御部25は、検者からの指示に応じて、高画質画像の解析結果の表示を高画質画像の他の種類の解析結果の表示に変更してもよい。
ここで、高画質画像の解析結果の表示は、高画質画像の解析結果を任意の透明度により高画質画像に重畳表示させたものであってもよい。また、低画質画像の解析結果の表示は、低画質画像の解析結果を任意の透明度により低画質画像に重畳表示させたものであってもよい。このとき、解析結果の表示への変更は、例えば、表示されている画像に対して任意の透明度により解析結果を重畳させた状態に変更したものであってもよい。また、解析結果の表示への変更は、例えば、解析結果と画像とを任意の透明度によりブレンド処理して得た画像(例えば、二次元マップ)の表示への変更であってもよい。
なお、本変形例では、第一の処理部822が高画質化処理に関する学習済モデル(高画質化モデル)を用いて断層画像の画質を改善した高画質画像を生成した。しかしながら、高画質化モデルを用いて高画質画像を生成する構成要素は第一の処理部822に限られない。例えば、第一の処理部822とは別の第三の処理部を設け、第三の処理部が高画質化モデルを用いて高画質画像を生成してもよい。この場合、第三の処理部や高画質化モデルは、CPUやMPU、GPU、FPGA等のプロセッサーによって実行されるソフトウェアモジュール等で構成されてもよいし、ASIC等の特定の機能を果たす回路等によって構成されてもよい。
また、実施例7では、表示画面のボタン2220のアクティブ状態に応じて、高画質化モデルを用いた高画質化処理が行われた画像が表示された。これに対し、ボタン2220のアクティブ状態に応じて、学習済モデルを用いた画像セグメンテーション処理の結果を用いた解析値が表示されるように構成してもよい。この場合、例えば、ボタン2220が非アクティブ状態(学習済モデルを用いた画像セグメンテーション処理が非選択状態)の場合には、表示制御部25は、第二の処理部823が行った画像セグメンテーション処理の結果を用いた解析結果を表示部50に表示させる。これに対し、ボタン2220がアクティブ状態にされると、表示制御部25は、第一の処理部822が単独で又は第一の処理部822及び第二の処理部823が行った画像セグメンテーション処理の結果を用いた解析結果を表示部50に表示させる。
このような構成では、学習済モデルを用いない画像セグメンテーション処理の結果を用いた解析結果と、学習済モデルを用いた画像セグメンテーション処理の結果を用いた解析結果が、ボタンのアクティブ状態に応じて切り替えて表示される。これらの解析結果は、それぞれ学習済モデルによる処理とルールベースによる画像処理の結果に基づくため、両結果には差異が生じる場合がある。そのため、これらの解析結果を切り替えて表示させることで、検者は両者を対比し、より納得できる解析結果を診断に用いることができる。
なお、画像セグメンテーション処理が切り替えられた際には、例えば、表示される画像が断層画像である場合には、層毎に解析された層厚の数値が切り替えられて表示されてよい。また、例えば、層毎に色やハッチングパターン等で分けられた断層画像が表示される場合には、画像セグメンテーション処理の結果に応じて層の形状が変化した断層画像が切り替えられて表示されてよい。さらに、解析結果として厚みマップが表示される場合には、厚みを示す色が画像セグメンテーション処理の結果に応じて変化した厚みマップが表示されてよい。また、高画質化処理を指定するボタンと学習済モデルを用いた画像セグメンテーション処理を指定するボタンは別々に設けられてもよいし、いずれか一方のも設けられてもよいし、両方のボタンを一つのボタンとして設けてもよい。
また、画像セグメンテーション処理の切り替えは、上述の高画質化処理の切り替えと同様に、データベースに保存(記録)されている情報に基づいて行われてもよい。なお、画面遷移時に処理についても、画像セグメンテーション処理の切り替えは、上述の高画質化処理の切り替えと同様に行われてよい。
実施例1乃至7では、取得部21は、OCT装置10で取得された干渉信号や断層画像生成部221で生成された三次元断層データを取得した。しかしながら、取得部21がこれらの信号やデータを取得する構成はこれに限られない。例えば、取得部21は、画像処理装置20とLAN、WAN、又はインターネット等を介して接続されるサーバや撮影装置からこれらの信号を取得してもよい。この場合、撮影に関する処理を省略し、撮影済みの三次元の断層データを取得することができる。そして、ステップS304やステップS904等で境界検出処理を行うことができる。そのため、断層情報の取得から正面画像や厚みマップ等の表示までの一連の処理時間を短くすることができる。
なお、処理部222及び第一の処理部822が用いる画像セグメンテーション用の学習済モデルや高画質化用の学習済モデルは、画像処理装置20,80,152に設けられることができる。学習済モデルは、例えば、CPUや、MPU、GPU、FPGA等のプロセッサーによって実行されるソフトウェアモジュール等で構成されてもよいし、ASIC等の特定の機能を果たす回路等によって構成されてもよい。また、これら学習済モデルは、画像処理装置20,80,152と接続される別のサーバの装置等に設けられてもよい。この場合には、画像処理装置20,80,152は、インターネット等の任意のネットワークを介して学習済モデルを備えるサーバ等に接続することで、学習済モデルを用いることができる。ここで、学習済モデルを備えるサーバは、例えば、クラウドサーバや、フォグサーバ、エッジサーバ等であってよい。
また、実施例2乃至7では、ラベル画像として画素毎にラベル付けされたラベル画像について説明したが、ラベル画像として領域毎にラベル付けされたラベル画像を用いてもよい。
なお、OCT装置10の構成は、上記の構成に限られず、OCT装置10に含まれる構成の一部をOCT装置10と別体の構成としてもよい。また、ボタンなどのユーザーインターフェースや表示のレイアウトは上記で示したものに限定されるものではない。
上述の実施例1乃至7及びその変形例によれば、疾患や部位等によらず網膜層の境界検出を行うことができる。
(実施例8)
医療分野においては、被検者の疾患を特定したり、疾患の程度を観察したりするために、様々な撮影装置によって取得された画像を利用した画像診断が実施されている。撮影装置の種類には、例えば放射線科分野では、X線撮影装置、X線コンピュータ断層撮影装置(CT)、磁気共鳴イメージング装置(MRI)、及び陽電子放出断層撮影装置(PET)などがある。また、例えば眼科分野では、眼底カメラ、走査型レーザ検眼鏡(SLO)、光コヒーレンストモグラフィ(OCT)装置、及びOCTアンギオグラフィ(OCTA)装置などがある。
画像診断は、基本的には医療従事者が画像に描出された病変等を観察することによって実施されるが、近年では画像解析技術の向上によって診断に役立つ様々な情報が得られるようになった。例えば、画像解析をすることによって、見落とす可能性のある小さな病変を検出して医療従事者を支援したり、病変の形状や体積について定量的な計測を行ったり、さらには医療従事者の観察なしに疾患を特定したりすることができるようになった。
なお、画像解析の手法には様々なものがあるが、画像セグメンテーション処理と呼ばれる、画像に描出された臓器や病変といった領域を特定するための処理は、多くの画像解析の手法を実施するにあたって、必要となる処理である。以下において、簡略化のため画像セグメンテーション処理を単にセグメンテーション処理ともいう。
従来の画像セグメンテーション処理は、特許文献1のように、対象の臓器や病変に関する医学的知識や画像特性に基づいた画像処理アルゴリズムによって実施される。しかしながら、実際の医療現場において、撮影装置から取得される画像は、被検者の病態や撮影装置の撮影環境、撮影者の技術不足等の、様々な要因により綺麗に撮影できていないことがある。そのため、従来の画像セグメンテーション処理にとって、対象の臓器や病変が想定通りに描出されておらず、精度よく特定の領域を抽出できないことがあった。
具体的には、例えば、網膜層の消失、出血、白斑、及び新生血管の発生等のある疾患眼をOCT装置で撮影して取得された画像では、網膜層の形状の描出が不規則となることがあった。このような場合には、画像セグメンテーション処理の一種である網膜層の領域検出処理において、誤検出が発生することがあった。
下記実施例8乃至19の目的の一つは、従来の画像セグメンテーション処理よりも精度の高い画像セグメンテーション処理を実施できる医用画像処理装置、医用画像処理方法及びプログラムを提供することである。
<用語の説明>
ここで、本開示において用いられる用語について説明する。
本明細書におけるネットワークでは、各装置は有線又は無線の回線で接続されてよい。ここで、ネットワークにおける各装置を接続する回線は、例えば、専用回線、ローカルエリアネットワーク(以下、LANと表記)回線、無線LAN回線、インターネット回線、Wi-Fi(登録商標)、及びBluetooth(登録商標)等を含む。
医用画像処理装置は、相互に通信が可能な2以上の装置によって構成されてもよいし、単一の装置によって構成されてもよい。また、医用画像処理装置の各構成要素は、CPUやMPU、GPU、FPGA等のプロセッサーによって実行されるソフトウェアモジュールにより構成されてよい。また、当該各構成要素は、ASIC等の特定の機能を果たす回路等によって構成されてもよい。また、他の任意のハードウェアと任意のソフトウェアとの組み合わせにより構成されてもよい。
また、医用画像処理装置又は医用画像処理方法によって処理される医用画像は、OCT装置を用いて取得された被検者の断層画像である。ここで、OCT装置としては、タイムドメインOCT(TD-OCT)装置やフーリエドメインOCT(FD-OCT)装置を含んでよい。また、フーリエドメインOCT装置はスペクトラルドメインOCT(SD-OCT)装置や波長掃引型OCT(SS-OCT)装置を含んでよい。また、OCT装置として、波面補償光学系を用いた波面補償OCT(AO-OCT)装置や、被検者に照射される測定光をライン状に形成したラインOCT装置、当該測定光を面状に形成したフルフィールドOCT装置等の任意のOCT装置を含んでよい。
医用画像には、被検者の眼(被検眼)の断層画像が含まれる。被検眼の断層画像としては、被検眼の後眼部における網膜等の断層画像に限られず、被検眼の前眼部や眼房等の断層画像が含まれる。また、OCT装置を内視鏡等に用いる場合には、被検者の皮膚や臓器の断層画像を以下の実施例による医用画像処理装置又は医用画像処理方法の処理対象となる医用画像としてもよい。
画像管理システムは、OCT装置等の撮影装置によって撮影された画像や画像処理された画像を受信して保存する装置及びシステムである。また、画像管理システムは、接続された装置の要求に応じて画像を送信したり、保存された画像に対して画像処理を行ったり、画像処理の要求を他の装置に要求したりすることができる。画像管理システムとしては、例えば、画像保存通信システム(PACS)を含むことができる。特に、下記実施例に係る画像管理システムは、受信した画像とともに関連付けられた被検者の情報や撮影時間などの各種情報も保存可能なデータベースを備える。また、画像管理システムはネットワークに接続され、他の装置からの要求に応じて、画像を送受信したり、画像を変換したり、保存した画像に関連付けられた各種情報を送受信したりすることができる。
撮影条件とは、撮影装置によって取得された画像の撮影時の様々な情報である。撮影条件は、例えば、撮影装置に関する情報、撮影が実施された施設に関する情報、撮影に係る検査の情報、撮影者に関する情報、及び被検者に関する情報等を含む。また、撮影条件は、例えば、撮影日時、撮影部位名、撮影領域、撮影画角、撮影方式、画像の解像度や階調、画像サイズ、適用された画像フィルタ、及び画像のデータ形式に関する情報等を含む。なお、撮影領域には、特定の撮影部位からずれた周辺の領域や複数の撮影部位を含んだ領域等が含まれることができる。また、撮影方式は、スペクトラルドメイン方式や波長掃引方式等のOCTの任意の撮影方式を含んでよい。
撮影条件は、画像を構成するデータ構造中に保存されていたり、画像とは別の撮影条件データとして保存されていたり、撮影装置に関連するデータベースや画像管理システムに保存されたりすることができる。そのため、撮影条件は、撮影装置の撮影条件の保存手段に対応した手順により取得することができる。具体的には、撮影条件は、例えば、撮影装置が出力した画像のデータ構造を解析したり、画像に対応する撮影条件データを取得したり、撮影装置に関連するデータベースから撮影条件を取得するためのインターフェースにアクセスする等により取得される。
なお、撮影装置によっては、保存されていない等の理由で取得できない撮影条件も存在する。例えば、撮影装置に特定の撮影条件を取得したり保存したりする機能が無い、又はそのような機能が無効にされている場合である。また、例えば、撮影装置や撮影に関係の無い撮影条件であるとして保存しないようになっている場合もある。さらに、例えば、撮影条件が隠蔽されていたり、暗号化されていたり、権利が無いと取得できないようになっていたりする場合等もある。ただし、保存されていない撮影条件であっても取得できる場合がある。例えば、画像解析を実施することによって、撮影部位名や撮影領域を特定することができる。
領域ラベル画像とは、画素毎に領域のラベルが付されたラベル画像をいう。具体的には、図24に示すように、撮影装置によって取得された画像Im2410に描出されている領域群のうち、任意の領域を特定可能な画素値(以下、領域ラベル値)群によって分けている画像Im2420のことである。ここで、特定される任意の領域には関心領域(ROI:Region Of Interest)や関心体積(VOI:Volume Of Interest)等が含まれる。
画像Im2420から任意の領域ラベル値を持つ画素の座標群を特定すると、画像Im2410中において対応する網膜層等の領域を描出している画素の座標群を特定できる。具体的には、例えば、網膜を構成する神経節細胞層を示す領域ラベル値が1である場合、画像Im2420の画素群のうち画素値が1である座標群を特定し、画像Im2410から該座標群に対応する画素群を抽出する。これにより、画像Im2410における神経節細胞層の領域を特定できる。
なお、一部の実施例において、領域ラベル画像に対する縮小又は拡大処理を実施する処理が含まれる。このとき、領域ラベル画像の縮小又は拡大に用いる画像補完処理手法は、未定義の領域ラベル値や対応する座標に存在しないはずの領域ラベル値を誤って生成しないような、最近傍法等を使うものとする。
画像セグメンテーション処理とは、画像に描出された臓器や病変といった、ROIやVOIと呼ばれる領域を、画像診断や画像解析に利用するために特定する処理のことである。例えば、画像セグメンテーション処理によれば、後眼部を撮影対象としたOCTの撮影によって取得された画像から、網膜を構成する層群の領域群を特定することができる。なお、画像に特定すべき領域が描出されていなければ特定される領域の数は0である。また、画像に特定すべき複数の領域群が描出されていれば、特定される領域の数は複数であってもよいし、或いは、該領域群を含むように囲む領域1つであってもよい。
特定された領域群は、その他の処理において利用可能な情報として出力される。具体的には、例えば、特定された領域群のそれぞれを構成する画素群の座標群を数値データ群として出力することができる。また、例えば、特定された領域群のそれぞれを含む矩形領域や楕円領域、長方体領域、楕円体領域等を示す座標群を数値データ群として出力することもできる。さらに、例えば、特定された領域群の境界にあたる直線や曲線、平面、又は曲面等を示す座標群を数値データ群として出力することもできる。また、例えば、特定された領域群を示す領域ラベル画像を出力することもできる。
なお、以下において、画像セグメンテーション処理の精度が高いと表現したり、精度の高い領域ラベル画像と表現したりする場合は、領域を正しく特定できている割合が高いことを指す。また、逆に、画像セグメンテーション処理の精度が低いと表現する場合は、領域を誤って特定している割合が高いことを指す。
領域ラベル無し画像とは、領域ラベル画像の一種であり、画像診断や画像解析に利用するためのROIやVOIに対応する情報が含まれていない領域ラベル画像である。具体的に、一例として、画像解析に利用するために医用画像に描出された網膜を構成する神経節細胞層の領域を知りたい場合を説明する。
ここで、神経節細胞層の領域を示す領域ラベル値は1であり、それ以外の部分の領域を示す領域ラベル値は0であるとする。ある医用画像に対応する領域ラベル画像を、画像セグメンテーション処理等によって生成した際に、医用画像に神経節細胞層が描出されていない場合、領域ラベル画像のすべての画素値は0となる。この場合、当該領域ラベル画像は、画像解析に利用するための神経節細胞層のROIに対応する領域ラベル値1である領域が領域ラベル画像に無いため、領域ラベル無し画像である。なお、設定や実装形態によっては、領域ラベル無し画像は、画像ではなく、画像と同様の情報を持つ座標群を示す数値データ群等であってもよい。
ここで、機械学習モデルとは、機械学習アルゴリズムによる学習モデルをいう。機械学習の具体的なアルゴリズムとしては、最近傍法、ナイーブベイズ法、決定木、サポートベクターマシンなどが挙げられる。また、ニューラルネットワークを利用して、学習するための特徴量、結合重み付け係数を自ら生成する深層学習(ディープラーニング)も挙げられる。適宜、上記アルゴリズムのうち利用できるものを用いて実施例に係る学習モデルに適用することができる。学習済モデルとは、任意の機械学習アルゴリズムに従った機械学習モデルに対して、事前に適切な教師データ(学習データ)を用いてトレーニング(学習)を行ったモデルである。ただし、学習済モデルは、それ以上の学習を行わないものではなく、追加の学習を行うこともできるものとする。教師データは、一つ以上の、入力データと出力データとのペア群で構成される。なお、教師データを構成するペア群の入力データと出力データの形式や組み合わせは、一方が画像で他方が数値であったり、一方が複数の画像群で構成され他方が文字列であったり、双方が画像であったりする等、所望の構成に適したものであってよい。
具体的には、例えば、OCTによって取得された画像と、該画像に対応する撮影部位ラベルとのペア群によって構成された教師データ(以下、第一の教師データ)が挙げられる。なお、撮影部位ラベルは部位を表すユニークな数値や文字列である。また、その他の教師データの例として、後眼部を撮影対象としたOCTの撮影によって取得された画像と、該画像に対応する網膜層の領域ラベル画像とのペア群によって構成されている教師データ(以下、第二の教師データ)が挙げられる。さらに、その他の教師データの例として、OCTの通常撮影によって取得されたノイズの多い低画質画像と、OCTにより複数回撮影して高画質化処理した高画質画像とのペア群によって構成されている教師データ(以下、第三の教師データ)が挙げられる。
学習済モデルに入力データを入力すると、該学習済モデルの設計に従った出力データが出力される。学習済モデルは、例えば、教師データを用いてトレーニングされた傾向に従って、入力データに対応する可能性の高い出力データを出力する。また、学習済モデルは、例えば、教師データを用いてトレーニングされた傾向に従って、出力データの種類のそれぞれについて、入力データに対応する可能性を数値として出力する等を行うことができる。
具体的には、例えば、第一の教師データでトレーニングされた学習済モデルにOCTによって取得された画像を入力すると、学習済モデルは、該画像に撮影されている撮影部位の撮影部位ラベルを出力したり、撮影部位ラベル毎の確率を出力したりする。また、例えば第二の教師データによってトレーニングされた学習済モデルに後眼部を撮影対象としたOCTの撮影によって取得された網膜層を描出する画像を入力すると、学習済モデルは、該画像に描出された網膜層に対する領域ラベル画像を出力する。さらに、例えば、第三の教師データでトレーニングされた学習済モデルにOCTの通常撮影によって取得されたノイズの多い低画質画像を入力すると、学習済モデルは、OCTにより複数回撮影して高画質化処理された画像相当の高画質画像を出力する。
機械学習アルゴリズムは、畳み込みニューラルネットワーク(CNN)等のディープラーニングに関する手法を含む。ディープラーニングに関する手法においては、ニューラルネットワークを構成する層群やノード群に対するパラメータの設定が異なると、教師データを用いてトレーニングされた傾向を出力データに再現可能な程度が異なる場合がある。
例えば、第一の教師データを用いたディープラーニングの学習済モデルにおいては、より適切なパラメータが設定されていると、正しい撮影部位ラベルを出力する確率がより高くなる場合がある。また、例えば、第二の教師データを用いる学習済モデルにおいては、より適切なパラメータが設定されていると、より精度の高い領域ラベル画像を出力できる場合がある。さらに、例えば、第三の教師データを用いたディープラーニングの学習済モデルにおいては、より適切なパラメータが設定されていると、より高画質な画像を出力できる場合がある。
具体的には、CNNにおけるパラメータは、例えば、畳み込み層に対して設定される、フィルタのカーネルサイズ、フィルタの数、ストライドの値、及びダイレーションの値、並びに全結合層の出力するノードの数等を含むことができる。なお、パラメータ群やトレーニングのエポック数は、教師データに基づいて、学習済モデルの利用形態に好ましい値に設定することができる。例えば、教師データに基づいて、正しい撮影部位ラベルをより高い確率で出力したり、より精度の高い領域ラベル画像を出力したり、より高画質な画像を出力したりできるパラメータ群やエポック数を設定することができる。
このようなパラメータ群やエポック数の決定方法の一つを例示する。まず、教師データを構成するペア群の7割をトレーニング用とし、残りの3割を評価用としてランダムに設定する。次に、トレーニング用のペア群を用いて学習済モデルのトレーニングを行い、トレーニングの各エポックの終了時に、評価用のペア群を用いてトレーニング評価値を算出する。トレーニング評価値とは、例えば、各ペアを構成する入力データをトレーニング中の学習済モデルに入力したときの出力と、入力データに対応する出力データとを損失関数によって評価した値群の平均値等である。最後に、最もトレーニング評価値が小さくなったときのパラメータ群及びエポック数を、当該学習済モデルのパラメータ群やエポック数として決定する。なお、このように、教師データを構成するペア群をトレーニング用と評価用とに分けてエポック数の決定を行うことによって、学習済モデルがトレーニング用のペア群に対して過学習してしまうことを防ぐことができる。
画像セグメンテーションエンジンとは、画像セグメンテーション処理を実施し、入力された入力画像に対応する領域ラベル画像を出力するモジュールのことである。入力画像の例としては、OCTのBスキャン画像や三次元断層画像(三次元OCTボリューム画像)等がある。また、領域ラベル画像の例としては、入力画像がOCTのBスキャン画像である場合における網膜層の各層を示す領域ラベル画像や、入力画像がOCTの三次元断層画像である場合における網膜層の各層を示す三次元領域を示す領域ラベル画像がある。
下記の実施例における画像セグメンテーション処理手法を構成する画像処理手法では、ディープラーニング等の各種機械学習アルゴリズムに従った学習済モデルを用いた処理を行う。なお、当該画像処理手法は、機械学習アルゴリズムだけでなく、他の既存の任意の処理を併せて行ってもよい。当該画像処理には、例えば、各種画像フィルタ処理、類似画像に対応する領域ラベル画像のデータベースを用いたマッチング処理、基準領域ラベル画像の画像レジストレーション処理、及び知識ベース画像処理等の処理が含まれる。
特に、入力画像として入力された二次元の画像Im2510を画像セグメンテーション処理して領域ラベル画像Im2520を生成する畳み込みニューラルネットワーク(CNN)の例として、図25に示す構成2500がある。当該CNNの構成2500は、入力値群を加工して出力する処理を担う、複数の層群が含まれる。なお、当該構成2500に含まれる層の種類としては、図25に示すように、畳み込み(Convolution)層、ダウンサンプリング(Downsampling)層、アップサンプリング(Upsampling)層、及び合成(Merger)層がある。なお、本実施例で用いるCNNの構成2500は、実施例1で述べたCNNの構成601と同様に、U-net型の機械学習モデルである。
畳み込み層は、設定されたフィルタのカーネルサイズ、フィルタの数、ストライドの値、及びダイレーションの値等のパラメータに従い、入力値群に対して畳み込み処理を行う層である。ダウンサンプリング層は、入力値群を間引いたり、合成したりすることによって、出力値群の数を入力値群の数よりも少なくする処理を行う層である。ダウンサンプリング層で行われる処理として、具体的には、例えば、Max Pooling処理がある。
アップサンプリング層は、入力値群を複製したり、入力値群から補間した値を追加したりすることによって、出力値群の数を入力値群の数よりも多くする処理を行う層である。アップサンプリング層で行われる処理として、具体的には、例えば、線形補間処理がある。合成層は、ある層の出力値群や画像を構成する画素値群といった値群を、複数のソースから入力し、それらを連結したり、加算したりして合成する処理を行う層である。
なお、当該CNNの構成に含まれる畳み込み層群に設定されるパラメータとして、例えば、フィルタのカーネルサイズを幅3画素、高さ3画素、フィルタの数を64とすることで、一定の精度の画像セグメンテーション処理が可能である。ただし、ニューラルネットワークを構成する層群やノード群に対するパラメータの設定が異なると、教師データからトレーニングされた傾向を出力データに再現可能な程度が異なる場合があるので注意が必要である。つまり、多くの場合、実施例に応じて各層群や各ノード群に対する適切なパラメータは異なるので、必要に応じて変更してもよい。
また、実施例によっては、上述したようなパラメータを変更するという方法だけでなく、CNNの構成を変更することによって、CNNがより良い特性を得られる場合がある。より良い特性とは、例えば、画像セグメンテーション処理の精度が高かったり、画像セグメンテーション処理の時間が短かったり、学習済モデルのトレーニングにかかる時間が短かったりする等である。CNNの構成の変更例として、例えば、畳み込み層の後にバッチ正規化(Batch Normalization)層や、正規化線形関数(Rectifier Linear Unit)を用いた活性化層を組み込む等がある。
なお、画像セグメンテーションエンジンが用いる機械学習モデルとしては、実施例1と同様に、例えば、FCN、又はSegNet等を用いることもできる。また、所望の構成に応じて、実施例1で述べたような領域単位で物体認識を行う機械学習モデルを用いてもよい。
なお、一次元画像や三次元画像、四次元画像を処理する必要がある場合には、フィルタのカーネルサイズが一次元や三次元、四次元に対応していてもよい。ここで、四次元画像とは、例えば、三次元の動画像や三次元画像の各画素位置におけるパラメータを異なる色相で示したような画像を含む。
また、画像セグメンテーション処理は、1つの画像処理手法だけで実施されることもあるし、2つ以上の画像処理手法を組み合わせて実施されることもある。さらに、複数の画像セグメンテーション処理手法を実施し、複数の領域ラベル画像を生成することもできる。
また、実施例によっては、入力画像を小領域群に分割し、それぞれに対して画像セグメンテーション処理を実施して小領域の領域ラベル画像群を得て、該小領域の領域ラベル画像群を結合することで、領域ラベル画像を生成する方法がある。なお、当該小領域は、入力画像が三次元画像であれば、入力画像よりも小さな三次元画像であったり、二次元画像であったり、一次元画像であったりしてもよい。また、当該小領域は、入力画像が二次元画像であれば、入力画像よりも小さな二次元画像であったり、一次元画像であったりしてもよい。また、実施例によっては複数の領域ラベル画像群を出力してもよい。
また、画像セグメンテーションエンジンに対して、入力画像とともにパラメータを入力してもよい。この場合の入力されるパラメータは、例えば、病変の大きさの上限など、画像セグメンテーション処理を行う範囲の程度を指定するパラメータや、画像処理手法に用いられる画像フィルタサイズを指定するパラメータを含むことができる。なお、画像セグメンテーションエンジンは、実施例によっては領域ラベル画像の代わりに、領域を特定可能なその他の画像や座標データ群を出力してもよい。
なお、複数の画像セグメンテーション処理手法を実施したり、複数の小領域群に対して画像セグメンテーション処理を実施したりする場合には、並列的に画像セグメンテーション処理を行うことによって、処理時間を短縮できる。
なお、CNNを用いた画像処理等、一部の画像処理手法を利用する場合には画像サイズについて注意する必要がある。具体的には、領域ラベル画像の周辺部が十分な精度でセグメンテーション処理されない問題等の対策のため、入力する画像と出力する領域ラベル画像とで異なる画像サイズを要する場合があることに留意すべきである。
明瞭な説明のため、後述の実施例において明記はしないが、画像セグメンテーションエンジンに入力される画像と出力される画像とで異なる画像サイズを要する画像セグメンテーションエンジンを採用した場合には、適宜画像サイズを調整しているものとする。具体的には、学習済モデルをトレーニングするための教師データに用いる画像や、画像セグメンテーションエンジンに入力される画像といった入力画像に対して、パディングを行ったり、該入力画像の周辺の撮影領域を結合したりして、画像サイズを調整する。なお、パディングを行う領域は、効果的に画像セグメンテーション処理できるように画像セグメンテーション処理手法の特性に合わせて、一定の画素値で埋めたり、近傍画素値で埋めたり、ミラーパディングしたりする。
撮影箇所推定エンジンとは、入力された画像の撮影部位や撮影領域を推定するモジュールのことである。撮影箇所推定エンジンは、入力された画像に描画されている撮影部位や撮影領域がどこであるか、又は必要な詳細レベルの撮影部位ラベルや撮影領域ラベル毎に、該撮影部位や撮影領域である確率を出力することができる。
撮影部位や撮影領域は、撮影装置によっては撮影条件として保存していない、又は撮影装置が取得できず保存できていない場合がある。また、撮影部位や撮影領域が保存されていても、必要な詳細レベルの撮影部位や撮影領域が保存されていない場合もある。例えば、撮影部位として“後眼部”と保存されているだけで、詳細には“黄斑部”なのか、“視神経乳頭部”なのか、又は、“黄斑部及び視神経乳頭部”なのか、“その他”なのかが分からないことがある。また、別の例では、撮影部位として“乳房”と保存されているだけで、詳細には“右乳房”なのか、“左乳房”なのか、又は、“両方”なのかが分からないことがある。そのため、撮影箇所推定エンジンを用いることで、これらの場合に入力画像の撮影部位や撮影領域を推定することができる。
撮影箇所推定エンジンの推定手法を構成する画像及びデータ処理手法では、ディープラーニング等の各種機械学習アルゴリズムに従った学習済モデルを用いた処理を行う。なお、当該画像及びデータ処理手法では、機械学習アルゴリズムを用いた処理に加えて又は代えて、自然言語処理、類似画像及び類似データのデータベースを用いたマッチング処理、知識ベース処理等の既知の任意の推定処理を行ってもよい。なお、機械学習アルゴリズムを用いて構築した学習済モデルをトレーニングする教師データは、撮影部位や撮影領域のラベルが付けられた画像とすることができる。この場合には、教師データに関して、撮影部位や撮影領域を推定すべき画像を入力データ、撮影部位や撮影領域のラベルを出力データとする。
特に、二次元の入力画像Im2610の撮影箇所を推定するCNNの構成例として、図26に示す構成2600がある。当該CNNの構成2600には、畳み込み層2621とバッチ正規化層2622と正規化線形関数を用いた活性化層2623とで構成された複数の畳み込み処理ブロック2620群が含まれる。また、当該CNNの構成2600には、最後の畳み込み層2630と、全結合(Full Connection)層2640と、出力層2650が含まれる。全結合層2640は畳み込み処理ブロック2620の出力値群を全結合する。また、出力層2650は、Softmax関数を利用して、入力画像Im2610に対する、想定される撮影部位ラベル毎の確率を推定結果2660(Result)として出力する。このような構成2600では、例えば、入力画像Im2610が“黄斑部”を撮影した画像であれば、“黄斑部”に対応する撮影部位ラベルについて最も高い確率が出力される。
なお、例えば、畳み込み処理ブロック2620の数を16、畳み込み層2621,2630群のパラメータとして、フィルタのカーネルサイズを幅3画素、高さ3画素、フィルタの数を64とすることで、一定の精度で撮影部位を推定することができる。しかしながら、実際には上記の学習済モデルの説明において述べた通り、学習済モデルの利用形態に応じた教師データを用いて、より良いパラメータ群を設定することができる。なお、一次元画像や三次元画像、四次元画像を処理する必要がある場合には、フィルタのカーネルサイズを一次元や三次元、四次元に拡張してもよい。なお、推定手法は、一つの画像及びデータ処理手法だけで実施されることもあるし、二つ以上の画像及びデータ処理手法を組み合わせて実施されることもある。
領域ラベル画像評価エンジンとは、入力された領域ラベル画像が尤もらしく画像セグメンテーション処理できているか否かを評価するモジュールのことである。領域ラベル画像評価エンジンは、具体的には、画像評価指数として、入力された領域ラベル画像が尤もらしければ真値、そうでなければ偽値を出力する。当該評価を行う手法の例としては、ディープラーニング等の各種機械学習アルゴリズムに従った学習済モデルを用いた処理、又は知識ベース処理等がある。知識ベース処理の方法の1つには、例えば、解剖学的な知識を利用したものがあり、例えば網膜の形状の規則性等の既知の解剖学的な知識を利用して領域ラベル画像の評価を行う。
具体的に、一例として、知識ベース処理により、後眼部を撮影対象としたOCTの断層画像に対応する領域ラベル画像を評価する場合について説明する。後眼部では、解剖学的に組織群には決まった位置がある。そのため、領域ラベル画像における画素値群、すなわち、領域ラベル値群の座標を確認し、位置が正しく出力されているか否かを評価する方法がある。当該評価方法では、例えば、ある範囲において前眼部に近い座標に水晶体に対応する領域ラベル値があり、遠い座標に網膜層群に対応する領域ラベル値があれば、尤もらしく画像セグメンテーション処理できていると評価する。一方、これらの領域ラベル値がそのような想定される位置にない場合には、適切に画像セグメンテーション処理できていないと評価する。
図27に示す、後眼部を撮影対象としたOCTの断層画像に対応する、網膜層を構成する層群の領域ラベル画像Im2710を用いて、当該知識ベースの評価方法について、より具体的に説明する。後眼部では、解剖学的に組織群には決まった位置があるため、領域ラベル画像における画素値群、すなわち、領域ラベル値群の座標を確認することで、領域ラベル画像が尤もらしい画像か否かを判断することができる。
領域ラベル画像Im2710には、同じ領域ラベル値を持つ画素群が連続して構成される領域Seg2711、領域Seg2712、領域Seg2713、及び領域Seg2714が含まれている。領域Seg2711及び領域Seg2714は同じ領域ラベル値だが、解剖学的に網膜層を構成する層群は層構造を成していることから、形状や他の領域との位置関係より、領域Seg2714は誤って画像セグメンテーション処理されていると評価される。この場合、領域ラベル画像評価エンジンは画像評価指数として偽値を出力する。
また、知識ベースの評価処理の方法には、撮影対象に必ず存在するはずの領域に対応する領域ラベル値を持つ画素が領域ラベル画像に含まれるか否かを評価する方法もある。さらに、例えば、撮影対象に必ず存在するはずの領域に対応する領域ラベル値を持つ画素が領域ラベル画像に一定数以上含まれるか否かを評価する方法等もある。
また、画像セグメンテーションエンジンが複数の画像セグメンテーション処理手法を実施し、複数の領域ラベル画像を生成する場合、領域ラベル画像評価エンジンは、複数のラベル画像のうち最も尤もらしい領域ラベル画像を1つ選択して出力することもできる。
なお、複数の領域ラベル画像群の各々が尤もらしい領域ラベル画像である場合、出力すべき領域ラベル画像が1つに選択しきれない場合がある。このような、領域ラベル画像が1つに選択しきれない場合には、領域ラベル評価エンジンは、例えば、予め決められた優先度で領域ラベル画像を1つに選択することができる。また、領域ラベル評価エンジンは、例えば、複数の領域ラベル画像に重みづけをして1つの領域ラベル画像にマージすることもできる。さらに、例えば、領域ラベル評価エンジンは、任意の表示部等に備えられたユーザーインターフェースに複数の領域ラベル画像群を表示して、検者(ユーザー)の指示に応じて1つに選択してもよい。なお、領域ラベル画像評価エンジンは、尤もらしい複数の領域画像の全てを出力してもよい。
領域ラベル画像修正エンジンとは、入力された領域ラベル画像中の誤って画像セグメンテーション処理された領域を修正するモジュールのことである。当該修正を行う手法の例としては、知識ベース処理等がある。知識ベース処理の方法の1つには、例えば、解剖学的な知識を利用したものがある。
図27に示す、後眼部を撮影対象としたOCTの断層画像に対応する、網膜層を構成する層群の領域ラベル画像Im2710を再び用いて、当該領域ラベル画像の修正に係る知識ベースの修正方法について、より具体的に説明する。上述したように、領域ラベル画像Im2710において、解剖学的に網膜層を構成する層群は、層構造を成していることから、形状や他の領域との位置関係より、領域Seg2714は誤って画像セグメンテーション処理された領域だということが分かる。領域ラベル画像修正エンジンは、誤ってセグメンテーション処理された領域を検出し、検出された領域を別の領域ラベル値で上書きする。例えば、図27の場合は、領域Seg2714を、網膜層のいずれでもないことを示す領域ラベル値で上書きする。
なお、領域ラベル画像修正エンジンでは、誤ってセグメンテーションされた領域について、領域ラベル評価エンジンによる評価結果を用いて検出又は特定を行ってもよい。また、領域ラベル画像修正エンジンは、検出した誤ってセグメンテーションされた領域のラベル値を、当該領域の周辺のラベル情報から推測されるラベル情報を上書きしてもよい。図27の例では、領域Seg2714を囲う領域にラベル情報が付されている場合には、領域Seg2714のラベル情報を当該領域のラベル情報で上書きすることができる。なお、周辺のラベル情報に関しては、修正すべき領域を完全に囲む領域のラベル情報に限られず、修正すべき領域に隣接する領域のラベル情報のうち、最も数の多いラベル情報であってもよい。
(実施例8に係る画像処理装置の構成)
以下、図28乃至32を参照して、実施例8による医用画像処理装置について説明する。なお、以下において、簡略化のため、医用画像処理装置を単に画像処理装置という。図28は、本実施例に係る画像処理装置の概略的な構成の一例を示す。
画像処理装置2800は、撮影装置2810及び表示部2820に、回路やネットワークを介して接続されている。また、撮影装置2810及び表示部2820が直接接続されていてもよい。なお、これらの装置は本実施例では別個の装置とされているが、これらの装置の一部又は全部を一体的に構成してもよい。また、これらの装置は、他の任意の装置と回路やネットワークを介して接続されてもよいし、他の任意の装置と一体的に構成されてもよい。
画像処理装置2800には、取得部2801と、撮影条件取得部2802と、処理可否判定部2803と、セグメンテーション処理部2804と、評価部2805と、解析部2806と、出力部2807(表示制御部)とが設けられている。なお、画像処理装置2800は、これら構成要素のうちの一部が設けられた複数の装置で構成されてもよい。
取得部2801は、撮影装置2810や他の装置から各種データや画像を取得したり、不図示の入力装置を介して検者からの入力を取得したりすることができる。なお、入力装置としては、マウス、キーボード、タッチパネル及びその他任意の入力装置を採用してよい。また、表示部2820をタッチパネルディスプレイとして構成してもよい。
撮影条件取得部2802は、取得部2801が取得した医用画像(入力画像)の撮影条件を取得する。具体的には、医用画像のデータ形式に応じて、医用画像を構成するデータ構造に保存された撮影条件群を取得する。なお、医用画像に撮影条件が保存されていない場合には、取得部2801を介して、撮影装置2810や画像管理システムから撮影情報群を取得することができる。
処理可否判定部(判定部)2803は、撮影条件取得部2802によって取得された撮影条件群を用いてセグメンテーション処理部2804によって医用画像が対処可能であるか否かを判定する。セグメンテーション処理部2804は、学習済モデルを含む画像セグメンテーションエンジン(セグメンテーションエンジン)を用いて、対処可能である医用画像について画像セグメンテーション処理を行い、領域ラベル画像(領域情報)を生成する。
評価部2805は、領域ラベル画像評価エンジン(評価エンジン)を用いて、セグメンテーション処理部2804によって生成された領域ラベル画像を評価し、評価結果に基づいて領域ラベル画像を出力するか否かを判断する。領域ラベル画像評価エンジンは、画像評価指数として、入力された領域ラベル画像が尤もらしければ真値、そうでなければ偽値を出力する。評価部2805は、領域ラベル画像を評価した画像評価指数が真値である場合には、領域ラベル画像を出力すると判断する。
解析部2806は、評価部2805によって出力すべきと判断された領域ラベル画像や入力画像を用いて、入力画像の画像解析処理を行う。解析部2806は、画像解析処理により、例えば、網膜層に含まれる組織の形状変化や層厚等を算出することができる。なお、画像解析処理としては、既知の任意の画像解析処理を用いてよい。出力部2807は、領域ラベル画像や解析部2806による解析結果を表示部2820に表示させる。また、出力部2807は、領域ラベル画像や解析結果を画像処理装置2800に接続される記憶装置や外部装置等に記憶させてもよい。
次に、セグメンテーション処理部2804について詳細に説明する。セグメンテーション処理部2804は、画像セグメンテーションエンジンを用いて、入力された画像(入力)に対応する領域ラベル画像を生成する。本実施例に係る画像セグメンテーションエンジンが備える画像セグメンテーション処理手法では、学習済モデルを用いた処理を行う。
本実施例では、機械学習モデルのトレーニングに、処理対象として想定される特定の撮影条件で取得された画像である入力データと、入力データに対応する領域ラベル画像である出力データのペア群で構成された教師データを用いる。なお、特定の撮影条件には、具体的には、予め決定された撮影部位、撮影方式、撮影画角、及び画像サイズ等が含まれる。
本実施例において、教師データの入力データは、撮影装置2810と同じ機種、撮影装置2810と同じ設定により取得された画像である。なお、教師データの入力データは、撮影装置2810と同じ画質傾向を持つ撮影装置から取得された画像であってもよい。
また、教師データの出力データは、入力データに対応する領域ラベル画像である。例えば、図24を参照して説明すると、入力データは、OCTによって撮影された網膜層の断層画像Im2410である。また、出力データは、断層画像Im2410に描出された網膜層の種類に合わせて、対応する座標に網膜層の種類を表す領域ラベル値を付して、各領域を分けた領域ラベル画像Im2420である。領域ラベル画像は、断層画像を参照して専門医が作成したり、任意の画像セグメンテーション処理によって作成したり、該画像セグメンテーション処理によって作成された領域ラベル画像を専門医が修正して作成したりすることによって用意できる。
なお、教師データのペア群の入力データ群には処理対象として想定される、様々な条件を有する入力画像が網羅的に含まれる。様々な条件とは、具体的には、被検者の病態、撮影装置の撮影環境、撮影者の技術レベル等のバリエーションの組み合わせの違いによって生じる画像の条件である。入力データ群に含まれる画像の条件が網羅的になることによって、従来の画像セグメンテーション処理では精度が低くなってしまう悪条件の画像に対しても、精度の高い画像セグメンテーション処理が実施可能なように機械学習モデルがトレーニングされる。そのため、セグメンテーション処理部2804は、このようなトレーニングが行われた学習済モデルを含む画像セグメンテーションエンジンを用いることで、様々な条件の画像に対して、安定して精度の高い領域ラベル画像を生成することができる。
なお、教師データを構成するペア群のうち、画像セグメンテーション処理に寄与しないペアは教師データから取り除くことができる。例えば、教師データのペアを構成する出力データである領域ラベル画像の領域ラベル値が誤っている場合には、当該教師データを用いて学習した学習済モデルを用いて得た領域ラベル画像の領域ラベル値も誤ってしまう可能性が高くなる。つまり、画像セグメンテーション処理の精度が低くなる。そのため、誤った領域ラベル値を持つ領域ラベル画像を出力データに持つ、ペアを教師データから取り除くことで、画像セグメンテーションエンジンに含まれる学習済モデルの精度を向上できる可能性がある。
このような学習済モデルを含む画像セグメンテーションエンジンを用いることで、セグメンテーション処理部2804は、撮影で取得された医用画像が入力された場合に、該医用画像に描出された臓器や病変を特定可能な領域ラベル画像を出力することができる。
次に、図29のフローチャートを参照して、本実施例に係る一連の画像処理について説明する。図29は本実施例に係る一連の画像処理のフローチャートである。まず、本実施例に係る一連の画像処理が開始されると、処理はステップS2910に移行する。
ステップS2910では、取得部2801が、回路やネットワークを介して接続された撮影装置2810から、撮影装置2810が撮影した画像を入力画像として取得する。なお、取得部2801は、撮影装置2810からの要求に応じて、入力画像を取得してもよい。このような要求は、例えば、撮影装置2810が画像を生成した時、撮影装置2810が生成した画像を撮影装置2810の記録装置に保存する前や保存した後、保存された画像を表示部2820に表示する時、画像解析処理に領域ラベル画像を利用する時等に発行されてよい。
なお、取得部2801は、撮影装置2810から画像を生成するためのデータを取得し、画像処理装置2800が当該データに基づいて生成した画像を入力画像として取得してもよい。この場合、画像処理装置2800が各種画像を生成するための画像生成方法としては、既存の任意の画像生成方法を採用してよい。
ステップS2920では、撮影条件取得部2802が、入力画像の撮影条件群を取得する。具体的には、入力画像のデータ形式に応じて、入力画像を構成するデータ構造に保存された撮影条件群を取得する。なお、上述のように、入力画像に撮影条件が保存されていない場合には、撮影条件取得部2802は、撮影装置2810や不図示の画像管理システムから撮影情報群を取得することができる。
ステップS2930においては、処理可否判定部2803が、取得された撮影条件群を用いて、セグメンテーション処理部2804が用いる画像セグメンテーションエンジンによって入力画像を画像セグメンテーション処理可能であるか否かを判定する。具体的には、処理可否判定部2803は、入力画像の撮影部位、撮影方式、撮影画角、及び画像サイズが、画像セグメンテーションエンジンの学習済モデルを用いて対処可能な条件と一致するか否かを判定する。
処理可否判定部2803が、すべての撮影条件を判定し、対処可能と判定された場合には、処理はステップS2940に移行する。一方、処理可否判定部2803が、これら撮影条件に基づいて、画像セグメンテーションエンジンが入力画像を対処不可能であると判定した場合には、処理はステップS2970に移行する。
なお、画像処理装置2800の設定や実装形態によっては、撮影部位、撮影方式、撮影画角、及び画像サイズのうちの一部に基づいて入力画像が処理不可能であると判定されたとしても、ステップS2940が実施されてもよい。例えば、画像セグメンテーションエンジンが、被検者のいずれの撮影部位に対しても網羅的に対応可能であると想定され、入力データに未知の撮影部位が含まれていたとしても対処可能であるように実装されている場合等には、このような処理を行ってもよい。また、処理可否判定部2803は所望の構成に応じて、入力画像の撮影部位、撮影方式、撮影画角、及び画像サイズのうちの少なくとも一つが画像セグメンテーションエンジンによって対処可能な条件と一致するか否かを判定してもよい。
ステップS2940においては、セグメンテーション処理部2804が、画像セグメンテーションエンジンを用いて、入力画像に対して画像セグメンテーション処理を行い、入力画像から領域ラベル画像を生成する。具体的には、セグメンテーション処理部2804は、入力画像を画像セグメンテーションエンジンに入力する。画像セグメンテーションエンジンは、教師データを用いて機械学習を行った学習済モデルに基づいて、入力画像に描出された臓器や病変を特定可能な領域情報として領域ラベル画像を生成する。
なお、画像処理装置2800の設定や実装形態によっては、セグメンテーション処理部2804が、撮影条件群に応じて、画像セグメンテーションエンジンに入力画像とともにパラメータを入力して、画像セグメンテーション処理の範囲の程度等を調節してもよい。また、セグメンテーション処理部2804は、検者の入力に応じたパラメータを画像セグメンテーションエンジンに入力画像とともに入力して画像セグメンテーション処理の範囲の程度等を調整してもよい。
ステップS2950では、評価部2805が領域ラベル画像評価エンジンを用いて、セグメンテーション処理部2804によって生成された領域ラベル画像について、当該領域ラベル画像が尤もらしい画像か否かを評価する。本実施例では、評価部2805は、知識ベースの評価方法を用いる領域ラベル評価エンジンを用いて、領域ラベル画像が尤もらしい画像か否かを評価する。
具体的には、領域ラベル評価エンジンは、領域ラベル画像における画素値群、すなわち、領域ラベル値群の座標を確認し、位置が解剖学的に正しい位置に出力されているか否かを評価する。この場合、例えば、ある範囲において前眼部に近い座標に水晶体に対応する領域ラベル値があり、遠い座標に網膜層群に対応する領域ラベル値があれば、尤もらしく画像セグメンテーション処理できていると評価する。一方、これらの領域ラベル値がそのような想定される位置にない場合には、適切に画像セグメンテーション処理できていないと評価する。領域ラベル評価エンジンは、領域ラベルについて、尤もらしく画像セグメンテーション処理できていると評価した場合には画像評価指数として真値を出力し、尤もらしく画像セグメンテーション処理できていないと評価した場合には偽値を出力する。
評価部2805は、領域ラベル評価エンジンから出力された画像評価指数に基づいて、領域ラベル画像を出力するか否かを判断する。具体的には、評価部2805は、画像評価指数が真値である場合には領域ラベル画像を出力すると判断する。一方、画像評価指数が偽値である場合にはセグメンテーション処理部2804で生成された領域ラベル画像を出力しないと判断する。なお、評価部2805は、セグメンテーション処理部2804で生成した領域ラベル画像を出力しないと判断した場合に、領域ラベル無し画像を生成することができる。
ステップS2960では、解析部2806が、評価部2805によって領域ラベル画像を出力すると判断されたら、領域ラベル画像及び入力画像を用いて、入力画像の画像解析処理を行う。解析部2806は、例えば、画像解析処理により入力画像に描出されている層厚や組織形状の変化等を算出する。なお、画像解析処理の方法は既知の任意の処理を採用してよい。また、評価部2805によって領域ラベル画像を出力しないと判断された場合又は領域ラベル無し画像が生成された場合には、画像解析を行わずに処理を進める。
ステップS2970では、出力部2807が、評価部2805によって領域ラベル画像を出力すると判断されたら、領域ラベル画像及び画像解析結果を出力して、表示部2820に表示させる。なお、出力部2807は、表示部2820に領域ラベル画像及び画像解析結果を表示させるのに代えて、撮影装置2810や他の装置にこれらを表示させたり、記憶させたりしてもよい。また、出力部2807は、画像処理装置2800の設定や実装形態によっては、これらを撮影装置2810や他の装置が利用可能なように加工したり、画像管理システム等に送信可能なようにデータ形式を変換したりしてもよい。また、出力部2807は、領域ラベル画像及び画像解析結果の両方を出力する構成に限られず、これらのうちのいずれか一方のみを出力してもよい。
一方、ステップS2930において画像セグメンテーション処理が不可能であるとされていた場合には、出力部2807は、領域ラベル画像の一種である領域ラベル無し画像を出力し、表示部2820に表示させる。なお、領域ラベル無し画像を出力する代わりに、撮影装置2810に対して、画像セグメンテーション処理が不可能であったことを示す信号を送信してもよい。
また、ステップS2950において画像セグメンテーション処理を適切に行えなかったと判断された場合にも、出力部2807は、領域ラベル無し画像を出力し、表示部2820に表示させる。この場合にも、出力部2807は、領域ラベル無し画像を出力する代わりに、撮影装置2810に対して、画像セグメンテーション処理を適切に行えなかったことを示す信号を送信してもよい。ステップS2970における出力処理が終了すると、一連の画像処理が終了する。
上記のように、本実施例に係る画像処理装置2800は、取得部2801と、セグメンテーション処理部2804を備える。取得部2801は、被検者の所定部位の断層画像である入力画像を取得する。セグメンテーション処理部2804は、学習済モデルを含む画像セグメンテーションエンジンを用いて、入力画像から、解剖学的な領域を識別可能な領域情報である領域ラベル画像を生成する。画像セグメンテーションエンジンは、様々な条件の断層画像と、領域ラベル画像とを学習データとした学習済モデルを含む。当該画像セグメンテーションエンジンは、断層画像を入力とし、領域ラベル画像を出力とする。
また、画像処理装置2800は、評価部2805を更に備える。評価部2805は、解剖学的特徴を用いた知識ベースの評価エンジンを用いて領域ラベル画像を評価し、評価の結果に応じて領域ラベル画像を出力するか否かを判断する。
当該構成により、本実施例に係る画像処理装置2800は、学習済モデルを含むセグメンテーションエンジンを用いて、画像診断や画像解析に利用可能なROIやVOIを特定するために用いる領域情報として領域ラベル画像を生成することができる。そのため、従来のセグメンテーション処理について悪条件な入力画像に対しても、精度の高い領域ラベル画像を出力することができ、画像診断や画像解析に利用可能なROIやVOIを提供できる。
さらに、画像処理装置2800は、評価部2805によって領域ラベル画像が尤もらしい画像か否か評価することで、画像診断や画像解析に不適切な領域ラベル画像が用いられることを防止することができる。
また、画像処理装置2800は、撮影条件取得部2802と、処理可否判定部2803とを更に備える。撮影条件取得部2802は、入力画像の撮影部位、撮影方式、撮影画角、及び画像サイズの少なくとも一つを含む撮影条件を取得する。処理可否判定部2803は、画像セグメンテーションエンジンを用いて入力画像から領域ラベル画像を生成可能であるか否かを判定する。処理可否判定部2803は、入力画像の撮影条件に基づいて当該判定を行う。
当該構成により、本実施例に係る画像処理装置2800は、セグメンテーション処理部2804が処理できない入力画像を画像セグメンテーション処理から省くことができ、画像処理装置2800の処理負荷やエラーの発生を低減させることができる。
さらに、画像処理装置2800は、領域情報である領域ラベル画像を用いて、入力画像の画像解析を行う解析部2806を更に備える。当該構成により、画像処理装置2800は、セグメンテーション処理部2804によって生成された精度の高い領域ラベル画像を用いて画像解析を行うことができ、精度の高い解析結果を得ることができる。
本実施例においては、処理可否判定部2803が、画像セグメンテーションエンジンによって画像セグメンテーション処理可能な入力画像であるか否かを判定する。その後、処理可否判定部2803が、セグメンテーション処理部2804によって処理可能な入力画像であると判定した場合に、セグメンテーション処理部2804が画像セグメンテーション処理を行う。これに対し、撮影装置2810によって、画像セグメンテーション処理可能な撮影条件でのみ撮影が行なわれる等の場合には、撮影装置2810から取得した画像に対し無条件に画像セグメンテーション処理を行ってもよい。この場合には、図30に示すように、ステップS2920とステップS2930の処理を省き、ステップS2910の次にステップS2940を実施することができる。
なお、本実施例においては、出力部2807(表示制御部)は、生成された領域ラベル画像や解析結果を表示部2820に表示させる構成としたが、出力部2807の動作はこれに限られない。例えば、出力部2807は、領域ラベル画像や解析結果を撮影装置2810や画像処理装置2800に接続される他の装置に出力することもできる。このため、領域ラベル画像や解析結果は、これらの装置のユーザーインターフェースに表示されたり、任意の記録装置に保存されたり、任意の画像解析に利用されたり、画像管理システムに送信されたりすることができる。
また、本実施例においては、出力部2807が、表示部2820に領域ラベル画像や画像解析結果を表示させる構成とした。しかしながら、出力部2807は、検者からの指示に応じて、領域ラベル画像や画像解析結果を表示部2820に表示させてもよい。例えば、出力部2807は、検者が表示部2820のユーザーインターフェース上の任意のボタンを押すことに応じて、領域ラベル画像や画像解析結果を表示部2820に表示させてもよい。この場合、出力部2807は、入力画像と切り替えて領域ラベル画像を表示させてもよい。また、出力部2807は、図31のように入力画像UI3110と並べて領域ラベル画像UI3120を表示させてもよいし、図32のUI3210~UI3240のいずれかのように入力画像と半透明化した領域ラベル画像とを重畳して表示させてもよい。なお、半透明化の方法は既知の任意のものであってよく、例えば、領域ラベル画像の透明度を所望の値に設定することで、領域ラベル画像を半透明化することができる。
また、出力部2807は、領域ラベル画像が学習済モデルを用いて生成されたものである旨や学習済モデルを用いて生成された領域ラベル画像に基づいて行われた画像解析の結果である旨を表示部2820に表示させてもよい。さらに、出力部2807は、学習済モデルがどのような教師データによって学習を行ったものであるかを示す表示を表示部2820に表示させてもよい。当該表示としては、教師データの入力データと出力データの種類の説明や、入力データと出力データに含まれる撮影部位等の教師データに関する任意の表示を含んでよい。
本実施例では、処理可否判定部2803が、画像セグメンテーションエンジンによって入力画像が対処可能であると判断したら、処理がステップS2940に移行して、セグメンテーション処理部2804による画像セグメンテーション処理が開始された。これに対し、出力部2807が処理可否判定部2803による判定結果を表示部2820に表示させ、セグメンテーション処理部2804が検者からの指示に応じて画像セグメンテーション処理を開始してもよい。この際、出力部2807は、判定結果とともに、入力画像や入力画像について取得した撮影部位等の撮影条件を表示部2820に表示させることもできる。この場合には、検者によって判定結果が正しいか否か判断された上で、画像セグメンテーション処理が行われるため、誤判定に基づく画像セグメンテーション処理を低減させることができる。
また、これに関連して、処理可否判定部2803による判定を行わず、出力部2807が入力画像や入力画像について取得した撮影部位等の撮影条件を表示部2820に表示させてもよい。この場合には、セグメンテーション処理部2804が検者からの指示に応じて画像セグメンテーション処理を開始することができる。
さらに、本実施例では、評価部2805は、知識ベースの評価方法を採用する領域ラベル画像評価エンジンを用いて、セグメンテーション処理部2804によって生成された領域ラベル画像を評価した。これに対し、評価部2805は、領域ラベル画像と所定の評価手法による画像評価指数を教師データとしてトレーニングを行った学習済モデルを含む領域ラベル画像評価エンジンを用いて、領域ラベル画像が尤もらしい画像か否かを評価してもよい。
この場合には、領域ラベル画像評価エンジンに含まれる機械学習モデルの教師データは、領域ラベル画像や領域ラベル画像らしい偽画像を入力データとし、各画像に対する画像評価指数を出力データとする。画像評価指数としては、入力データが適切な領域ラベル画像である場合には真値、偽画像である場合には偽値とする。なお、偽画像の生成方法としては、適切でない条件を設定した領域ラベル画像の任意のジェネレーターを用いる方法や、適切な領域ラベル画像に意図的に不適切な領域ラベルを上書きして生成する方法等を採用してよい。
評価部2805が、このような学習を行った学習済モデルを含む領域ラベル画像評価エンジンを用いて、領域ラベル画像が尤もらしい画像か否かを評価した場合でも、画像診断や画像解析に不適切な領域ラベル画像が用いられることを防止することができる。
なお、処理可否判定部2803によって画像セグメンテーション処理が不可能であると判定された場合において、領域ラベル無し画像は、出力部2807によって生成されてもよいし、処理可否判定部2803によって生成されてもよい。また、評価部2805によって画像セグメンテーションが適切に行われていないと判断された場合には、ステップS2970において出力部2807が、画像セグメンテーションを適切に行えなかった旨を表示部2820に表示させてもよい。
(実施例9)
次に、図28及び33を参照して、実施例9に係る画像処理装置について説明する。実施例8では、セグメンテーション処理部2804は、一つの画像セグメンテーションエンジンを備えていた。これに対して、本実施例では、セグメンテーション処理部は、異なる教師データを用いて機械学習を行ったそれぞれの学習済モデルを含む複数の画像セグメンテーションエンジンを用いて、入力画像に対して複数の領域ラベル画像を生成する。
特に明記しない限り、本実施例に係る画像処理装置の構成及び処理は、実施例8に係る画像処理装置2800と同様である。そのため、以下では、本実施例に係る画像処理装置について、実施例8に係る画像処理装置との違いを中心として説明する。なお、本実施例に係る画像処理装置の構成は、実施例8に係る画像処理装置の構成と同様であるため、図28に示す構成について同一の参照符号を用いて示し、説明を省略する。
本実施例に係るセグメンテーション処理部2804は、異なる教師データを用いて機械学習が行われたそれぞれの学習済モデルを含む二つ以上の画像セグメンテーションエンジンを用いて、入力画像に対して画像セグメンテーション処理を行う。
ここで、本実施例に係る教師データ群の作成方法について説明する。具体的には、まず、様々な撮影部位が撮影された、入力データとしての画像と出力データとしての領域ラベル画像とのペア群を用意する。次に、撮影部位毎にペア群をグルーピングすることで、教師データ群を作成する。例えば、第一の撮影部位を撮影して取得されたペア群で構成される第一の教師データ、第二の撮影部位を撮影して取得されたペア群で構成される第二の教師データというように、教師データ群を作成する。
その後、各教師データを用いて、別々の画像セグメンテーションエンジンに含まれる機械学習モデルに機械学習を行わせる。例えば、第一の教師データでトレーニングされた学習済モデルを含む第一の画像セグメンテーションエンジンを用意する。加えて、第二の教師データでトレーニングされた学習済モデルを含む第二の画像セグメンテーションエンジンを用意する、というように画像セグメンテーションエンジン群を用意する。
このような画像セグメンテーションエンジンは、それぞれが含む学習済モデルのトレーニングに用いた教師データが異なる。そのため、このような画像セグメンテーションエンジンは、画像セグメンテーションエンジンに入力される画像の撮影条件によって、入力画像を画像セグメンテーション処理できる程度が異なる。具体的には、第一の画像セグメンテーションエンジンは、第一の撮影部位を撮影して取得された入力画像に対しては画像セグメンテーション処理の精度が高く、第二の撮影部位を撮影して取得された画像に対しては画像セグメンテーション処理の精度が低い。同様に、第二の画像セグメンテーションエンジンは、第二の撮影部位を撮影して取得された入力画像に対しては画像セグメンテーション処理の精度が高く、第一の撮影部位を撮影して取得された画像に対しては画像セグメンテーション処理の精度が低い。
教師データのそれぞれが撮影部位によってグルーピングされたペア群で構成されることにより、該ペア群を構成する画像群の画質傾向が似る。このため、画像セグメンテーションエンジンは対応する撮影部位であれば、実施例8に係る画像セグメンテーションエンジンよりも精度良く画像セグメンテーション処理を行うことができる。なお、教師データのペアをグルーピングするための撮影条件は、撮影部位に限られず、撮影画角であったり、画像の解像度であったり、これらのうちの二つ以上の組み合わせであったりしてもよい。
図33を参照して、本実施例に係る一連の画像処理について説明する。図33は、本実施例に係る一連の画像処理のフローチャートである。なお、ステップS3310及びステップS3320の処理は、実施例8に係るステップS2910及びステップS2920と同様であるため、説明を省略する。なお、入力画像に対して、無条件で画像セグメンテーション処理する場合には、ステップS3320の処理の後に、ステップS3330の処理を省き、処理をステップS3340に移行してよい。
ステップS3320において入力画像の撮影条件が取得されると、処理はステップS3330に移行する。ステップS3330においては、処理可否判定部2803が、ステップS3320において取得した撮影条件群を用いて、前述の画像セグメンテーションエンジン群のいずれかが、入力画像を対処可能であるか否かを判定する。
処理可否判定部2803が、画像セグメンテーションエンジン群のいずれも入力画像を対処不可能であると判定した場合には、処理はステップS3380に移行する。一方で、処理可否判定部2803が、画像セグメンテーションエンジン群のいずれかが入力画像を対処可能であると判定した場合には、処理はステップS3340に移行する。なお、画像処理装置2800の設定や実装形態によっては、実施例8と同様に、画像セグメンテーションエンジンによって一部の撮影条件が対処不可能であると判定されたとしても、ステップS3340を実施してもよい。
ステップS3340においては、セグメンテーション処理部2804が、ステップS3320で取得した入力画像の撮影条件及び画像セグメンテーションエンジン群の教師データの情報に基づいて、処理を行う画像セグメンテーションエンジンを選択する。具体的には、例えば、ステップS3320において取得した撮影条件群のうちの撮影部位に対して、同撮影部位又は周囲の撮影部位に関する教師データの情報を有し、画像セグメンテーション処理の精度が高い画像セグメンテーションエンジンを選択する。上述の例では、撮影部位が第一の撮影部位である場合には、セグメンテーション処理部2804は第一の画像セグメンテーションエンジンを選択する。
ステップS3350では、セグメンテーション処理部2804が、ステップS3340において選択した画像セグメンテーションエンジンを用いて、入力画像を画像セグメンテーション処理した領域ラベル画像を生成する。ステップS3360及びS3370は、実施例8におけるステップS2950及びS2960と同様であるため、説明を省略する。
ステップS3370において画像解析が行われたら処理はステップS3380に移行する。ステップS3380では、出力部2807は、評価部2805によって領域ラベル画像を出力すると判断されたら、領域ラベル画像及び解析結果を出力して、表示部2820に表示させる。なお、出力部2807は、領域ラベル画像を表示部2820に表示させる際、セグメンテーション処理部2804によって選択された画像セグメンテーションエンジンを用いて生成された領域ラベル画像である旨を表示させてもよい。なお、出力部2807は、領域ラベル画像及び解析結果のいずれか一方のみを出力してもよい。
一方、ステップS3330において画像セグメンテーション処理が不可能であるとされていた場合には、出力部2807は、領域ラベル画像の一種である領域ラベル無し画像を出力し、表示部2820に表示させる。なお、領域ラベル無し画像を生成する代わりに、撮影装置2810に対して、画像セグメンテーション処理が不可能であったことを示す信号を送信してもよい。
また、ステップS3360において画像セグメンテーション処理を適切に行えなかったと判断された場合にも、出力部2807は、領域ラベル画像の一種である領域ラベル無し画像を出力し、表示部2820に表示させる。この場合にも、出力部2807は、領域ラベル無し画像を生成する代わりに、撮影装置2810に対して、画像セグメンテーション処理を適切に行えなかったことを示す信号を送信してもよい。ステップS3380における出力処理が終了すると、一連の画像処理が終了する。
上記のように、本実施例に係るセグメンテーション処理部2804は、異なる学習データを用いて学習を行ったそれぞれの学習済モデルを含む複数の画像セグメンテーションエンジンの少なくとも一つを用いて、領域ラベル画像を生成する。本実施例では、複数の画像セグメンテーションエンジンの各々は、それぞれ撮影部位、撮影画角、及び画像の解像度のうちの少なくとも一つについての異なる学習データを用いて学習を行った学習済モデルを含む。セグメンテーション処理部2804は、入力画像の撮影部位、撮影画角、及び画像の解像度のうちの少なくとも一つに応じた画像セグメンテーションエンジンを用いて、領域ラベル画像を生成する。
このような構成により、本実施例に係る画像処理装置2800は、撮影条件に合わせて、より精度の高い画像セグメンテーション処理を実施することができる。
本実施例では、セグメンテーション処理部2804が、入力画像の撮影条件に基づいて画像セグメンテーション処理に用いる画像セグメンテーションエンジンを選択したが、画像セグメンテーションエンジンの選択処理はこれに限られない。例えば、出力部2807が、取得した入力画像の撮影条件と画像セグメンテーションエンジン群を表示部2820のユーザーインターフェースに表示させてもよい。さらに、検者からの指示に応じて、セグメンテーション処理部2804が画像セグメンテーション処理に用いる画像セグメンテーションエンジンを選択してもよい。
なお、出力部2807は、画像セグメンテーションエンジン群とともに各画像セグメンテーションエンジンの学習に用いた教師データの情報を表示部2820に表示させてもよい。なお、画像セグメンテーションエンジンの学習に用いた教師データの情報の表示態様は任意であってよく、例えば、学習に用いた教師データに関連する名称を用いて画像セグメンテーションエンジン群を表示してもよい。
また、出力部2807が、セグメンテーション処理部2804によって選択された画像セグメンテーションエンジンを表示部2820のユーザーインターフェースに表示させ、検者からの指示を受け付けてもよい。この場合、セグメンテーション処理部2804は、検者からの指示に応じて、当該画像セグメンテーションエンジンを画像セグメンテーション処理に用いる画像セグメンテーションエンジンとして最終的に選択するか否かを判断してもよい。
なお、出力部2807は、実施例8と同様に、生成された領域ラベル画像や評価結果を撮影装置2810や画像処理装置2800に接続される他の装置に出力してもよい。また、出力部2807は、画像処理装置2800の設定や実装形態によっては、これらを撮影装置2810や他の装置が利用可能なように加工したり、画像管理システム等に送信可能なようにデータ形式を変換したりしてもよい。
(実施例10)
次に、図28及び33を参照して、実施例10に係る画像処理装置について説明する。実施例8及び9では、撮影条件取得部2802は、入力画像のデータ構造等から撮影条件群を取得する。これに対して、本実施例では、撮影条件取得部は、撮影箇所推定エンジンを用いて、入力画像の撮影部位又は撮影領域を入力画像に基づいて推定する。
特に明記しない限り、本実施例に係る画像処理装置の構成及び処理は、実施例9に係る画像処理装置2800と同様である。そのため、以下では、本実施例に係る画像処理装置について、実施例9に係る画像処理装置との違いを中心として説明する。なお、本実施例に係る画像処理装置の構成は、実施例8及び9に係る画像処理装置の構成と同様であるため、図28に示す構成について同一の参照符号を用いて示し、説明を省略する。
本実施例に係る撮影条件取得部2802は、撮影箇所推定エンジン(推定エンジン)を用いて、取得部2801が取得した入力画像に描画されている撮影部位又は撮影領域を推定し、取得する。本実施例に係る撮影箇所推定エンジンの備える撮影箇所の推定手法では、機械学習アルゴリズムを用いた推定処理を行う。
本実施例では、機械学習アルゴリズムを用いた撮影箇所推定手法に係る学習済モデルのトレーニングには、画像である入力データと、入力データに対応する撮影部位ラベルである出力データとのペア群で構成された教師データを用いる。ここで、入力データとは、処理対象(入力画像)として想定される特定の撮影条件を持つ画像のことである。入力データとしては、撮影装置2810と同じ画質傾向を持つ撮影装置から取得された画像であることが好ましく、撮影装置2810と同じ設定をされた同じ機種であるとより良い。出力データである撮影部位ラベルの種類は、入力データに少なくとも一部が含まれている撮影部位であってよい。出力データである撮影部位ラベルの種類は、例えば、“黄斑部”、“視神経乳頭部”、“黄斑部及び視神経乳頭部”、並びに“その他”等であってよい。
本実施例に係る撮影箇所推定エンジンは、このような教師データを用いた学習を行った学習済モデルを含むことにより、入力された画像に描出されている撮影部位や撮影領域がどこであるかを出力することができる。また、撮影箇所推定エンジンは、必要な詳細レベルの撮影部位ラベルや撮影領域ラベル毎に、該撮影部位や撮影領域である確率を出力することもできる。
撮影箇所推定エンジンを用いることで、撮影条件取得部2802は、入力画像に基づいて、入力画像の撮影部位や撮影領域を推定し、入力画像についての撮影条件として取得することができる。なお、撮影箇所推定エンジンが撮影部位ラベルや撮影領域ラベル毎に、該撮影部位や撮影領域である確率を出力する場合には、撮影条件取得部2802は、最も確率の高い撮影部位や撮影領域を入力画像の撮影条件として取得する。
次に、実施例9と同様に、図33のフローチャートを参照して、本実施例に係る一連の画像処理について説明する。なお、本実施例に係るステップS3310、及びステップS3330~ステップS3380の処理は、実施例9におけるこれらの処理と同様であるため、説明を省略する。なお、入力画像に対して、無条件で画像セグメンテーション処理する場合には、ステップS3320の処理の後に、ステップS3330の処理を省き、処理をステップS3340に移行してよい。
ステップS3310において入力画像が取得されると、処理はステップS3320に移行する。ステップS3320では、撮影条件取得部2802が、ステップS3310において取得した入力画像の撮影条件群を取得する。
具体的には、入力画像のデータ形式に応じて、入力画像を構成するデータ構造に保存された撮影条件群を取得する。また、撮影条件群に撮影部位や撮影領域に関する情報が含まれていない場合、撮影条件取得部2802は撮影箇所推定エンジンに入力画像を入力し、入力画像がどの撮影部位・撮影領域を撮影して取得されたものなのかを推定する。具体的には、撮影条件取得部2802は、撮影箇所推定エンジンに入力画像を入力し、撮影部位ラベル群又は撮影領域ラベル群のそれぞれに対して出力された確率を評価し、最も確率の高い撮影部位又は撮影領域を入力画像の撮影条件として設定・取得する。
なお、入力画像に撮影部位や撮影領域以外の撮影条件が保存されていない場合には、撮影条件取得部2802は、撮影装置2810や不図示の画像管理システムから撮影情報群を取得することができる。以降の処理は、実施例9に係る一連の画像処理と同様であるため説明を省略する。
上記のように、本実施例に係る撮影条件取得部2802は、学習済モデルを含む撮影箇所推定エンジンを用いて、入力画像から撮影部位及び撮影領域のうちの少なくとも一方を推定する推定部として機能する。撮影条件取得部2802は、撮影部位や撮影領域のラベルが付けられた画像を学習データとした学習済モデルを含む撮影箇所推定エンジンに入力画像を入力することで、入力画像の撮影部位や撮影領域を推定する。
これにより、本実施例に係る画像処理装置2800は、入力画像の撮影部位や撮影領域についての撮影条件を入力画像に基づいて取得することができる。
なお、本実施例では、撮影条件取得部2802は、撮影条件群に撮影部位や撮影領域に関する情報が含まれていない場合に撮影箇所推定エンジンを用いて入力画像の撮影部位や撮影領域について推定を行った。しかしながら、撮影箇所推定エンジンを用いて撮影部位や撮影領域について推定を行う状況はこれに限られない。撮影条件取得部2802は、入力画像のデータ構造に含まれる撮影部位や撮影領域についての情報が、必要な詳細レベルの情報として不足している場合にも、撮影箇所推定エンジンを用いて撮影部位や撮影領域について推定を行ってもよい。
また、入力画像のデータ構造に撮影部位や撮影領域についての情報が含まれているか否かとは無関係に、撮影条件取得部2802が撮影箇所推定エンジンを用いて入力画像の撮影部位や撮影領域を推定してもよい。この場合、出力部2807が、撮影箇所推定エンジンから出力された推定結果と入力画像のデータ構造に含まれる撮影部位や撮影領域についての情報を表示部2820に表示させ、撮影条件取得部2802が検者の指示に応じて、これらの撮影条件を決定してもよい。
(実施例11)
次に、図28、29、34及び35を参照して、実施例11に係る画像処理装置について説明する。本実施例では、セグメンテーション処理部が、入力画像を画像セグメンテーションエンジンが対処可能な画像サイズになるように、入力画像を拡大又は縮小する。また、セグメンテーション処理部は、画像セグメンテーションエンジンからの出力画像を、入力画像の画像サイズになるように縮小又は拡大して領域ラベル画像を生成する。
特に明記しない限り、本実施例に係る画像処理装置の構成及び処理は、実施例8に係る画像処理装置2800と同様である。そのため、以下では、本実施例に係る画像処理装置について、実施例8に係る画像処理装置との違いを中心として説明する。なお、本実施例に係る画像処理装置の構成は、実施例8に係る画像処理装置の構成と同様であるため、図28に示す構成について同一の参照符号を用いて示し、説明を省略する。
本実施例に係るセグメンテーション処理部2804には、実施例8に係る画像セグメンテーションエンジンと同様の、画像セグメンテーションエンジンが備えられている。ただし、本実施例では、画像セグメンテーションエンジンが含む機械学習モデルの学習に用いる教師データが実施例8における教師データと異なる。具体的には、本実施例では、教師データとして、入力データの画像及び出力データの画像を一定の画像サイズになるように拡大又は縮小した画像群により構成した、入力データと出力データのペア群を用いている。
ここで、図34を参照して、本実施例に係る画像セグメンテーションエンジンが含む学習済モデルの教師データについて説明する。図34に示すように、例えば、教師データについて設定された一定の画像サイズより小さな入力画像Im3410と領域ラベル画像Im3420とがある場合を考える。この場合、教師データについて設定された一定の画像サイズとなるように、入力画像Im3410及び領域ラベル画像Im3420のそれぞれを拡大する。そして、拡大した画像Im3411と拡大した領域ラベル画像Im3421とをペアとして、当該ペアを教師データの一つとして用いる。
なお、実施例8と同様に、教師データの入力データには、処理対象(入力画像)として想定される特定の撮影条件を持つ画像を用いるが、当該特定の撮影条件は、予め決定された撮影部位、撮影方式、及び撮影画角である。つまり、本実施例に係る当該特定の撮影条件には、実施例8と異なり、画像サイズは含まれない。
本実施例に係るセグメンテーション処理部2804は、このような教師データで学習が行われた画像セグメンテーションエンジンを用いて、入力画像を画像セグメンテーション処理して領域ラベル画像を生成する。この際、セグメンテーション処理部2804は、入力画像を教師データについて設定された一定の画像サイズになるように拡大又は縮小した変形画像を生成し、変形画像を画像セグメンテーションエンジンに入力する。
また、セグメンテーション処理部2804は、画像セグメンテーションエンジンからの出力画像を入力画像の画像サイズになるように縮小又は拡大し、領域ラベル画像を生成する。このため、本実施例に係るセグメンテーション処理部2804は、実施例8では対処できなかった画像サイズの入力画像であっても、画像セグメンテーションエンジンを用いて画像セグメンテーション処理して領域ラベル画像を生成することができる。
次に、図29及び35を参照して、本実施例に係る一連の画像処理について説明する。図35は、本実施例に係るセグメンテーション処理のフローチャートである。なお、本実施例に係るステップS2910、ステップS2920、及びステップS2950~ステップS2970の処理は、実施例8におけるこれらの処理と同様であるため、説明を省略する。なお、入力画像に対して、画像サイズ以外の撮影条件について無条件で画像セグメンテーション処理する場合には、ステップS2920の処理の後に、ステップS2930の処理を省き、処理をステップS2940に移行してよい。
ステップS2920において、実施例8と同様に、撮影条件取得部2802が入力画像の撮影条件群を取得したら処理はステップS2930に移行する。ステップS2930では、処理可否判定部2803が、取得された撮影条件群を用いて、画像セグメンテーションエンジンによって入力画像を対処可能であるか否かを判定する。具体的には、処理可否判定部2803は、入力画像の撮影条件について、画像セグメンテーションエンジンが対処可能な、撮影部位、撮影方式、及び撮影画角であるか否かを判定する。処理可否判定部2803は、実施例8と異なり、画像サイズは判定しない。
処理可否判定部2803が、撮影部位、撮影方式、及び撮影画角について判定し、入力画像が対処可能と判定された場合には、処理はステップS2940に移行する。一方、処理可否判定部2803が、これら撮影条件に基づいて、画像セグメンテーションエンジンが入力画像を対処不可能であると判定した場合には、処理はステップS2970に移行する。なお、画像処理装置2800の設定や実装形態によっては、撮影部位、撮影方式、及び撮影画角のうちの一部に基づいて入力画像が処理不可能であると判定されたとしても、ステップS2940における画像セグメンテーション処理が実施されてもよい。
処理がステップS2940に移行すると、図35に示される本実施例に係る画像セグメンテーション処理が開始される。本実施例に係る画像セグメンテーション処理では、まず、ステップS3510において、セグメンテーション処理部2804が、入力画像を教師データについて設定された一定の画像サイズに拡大又は縮小し、変形画像を生成する。
次に、ステップS3520において、セグメンテーション処理部2804は、生成した変形画像を画像セグメンテーションエンジンに入力し、画像セグメンテーション処理された第一の領域ラベル画像を取得する。
その後、ステップS3530において、セグメンテーション処理部2804は、第一の領域ラベル画像を入力画像の画像サイズに縮小又は拡大し、最終的な領域ラベル画像を生成する。セグメンテーション処理部2804がステップS3530において最終的な領域ラベル画像を生成したら、本実施例に係る画像セグメンテーション処理は終了し、処理はステップS2950に移行する。ステップS2950以降の処理は、実施例8のステップS2950以降の処理と同様であるため説明を省略する。
上記のように、本実施例に係るセグメンテーション処理部2804は、入力画像の画像サイズを、画像セグメンテーションエンジンが対処可能な画像サイズに調整して画像セグメンテーションエンジンに入力する。また、セグメンテーション処理部2804は、画像セグメンテーションエンジンからの出力画像を入力画像の元の画像サイズに調整することで領域ラベル画像を生成する。これにより、本実施例の画像処理装置2800は、実施例8では対応しなかった画像サイズの入力画像についても画像セグメンテーション処理して、画像診断や画像解析に利用可能なROIやVOIの情報を含む領域ラベル画像を生成することができる。
(実施例12)
次に、図28、29、36及び37を参照して、実施例12に係る画像処理装置について説明する。本実施例では、セグメンテーション処理部が、画像セグメンテーションエンジンによる一定の解像度を基準とした画像セグメンテーション処理により領域ラベル画像を生成する。
特に明記しない限り、本実施例に係る画像処理装置の構成及び処理は、実施例8に係る画像処理装置2800と同様である。そのため、以下では、本実施例に係る画像処理装置について、実施例8に係る画像処理装置との違いを中心として説明する。なお、本実施例に係る画像処理装置の構成は、実施例8に係る画像処理装置の構成と同様であるため、図28に示す構成について同一の参照符号を用いて示し、説明を省略する。
本実施例に係るセグメンテーション処理部2804には、実施例8と同様の、画像セグメンテーションエンジンが備えられている。ただし、本実施例では、画像セグメンテーションエンジンが含む機械学習モデルの学習に用いる教師データが実施例8における教師データと異なる。具体的には、教師データの入力データと出力データとのペア群を構成する画像群の解像度が一定の解像度となるような画像サイズに当該画像群を拡大又は縮小した後、十分に大きい一定の画像サイズとなるようにパディングしている。ここで、画像群の解像度とは、例えば、撮影装置の空間分解能や撮影領域に対する解像度をいう。
ここで、図36を参照して、本実施例に係る画像セグメンテーションエンジンの教師データについて説明する。図36に示すように、例えば、教師データについて設定された一定の解像度より低い解像度を持つ画像Im3610と領域ラベル画像Im3620とがある場合を考える。この場合、教師データについて設定された一定の解像度となるように、画像Im3610と領域ラベル画像Im3620のそれぞれを拡大する。さらに、拡大された画像Im3610と領域ラベル画像Im3620のそれぞれに対して、教師データについて設定された一定の画像サイズとなるようにパディングする。そして、拡大及びパディングが行われた画像Im3611と領域ラベル画像Im3621とをペアとし、当該ペアを教師データの一つとして用いる。
なお、教師データについて設定された一定の画像サイズとは、処理対象(入力画像)として想定される画像を一定の解像度となるように拡大又は縮小したときの最大となりうる画像サイズである。当該一定の画像サイズが十分に大きくない場合には、画像セグメンテーションエンジンに入力された画像を拡大したときに、学習済モデルが対処不可能な画像サイズとなる可能性がある。
また、パディングが行われる領域は、効果的に画像セグメンテーション処理できるように学習済モデルの特性に合わせて、一定の画素値で埋めたり、近傍画素値で埋めたり、ミラーパディングしたりする。なお、実施例8と同様に、入力データには、処理対象として想定される特定の撮影条件を持つ画像を用いるが、当該特定の撮影条件は、予め決定された撮影部位、撮影方式、撮影画角である。つまり、本実施例に係る当該特定の撮影条件には、実施例8と異なり、画像サイズは含まれない。
本実施例に係るセグメンテーション処理部2804は、このような教師データで学習が行われた学習済モデルを含む画像セグメンテーションエンジンを用いて、入力画像を画像セグメンテーション処理して領域ラベル画像を生成する。この際、セグメンテーション処理部2804は、入力画像を教師データについて設定された一定の解像度になるように拡大又は縮小した変形画像を生成する。また、セグメンテーション処理部2804は、変形画像について、教師データについて設定された一定の画像サイズとなるようにパディングを行ってパディング画像を生成し、パディング画像を画像セグメンテーションエンジン入力する。
また、セグメンテーション処理部2804は、画像セグメンテーションエンジンから出力された第一の領域ラベル画像について、パディングを行った領域分だけトリミングし、第二の領域ラベル画像を生成する。その後、セグメンテーション処理部2804は、生成した第二の領域ラベル画像を入力画像の画像サイズになるように縮小又は拡大し、最終的な領域ラベル画像を生成する。
このため、本実施例に係るセグメンテーション処理部2804は、実施例8では対処できなかった画像サイズの入力画像であっても、画像セグメンテーションエンジンによって画像セグメンテーション処理して領域ラベル画像を生成することができる。
次に、図29及び37を参照して、本実施例に係る一連の画像処理について説明する。図37は、本実施例に係る画像セグメンテーション処理のフローチャートである。なお、本実施例に係るステップS2910、ステップS2920、及びステップS2950~ステップS2970の処理は、実施例8におけるこれらの処理と同様であるため、説明を省略する。なお、入力画像に対して、画像サイズ以外の撮影条件について無条件で画像セグメンテーション処理する場合には、ステップS2920の処理の後に、ステップS2930の処理を省き、処理をステップS2940に移行してよい。
ステップS2920において、実施例8と同様に、撮影条件取得部2802が入力画像の撮影条件群を取得したら、処理はステップS2930に移行する。ステップS2930では、処理可否判定部2803が、取得された撮影条件群を用いて、画像セグメンテーションエンジンによって入力画像を対処可能であるか否かを判定する。具体的には、処理可否判定部2803は、入力画像の撮影条件について、画像セグメンテーションエンジンが対処可能な、撮影部位、撮影方式、及び撮影画角であるか否かを判定する。処理可否判定部2803は、実施例8と異なり、画像サイズは判定しない。
処理可否判定部2803が、撮影部位、撮影方式、及び撮影画角について判定し、入力画像が対処可能と判定された場合には、処理はステップS2940に移行する。一方、処理可否判定部2803が、これら撮影条件に基づいて、画像セグメンテーションエンジンが入力画像を対処不可能であると判定した場合には、処理はステップS2970に移行する。なお、画像処理装置2800の設定や実装形態によっては、撮影部位、撮影方式、及び撮影画角のうちの一部に基づいて入力画像が処理不可能であると判定されたとしても、ステップS2940における画像セグメンテーション処理が実施されてもよい。
処理がステップS2940に移行すると、図37に示される本実施例に係る画像セグメンテーション処理が開始される。本実施例に係る画像セグメンテーション処理では、まず、ステップS3710において、セグメンテーション処理部2804が、入力画像を教師データについて設定された一定の解像度となるように拡大又は縮小し、変形画像を生成する。
次に、ステップS3720において、セグメンテーション処理部2804は、生成した変形画像について、教師データについて設定された画像サイズとなるように、パディングを行ってパディング画像を生成する。この際、セグメンテーション処理部2804は、パディングを行う領域について、効果的に画像セグメンテーション処理できるように学習済モデルの特性に合わせて、一定の画素値で埋めたり、近傍画素値で埋めたり、ミラーパディングしたりする。
ステップS3730では、セグメンテーション処理部2804がパディング画像を画像セグメンテーションエンジンに入力し画像セグメンテーション処理された第一の領域ラベル画像を取得する。
次に、ステップS3740において、セグメンテーション処理部2804は、第一の領域ラベル画像について、ステップS3720でパディングを行った領域分だけトリミングを行い、第二の領域ラベル画像を生成する。
その後、ステップS3750において、セグメンテーション処理部2804は、第二の領域ラベル画像を入力画像の画像サイズに縮小又は拡大し、最終的な領域ラベル画像を生成する。セグメンテーション処理部2804がステップS3750において最終的な領域ラベル画像を生成したら、本実施例に係る画像セグメンテーション処理は終了し、処理はステップS2950に移行する。ステップS2950以降の処理は、実施例8のステップS2950以降の処理と同様であるため説明を省略する。
上記のように、本実施例によるセグメンテーション処理部2804は、入力画像の解像度が所定の解像度となるように、入力画像の画像サイズを調整する。また、セグメンテーション処理部2804は、画像サイズが調整された入力画像について、画像セグメンテーションエンジンによって対処可能な画像サイズとなるように、パディングを行った画像を生成し、画像セグメンテーションエンジンに入力する。その後、セグメンテーション処理部2804は、画像セグメンテーションエンジンからの出力画像について、パディングを行った領域分だけトリミングを行う。そして、セグメンテーション処理部2804は、トリミングが行われた画像の画像サイズを、入力画像の元の画像サイズに調整することで領域ラベル画像を生成する。
これにより、本実施例のセグメンテーション処理部2804は、実施例8では対処できなかった画像サイズの入力画像であっても、画像セグメンテーションエンジンによって画像セグメンテーション処理して領域ラベル画像を生成することができる。また、解像度を基準とした教師データで学習した画像セグメンテーションエンジンを用いることで、同一画像サイズの画像を処理する実施例10に係る画像セグメンテーションエンジンより効率よく入力画像を画像セグメンテーション処理できる場合がある。
(実施例13)
次に、図28、29、及び38乃至40を参照して、実施例13に係る画像処理装置について説明する。本実施例では、セグメンテーション処理部が、入力画像を一定の画像サイズの領域毎に画像セグメンテーション処理することにより領域ラベル画像を生成する。
特に明記しない限り、本実施例に係る画像処理装置の構成及び処理は、実施例8に係る画像処理装置2800と同様である。そのため、以下では、本実施例に係る画像処理装置について、実施例8に係る画像処理装置との違いを中心として説明する。なお、本実施例に係る画像処理装置の構成は、実施例8に係る画像処理装置の構成と同様であるため、図28に示す構成について同一の参照符号を用いて示し、説明を省略する。
本実施例に係るセグメンテーション処理部2804には、実施例8と同様の、画像セグメンテーションエンジンが備えられている。ただし、本実施例では、画像セグメンテーションエンジンが含む機械学習モデルの学習に用いる教師データが実施例8における教師データと異なる。具体的には、教師データを構成する、入力画像である入力データと、入力画像に対応する領域ラベル画像である出力データとのペア群を、入力画像と領域ラベル画像における、位置関係が対応する一定の画像サイズの矩形領域画像によって構成している。
ここで、図38を参照して、本実施例に係る画像セグメンテーションエンジンの教師データについて説明する。図38に示すように、教師データを構成するペア群の一つに関して、例えば、入力画像である画像Im3810と、対応する領域ラベル画像である領域ラベル画像Im3820があるとした場合を考える。この場合、実施例8においては、教師データの入力データを画像Im3810、出力データを領域ラベル画像Im3820とした。
これに対し、本実施例においては、画像Im3810のうちの矩形領域画像R3811を入力データとし、領域ラベル画像Im3820において矩形領域画像R3811と同じ(対応する)撮影領域である矩形領域画像R3821を出力データとする。そして、入力データである矩形領域画像R3811と出力データである矩形領域画像R3821によって教師データのペア(以下、第一の矩形領域画像ペア)を構成する。
ここで、矩形領域画像R3811と矩形領域画像R3821は、一定の画像サイズの画像とされる。なお、画像Im3810と領域ラベル画像Im3820は任意方法により位置合わせされてよい。また、矩形領域画像R3811と矩形領域画像R3821の対応する位置関係はテンプレートマッチングなどの任意方法によって特定されてよい。なお、画像セグメンテーションエンジンが含む機械学習モデルの設計によっては、入力データと出力データの、それぞれの画像サイズや次元数は異なっていてもよい。例えば、入力データがBスキャン画像(二次元画像)の一部であり、出力データがAスキャン画像(一次元)の一部とする場合である。
前述の一定の画像サイズは、例えば、処理対象(入力画像)として想定される画像の画像サイズ群について、対応する各次元の画素数群の公約数から決定することができる。この場合、画像セグメンテーションエンジンが出力する矩形領域画像群の位置関係が重なることを防いでもよい。
具体的には、例えば、処理対象として想定される画像が二次元画像であり、画像サイズ群のうちの第一の画像サイズが幅500画素、高さ500画素であり、第二の画像サイズが幅100画素、高さ100画素である場合を考える。ここで、各辺の公約数から、矩形領域画像R3811,R3821に関する一定の画像サイズを選択する。この場合には、例えば、一定の画像サイズを、幅100画素、高さ100画素や、幅50画素、高さ50画素や、幅25画素、高さ25画素等から選択する。処理対象として想定される画像が三次元である場合には、幅、高さ、奥行きに関して画素数を決定する。
なお、矩形領域は、入力データに対応する画像と出力データに対応する領域ラベル画像のペアの一つに対して、複数設定可能である。このため、例えば、画像Im3810のうちの矩形領域画像R3812を入力データ、領域ラベル画像Im3820において矩形領域画像R3812と同じ撮影領域である矩形領域画像R3822を出力データとする。そして、入力データである矩形領域画像R3812と出力データである矩形領域画像R3822によって教師データのペアを構成する。これにより、第一の矩形領域画像ペアとは別の矩形領域画像ペアを作成できる。
なお、矩形領域の画像を異なる座標の画像に変えながら多数の矩形領域画像のペアを作成することで教師データを構成するペア群を充実させることができる。そして、当該教師データを構成するペア群を用いてトレーニングを行った画像セグメンテーションエンジンによって効率的な画像セグメンテーション処理が期待できる。ただし、学習済モデルの画像セグメンテーション処理に寄与しないペアは教師データに加えないようにすることができる。
なお、教師データの入力データ及び出力データとしては、一つの層や一つのラベルが付される領域を描画する画像を教師データとして用いることができる。また、教師データの入力データ及び出力データとして、複数の層、例えば2つの層、より好ましくは3つ以上の層を描画する領域の画像を用いることもできる。同様に、領域ラベル画像においてラベルが分けられる領域を複数描画する領域の画像を用いることもできる。これらの場合には、一つの層や一つのラベルが付される領域を描画する画像を教師データとして用いる場合と比べて、学習した層や領域についての位置関係から、学習済モデルを用いてより適切に画像セグメンテーション処理を行えるようになることが期待できる。
さらに、例えば、ペアである、入力画像から作成した矩形領域画像と領域ラベル画像から作成した矩形領域画像とに描画される撮影対象の構造や位置が大きく異なる場合を考える。この場合には、そのような教師データを用いて学習を行った画像セグメンテーションエンジンが精度の低い領域ラベル画像を出力してしまう可能性がある。そのため、このようなペアを教師データから取り除くこともできる。
なお、実施例8と同様に、教師データの入力データには、処理対象として想定される特定の撮影条件を持つ画像を用いるが、当該特定の撮影条件は、予め決定された撮影部位、撮影方式、及び撮影画角である。つまり、本実施例に係る当該特定の撮影条件には、実施例8と異なり、画像サイズは含まれない。
本実施例に係るセグメンテーション処理部2804は、このような教師データで学習が行われた画像セグメンテーションエンジンを用いて、入力画像を画像セグメンテーション処理して領域ラベル画像を生成する。この際、セグメンテーション処理部2804は、入力された画像を、隙間なく連続する、教師データについて設定された一定の画像サイズの矩形領域画像群に分割する。セグメンテーション処理部2804は、画像セグメンテーションエンジンを用いて、分割した矩形領域画像群のそれぞれを画像セグメンテーション処理し、分割された領域ラベル画像群を生成する。その後、セグメンテーション処理部2804は、生成した分割された領域ラベル画像群を、入力画像の位置関係に応じて配置して結合し、最終的な領域ラベル画像を生成する。
このように、本実施例のセグメンテーション処理部2804は、入力された画像を矩形領域単位で画像セグメンテーション処理し、画像セグメンテーション処理した画像を結合する。これにより、実施例8では対応しなかった画像サイズの画像をも画像セグメンテーション処理して領域ラベル画像を生成することができる。
次に、図29、39及び40を参照して、本実施例に係る一連の画像処理について説明する。図39は、本実施例に係る画像セグメンテーション処理のフローチャートである。なお、本実施例に係るステップS2910、ステップS2920、及びステップS2950~ステップS2970の処理は、実施例8におけるこれらの処理と同様であるため、説明を省略する。なお、入力画像に対して、画像サイズ以外の撮影条件について無条件で画像セグメンテーション処理する場合には、ステップS2920の処理の後に、ステップS2930の処理を省き、処理をステップS2940に移行してよい。
ステップS2920において、実施例8と同様に、撮影条件取得部2802が入力画像の撮影条件群を取得したら、処理はステップS2930に移行する。ステップS2930では、処理可否判定部2803が、取得された撮影条件群を用いて、画像セグメンテーションエンジンにより入力画像を対処可能であるか否かを判定する。具体的には、処理可否判定部2803は、入力画像の撮影条件について、画像セグメンテーションエンジンが対処可能な、撮影部位、撮影方式、及び撮影画角であるか否かを判定する。処理可否判定部2803は、実施例8と異なり、画像サイズは判定しない。
処理可否判定部2803が、撮影部位、撮影方式、及び撮影画角について判定し、入力画像が対処可能と判定された場合には、処理はステップS2940に移行する。一方、処理可否判定部2803が、これら撮影条件に基づいて、画像セグメンテーションエンジンが入力画像を対処不可能であると判定した場合には、処理はステップS2970に移行する。なお、画像処理装置2800の設定や実装形態によっては、撮影部位、撮影方式、及び撮影画角のうちの一部に基づいて入力画像が処理不可能であると判定されたとしても、ステップS2940における画像セグメンテーション処理が実施されてもよい。
処理がステップS2940に移行すると、図39に示される本実施例に係る画像セグメンテーション処理が開始される。本実施例に係る画像セグメンテーション処理では、まず、ステップS3910において、図40に示すように、入力画像を隙間なく連続する、教師データについて設定された一定の画像サイズの矩形領域画像群に分割する。ここで、図40は、入力画像Im4010を一定の画像サイズの矩形領域画像R4011~R4026群に分割した一例を示す。なお、画像セグメンテーションエンジンが含む機械学習モデルの設計によっては、入力画像と出力画像の、それぞれの画像サイズや次元数が異なってもよい。その場合には、ステップS3920において生成される結合された領域ラベル画像に欠損が無いよう、前述の入力画像の分割位置を重複させたり、分離させたりして、調整する。
次に、ステップS3920において、セグメンテーション処理部2804は、矩形領域画像R4011~R4026群のそれぞれを画像セグメンテーションエンジンにより画像セグメンテーション処理し、分割された領域ラベル画像群を生成する。
そして、ステップS3930において、セグメンテーション処理部2804は、生成した分割された領域ラベル画像群のそれぞれを、入力画像について分割した矩形領域画像R4011~R4026群のそれぞれと同じ位置関係に配置して結合する。これにより、セグメンテーション処理部2804は領域ラベル画像を生成することができる。
セグメンテーション処理部2804がステップS3930において領域ラベル画像を生成したら、本実施例に係る画像セグメンテーション処理は終了し、処理はステップS2950に移行する。ステップS2950以降の処理は、実施例8のステップS2950以降の処理と同様であるため説明を省略する。
上記のように、本実施例に係るセグメンテーション処理部2804は、入力画像を所定の画像サイズの複数の矩形領域画像R4011~R4026に分割する。その後、セグメンテーション処理部2804は、分割した複数の矩形領域画像R4011~R4026を画像セグメンテーションエンジンに入力して複数の分割領域ラベル画像を生成し、複数の分割領域ラベル画像を統合することで、領域ラベル画像を生成する。なお、統合時に矩形領域群間で位置関係が重なる場合には、該矩形領域群の画素値群を統合したり、上書きしたりする。
これにより、本実施例のセグメンテーション処理部2804は、実施例8では対処できなかった画像サイズの入力画像であっても、画像セグメンテーションエンジンを用いて画像セグメンテーション処理して領域ラベル画像を生成することができる。また、教師データを、所定の画像サイズに分割した複数の画像から作成すると、少ない画像から多くの教師データを作成することができる。そのため、この場合には、教師データを作成するための入力画像と領域ラベル画像の数を少なくすることができる。
また、本実施例に係る画像セグメンテーションエンジンが含む学習済モデルは、2つ以上の層を含む断層画像を入力データとし、該断層画像に対応する領域ラベル画像を出力データとして学習を行ったモデルである。このため、一つの層や一つのラベルが付される領域を描画する画像を教師データとして用いる場合と比べて、学習した層や領域についての位置関係から、学習済モデルを用いてより適切に画像セグメンテーション処理を行えるようになることが期待できる。
(実施例14)
次に、図28、41及び42を参照して、実施例14に係る画像処理装置について説明する。本実施例では、評価部が、検者の指示に応じて、複数の画像セグメンテーションエンジンから出力された複数の領域ラベル画像のうち最も精度の高い領域ラベル画像を選択する。
特に明記しない限り、本実施例に係る画像処理装置の構成及び処理は、実施例8に係る画像処理装置2800と同様である。そのため、以下では、本実施例に係る画像処理装置について、実施例8に係る画像処理装置との違いを中心として説明する。なお、本実施例に係る画像処理装置の構成は、実施例8に係る画像処理装置の構成と同様であるため、図28に示す構成について同一の参照符号を用いて示し、説明を省略する。
本実施例に係るセグメンテーション処理部2804は、異なる教師データを用いて機械学習が行われたそれぞれの学習済モデルを含む二つ以上の画像セグメンテーションエンジンを用いて、入力画像について画像セグメンテーション処理を行う。
ここで、本実施例に係る教師データ群の作成方法について説明する。具体的には、まず、様々な撮影条件によって撮影された画像である入力データと領域ラベル画像である出力データのペア群を用意する。次に、任意の撮影条件の組み合わせによってペア群をグルーピングすることで、教師データ群を作成する。例えば、第一の撮影条件の組み合わせによって取得されたペア群で構成される第一の教師データ、第二の撮影条件の組み合わせによって取得されたペア群で構成される第二の教師データというように、教師データ群として作成する。
その後、各教師データを用いて、別々の画像セグメンテーションエンジンに含まれる機械学習モデルに機械学習を行わせる。例えば、第一の教師データでトレーニングされた学習済モデルを含む第一の画像セグメンテーションエンジンを用意する。加えて、第二の教師データでトレーニングされた学習済モデルに対応する第二の画像セグメンテーションエンジンを用意する、というように画像セグメンテーションエンジン群を用意する。
このような画像セグメンテーションエンジンは、それぞれが含む学習済モデルのトレーニングに用いた教師データが異なる。そのため、このような画像セグメンテーションエンジンは、画像セグメンテーションエンジンに入力される画像の撮影条件によって、入力画像を画像セグメンテーション処理できる精度が異なる。具体的には、第一の画像セグメンテーションエンジンは、第一の撮影条件の組み合わせで撮影して取得された入力画像に対しては画像セグメンテーション処理の精度が高い。一方で、第一の画像セグメンテーションエンジンは、第二の撮影条件の組み合わせで撮影して取得された画像に対しては画像セグメンテーション処理の精度が低い。同様に、第二の画像セグメンテーションエンジンは、第二の撮影条件の組み合わせで撮影して取得された入力画像に対しては画像セグメンテーション処理の精度が高い。一方で、第二の画像セグメンテーションエンジンは、第一の撮影条件の組み合わせで撮影して取得された画像に対しては画像セグメンテーション処理の精度が低い。
教師データのそれぞれが撮影条件の組み合わせによってグルーピングされたペア群で構成されることにより、該ペア群を構成する画像群の画質傾向が似る。このため、画像セグメンテーションエンジンは対応する撮影条件の組み合わせであれば、実施例8に係る画像セグメンテーションエンジンよりも精度良く画像セグメンテーション処理を行うことができる。なお、教師データのペアをグルーピングするための撮影条件の組み合わせは、任意であってよく、例えば、撮影部位、撮影画角、及び画像の解像度のうちの二つ以上の組み合わせであってよい。また、教師データのグルーピングを、実施例9と同様に、一つの撮影条件に基づいて行ってもよい。
評価部2805は、セグメンテーション処理部2804が、複数の画像セグメンテーションエンジンを用いて生成した複数の領域ラベル画像について、実施例8と同様に評価を行う。その後、評価部2805は、評価結果が真値である領域ラベル画像が複数ある場合、検者の指示に応じて、当該複数の領域ラベル画像のうち最も精度の高い領域ラベル画像を選択し、出力すべき領域ラベル画像として判断する。なお、評価部2805は、実施例8と同様に、学習済モデルを含む領域ラベル画像評価エンジンを用いて評価を行ってもよいし、知識ベースの領域ラベル画像評価エンジンを用いて評価を行ってもよい。
解析部2806は、評価部2805によって出力すべき領域ラベル画像として判断された領域ラベル画像と入力画像を用いて、入力画像について実施例8と同様に画像解析処理を行う。出力部2807は、出力すべき領域ラベル画像として判断された領域ラベル画像や解析結果を、実施例8と同様に、表示部2820に表示させたり、他の装置に出力したりすることができる。なお、出力部2807は、評価結果が真値である複数の領域ラベル画像を表示部2820に表示させることができ、評価部2805は、表示部2820を確認した検者からの指示に応じて最も精度の高い領域ラベル画像を選択することができる。
これにより、画像処理装置2800は、複数の画像セグメンテーションエンジンを用いて生成された複数の領域ラベル画像のうち、検者の指示に応じた最も精度の高い領域ラベル画像を出力することができる。
以下、図41及び42を参照して、本実施例に係る一連の画像処理について説明する。図41は、本実施例に係る一連の画像処理のフローチャートである。なお、本実施例に係るステップS4110及びステップS4120の処理は、実施例8におけるステップS2910及びステップS2920での処理と同様であるため、説明を省略する。なお、入力画像に対して、撮影条件について無条件で画像セグメンテーション処理する場合には、ステップS4120の処理の後に、ステップS4130の処理を省き、処理をステップS4140に移行してよい。
ステップS4120において、実施例8と同様に、撮影条件取得部2802が入力画像の撮影条件群を取得したら、処理はステップS4130に移行する。ステップS4130では、処理可否判定部2803が、取得された撮影条件群を用いて、セグメンテーション処理部2804が用いる画像セグメンテーションエンジン群のいずれかが入力画像を対処可能であるか否かを判定する。
処理可否判定部2803が、画像セグメンテーションエンジン群のいずれも入力画像を対処不可能であると判定した場合には、処理はステップS4180に移行する。一方で、処理可否判定部2803が、画像セグメンテーションエンジン群のいずれかが入力画像を対処可能であると判定した場合には、処理はステップS4140に移行する。なお、画像処理装置2800の設定や実装形態によっては、実施例8と同様に、画像セグメンテーションエンジンによって一部の撮影条件が対処不可能であると判定されたとしても、ステップS4140を実施してもよい。
ステップS4140においては、セグメンテーション処理部2804が、画像セグメンテーションエンジン群のそれぞれにステップS4110において取得した入力画像を入力し、領域ラベル画像群を生成する。なお、セグメンテーション処理部2804は、処理可否判定部2803によって入力画像について対処可能であると判定された画像セグメンテーションエンジンにのみ入力画像を入力してもよい。
ステップS4150では、評価部2805が、実施例8と同様に、領域ラベル画像評価エンジンを用いて、ステップS4140において生成された領域ラベル画像群を評価する。ステップS4160では、評価結果(画像評価指数)が真値である領域ラベル画像が複数ある場合には、評価部2805は検者の指示に応じて、出力すべき領域ラベル画像を選択/判断する。
この場合には、まず、出力部2807が、評価結果が真値である領域ラベル画像群を、表示部2820のユーザーインターフェースに表示させる。ここで、図42に当該インターフェースの一例を示す。当該インターフェースには、入力画像UI4210、及び評価結果が真値であった領域ラベル画像UI4220,UI4230,UI4240,UI4250のそれぞれが表示される。検者は不図示の任意の入力装置を操作して、画像群(領域ラベル画像UI4220~UI4250)のうち、最も精度の高い領域ラベル画像を指示する。評価部2805は、検者によって指示された領域ラベル画像を出力すべき領域ラベル画像として選択する。
なお、評価結果が真値である領域ラベル画像が1つである場合には、当該領域ラベル画像を出力すべき領域ラベル画像として選択/判断する。また、評価結果が真値である領域ラベル画像がない場合には、評価部2805は、セグメンテーション処理部2804によって生成された領域ラベル画像を出力しないと判断し、領域ラベル無し画像を生成して出力/選択し、処理をステップS4170に進める。
ステップS4170では、実施例8と同様に、解析部2806が、評価部2805によって出力すべき領域ラベル画像と判断された領域ラベル画像と入力画像を用いて、入力画像について画像解析処理を行う。なお、評価部2805によって領域ラベル無し画像が出力された場合には、解析部2806は画像解析処理を行わずに処理をステップS4180に進める。
ステップS4180においては、出力部2807が、出力すべき領域ラベル画像として判断された領域ラベル画像や画像解析結果を表示部2820に表示させる。なお、出力部2807は、表示部2820に領域ラベル画像及び画像解析結果を表示させるのに代えて、撮影装置2810や他の装置にこれらを表示させたり、記憶させたりしてもよい。また、出力部2807は、画像処理装置2800の設定や実装形態によっては、これらを撮影装置2810や他の装置が利用可能なように加工したり、画像管理システム等に送信可能なようにデータ形式を変換したりしてもよい。また、出力部2807は、領域ラベル画像及び画像解析結果の両方を出力する構成に限られず、これらのうちのいずれか一方のみを出力してもよい。
一方、ステップS4130において画像セグメンテーション処理が不可能であるとされていた場合には、出力部2807は、領域ラベル無し画像を出力し、表示部2820に表示させる。なお、領域ラベル無し画像を出力する代わりに、撮影装置2810に対して、画像セグメンテーション処理が不可能であったことを示す信号を送信してもよい。
また、ステップS4150において、画像セグメンテーション処理が適切に行えなかった(生成された領域ラベル画像を出力しない)と判断された場合にも、出力部2807は、領域ラベル無し画像を出力し、表示部2820に表示させる。この場合にも、出力部2807は、領域ラベル無し画像を出力する代わりに、撮影装置2810に対して、画像セグメンテーション処理が適切に行えなかったことを示す信号を送信してもよい。ステップS4170における出力処理が終了すると、一連の画像処理が終了する。
上記のように、本実施例に係るセグメンテーション処理部2804は、それぞれ異なる学習済モデルを含む複数の画像セグメンテーションエンジンを用いて、入力画像から複数の領域ラベル画像を生成する。さらに、評価部2805は、検者(ユーザー)の指示に応じて、複数の領域情報を評価して出力すべきと判断した複数の領域情報のうちの少なくとも1つを選択する。より具体的には、評価部2805は、画像評価指数が真値である領域ラベル画像が複数ある場合に、検者の指示に応じて、最も精度の高い領域ラベル画像を出力すべき領域ラベル画像として選択/判断する。これにより、画像処理装置2800は、複数の画像セグメンテーションエンジンを用いて生成された複数の領域ラベル画像のうち、検者の指示に応じた精度の高い領域ラベル画像を出力することができる。
本実施例では、評価部2805が、検者の指示に応じて、最も精度の高い領域ラベル画像を出力すべき領域ラベル画像として選択/判断した。これに対して、評価部2805は、検者の指示に応じて、評価結果が真値である複数の領域ラベル画像を出力すべき領域ラベル画像として選択/判断してもよい。この場合には、解析部2806は、出力すべき領域ラベル画像として選択された複数の領域ラベル画像について画像解析処理を行う。また、出力部2807は、選択された複数の領域ラベル画像や当該複数の領域ラベル画像の解析結果を出力する。
また、本実施例では、評価部2805が、検者の指示に応じて、評価結果が真値である複数の領域ラベル画像から出力すべき領域ラベル画像を選択した。これに対して、出力部2807が、セグメンテーション処理部2804によって生成された全ての領域ラベル画像を表示部2820に表示させ、評価部2805が、検者からの指示に応じて、当該複数の領域ラベル画像から出力すべき領域ラベル画像を選択してもよい。この場合にも、評価部2805は、検者からの指示に応じて、複数の領域ラベル画像を出力すべき領域ラベル画像として選択/判断してもよい。
(実施例15)
次に、図28及び41を参照して、実施例15に係る画像処理装置について説明する。実施例14に係る画像処理装置では、評価部2805による評価結果が真値である複数の領域ラベル画像について、評価部2805が検者の指示に応じて、出力すべき画像を選択/判断した。これに対し、本実施例では、評価部は、所定の選択基準に基づいて、評価結果が真値である複数の領域ラベル画像のうちから出力すべき領域ラベル画像を選択/判断する。
特に明記しない限り、本実施例に係る画像処理装置の構成及び処理は、実施例14に係る画像処理装置2800と同様である。そのため、以下では、本実施例に係る画像処理装置について、実施例14に係る画像処理装置との違いを中心として説明する。なお、本実施例に係る画像処理装置の構成は、実施例8及び14に係る画像処理装置の構成と同様であるため、図28に示す構成について同一の参照符号を用いて示し、説明を省略する。
本実施例に係る評価部2805は、領域ラベル画像評価エンジンを用いて、セグメンテーション処理部2804によって生成された複数の領域ラベル画像を評価し、画像評価指数及び所定の選択基準に応じて出力すべき領域ラベル画像を選択する。
以下、図41を参照して、本実施例に係る一連の画像処理について説明する。なお、本実施例に係るステップS4160以外の処理は、実施例14における処理と同様であるため、説明を省略する。なお、入力画像に対して、撮影条件について無条件で画像セグメンテーション処理する場合には、ステップS4120の処理の後に、ステップS4130の処理を省き、処理をステップS4140に移行してよい。
ステップS4160では、評価部2805は、ステップS4150における評価結果が真値である領域ラベル画像が複数ある場合、所定の選択基準に応じて、当該複数の領域ラベル画像のうち出力すべき領域ラベル画像を選択/判断する。評価部2805は、例えば、時系列的に最初に評価結果として真値が出力された領域ラベル画像を選択する。なお、選択基準はこれに限られず、所望の構成に応じて任意に設定されてよい。評価部2805は、例えば、評価結果が真値である領域ラベル画像のうち、入力画像の撮影条件群と学習データの撮影条件の組み合わせが最も近い(合致する)画像セグメンテーションエンジンにより生成された領域ラベル画像を選択/判断してもよい。
また、全ての領域ラベル画像に対しての評価結果が偽値であった場合には、評価部2805は、画像セグメンテーション処理が適切に行えなかったと判断し、領域無しラベル画像を生成し、出力/選択する。ステップS4170以降の処理は、実施例14のステップS4170以降の処理と同様であるため説明を省略する。
上記のように、本実施例に係る画像処理装置2800では、セグメンテーション処理部2804は、複数の画像セグメンテーションエンジンを用いて、入力画像から複数の領域ラベル画像を生成する。評価部2805は、所定の選択基準に基づいて、出力すべきと評価された領域ラベル画像のうちの少なくとも1つ、又は領域ラベル無し画像を選択する。出力部2807は、評価部2805によって選択された領域ラベル画像を出力する。
これにより、本実施例に係る画像処理装置2800では、領域ラベル画像評価エンジンの出力に基づいて、画像セグメンテーション処理に失敗した領域ラベル画像を出力することを防ぐことができる。また、領域ラベル画像評価エンジンが出力する画像評価指数が真値である領域ラベル画像が複数ある場合に、自動的にその中の一つを選択して表示又は出力することができる。
なお、本実施例では、画像評価指数が真値である複数の領域ラベル画像のうちの少なくとも一つを選択して出力する構成としたが、画像評価指数が真値である複数の領域ラベル画像の全てを出力する構成としてもよい。この場合には、解析部2806は、評価部2805から出力された全ての領域ラベル画像について画像解析を行う。また、出力部2807は、評価部2805から出力された全ての領域ラベル画像及び対応する解析結果を全て表示部2820に表示させてもよいし、他の装置に出力してもよい。
(実施例16)
次に、図28及び29を参照して、実施例16に係る画像処理装置について説明する。本実施例では、まず、セグメンテーション処理部が三次元の入力画像を複数の二次元画像(二次元画像群)に分割する。次に、二次元画像群を画像セグメンテーションエンジンに入力し、セグメンテーション処理部が画像セグメンテーションエンジンからの出力画像群を結合することで三次元の領域ラベル画像を生成する。
特に明記しない限り、本実施例に係る画像処理装置の構成及び処理は、実施例8に係る画像処理装置2800と同様である。そのため、以下では、本実施例に係る画像処理装置について、実施例8に係る画像処理装置との違いを中心として説明する。なお、本実施例に係る画像処理装置の構成は、実施例8に係る画像処理装置の構成と同様であるため、図28に示す構成について同一の参照符号を用いて示し、説明を省略する。
本実施例に係る取得部2801は、構造的に連続する二次元画像群で構成された、三次元画像を取得する。具体的には、三次元画像は、例えば、OCTのBスキャン像(断層画像)群で構成された三次元OCTボリューム画像である。
セグメンテーション処理部2804は、本実施例に係る画像セグメンテーションエンジンを用いて、入力画像である三次元画像についてセグメンテーション処理を行い、複数の二次元の領域ラベル画像を生成する。本実施例に係る画像セグメンテーションエンジンの教師データである入力データと出力データのペア群は、二次元画像の画像群により構成されている。セグメンテーション処理部2804は、取得された三次元画像を複数の二次元画像に分割し、二次元画像毎に画像セグメンテーションエンジンに入力する。これにより、セグメンテーション処理部2804は、複数の二次元の領域ラベル画像を生成することができる。さらに、セグメンテーション処理部2804は、複数の二次元の領域ラベル画像を分割前の二次元画像の配置に並べて結合し、三次元の領域ラベル画像を生成する。
評価部2805は、領域ラベル画像評価エンジンを用いて、三次元の領域ラベル画像について尤もらしい領域ラベル画像か否かを判断する。評価結果が真値であった場合には、評価部2805は、当該三次元の領域ラベル画像を出力すべき領域ラベル画像として判断し出力する。一方、評価結果が偽値であった場合には、評価部2805は、三次元の領域ラベル無し画像を生成し、出力する。
なお、領域ラベル画像評価エンジンが学習済モデルを含む場合には、当該学習済モデルの教師データとしては、三次元の領域ラベル画像と画像評価指数を用いることができる。また、評価部2805は、結合前の二次元の領域ラベル画像の各々について評価を行ってもよい。
解析部2806は、評価部2805によって尤もらしい領域ラベル画像と判断された三次元の領域ラベル画像について画像解析処理を行う。なお、解析部2806は、結合前の二次元の領域ラベル画像の各々について画像解析処理を行ってもよい。また、評価部2805によって三次元の領域ラベル無し画像が出力された場合には、解析部2806は画像解析を行わない。
出力部2807は、三次元の領域ラベル画像や解析結果を出力する。なお、出力部2807が、生成された三次元の領域ラベル画像を表示部2820に表示させる際における、三次元の領域ラベル画像の表示態様は任意であってよい。
次に、図29を参照して、本実施例に係る一連の画像処理について説明する。なお、本実施例に係るステップS2910~ステップS2930、及びステップS2950~ステップS2970の処理は、実施例8におけるこれらの処理と同様であるため、説明を省略する。ただし、ステップS2910では、取得部2801は三次元画像を取得する。なお、入力画像に対して、撮影条件について無条件で画像セグメンテーション処理する場合には、ステップS2920の処理の後に、ステップS2930の処理を省き、処理をステップS2940に移行してよい。
ステップS2930において、処理可否判定部2803が、画像セグメンテーションエンジンによって入力画像を対処可能と判定した場合には、処理はステップS2940に移行する。ステップS2940では、セグメンテーション処理部2804が、取得された三次元画像を複数の二次元画像に分割する。セグメンテーション処理部2804は、分割した複数の二次元画像のそれぞれを画像セグメンテーションエンジンに入力し、複数の二次元の領域ラベル画像を生成する。セグメンテーション処理部2804は、取得した三次元画像に基づいて、生成した複数の二次元の領域ラベル画像を結合し、三次元の領域ラベル画像を生成する。ステップS2950以降の処理は、実施例8のステップS2950以降の処理と同様であるため説明を省略する。
上記のように、本実施例に係るセグメンテーション処理部2804は、入力画像を入力画像の次元よりも低い次元の複数の画像に分割し、分割した画像毎にセグメンテーションエンジン入力する。より具体的には、セグメンテーション処理部2804は、三次元の入力画像を複数の二次元の画像に分割して画像セグメンテーションエンジンに入力する。セグメンテーション処理部2804は、画像セグメンテーションエンジンから出力された複数の二次元の領域ラベル画像を結合し、三次元の領域ラベル画像を生成する。
これにより、本実施例に係るセグメンテーション処理部2804は、二次元画像の教師データを用いて学習が行われた学習済モデルを含む画像セグメンテーションエンジンを用いて、三次元画像を画像セグメンテーション処理することができる。
なお、本実施例に係るセグメンテーション処理部2804は、三次元の入力画像を複数の二次元の画像に分割して、画像セグメンテーション処理を行った。しかしながら、当該分割に係る処理を行う対象は三次元の入力画像に限られない。例えば、セグメンテーション処理部2804は、二次元の入力画像を複数の一次元の画像に分割して、画像セグメンテーション処理を行ってもよい。また、セグメンテーション処理部2804は、四次元の入力画像を複数の三次元の画像や複数の二次元の画像に分割して、画像セグメンテーション処理を行ってもよい。
(実施例17)
次に、図28及び29を参照して、実施例17に係る画像処理装置について説明する。本実施例では、セグメンテーション処理部が三次元の入力画像を複数の二次元画像に分割し、複数の二次元画像を複数の画像セグメンテーションエンジンによって並列に画像セグメンテーション処理する。その後、セグメンテーション処理部が、各画像セグメンテーションエンジンからの出力画像を結合することで三次元の領域ラベル画像を生成する。
特に明記しない限り、本実施例に係る画像処理装置の構成及び処理は、実施例16に係る画像処理装置2800と同様である。そのため、以下では、本実施例に係る画像処理装置について、実施例16に係る画像処理装置との違いを中心として説明する。なお、本実施例に係る画像処理装置の構成は、実施例8及び16に係る画像処理装置の構成と同様であるため、図28に示す構成について同一の参照符号を用いて示し、説明を省略する。
本実施例に係るセグメンテーション処理部2804は、実施例16と同様な複数の画像セグメンテーションエンジンを用いて、入力画像である三次元画像について画像セグメンテーション処理を行い、三次元の領域ラベル画像を生成する。なお、セグメンテーション処理部2804が用いる複数の画像セグメンテーションエンジン群は、回路やネットワークを介して、二つ以上の装置群に分散処理可能なように実装されていてもよいし、単一の装置に実装されていてもよい。
セグメンテーション処理部2804は、実施例16と同様に、取得された三次元画像を複数の二次元画像に分割する。セグメンテーション処理部2804は、複数の二次元画像について複数の画像セグメンテーションエンジンを用いて、分担して(並列的に)画像セグメンテーション処理を行い、複数の二次元の領域ラベル画像を生成する。セグメンテーション処理部2804は、複数の画像セグメンテーションエンジンから出力された複数の二次元の領域ラベル画像を、処理対象である三次元画像に基づいて結合し、三次元の領域ラベル画像を生成する。より具体的には、セグメンテーション処理部2804は、複数の二次元の領域ラベル画像を分割前の二次元画像の配置に並べて結合し、三次元の領域ラベル画像を生成する。
次に、図29を参照して、本実施例に係る一連の画像処理について説明する。なお、本実施例に係るステップS2910~ステップS2930、及びステップS2950~ステップS2970の処理は、実施例16におけるこれらの処理と同様であるため、説明を省略する。なお、入力画像に対して、撮影条件について無条件で画像セグメンテーション処理する場合には、ステップS2920の処理の後に、ステップS2930の処理を省き、処理をステップS2940に移行してよい。
ステップS2930において、処理可否判定部2803が、画像セグメンテーションエンジンによって入力画像を対処可能と判定した場合には、処理はステップS2940に移行する。ステップS2940では、セグメンテーション処理部2804が、取得された三次元画像を複数の二次元画像に分割する。セグメンテーション処理部2804は、分割した複数の二次元画像のそれぞれを複数の画像セグメンテーションエンジンに入力し、並列的に画像セグメンテーション処理して、複数の二次元の領域ラベル画像を生成する。セグメンテーション処理部2804は、取得した三次元画像に基づいて、生成した複数の二次元の領域ラベル画像を結合し、三次元の領域ラベル画像を生成する。
上記のように、本実施例に係るセグメンテーション処理部2804は、複数の画像セグメンテーションエンジンを含む。セグメンテーション処理部2804は、三次元の入力画像を複数の二次元の画像に分割し、分割した複数の二次元の画像について複数の画像セグメンテーションエンジンを並列的に用いて、複数の二次元の領域ラベル画像を生成する。セグメンテーション処理部2804は複数の二次元の領域ラベル画像を統合することで、三次元の領域ラベル画像を生成する。
これにより、本実施例に係るセグメンテーション処理部2804は、二次元画像の教師データを用いて学習が行われた学習済モデルを含む画像セグメンテーションエンジンを用いて、三次元画像を画像セグメンテーション処理することができる。また、実施例16と比べて、より効率的に三次元画像を画像セグメンテーション処理することができる。
なお、実施例16と同様に、セグメンテーション処理部2804による分割に係る処理を行う対象は三次元の入力画像に限られない。例えば、セグメンテーション処理部2804は、二次元の入力画像を複数の一次元の画像に分割して、画像セグメンテーション処理を行ってもよい。また、セグメンテーション処理部2804は、四次元の入力画像を複数の三次元の画像や複数の二次元の画像に分割して、画像セグメンテーション処理を行ってもよい。
また、複数の画像セグメンテーションエンジンの教師データは、各画像セグメンテーションエンジンで処理を行う処理対象に応じて異なる教師データであってもよい。例えば、第一の画像セグメンテーションエンジンは第一の撮影領域についての教師データで学習を行い、第二の画像セグメンテーションエンジンは第二の撮影領域についての教師データで学習を行ってもよい。この場合には、それぞれの画像セグメンテーションエンジンが、より精度高く二次元画像の画像セグメンテーション処理を行うことができる。
さらに、評価部2805が、セグメンテーション処理部2804と同様に、学習済モデルを含む複数の領域ラベル画像評価エンジンを用いて、三次元の領域ラベル画像を並列的に評価することもできる。この場合には、評価部2805は、セグメンテーション処理部2804によって生成された複数の二次元の領域ラベル画像について、複数の領域ラベル画像評価エンジンを並列的に用いて、評価を行う。
その後、各二次元の領域ラベル画像についての画像評価指数が真値である場合には、評価部2805は、三次元の領域ラベル画像が尤もらしい領域ラベル画像であると判断して出力することができる。この場合、領域ラベル画像評価エンジンが含む学習済モデルの教師データは、二次元の領域ラベル画像と画像評価指数により構成することができる。なお、評価部2805は、各二次元の領域ラベル画像の一部についての画像評価指数が真値である場合に、三次元の領域ラベル画像が尤もらしい領域ラベル画像であると判断して出力することもできる。
(実施例18)
次に、図29及び43を参照して、実施例18に係る画像処理装置について説明する。本実施例では、取得部が撮影装置ではなく画像管理システムから入力画像を取得する。
特に明記しない限り、本実施例に係る画像処理装置の構成及び処理は、実施例8に係る画像処理装置2800と同様である。そのため、以下では、本実施例に係る画像処理装置について、実施例8に係る画像処理装置との違いを中心として説明する。なお、本実施例に係る画像処理装置の構成は実施例8に係る画像処理装置2800の構成と同様であるため、図28に示す構成について同じ参照符号を用いて説明を省略する。
図43は、本実施例に係る画像処理装置2800の概略的な構成を示す。本実施例に係る画像処理装置2800は画像管理システム4300、及び表示部2820と任意の回路やネットワークを介して接続されている。画像管理システム4300は、任意の撮影装置によって撮影された画像や画像処理された画像を受信して保存する装置及びシステムである。また、画像管理システム4300は、接続された装置の要求に応じて画像を送信したり、保存された画像に対して画像処理を行ったり、画像処理の要求を他の装置に要求したりすることができる。画像管理システム4300は、例えば、画像保存通信システム(PACS)を含むことができる。
本実施例に係る取得部2801は、画像処理装置2800に接続される画像管理システム4300から入力画像を取得することができる。また、出力部2807は、セグメンテーション処理部2804によって生成された領域ラベル画像を、画像管理システム4300に出力することができる。なお、出力部2807は実施例8と同様に、領域ラベル画像を表示部2820に表示させることもできる
次に、図29を参照して、本実施例に係る一連の画像処理について説明する。なお、本実施例に係るステップS2920~ステップS2960の処理は、実施例8におけるこれらの処理と同様であるため、説明を省略する。なお、入力画像に対して、撮影条件について無条件で画像セグメンテーション処理する場合には、ステップS2920の処理の後に、ステップS2930の処理を省き、処理をステップS2940に移行してよい。
ステップS2910において、取得部2801は、回路やネットワークを介して接続された画像管理システム4300から、画像管理システム4300が保存している画像を入力画像として取得する。なお、取得部2801は、画像管理システム4300からの要求に応じて、入力画像を取得してもよい。このような要求は、例えば、画像管理システム4300が画像を保存した時や、保存した画像を他の装置に送信する前、保存された画像を表示部2820に表示する時に発行されてよい。また、当該要求は、例えば、画像管理システム4300を利用者が操作して画像セグメンテーション処理の要求を行った時や、画像管理システム4300が備える画像解析機能に領域ラベル画像を利用する時等に発行されてよい。
ステップS2920~ステップS2960の処理は、実施例8における処理と同様である。ステップS2970においては、出力部2807は、ステップS2950において評価部2805によって領域ラベル画像を出力すると判断されたら、領域ラベル画像を画像管理システム4300に出力画像として出力する。なお、出力部2807は、画像処理装置2800の設定や実装によっては、出力画像を画像管理システム4300が利用可能なように加工したり、出力画像のデータ形式を変換したりしてもよい。また、出力部2807は、解析部2806による解析結果も画像管理システム4300に出力することができる。
一方、ステップS2950において、評価部2805によって画像セグメンテーション処理を適切に行えなかったと判断したら、領域ラベル無し画像を画像管理システム4300に出力画像として出力する。また、ステップS2930において、処理可否判定部2803が、入力画像を画像セグメンテーション処理不可能と判定した場合にも、出力部2807は、領域ラベル無し画像を画像管理システム4300に出力する。
上記のように、本実施例に係る取得部2801は、画像管理システム4300から入力画像を取得する。このため、本実施例の画像処理装置2800は、画像管理システム4300が保存している画像を元に、画像診断に適した領域ラベル画像を、撮影者や被検者の侵襲性を高めたり、労力を増したりすることなく出力することができる。また、出力された領域ラベル画像や画像解析結果は画像管理システム4300に保存されたり、画像管理システム4300が備えるユーザーインターフェースに表示されたりすることができる。また、出力された領域ラベル画像は、画像管理システム4300が備える画像解析機能に利用されたり、画像管理システム4300に接続された他の装置に画像管理システム4300を介して送信されたりすることができる。
なお、画像処理装置2800や画像管理システム4300、表示部2820は、不図示の他の装置と回路やネットワークを介して接続されていてもよい。また、これらの装置は本実施例では別個の装置とされているが、これらの装置の一部又は全部を一体的に構成してもよい。
(実施例19)
次に、図44及び45を参照して、実施例19に係る画像処理装置について説明する。本実施例では、修正部が、領域ラベル画像修正エンジンを用いて、画像セグメンテーションエンジンから出力された領域ラベル画像に誤った領域ラベル値が設定されていれば修正する。
特に明記しない限り、本実施例に係る画像処理装置の構成及び処理は、実施例8に係る画像処理装置2800と同様である。そのため、以下では、本実施例に係る画像処理装置について、実施例8に係る画像処理装置との違いを中心として説明する。
図44は、本実施例に係る画像処理装置4400の概略的な構成を示す。本実施例に係る画像処理装置4400には、取得部2801、撮影条件取得部2802、処理可否判定部2803、セグメンテーション処理部2804、評価部2805、解析部2806及び出力部2807に加えて、修正部4408が設けられている。なお、画像処理装置4400は、これら構成要素のうちの一部が設けられた複数の装置で構成されてもよい。ここで、本実施例に係る画像処理装置4400における修正部4408以外の構成は、実施例8に係る画像処理装置の構成と同様であるため、図28に示す構成について同一の参照符号を用いて示し、説明を省略する。
また、画像処理装置4400は、実施例8に係る画像処理装置2800と同様に撮影装置2810、表示部2820及び不図示の他の装置と、任意の回路やネットワークを介して接続されてよい。また、これらの装置は、他の任意の装置と回路やネットワークを介して接続されてもよいし、他の任意の装置と一体的に構成されてもよい。なお、これらの装置は本実施例では別個の装置とされているが、これらの装置の一部又は全部を一体的に構成してもよい。
本実施例に係る修正部4408には、入力された領域ラベル画像を修正する領域ラベル画像修正エンジンが備えられている。領域ラベル画像修正エンジンは、用語の説明において上述したような、解剖学的な知識ベース処理による領域ラベル値の修正を行う。なお、例えば、修正対象である領域ラベル値の連続領域を上書きする領域ラベル値については、該連続領域に接している画素の数が最も多い領域ラベル値で上書きするものとする。
次に図45を参照して、本実施例に係る一連の画像処理について説明する。なお、本実施例に係るステップS4510~ステップS4540の処理は、それぞれ、実施例8におけるステップS2910~ステップS2940の処理と同様であるため、説明を省略する。なお、入力画像に対して、撮影条件について無条件で画像セグメンテーション処理する場合には、ステップS4520の処理の後に、ステップS4530の処理を省き、処理をステップS4540に移行してよい。
ステップS4540において、セグメンテーション処理部2804が、領域ラベル画像を生成したら、処理はステップS4550に移行する。ステップS4550において、評価部2805は、実施例8と同様に、領域ラベル画像評価エンジンを用いて、生成された領域ラベル画像を評価する。評価部2805は、評価結果が真値である場合には、当該領域ラベル画像を出力すべき領域ラベル画像として判断する。一方、本実施例に係る評価部2805は、評価結果が偽値である場合には、当該領域ラベル画像は修正が必要な領域ラベル画像であると判断する。
ステップS4560では、修正部4408が、ステップS4540において修正が必要な領域ラベル画像として判断された領域ラベル画像に対し、領域ラベル修正エンジンを用いて領域ラベル値の修正を行う。具体的には、修正部4408が、ステップS4540において修正が必要であると判断された領域ラベル画像を、領域ラベル画像修正エンジンに入力する。領域ラベル画像修正エンジンは、入力された領域ラベル画像について、解剖学的な知識ベース処理に従って、誤って設定された領域ラベル値を修正し、修正された領域ラベル画像を出力する。
なお、ステップS4550において、生成された領域ラベル画像が出力すべき領域ラベル画像であると判断された場合には、修正部4408は、領域ラベル画像の修正を行わずに、処理を進める。
ステップS4570では、解析部2806が、ステップS4540において出力すべき領域ラベル画像であると判断された領域ラベル画像、又は、ステップS4550において領域ラベルの修正が行われた領域ラベル画像を用いて、入力画像の画像解析処理を行う。画像解析処理の内容は実施例8と同様であってよいため、説明を省略する。
ステップS4580においては、出力部2807が、出力すべき領域ラベル画像として判断された領域ラベル画像又は領域ラベルが修正された領域ラベル画像及び画像解析結果を表示部2820に表示させる。なお、出力部2807は、表示部2820に領域ラベル画像及び画像解析結果を表示させるのに代えて、撮影装置2810や他の装置にこれらを表示させたり、記憶させたりしてもよい。また、出力部2807は、画像処理装置4400の設定や実装形態によっては、これらを撮影装置2810や他の装置が利用可能なように加工したり、画像管理システム等に送信可能なようにデータ形式を変換したりしてもよい。また、出力部2807は、領域ラベル画像及び画像解析結果の両方を出力する構成に限られず、これらのうちのいずれか一方のみを出力してもよい。
一方、ステップS4530において画像セグメンテーション処理が不可能であるとされていた場合には、出力部2807は、領域ラベル無し画像を出力し、表示部2820に表示させる。なお、領域ラベル無し画像を出力する代わりに、撮影装置2810に対して、画像セグメンテーション処理が不可能であったことを示す信号を送信してもよい。ステップS4580における出力処理が終了すると、一連の画像処理が終了する。
上記のように、本実施例に係る画像処理装置4400は、修正部4408を更に備える。修正部4408は、所定の修正手法による知識ベース処理を行う領域ラベル画像修正エンジンを用いて、セグメンテーション処理部2804によって生成された領域ラベル画像を修正する。出力部2807は、修正部4408によって修正された領域ラベル画像を出力する。
特に、本実施例に係る修正部4408は、評価部2805によって、画像セグメンテーション処理が適切に行えなかったと判断された領域ラベル画像について、領域ラベルを修正する。また、解析部2806は、領域ラベルが修正された領域ラベル画像について画像解析処理を行う。
これにより、本実施例に係る画像処理装置2800では、領域ラベル画像修正エンジンによって画像セグメンテーション処理に失敗した領域ラベル画像の誤りを訂正し、出力することができる。
なお、本実施例では、修正部4408は、評価部2805による評価結果が偽値である領域ラベル画像について領域ラベルを修正した。しかしながら、修正部4408の構成はこれに限られない。修正部4408は、評価部2805による評価結果が真値である領域ラベル画像について、領域ラベルを修正してもよい。この場合、解析部2806は、修正された領域ラベルを用いて入力画像の画像解析処理を行う。また、出力部2807は、修正された領域ラベル画像やその解析結果を出力する。
さらに、この場合には、評価部2805は、評価結果が偽値である領域ラベル画像については修正部4408によって領域ラベルの修正を行わせないように、評価結果が偽値であったら領域ラベル無し画像を生成することもできる。修正部4408は、評価部2805によって領域ラベル無し画像が生成されたら、修正を行わずに処理を先に進めることができる。
評価部2805による評価結果が真値であるときに、修正部4408によって領域ラベル画像を修正する場合には、画像処理装置2800は、より精度の高い領域ラベル画像や解析結果を出力できる。
上述の実施例8乃至19では、セグメンテーション処理部2804が解剖学的な領域を識別可能な領域情報として領域ラベル画像を生成する構成を説明したが、セグメンテーション処理部2804が生成する領域情報はこれに限られない。セグメンテーション処理部が、画像セグメンテーションエンジンを用いて入力画像から生成する領域情報としては、各領域ラベルを有する画素の座標値等の数値データ群等であってもよい。
なお、画像セグメンテーションエンジンや、領域ラベル画像評価エンジン、撮影箇所推定エンジンに含まれるそれぞれ学習済モデルは、画像処理装置2800,4400に設けられることができる。学習済モデルは、例えば、CPUや、MPU、GPU、FPGA等のプロセッサーによって実行されるソフトウェアモジュール等で構成されてもよいし、ASIC等の特定の機能を果たす回路等によって構成されてもよい。また、学習済モデルは、画像処理装置2800,4400と接続される別のサーバの装置等に設けられてもよい。この場合には、画像処理装置2800,4400は、インターネット等の任意のネットワークを介して学習済モデルを備えるサーバ等に接続することで、学習済モデルを用いることができる。ここで、学習済モデルを備えるサーバは、例えば、クラウドサーバや、フォグサーバ、エッジサーバ等であってよい。
実施例8乃至19によれば、従来の画像セグメンテーション処理よりも精度の高い画像セグメンテーション処理を実施できる。
(変形例1)
実施例1乃至7及びそれらの変形例では、処理部222又は第一の処理部822が学習済モデルを用いて、断層画像から網膜層を検出し、境界画像を生成した。また、実施例9乃至19では、セグメンテーション処理部2804が、学習済モデルを含む画像セグメンテーションエンジンを用いて、入力された画像に対応する領域ラベル画像を生成した。
これに対し、学習済モデルを用いて検出された網膜層の情報や生成された境界画像又は領域ラベル画像は、操作者からの指示に応じて手動で修正されてもよい。例えば、操作者は、表示部50,2820に表示された、網膜層の検出結果や境界画像又は領域ラベル画像の少なくとも一部を指定し、網膜層の位置やラベルを変更することができる。この場合、検出結果の修正や境界画像又は領域ラベル画像の修正は、処理部222や第一の処理部822、セグメンテーション処理部2804によって、操作者の指示に応じて行われてもよいし、これらとは別の修正部等の構成要素によって行われてもよい。このため、処理部222、第一の処理部822、セグメンテーション処理部2804、又は当該修正部は、操作者の指示に応じて、第一の処理部が検出した網膜層の構造を修正する修正部の一例として機能する。なお、当該修正部等は、CPUやMPU、GPU、FPGA等のプロセッサーによって実行されるソフトウェアモジュール等で構成されてもよいし、ASIC等の特定の機能を果たす回路等によって構成されてもよい。
(変形例2)
変形例1において手動で修正されたデータは、処理部222又は第一の処理部822が用いる学習済モデル、及びセグメンテーション処理部2804が用いる画像セグメンテーションエンジンに含まれる学習済モデルについての追加学習に用いられてもよい。具体的には、処理部222又は第一の処理部822が用いる学習済モデルについて、入力された断層画像を学習データの入力データとし、操作者からの指示に応じて位置が修正された網膜層(層境界)の情報を出力データ(正解データ)として追加学習を行う。なお、操作者からの指示に応じてラベルが修正された境界画像を出力データとしてもよい。また、画像セグメンテーションエンジンに含まれる学習済モデルについて、入力された画像を学習データの入力データとし、操作者からの指示に応じてラベルの位置が変更された領域ラベル画像を出力データとして追加学習を行う。
学習済モデルに対しこのような追加学習を行うことで、学習済モデルを用いた検出処理やセグメンテーション処理の精度を向上させられることが期待できる。また、このような処理を行うことで、学習データに関するラベル付け処理(アノテーション処理)を容易に行うことができ、より精度の高い学習データを容易に作成することができる。
(変形例3)
変形例2で説明した追加学習は、操作者の指示に応じて行われてもよい。例えば、表示制御部25又は出力部2807は、変形例1に係る操作者の指示に応じた修正が行われた場合に、修正された網膜層の検出結果や領域ラベル画像等を学習データとして用いるか否かを表示部50,2820に表示させることができる。操作者は、表示部50,2820に表示された選択肢を選択することで、追加学習の要否を指示することができる。これにより、画像処理装置20,80,2800,4400は、操作者の指示に応じて、追加学習の要否を決定することができる。
なお、上述のように、学習済モデルはサーバ等の装置に設けられることもできる。この場合には、画像処理装置20,80,2800,4400は、追加学習を行うとする操作者の指示に応じて、入力された画像と上述の修正が行われた検出結果又は領域ラベル画像等を学習データのペアとして、当該サーバ等に送信・保存することができる。言い換えると、画像処理装置20,80,2800,4400は、操作者の指示に応じて、学習済モデルを備えるサーバ等の装置に追加学習の学習データを送信するか否かを決定することができる。
(変形例4)
上述した様々な実施例及び変形例では、静止画について、網膜層の検出処理や領域ラベル画像等の生成処理を行う構成について説明した。これに対し、動画像について、上記実施例及び変形例に係る網膜層の検出処理や領域ラベル画像等の生成処理を繰り返し実行してもよい。一般に眼科装置では、本撮影を行う前に、装置の位置合わせ等のためプレビュー画像(動画像)を生成し、表示することが行われている。そのため、例えば、当該プレビュー画像である断層画像の動画像の少なくとも1つのフレーム毎に、上記実施例及び変形例に係る網膜層の検出処理や領域ラベル画像等の生成処理を繰り返し実行してもよい。
この場合には、表示制御部25又は出力部2807は、プレビュー画像について検出された網膜層や領域ラベル画像等を表示部50,2820に表示させることができる。また、画像処理装置20,80,2800,4400は、プレビュー画像について検出された網膜層や、網膜層のラベル付けがされた領域が、断層画像の表示領域における所定の位置に位置するようにOCT装置を制御することができる。より具体的には、画像処理装置20,80,2800,4400は、プレビュー画像について検出された網膜層や網膜層のラベル付けがされた領域が、断層画像の表示領域における所定の位置に位置するようにコヒーレンスゲート位置を変更する。なお、コヒーレンスゲート位置の調整は、例えば、駆動制御部23によってコヒーレンスゲートステージ14を駆動させる等により行われてよい。
なお、当該コヒーレンスゲート位置の調整は、操作者による指示に応じて手動で行われてもよい。この場合、操作者は、表示部50,2820に表示された、プレビュー画像について検出された網膜層や領域ラベル画像に基づいて、コヒーレンスゲート位置の調整量を画像処理装置20,80,2800,4400に入力することができる。
このような処理によれば、学習済モデルを用いて検出された網膜層又は生成された領域ラベル画像に基づいて、被検眼に対するOCT装置の位置合わせ(アライメント)を、適切に行うことができる。
なお、上記実施例及び変形例に係る網膜層の検出処理や領域ラベル画像等の生成処理を適用可能な動画像は、ライブ動画像に限らず、例えば、記憶部に記憶(保存)された動画像であってもよい。また、コヒーレンスゲート位置等の各種の調整中では、被検眼の網膜等の撮影対象がまだ上手く撮像できていない可能性がある。このため、学習済モデルに入力される医用画像と学習データとして用いられた医用画像との違いが大きいために、精度良く網膜層の検出結果や領域ラベル画像等が得られない可能性がある。そこで、断層画像(Bスキャン)の画質評価等の評価値が閾値を超えたら、学習済モデルを用いた網膜層の検出処理や領域ラベル画像等の生成処理を自動的に開始するように構成してもよい。また、断層画像(Bスキャン)の画質評価等の評価値が閾値を超えたら、学習済モデルを用いた画像セグメンテーション処理を指示するボタンを検者が指定可能な状態(アクティブ状態)に変更するように構成されてもよい。
(変形例5)
疾病眼では、疾病の種類に応じて画像特徴が異なる。そのため、上述した様々な実施例や変形例において用いられる学習済モデルは、疾病の種類毎又は異常部位毎にそれぞれ生成・用意されてもよい。この場合には、例えば、画像処理装置20,80,2800,4400は、操作者からの被検眼の疾病の種類や異常部位等の入力(指示)に応じて、処理に用いる学習済モデルを選択することができる。なお、疾病の種類や異常部位毎に用意される学習済モデルは、網膜層の検出や領域ラベル画像等の生成に用いられる学習済モデルに限られず、例えば、画像の評価用のエンジンや解析用のエンジン等で用いられる学習済モデルであってもよい。
また、画像処理装置20,80,2800,4400は、別に用意された学習済モデルを用いて、画像から被検眼の疾病の種類や異常部位を識別してもよい。この場合には、画像処理装置20,80,2800,4400は、当該別に用意された学習済モデルを用いて識別された疾病の種類や異常部位に基づいて、上記処理に用いる学習済モデルを自動的に選択することができる。なお、当該被検眼の疾病の種類や異常部位を識別するための学習済モデルは、断層画像や眼底画像等を入力データとし、疾病の種類やこれら画像における異常部位を出力データとした学習データのペアを用いて学習を行ってよい。ここで、学習データの入力データとしては、断層画像や眼底画像等を単独で入力データとしてもよいし、これらの組み合わせを入力データとしてもよい。
また、異常部位を検出する場合には、敵対性生成ネットワーク(GAN:Generative Adversarial Netwoks)や変分オートエンコーダ―(VAE:Variational auto-encoder)を用いてもよい。例えば、断層画像の生成を学習して得た生成器と、生成器が生成した新たな断層画像と本物の眼底正面画像との識別を学習して得た識別器とからなるDCGAN(Deep Convolutional GAN)を機械学習モデルとして用いることができる。
DCGANを用いる場合には、例えば、識別器が入力された断層画像をエンコードすることで潜在変数にし、生成器が潜在変数に基づいて新たな断層画像を生成する。その後、入力された断層画像と生成された新たな断層画像との差分を異常部位として抽出することができる。また、VAEを用いる場合には、例えば、入力された断層画像をエンコーダーによりエンコードすることで潜在変数にし、潜在変数をデコーダーによりデコードすることで新たな断層画像を生成する。その後、入力された断層画像と生成された新たな断層画像像との差分を異常部位として抽出することができる。なお、入力データの例として断層画像を例として説明したが、眼底画像や前眼の正面画像等を用いてもよい。
(変形例6)
上述した様々な実施例及び変形例において、処理部222や、第一の処理部822、セグメンテーション処理部2804により学習済モデルを用いて、被検眼の領域を検出する場合には、検出した領域毎に所定の画像処理を施すこともできる。例えば、硝子体領域、網膜領域、及び脈絡膜領域のうちの少なくとも2つの領域を検出する場合を考える。この場合には、検出された少なくとも2つの領域に対してコントラスト調整等の画像処理を施す際に、それぞれ異なる画像処理のパラメータを用いることで、各領域に適した調整を行うことができる。各領域に適した調整が行われた画像を表示することで、操作者は領域毎の疾病等をより適切に診断することができる。なお、検出された領域毎に異なる画像処理のパラメータを用いる構成については、例えば、学習済モデルを用いずに被検眼の領域を検出する第二の処理部823によって検出された被検眼の領域について同様に適用されてもよい。
(変形例7)
上述した様々な実施例及び変形例における表示制御部25又は出力部2807は、表示画面のレポート画面において、所望の層の層厚や各種の血管密度等の解析結果を表示させてもよい。また、視神経乳頭部、黄斑部、血管領域、神経線維束、硝子体領域、黄斑領域、脈絡膜領域、強膜領域、篩状板領域、網膜層境界、網膜層境界端部、視細胞、血球、血管壁、血管内壁境界、血管外側境界、神経節細胞、角膜領域、隅角領域、シュレム管等の少なくとも1つを含む注目部位に関するパラメータの値(分布)を解析結果として表示させてもよい。このとき、例えば、各種のアーチファクトの低減処理が適用された医用画像を解析することで、精度の良い解析結果を表示させることができる。なお、アーチファクトは、例えば、血管領域等による光吸収により生じる偽像領域や、プロジェクションアーチファクト、被検眼の状態(動きや瞬き等)によって測定光の主走査方向に生じる正面画像における帯状のアーチファクト等であってもよい。また、アーチファクトは、例えば、被検者の所定部位の医用画像上に撮影毎にランダムに生じるような写損領域であれば、何でもよい。また、表示制御部25又は出力部2807は、上述したような様々なアーチファクト(写損領域)の少なくとも1つを含む領域に関するパラメータの値(分布)を解析結果として表示部50,2820に表示させてもよい。また、ドルーゼン、新生血管、白斑(硬性白斑)、及びシュードドルーゼン等の異常部位等の少なくとも1つを含む領域に関するパラメータの値(分布)を解析結果として表示させてもよい。
また、解析結果は、解析マップや、各分割領域に対応する統計値を示すセクター等で表示されてもよい。なお、解析結果は、医用画像の解析結果を学習データとして学習して得た学習済モデル(解析結果生成エンジン、解析結果生成用の学習済モデル)を用いて生成されたものであってもよい。このとき、学習済モデルは、医用画像とその医用画像の解析結果とを含む学習データや、医用画像とその医用画像とは異なる種類の医用画像の解析結果とを含む学習データ等を用いた学習により得たものであってもよい。
また、学習データは、処理部222、又は第一の処理部822及び/若しくは第二の処理部823による網膜層の検出結果や、セグメンテーション処理部2804で生成された領域ラベル画像と、それらを用いた医用画像の解析結果とを含んだものでもよい。この場合、画像処理装置は、例えば、解析結果生成用の学習済モデルを用いて、第一の検出処理を実行して得た結果から、断層画像の解析結果を生成する、解析結果生成部の一例として機能することができる。
さらに、学習済モデルは、輝度正面画像及びモーションコントラスト正面画像のように、所定部位の異なる種類の複数の医用画像をセットとする入力データを含む学習データを用いた学習により得たものであってもよい。ここで、輝度正面画像は輝度のEn-Face画像に対応し、モーションコントラスト正面画像はOCTAのEn-Face画像に対応する。
また、高画質化用の学習済モデルを用いて生成された高画質画像を用いて得た解析結果が表示されるように構成されてもよい。この場合、学習データに含まれる入力データとしては、高画質化用の学習済モデルを用いて生成された高画質画像であってもよいし、低画質画像と高画質画像とのセットであってもよい。なお、学習データは、学習済モデルを用いて高画質化された画像について、手動又は自動で少なくとも一部に修正が施された画像であってもよい。
また、学習データは、例えば、解析領域を解析して得た解析値(例えば、平均値や中央値等)、解析値を含む表、解析マップ、画像におけるセクター等の解析領域の位置等の少なくとも1つを含む情報を(教師あり学習の)正解データとして、入力データにラベル付けしたデータであってもよい。なお、操作者からの指示に応じて、解析結果生成用の学習済モデルを用いて得た解析結果が表示されるように構成されてもよい。
また、上述した実施例及び変形例における表示制御部25及び出力部2807は、表示画面のレポート画面において、緑内障や加齢黄斑変性等の種々の診断結果を表示させてもよい。このとき、例えば、上述したような各種のアーチファクトの低減処理が適用された医用画像を解析することで、精度の良い診断結果を表示させることができる。また、診断結果は、特定された異常部位等の位置を画像上に表示されてもよいし、異常部位の状態等を文字等によって表示されてもよい。さらに、異常部位等の分類結果(例えば、カーティン分類)を診断結果として表示させてもよい。
なお、診断結果は、医用画像の診断結果を学習データとして学習して得た学習済モデル(診断結果生成エンジン、診断結果生成用の学習済モデル)を用いて生成されたものであってもよい。また、学習済モデルは、医用画像とその医用画像の診断結果とを含む学習データや、医用画像とその医用画像とは異なる種類の医用画像の診断結果とを含む学習データ等を用いた学習により得たものであってもよい。
また、学習データは、処理部222、又は第一の処理部822及び/若しくは第二の処理部823による網膜層の検出結果や、セグメンテーション処理部2804で生成された領域ラベル画像と、それらを用いた医用画像の診断結果とを含んだものでもよい。この場合、画像処理装置は、例えば、診断結果生成用の学習済モデルを用いて、第一の検出処理を実行して得た結果から、断層画像の診断結果を生成する、診断結果生成部の一例として機能することができる。
さらに、高画質化用の学習済モデルを用いて生成された高画質画像を用いて得た診断結果が表示されるように構成されてもよい。この場合、学習データに含まれる入力データとしては、高画質化用の学習済モデルを用いて生成された高画質画像であってもよいし、低画質画像と高画質画像とのセットであってもよい。なお、学習データは、学習済モデルを用いて高画質化された画像について、手動又は自動で少なくとも一部に修正が施された画像であってもよい。
また、学習データは、例えば、診断名、病変(異常部位)の種類や状態(程度)、画像における病変の位置、注目領域に対する病変の位置、所見(読影所見等)、診断名の根拠(肯定的な医用支援情報等)、診断名を否定する根拠(否定的な医用支援情報)等の少なくとも1つを含む情報を(教師あり学習の)正解データとして、入力データにラベル付けしたデータであってもよい。なお、検者からの指示に応じて、診断結果生成用の学習済モデルを用いて得た診断結果が表示されるように構成されてもよい。
また、上述した様々な実施例及び変形例に係る表示制御部25及び出力部2807は、表示画面のレポート画面において、上述したような注目部位、アーチファクト、及び異常部位等の物体認識結果(物体検出結果)やセグメンテーション結果を表示させてもよい。このとき、例えば、画像上の物体の周辺に矩形の枠等を重畳して表示させてもよい。また、例えば、画像における物体上に色等を重畳して表示させてもよい。なお、物体認識結果やセグメンテーション結果は、物体認識やセグメンテーションを示す情報を正解データとして医用画像にラベル付けした学習データを学習して得た学習済モデルを用いて生成されたものであってもよい。なお、上述した解析結果生成や診断結果生成は、上述した物体認識結果やセグメンテーション結果を利用することで得られたものであってもよい。例えば、物体認識やセグメンテーションの処理により得た注目部位に対して解析結果生成や診断結果生成の処理を行ってもよい。
また、特に診断結果生成用の学習済モデルは、被検者の所定部位の異なる種類の複数の医用画像をセットとする入力データを含む学習データにより学習して得た学習済モデルであってもよい。このとき、学習データに含まれる入力データとして、例えば、眼底のモーションコントラスト正面画像及び輝度正面画像(あるいは輝度断層画像)をセットとする入力データが考えられる。また、学習データに含まれる入力データとして、例えば、眼底の断層画像(Bスキャン画像)及びカラー眼底画像(あるいは蛍光眼底画像)をセットとする入力データ等も考えられる。また、異なる種類の複数の医療画像は、異なるモダリティ、異なる光学系、又は異なる原理等により取得されたものであれば何でもよい。
また、特に診断結果生成用の学習済モデルは、被検者の異なる部位の複数の医用画像をセットとする入力データを含む学習データにより学習して得た学習済モデルであってもよい。このとき、学習データに含まれる入力データとして、例えば、眼底の断層画像(Bスキャン画像)と前眼部の断層画像(Bスキャン画像)とをセットとする入力データが考えられる。また、学習データに含まれる入力データとして、例えば、眼底の黄斑の三次元OCT画像(三次元断層画像)と眼底の視神経乳頭のサークルスキャン(又はラスタスキャン)断層画像とをセットとする入力データ等も考えられる。
なお、学習データに含まれる入力データは、被検者の異なる部位及び異なる種類の複数の医用画像であってもよい。このとき、学習データに含まれる入力データは、例えば、前眼部の断層画像とカラー眼底画像とをセットとする入力データ等が考えられる。また、上述した学習済モデルは、被検者の所定部位の異なる撮影画角の複数の医用画像をセットとする入力データを含む学習データにより学習して得た学習済モデルであってもよい。また、学習データに含まれる入力データは、パノラマ画像のように、所定部位を複数領域に時分割して得た複数の医用画像を貼り合わせたものであってもよい。このとき、パノラマ画像のような広画角画像を学習データとして用いることにより、狭画角画像よりも情報量が多い等の理由から画像の特徴量を精度良く取得できる可能性があるため、処理の結果を向上することができる。また、学習データに含まれる入力データは、被検者の所定部位の異なる日時の複数の医用画像をセットとする入力データであってもよい。
また、上述した解析結果と診断結果と物体認識結果とセグメンテーション結果とのうち少なくとも1つの結果が表示される表示画面は、レポート画面に限らない。このような表示画面は、例えば、撮影確認画面、経過観察用の表示画面、及び撮影前の各種調整用のプレビュー画面(各種のライブ動画像が表示される表示画面)等の少なくとも1つの表示画面に表示されてもよい。例えば、上述した学習済モデルを用いて得た上記少なくとも1つの結果を撮影確認画面に表示させることにより、操作者は、撮影直後であっても精度の良い結果を確認することができる。また、実施例7等で説明した低画質画像と高画質画像との表示の変更は、例えば、低画質画像の解析結果と高画質画像の解析結果との表示の変更であってもよい。
ここで、上述した様々な学習済モデルは、学習データを用いた機械学習により得ることができる。機械学習には、例えば、多階層のニューラルネットワークから成る深層学習(Deep Learning)がある。また、多階層のニューラルネットワークの少なくとも一部には、例えば、畳み込みニューラルネットワーク(CNN:Convolutional Neural Network)を用いることができる。また、多階層のニューラルネットワークの少なくとも一部には、オートエンコーダ(自己符号化器)に関する技術が用いられてもよい。また、学習には、バックプロパゲーション(誤差逆伝搬法)に関する技術が用いられてもよい。ただし、機械学習としては、深層学習に限らず、画像等の学習データの特徴量を学習によって自ら抽出(表現)可能なモデルを用いた学習であれば何でもよい。機械学習モデルは、例えば、カプセルネットワーク(Capsule Network;CapsNet)でもよい。ここで、一般的なニューラルネットワークでは、各ユニット(各ニューロン)はスカラー値を出力するように構成されることによって、例えば、画像における特徴間の空間的な位置関係(相対位置)に関する空間情報が低減されるように構成されている。これにより、例えば、画像の局所的な歪みや平行移動等の影響が低減されるような学習を行うことができる。一方、カプセルネットワークでは、各ユニット(各カプセル)は空間情報をベクトルとして出力するように構成されることよって、例えば、空間情報が保持されるように構成されている。これにより、例えば、画像における特徴間の空間的な位置関係が考慮されたような学習を行うことができる。
また、高画質化エンジン(高画質化用の学習済モデル)は、高画質化エンジンにより生成された少なくとも1つの高画質画像を含む学習データを追加学習して得た学習済モデルであってもよい。このとき、高画質画像を追加学習用の学習データとして用いるか否かを、検者からの指示により選択可能に構成されてもよい。
(変形例8)
上述した様々な実施例及び変形例におけるプレビュー画面において、ライブ動画像の少なくとも1つのフレーム毎に上述した高画質化用の学習済モデルが用いられるように構成されてもよい。このとき、プレビュー画面において、異なる部位や異なる種類の複数のライブ動画像が表示されている場合には、各ライブ動画像に対応する学習済モデルが用いられるように構成されてもよい。これにより、例えば、ライブ動画像であっても、処理時間を短縮することができるため、検者は撮影開始前に精度の高い情報を得ることができる。このため、例えば、再撮影の失敗等を低減することができるため、診断の精度や効率を向上させることができる。なお、複数のライブ動画像は、例えば、XYZ方向のアライメントのための前眼部の動画像、及び眼底観察光学系のフォーカス調整やOCTフォーカス調整のための眼底の正面動画像であってよい。また、複数のライブ動画像は、例えば、OCTのコヒーレンスゲート調整(測定光路長と参照光路長との光路長差の調整)のための眼底の断層動画像等であってもよい。
また、上述した学習済モデルを適用可能な動画像は、ライブ動画像に限らず、例えば、記憶部に記憶(保存)された動画像であってもよい。このとき、例えば、記憶部に記憶(保存)された眼底の断層動画像の少なくとも1つのフレーム毎に位置合わせして得た動画像が表示画面に表示されてもよい。例えば、硝子体を好適に観察したい場合には、まず、フレーム上に硝子体ができるだけ存在する等の条件を基準とする基準フレームを選択してもよい。このとき、各フレームは、XZ方向の断層画像(Bスキャン像)である。そして、選択された基準フレームに対して他のフレームがXZ方向に位置合わせされた動画像が表示画面に表示されてもよい。このとき、例えば、動画像の少なくとも1つのフレーム毎に高画質化用の学習済モデルを用いて順次生成された高画質画像(高画質フレーム)を連続表示させるように構成してもよい。
なお、上述したフレーム間の位置合わせの手法としては、X方向の位置合わせの手法とZ方向(深度方向)の位置合わせの手法とは、同じ手法が適用されてもよいし、全て異なる手法が適用されてもよい。また、同一方向の位置合わせは、異なる手法で複数回行われてもよく、例えば、粗い位置合わせを行った後に、精密な位置合わせが行われてもよい。また、位置合わせの手法としては、例えば、断層画像(Bスキャン像)をセグメンテーション処理して得た網膜層境界を用いた(Z方向の粗い)位置合わせがある。さらに、位置合わせの手法としては、例えば、断層画像を分割して得た複数の領域と基準画像との相関情報(類似度)を用いた(X方向やZ方向の精密な)位置合わせもある。またさらに、位置合わせの手法としては、例えば、断層画像(Bスキャン像)毎に生成した一次元投影像を用いた(X方向の)位置合わせ、2次元正面画像を用いた(X方向の)位置合わせ等がある。また、ピクセル単位で粗く位置合わせが行われてから、サブピクセル単位で精密な位置合わせが行われるように構成されてもよい。
ここで、各種の調整中では、被検眼の網膜等の撮影対象がまだ上手く撮像できていない可能性がある。このため、学習済モデルに入力される医用画像と学習データとして用いられた医用画像との違いが大きいために、精度良く高画質画像が得られない可能性がある。そこで、断層画像(Bスキャン)の画質評価等の評価値が閾値を超えたら、高画質動画像の表示(高画質フレームの連続表示)を自動的に開始するように構成してもよい。また、断層画像(Bスキャン)の画質評価等の評価値が閾値を超えたら、高画質化ボタンを検者が指定可能な状態(アクティブ状態)に変更するように構成されてもよい。
また、走査パターン等が異なる撮影モード毎に異なる高画質化用の学習済モデルを用意して、選択された撮影モードに対応する高画質化用の学習済モデルが選択されるように構成されてもよい。また、異なる撮影モードで得た様々な医用画像を含む学習データを学習して得た1つの高画質化用の学習済モデルが用いられてもよい。
(変形例9)
上述した様々な実施例及び変形例においては、各種学習済モデルが追加学習中である場合、追加学習中の学習済モデル自体を用いて出力(推論・予測)することが難しい可能性がある。このため、追加学習中の学習済モデルに対する医用画像の入力を禁止することがよい。また、追加学習中の学習済モデルと同じ学習済モデルをもう一つ予備の学習済モデルとして用意してもよい。このとき、追加学習中には、予備の学習済モデルに対して医用画像の入力が実行できるようにすることがよい。そして、追加学習が完了した後に、追加学習後の学習済モデルを評価し、問題がなければ、予備の学習済モデルから追加学習後の学習済モデルに置き換えればよい。また、問題があれば、予備の学習済モデルが用いられるようにしてもよい。
また、撮影部位毎に学習して得た学習済モデルを選択的に利用できるようにしてもよい。具体的には、第一の撮影部位(肺、被検眼等)を含む学習データを用いて得た第一の学習済モデルと、第一の撮影部位とは異なる第二の撮影部位を含む学習データを用いて得た第二の学習済モデルと、を含む複数の学習済モデルを用意することができる。そして、制御部200は、これら複数の学習済モデルのいずれかを選択する選択手段を有してもよい。このとき、制御部200は、選択された学習済モデルに対して追加学習を実行する制御手段を有してもよい。制御手段は、検者からの指示に応じて、選択された学習済モデルに対応する撮影部位と該撮影部位の撮影画像とがペアとなるデータを検索し、検索して得たデータを学習データとする学習を、選択された学習済モデルに対して追加学習として実行することができる。なお、選択された学習済モデルに対応する撮影部位は、データのヘッダの情報から取得したり、検者により手動入力されたりしたものであってよい。また、データの検索は、例えば、病院や研究所等の外部施設のサーバ等からネットワークを介して行われてよい。これにより、学習済モデルに対応する撮影部位の撮影画像を用いて、撮影部位毎に効率的に追加学習することができる。
なお、選択手段及び制御手段は、制御部200のCPUやMPU等のプロセッサーによって実行されるソフトウェアモジュールにより構成されてよい。また、選択手段及び制御手段は、ASIC等の特定の機能を果たす回路や独立した装置等によって構成されてもよい。
また、追加学習用の学習データを、病院や研究所等の外部施設のサーバ等からネットワークを介して取得する際には、改ざんや、追加学習時のシステムトラブル等による信頼性低下を低減することが有用である。そこで、デジタル署名やハッシュ化による一致性の確認を行うことで、追加学習用の学習データの正当性を検出してもよい。これにより、追加学習用の学習データを保護することができる。このとき、デジタル署名やハッシュ化による一致性の確認した結果として、追加学習用の学習データの正当性が検出できなかった場合には、その旨の警告を行い、その学習データによる追加学習を行わないものとする。なお、サーバは、その設置場所を問わず、例えば、クラウドサーバ、フォグサーバ、エッジサーバ等のどのような形態でもよい。
(変形例10)
上述した様々な実施例及び変形例において、検者からの指示は、手動による指示(例えば、ユーザーインターフェース等を用いた指示)以外にも、音声等による指示であってもよい。このとき、例えば、機械学習により得た音声認識モデル(音声認識エンジン、音声認識用の学習済モデル)を含む機械学習モデルが用いられてもよい。また、手動による指示は、キーボードやタッチパネル等を用いた文字入力等による指示であってもよい。このとき、例えば、機械学習により得た文字認識モデル(文字認識エンジン、文字認識用の学習済モデル)を含む機械学習モデルが用いられてもよい。また、検者からの指示は、ジェスチャー等による指示であってもよい。このとき、機械学習により得たジェスチャー認識モデル(ジェスチャー認識エンジン、ジェスチャー認識用の学習済モデル)を含む機械学習モデルが用いられてもよい。
また、検者からの指示は、表示部50,2820上の検者の視線検出結果等であってもよい。視線検出結果は、例えば、表示部50,2820周辺から撮影して得た検者の動画像を用いた瞳孔検出結果であってもよい。このとき、動画像からの瞳孔検出は、上述したような物体認識エンジンを用いてもよい。また、検者からの指示は、脳波、体を流れる微弱な電気信号等による指示であってもよい。
このような場合、例えば、学習データとしては、上述したような種々の学習済モデルの処理による結果の表示の指示を示す文字データ又は音声データ(波形データ)等を入力データとし、種々の学習済モデルの処理による結果等を実際に表示部に表示させるための実行命令を正解データとする学習データであってもよい。また、学習データとしては、例えば、高画質化用の学習済モデルで得た高画質画像の表示の指示を示す文字データ又は音声データ等を入力データとし、高画質画像の表示の実行命令及び図22(a)及び(b)に示すようなボタン2220をアクティブ状態に変更するための実行命令を正解データとする学習データであってもよい。なお、学習データとしては、例えば、文字データ又は音声データ等が示す指示内容と実行命令内容とが互いに対応するものであれば何でもよい。また、音響モデルや言語モデル等を用いて、音声データから文字データに変換してもよい。また、複数のマイクで得た波形データを用いて、音声データに重畳しているノイズデータを低減する処理を行ってもよい。また、文字又は音声等による指示と、マウス又はタッチパネル等による指示とを、検者からの指示に応じて選択可能に構成されてもよい。また、文字又は音声等による指示のオン・オフを、検者からの指示に応じて選択可能に構成されてもよい。
ここで、機械学習には、上述したような深層学習があり、また、多階層のニューラルネットワークの少なくとも一部には、例えば、再帰型ニューラルネットワーク(RNN:Recurrernt Neural Network)を用いることができる。ここで、本変形例に係る機械学習モデルの一例として、時系列情報を扱うニューラルネットワークであるRNNに関して、図46(a)及び(b)を参照して説明する。また、RNNの一種であるLong short-term memory(以下、LSTM)に関して、図47(a)及び(b)を参照して説明する。
図46(a)は、機械学習モデルであるRNNの構造を示す。RNN4620は、ネットワークにループ構造を持ち、時刻tにおいてデータxt4610が入力され、データht4630を出力する。RNN4620はネットワークにループ機能を持つため、現時刻の状態を次の状態に引き継ぐことが可能であるため、時系列情報を扱うことができる。図46(b)には時刻tにおけるパラメータベクトルの入出力の一例を示す。データxt4610にはN個(Params1~ParamsN)のデータが含まれる。また、RNN4620より出力されるデータht4630には入力データに対応するN個(Params1~ParamsN)のデータが含まれる。
しかしながら、RNNでは誤差逆伝搬時に長期時間の情報を扱うことができないため、LSTMが用いられることがある。LSTMは、忘却ゲート、入力ゲート、及び出力ゲートを備えることで長期時間の情報を学習することができる。ここで、図47(a)にLSTMの構造を示す。LSTM4740において、ネットワークが次の時刻tに引き継ぐ情報は、セルと呼ばれるネットワークの内部状態ct-1と出力データht-1である。なお、図の小文字(c、h、x)はベクトルを表している。
次に、図47(b)にLSTM4740の詳細を示す。図47(b)においては、忘却ゲートネットワークFG、入力ゲートネットワークIG、及び出力ゲートネットワークOGが示され、それぞれはシグモイド層である。そのため、各要素が0から1の値となるベクトルを出力する。忘却ゲートネットワークFGは過去の情報をどれだけ保持するかを決め、入力ゲートネットワークIGはどの値を更新するかを判定するものである。また、図47(b)においては、セル更新候補ネットワークCUが示され、セル更新候補ネットワークCUは活性化関数tanh層である。これは、セルに加えられる新たな候補値のベクトルを作成する。出力ゲートネットワークOGは、セル候補の要素を選択し次の時刻にどの程度の情報を伝えるか選択する。
なお、上述したLSTMのモデルは基本形であるため、ここで示したネットワークに限らない。ネットワーク間の結合を変更してもよい。LSTMではなく、QRNN(Quasi Recurrent Neural Network)を用いてもよい。さらに、機械学習モデルは、ニューラルネットワークに限定されるものではなく、ブースティングやサポートベクターマシン等が用いられてもよい。また、検者からの指示が文字又は音声等による入力の場合には、自然言語処理に関する技術(例えば、Sequence to Sequence)が適用されてもよい。また、検者に対して文字又は音声等による出力で応答する対話エンジン(対話モデル、対話用の学習済モデル)が適用されてもよい。
(変形例11)
上述した様々な実施例及び変形例において、境界画像や領域ラベル画像、高画質画像等は、操作者からの指示に応じて記憶部に保存されてもよい。このとき、例えば、高画質画像を保存するための操作者からの指示の後、ファイル名の登録の際に、推奨のファイル名として、ファイル名のいずれかの箇所(例えば、最初の箇所、又は最後の箇所)に、高画質化用の学習済モデルを用いた処理(高画質化処理)により生成された画像であることを示す情報(例えば、文字)を含むファイル名が、操作者からの指示に応じて編集可能な状態で表示されてもよい。なお、同様に、境界画像や領域ラベル画像等についても、学習済モデルを用いた処理により生成された画像である情報を含むファイル名が表示されてもよい。
また、レポート画面等の種々の表示画面において、表示部50,2820に高画質画像を表示させる際に、表示されている画像が高画質化用の学習済モデルを用いた処理により生成された高画質画像であることを示す表示が、高画質画像とともに表示されてもよい。この場合には、操作者は、当該表示によって、表示された高画質画像が撮影によって取得した画像そのものではないことが容易に識別できるため、誤診断を低減させたり、診断効率を向上させたりすることができる。なお、高画質化用の学習済モデルを用いた処理により生成された高画質画像であることを示す表示は、入力画像と当該処理により生成された高画質画像とを識別可能な表示であればどのような態様のものでもよい。また、高画質化用の学習済モデルを用いた処理だけでなく、上述したような種々の学習済モデルを用いた処理についても、その種類の学習済モデルを用いた処理により生成された結果であることを示す表示が、その結果とともに表示されてもよい。また、画像セグメンテーション処理用の学習済モデルを用いたセグメンテーション結果の解析結果を表示する際にも、画像セグメンテーション用の学習済モデルを用いた結果に基づいた解析結果であることを示す表示が、解析結果とともに表示されてもよい。
このとき、レポート画面等の表示画面は、操作者からの指示に応じて記憶部に保存されてもよい。例えば、高画質画像等と、これらの画像が学習済モデルを用いた処理により生成された画像であることを示す表示とが並んだ1つの画像としてレポート画面が記憶部に保存されてもよい。
また、高画質化用の学習済モデルを用いた処理により生成された高画質画像であることを示す表示について、高画質化用の学習済モデルがどのような学習データによって学習を行ったものであるかを示す表示が表示部に表示されてもよい。当該表示としては、学習データの入力データと正解データの種類の説明や、入力データと正解データに含まれる撮影部位等の正解データに関する任意の表示を含んでよい。なお、例えば画像セグメンテーション処理等上述した種々の学習済モデルを用いた処理についても、その種類の学習済モデルがどのような学習データによって学習を行ったものであるかを示す表示が表示部に表示されてもよい。
また、学習済モデルを用いた処理により生成された画像であることを示す情報(例えば、文字)を、画像等に重畳した状態で表示又は保存されるように構成されてもよい。このとき、画像上に重畳する箇所は、撮影対象となる注目部位等が表示されている領域には重ならない領域(例えば、画像の端)であればどこでもよい。また、重ならない領域を判定し、判定された領域に重畳させてもよい。なお、高画質化用の学習済モデルを用いた処理だけでなく、例えば画像セグメンテーション処理等の上述した種々の学習済モデルを用いた処理により得た画像についても、同様に処理してよい。
また、レポート画面の初期表示画面として、図22(a)及び(b)に示すようなボタン2220がアクティブ状態(高画質化処理がオン)となるようにデフォルト設定されている場合には、検者からの指示に応じて、高画質画像等を含むレポート画面に対応するレポート画像がサーバに送信されるように構成されてもよい。また、ボタン2220がアクティブ状態となるようにデフォルト設定されている場合には、検査終了時(例えば、検者からの指示に応じて、撮影確認画面やプレビュー画面からレポート画面に変更された場合)に、高画質画像等を含むレポート画面に対応するレポート画像がサーバに(自動的に)送信されるように構成されてもよい。このとき、デフォルト設定における各種設定(例えば、レポート画面の初期表示画面におけるEn-Face画像の生成のための深度範囲、解析マップの重畳の有無、高画質画像か否か、経過観察用の表示画面か否か等の少なくとも1つに関する設定)に基づいて生成されたレポート画像がサーバに送信されるように構成されもよい。なお、ボタン2220が画像セグメンテーション処理の切り替えを表す場合に関しても、同様に処理されてよい。
(変形例12)
上述した様々な実施例及び変形例において、上述したような種々の学習済モデルのうち、第一の種類の学習済モデルで得た画像(例えば、高画質画像、解析マップ等の解析結果を示す画像、物体認識結果を示す画像、網膜層を示す画像、セグメンテーション結果を示す画像)を、第一の種類とは異なる第二の種類の学習済モデルに入力してもよい。このとき、第二の種類の学習済モデルの処理による結果(例えば、解析結果、診断結果、物体認識結果、網膜層の検出結果、セグメンテーション結果)が生成されるように構成されてもよい。
また、上述したような種々の学習済モデルのうち、第一の種類の学習済モデルの処理による結果(例えば、解析結果、診断結果、物体認識結果、網膜層の検出結果、セグメンテーション結果)を用いて、第一の種類の学習済モデルに入力した画像から、第一の種類とは異なる第一の種類の学習済モデルに入力する画像を生成してもよい。このとき、生成された画像は、第二の種類の学習済モデルを用いて処理する画像として適した画像である可能性が高い。このため、生成された画像を第二の種類の学習済モデルに入力して得た画像(例えば、高画質画像、解析マップ等の解析結果を示す画像、物体認識結果を示す画像、網膜層を示す画像、セグメンテーション結果を示す画像)の精度を向上することができる。
また、上述したような学習済モデルの処理による解析結果や診断結果等を検索キーとして、サーバ等に格納された外部のデータベースを利用した類似画像検索を行ってもよい。なお、データベースにおいて保存されている複数の画像が、既に機械学習等によって該複数の画像それぞれの特徴量を付帯情報として付帯された状態で管理されている場合等には、画像自体を検索キーとする類似画像検索エンジン(類似画像検索モデル、類似画像検索用の学習済モデル)が用いられてもよい。
(変形例13)
なお、上記実施例及び変形例におけるモーションコントラストデータの生成処理は、断層画像の輝度値に基づいて行われる構成に限られない。上記各種処理は、OCT装置10又は撮影装置2810で取得された干渉信号、干渉信号にフーリエ変換を施した信号、該信号に任意の処理を施した信号、及びこれらに基づく断層画像等を含む断層データに対して適用されてよい。これらの場合も、上記構成と同様の効果を奏することができる。
分割手段としてカプラを使用したファイバ光学系を用いているが、コリメータとビームスプリッタを使用した空間光学系を用いてもよい。また、OCT装置10又は撮影装置2810の構成は、上記の構成に限られず、OCT装置10又は撮影装置2810に含まれる構成の一部をOCT装置10又は撮影装置2810と別体の構成としてもよい。
また、上記実施例及び変形例では、OCT装置10又は撮影装置2810の干渉光学系としてマッハツェンダー型干渉計の構成を用いているが、干渉光学系の構成はこれに限られない。例えば、OCT装置10又は撮影装置2810の干渉光学系はマイケルソン干渉計の構成を有していてもよい。
さらに、上記実施例及び変形例では、OCT装置として、SLDを光源として用いたスペクトラルドメインOCT(SD-OCT)装置について述べたが、本発明によるOCT装置の構成はこれに限られない。例えば、出射光の波長を掃引することができる波長掃引光源を用いた波長掃引型OCT(SS-OCT)装置等の他の任意の種類のOCT装置にも本発明を適用することができる。また、ライン光を用いたLine-OCT装置に対して本発明を適用することもできる。
また、上記実施例及び変形例では、取得部21,2801は、OCT装置10又は撮影装置2810で取得された干渉信号や画像処理装置で生成された三次元断層画像等を取得した。しかしながら、取得部21,2801がこれらの信号や画像を取得する構成はこれに限られない。例えば、取得部21,2801は、制御部とLAN、WAN、又はインターネット等を介して接続されるサーバや撮影装置からこれらの信号を取得してもよい。
なお、学習済モデルは、画像処理装置20,80,152,172,2800に設けられることができる。学習済モデルは、例えば、CPU等のプロセッサーによって実行されるソフトウェアモジュール等で構成されることができる。また、学習済モデルは、画像処理装置20,80,152,172,2800と接続される別のサーバ等に設けられてもよい。この場合には、画像処理装置20,80,152,172,2800は、インターネット等の任意のネットワークを介して学習済モデルを備えるサーバに接続することで、学習済モデルを用いて画質向上処理を行うことができる。
(変形例14)
また、上述した様々な実施例及び変形例による画像処理装置又は画像処理方法によって処理される画像は、任意のモダリティ(撮影装置、撮影方法)を用いて取得された医用画像を含む。処理される医用画像は、任意の撮影装置等で取得された医用画像や、上記実施例及び変形例による画像処理装置又は画像処理方法によって作成された画像を含むことができる。
さらに、処理される医用画像は、被検者(被検体)の所定部位の画像であり、所定部位の画像は被検者の所定部位の少なくとも一部を含む。また、当該医用画像は、被検者の他の部位を含んでもよい。また、医用画像は、静止画像又は動画像であってよく、白黒画像又はカラー画像であってもよい。さらに医用画像は、所定部位の構造(形態)を表す画像でもよいし、その機能を表す画像でもよい。機能を表す画像は、例えば、OCTA画像、ドップラーOCT画像、fMRI画像、及び超音波ドップラー画像等の血流動態(血流量、血流速度等)を表す画像を含む。なお、被検者の所定部位は、撮影対象に応じて決定されてよく、人眼(被検眼)、脳、肺、腸、心臓、すい臓、腎臓、及び肝臓等の臓器、頭部、胸部、脚部、並びに腕部等の任意の部位を含む。
また、医用画像は、被検者の断層画像であってもよいし、正面画像であってもよい。正面画像は、例えば、眼底正面画像や、前眼部の正面画像、蛍光撮影された眼底画像、OCTで取得したデータ(三次元のOCTデータ)について撮影対象の深さ方向における少なくとも一部の範囲のデータを用いて生成したEn-Face画像を含む。En-Face画像は、三次元のOCTAデータ(三次元のモーションコントラストデータ)について撮影対象の深さ方向における少なくとも一部の範囲のデータを用いて生成したOCTAのEn-Face画像(モーションコントラスト正面画像)でもよい。また、三次元のOCTデータや三次元のモーションコントラストデータは、三次元の医用画像データの一例である。
また、撮影装置とは、診断に用いられる画像を撮影するための装置である。撮影装置は、例えば、被検者の所定部位に光、X線等の放射線、電磁波、又は超音波等を照射することにより所定部位の画像を得る装置や、被写体から放出される放射線を検出することにより所定部位の画像を得る装置を含む。より具体的には、上述した様々な実施例及び変形例に係る撮影装置は、少なくとも、X線撮影装置、CT装置、MRI装置、PET装置、SPECT装置、SLO装置、OCT装置、OCTA装置、眼底カメラ、及び内視鏡等を含む。
なお、OCT装置としては、タイムドメインOCT(TD-OCT)装置やフーリエドメインOCT(FD-OCT)装置を含んでよい。また、フーリエドメインOCT装置はスペクトラルドメインOCT(SD-OCT)装置や波長掃引型OCT(SS-OCT)装置を含んでよい。また、SLO装置やOCT装置として、波面補償光学系を用いた波面補償SLO(AO-SLO)装置や波面補償OCT(AO-OCT)装置等を含んでよい。また、SLO装置やOCT装置として、偏光位相差や偏光解消に関する情報を可視化するための偏光SLO(PS-SLO)装置や偏光OCT(PS-OCT)装置等を含んでよい。
また、上述の様々な実施例及び変形例に係る網膜層検出用や画像セグメンテーション処理用の学習済モデルでは、断層画像の輝度値の大小、明部と暗部の順番や傾き、位置、分布、連続性等を特徴量の一部として抽出して、推定処理に用いているものと考えらえる。同様に、領域ラベル画像の評価用や高画質化用、画像解析用、診断結果生成用の学習済モデルでも、断層画像の輝度値の大小、明部と暗部の順番や傾き、位置、分布、連続性等を特徴量の一部として抽出して、推定処理に用いているものと考えらえる。一方で、音声認識用や文字認識用、ジェスチャー認識用等の学習済モデルでは、時系列のデータを用いて学習を行っているため、入力される連続する時系列のデータ値間の傾きを特徴量の一部として抽出し、推定処理に用いているものと考えられる。そのため、このような学習済モデルは、具体的な数値の時間的な変化による影響を推定処理に用いることで、精度のよい推定を行うことができると期待される。
(様々な実施態様)
本開示の実施態様1は医用画像処理装置に関する。該医用画像処理装置は、被検眼の断層画像を取得する取得部と、被検眼の断層画像において複数の網膜層のうち少なくとも一つの網膜層が示されたデータを学習して得た学習済モデルを用いて、前記取得された断層画像において複数の網膜層のうち少なくとも一つの網膜層を検出するための第一の検出処理を実行する第一の処理部とを備える。
実施態様2は、実施態様1に係る医用画像処理装置を含み、機械学習により得られる学習済モデルを用いずに、前記取得された断層画像において前記複数の網膜層のうち少なくとも一つの網膜層を検出するための第二の検出処理を実行する第二の処理部を更に備える。
実施態様3は、実施態様2に係る医用画像処理装置を含み、前記第二の検出処理は、前記第一の検出処理を実行することにより検出された少なくとも一つの網膜層以外の少なくとも一つの網膜層を検出する処理である。
実施態様4は、実施態様2又は3に係る医用画像処理装置を含み、前記第一の検出処理は、前記少なくとも一つの網膜層として、前記取得された断層画像において網膜領域を検出する処理であり、前記第二の検出処理は、前記第一の検出処理を実行することにより検出された網膜領域における少なくとも一つの網膜層を検出する処理である。
実施態様5は、実施態様2乃至4のいずれか一つに係る医用画像処理装置を含み、前記第一の検出処理は、被検眼の内境界膜と神経線維層との境界から視細胞内節外節接合部、網膜色素上皮層、及びブルッフ膜のいずれかまでの層を検出する処理であり、前記第二の検出処理は、前記第一の検出処理により検出した層の間の少なくとも一つの網膜層を検出する処理である。
実施態様6は、実施態様2乃至5のいずれか一つに係る医用画像処理装置を含み、前記第二の処理部は、前記第一の処理部による前記第一の検出処理の後に、前記第二の検出処理を実行する。
実施態様7は、実施態様2に係る医用画像処理装置を含み、表示部を制御する表示制御部を更に備え、前記第一の検出処理及び前記第二の検出処理は、同一の網膜層を検出する処理であり、前記表示制御部は、前記第一の検出処理及び前記第二の検出処理の処理結果を前記表示部に表示させる。
実施態様8は、実施態様7に係る医用画像処理装置を含み、前記表示制御部は、前記第一の検出処理及び前記第二の検出処理の処理結果の不一致部分を前記表示部に表示させる。
実施態様9は、実施態様7又は8に係る医用画像処理装置を含み、前記第一の検出処理及び前記第二の検出処理は、被検眼の内境界膜と神経線維層との境界から視細胞内節外節接合部、網膜色素上皮層、及びブルッフ膜のいずれかまでの層を検出する処理であり、前記第二の処理部は、操作者の指示に応じて、前記第一の検出処理及び前記第二の検出処理のいずれか一方により検出した層の間の少なくとも一つの網膜層を検出する第三の検出処理を更に実行する。
実施態様10は、実施態様2乃至9のいずれか一つに係る医用画像処理装置を含み、前記取得された断層画像に関する撮影条件に基づいて、前記第一の検出処理と前記第二の検出処理のうち少なくとも一つの選択を行う選択部を更に備える。
実施態様11は、実施態様2乃至10のいずれか一つに係る医用画像処理装置を含み、前記第一の処理部は、異なる学習データを用いて機械学習が行われた複数の学習済モデルのうち、前記取得された断層画像に関する撮影条件に対応する学習データを用いて機械学習が行われた学習済モデルを用いて、前記第一の検出処理を実行する。
実施態様12は、実施態様10又は11に係る医用画像処理装置を含み、前記撮影条件は、撮影部位、撮影方式、撮影領域、撮影画角、及び画像の解像度のうち少なくとも一つを含む。
実施態様13は、実施態様2乃至12のいずれか一つに係る医用画像処理装置を含み、前記第一の検出処理及び前記第二の検出処理の結果に基づいて、被検眼の形状特徴が計測される。
実施態様14は、実施態様1乃至13のいずれか一つに係る医用画像処理装置を含み、網膜層における医学的特徴に基づいて、前記第一の処理部が検出した網膜層の構造を補正する補正部を更に備える。
実施態様15は、実施態様1乃至14のいずれか一つに係る医用画像処理装置を含み、前記第一の処理部は、前記学習済モデルを用いて、入力された画像について撮影部位毎に予め定められた境界を検出する。
実施態様16は、実施態様1乃至15のいずれか一つに係る医用画像処理装置を含み、被検眼の三次元の断層画像における少なくとも一部の深度範囲であって、前記検出された少なくとも一つの網膜層に基づいて決定された深度範囲に対応する正面画像を生成する生成部を更に備える。
実施態様17は、実施態様16に係る医用画像処理装置を含み、前記生成部は、前記三次元の断層画像に対応する三次元のモーションコントラストデータを用いて、前記決定された深度範囲に対応するモーションコントラスト正面画像を生成する。
実施態様18は、実施態様1乃至15のいずれか一つに係る医用画像処理装置を含み、高画質化用の学習済モデルを用いて、前記取得された断層画像から、前記取得された断層画像と比べて高画質化された断層画像を生成する生成部を更に備え、前記第一の処理部は、前記生成された断層画像に前記第一の検出処理を実行する。
実施態様19は、実施態様1乃至18のいずれか一つに係る医用画像処理装置を含み、操作者の指示に応じて、前記第一の処理部が検出した網膜層の情報を修正する修正部を更に備え、前記修正された網膜層の情報は、前記第一の処理部が用いる前記学習済モデルについての追加学習に用いられる。
実施態様20は、実施態様1乃至18のいずれか一つに係る医用画像処理装置を含み、診断結果生成用の学習済モデルを用いて、前記第一の検出処理を実行して得た結果から、前記取得された断層画像の診断結果を生成する、診断結果生成部を更に備える。
実施態様21は、医用画像処理方法に関する。該医用画像処理方法は、被検眼の断層画像を取得する工程と、学習済モデルを用いて、前記断層画像において被検眼の複数の網膜層のうち少なくとも一つの網膜層を検出するための第一の検出処理を実行する工程とを含む。
実施態様22は、プログラムに関する。該プログラムは、プロセッサーによって実行されると、該プロセッサーに実施態様21に係る医用画像処理方法の各工程を実行させる。
本開示の更なる実施態様1は、医用画像処理装置に関する。該医用画像処理装置は、学習済モデルを含むセグメンテーションエンジンを用いて、被検者の所定部位の断層画像である入力画像から解剖学的な領域を識別可能な領域情報を生成するセグメンテーション処理部と、学習済モデルを含む評価エンジン又は解剖学的な知識を用いた知識ベース処理を行う評価エンジンを用いて前記領域情報を評価する評価部とを備える。
更なる実施態様2は、更なる実施態様1に係る医用画像処理装置を含み、前記入力画像の撮影条件を取得する撮影条件取得部を更に備え、前記セグメンテーション処理部は、前記撮影条件に基づいて、それぞれ異なる学習済モデルを含む複数のセグメンテーションエンジンを切り替えて用いる。
更なる実施態様3は、更なる実施態様2に係る医用画像処理装置を含み、前記撮影条件取得部が、学習済モデルを含む撮影箇所推定エンジンを用いて、前記入力画像から撮影部位及び撮影領域の少なくとも一方を推定する。
更なる実施態様4は、更なる実施態様1乃至3のいずれか一つに係る医用画像処理装置を含み、前記セグメンテーション処理部は、前記入力画像の画像サイズを、前記セグメンテーションエンジンが対処可能な画像サイズに調整してセグメンテーションエンジンに入力する。
更なる実施態様5は、更なる実施態様1乃至3のいずれか一つに係る医用画像処理装置を含み、前記セグメンテーション処理部は、前記入力画像の画像サイズが、前記セグメンテーションエンジンによって対処可能な画像サイズとなるように、前記入力画像にパディングを行った画像をセグメンテーションエンジンに入力する。
更なる実施態様6は、更なる実施態様1乃至3のいずれか一つに係る医用画像処理装置を含み、前記セグメンテーション処理部は、前記入力画像を複数の領域の画像に分割し、分割された領域の画像毎に前記セグメンテーションエンジンに入力する。
更なる実施態様7は、更なる実施態様1乃至6のいずれか一つに係る医用画像処理装置を含み、前記評価部は、前記評価の結果に応じて前記領域情報を出力するか否かを判断する。
更なる実施態様8は、更なる実施態様1乃至7のいずれか一つに係る医用画像処理装置を含み、前記セグメンテーション処理部は、それぞれ異なる学習済モデルを含む複数のセグメンテーションエンジンを用いて、前記入力画像から前記複数の領域情報を生成し、前記評価部は、ユーザーの指示に応じて、前記複数の領域情報を評価して出力すべきと判断した複数の領域情報のうちの少なくとも1つを選択する。
更なる実施態様9は、更なる実施態様1乃至7のいずれか一つに係る医用画像処理装置を含み、前記セグメンテーション処理部は、それぞれ異なる学習済モデルを含む複数のセグメンテーションエンジンを用いて、前記入力画像から前記複数の領域情報を生成し、前記評価部は、所定の選択基準に基づいて、前記複数の領域情報を評価して出力すべきと判断した複数の領域情報のうちの少なくとも1つを選択する。
更なる実施態様10は、更なる実施態様1乃至9のいずれか一つに係る医用画像処理装置を含み、前記セグメンテーションエンジンを用いて前記入力画像から前記領域情報を生成可能であるか否か判定する判定部を更に備える。
更なる実施態様11は、更なる実施態様1乃至10のいずれか一つに係る医用画像処理装置を含み、前記セグメンテーション処理部は、前記入力画像を該入力画像の次元よりも低い次元の複数の画像に分割し、分割した画像毎に前記セグメンテーションエンジンに入力する。
更なる実施態様12は、更なる実施態様11に係る医用画像処理装置を含み、前記セグメンテーション処理部は、複数のセグメンテーションエンジンを用いて前記複数の画像を並列的に処理する。
更なる実施態様13は、更なる実施態様1乃至12のいずれか一つに係る医用画像処理装置を含み、前記領域情報は、画素毎に領域のラベルが付されたラベル画像である。
更なる実施態様14は、更なる実施態様13に係る医用画像処理装置を含み、前記セグメンテーションエンジンは、断層画像を入力とし、前記ラベル画像を出力とする。
更なる実施態様15は、更なる実施態様14に係る医用画像処理装置を含み、前記セグメンテーションエンジンの学習済モデルは、2つ以上の層を含む断層画像を入力データとし、該断層画像に対応するラベル画像を出力データとして学習を行ったモデルである。
更なる実施態様16は、更なる実施態様1乃至15のいずれか一つに係る医用画像処理装置を含み、前記入力画像を撮影装置から取得する、又は該撮影装置から前記被検者の前記所定部位のデータを取得し、前記データに基づく前記入力画像を取得する。
更なる実施態様17は、更なる実施態様1乃至15のいずれか一つに係る医用画像処理装置を含み、前記入力画像を画像管理システムから取得する、前記領域情報を該画像管理システムに出力する、又は、該入力画像を該画像管理システムから取得し、且つ該領域情報を該画像管理システムに出力する。
更なる実施態様18は、更なる実施態様1乃至17のいずれか一つに係る医用画像処理装置を含み、前記領域情報を解剖学的な知識ベース処理によって修正する修正部を更に備える。
更なる実施態様19は、更なる実施態様1乃至18のいずれか一つに係る医用画像処理装置を含み、前記評価部から出力された前記領域情報を用いて、前記入力画像の画像解析を行う解析部を更に備える。
更なる実施態様20は、更なる実施態様1乃至19のいずれか一つに係る医用画像処理装置を含み、前記領域情報は学習済モデルを用いて生成された情報であることを出力する。
更なる実施態様21は、医用画像処理方法に係る。該医用画像処理方法は、学習済モデルを含むセグメンテーションエンジンを用いて、被検者の所定部位の断層画像である入力画像から解剖学的な領域を識別可能な領域情報を生成することと、学習済モデルを含む評価エンジン又は解剖学的な知識を用いた知識ベースの評価エンジンを用いて前記領域情報を評価することとを含む。
更なる実施態様22は、プログラムに係る。該プログラムは、プロセッサーによって実行されると、該プロセッサーに更なる実施態様21に係る医用画像処理方法の各工程を実行させる。
(その他の実施例)
本発明は、上述の実施例及び変形例の1以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータがプログラムを読出し実行する処理でも実現可能である。コンピュータは、1つ又は複数のプロセッサー若しくは回路を有し、コンピュータ実行可能命令を読み出し実行するために、分離した複数のコンピュータ又は分離した複数のプロセッサー若しくは回路のネットワークを含みうる。
プロセッサー又は回路は、中央演算処理装置(CPU)、マイクロプロセッシングユニット(MPU)、グラフィクスプロセッシングユニット(GPU)、特定用途向け集積回路(ASIC)、又はフィールドプログラマブルゲートウェイ(FPGA)を含みうる。また、プロセッサー又は回路は、デジタルシグナルプロセッサ(DSP)、データフロープロセッサ(DFP)、又はニューラルプロセッシングユニット(NPU)を含みうる。
本発明は上記実施例に制限されるものではなく、本発明の精神及び範囲から離脱することなく、様々な変更及び変形が可能である。従って、本発明の範囲を公にするために以下の請求項を添付する。