以下、本発明の概要および実施の形態を、添付の図面を参照して詳細に説明する。なお、以下の説明および図面において、同じ符号は同じまたは類似の構成要素を示すこととし、よって、同じまたは類似の構成要素に関する説明を省略する。
画像解析方法は、組織の画像を解析する画像解析方法であって、ニューラルネットワーク構造の、好ましくは、畳み込みニューラルネットワーク構造の深層学習アルゴリズムを用いる。前記画像解析方法は、解析対象の組織を構成する層構造を判別することができる。
本発明において、組織の画像は、組織の標本から取得される画像である。組織は、被検体から採取される。被検体は、特に制限されないが、好ましくは哺乳類であり、より好ましくはヒトである。前記被検体から組織が採取される際に、被検体が生きているか死亡しているかは問わない。臓器は、被検体に存在するものである限り、制限されない。例えば、前記臓器には循環器系臓器(心臓、動脈、静脈、リンパ管等)、呼吸器系臓器(鼻腔、副鼻腔、喉頭、気管、気管支、肺等)、消化器系臓器(口唇、舌、唾液腺、咽頭、食道、胃、十二指腸、空腸、回腸、盲腸、虫垂、上行結腸、横行結腸、S状結腸、直腸、肛門、肝臓、胆嚢、胆管、胆道、膵臓、膵管等)、泌尿器系臓器(尿道、膀胱、尿管、腎臓)、女性生殖器系臓器(卵巣、卵管、子宮体部、子宮頸部、膣等)、男性生殖器系臓器(前立腺、精巣、精巣上体、精管等)、内分泌系臓器(甲状腺、副甲状腺等)、外皮系臓器(皮膚、毛、爪等)、感覚器系器官(眼球、涙腺等)を挙げることができる。本発明において、対象とする組織としては、好ましくは胃、小腸(十二指腸、空腸、回腸)、大腸(結腸、直腸)、気管または気管支、子宮体部、胆嚢、胃、小腸、大腸および子宮以外の組織から採取された腺組織(唾液腺、膵臓、甲状腺等)、心臓、血管、および網膜等である。
一般的に、組織の多くは複数の異なる細胞および異なる複数の細胞外マトリックスから構成されている。そして、これらの細胞および細胞外マトリックスは、細胞同士、細胞外マトリックス同士、または細胞と細胞外マトリックスとが結合し、組織内において層構造を形成する。組織の多くは、少なくとも体外側から上皮細胞層、結合組織層(結合組織、線維芽細胞、リンパ球、好中球、マクロファージ、血管、神経叢等から構成されうる。臓器によっては、固有層、粘膜下層を含む)、および筋層(主に平滑筋層)等の複数の層構造から構成される。例えば、胃、小腸、および大腸等の消化管は、体外側から粘膜上皮細胞層、粘膜固有層(結合組織、線維芽細胞、リンパ球、好中球、マクロファージ、血管、神経叢等から構成されうる)、粘膜筋板(平滑筋細胞および平滑筋等から構成される)、粘膜下層(結合組織、線維芽細胞、リンパ球、好中球、マクロファージ、血管、神経叢等から構成されうる)、固有筋層(平滑筋および平滑筋細胞等から構成される)、漿膜層等から構成される。固有筋層は、内輪走筋および外縦走筋の2層から構成されうる。
食道は、胃等と層構造はほぼ同じであるが、上皮細胞層は、粘膜上皮細胞層に替えて重層扁平上皮細胞層から構成される。
気管および気管支も、粘膜上皮細胞層と、粘膜固有層と、平滑筋層と、粘膜下層と、外膜層等から構成される。気管および気管支の一部は、平滑筋層に替えて軟骨層を含む。
子宮は、上皮細胞層と、筋層と、外膜層を含む。子宮は、体部と頚部で上皮細胞層が異なる。体部の上皮細胞層は、粘膜上皮細胞層であるが、頚部の上皮細胞層は重層扁平上皮細胞層等から構成される。
胆嚢は、粘膜上皮細胞層と、粘膜固有層と、筋層と、漿膜層から構成される。
胃、小腸、大腸および子宮以外の腺組織は、腺上皮細胞層と、筋層と、結合組織層(結合組織、線維芽細胞、リンパ球、好中球、マクロファージ、血管等から構成されうる)等から構成される。
心臓および血管は、外部に接する臓器ではないため上皮細胞層は有さず、腔側を内側とし、内側から外側に向かって、内膜(内皮細胞)層、筋層(平滑筋繊維、平滑筋細胞、弾性繊維等を含む)、外膜層等が存在する。具体的には、心臓は、心内膜層と、心筋層と、心外膜層と、心外膜下組織等から構成される。血管は、内皮細胞層と、筋層等から構成される。
網膜は、桿体錘体層、外顆粒層、外網状層、内顆粒層、内網状層および神経節細胞層等から構成される。
前記標本は、前記組織を顕微鏡等で観察ができるように加工した状態のもの、例えばプレパラートを意図する。前記標本は、公知の方法に従って作製することができる。例えば、組織標本は、前記被検体から組織を採取した後に、所定の固定液(ホルマリン固定等)で組織を固定し、その固定組織をパラフィン包埋し、パラフィン包埋組織を薄切する。薄切切片をスライドグラスにのせる。切片がのったスライドグラスに対して光学顕微鏡での観察のため、すなわち明視野観察のための染色を施し、所定の封入処理をして標本が完成する。組織標本の典型例は、組織診断用標本(病理標本)であり、染色は、へマトキシリン・エオジン(HE)染色である。
前記画像解析には、訓練用画像を用いて訓練された深層学習アルゴリズムを用いる。前記画像解析は、前記標本から取得した、解析対象の組織を含む解析対象画像から解析用データを生成する。前記解析用データを、前記深層学習アルゴリズムに入力し、前記解析対象画像内に存在する組織を構成する層構造を示すデータを生成する。層構造を示すデータとは、判別対象にある注目画素の位置の組織の層構造が、上述のいずれの層構造であるかを意味するデータである。また、層構造を示すデータは、前記注目画素内に存在する核領域が上述のいずれの層構造の核に該当するかを示すデータである。層構造を示すデータは、上述のいずれの層構造の核に該当するかを区別できるラベル値、表示等であり得る。
前記訓練用画像は、学習対象となる組織の1つまたは複数の層構造から取得される。好ましくは、前記訓練用画像は、学習対象となる組織に含まれる複数の層構造から層構造ごとに取得される。
例えば、第1の訓練用画像70R1は、被検体から採取された組織に含まれる、第1の層構造(例えば上皮細胞層又は内皮細胞層)から取得された画像である。この画像は、顕微鏡観察により、組織構造が認識できるように染色された標本から取得される。前記染色は、組織構造が認識できる限り制限されないが、好ましくは明視野観察用の染色である。前記明視野観察用染色は、少なくとも細胞核と細胞核以外の部位が、色相で区別可能に染色できる限り制限されない。前記標本が哺乳類の組織標本である場合には、例えば、HE染色を挙げることができる。
第1の訓練用画像70R1からは、第1の訓練データ72R1r,72R1g,72R1bと、第1の予備訓練データ70R1Lが生成される。第1の訓練データ72R1r,72R1g,72R1bは、第1の訓練用画像70R1に含まれる色相を原色毎に分離した単一色画像に関する情報である。第1の予備訓練データ70R1Lは、第1の訓練用画像70R1に含まれている層構造が、第1の層構造であることを示す二値化データ(ラベル値)として生成される。第1の訓練用画像70R1に含まれる層構造は、例えば検査者等による標本観察により第1の層構造であると判定される。
前記訓練用画像に含まれる第2の訓練用画像71R1は、第1の訓練用画像70R1において、どこが細胞の核領域であるかを示す、すなわち「核領域である」という正解が第1の訓練用画像70R1のどこの領域であるかを示す画像である。前記細胞の画像は、好ましくは第1の層構造の核の領域を示す画像である。この画像は、第1の訓練用画像70R1を取得した標本と同一の標本、または第1の訓練用画像70R1を取得した標本に対応する標本(例えば、連続切片標本)に対して、細胞核を選択的に染色する蛍光核染色を施し、撮像された画像である。前記蛍光核染色としては、制限されないが、4',6-diamidino-2-phenylindole(DAPI)染色を挙げることができる。第2の訓練用画像71R1からは、第2の予備訓練データ71R1Nが生成される。第2の予備訓練データ71R1Nは、第2の訓練用画像71R1を二値化することにより生成される二値化データ(ラベル値)であり、細胞の核領域かそれ以外の領域かを示している。
第2の予備訓練データ71R1Nと第1の予備訓練データ70R1Lは、画素毎に紐付けられる。第2の予備訓練データ71R1Nの中で細胞核領域を示す画素には、「第1の層構造の核領域である」ことを示すラベル値がさらに付与される。第2の予備訓練データ71R1N内の細胞核の領域に「第1の層構造の核領域である」ことを示すラベル値が付されたデータを第2の訓練データ73R1として用いる。
前記訓練用画像に含まれる第3の訓練用画像70R2は、第1の訓練用画像70R1を取得した組織に含まれる、第2の層構造(例えば結合組織層)から取得された画像である。この画像は、顕微鏡観察により、組織構造が認識できるように染色された標本から取得される。前記染色は、組織構造が認識できる限り制限されないが、好ましくは明視野観察用の染色である。前記明視野観察用染色は、少なくとも細胞核と細胞核以外の部位が、色相で区別可能に染色できる限り制限されない。前記標本が哺乳類の組織標本である場合には、例えば、HE染色を挙げることができる。前記染色は、第1の訓練用画像70R1を取得した標本と同じものであることが好ましい。
第3の訓練用画像70R2からは、第3の訓練データ(72R2r,72R2g,72R2b)と、第3の予備訓練データ70R2Lが生成される。第3の訓練データ(72R2r,72R2g,72R2b)は、第3の訓練用画像70R2に含まれる色相を原色毎に分離した単一色画像に関する情報である。第3の予備訓練データ70R2Lは、第3の訓練用画像70R2に含まれている層構造が、第2の層構造であることを示す二値化データ(ラベル値)である。第3の訓練用画像70R2に含まれる層構造は、例えば検査者等による標本観察により第2の層構造であると判定される。
前記訓練用画像に含まれる第4の訓練用画像71R2は、第3の訓練用画像70R2において、どこが細胞の核領域であるかを示す、すなわち「核領域である」という正解が第2の層構造のどこの領域であるかを示す画像である。この画像は、第3の訓練用画像70R2を取得した標本と同一の標本、または第3の訓練用画像70R2を取得した標本に対応する標本(例えば、連続切片標本)に対して、細胞核を選択的に染色する蛍光核染色を施し、撮像された画像である。前記蛍光核染色としては、制限されないが、前記蛍光核染色は第2の訓練用画像71R1を取得する際の標本に施した前記蛍光核染色と同じであることが好ましい。第4の訓練用画像71R2からは、第4の予備訓練データ71R2Nが生成される。第4の予備訓練データ71R2Nは、第4の訓練用画像71R2を二値化することにより生成される二値化データ(ラベル値)であり、細胞核の領域かそれ以外の領域かを示している。
第4の予備訓練データ71R2Nと第3の予備訓練データ70R2Lは、画素毎に紐付けられる。第4の予備訓練データ71R2Nの中で細胞核領域を示す画素には、「第2の層構造の核領域である」ことを示すラベル値がさらに付与される。第4の予備訓練データ71R2N内の細胞核の領域に「第2の層構造の核領域である」ことを示すラベル値が付されたデータを第4の訓練データ73R2として用いる。
前記訓練用画像に含まれる第5の訓練用画像70R3は、第1の訓練用画像70R1を取得した組織に含まれる、第3の層構造(例えば結合組織層)から取得された画像である。この画像は、顕微鏡観察により、組織構造が認識できるように染色された標本から取得される。前記染色は、組織構造が認識できる限り制限されないが、好ましくは明視野観察用の染色である。前記明視野観察用染色は、少なくとも細胞核と細胞核以外の部位が、色相で区別可能に染色できる限り制限されない。前記標本が哺乳類の組織標本である場合には、例えば、HE染色を挙げることができる。
第5の訓練用画像70R3からは、第5の訓練データ72R3r,72R3g,72R3bと、第5の予備訓練データ70R3Lが生成される。第5の訓練データ72R3r,72R3g,72R3bは、第5の訓練用画像70R3に含まれる色相を原色毎に分離した単一色画像に関する情報である。第5の予備訓練データ70R3Lは、第5の訓練用画像70R3に含まれている層構造が、第3の層構造であることであることを示す二値化データ(ラベル値)である。第5の訓練用画像に含まれる層構造は、例えば検査者等による標本観察により第3の層構造であると判定される。
前記訓練用画像に含まれる第6の訓練用画像71R3は、第5の訓練用画像70R3において、どこが細胞の核領域であるかを示す、すなわち「核領域である」という正解が第3の層構造のどこの領域であるかを示す画像である。この画像は、第5の訓練用画像70R3を取得した標本と同一の標本、または第5の訓練用画像70R3を取得した標本に対応する標本(例えば、連続切片標本)に対して、細胞核を選択的に染色する蛍光核染色を施し、撮像された画像である。前記蛍光核染色としては、制限されないが、前記蛍光核染色は第2の訓練用画像71R1を取得する際の標本に施した蛍光核染色と同じであることが好ましい。第6の訓練用画像71R3からは、第6の予備訓練データ71R3Nが生成される。第6の予備訓練データ71R3Nは、第6の訓練用画像71R3を二値化することにより生成される二値化データ(ラベル値)であり、細胞の核の領域かそれ以外の領域かを示している。
第6の予備訓練データ71R3Nと第5の予備訓練データ70R3Lは、画素毎に紐付けられる。第6の予備訓練データ71R3Nの中で細胞核領域を示す画素には、「第3の層構造の核領域である」ことを示すラベル値がさらに付与される。第6の予備訓練データ71R3N内の細胞核の領域に「第3の層構造の核領域である」ことを示すラベル値が付されたデータを第6の訓練データ73R3として用いる。
訓練データは、第1の層構造訓練データ74R1、第2の層構造訓練データ74R2および第3の層構造訓練データ74R3を含む。組織がさらなる層構造を含む場合には、上記第4または第6の訓練データ73R3の生成方法に従って、さらなる訓練データを作成してもよい。
前記細胞の核の領域とは、1つまたは複数の核を含む領域をいう。以下、前記細胞の核の領域を「核領域」ともいう。
本発明の概要および実施の形態では、HE染色された組織標本を撮像した画像内に含まれる組織の層構造を、深層学習アルゴリズムによって判別する場合を一例として説明する。
[深層学習方法および画像解析方法の概要]
はじめに、深層学習方法について説明する。
・深層学習方法の概要
図1を用いて、第1の訓練データ72R1r,72R1g,72R1bと第2の訓練データ73R1を含む第1の層構造訓練データ74R1の生成の概要を説明する。図1には、組織標本のスライドイメージ70Wを使ったニューラルネットワークへの訓練データの入力例を示す。スライドイメージ70Wは明視野観察用染色としてHE染色を施して作製された標本を明視野で撮像した訓練用画像を示す。スライドイメージ70W内に示されたL1は第1の層構造を示す。L2は第2の層構造を示す。L3は第3の層構造を示す。スライドイメージ70W内の記号R1で示された四角枠で囲まれた領域は、第1の訓練用画像70R1として使用する領域を示す。記号R2で示された四角枠で囲まれた領域は、図2に示す第3の訓練用画像70R2として使用する領域を示す。記号R3で示された四角枠で囲まれた領域は、図3に示す第5の訓練用画像70R3として使用する領域を示す。第1の訓練用画像70R1が第1の層構造に含まれ、第3の訓練用画像70R2が第2の層構造に含まれ、および第5の訓練用画像70R3が第3の層構造に含まれることは、それぞれの訓練画像を取得する前に判定していてもよく、それぞれの訓練画像を取得してから判定してもよい。
図1において、第1の訓練用画像70R1は、HE染色した標本を明視野観察下で例えばカラー画像として撮像しているため、第1の訓練用画像70R1には複数の色相が含まれる。
第1の訓練用画像70R1は、例えば公知の光学顕微鏡、蛍光顕微鏡またはバーチャルスライドスキャナ等の画像取得装置を用いて、予め取得することができる。例示的には、本実施形態において画像取得装置から取得されるカラー撮像は、カラースペースがRGBの24ビットカラーであることが好ましい。RGBの24ビットカラーでは、赤色、緑色および青色のそれぞれの濃さ(色濃度)を、8ビット(256段階)の階調で表すことが好ましい。第1の訓練用画像70R1は、1以上の原色を含む画像であればよい。第1の訓練用画像70R1からは、第1の訓練データ72R1r,72R1g,72R1bと、第1の予備訓練データ70R1Lとが生成される。
本発明において、色相は、例示的には、光の3原色の組み合わせ、または色の3原色の組み合わせで規定される。第1の訓練データ72R1r,72R1g,72R1bは、第1の訓練用画像70R1に対応して生成される、第1の訓練用画像70R1に現れる色相を個々の原色に分離して原色毎に生成し、その濃度に応じた符号で表されたデータである。図1では光の3原色である赤(R)、緑(G)、青(B)の原色毎に分離した単一色の濃淡で示された画像(以下、「単一色画像」ともいう)72R1R,72R1G,72R1Bを得る。
単一色画像72R1R,72R1G,72R1B上の各画素について各色の色濃度を符号化し、画像全体をR、G、B毎の各画像について、画素毎の色濃度に対応した符号化図(以下、「色濃度符号化図」ともいう)72R1r,72R1g,72R1bを生成する。色濃度は、各色256段階を示す数値で符号化しても良い。また、色濃度は、各色256段階を示す数値に対して、さらに前処理を行って、各画素における色濃度を例えば、値0から値7の8段階で示す数字で符号化してもよい。図1に例示的に示すR、G、B各色の単一色画像から生成された色濃度符号化図72R1r,72R1g,72R1bは、説明の便宜上、各画素における色濃度を値0から値7の8段階の符号で表している。図1に示す色濃度符号化図72R1r,72R1g,72R1bから各画素のR、G、Bの色濃度値が組み合わされた第1の訓練データ72R1r,72R1g,72R1bが生成される。色濃度を示す符号は、本明細書において色濃度値ともいう。また、第1の訓練データ72R1r,72R1g,72R1bとして、色濃度符号化図に替えて、各画素に対応した色濃度値の行列を生成してもよい。
図1において、第1の予備訓練データ70R1Lは、第1の訓練用画像70R1に含まれている層構造が、第1の層構造であることを示すデータである。前記データは、画像データであってもよく、第1の訓練用画像70R1内の各画素に対応するラベル値であってもよい。例えば、第1の訓練用画像70R1は、全領域が第1の層構造であるため第1の訓練用画像70R1内の各画素全てに対して第1の層構造であることを示すラベル値として同じ数値が付される。
図1において、第2の訓練用画像71R1は、蛍光核染色された標本を蛍光顕微鏡の蛍光観察下で、2階調以上のグレースケールで撮像するか、またはカラー撮像することにより取得される。第2の訓練用画像71R1は、例えば公知の蛍光顕微鏡またはバーチャルスライドスキャナ等の画像取得装置を用いて、予め取得することができる。第2の訓練用画像71R1からは、第2の予備訓練データ71R1Nが生成される。
第2の予備訓練データ71R1Nは、例えば、2階調以上のグレースケールのまたはカラーの第2の訓練用画像71R1を、二値化処理により白黒の蛍光画像として変換することにより生成される。第2の訓練用画像71R1を二値化して、細胞核の領域とそれ以外の領域とを区別することにより、細胞核の領域が判別される。二値化処理による細胞核の領域またはそれ以外の領域であるかの判断は、例えば、画像内の各画素の色濃度値を、所定の条件(例えば、色濃度のしきい値)と比較することにより行う。前記しきい値は、例えば判別分析法、モード法、Kittler法、3σ法、p‐tile法等で設定することができる。しきい値との比較に代えて、最尤推定法を用いて二値化してもよい。前記二値化処理によって得られる二値化データは、第2の訓練用画像71R1内の画素毎にラベル値として付してもよい。例えば、細胞核の領域を示す画素には「1」、細胞核の領域以外には「0」のラベル値が付される。また、前記ラベル値を第2の訓練用画像71R1上に色として示してもよい(例えば、核領域は白、核以外の領域は黒)。
次に第2の訓練データ73R1を生成する。第2の訓練データ73R1は、第1の予備訓練データ70R1Lと、第2の予備訓練データ71R1Nとから生成されるデータであり、真値像73R1としてニューラルネットワーク50に正解として学習させるデータである。第2の訓練データ73R1は、第1の層構造を含む第1の訓練用画像70R1および第2の訓練用画像71R1から生成されるため、組織の層構造を示す正解は、第1の層構造の核領域である。第2の訓練データ73R1には、第2の訓練用画像71R1の各画素に対応する第1の層構造の核領域と、それ以外の領域を区別して示すラベル値が含まれる。例えば第1の層構造の核領域を示すラベル値は「1」、それ以外の領域を示すラベルは「0」である。図1に示す第2の訓練データ73R1は、説明の便宜上画像で示されているが、前記ニューラルネットワークに入力される際には、各画素には、第1の層構造の核領域と、それ以外の領域を区別して示すラベル値が付与される。
深層学習法では、図1に示す第1の訓練データ72R1r,72R1g,72R1bおよび第2の訓練データ73R1を第1の層構造訓練データ74R1として使用する。具体的には、第1の訓練データ72R1r,72R1g,72R1bを入力層50aとし、第2の訓練データ73R1を出力層50bとするニューラルネットワーク50に学習させる。すなわち、第1の訓練データ72R1r,72R1g,72R1bと第2の訓練データ73R1とのペアの関係を、ニューラルネットワーク50に学習させる。
次に、図2を用いて、第3の訓練データ72R2r,72R2g,72R2bと第4の訓練データ73R2を含む第2の層構造訓練データ74R2の生成の概要を説明する。図2において、スライドイメージ70Wは図1と同様であるため、第3の訓練用画像70R2には、第1の訓練用画像70R1と同様に複数の色相が含まれる。
第3の訓練用画像70R2は、第1の層構造に替えて第2の層構造を用いる以外は、第1の訓練用画像70R1と同様の方法で取得される。第3の訓練用画像70R2からは、第3の訓練データ72R2r,72R2g,72R2bと、第3の予備訓練データ70R2Lとが生成される。
第3の訓練データ72R2r,72R2g,72R2bは、第1の層構造に替えて第2の層構造を用いる以外は、第1の訓練データ72R1r,72R1g,72R1bと同様の方法で生成される。図2に示す色濃度符号化図72R2r,72R2g,72R2bから各画素のR、G、Bの色濃度値が組み合わされた第3の訓練データ72R2r,72R2g,72R2bが生成される。
図2において、第3の予備訓練データ70R2Lは、第3の訓練用画像70R2に含まれている層構造が、第2の層構造であることを示すデータである。前記データは、画像データであってもよく、第3の訓練用画像70R2内の各画素に対応するラベル値であってもよい。例えば、第3の訓練用画像70R2は全領域が第2の層構造であるため、第3の訓練用画像70R2内の各画素全てに対して第2の層構造であることを示すラベル値として同じ数値が付される。第2の層構造であることを示すラベル値は、他の層構造を示す数値とは区別される。
図2において、第4の訓練用画像71R2は、第1の層構造に替えて第2の層構造を用いる以外は、第2の訓練用画像71R1と同様の方法で取得される。第4の訓練用画像71R2からは、第4の予備訓練データ71R2Nが生成される。
第4の予備訓練データ71R2Nは、第1の層構造に替えて第2の層構造を用いる以外は、第2の予備訓練データ71R1Nと同様の方法で生成される。
次に第4の訓練データ73R2を生成する。第4の訓練データ73R2は、第3の予備訓練データ70R2Lと、第4の予備訓練データ71R2Nとから生成されるデータであり、真値像73R2としてニューラルネットワーク50に正解として学習させるデータである。第4の訓練データ73R2は、第2の層構造を含む第3の訓練用画像70R2および第4の訓練用画像71R2から生成されるため、組織の層構造を示す正解は、第2の層構造の核領域である。第4の訓練データ73R2には、第4の訓練用画像71R2の各画素に対応する第2の層構造の核領域と、それ以外の領域を区別して示すラベル値が含まれる。例えば第2の層構造の核領域を示すラベル値は「2」、それ以外の領域を示すラベル値は「0」である。図2に示す第4の訓練データ73R2は、説明の便宜上画像で示されているが、前記ニューラルネットワークに入力される際には、各画素には、第2の層構造の核領域と、それ以外の領域を区別して示すラベル値が付与される。
深層学習方法では、図2に示す第3の訓練データ72R2r,72R2g,72R2bおよび第4の訓練データ73R2を第2の層構造訓練データ74R2として使用する。具体的には、第3の訓練データ72R2r,72R2g,72R2bを入力層50aとし、第4の訓練データ73R2を出力層50bとしニューラルネットワーク50に学習させる。すなわち、第3の訓練データ72R2r,72R2g,72R2bと第4の訓練データ73R2とのペアの関係を、ニューラルネットワーク50に学習させる。
次に、図3を用いて、第5の訓練データ72R3r,72R3g,72R3bと第6の訓練データ73R3を含む第2の層構造訓練データ74R3の生成の概要を説明する。図3において、スライドイメージ70Wは図1と同様であるため、第5の訓練用画像70R3には、第1の訓練用画像70R1と同様に複数の色相が含まれる。
第5の訓練用画像70R3は、第1の層構造に替えて第3の層構造を用いる以外は、第1の訓練用画像70R1と同様の方法で取得される。第5の訓練用画像70R3からは、第5の訓練データ72R3r,72R3g,72R3bと、第5の予備訓練データ70R3Lとが生成される。
第5の訓練データ72R3r,72R3g,72R3bは、第1の層構造に替えて第3の層構造を用いる以外は、第1の訓練データ72R1r,72R1g,72R1bと同様の方法で生成される。図3に示す色濃度符号化図72R3r,72R3g,72R3bから各画素のR、G、Bの色濃度値が組み合わされた第5の訓練データ72R3r,72R3g,72R3bとして生成される。
図3において、第5の予備訓練データ70R3Lは、第5の訓練用画像70R3に含まれている層構造が、第3の層構造であることを示すデータである。前記データは、画像データであってもよく、第5の訓練用画像70R3内の各画素に対応するラベル値であってもよい。例えば、第5の訓練用画像70R3は全領域が第3の層構造であるため、第5の訓練用画像70R3内の各画素全てに対して第3の層構造であることを示すラベル値として同じ数値が付される。第3の層構造であることを示す数値は、他の層構造を示す数値とは区別される。
図3において、第6の訓練用画像71R3は、第1の層構造に替えて第3の層構造を用いる以外は、第2の訓練用画像71R1と同様の方法で取得される。第6の訓練用画像71R3からは、第6の予備訓練データ71R3Nが生成される。
第6の予備訓練データ71R3Nは、第1の層構造に替えて第3の層構造を用いる以外は、第2の予備訓練データ71R1Nと同様の方法で生成される。
次に第6の訓練データ73R3を生成する。第6の訓練データ73R3は、第5の予備訓練データ70R3Lと、第6の予備訓練データ71R3Nとから生成されるデータであり、真値像73R3としてニューラルネットワーク50に正解として学習させるデータである。第6の訓練データ73R3は、第3の層構造を含む第5の訓練用画像70R3および第6の訓練用画像71R3から生成されるため、組織の層構造を示す正解は、第3の層構造の核領域である。第6の訓練データ73R3には、第6の訓練用画像71R3の各画素に対応する第3の層構造の核領域と、それ以外の領域を区別して示すラベル値が含まれる。例えば第3の層構造の核領域を示すラベル値は「3」、それ以外の領域を示すラベル値は「0」である。図3に示す第6の訓練データ73R3は、説明の便宜上画像で示されているが、前記ニューラルネットワークに入力される際には、各画素には、第3の層構造の核領域と、それ以外の領域を区別して示すラベル値が付与される。
深層学習方法では、図3に示す第5の訓練データ72R3r,72R3g,72R3bおよび第6の訓練データ73R3を第3の層構造訓練データ74R3として使用する。具体的には、第5の訓練データ72R3r,72R3g,72R3bを入力層50aとし、第6の訓練データ73R3を出力層50bとするニューラルネットワーク50に学習させる。すなわち、第5の訓練データ72R3r,72R3g,72R3bと第6の訓練データ73R3とのペアの関係を、ニューラルネットワーク50に学習させる。
図4(a)から(c)を参照して、第1の層構造訓練データ74R1の生成方法を説明する。第1の層構造訓練データ74R1は、第1の訓練データ72R1r,72R1g,72R1bの色濃度符号化図72R1r,72R1g,72R1bのそれぞれの色濃度値と第2の訓練データ73R1とを画素毎に組み合わせたデータである。第1の層構造訓練データ74R1は、図4(a)では、その画像サイズ(訓練データ1つあたりの大きさ)が説明の便宜のために簡素化されており、第1の訓練データ72R1r,72R1g,72R1bおよび第2の訓練データ73R1が、縦方向9画素および横方向9画素の合計81画素を有する。
図4(b)に、第1の層構造訓練データ74R1を構成する1つの画素における72R1r,72R1g,72R1bのそれぞれの色濃度値と核領域を示すラベル値の組み合わせの一例を示す。図4(b)の上段に示す3つの値74R1aが、各画素におけるR、G、B各色の色濃度値である。例示的には、3つの値は、左から、赤(R)、緑(G)および青(B)の順序で格納されている。色濃度符号化図72R1r,72R1g,72R1bの各画素の色濃度値は便宜的に値0から値7の8段階で示されている。これは、画像の前処理の一例として、撮像された際に256段階で表されている各色の画像72R1R,72R1G,72R1Bの明るさを、8段階の色濃度値にそれぞれ変換する処理である。色濃度値は、例えば最も低い明るさ(RGBカラー256段階で表した時の輝度値が低い階調群)を色濃度値0とし、明るさの程度が高くなるに従い徐々に高い値を割り当ててゆき、最も高い明るさ(RGBカラー256段階で表した時の輝度値が高い階調群)を色濃度値7とする。図4(b)中の下段に示す値74R1bが、対応する画素の第2の訓練データ73R1のラベル値である。例えばラベル値1は第1の層構造の細胞核を示し、ラベル値0はそれ以外の領域を示すこととする。すなわち、図1および図4(a)に示す第2の訓練データ73R1において、ラベル値が1から0に変化する画素または0から1に変化する画素の位置が、第1の層構造の核領域とそれ以外の領域との境界に相当する。
図1および図4(c)に示す第1の層構造訓練データ75R1は、図4(a)に示す第1の層構造訓練データ74R1の所定の画素数の領域(以下、「ウィンドウサイズ」と記載する)を切り出したデータである。ウィンドウサイズの第1の層構造訓練データ75R1も、説明の便宜のために3×3画素に簡素化して示すが、実際の好ましいウィンドウサイズは、例示的には113×113画素程度であり、その中に正常の胃上皮細胞の核が3×3個程度入る大きさが、学習効率の点から好ましい。例えば、図3(c)に示すように、3×3画素のウィンドウW1を設定し、第1の層構造訓練データ74R1に対してウィンドウW1を移動させる。ウィンドウW1の中心は、第1の層構造訓練データ74R1のいずれかの画素に位置しており、例えば、黒枠で示すウィンドウW1内の第1の層構造訓練データ74R1がウィンドウサイズの第1の層構造訓練データ75R1として切り出される。切り出したウィンドウサイズの第1の層構造訓練データ75R1は図1に示すニューラルネットワーク50の学習に用いられる。
図1に示すように、ニューラルネットワーク50の入力層50aのノード数は、入力されるウィンドウサイズの第1の層構造訓練データ75R1の画素数と画像に含まれる原色の数(例えば光の三原色であれば、R、G、Bの3つ)との積に対応している。ウィンドウサイズの第1の層構造訓練データ75R1の各画素の色濃度値データ76をニューラルネットワークの入力層50aとし、第1の層構造訓練データ75R1の各画素の第2の訓練データ73R1に対応するラベル値74R1bのうち中心に位置する画素のラベル値77R1を、ニューラルネットワークの出力層50bとして、ニューラルネットワーク50に学習させる。各画素の色濃度値データ76は、第1の層構造訓練データ75R1の各画素のR、G、B各色の色濃度値74R1aの集合データである。例示として、ウィンドウサイズの第1の層構造訓練データ75R1が3×3画素である場合には、各画素についてR、G、B毎に1つずつの色濃度値74aが与えられるので、色濃度値データ76の色濃度値数は「27」(3×3×3=27)となり、ニューラルネットワーク50の入力層50aのノード数も「27」となる。
このように、ニューラルネットワーク50に入力するウィンドウサイズの第1の層構造訓練データ75R1は、ユーザが作成することなく、コンピュータが自動的に作成することができる。これにより、ニューラルネットワーク50の効率的な深層学習が促進される。
図4(c)に示すように、初期状態において、ウィンドウW1の中心は、第1の層構造訓練データ74R1の左上角に位置している。以後、ウィンドウW1によってウィンドウサイズの第1の層構造訓練データ75R1を切り出し、ニューラルネットワーク50の学習を行う度に、ウィンドウW1の位置を移動させる。具体的には、ウィンドウW1の中心が第1の層構造訓練データ74R1の例えば全ての画素を走査するように、ウィンドウW1を1画素単位で移動させる。これにより、第1の層構造訓練データ74R1の全ての画素から切り出されたウィンドウサイズの第1の層構造訓練データ75R1が、ニューラルネットワーク50の学習に用いられる。よってニューラルネットワーク50の学習の程度を向上でき、深層学習の結果、図6に示すニューラルネットワーク60構造を有する深層学習アルゴリズムが得られる。
図5(a)には、第2の層構造訓練データ74R2を示す。第2の層構造訓練データ74R2の生成方法は、第1の訓練データ72R1r,72R1g,72R1bおよび第2の訓練データ73R1に替えて、第3の訓練データ72R2r,72R2g,72R2bおよび第4の訓練データ73R2を使用する点を除き、第1の層構造訓練データ74R1と同様である。図5(a)において、第2の層構造訓練データ74R2においては、例えばラベル値2は第2の層構造の細胞の核領域を示し、ラベル値0はそれ以外の領域を示すこととする。すなわち、図2に示す第4の訓練データ73R2において、ラベル値が2から0に変化する画素または0から2に変化する画素の位置が、第2の層構造の核領域とそれ以外の領域との境界に相当する。第2の層構造訓練データ75R2内の各画素の第4の訓練データ73R2に対応するラベル値のうち中心に位置する画素のラベル値は、図2に示す出力層50bに入力されるラベル値77R2となる。
図5(b)には、第3の層構造訓練データ74R3を示す。第3の層構造訓練データ74R3の生成方法は、第1の訓練データ72R1r,72R1g,72R1bおよび第2の訓練データ73R1に替えて、第5の訓練データ72R3r,72R3g,72R3bおよび第6の訓練データ73R3を使用する点を除き、第1の層構造訓練データ74R1と同様である。図5(b)において、第3の層構造訓練データ74R3においては、例えばラベル値3は第3の層構造の細胞の核領域を示し、ラベル値0はそれ以外の領域を示すこととする。すなわち、図3に示す第6の訓練データ73R3において、ラベル値が3から0に変化する画素または0から3に変化する画素の位置が、第4の層構造の核領域とそれ以外の領域との境界に相当する。第3の層構造訓練データ75R3内の各画素の第6の訓練データ73R3に対応するラベル値のうち中心に位置する画素のラベル値は、図3に示す出力層50bに入力されるラベル値77R3となる。
第1の層構造訓練データ75R1、第2の層構造訓練データ75R2および第3の層構造訓練データ75R3は、合わせて第1の層構造の核領域を示すラベルが1、第2の層構造の核領域を示すラベルが2、第3の層構造の核領域を示すラベルが3、第1の層構造の核領域、第2の層構造の核領域、および第3の層構造の核領域のいずれにも該当しない部分を示すラベルが0の4値のデータとなり、真値としてニューラルネットワーク50に学習される。
学習に使用されるウィンドウサイズの訓練用画像は、例えば20倍~60倍の拡大倍率で撮像されたホールスライドイメージを300~600分割したものを用いることが好ましい。ホールスライドイメージの拡大倍率は、20倍、40倍、60倍から選択することができる。好ましくは、40倍である。ホールスライドイメージの分割は、300分割、350分割、400分割、450分割、500分割、550分割、600分割程度から選択することができる。好ましくは40倍の拡大倍率で撮像されたホールスライドイメージを512分割した訓練用画像を使用することができる。訓練用画像の枚数は制限されないが、各層構造について、少なくとも10枚、少なくとも30枚、少なくとも50枚使用することが好ましい。ウィンドウサイズは、25±30μm×25±30μmの範囲から選択することができる。好ましくは25±20μm×25±20μmの範囲、より好ましくは25±20μm×25±20μmの範囲、さらに好ましくは25±10μm×25±10μmの範囲である。最も好ましくは25±5μm×25±5μmの範囲である。
・画像解析方法の概要
図6に示すように、画像解析方法では、解析対象の組織または細胞を含む標本を撮像した解析対象画像(明視野画像)78から、解析用データ80を生成する。前記標本は、第1の訓練用画像70R1と同じ染色が施されていることが好ましい。解析対象画像78も、例えば公知の顕微鏡またはバーチャルスライドスキャナ等を用いて、例えばカラー画像として取得することができる。解析対象画像(明視野画像)78は、1以上の原色を含む画像であればよい。カラーの解析対象画像78を、各画素についてR、G、B各色の色濃度値で符号化すると、画像全体をR、G、B毎に各画素における色濃度値の符号化図として表すことができる(解析用色濃度符号化図79r,79g,79b)。色濃度符号化図79r,79g,79bから画素毎にR、G、Bの色濃度値が組み合わされた解析対象データが生成される。図6に例示的に示すR、G、B各色の単一色画像における色濃度の符号を示す色濃度符号化図79r,79g,79bは、3原色の各画像79R,79G,79Bに代えて、値0から値7の8段階で符号で表された色濃度値を表示している。
解析用データ80は、解析対象データの所定の画素数の領域(すなわち、ウィンドウサイズ)を切り出したデータであり、解析対象画像78に含まれている組織または細胞の色濃度値を含むデータである。ウィンドウサイズの解析用データ80も、第1の層構造訓練データ75R1、第2の層構造訓練データ75R2および第3の層構造訓練データ75R3と同様に、説明の便宜のために3×3画素に簡素化して示すが、実際の好ましいウィンドウサイズは、例示的には113×113画素程度であり、その中に正常の胃上皮細胞の核が3×3個程度入る大きさが、判別精度の点から好ましく、例えば40倍の視野で113×113画素程度である。例えば、3×3画素のウィンドウW2を設定し、解析対象データに対してウィンドウW2を移動させる。ウィンドウW2の中心は、解析対象データのいずれかの画素に位置しており、色濃度符号化図79r,79g,79bを、例えば3×3画素の黒枠で示すウィンドウW2によって切り出すと、ウィンドウサイズの解析用データ80が得られる。このように、解析用データ80は、解析対象データから、所定の画素を中心として周辺の画素を含む領域毎に生成される。所定の画素とは、ウィンドウW2の中心に位置する解析対象データの画素を意味し、周辺の画素とは、この所定の画素を中心とする、ウィンドウサイズの範囲内に含まれる解析対象データの画素を意味する。解析用データ80においても、第1の層構造訓練データ75R1、第2の層構造訓練データ75R2および第3の層構造訓練データ75R3と同様に、各画素について、色濃度値が赤(R)、緑(G)および青(B)の順序で格納されている。
画像解析方法では、図1から図3に示すウィンドウサイズの第1の層構造訓練データ75R1、第2の層構造訓練データ75R2および第3の層構造訓練データ75R3を用いて学習させたニューラルネットワークを有する深層学習アルゴリズム60を用いて、解析用データ80を処理する。解析用データ80を処理することによって、解析対象の組織における層構造を示すデータ83を生成する。
再び図6を参照し、解析対象データから切り出された解析用データ80が深層学習アルゴリズムを構成するニューラルネットワーク60に入力される。ニューラルネットワーク60の入力層60aのノード数は、入力される画素数と画像に含まれる原色の数との積に対応している。解析用データ80の各画素の色濃度値データ81を、ニューラルネットワーク60に入力すると、出力層60bからは、解析用データ80の中心に位置する画素の推定値82(4値)が出力される。例えば推定値が1の場合は第1の層構造の核領域であることを示し、推定値が2の場合は第2の層構造の核領域であることを示し、推定値が3の場合は第3の層構造の核領域であることを示し、推定値が0の場合は、細胞核以外の領域であることを示す。すなわち、ニューラルネットワーク60の出力層60bから出力される推定値82は、解析対象画像の画素毎に生成されるラベル値であり、解析対象画像における層構造を示すデータである。推定値82は、ニューラルネットワークに関する後述する説明ではクラスとも呼ばれる。ニューラルネットワーク60は、入力された解析用データ80に対し、解析用データ80の中心に位置する画素に対し、層構造を示すラベル値を生成する。言い替えると、ニューラルネットワーク60は、解析用データ80を、解析対象画像に含まれる組織の層構造を示すクラスに分類する。ここで、各画素の色濃度値データ81は、解析用データ80の各画素のR、G、B各色の色濃度値の集合データである。
以後、ウィンドウW2の中心が解析対象データの全ての画素を走査するように、ウィンドウW2を1画素単位で移動させながら、解析用データ80をウィンドウサイズで切り出す。切り出された解析用データ80を、ニューラルネットワーク60に入力する。これにより、解析対象画像における組織または細胞の層構造を示すデータとして、ラベル値83を得る。図6に示す例では、ラベル値83についてさらに各層構造の核領域検出処理を行うことにより、各層構造の核領域を示す層構造核領域強調画像84を得る。層構造核領域検出処理は、具体的には、例えば推定値82に応じて各層構造の核領域を示す画素を検出する処理となり、実際に推定値82が1の画素を第1の層構造の核領域と、推定値82が2の画素を第2の層構造の核領域と、推定値82が3の画素を第3の層構造の核領域と判別する処理となる。層構造核領域強調画像84は、ラベル値83をラベル値に応じた色で表した画像である。また、第1の層構造の核領域を判別した後に、第1の層構造の核領域と、それ以外の領域(すなわち、第2の層構造および/または第3の層構造核領域または核領域以外の領域)とを識別可能に表示装置に表示させる処理を行ってもよい。例えば、第1の層構造の核領域を色で塗りつぶす、第1の層構造の核領域とそれ以外の領域との間に線を描画する等の処理を行い、これらを表示装置に識別可能に表示する。また、第2の層構造および/または第3の層構造核領域についても、関心領域(解析の対象となる領域)の層構造の核領域と、それ以外の領域とを識別可能に表示装置に表示させる処理を行ってもよい。
<第1の実施形態>
第1の実施形態では、上述の概要で説明した深層学習方法および画像解析方法を実施するシステムの構成について、具体的に説明する。
[構成の概要]
図7を参照すると、第1の実施形態に係る画像解析システムは、深層学習装置100Aと、画像解析装置200Aとを備える。ベンダ側装置100は深層学習装置100Aとして動作し、ユーザ側装置200は画像解析装置200Aとして動作する。深層学習装置100Aは、ニューラルネットワーク50に訓練データを使って学習させ、訓練データによって訓練された深層学習アルゴリズム60をユーザに提供する。学習済みのニューラルネットワーク60から構成される深層学習アルゴリズムは、記憶媒体98またはネットワーク99を通じて、深層学習装置100Aから画像解析装置200Aに提供される。画像解析装置200Aは、学習済みのニューラルネットワーク60から構成される深層学習アルゴリズムを用いて解析対象の画像の解析を行う。
深層学習装置100Aは、例えば汎用コンピュータで構成されており、後述するフローチャートに基づいて、深層学習処理を行う。画像解析装置200Aは、例えば汎用コンピュータで構成されており、後述するフローチャートに基づいて、画像解析処理を行う。記憶媒体98は、例えばDVD-ROMやUSBメモリ等の、コンピュータ読み取り可能であって非一時的な有形の記憶媒体である。
深層学習装置100Aは撮像装置300に接続されている。撮像装置300は、撮像素子301と、蛍光顕微鏡302とを備え、ステージ309上にセットされた学習用の標本308の、明視野画像および蛍光画像を撮像する。学習用の標本308は、上述の染色が施されている。深層学習装置100Aは、撮像装置300によって撮像された訓練用画像を取得する。
画像解析装置200Aは撮像装置400に接続されている。撮像装置400は、撮像素子401と、蛍光顕微鏡402とを備え、ステージ409上にセットされた解析対象の標本408の、明視野画像を撮像する。解析対象の標本408は、上述の通り予め染色されている。画像解析装置200Aは、撮像装置400によって撮像された解析対象画像78を取得する。
撮像装置300,400には、標本を撮像する機能を有する、公知の蛍光顕微鏡またはバーチャルスライドスキャナ等を用いることができる。撮像装置400は、標本を撮像する機能を有する限り、光学顕微鏡であっても良い。
[ハードウェア構成]
図8を参照すると、ベンダ側装置100(100A,100B)は、処理部10(10A,10B)と、入力部16と、出力部17とを備える。
処理部10は、後述するデータ処理を行うCPU(Central Processing Unit)11と、データ処理の作業領域に使用するメモリ12と、後述するプログラムおよび処理データを記憶する記憶部13と、各部の間でデータを伝送するバス14と、外部機器とのデータの入出力を行うインタフェース部15と、GPU(Graphics Processing Unit)19とを備えている。入力部16および出力部17は、処理部10に接続されている。例示的には、入力部16はキーボードまたはマウス等の入力装置であり、出力部17は液晶ディスプレイ等の表示装置である。GPU19は、CPU11が行う演算処理(例えば、並列演算処理)を補助するアクセラレータとして機能する。すなわち以下の説明においてCPU11が行う処理とは、CPU11がGPU19をアクセラレータとして用いて行う処理も含むことを意味する。
また、処理部10は、以下の図10で説明する各ステップの処理を行うために、本発明に係るプログラムおよび学習前のニューラルネットワーク50を、例えば実行形式で記憶部13に予め記憶している。実行形式は、例えばプログラミング言語からコンパイラにより変換されて生成される形式である。処理部10は、記憶部13に記憶したプログラムおよび学習前のニューラルネットワーク50を使用して処理を行う。
以下の説明においては、特に断らない限り、処理部10が行う処理は、記憶部13またはメモリ12に格納されたプログラムおよびニューラルネットワーク50に基づいて、CPU11が行う処理を意味する。CPU11はメモリ12を作業領域として必要なデータ(処理途中の中間データ等)を一時記憶し、記憶部13に演算結果等の長期保存するデータを適宜記憶する。
図9を参照すると、ユーザ側装置200(200A,200B,200C)は、処理部20(20A,20B,20C)と、入力部26と、出力部27とを備える。
処理部20は、後述するデータ処理を行うCPU(Central Processing Unit)21と、データ処理の作業領域に使用するメモリ22と、後述するプログラムおよび処理データを記憶する記憶部23と、各部の間でデータを伝送するバス24と、外部機器とのデータの入出力を行うインタフェース部25と、GPU(Graphics Processing Unit)29とを備えている。入力部26および出力部27は、処理部20に接続されている。例示的には、入力部26はキーボードまたはマウス等の入力装置であり、出力部27は液晶ディスプレイ等の表示装置である。GPU29は、CPU21が行う演算処理(例えば、並列演算処理)を補助するアクセラレータとして機能する。すなわち以下の説明においてCPU21が行う処理とは、CPU21がGPU29をアクセラレータとして用いて行う処理も含むことを意味する。
また、処理部20は、以下の図14で説明する各ステップの処理を行うために、本発明に係るプログラムおよび学習済みのニューラルネットワーク構造の深層学習アルゴリズム60を、例えば実行形式で記憶部23に予め記憶している。実行形式は、例えばプログラミング言語からコンパイラにより変換されて生成される形式である。処理部20は、記憶部23に記憶したプログラムおよび深層学習アルゴリズム60を使用して処理を行う。
以下の説明においては、特に断らない限り、処理部20が行う処理は、記憶部23またはメモリ22に格納されたプログラムおよび深層学習アルゴリズム60に基づいて、実際には処理部20のCPU21が行う処理を意味する。CPU21はメモリ22を作業領域として必要なデータ(処理途中の中間データ等)を一時記憶し、記憶部23に演算結果等の長期保存するデータを適宜記憶する。
[機能ブロックおよび処理手順]
・深層学習処理
図10を参照すると、第1の実施形態に係る深層学習装置100Aの処理部10Aは、訓練データ生成部101と、訓練データ入力部102と、アルゴリズム更新部103とを備える。これらの機能ブロックは、コンピュータに深層学習処理を実行させるプログラムを、処理部10Aの記憶部13またはメモリ12にインストールし、このプログラムをCPU11が実行することにより実現される。ウィンドウサイズデータベース104と、アルゴリズムデータベース105とは、処理部10Aの記憶部13またはメモリ12に記憶される。
学習用の標本の第1の訓練用画像70R1、第2の訓練用画像71R1、第3の訓練用画像70R2、第4の訓練用画像71R2、第5の訓練用画像70R3、第6の訓練用画像71R3は、撮像装置300によって予め撮像され、処理部10Aの記憶部13またはメモリ12に予め記憶されていることとする。ニューラルネットワーク50は、例えば解析対象の標本が由来する組織の種別(例えば組織名)と対応付けられて、アルゴリズムデータベース105に予め格納されている。
深層学習装置100Aの処理部10Aは、図11に示す処理を行う。図10に示す各機能ブロックを用いて説明すると、ステップS10からS14、S19およびS20の処理は、訓練データ生成部101が行う。ステップS15の処理は、訓練データ入力部102が行う。ステップS16からS18の処理は、アルゴリズム更新部103が行う。
以下に説明するステップS10からS20では、第1の訓練用画像70R1および第2の訓練用画像71R1の1ペアと、第3の訓練用画像70R2および第4の訓練用画像71R2の1ペアと、第5の訓練用画像70R3および第6の訓練用画像71R3の1ペアとを用いた深層学習処理を説明する。
処理部10Aは、深層学習方法の概要に記載の方法に準じて、第1の層構造訓練データ74R1、第2の層構造訓練データ74R2および第3の層構造訓練データ74R3を生成するための深層学習処理を行う。処理部10Aは、例えば、検査者の入力部16からの操作により、第1の訓練用画像70R1の領域を含む広い領域の画像(スライドイメージ70W)を、出力部17に表示する。判定を行う検査者は、出力部17に表示されたスライドイメージ70Wの画像を目視で確認する。検査者は、第1の層構造を含むと判定したスライドイメージ70W中の領域を、例えば入力部16を介して指定し、スライドイメージ70Wに例えば赤色等の実線で囲む。検査者は、第2の層構造および第3の層構造についても、同様に、スライドイメージ70W中の領域について、例えば赤色とは異なる青色、緑色等の実線で囲む。処理部10Aは、スライドイメージ70Wを出力部17に表示して検査者により判断してもらうことに代えて、判定済みのスライドイメージ70Wを、I/F部15を介して例えばネットワーク99を介して取得してもよい。
処理部10Aは、検査者の入力部16からの指定により、スライドイメージ70W中に赤色の実線で囲まれている領域から取得された第1の訓練用画像70R1を所定の画素数を含むように切り出す。同様に、第2の層構造および第3の層構造と判定された部分からも、第3の訓練用画像70R2、第5の訓練用画像70R3のそれぞれを、所定の画素数を含むように切り出す。
ステップS10において、処理部10Aは、切り出された第1の訓練用画像70R1から第1の訓練データ72R1r,72R1g,72R1bとしてR、G、B各色の色濃度符号化図72R1r,72R1g,72R1bを生成する。色濃度符号化図72R1r,72R1g,72R1bは、第1の訓練用画像70R1の各画素のR、G、B各色の色濃度値を段階的に表す符号を各画素に付すことにより生成する。本実施形態では、色濃度値を値0から値255の256階調で表して各R、G、B階調画像について色濃度符号化図72R1r,72R1g,72R1bを生成する。色濃度値の割り当ては、例えば最も低い明るさを色濃度値0とし、明るさの程度が高くなるに従い徐々に高い値を割り当ててゆき、最も高い明るさを色濃度値255とする。第3の訓練用画像70R2、第5の訓練用画像70R3のそれぞれからも、同様に第3の訓練データ72R2r,72R2g,72R2b、第5の訓練データ72R3r,72R3g,72R3bを生成する。
ステップS11において、処理部10Aは、第1の訓練用画像70R1、第3の訓練用画像70R2、第5の訓練用画像70R3がそれぞれ第1の層構造、第2の層構造、および第3の層構造であることを示す第1の予備訓練データ70R1L、第3の予備訓練データ70R2L、第5の予備訓練データ70R3Lを生成する。
具体的には、第1の訓練用画像70R1の各画素には、第1の層構造であることを示すラベル値として、例えば値「1」を付与し、第1の予備訓練データ70R1Lとする。第3の訓練用画像70R2の各画素には、第2の層構造であることを示すラベル値として、例えば値「2」を付与し、第3の予備訓練データ70R2Lとする。第5の訓練用画像70R3の各画素には、第3の層構造であることを示すラベル値として、例えば値「3」を付与し、第5の予備訓練データ70R3Lとする。
ステップS12において、処理部10Aは、検査者の入力部16からの指定により、第1の訓練用画像70R1に対応する部位について蛍光核染色画像から切り出された第2の訓練用画像71R1の各画素の階調を二値化して、学習対象の組織の核領域を示す第2の予備訓練データ71R1Nを生成する。処理部10Aは、検査者の入力部16からの指定により、第3の訓練用画像70R2に対応する部位について蛍光核染色画像から切り出された第4の訓練用画像71R2の各画素の階調を二値化して、学習対象の組織の核領域を示す第4の予備訓練データ71R2Nを生成する。処理部10Aは、検査者の入力部16からの指定により、第5の訓練用画像70R3に対応する部位について蛍光核染色画像から切り出された第6の訓練用画像71R3の各画素の階調を二値化して、学習対象の組織の核領域を示す第6の予備訓練データ71R3Nを生成する。
ステップS13aにおいて、処理部10Aは、第1の予備訓練データ70R1Lと、第2の予備訓練データ71R1Nとから、第2の訓練データ73R1を生成する。
ステップS13bにおいて、処理部10Aは、第3の予備訓練データ70R2Lと、第4の予備訓練データ71R2Nとから、第4の訓練データ73R2を生成する。
ステップS13cにおいて、処理部10Aは、第5の予備訓練データ70R3Lと、第6の予備訓練データ71R3Nとから、第6の訓練データ73R3を生成する。
ステップS14において、処理部10Aは、入力部16を通じて、深層学習装置100A側の検査者からの、学習用の組織の種別の入力を受け付ける。処理部10Aは、入力された組織の種別に基づき、ウィンドウサイズデータベース104(ウィンドウサイズDB104)を参照して、ウィンドウサイズを設定し、アルゴリズムデータベース105(アルゴリズムDB105)を参照して、学習に用いるニューラルネットワーク50を設定する。ウィンドウサイズは例えば113×113画素とする。この画素サイズは、例えば40倍で撮像された画像におけるサイズである。例示的には2つから9つ程度の複数の細胞のうち、少なくとも1つの細胞の細胞核領域の全体形状が、ウィンドウ内に含まれることをサポートするサイズである。ウィンドウサイズは、1回の入力時にニューラルネットワーク50に入力する訓練データの単位であり、ウィンドウサイズの第1の層構造訓練データ75R1の画素数と画像に含まれる色の原色の数との積が、入力層50aのノード数に対応している。ウィンドウサイズは組織の種別と対応付けられて、ウィンドウサイズデータベース104内に予め記憶されている。
ステップS15において、処理部10Aは、色濃度符号化図72R1r,72R1g,72R1bである第1の訓練データ72R1r,72R1g,72R1bおよび第2の訓練データ73R1から、ウィンドウサイズの第1の層構造訓練データ75R1を生成する。具体的には、上述の「深層学習方法の概要」において、図4(a)ないし(c)を参照して説明したように、第1の訓練データ72R1r,72R1g,72R1bおよび第2の訓練データ73R1を組み合わせた第1の層構造訓練データ74R1から、ウィンドウW1によって、ウィンドウサイズの第1の層構造訓練データ75R1を作成する。処理部10Aは、色濃度符号化図72R2r,72R2g,72R2bである第3の訓練データ72R2r,72R2g,72R2bおよび第4の訓練データ73R2から、ウィンドウサイズの第2の層構造訓練データ75R2を生成する。具体的には、上述の「深層学習方法の概要」において、図4(a)ないし(c)および図5(a)を参照して説明したように、色濃度符号化図72R2r,72R2g,72R2bである第3の訓練データ72R2r,72R2g,72R2bおよび第4の訓練データ73R2を組み合わせた第2の層構造訓練データ74R2から、ウィンドウW1によって、ウィンドウサイズの第2の層構造訓練データ75R2を作成する。処理部10Aは、色濃度符号化図72R3r,72R3g,72R3bである第5の訓練データおよび第6の訓練データ73R3から、ウィンドウサイズの第3の層構造訓練データ75R3を生成する。具体的には、上述の「深層学習方法の概要」において、図4(a)ないし(c)および図5(b)を参照して説明したように、色濃度符号化図72R3r,72R3g,72R3bである第5の訓練データおよび第6の訓練データ73R3を組み合わせた第3の層構造訓練データ74R3から、ウィンドウW1によって、ウィンドウサイズの第3の層構造訓練データ75R3を作成する。
図10に示すステップS16において、処理部10Aは、ウィンドウサイズの第1の層構造訓練データ75R1、第2の層構造訓練データ75R2および第3の層構造訓練データ75R3を用いて、ニューラルネットワーク50を学習させる。ニューラルネットワーク50の学習結果は、ウィンドウサイズの第1の層構造訓練データ75R1、第2の層構造訓練データ75R2および第3の層構造訓練データ75R3を用いてニューラルネットワーク50を学習させる度に蓄積される。
実施形態に係る画像解析方法では、畳み込みニューラルネットワークを使用しており、確率的勾配降下法を用いるため、ステップS17において、処理部10Aは、予め定められた所定の試行回数分の学習結果が蓄積されているか否かを判断する。学習結果が所定の試行回数分蓄積されている場合、処理部10AはステップS18の処理を行い、学習結果が所定の試行回数分蓄積されていない場合、処理部10AはステップS19の処理を行う。
学習結果が所定の試行回数分蓄積されている場合、ステップS18において、処理部10Aは、ステップS16において蓄積しておいた学習結果を用いて、ニューラルネットワーク50の結合重みwを更新する。実施形態に係る画像解析方法では、確率的勾配降下法を用いるため、所定の試行回数分の学習結果が蓄積した段階で、ニューラルネットワーク50の結合重みwを更新する。結合重みwを更新する処理は、具体的には、後述の(式11)および(式12)に示される、勾配降下法による計算を実施する処理である。
ステップS19において、処理部10Aは、第1の層構造訓練データ74R1、第2の層構造訓練データ74R2および第3の層構造訓練データ74R3のそれぞれについて各層構造訓練データ内の規定数の画素を処理したか否かを判断する。各層構造訓練データの規定数の画素について、ステップS16からステップS18の一連の処理がなされている場合は、深層学習処理を終了する。ニューラルネットワークの学習は、必ずしも層構造訓練データ74R1、74R2、74R3の全ての画素に対して行う必要は無く、処理部10Aは、層構造訓練データ74R1、74R2、74R3画像内の一部の画素、すなわち規定数の画素に対して処理をし学習を行うことができる。規定数の画素は、層構造訓練データ74R1、74R2、74R3内の全ての画素であってもよい。
層構造訓練データ内の規定数の画素が処理されていない場合は、処理部10Aは、ステップS20において、図4(c)に示すように、第1の層構造訓練データ74R1内、第2の層構造訓練データ74R2内または第3の層構造訓練データ74R3内において、ウィンドウの中心位置を1画素単位で移動させる。その後、処理部10Aは、移動後の新たなウィンドウ位置において、ステップS15からステップS18の一連の処理を行う。すなわち、処理部10Aは、ステップS15において、移動後の新たなウィンドウ位置において第1の層構造訓練データ74R1、第2の層構造訓練データ74R2および第3の層構造訓練データ74R3のそれぞれについてウィンドウサイズの各層構造訓練データ75R1,75R2,75R3を切り出す。引き続き、処理部10Aは、ステップS16において、新たに切り出したウィンドウサイズの各層構造訓練データ75R1,75R2,75R3を用いて、ニューラルネットワーク50を学習させる。ステップS17において、所定の試行回数分の学習結果が蓄積されている場合は、処理部10Aは、ステップS18において、ニューラルネットワーク50の結合重みwを更新する。このようなウィンドウサイズ毎のニューラルネットワーク50の学習を、第1の層構造訓練データ74R1、第2の層構造訓練データ74R2および第3の層構造訓練データ74R3のそれぞれについて規定数の画素に対して行う。
以上説明した、ステップS10からS20の深層学習処理を、さらに第1の訓練用画像70R1および第2の訓練用画像71R1の複数のペアと、第3の訓練用画像70R2および第4の訓練用画像71R2の複数のペアと、第5の訓練用画像70R3および第6の訓練用画像71R3の複数のペアに対して繰り返し行うことにより、ニューラルネットワーク50の学習の程度を向上させる。これにより、図5に示すニューラルネットワーク構造の深層学習アルゴリズム60を得る。
・ニューラルネットワークの構造
図12(a)に示すように、第1の実施形態では、深層学習タイプのニューラルネットワークを用いる。深層学習タイプのニューラルネットワークは、図12に示すニューラルネットワーク50のように、入力層50aと、出力層50bと、入力層50aおよび出力層50bの間の中間層50cとを備え、中間層50cが複数の層で構成されている。中間層50cを構成する層の数は、例えば5層以上とすることができる。
ニューラルネットワーク50では、層状に配置された複数のノード89が、層間において結合されている。これにより、情報が入力側の層50aから出力側の層50bに、図中矢印Dに示す一方向のみに伝播する。本実施形態では、入力層50aのノード数は、入力される画像の画素数すなわち図4(c)に示すウィンドウW1の画素数と各画素に含まれる色の原色の数との積に対応している。入力層50aに画像の画素データ(色濃度値)を入力することができるので、ユーザは入力画像から特徴量を別途算出することなく、入力画像を入力層50aに入力することができる。
・各ノードにおける演算
図12(b)は、各ノードにおける演算を示す模式図である。各ノード89では、複数の入力を受け取り、1つの出力(z)を計算する。図12(b)に示す例の場合、ノード89は4つの入力を受け取る。ノード89が受け取る総入力(u)は、以下の(式1)で表される。
各入力には、それぞれ異なる重みが掛けられる。(式1)中、bはバイアスと呼ばれる値である。ノードの出力(z)は、(式1)で表される総入力(u)に対する所定の関数fの出力となり、以下の(式2)で表される。関数fは活性化関数と呼ばれる。
図12(c)は、ノード間の演算を示す模式図である。ニューラルネットワーク50では、(式1)で表される総入力(u)に対して、(式2)で表される結果(z)を出力するノードが層状に並べられている。前の層のノードの出力が、次の層のノードの入力となる。図12(c)に示す例では、図中左側の層のノード89aの出力が、図中右側の層のノード89bの入力となる。右側の層の各ノード89bは、それぞれ、左側の層のノード89aからの出力を受け取る。左側の層の各ノード89aと右側の層の各ノード89bとの間の各結合には、異なる重みが掛けられる。左側の層の複数のノード89aのそれぞれの出力をx1~x4とすると、右側の層の3つのノード89bのそれぞれに対する入力は、以下の(式3-1)~(式3-3)で表される。
これら(式3-1)~(式3-3)を一般化すると、(式3-4)となる。ここで、i=1,・・・I、j=1,・・・Jである。
(式3-4)を活性化関数に適用すると出力が得られる。出力は以下の(式4)で表される。
・活性化関数
実施形態に係る画像解析方法では、活性化関数として、正規化線形関数(rectified linear unit function)を用いる。正規化線形関数は以下の(式5)で表される。
(式5)は、z=uの線形関数のうち、u<0の部分をu=0とする関数である。図12(c)に示す例では、j=1のノードの出力は、(式5)により、以下の式で表される。
ニューラルネットワークを用いて表現される関数をy(x:w)とおくと、関数y(x:w)は、ニューラルネットワークのパラメータwを変化させると変化する。入力xに対してニューラルネットワークがより好適なパラメータwを選択するように、関数y(x:w)を調整することを、ニューラルネットワークの学習と呼ぶ。ニューラルネットワークを用いて表現される関数の入力と出力との組が複数与えられているとする。ある入力xに対する望ましい出力をdとすると、入出力の組は、{(x1,d1),(x2,d2),・・・,(xn,dn)}と与えられる。(x,d)で表される各組の集合を、訓練データと呼ぶ。具体的には、図3(b)に示す、R、G、B各色の単一色画像における画素毎の色濃度値と真値像のラベルとの組、の集合が、図3(a)に示す訓練データである。
ニューラルネットワークの学習とは、どのような入出力の組(xn,dn)に対しても、入力xnを与えたときのニューラルネットワークの出力y(xn:w)が、出力dnになるべく近づくように重みwを調整することを意味する。
誤差関数(error function)とは、ニューラルネットワークを用いて表現される関数と訓練データとの近さを測る尺度である。誤差関数は損失関数(loss function)とも呼ばれる。実施形態に係る画像解析方法において用いる誤差関数E(w)は、以下の(式6)で表される。(式6)は交差エントロピー(cross entropy)と呼ばれる。
(式6)の交差エントロピーの算出方法を説明する。実施形態に係る画像解析方法において用いるニューラルネットワーク50の出力層50bでは、すなわちニューラルネットワークの最終層では、入力xを内容に応じて有限個のクラスに分類するための活性化関数を用いる。活性化関数はソフトマックス関数(softmax function)と呼ばれ、以下の(式7)で表される。なお、出力層50bには、クラス数kと同数のノードが並べられているとする。出力層Lの各ノードk(k=1,・・・K)の総入力uは、前層L-1の出力から、uk
(L)で与えられるとする。これにより、出力層のk番目のノードの出力は以下の(式7)で表される。
(式7)がソフトマックス関数である。(式7)で決まる出力y1,・・・,yKの総和は常に1となる。
各クラスをC1,・・・,CKと表すと、出力層Lのノードkの出力yk(すなわちuk
(L))は、与えられた入力xがクラスCkに属する確率を表す。以下の(式8)を参照されたい。入力xは、(式8)で表される確率が最大になるクラスに分類される。
ニューラルネットワークの学習では、ニューラルネットワークで表される関数を、各クラスの事後確率(posterior probability)のモデルとみなし、そのような確率モデルの下で、訓練データに対する重みwの尤度(likelihood)を評価し、尤度を最大化するような重みwを選択する。
(式7)のソフトマックス関数による目標出力dnを、出力が正解のクラスである場合のみ1とし、出力がそれ以外の場合は0になるとする。目標出力をdn=[dn1,・・・,dnK]というベクトル形式で表すと、例えば入力xnの正解クラスがC3である場合、目標出力dn3のみが1となり、それ以外の目標出力は0となる。このように符号化すると、事後分布(posterior)は以下の(式9)で表される。
訓練データ{(xn,dn)}(n=1,・・・,N)に対する重みwの尤度L(w)は、以下の(式10)で表される。尤度L(w)の対数をとり符号を反転すると、(式6)の誤差関数が導出される。
学習は、訓練データを基に計算される誤差関数E(w)を、ニューラルネットワークのパラメータwについて最小化することを意味する。実施形態に係る画像解析方法では、誤差関数E(w)は(式6)で表される。
誤差関数E(w)をパラメータwについて最小化することは、関数E(w)の局所的な極小点を求めることと同じ意味である。パラメータwはノード間の結合の重みである。重みwの極小点は、任意の初期値を出発点として、パラメータwを繰り返し更新する反復計算によって求められる。このような計算の一例には、勾配降下法(gradient descent method)がある。
勾配降下法では、次の(式11)で表されるベクトルを用いる。
勾配降下法では、現在のパラメータwの値を負の勾配方向(すなわち-∇E)に移動させる処理を何度も繰り返す。現在の重みをw(t)とし、移動後の重みをw(t+1)とすると、勾配降下法による演算は、以下の(式12)で表される。値tは、パラメータwを移動させた回数を意味する。
記号
は、パラメータwの更新量の大きさを決める定数であり、学習係数と呼ばれる。(式12)で表される演算を繰り返すことにより、値tの増加に伴って誤差関数E(w
(t))が減少し、パラメータwは極小点に到達する。
なお、(式12)による演算は、全ての訓練データ(n=1,・・・,N)に対して実施してもよく、一部の訓練データのみに対して実施してもよい。一部の訓練データのみに対して行う勾配降下法は、確率的勾配降下法(stochastic gradient descent)と呼ばれる。実施形態に係る画像解析方法では、確率的勾配降下法を用いる。
・画像解析処理
図13を参照すると、第1の実施形態に係る画像解析装置200Aの処理部20Aは、解析用データ生成部201と、解析用データ入力部202と、解析部203と、核領域検出部204とを備える。これらの機能ブロックは、本発明に係るコンピュータに画像解析処理を実行させるプログラムを、処理部20Aの記憶部23またはメモリ22にインストールし、このプログラムをCPU21が実行することにより実現される。ウィンドウサイズデータベース104と、アルゴリズムデータベース105とは、記憶媒体98またはネットワーク99を通じて深層学習装置100Aから提供され、処理部20Aの記憶部23またはメモリ22に記憶される。
解析対象の組織の解析対象画像78は、撮像装置400によって予め撮像され、処理部20Aの記憶部23またはメモリ22に予め記憶されていることとする。学習済みの結合重みwを含む深層学習アルゴリズム60は、解析対象の組織の標本が由来する組織の種類と対応付けられてアルゴリズムデータベース105に格納されており、コンピュータに画像解析処理を実行させるプログラムの一部であるプログラムモジュールとして機能する。すなわち、深層学習アルゴリズム60は、CPUおよびメモリを備えるコンピュータにて用いられ、解析対象の組織において層構造を示すデータを出力するという、使用目的に応じた特有の情報の演算または加工を実行するよう、コンピュータを機能させる。具体的には、処理部20AのCPU21は、記憶部23またはメモリ22に記憶された深層学習アルゴリズム60に規定されているアルゴリズムに従って、学習済みの結合重みwに基づくニューラルネットワーク60の演算を行う。処理部20AのCPU21は、入力層60aに入力された、解析対象の組織を撮像した解析対象画像78に対して演算を行い、出力層60bから、解析対象の組織において層構造を示すデータであるラベル値83を出力する。
図14を参照すると、画像解析装置200Aの処理部20Aは、図13に示す処理を行う。図13に示す各機能ブロックを用いて説明すると、ステップS21およびS22の処理は、解析用データ生成部201が行う。ステップS23,S24,S26およびS27の処理は、解析用データ入力部202が行う。ステップS25およびS28の処理は、解析部203が行う。ステップS29の処理は、核領域検出部204が行う。
ステップS21において、処理部20Aは、例えば、ユーザが入力部26から入力した処理開始の指令により、入力された解析対象画像78からR、G、B各色の色濃度符号化図79r,79g,79bを生成する。色濃度符号化図79r,79g,79bが解析対象データとなる。色濃度符号化図79r,79g,79bの生成方法は、図11に示す深層学習処理時におけるステップS10での生成方法と同様である。
図14に示すステップS22において、処理部20Aは、入力部26を通じて、解析条件として、画像解析装置200A側のユーザからの、組織の種別の入力を受け付ける。処理部20Aは、入力された組織の種別に基づき、ウィンドウサイズデータベース104およびアルゴリズムデータベース105を参照して、解析に用いるウィンドウサイズを設定し、解析に用いる深層学習アルゴリズム60を取得する。ウィンドウサイズは、1回の入力時にニューラルネットワーク60に入力する解析用データの単位であり、ウィンドウサイズの解析用データ80の画素数と画像に含まれる色の原色の数との積が、入力層60aのノード数に対応している。ウィンドウサイズは組織の種別と対応付けられて、ウィンドウサイズデータベース104内に予め記憶されている。ウィンドウサイズは、図6に示すウィンドウW2のように、例えば3×3画素である。深層学習アルゴリズム60も、組織の種別と対応付けられて、図13に示すアルゴリズムデータベース105内に予め記憶されている。
図14に示すステップS23において、処理部20Aは、色濃度符号化図79r,79g,79bから、ウィンドウサイズの解析用データ80を生成する。
ステップS24において、処理部20Aは、図5に示す解析用データ80を、深層学習アルゴリズム60に入力する。ウィンドウの初期位置は、深層学習処理時におけるステップS16と同様に、例えばウィンドウ内の3×3画素の中心に位置する画素が、解析対象画像の左上角に対応する位置である。処理部20Aは、ウィンドウサイズの解析用データ80に含まれる、3×3画素×3原色の合計27個の色濃度値のデータ81を入力層60aに入力すると、深層学習アルゴリズム60は、出力層60bに判別結果82を出力する。
図14に示すステップS25において、処理部20Aは、図5に示す出力層60bに出力される判別結果82を記憶する。判別結果82は、解析対象である、色濃度符号化図79r,79g,79bの中心に位置する画素の推定値(4値)である。
図14に示すステップS26において、処理部20Aは、解析対象データ内の全ての画素を処理したか否かを判断する。そして、解析対象データ内の全ての画素について、図14に示すステップS23からステップS25の一連の処理がなされている場合は、ステップS28の処理を行う。
解析対象データ内の全ての画素が処理されていない場合は、処理部20Aは、ステップS27において、深層学習処理時におけるステップS20と同様に、解析対象データ内において、ウィンドウW2の中心位置を1画素単位で移動させる。その後、処理部20Aは、移動後の新たなウィンドウW2の位置において、ステップS23からステップS25の一連の処理を行う。処理部20Aは、ステップS25において、移動後の新たなウィンドウ位置に対応する、判別結果82を記憶する。このようなウィンドウサイズ毎の判別結果82の記憶を、解析対象画像内の全ての画素に対して行うことにより、解析結果のラベル値83が得られる。解析結果のラベル値83の画像サイズは、解析対象画像の画像サイズと同じである。ここで、ラベル値83には、推定値の値3、値2、値1および値0が各画素に付された数値データであってもよく、推定値の値3、値2、値1および値0に代えて、例えば値3、値2、値1および値0のそれぞれに対応付けた表示色で示した画像であっても良い。
図14に示すステップS28では、処理部20Aは、解析結果のラベル値83を出力部27に出力する。
ステップS29では、ステップS28に引き続き、処理部20Aは、解析結果のラベル値83についてさらに、核領域検出処理を行う。ラベル値83において、第1の層構造の細胞の核領域と、第2の層構造の細胞の核領域と、第3の層構造の細胞の核領域と、核領域以外の領域とは、4値で区別して表されている。
任意ではあるが、処理部20Aは、得られたラベル値83をラベル値に応じた色で表示した層構造核領域強調画像84を作成してもよい。処理部20Aは、作成した層構造核領域強調画像84を出力部27に出力し、画像解析処理を終了する。
図19は、画像処理結果を表示するユーザインタフェース(出力部27への表示)の例である。表示画面700は、解析対象画像78上に各層の境界を標示する表示領域701と、各層の厚さを示す層構造表示領域702と、疾患のグレード(例えばシドニー分類による胃炎のグレード)を表示する疾患グレード表示領域703を備える。このようにすることで、解析から結果表示までを、病理医の目によらずに行うことができる。
疾患のグレードを表示する場合には、図20に示すように、処理部20Aは、各層構造の細胞の核領域の分布に基づいて、各層構造の厚さを算出する(ステップS41)。続いて、処理部20Aは、記憶部23に記憶された各層構造の厚さの基準値と、ステップS41で算出された各層構造の厚さと比較する(ステップS42)。処理部20Aは、記憶部23に記憶された各層構造の厚さの基準値に対応付けられた疾患のグレード(胃炎のシドニー分類であれば、正常、軽度、中等度、高度)から、解析対象画像78に含まれる組織の疾患グレードを判定する(ステップS43)。
以上、画像解析装置200Aのユーザは、解析対象の組織の解析対象画像78を画像解析装置200Aに入力することにより、解析結果として、ラベル値83を取得することができる。ラベル値83は、解析対象の標本における、第1の層構造の細胞の核領域と、第2の層構造の細胞の核領域と、第3の層構造の細胞の核領域と、核領域以外の領域とを表しており、ユーザは、解析対象の標本において、各層構造の核領域を判別することが可能となる。
さらに、画像解析装置200Aのユーザは、解析結果として、層構造核領域強調画像84を取得することができる。層構造核領域強調画像84は、例えば、解析対象の解析対象画像78に、核領域を色で塗りつぶすことにより生成される。また、別の態様では、各層構造の核領域とそれ以外の領域との境界線を重ねることにより生成されている。これにより、ユーザは、解析対象の組織において、各層構造の核領域を一目で把握することが可能となり、層構造を一目で把握することが可能となる。
解析対象の標本において組織を構成する層構造を示すことは、標本を見慣れていない者に各層構造を把握させる一助となる。
<第2の実施形態>
以下、第1の実施形態に係る画像解析システムと相違する点について、第2の実施形態に係る画像解析システムを説明する。
[構成の概要]
図15を参照すると、第2の実施形態に係る画像解析システムは、ユーザ側装置200を備え、ユーザ側装置200が、統合型の画像解析装置200Bとして動作する。画像解析装置200Bは、例えば汎用コンピュータで構成されており、第1の実施形態において説明した深層学習処理および画像解析処理の両方の処理を行う。つまり、第2の実施形態に係る画像解析システムは、ユーザ側で深層学習および画像解析を行う、スタンドアロン型のシステムである。第2の実施形態に係る画像解析システムは、ユーザ側に設置された統合型の画像解析装置200Bが、第1の実施形態に係る深層学習装置100Aおよび画像解析装置200Aの両方の機能を担う点において、第1の実施形態に係る画像解析システムと異なる。
画像解析装置200Bは撮像装置400に接続されている。撮像装置400は、深層学習処理時には、学習用の組織の訓練用画像を取得し、画像解析処理時には、解析対象の組織の解析対象画像78を取得する。
[ハードウェア構成]
画像解析装置200Bのハードウェア構成は、図9に示すユーザ側装置200のハードウェア構成と同様である。
[機能ブロックおよび処理手順]
図16を参照すると、第2の実施形態に係る画像解析装置200Bの処理部20Bは、訓練データ生成部101と、訓練データ入力部102と、アルゴリズム更新部103と、解析用データ生成部201と、解析用データ入力部202と、解析部203と、核領域検出部204とを備える。これらの機能ブロックは、コンピュータに深層学習処理および画像解析処理を実行させるプログラムを、処理部20Bの記憶部23またはメモリ22にインストールし、このプログラムをCPU21が実行することにより実現される。ウィンドウサイズデータベース104と、アルゴリズムデータベース105とは、処理部20Bの記憶部23またはメモリ22に記憶され、どちらも深層学習時および画像解析処理時に共通して使用される。学習済みのニューラルネットワーク60は、組織の種別または細胞を含む試料の種別と対応付けられて、アルゴリズムデータベース105に予め格納されており、深層学習処理により結合重みwが更新されて、深層学習アルゴリズム60として、アルゴリズムデータベース105に格納される。なお、訓練用画像である第1の訓練用画像70R1、第2の訓練用画像71R1、第3の訓練用画像70R2、第4の訓練用画像71R2、第5の訓練用画像70R3、第6の訓練用画像71R3は、撮像装置400によって予め撮像され、処理部20Bの記憶部23またはメモリ22に予め記載されていることとする。解析対象の標本の解析対象画像78も、撮像装置400によって予め撮像され、処理部20Bの記憶部23またはメモリ22に予め記憶されていることとする。
画像解析装置200Bの処理部20Bは、深層学習処理時には、図11に示す処理を行い、画像解析処理時には、図14に示す処理を行う。図16に示す各機能ブロックを用いて説明すると、深層学習処理時には、ステップS10からS14、S19およびS20の処理は、訓練データ生成部101が行う。ステップS15の処理は、訓練データ入力部102が行う。ステップS16からS18の処理は、アルゴリズム更新部103が行う。画像解析処理時には、ステップS21およびS22の処理は、解析用データ生成部201が行う。ステップS23,S24,S26およびS27の処理は、解析用データ入力部202が行う。ステップS25およびS28の処理は、解析部203が行う。ステップS29の処理は、核領域検出部204が行う。
第2の実施形態に係る画像解析装置200Bが行う深層学習処理の手順および画像解析処理の手順は、第1の実施形態に係る深層学習装置100Aおよび画像解析装置200Aがそれぞれ行う手順と同様である。なお、第2の実施形態に係る画像解析装置200Bは、次の点において第1の実施形態に係る深層学習装置100Aおよび画像解析装置200Aと異なる。
深層学習処理時のステップS14において、処理部20Bは、入力部26を通じて、画像解析装置200Bのユーザからの、学習用の組織の種別の入力を受け付ける。処理部20Bは、入力された組織の種別に基づき、ウィンドウサイズデータベース104を参照して、ウィンドウサイズを設定し、アルゴリズムデータベース105を参照して、学習に用いるニューラルネットワーク50を設定する。
以上、画像解析装置200Bのユーザは、解析対象画像78を画像解析装置200Bに入力することにより、解析結果として、ラベル値83を取得することができる。さらに、画像解析装置200Bのユーザは、解析結果として、層構造核領域強調画像84を取得することができる。
第2の実施形態に係る画像解析装置200Bによると、ユーザは、自身が選択した種類の組織を、学習用の組織として用いることができる。これは、ニューラルネットワーク50の学習がベンダ側任せではなく、ユーザ自身がニューラルネットワーク50の学習の程度を向上できることを意味する。
<第3の実施形態>
以下、第2の実施形態に係る画像解析システムと相違する点について、第3の実施形態に係る画像解析システムを説明する。
[構成の概要]
図17を参照すると、第3の実施形態に係る画像解析システムは、ベンダ側装置100と、ユーザ側装置200とを備える。ベンダ側装置100は統合型の画像解析装置100Bとして動作し、ユーザ側装置200は端末装置200Cとして動作する。画像解析装置100Bは、例えば汎用コンピュータで構成されており、第1の実施形態において説明した深層学習処理および画像解析処理の両方の処理を行う、クラウドサーバ側の装置である。端末装置200Cは、例えば汎用コンピュータで構成されており、ネットワーク99を通じて、解析対象の画像を画像解析装置100Bに送信し、ネットワーク99を通じて、解析結果の画像を画像解析装置100Bから受信する、ユーザ側の端末装置である。
第3の実施形態に係る画像解析システムは、ベンダ側に設置された統合型の画像解析装置100Bが、第1の実施形態に係る深層学習装置100Aおよび画像解析装置200Aの両方の機能を担う点において、第2の実施形態に係る画像解析システムと同様である。一方、第3の実施形態に係る画像解析システムは、端末装置200Cを備え、解析対象の画像の入力インタフェースと、解析結果の画像の出力インタフェースとをユーザ側の端末装置200Cに提供する点において、第2の実施形態に係る画像解析システムと異なる。つまり、第3の実施形態に係る画像解析システムは、深層学習処理および画像解析処理を行うベンダ側が、解析対象の画像および解析結果の画像の入出力インタフェースをユーザ側に提供する、クラウドサービス型のシステムである。
画像解析装置100Bは撮像装置300に接続されており、撮像装置300によって撮像される、学習用の組織の訓練用画像を取得する。
端末装置200Cは撮像装置400に接続されており、撮像装置400によって撮像される、解析対象の組織の解析対象画像78を取得する。
[ハードウェア構成]
画像解析装置100Bのハードウェア構成は、図7に示すベンダ側装置100のハードウェア構成と同様である。端末装置200Cのハードウェア構成は、図9に示すユーザ側装置200のハードウェア構成と同様である。
[機能ブロックおよび処理手順]
図18を参照すると、第3の実施形態に係る画像解析装置100Bの処理部10Bは、訓練データ生成部101と、訓練データ入力部102と、アルゴリズム更新部103と、解析用データ生成部201と、解析用データ入力部202と、解析部203と、核領域検出部204とを備える。これらの機能ブロックは、コンピュータに深層学習処理および画像解析処理を実行させるプログラムを、処理部10Bの記憶部13またはメモリ12にインストールし、このプログラムをCPU11が実行することにより実現される。ウィンドウサイズデータベース104と、アルゴリズムデータベース105とは、処理部10Bの記憶部13またはメモリ12に記憶され、どちらも深層学習時および画像解析処理時に共通して使用される。ニューラルネットワーク50は、組織の種別と対応付けられて、アルゴリズムデータベース105に予め格納されており、深層学習処理により結合重みwが更新されて、深層学習アルゴリズム60として、アルゴリズムデータベース105に格納される。
なお、訓練用画像である第1の訓練用画像70R1、第2の訓練用画像71R1、第3の訓練用画像70R2、第4の訓練用画像71R2、第5の訓練用画像70R3、第6の訓練用画像71R3は、撮像装置300によって予め撮像され、処理部10Bの記憶部13またはメモリ12に予め記載されていることとする。解析対象の組織の解析対象画像78も、撮像装置400によって予め撮像され、端末装置200Cの処理部20Cの記憶部23またはメモリ22に予め記憶されていることとする。
画像解析装置100Bの処理部10Bは、深層学習処理時には、図11に示す処理を行い、画像解析処理時には、図14に示す処理を行う。図18に示す各機能ブロックを用いて説明すると、深層学習処理時には、ステップS10からS14、S19およびS20の処理は、訓練データ生成部101が行う。ステップS15の処理は、訓練データ入力部102が行う。ステップS16からS18の処理は、アルゴリズム更新部103が行う。画像解析処理時には、ステップS21およびS22の処理は、解析用データ生成部201が行う。ステップS23,S24,S26およびS27の処理は、解析用データ入力部202が行う。ステップS25およびS28の処理は、解析部203が行う。ステップS29の処理は、核領域検出部204が行う。
第3の実施形態に係る画像解析装置100Bが行う深層学習処理の手順および画像解析処理の手順は、第1の実施形態に係る深層学習装置100Aおよび画像解析装置200Aがそれぞれ行う手順と同様である。なお、第3の実施形態に係る画像解析装置100Bは、次の4つの点において第1の実施形態に係る深層学習装置100Aおよび画像解析装置200Aと異なる。
図14に示す画像解析処理時のステップS21において、処理部10Bは、解析対象の組織の解析対象画像78を、ユーザ側の端末装置200Cから受信し、受信した解析対象画像78からR、G、B各色の色濃度符号化図79r,79g,79bを生成する。色濃度符号化図79r,79g,79bの生成方法は、図11に示す深層学習処理時におけるステップS10での生成方法と同様である。
図14に示す画像解析処理時のステップS22において、処理部10Bは、端末装置200Cの入力部26を通じて、解析条件として、端末装置200Cのユーザからの、組織の種別の入力を受け付ける。処理部10Bは、入力された組織の種別に基づき、ウィンドウサイズデータベース104およびアルゴリズムデータベース105を参照して、解析に用いるウィンドウサイズを設定し、解析に用いる深層学習アルゴリズム60を取得する。
画像解析処理時のステップS28において、処理部10Bは、解析結果のラベル値83を、ユーザ側の端末装置200Cに送信する。ユーザ側の端末装置200Cでは、処理部20Cが、受信した解析結果のラベル値83を出力部27に出力する。
画像解析処理時のステップS29において、処理部10Bは、ステップS28に引き続き、解析結果のラベル値83についてさらに、核領域の検出処理を行う。任意のステップとして、処理部10Bは、ラベル値83をラベル値に応じた色で表示した層構造核領域強調画像84を作成してもよい。処理部10Bは、作成した層構造核領域強調画像84を、ユーザ側の端末装置200Cに送信する。ユーザ側の端末装置200Cでは、処理部20Cが、受信した層構造核領域強調画像84を出力部27に出力し、画像解析処理を終了する。
以上、端末装置200Cのユーザは、解析対象の組織の解析対象画像78を画像解析装置100Bに送信することにより、解析結果として、ラベル値83を取得することができる。さらに、端末装置200Cのユーザは、解析結果として、層構造核領域強調画像84を取得することができる。
第3の実施形態に係る画像解析装置100Bによると、ユーザは、ウィンドウサイズデータベース104およびアルゴリズムデータベース105を深層学習装置100Aから取得することなく、画像解析処理の結果を享受することができる。これにより、解析対象の組織を解析するサービスとして、各層構造の核領域を判別し各組織における各層構造を提示するサービスを、クラウドサービスとして提供することができる。
病理医の数は全国的に不足している。病理医は、都市部の大病院には在籍しているが、遠隔地の医療機関や、都市部であってもクリニック等の比較的小規模な医療機関には在籍していないケースが殆どである。画像解析装置100Bおよび端末装置200Cにて提供されるクラウドサービスは、このような遠隔地または比較的小規模な医療機関における組織診断の手助けとなる。
[コンピュータプログラム]
本発明の実施形態には、前記ステップS10からS20を処理部10A,20B,10Bに実行させ、学習済み深層学習アルゴリズムの生成するコンピュータプログラムおよびその製品が含まれる。また、本発明の実施形態には、前記ステップS21からS29を処理部10A,20B,10Bに実行させ、コンピュータを被検体から採取された組織の画像を解析するために機能させるコンピュータプログラムおよびその製品が含まれる。
[その他の形態]
以上、本発明を概要および特定の実施形態によって説明したが、本発明は上記した概要および各実施形態に限定されるものではない。
上記第1から第3の実施形態では、ステップS14において、処理部10A,20B,10Bは、ウィンドウサイズデータベース104を参照して、ウィンドウサイズの画素数を設定しているが、オペレータまたはユーザがウィンドウサイズを直接設定してもよい。この場合、ウィンドウサイズデータベース104は不要となる。
上記第1から第3の実施形態では、ステップS14において、処理部10A,20B,10Bは、入力された組織の種別に基づいて、ウィンドウサイズの画素数を設定しているが、組織の種別の入力に代えて、組織のサイズを入力してもよい。処理部10A,20B,10Bは、入力された組織のサイズに基づいて、ウィンドウサイズデータベース104を参照して、ウィンドウサイズの画素数を設定すればよい。ステップS22においてもステップS14と同様に、組織の種別の入力に代えて、組織のサイズを入力してもよい。処理部20A,20B,10Bは、入力された組織のサイズに基づいて、ウィンドウサイズデータベース104およびアルゴリズムデータベース105を参照して、ウィンドウサイズの画素数を設定し、ニューラルネットワーク60を取得すればよい。
組織のサイズを入力する態様については、サイズを数値として直接入力してもよいし、例えば入力のユーザインタフェースをプルダウンメニューとして、ユーザが入力しようとするサイズに対応する、所定の数値範囲をユーザに選択させて入力してもよい。
また、ステップS14およびステップS22において、組織の種別または組織のサイズに加えて、訓練用画像、および解析対象画像78を撮像した際の撮像倍率を入力してもよい。撮像倍率を入力する態様については、倍率を数値として直接入力してもよいし、例えば入力のユーザインタフェースをプルダウンメニューとして、ユーザが入力しようとする倍率に対応する、所定の数値範囲をユーザに選択させて入力してもよい。
上記第1から第3の実施形態では、深層学習処理時および画像解析処理時において、説明の便宜のためにウィンドウサイズを3×3画素と設定しているが、ウィンドウサイズの画素数はこれに限定されない。ウィンドウサイズは、例えば組織の種別に応じて設定してもよい。この場合、ウィンドウサイズの画素数と画像に含まれる色の原色の数との積が、ニューラルネットワーク50,60の入力層50a,60aのノード数に対応していればよい。
ステップS14において、処理部10A,20B,10Bは、ウィンドウサイズの画素数を取得し、さらに、取得したウィンドウサイズの画素数を、入力された撮像倍率に基づいて補正してもよい。
上記第1から第3の実施形態では、ステップS18において、処理部10A,20B,10Bは、深層学習アルゴリズム60を、組織の種別と一対一に対応付けて、アルゴリズムデータベース105に記憶している。これに代えて、ステップS18において、処理部10A,20B,10Bは、1つの深層学習アルゴリズム60に、複数の組織の種別を対応付けて、アルゴリズムデータベース105に記憶してもよい。
上記第1から第3の実施形態では、色相は、光の3原色の組み合わせ、または色の3原色の組み合わせで規定されているが、色相の数は3つに限定されない。色相の数は、赤(R),緑(G),青(B)に黄(Y)を加えた4原色としても良いし、赤(R),緑(G),青(B)の3原色からいずれか1つの色相を減らした2原色としてもよい。あるいは、赤(R),緑(G),青(B)の3原色のいずれか1つ(例えば緑(G))のみの1原色としてもよい。例えば公知の顕微鏡またはバーチャルスライドスキャナ等を用いて取得される明視野画像70R1,70R2,70R3および解析対象画像78も、赤(R),緑(G),青(B)の3原色のカラー画像に限定されず、2原色のカラー画像であってもよく、1以上の原色を含む画像であればよい。
上記第1から第3の実施形態では、ステップS10において、処理部10A,20B,10Bは、訓練用画像の各色濃度符号化図(色濃度符号化図70R1r,70R1g,70R1b、色濃度符号化図70R2r,70R2g,70R2b、色濃度符号化図70R3r,70R3g,70R3b)を各原色の8ビット(256段階)の単一色画像として生成しているが、各色濃度符号化図を作成する際の原色の階調は、8ビットに制限されない。各色濃度符号化図の階調は、スライドイメージスキャナーの撮像条件に依存してもよい。例えば、1ビット以上であり2ビット、4ビット、16ビット、24ビットの画像であってもよい。同様に、ステップS21において、処理部20A,20B,10Bは、色濃度符号化図79r,79g,79b原色ごとの単一色画像として生成しているが、色濃度符号化図を作成する際の原色の階調は3階調に制限されない。色濃度符号化図を作成する際の原色は、8ビットに制限されない。色濃度符号化図79r,79g,79bの階調は、スライドイメージスキャナーの撮像条件に依存してもよい。例えば、1ビット以上であり2ビット、4ビット、16ビット、24ビットの画像であってもよい。訓練用画像の各色濃度符号化図および色濃度符号化図79r,79g,79bの階調は、全てが同じ階調であることが好ましい。
上記第1から第3の実施形態では、ステップS10において、処理部10A,20B,10Bは、訓練用画像から、各色濃度符号化図を生成しているが、予め各画素が階調に応じて符号化された行列表を訓練用画像として用いてもよい。処理部10A,20B,10Bは、訓練用画像を各色濃度符号化図として、例えばバーチャルスライドスキャナ等から直接取得してもよい。同様に、ステップS21において、処理部20A,20B,10Bは、解析対象画像78からR、G、B各色の色濃度符号化図79r,79g,79bを生成しているが、予め各画素が階調に応じて符号化された行列表を解析用画像として用いてもよい。すなわち、処理部20A,20B,10Bは、色濃度符号化図79r,79g,79bを、例えばバーチャルスライドスキャナ等から直接取得してもよい。
上記第1から第3の実施形態では、訓練用画像から各色濃度符号化図を生成する際のカラースペースにはRGBを用いているが、カラースペースはRGBに制限されない。RGB以外にも、YUV、CMY、およびCIE L*a*b*等の種々のカラースペースを用いることができる。
上記第1から第3の実施形態では、層構造訓練データおよび解析用データ80において、各画素について濃度値が赤(R),緑(G),青(B)の順番で格納されているが、濃度値を格納および取り扱う順番はこれに限定されない。例えば濃度値は、青(B),緑(G),赤(R)の順番で格納されていてもよく、各層構造訓練データにおける濃度値の並び順と、解析用データ80における濃度値の並び順とが同じであればよい。
上記第1から第3の実施形態では、ステップS12において、処理部10A,20B,10Bは、入力された第2の訓練用画像71R1、第4の訓練用画像71R2および第6の訓練用画像71R3の各画素の階調を二値化して第2の予備訓練データ71R1N、第4の予備訓練データ71R2Nおよび第6の予備訓練データ71R3Nを生成しているが、予め二値化された第2の予備訓練データ71R1N、第4の予備訓練データ71R2Nおよび第6の予備訓練データ71R3Nを取得してもよい。
上記第1から第3の実施形態では、処理部10A,10Bは一体の装置として実現されているが、処理部10A,10Bは一体の装置である必要はなく、CPU11、メモリ12、記憶部13等が別所に配置され、これらがネットワークで接続されていてもよい。処理部10A,10Bと、入力部16と、出力部17とについても、一ヶ所に配置される必要は必ずしもなく、それぞれ別所に配置されて互いにネットワークで通信可能に接続されていてもよい。処理部20A,20B,20Cについても処理部10A,10Bと同様である。
上記第1から第3の実施形態では、訓練データ生成部101、訓練データ入力部102、アルゴリズム更新部103、解析用データ生成部201、解析用データ入力部202、解析部203および核領域検出部204の各機能ブロックは、単一のCPU11または単一のCPU21において実行されているが、これら各機能ブロックは単一のCPUにおいて実行される必要は必ずしもなく、複数のCPUで分散して実行されてもよい。また、これら各機能ブロックは、複数のGPUで分散して実行されてもよいし、複数のCPUと複数のGPUとで分散して実行されてもよい。
上記第2および第3の実施形態では、図11および図14で説明する各ステップの処理を行うためのプログラムを記憶部13,23に予め記憶している。これに代えて、プログラムは、例えばDVD-ROMやUSBメモリ等の、コンピュータ読み取り可能であって非一時的な有形の記憶媒体98から処理部10B,20Bにインストールしてもよい。または、処理部10B,20Bをネットワーク99と接続し、ネットワーク99を介して例えば外部のサーバ(図示せず)からプログラムをダウンロードしてインストールしてもよい。
上記第1から第3の実施形態では、入力部16,26はキーボードまたはマウス等の入力装置であり、出力部17,27は液晶ディスプレイ等の表示装置として実現されている。これに代えて、入力部16、26と出力部17、27とを一体化してタッチパネル式の表示装置として実現してもよい。または、出力部17,27をプリンター等で構成し、解析結果のラベル値83または層構造核領域強調画像84を印刷して出力してもよい。
上記第1から第3の実施形態では、撮像装置300は、深層学習装置100Aまたは画像解析装置100Bと直接接続されているが、撮像装置300は、ネットワーク99を介して深層学習装置100Aまたは画像解析装置100Bと接続されていてもよい。撮像装置400についても同様に、撮像装置400は、画像解析装置200Aまたは画像解析装置200Bと直接接続されているが、撮像装置400は、ネットワーク99を介して画像解析装置200Aまたは画像解析装置200Bと接続されていてもよい。
<学習済み深層学習アルゴリズムの検証>
上記第2の実施形態に示すスタンドアロン型のシステムにて、深層学習処理および画像解析処理を行った。学習の対象とする組織として、サルの胃から取得された正常の胃組織を用いた。学習済みの深層学習アルゴリズムを用いた画像解析処理を行い、解析結果が適切であることを確認した。
学習データおよび解析データの詳細は、次の通りであった。
学習データ:ホールスライドイメージを512分割した画像12枚
検証用解析データ:ホールスライドイメージを512分割した画像2枚
[訓練データの作成および学習]
HE染色した胃の明視野画像およびDAPI染色のホールスライドイメージ(WSI)を、バーチャルスライドスキャナ(NanoZoomer-XR(Hamamatsu Photonics;スキャン分解能:20倍モードスキャン時0.46 μm/pixel、40倍モードスキャン時0.23 μm/pixel))を用いてカラー撮像した。撮像倍率は40倍であった。学習対象の組織を含む明視野画像の領域を含むホールスライドイメージから、第1の層構造(粘膜上皮細胞層)、第2の層構造(粘膜下層)、第3の層構造(筋層)のそれぞれの領域について、第1の訓練用画像70R1、第3の訓練用画像70R2および第5の訓練用画像を切り出した。各層構造の明視野画像をもとにR、G、B各色の色濃度値を8ビットで階調化して、R、G、B各色の色濃度符号化図を生成した。また、各層構造を区別するラベル値(第1の層構造は「1」、第2の層構造は「2」、第3の層構造は「3」)を付与し、第1の予備訓練データ70R1L、第3の予備訓練データ70R2Lおよび第5の予備訓練データ70R3Lを生成した。
また、DAPI染色した蛍光画像から、第1の訓練用画像70R1、第3の訓練用画像70R2および第5の訓練用画像70R3に対応する位置の画像を第2の訓練用画像71R1、第4の訓練用画像71R2および第6の訓練用画像71R3を切り出した。第2の訓練用画像71R1、第4の訓練用画像71R2および第6の訓練用画像71R3について予め設定していたしきい値を用いて色濃度値を細胞核の領域とそれ以外の領域とに二値化して、第2の予備訓練データ71R1N、第4の予備訓練データ71R2Nおよび第6の予備訓練データ71R3Nを作成した。第1の予備訓練データ70R1Lおよび第2の予備訓練データ71R1Nと、第3の予備訓練データ70R2Lおよび第4の予備訓練データ71R2Nと、第5の予備訓練データ70R3Lおよび第6の予備訓練データ71R3Nとのそれぞれから第2の訓練データ73R2、第4の訓練データ73R2、第6の訓練データ73R3を生成した。
その後、第1の訓練データ72R1r,72R1g,72R1bと第2の訓練データ73R2とを組み合わせて第1の層構造訓練データを作成した。第3の訓練データ72R2r,72R2g,72R2bと第4の訓練データ73R2とを組み合わせて第2の層構造訓練データを作成した。第5の訓練データ72R3r,72R3g,72R3bと第6の訓練データ73R3とを組み合わせて第3の層構造訓練データを作成した。作成した各層構造訓練データを113×113画素のウィンドウサイズに分割し、分割したウィンドウサイズの訓練データを入力層として、ニューラルネットワークを学習させた。ウィンドウサイズとして採用した113×113画素は、例示的には2つから9つ程度の複数の細胞のうち、少なくとも1つの細胞の細胞核領域の全体形状が、ウィンドウ内に含まれることをサポートするサイズであった。
[解析対象画像の作成]
訓練データと同様に、HE染色したサルの胃の明視野画像のホールスライドイメージを、バーチャルスライドスキャナを用いてカラー撮像した。撮像倍率は40倍であった。その後、撮像した明視野画像をもとにR、G、B各色の色濃度符号化図を作成し、作成したR、G、B各色の色濃度符号化図を組み合わせて解析対象画像を作成した。
[解析結果]
解析対象画像の各画素を中心に、113×113画素のウィンドウサイズの解析用データを作成し、作成したウィンドウサイズの解析用データを、学習済みのニューラルネットワークに入力した。ニューラルネットワークから出力される解析結果をもとに、第1の層構造の核領域と、第2の層構造の核領域と、第3の層構造の核領域と核領域以外の領域(背景)とに分類し、各層構造の核領域を白で、核領域以外を黒で表示するように処理した。解析結果を図21に示す。
図21中、(a)は、胃組織をHE染色して撮像した明視野画像であり、解析対象の画像である。(b)は、解析処理により得られた第1の層構造の核領域を示す図である。粘膜細胞の核領域が精度よく白く表示された。(c)は、解析処理により得られた第2の層構造の核領域を示す図である。粘膜下層の核領域が精度よく白く表示された。(d)は、解析処理により得られた第3の層構造の核領域を示す図である。胃の平滑筋層が、内輪走筋、外縦走筋ともに核領域が精度よく白く表示された。また、血管の平滑筋層および粘膜筋板の平滑筋細胞の核領域も、第3の層構造の核領域として判別された。(e)は、解析処理により得られた第1の層構造の核領域、第2の層構造の核領域および第3の層構造の核領域以外の領域を白く表示した図である。結合組織等の核以外の領域が精度よく検出された。(f)は、各層の判定結果を第1の訓練画像に重ねた図である。
以上の結果から、正常の胃の第1の層構造(粘膜上皮細胞層)、第2の層構造(粘膜下層)、第3の層構造(筋層)のそれぞれの領域を訓練用画像として学習させた深層学習アルゴリズムは、学習対象となった胃の粘膜上皮細胞層、粘膜下層、および筋層を精度よく検出することができる。加えて、胃の筋層の学習データは、同じ平滑筋細胞から構成される血管の筋層、および粘膜筋板も検出できていることから、本発明の学習済み深層アルゴリズムは、組織特異的な層構造の判別にとどまらず、細胞毎に核領域がどの細胞に由来するかについても判別が可能であると考えられた。言い換えると、本発明の学習済み深層アルゴリズムは、様々な組織に対して判別が可能であると考えられた。