以下、本発明の概要および実施の形態を、添付の図面を参照して詳細に説明する。なお、以下の説明および図面において、同じ符号は同じまたは類似の構成要素を示すこととし、よって、同じまたは類似の構成要素に関する説明を省略する。
画像解析方法は、組織の画像を解析する。前記画像解析方法は、ニューラルネットワーク構造の、好ましくは、畳み込みニューラルネットワーク構造の深層学習アルゴリズムを用いる。前記画像解析方法は、解析用データに含まれる領域が腫瘍領域であるか否かを示すデータを生成することを含む。
本発明において、組織または細胞の画像は、組織試料の標本または細胞を含む試料の標本から取得される画像である。組織試料の標本または細胞を含む試料の標本は、個体から採取される。個体は、特に制限されないが、好ましくは哺乳類であり、より好ましくはヒトである。前記個体から試料が採取される際に、個体が生きているか死亡しているかは問わない。前記組織は、個体内に存在するものである限り、制限されない。前記個体から採取された組織としては、外科的な切除組織、生検組織等を挙げることができる。前記腫瘍は上皮性および非上皮性のいずれであってもよい。前記腫瘍として好ましくは悪性上皮性腫瘍である。悪性腫瘍は、特に制限されないが、悪性腫瘍としては、例えば、気管、気管支又は肺等から発生する呼吸器系悪性腫瘍;上咽頭、食道、胃、十二指腸、空腸、回腸、盲腸、虫垂、上行結腸、横行結腸、S状結腸、直腸又は肛門部等から発生する消化管系悪性腫瘍;肝臓癌;膵臓癌;膀胱、尿管又は腎臓から発生する泌尿器系悪性腫瘍;卵巣、卵管および子宮等から発生する女性生殖器系悪性腫瘍;乳癌;前立腺癌;皮膚癌;視床下部、下垂体、甲状腺、副甲状腺、副腎等の内分泌系悪性腫瘍;中枢神経系悪性腫瘍;骨軟部組織から発生する悪性腫瘍等の固形腫瘍が挙げられる。より好ましくは、肺癌(扁平上皮癌、小細胞癌、大細胞癌、腺癌)等の呼吸器系上皮性悪性腫瘍;胃癌、十二指腸癌、大腸癌(S状結腸癌、直腸癌等)等の消化管系上皮性悪性腫瘍;肝臓癌;膵臓癌;膀胱癌;甲状腺癌;卵巣癌;乳癌;前立腺癌を挙げることができる。最も好ましくは、胃癌である。
前記標本は、前記組織を顕微鏡等で観察ができるように加工した状態のもの、例えばプレパラートを意図する。前記標本は、公知の方法に従って作製することができる。例えば、組織標本の場合には、前記個体から組織を採取した後に、所定の固定液(ホルマリン固定等)で組織を固定し、その固定組織をパラフィン包埋し、パラフィン包埋組織を薄切する。薄切切片をスライドグラスにのせる。切片がのったスライドグラスに対して光学顕微鏡での観察のため、すなわち明視野観察のための染色を施し、所定の封入処理をして標本が完成する。組織標本の典型例は、組織診断用標本(病理標本)であり、染色は、へマトキシリン・エオジン(HE)染色である。
HE染色の核染色はヘマトキシリンである。ヘマトキシリンは、組織細胞染色において核染色剤として幅広く使用されている(例えば、免疫染色、レクチン染色、糖染色、脂肪染色、膠原線維染色等)。このため、本発明は、このようなヘマトキシリンを核染色に使う標本全般において、適用が可能である。
前記画像解析には、訓練用画像を用いて訓練された深層学習アルゴリズムを用いる。前記画像解析は、前記標本から取得した、解析対象の組織を含む解析対象画像から解析データを生成する。前記解析データを、前記深層学習アルゴリズムに入力し、前記解析対象画像内に存在する組織が解析用データに含まれる領域が腫瘍領域であるか否かを示すデータを生成する。解析用データに含まれる領域が腫瘍領域であるか否かを示すデータとは、判別対象にある組織に含まれる複数の注目画素を含む領域が、腫瘍組織を含む可能性および/または非腫瘍領域である可能性を示すデータである。解析用データに含まれる領域が腫瘍領域であるか否かを示すデータは、腫瘍領域を含むことと非腫瘍領域であることを区別できるラベル値、表示等であり得る。
前記訓練用画像は、学習対象となる標本の複数の領域から取得される。好ましくは、前記訓練用画像は、学習対象となる組織に含まれる複数の層構造から層構造ごとに腫瘍領域を含む領域、非腫瘍領域を含む領域、および組織を含まない領域より取得される。
例えば、第1の訓練用画像70R1は、個体から採取された組織に含まれる、腫瘍領域を含む領域から取得された画像である。この画像は、顕微鏡観察により、組織構造が認識できるように染色された標本から取得される。前記染色は、組織構造が認識できる限り制限されないが、好ましくは明視野観察用の染色である。前記明視野観察用染色は、少なくとも細胞核と細胞核以外の部位が、色相で区別可能に染色できる限り制限されない。前記標本が哺乳類の組織標本である場合には、例えば、HE染色を挙げることができる。
第1の訓練用画像70R1からは、第1の訓練データ74R1と、第1の予備訓練データ70R1Lが生成される。第1の訓練データ74R1は、第1の訓練用画像70R1に含まれる色相を原色毎に分離した単一色画像に関する情報である。第1の予備訓練データ70R1Lは、第1の訓練用画像70R1に含まれている組織の領域が、腫瘍領域を含むことを示す二値化データ(ラベル値)として生成される。第1の訓練用画像70R1に含まれる組織の領域が腫瘍領域を含むか否かは、例えば病理医等による標本観察により判定される。ここで、前記訓練用画像に含まれる組織の領域において、腫瘍細胞と、非腫瘍細胞と、細胞以外の組織の領域とが混在する場合がある。この場合、前記訓練用画像に含まれる組織の領域が、例えば前記訓練用画像に含まれる組織の領域全体の面積を100%とした際に、腫瘍細胞がその全体の面積の約10%以上、約20%以上、約30%以上、約40%以上、約50%以上、約60%以上、約70%以上、約80%以上、または約90%以上を占める場合に、腫瘍領域を含むと判定することができる。好ましくは、約40%以上、約50%以上、約60%以上、約70%以上、約80%以上、または約90%以上を占める場合に、腫瘍領域を含むと判定することができる。前記訓練用画像に含まれる組織の領域全体の面積(100%)から非腫瘍細胞および細胞以外の組織(非腫瘍領域)が占める割合を減じた値を前記腫瘍細胞が組織全体の面積を占める割合として決定してもよい。
前記訓練用画像に含まれる第2の訓練用画像70R2は、非腫瘍領域を含む組織の領域(好ましくは、非腫瘍細胞と細胞以外の組織の領域とを含む領域)から取得された画像である。この画像は、顕微鏡観察により、組織構造が認識できるように染色された標本から取得される。前記染色は、組織構造が認識できる限り制限されないが、好ましくは明視野観察用の染色である。前記明視野観察用染色は、少なくとも細胞核と細胞核以外の部位が、色相で区別可能に染色できる限り制限されない。前記標本が哺乳類の組織標本である場合には、例えば、HE染色を挙げることができる。前記染色は、第1の訓練用画像70R1を取得した標本と同じものであることが好ましい。
第2の訓練用画像70R2からは、第2の訓練データ74R2と、第2の予備訓練データ70R2Lが生成される。第2の訓練データ74R2は、第2の訓練用画像70R2に含まれる色相を原色毎に分離した単一色画像に関する情報である。第2の予備訓練データ70R2Lは、第2の訓練用画像70R2に含まれている組織の領域が、非腫瘍領域を含むことを示す二値化データ(ラベル値)である。第2の訓練用画像70R2に含まれる組織の領域が非腫瘍領域を含むか否かは、例えば病理医等による標本観察により判定される。ここで、前記訓練用画像に含まれる組織の領域において、腫瘍細胞と、非腫瘍細胞と、細胞以外の組織の領域が混在する場合がある。この場合、前記訓練用画像に含まれる組織の領域が、例えば前記訓練用画像に含まれる組織の領域全体の面積を100%とした際に、非腫瘍細胞と細胞以外の組織の領域(非腫瘍領域)とが組織全体の面積の約10%以上、約20%以上、約30%以上、約40%以上、約50%以上、約60%以上、約70%以上、約80%以上、約90%以上、または100%を占める場合に、非腫瘍領域を含むと判定することができる。好ましくは、約40%以上、約50%以上、約60%以上、約70%以上、約80%以上、約90%以上、または100%を占める場合に、非腫瘍領域を含むと判定することができる。前記第2の訓練用画像70R2に含まれる組織の領域全体の面積(100%)から腫瘍領域が占める割合を減じた値を前記非腫瘍細胞と細胞以外の組織の領域とが組織全体の面積を占める割合として決定してもよい。
前記訓練用画像に含まれる第3の訓練用画像70R3は、第1の訓練用画像70R1、および/または第2の訓練用画像70R2を取得した標本における組織を含まない領域(非組織領域ともいう)から取得された画像である。
第3訓練用画像からは、第3の訓練データ74R3と、第3の予備訓練データ70R3Lが生成される。第3の訓練データ74R3は、第3の訓練用画像70R3に含まれる色相を原色毎に分離した単一色画像に関する情報である。第3の予備訓練データ70R2Lは、第3の訓練用画像70R3に含まれている領域が、組織を含まない領域であることであることを示す二値化データ(ラベル値)である。第3の訓練用画像70R3に含まれる領域は、例えば病理医等による標本観察により判定される。ここで、前記訓練用画像には、組織の領域と背景(例えば、プレパラートのガラス部分)の領域とが混在する場合がある。この場合、前記訓練用画像に含まれる背景の領域が、例えば前記1枚の訓練用画像に含まれる領域全体の面積を100%とした際に、背景の領域が約90%以上、約91%以上、約92%以上、約93%以上、約94%以上、約95%以上、約96%以上、約97%以上、約98%以上、または約99%以上を占める場合、あるいは背景の領域が100%を占める場合に、組織を含まない領域であると判定することができる。好ましくは、背景の領域が約95%以上、約96%以上、約97%以上、約98%以上、または約99%以上を占める場合、あるいは背景の領域が100%を占める場合に、組織を含まない領域であると判定することができる。
各訓練用画像は、訓練用の組織標本を、例えば5倍から20倍に拡大した画像として取得されることが好ましい。判別精度の点から、30倍以上、特に40倍以上に拡大した画像は、訓練用画像としては不向きである。
第1の訓練データ74R1および第1の予備訓練データ70R1Lからは腫瘍領域訓練データが生成され、第2の訓練データ74R2および第2の予備訓練データ70R2Lからは非腫瘍領域訓練データが生成され、第3の訓練データ74R3および第3の予備訓練データ70R2Lからは非組織領域訓練データが生成される。腫瘍領域訓練データ、非腫瘍領域訓練データおよび非組織領域訓練データを併せて訓練データと呼ぶことがある。
本発明の概要および実施の形態では、HE染色された組織標本を撮像した画像内に含まれる組織が腫瘍領域、非腫瘍領域および非組織領域を含むことを、深層学習アルゴリズムによって判別する場合を一例として説明する。
[深層学習方法および画像解析方法の概要]
はじめに、深層学習方法について説明する。
・深層学習方法の概要
図1を用いて、第1の訓練データ74R1、第1の予備訓練データ70R1Lおよび腫瘍領域訓練データ75R1の概要を説明する。図1には、スライドイメージスキャナにより取得した組織標本のホールスライドイメージ70W1を使ったニューラルネットワークへの訓練データの入力例を示す。ホールスライドイメージ70W1は明視野観察用染色としてHE染色を施して作製された標本を明視野で撮像した組織標本のスライドイメージを示す。ホールスライドイメージ70W2は、病理医によりホールスライドイメージ70W1において腫瘍領域を含む部分を病理医が実線で囲って指定した画像である。ホールスライドイメージ70W3は、ホールスライドイメージ70W2を訓練用画像として分割(例えば、512分割)した像を示す。ホールスライドイメージ70W3内の記号R1で示された四角枠で囲まれた領域は、図1に示す第1の訓練用画像70R1として使用する領域を示す。記号R2で示された四角枠で囲まれた領域は、図2に示す第2の訓練用画像70R2として使用する領域を示す。記号R3で示された四角枠で囲まれた領域は、図3に示す第3の訓練用画像70R3として使用する領域を示す。第1の訓練用画像70R1が腫瘍領域を含むこと、第2の訓練用画像70R2が非腫瘍領域を含むこと、および第3の訓練用画像70R3が組織を含まない領域であることは、それぞれの訓練画像を取得する前に判定していてもよく、それぞれの訓練画像を取得してから判定してもよい。
図1において、第1の訓練用画像70R1は、HE染色した標本を明視野観察下で例えばカラー画像として撮像しているため、第1の訓練用画像70R1には複数の色相が含まれる。
第1の訓練用画像70R1は、例えば公知の光学顕微鏡、蛍光顕微鏡またはバーチャルスライドスキャナ等の画像取得装置を用いて、予め取得することができる。例示的には、本実施形態において画像取得装置から取得されるカラー撮像は、カラースペースがRGBの24ビットカラーであることが好ましい。RGBの24ビットカラーでは、赤色、緑色および青色のそれぞれの濃さ(色濃度)を、8ビット(256段階)の階調で表すことが好ましい。第1の訓練用画像70R1は、1以上の原色を含む画像であればよい。第1の訓練用画像70R1に対応して、第1の訓練データ74R1が生成される。
本発明において、色相は、例示的には、光の3原色の組み合わせ、または色の3原色の組み合わせで規定される。第1の訓練データ74R1は、第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の訓練データ74R1が生成される。色濃度を示す符号は、本明細書において色濃度値ともいう。また、第1の訓練データ74R1として、色濃度符号化図に替えて、各画素に対応した色濃度値の行列を生成してもよい。
図1において、第1の予備訓練データ70R1Lは、第1の訓練用画像70R1に含まれている組織が、腫瘍領域を含むことを示すデータである。例えば、第1の訓練用画像70R1は、全領域が病理医の判定により腫瘍領域であると判定されているため第1の訓練用画像70R1には、後述する所定の画素数の領域毎に腫瘍領域を含むことを示すラベル値として同じ数値、例えば「1」が付され、第1の予備訓練データ70R1Lとなる。
深層学習方法では、図1に示す第1の訓練データ74R1および第1の予備訓練データ70R1Lから腫瘍領域訓練データ75R1を生成する。そして、腫瘍領域訓練データ75R1の各画素の色濃度値データ76(第1の訓練データ74R1から得られる)を入力層50aとし、ラベル値77R1(第1の予備訓練データ70R1Lから得られる)を出力層50bとするニューラルネットワーク50に学習させる。
次に、図2を用いて、第2の訓練データ74R2、第2の予備訓練データ70R2Lおよび非腫瘍領域訓練データ75R2の概要を説明する。図2において、ホールスライドイメージ70W1、ホールスライドイメージ70W2、およびホールスライドイメージ70W3は図1と同様であるため、第2の訓練用画像70R2には、第1の訓練用画像70R1と同様に複数の色相が含まれる。
第2の訓練用画像70R2は、腫瘍領域を含む組織に替えて非腫瘍領域含む組織を用いる以外は、第1の訓練用画像70R1と同様の方法で取得される。第2の訓練用画像70R2に対応して、第2の訓練データ74R2が生成される。
第2の訓練データ74R2は、腫瘍領域を含む組織に替えて非腫瘍領域含む組織を用いる以外は、第1の訓練データ74R1と同様の方法で生成される。図2に示す色濃度符号化図72R2r,72R2g,72R2bから画素毎にR、G、Bの色濃度値が組み合わされた第2の訓練データ74R2が生成される。
図2において、第2の予備訓練データ70R2Lは、第2の訓練用画像70R2が、非腫瘍領域を含むことを示すデータである。第2の訓練用画像70R2は全領域が病理医の判定により非腫瘍領域であると判定されているため、第2の訓練用画像70R2には、後述する所定の画素数の領域毎に非腫瘍領域を含むことを示すラベル値として同じ数値、例えば「2」が付され、第2の予備訓練データ70R2Lとなる。非腫瘍領域を含む領域であることを示すラベル値は、腫瘍領域を含む領域および組織を含まない領域を示すラベル値と区別できる限り制限されない。
深層学習方法では、図2に示す第2の訓練データ74R2および第2の予備訓練データ70R2Lから非腫瘍領域訓練データ75R2を生成する。そして、非腫瘍領域訓練データ75R2の各画素の色濃度値データ76(第2の訓練データ74R2から得られる)を入力層50aとし、ラベル値77R2(第2の予備訓練データ70R2Lから得られる)を出力層50bとするニューラルネットワーク50に学習させる。
次に、図3を用いて、第3の訓練データ74R3、第3の予備訓練データ70R3Lおよび非組織領域訓練データ75R3の概要を説明する。図3において、ホールスライドイメージ70W1、ホールスライドイメージ70W2、およびホールスライドイメージ70W3は図1と同様であるため、第3の訓練用画像70R3には、第1の訓練用画像70R1と同様に複数の色相が含まれる。
第3の訓練用画像70R3は、腫瘍領域を含む領域に替えて組織を含まない領域を用いる以外は、第1の訓練用画像70R1と同様の方法で取得される。第3の訓練用画像70R3に対応して、第3の訓練データ74R3が生成される。
第3の訓練データ74R3は、腫瘍領域を含む領域に替えて組織を含まない領域を用いる以外は、第1の訓練データ74R1と同様の方法で生成される。図3に示す色濃度符号化図72R3r,72R3g,72R3bから画素毎にR、G、Bの色濃度値が組み合わされた第3の訓練データ74R3が生成される。
図3において、第3の予備訓練データ70R3Lは、第3の訓練用画像70R3に含まれている領域が、組織を含まない領域であることを示すデータである。第3の訓練用画像70R3は全領域が病理医の判定により非組織領域であると判定されているため、第3の訓練用画像70R3には、後述する所定の画素数の領域毎に組織を含まない領域であることを示すラベル値として同じ数値、例えば「0」が付され、第3の予備訓練データ70R3Lとなる。組織を含まない領域であることを示すラベル値は、腫瘍領域を含む領域および非腫瘍領域を含む領域を示す数値とは区別される。
深層学習方法では、図3に示す第3の訓練データ74R3および第3の予備訓練データ70R3Lから非組織領域訓練データ75R3を生成するそして、非組織領域訓練データ75R3の各画素の色濃度値データ76(第3の訓練データ74R3から得られる)を入力層50aとし、ラベル値77R3(第3の予備訓練データ70R3Lから得られる)を出力層50bとするニューラルネットワーク50に学習させる。
図4(a)、(b)を参照して、腫瘍領域訓練データ75R1の生成方法を説明する。図4(a)に示す第1の訓練データ74R1は、所定の画素数の腫瘍領域の色濃度符号化図72R1r,72R1g,72R1bのそれぞれの色濃度値を組み合わせたデータである。本明細書において、第1の訓練データ74R1の各画素の位置は、便宜上列を左からl1、l2・・・li、行を上からm1、m2・・・mjで表す。第1の訓練データ74R1は、図4(a)では、その画像サイズ(訓練データ1つあたりの大きさ)が説明の便宜のために簡素化されており、第1の訓練データ74R1が、縦方向9画素および横方向9画素の合計81画素を有する。すなわち、各画素の位置は、列を左からl1、l2・・・l9、行を上からm1、m2・・・m9で表す。図4(a)に示す3つの値が、各画素におけるR、G、B各色の色濃度値である。例示的には、3つの値は、左から、赤(R)、緑(G)および青(B)の順序で格納されている。第1の訓練データ74R1の各画素の色濃度値は便宜的に値0から値7の8段階で示されている。これは、画像の前処理の一例として、撮像された際に256段階で表されている各色の画像72R1R,72R1G,72R1Bの明るさを、8段階の色濃度値にそれぞれ変換する処理である。色濃度値は、例えば最も低い明るさ(RGBカラー256段階で表した時の輝度値が低い階調群)を色濃度値0とし、明るさの程度が高くなるに従い徐々に高い値を割り当ててゆき、最も高い明るさ(RGBカラー256段階で表した時の輝度値が高い階調群)を色濃度値7とする。
図1および図4(b)に示す腫瘍領域訓練データ75R1は、図4(a)に示す第1の訓練データ74R1を所定数の画素からなる領域(以下、「ウィンドウサイズ」と記載する)で切り出したデータに第1の予備訓練データ70R1Lのラベル値に対応するラベル値77R1を付したものである。ウィンドウサイズの腫瘍領域訓練データ75R1も、説明の便宜のために3×3画素(l1:l3,m1:m3)に簡素化して示すが、各画素の位置は、便宜上列を左からl1、l2・・・li、行を上からm1、m2・・・mjで表す。実際の好ましいウィンドウサイズは、例示的には125×125画素(i=125、j=125)、150×150画素(i=150、j=150)、166×166画素(i=166、j=166)、180×180画素(i=180、j=180)、200×200画素(i=200、j=200)、220×220画素(i=220、j=220)、250×250画素(i=250、j=250)程度が、学習効率の点から好ましい。より好ましくは、ウィンドウサイズは200×200画素程度である。ウィンドウサイズは、たとえば60μm×60μm以上500μm×500μm以下の範囲である。好ましくは、60μm×60μm、100μm×100μm、150μm×150μm、200μm×200μm、250μm×250μm、300μm×300μm、350μm×350μm、400μm×400μm、450μm×450μm、500μm×500μmである。より好ましくは、200μm×200μm~400μm×400μmである。例えば、図4(b)に示すように、第1の訓練データ74R1の左端から3×3画素のウィンドウW1(l1:l3,m1:m3)を設定し、第1の訓練データ74R1に対して左から右にウィンドウW1を移動させる。ウィンドウW1は(l1:l3,m1:m3)の腫瘍領域訓練データ75R1を切り出した後、第1の予備訓練データ70R1Lのラベル値に対応するラベル値77R1を腫瘍領域訓練データ75R1に付す。ウィンドウW1は点線で示す腫瘍領域訓練データ74R1の次のウィンドウ(l4:l6,m4:m6)に移動し、(l4:l6,m4:m6)をウィンドウサイズの腫瘍領域訓練データ75R1として切り出す。新たに切り出された腫瘍領域訓練データ75R1に第1の予備訓練データ70R1Lのラベル値に対応するラベル値77R1を付す。この操作を、繰り返し、複数のウィンドウサイズの腫瘍領域訓練データ75R1を第1の訓練データ74R1から切り出す。切り出したウィンドウサイズの腫瘍領域訓練データ75R1は第1の予備訓練データ70R1Lのラベル値に対応するラベル値77R1が付され図1に示すニューラルネットワーク50の学習に用いられる。
図1に示すように、ニューラルネットワーク50の入力層50aのノード数は、入力されるウィンドウサイズの腫瘍領域訓練データ75R1の画素数と画像に含まれる原色の数(例えば光の三原色であれば、R、G、Bの3つ)との積に対応している。ウィンドウサイズの腫瘍領域訓練データ75R1の各画素の色濃度値データ76をニューラルネットワークの入力層50aとし、第1の予備訓練データ70R1Lに対応するラベル値77R1をニューラルネットワークの出力層50bとして、ニューラルネットワーク50に学習させる。各画素の色濃度値データ76は、腫瘍領域訓練データ75R1の各画素のR、G、B各色の色濃度値の集合データである。例示として、ウィンドウサイズの腫瘍領域訓練データ75R1が3×3画素である場合には、各画素についてR、G、B毎に1つずつの色濃度値が与えられるので、色濃度値データ76の色濃度値数は「27」(3×3×3=27)となり、ニューラルネットワーク50の入力層50aのノード数も「27」となる。
このように、ニューラルネットワーク50に入力するウィンドウサイズの腫瘍領域訓練データ75R1は、ユーザが作成することなく、コンピュータが自動的に作成することができる。これにより、ニューラルネットワーク50の効率的な深層学習が促進される。
図4(b)に示すように、初期状態において、ウィンドウW1は、第1の訓練データ74R1の左上角に位置している。以後、ウィンドウW1によってウィンドウサイズの腫瘍領域訓練データ75R1を切り出し、ニューラルネットワーク50の学習を行う度に、ウィンドウW1の位置を移動させる。具体的には、ウィンドウW1が第1の訓練データ74R1の例えば全ての画素を走査するように、ウィンドウW1を移動させる。これにより、第1の訓練データ74R1の全ての画素から切り出されたウィンドウサイズの腫瘍領域訓練データ75R1が、ニューラルネットワーク50の学習に用いられる。よってニューラルネットワーク50の学習の程度を向上でき、深層学習の結果、図6に示すニューラルネットワーク60構造を有する深層学習アルゴリズムが得られる。
図5(a)には、第2の訓練データ74R2を示す。第2の訓練データ74R2から非腫瘍領域訓練データ75R2を生成する方法は、第1の訓練データ74R1および第1の予備訓練データ70R1Lに替えて、第2の訓練データ74R2および第2の予備訓練データ70R2Lを使用する点を除き、腫瘍領域訓練データ75R1と同様である。非腫瘍領域訓練データ75R2に付される第2の予備訓練データ70R2Lのラベル値に対応するラベル値77R2が、図2に示す出力層50bに入力される。
図5(b)には、第3の訓練データ74R3を示す。第3の訓練データ74R3から非組織領域訓練データ75R3を生成する方法は、第1の訓練データ74R1および第1の予備訓練データ70R1Lに替えて、第3の訓練データ74R3および第3の予備訓練データ70R3Lを使用する点を除き、腫瘍領域訓練データ75R1と同様である。非組織領域訓練データ75R3に付される第3の予備訓練データ70R3Lのラベル値に対応するラベル値77R3が、図3に示す出力層50bに入力される。
各領域訓練データは、10枚以上、20枚以上、50枚以上、100枚以上の各領域の訓練用画像を使って生成することが好ましい。
・画像解析方法の概要 図6に示すように、画像解析方法では、解析対象の組織を含む標本を撮像した解析対象画像(明視野画像)78から、解析用データ80を生成する。前記標本は、第1の訓練用画像と同じ染色が施されていることが好ましい。解析対象画像78も、例えば公知の顕微鏡またはバーチャルスライドスキャナ等を用いて、例えばカラー画像として取得することができる。解析対象画像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段階の符号で表された色濃度値を表示している。本明細書において、解析対象データの各画素の位置は、便宜上列を左からl1、l2・・・li、行を上からm1、m2・・・mjで表す。
解析用データ80は、解析対象データを所定の画素数の領域(すなわち、上記各領域訓練データと同じウィンドウサイズ)で切り出したデータであり、解析対象画像78に含まれている組織の色濃度値を含むデータである。図6では、ウィンドウサイズの解析用データ80も、腫瘍領域訓練データ75R1、非腫瘍領域訓練データ75R2および非組織領域訓練データ75R3と同様に、説明の便宜のために3×3画素に簡素化して示すが、実際の好ましいウィンドウサイズは、腫瘍領域訓練データ75R1、非腫瘍領域訓練データ75R2および非組織領域訓練データ75R3と同様である。例えば、3×3画素のウィンドウW2を設定し、解析対象データに対してウィンドウW2を移動させる。ウィンドウW2は、解析対象データ中の所定数の画素を含んでおり、解析対象データを、各領域訓練データと同様の方法で例えば3×3画素の黒枠で示すウィンドウW2によって切り出すと、ウィンドウサイズの解析用データ80が得られる。各領域訓練データと同様の方法で、複数の解析用データ80が、解析対象データから、ウィンドウサイズに対応する所定の画素数の領域毎に生成される。解析対象データ、ウィンドウサイズの解析用データ80においても、腫瘍領域訓練データ75R1、非腫瘍領域訓練データ75R2および非組織領域訓練データ75R3と同様に、各画素について、色濃度値が赤(R)、緑(G)および青(B)の順序で格納されている。
画像解析方法では、図1から図3に示すウィンドウサイズの腫瘍領域訓練データ75R1、非腫瘍領域訓練データ75R2および非組織領域訓練データ75R3を用いて学習させたニューラルネットワークを有する深層学習アルゴリズム60を用いて、解析用データ80を処理する。解析用データ80を処理することによって、解析対象の組織における解析用データに含まれる領域が腫瘍領域であるか否かを示すデータ83を生成する。
再び図6を参照し、R、G、B各色の色濃度符号化図79r,79g,79bに基づき生成された解析対象データから切り出された解析用データ80が深層学習アルゴリズムを構成するニューラルネットワーク60に入力される。ニューラルネットワーク60の入力層60aのノード数は、入力される画素数と画像に含まれる原色の数との積に対応している。解析用データ80の各画素の色濃度値データ81を、ニューラルネットワーク60に入力すると、出力層60bからは、解析用データ80の推定値82(3値)が出力される。例えば推定値が1の場合は解析用データ80を構成する所定画素数の領域(画素領域)が腫瘍領域を含むことを示し、推定値が2の場合は前記画素領域が非腫瘍領域を含むことを示し、推定値が0の場合は前記画素領域が非組織領域であることを示す。すなわち、ニューラルネットワーク60の出力層60bから出力される推定値82は、解析対象画像の前記画素領域毎に生成されるラベル値であり、解析対象画像における解析用データに含まれる領域が腫瘍領域であるか否かを示すデータである。推定値82は、ニューラルネットワークに関する後述する説明ではクラスとも呼ばれる。ニューラルネットワーク60は、入力された解析用データ80に対し、解析用データ80に含まれる所定数の画素の色濃度値データ81に基づいて、腫瘍領域を含むことを示すラベル値、非腫瘍領域を含むことを示すラベル値、または非組織領域を示すラベル値を生成する。言い替えると、ニューラルネットワーク60は、解析用データ80を、解析対象画像に含まれる注目画素領域の状態(腫瘍化しているか、腫瘍化していないか、組織ではないか)を示すクラスに分類する。ここで、各画素の色濃度値データ81は、解析用データ80の各画素のR、G、B各色の色濃度値の集合データである。
以後、ウィンドウW2が解析対象データの全ての画素を走査するように、ウィンドウW2を所定画素数の領域単位で移動させながら、解析用データ80をウィンドウサイズで切り出す。切り出された解析用データ80を、ニューラルネットワーク60に入力する。これにより、解析対象画像における組織の解析用データに含まれる領域が腫瘍領域であるか否かを示すデータに基づいて、ラベル値83を得る。図6に示す例では、ラベル値83についてさらに領域検出処理を行うことにより、領域を示す領域強調画像84を得る。領域検出処理は、具体的には、例えば推定値82に応じて各領域を検出する処理となり、実際に推定値82が「1」の画素領域を腫瘍領域と、推定値82が「2」の画素領域を非腫瘍領域と、推定値82が0の画素領域を非組織領域と判別する処理となる。領域強調画像84は、画像解析処理により検出された領域を、ラベル値83を色(腫瘍領域を白、非腫瘍領域をグレー、非組織領域を黒)で表した図である)。また、各領域を判別した後に、腫瘍領域と、それ以外の領域(すなわち、非腫瘍領域および/又は非組織領域)とを識別可能に表示装置に表示させる処理を行ってもよい。例えば、腫瘍領域を色で塗りつぶす、腫瘍領域とそれ以外の領域との間に線を描画する等の処理を行い、これらを表示装置に識別可能に表示する。また、非腫瘍領域および/又は非組織領域についても識別可能に表示装置に表示させる処理を行ってもよい。
<第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の訓練用画像70R2、第3の訓練用画像70R3は、撮像装置300によって予め撮像され、処理部10Aの記憶部13またはメモリ12に予め記憶されていることとする。ニューラルネットワーク50は、例えば解析対象の標本が由来する組織の種別(例えば組織名)と対応付けられて、アルゴリズムデータベース105に予め格納されている。
深層学習装置100Aの処理部10Aは、図11に示す処理を行う。図10に示す各機能ブロックを用いて説明すると、ステップS10からS12、S17およびS18の処理は、訓練データ生成部101が行う。ステップS14の処理は、訓練データ入力部102が行う。ステップS15およびS16の処理は、アルゴリズム更新部103が行う。
以下に説明するステップS10からS18では、第1の訓練用画像70R1と、第2の訓練用画像70R2と、第3の訓練用画像70R3とを用いた深層学習処理を説明する。
処理部10Aは、深層学習方法の概要に記載の方法に準じて、腫瘍領域訓練データ75R1、非腫瘍領域訓練データ75R2および非組織領域訓練データ75R3を生成するための深層学習処理を行う。処理部10Aは、例えば、病理医等による入力部16からの操作により、第1の訓練用画像70R1の領域を含む広い領域の画像(ホールスライドイメージ70W1)を、出力部17に表示する。判定を行う病理医等は、出力部17に表示されたホールスライドイメージ70W1の画像を目視で確認する。病理医等は、腫瘍領域を含むと判定したホールスライドイメージ70W1中の領域を、例えば入力部16を介して指定し、ホールスライドイメージ70W1に例えば赤色等の実線で囲む。病理医等は、非腫瘍領域および非組織領域についても、同様に、ホールスライドイメージ70W1中の領域について、例えば赤色とは異なる青色、緑色等の実線で囲む。処理部10Aは、ホールスライドイメージ70W1を出力部17に表示して病理医により判断してもらうことに代えて、判定済みのホールスライドイメージ70W2を、I/F部15を介して例えばネットワーク99を介して取得してもよい。病理医等は、訓練用画像として好ましい画素にホールスライドイメージ70W2を分割してもよい。
処理部10Aは、病理医等の入力部16からの指定により、ホールスライドイメージ70W2中に赤色の実線で囲まれている領域から取得された第1の訓練用画像70R1を所定の画素数を含むように切り出す。同様に、非腫瘍領域および非組織領域と判定された部分からも、第2の訓練用画像70R2、第3の訓練用画像70R3のそれぞれを、所定の画素の領域を含むように切り出す。
ステップS10において、処理部10Aは、切り出された第1の訓練用画像70R1から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とする。処理部10Aは、色濃度符号化図72R1r,72R1g,72R1bから画素毎にR、G,Bの色濃度値を付した第1の訓練データ74R1を生成する。処理部10Aは、第1の訓練用画像70R1の各画素に腫瘍領域であることを示すラベル値である「1」を対応させた第1の予備訓練データ70R1Lを生成する。
ステップS11において、処理部10Aは、第2の訓練用画像70R2からステップS10と同様の方法により第2の訓練データ74R2を生成する。処理部10Aは、第2の訓練用画像70R2の各画素に非腫瘍領域であることを示すラベル値である「2」を対応させた第2の予備訓練データ70R2Lを生成する。
ステップS12において、処理部10Aは、第3の訓練用画像70R3からステップS10と同様の方法により第3の訓練データ74R3を生成する。処理部10Aは、第3の訓練用画像70R3の各画素に非組織領域であることを示すラベル値である「0」を対応させた第3の予備訓練データ70R3Lを生成する。
ステップS10からステップS12は同時に行ってもよく、順不同であってもよい。
ステップS13において、処理部10Aは、入力部16を通じて、深層学習装置100A側のユーザからの、学習用の組織の種別の入力を受け付ける。処理部10Aは、入力された組織の種別に基づき、ウィンドウサイズデータベース104(ウィンドウサイズDB104)を参照して、ウィンドウサイズを設定し、アルゴリズムデータベース105(アルゴリズムDB105)を参照して、学習に用いるニューラルネットワーク50を設定する。ウィンドウサイズは例えば200×200画素とする。ウィンドウサイズは、1回の入力時にニューラルネットワーク50に入力する訓練データの単位であり、ウィンドウサイズの各領域に対応する訓練データの画素数と画像に含まれる色の原色の数との積が、入力層50aのノード数に対応している。ウィンドウサイズは組織の種別と対応付けられて、ウィンドウサイズデータベース104内に予め記憶されている。
ステップS14において、処理部10Aは、各領域に対応する訓練データから、ウィンドウサイズの腫瘍領域訓練データ75R1、非腫瘍領域訓練データ75R2および非組織領域訓練データ75R3を生成する。具体的には、上述の「深層学習方法の概要」において、図4(a)、(b)を参照して説明したように、第1の訓練データ74R1および第1の予備訓練データ70R1Lから、ウィンドウW1によってウィンドウサイズの腫瘍領域訓練データ75R1を作成する。処理部10Aは、第2の訓練データ74R2および第2の予備訓練データ70R2Lから、ウィンドウサイズの非腫瘍領域訓練データ75R2を生成する。具体的には、上述の「深層学習方法の概要」において、図4(a)、(b)および図5(a)を参照して説明したように、第2の訓練データ74R2および第2の予備訓練データ70R2Lから、ウィンドウW1によってウィンドウサイズの非腫瘍領域訓練データ75R2を作成する。処理部10Aは、第3の訓練データ74R3および第3の予備訓練データ70R3Lから、ウィンドウサイズの非組織領域訓練データ75R3を生成する。具体的には、上述の「深層学習方法の概要」において、図4(a)、(b)および図5(b)を参照して説明したように、第3の訓練データ74R3および第3の予備訓練データ70R3Lから、ウィンドウW1によってウィンドウサイズの非組織領域訓練データ75R3を作成する。
図11に示すステップS15において、処理部10Aは、ウィンドウサイズの腫瘍領域訓練データ75R1、非腫瘍領域訓練データ75R2および非組織領域訓練データ75R3を用いて、ニューラルネットワーク50を学習させる。ニューラルネットワーク50の学習結果は、ウィンドウサイズの腫瘍領域訓練データ75R1、非腫瘍領域訓練データ75R2および非組織領域訓練データ75R3を用いてニューラルネットワーク50を学習させる度に蓄積される。
実施形態に係る画像解析方法では、畳み込みニューラルネットワークを使用しており、確率的勾配降下法を用いるため、ステップS16において、処理部10Aは、予め定められた所定の試行回数分の学習結果が蓄積されているか否かを判断する。学習結果が所定の試行回数分蓄積されている場合、処理部10AはステップS17の処理を行い、学習結果が所定の試行回数分蓄積されていない場合、処理部10AはステップS18の処理を行う。
学習結果が所定の試行回数分蓄積されている場合、ステップS17において、処理部10Aは、ステップS15において蓄積しておいた学習結果を用いて、ニューラルネットワーク50の結合重みwを更新する。実施形態に係る画像解析方法では、確率的勾配降下法を用いるため、所定の試行回数分の学習結果が蓄積した段階で、ニューラルネットワーク50の結合重みwを更新する。結合重みwを更新する処理は、具体的には、後述の(式11)および(式12)に示される、勾配降下法による計算を実施する処理である。
ステップS17において、処理部10Aは、第1の訓練データ74R1、第2の訓練データ74R2および第3の訓練データ74R3のそれぞれについて各領域訓練データ内の規定数の画素を処理したか否かを判断する。各領域訓練データの規定数の画素について、ステップS15からステップS17の一連の処理がなされている場合は、深層学習処理を終了する。ニューラルネットワークの学習は、必ずしも各訓練データ内の全ての画素に対して行う必要は無く、処理部10Aは、各訓練データ内の一部の画素、すなわち規定数の画素に対して処理をし学習を行うことができる。規定数の画素は、各領域訓練データ内の全ての画素であってもよい。
各領域訓練データ内の規定数の画素が処理されていない場合は、処理部10Aは、ステップS19において、図4(b)に示すように、第1の訓練データ74R1内、第2の訓練データ74R2内または第3の訓練データ74R3内において、ウィンドウの位置を移動させる。その後、処理部10Aは、移動後の新たなウィンドウ位置において、ステップS14からステップS16の一連の処理を行う。すなわち、処理部10Aは、ステップS14において、移動後の新たなウィンドウ位置において第1の訓練データ74R1、第2の訓練データ74R2および第3の訓練データ74R3のそれぞれについてウィンドウサイズの各領域訓練データ75R1,75R2,75R3を切り出し、各領域を示すラベル値を付す。引き続き、処理部10Aは、ステップS15において、新たに切り出したウィンドウサイズの各領域訓練データ75R1,75R2,75R3を用いて、ニューラルネットワーク50を学習させる。ステップS16において、所定の試行回数分の学習結果が蓄積されている場合は、処理部10Aは、ステップS17において、ニューラルネットワーク50の結合重みwを更新する。このようなウィンドウサイズ毎のニューラルネットワーク50の学習を、第1の訓練データ74R1、第2の訓練データ74R2および第3の訓練データ74R3のそれぞれについて規定数の画素に対して行う。
以上説明した、ステップS10からS19の深層学習処理を、さらに別途取得された第1の訓練用画像70R1と、第2の訓練用画像70R2と、第3の訓練用画像70R3に対して繰り返し行うことにより、ニューラルネットワーク50の学習の程度を向上させる。これにより、図5に示すニューラルネットワーク構造の深層学習アルゴリズム60を得る。
・ニューラルネットワークの構造
図12(a)に示すように、第1の実施形態では、深層学習タイプのニューラルネットワークを用いる。深層学習タイプのニューラルネットワークは、図12に示すニューラルネットワーク50のように、入力層50aと、出力層50bと、入力層50aおよび出力層50bの間の中間層50cとを備え、中間層50cが複数の層で構成されている。中間層50cを構成する層の数は、例えば5層以上とすることができる。
ニューラルネットワーク50では、層状に配置された複数のノード89が、層間において結合されている。これにより、情報が入力側の層50aから出力側の層50bに、図中矢印Dに示す一方向のみに伝播する。本実施形態では、入力層50aのノード数は、入力される画像の画素数すなわち図3(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から、解析対象の組織において各領域を示すデータである3値画像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から画素毎にR、G、B各色の色濃度値を組み合わせた解析対象データが生成される。色濃度符号化図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から画素毎にR、G、B各色の色濃度値を組み合わせた解析対象データを生成し、さらにウィンドウサイズの解析用データ80を生成する。
ステップS24において、処理部20Aは、図5に示す解析用データ80を、深層学習アルゴリズム60に入力する。ウィンドウの初期位置は、深層学習処理時におけるステップS14と同様に、例えばウィンドウ内の3×3画素に位置する画素が、解析対象データの左上角に対応する位置である。処理部20Aは、ウィンドウサイズの解析用データ80に含まれる、3×3画素×3原色の合計27個の色濃度値のデータ81を入力層60aに入力すると、深層学習アルゴリズム60は、出力層60bに判別結果82を出力する。
図14に示すステップS25において、処理部20Aは、図5に示す出力層60bに出力される判別結果82を記憶する。判別結果82は、解析対象データの各画素領域についての推定値(0、1、2の3値のいずれか)である。
図14に示すステップS26において、処理部20Aは、入力画像内の全ての画素を処理したか否かを判断する。入力画像は、図6に示す色濃度符号化図79r,79g,79bであり、解析対象データ内の全ての画素について、図14に示すステップS23からステップS25の一連の処理がなされている場合は、ステップS28の処理を行う。
解析対象データ内の全ての画素が処理されていない場合は、処理部20Aは、ステップS27において、深層学習処理時におけるステップS20と同様に、図5に示す色濃度符号化図79r,79g,79b内において、ウィンドウW2を所定の画素数の単位で移動させる。その後、処理部20Aは、移動後の新たなウィンドウW2の位置において、ステップS23からステップS25の一連の処理を行う。処理部20Aは、ステップS25において、移動後の新たなウィンドウ位置に対応する、判別結果82を記憶する。このようなウィンドウサイズ毎の判別結果82の記憶を、解析対象画像内の全ての画素に対して行うことにより、解析結果の3値画像83が得られる。解析結果の3値画像83の画像サイズは、解析対象画像の画像サイズと同じである。ここで、3値画像83には、推定値の値2、値1および値0が各画素に付された数値データであってもよく、推定値の値2、値1および値0に代えて、例えば値2、値1および値0のそれぞれに対応付けた表示色で示した画像であっても良い。
図14に示すステップS28では、処理部20Aは、解析結果の3値画像83を出力部27に出力する。
ステップS29では、ステップS28に引き続き、処理部20Aは、解析結果の3値画像83についてさらに、領域検出処理を行う。3値画像83において、腫瘍領域と、非腫瘍領域と、非組織領域とは、3値で区別して表されている。
任意ではあるが、処理部20Aは、得られた各領域を、解析対象の解析対象画像78に重ねることにより、領域強調画像84を作成する。処理部20Aは、作成した領域強調画像84を出力部27に出力し、画像解析処理を終了する。
任意ではあるが、処理部20Aは、解析対象画像78に含まれる組織において、腫瘍領域がどの程度含まれているか算出してもよい。例えば、解析対象画像78に含まれる組織に該当する画素数、すなわち腫瘍領域および非腫瘍領域と判定された画素数の合計(組織領域総画素数)を100%とした場合に、腫瘍領域と判定された画素数が何%を占めるかを算出することにより、腫瘍領域の含有率を算出することができる。また、総画素数から腫瘍領域と判定された画素数を減じることにより、または組織領域総画素数)を100%とした場合に、非腫瘍領域と判定された画素数が何%を占めるかを算出することにより、非腫瘍領域の含有率を算出することができる。そして、腫瘍領域の含有率と非腫瘍領域の含有率との比率を算出してもよい。前記算出された値は、出力部27に出力されてもよい。また、算出された値は、領域強調画像84と共に出力部27に出力されてもよい。
このように腫瘍領域の含有率を算出することは、がん組織の遺伝子解析等に用いられる組織が検査に適した腫瘍組織を含んでいるかスクリーニングする上で有用である。
以上、画像解析装置200Aのユーザは、解析対象の組織の解析対象画像78を画像解析装置200Aに入力することにより、解析結果として、3値画像83を取得することができる。3値画像83は、解析対象の標本における、腫瘍領域と、非腫瘍領域と、非組織領域とを表しており、ユーザは、解析対象の標本において、各領域を判別することが可能となる。
さらに、画像解析装置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の訓練用画像70R2、第3の訓練用画像70R3は、撮像装置400によって予め撮像され、処理部20Bの記憶部23またはメモリ22に予め記憶されていることとする。解析対象の標本の解析対象画像78も、撮像装置400によって予め撮像され、処理部20Bの記憶部23またはメモリ22に予め記憶されていることとする。
画像解析装置200Bの処理部20Bは、深層学習処理時には、図11に示す処理を行い、画像解析処理時には、図14に示す処理を行う。図16に示す各機能ブロックを用いて説明すると、深層学習処理時には、ステップS10からS12、S14、S18およびS19の処理は、訓練データ生成部101が行う。ステップS13の処理は、訓練データ入力部102が行う。ステップS16およびS17の処理は、アルゴリズム更新部103が行う。画像解析処理時には、ステップS21およびS22の処理は、解析用データ生成部201が行う。ステップS23,S24,S26およびS27の処理は、解析用データ入力部202が行う。ステップS25およびS28の処理は、解析部203が行う。ステップS29の処理は、領域検出部204が行う。
第2の実施形態に係る画像解析装置200Bが行う深層学習処理の手順および画像解析処理の手順は、第1の実施形態に係る深層学習装置100Aおよび画像解析装置200Aがそれぞれ行う手順と同様である。なお、第2の実施形態に係る画像解析装置200Bは、次の点において第1の実施形態に係る深層学習装置100Aおよび画像解析装置200Aと異なる。
深層学習処理時のステップS13において、処理部20Bは、入力部26を通じて、画像解析装置200Bのユーザからの、学習用の組織の種別の入力を受け付ける。処理部20Bは、入力された組織の種別に基づき、ウィンドウサイズデータベース104を参照して、ウィンドウサイズを設定し、アルゴリズムデータベース105を参照して、学習に用いるニューラルネットワーク50を設定する。
以上、画像解析装置200Bのユーザは、解析対象画像78を画像解析装置200Bに入力することにより、解析結果として、3値画像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の訓練用画像70R2、第3の訓練用画像70R3は、撮像装置300によって予め撮像され、処理部10Bの記憶部13またはメモリ12に予め記憶されていることとする。解析対象の組織の解析対象画像78も、撮像装置400によって予め撮像され、端末装置200Cの処理部20Cの記憶部23またはメモリ22に予め記憶されていることとする。
画像解析装置100Bの処理部10Bは、深層学習処理時には、図11に示す処理を行い、画像解析処理時には、図14に示す処理を行う。図18に示す各機能ブロックを用いて説明すると、深層学習処理時には、ステップS10からS12、S14、S18およびS19の処理は、訓練データ生成部101が行う。ステップS13の処理は、訓練データ入力部102が行う。ステップS16およびS17の処理は、アルゴリズム更新部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は、解析結果の3値画像83を、ユーザ側の端末装置200Cに送信する。ユーザ側の端末装置200Cでは、処理部20Cが、受信した解析結果の3画像83を出力部27に出力する。
画像解析処理時のステップS29において、処理部10Bは、ステップS28に引き続き、解析結果の3値画像83についてさらに、核領域の検出処理を行う。任意のステップとして、処理部10Bは、得られた各領域を、解析対象の解析対象画像78に重ねることにより、領域強調画像84を作成する。処理部10Bは、作成した領域強調画像84を、ユーザ側の端末装置200Cに送信する。ユーザ側の端末装置200Cでは、処理部20Cが、受信した領域強調画像84を出力部27に出力し、画像解析処理を終了する。
以上、端末装置200Cのユーザは、解析対象の組織の解析対象画像78を画像解析装置100Bに送信することにより、解析結果として、3値画像83を取得することができる。さらに、端末装置200Cのユーザは、解析結果として、領域強調画像84を取得することができる。
第3の実施形態に係る画像解析装置100Bによると、ユーザは、ウィンドウサイズデータベース104およびアルゴリズムデータベース105を深層学習装置100Aから取得することなく、画像解析処理の結果を享受することができる。これにより、解析対象の組織を解析するサービスとして、腫瘍領域および/または非腫瘍領域を判別し各組織における腫瘍領域をスクリーニングするサービスを、クラウドサービスとして提供することができる。
[コンピュータプログラム]
本発明の実施形態には、前記ステップS10からS20を処理部10A,20B,10Bに実行させ、学習済み深層学習アルゴリズムの生成するコンピュータプログラムおよびその製品が含まれる。また、本発明の実施形態には、前記ステップS21からS29を処理部10A,20B,10Bに実行させ、コンピュータを個体から採取された組織の画像を解析するために機能させるコンピュータプログラムおよびその製品が含まれる。
[その他の形態]
以上、本発明を概要および特定の実施形態によって説明したが、本発明は上記した概要および各実施形態に限定されるものではない。
上記第1から第3の実施形態では、ステップS13において、処理部10A,20B,10Bは、ウィンドウサイズデータベース104を参照して、ウィンドウサイズの画素数を設定しているが、オペレータまたはユーザがウィンドウサイズを直接設定してもよい。この場合、ウィンドウサイズデータベース104は不要となる。
上記第1から第3の実施形態では、ステップS13において、処理部10A,20B,10Bは、入力された組織の種別に基づいて、ウィンドウサイズの画素数を設定しているが、組織の種別の入力に代えて、組織のサイズを入力してもよい。処理部10A,20B,10Bは、入力された組織のサイズに基づいて、ウィンドウサイズデータベース104を参照して、ウィンドウサイズの画素数を設定すればよい。ステップS22においてもステップS13と同様に、組織の種別の入力に代えて、組織のサイズを入力してもよい。処理部20A,20B,10Bは、入力された組織のサイズに基づいて、ウィンドウサイズデータベース104およびアルゴリズムデータベース105を参照して、ウィンドウサイズの画素数を設定し、ニューラルネットワーク60を取得すればよい。
組織のサイズを入力する態様については、サイズを数値として直接入力してもよいし、例えば入力のユーザインタフェースをプルダウンメニューとして、ユーザが入力しようとするサイズに対応する、所定の数値範囲をユーザに選択させて入力してもよい。
また、ステップS13およびステップS22において、組織の種別または組織のサイズに加えて、訓練用画像、および解析対象画像78を撮像した際の撮像倍率を入力してもよい。撮像倍率を入力する態様については、倍率を数値として直接入力してもよいし、例えば入力のユーザインタフェースをプルダウンメニューとして、ユーザが入力しようとする倍率に対応する、所定の数値範囲をユーザに選択させて入力してもよい。
上記第1から第3の実施形態では、深層学習処理時および画像解析処理時において、説明の便宜のためにウィンドウサイズを3×3画素と設定しているが、ウィンドウサイズの画素数はこれに限定されない。ウィンドウサイズは、例えば組織の種別に応じて設定してもよい。この場合、ウィンドウサイズの画素数と画像に含まれる色の原色の数との積が、ニューラルネットワーク50,60の入力層50a,60aのノード数に対応していればよい。
上記第1から第3の実施形態では、ステップS17において、処理部10A,20B,10Bは、深層学習アルゴリズム60を、組織の種別と一対一に対応付けて、アルゴリズムデータベース105に記憶している。これに代えて、ステップS17において、処理部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の実施形態では、処理部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をプリンター等で構成し、解析結果の3値画像83または領域強調画像84を印刷して出力してもよい。
上記第1から第3の実施形態では、撮像装置300は、深層学習装置100Aまたは画像解析装置100Bと直接接続されているが、撮像装置300は、ネットワーク99を介して深層学習装置100Aまたは画像解析装置100Bと接続されていてもよい。撮像装置400についても同様に、撮像装置400は、画像解析装置200Aまたは画像解析装置200Bと直接接続されているが、撮像装置400は、ネットワーク99を介して画像解析装置200Aまたは画像解析装置200Bと接続されていてもよい。
<学習済み深層学習アルゴリズムの検証>
上記第2の実施形態に示すスタンドアロン型のシステムにて、深層学習処理および画像解析処理を行った。学習の対象とする組織として、腫瘍領域と正常領域を含むヒト胃がん組織を用いた。学習済みの深層学習アルゴリズムを作成するにあたり、組織標本の拡大倍率を1倍、3倍、5倍、10倍、20倍、および40倍と変化させて訓練用画像を撮像し、異なる拡大倍率の訓練用画像を用いた訓練データをニューラルネットワークに学習させ、解析結果の正確性を確認した。
学習データおよび解析データの詳細は、次の通りであった。
学習データ:106枚のホールスライドイメージ
検証用解析データ:45枚のホールスライドイメージ
[訓練データの作成および学習]
HE染色した胃がん組織の明視野画像のホールスライドイメージを、バーチャルスライドスキャナ(NanoZoomer-XR、(Hamamatsu Photonics;スキャン分解能:20倍モードスキャン時0.46 μm/pixel、40倍モードスキャン時0.23 μm/pixel))を用いてカラー撮像した。撮像倍率は1倍、3倍、5倍、10倍、20倍、および40倍とした。学習対象の組織を含むホールスライドイメージ上で、病理医が腫瘍領域、非腫瘍領域、および非組織領域を指定した。各領域が指定されたホールスライドイメージを上記の条件で分割し、訓練用画像とした。個々の訓練用画像について腫瘍領域であるか、非腫瘍領域であるか、非組織領域であるかを決定した。その際、腫瘍領域と非腫瘍領域が混在する組織の領域については、訓練用画像内の組織領域に該当する画素数のうち、腫瘍領域と指定された画素数が50%以上を占める場合には腫瘍領域とした。また、訓練用画像内の組織領域に該当する画素数のうち、非腫瘍領域と指定された画素数が占める割合が100%の場合には非腫瘍領域とした。非組織領域と組織領域が混在する訓練用画像については、組織領域が訓練用画像の画素数の0%である場合に非組織領域とし、それ以外は組織領域とした。腫瘍領域、非腫瘍領域、非組織領域と判定されたそれぞれの訓練用画像の各画素について、各領域を区別するラベル値(腫瘍領域は「1」、非腫瘍領域は「2」、非組織領域は「0」)を付与し、第1の予備訓練データ70R1L、第2の予備訓練データ70R2Lおよび第3の予備訓練データ70R2Lを生成した。腫瘍領域と判定された訓練用画像を第1の訓練用画像とし、非腫瘍領域と判定された訓練用画像を第2の訓練用画像70R2とし、非組織領域と判定された訓練用画像を第3の訓練用画像70R3とした。各訓練用画像についてR、G、B各色の色濃度値を8ビットで階調化して、R、G、B各色の色濃度符号化図を生成し、作成したR、G、B各色の色濃度符号化図を組み合わせて第1の訓練データ74R1、第2の訓練データ74R2、第3の訓練データ74R3のそれぞれを生成した。
その後、第1の訓練データ74R1と第1の予備訓練データ70R1Lとを組み合わせて腫瘍領域訓練データを作成した。第2の訓練データ74R2と第2の予備訓練データ70R2Lとを組み合わせて非腫瘍領域訓練データを作成した。第3の訓練データ74R3と第3の予備訓練データ70R2Lとを組み合わせて非組織領域訓練データを作成した。作成した各領域訓練データを200×200画素のウィンドウサイズに分割し、分割したウィンドウサイズの訓練データを入力層として、ニューラルネットワークを学習させた。
各領域訓練データは組織標本の拡大倍率毎に生成し、拡大倍率毎にニューラルネットワークを学習させた。
[解析対象画像の作成]
訓練データと同様に、HE染色したヒト胃がん組織の明視野画像のホールスライドイメージを、バーチャルスライドスキャナを用いてカラー撮像し解析用画像を得た。撮像倍率は1倍、3倍、5倍、10倍、20倍、および40倍とした。その後、撮像した解析用画像をもとにR、G、B各色の色濃度符号化図を作成し、作成したR、G、B各色の色濃度符号化図を組み合わせて解析対象データを生成した。解析対象データは、拡大倍率毎に生成した。
[解析結果]
解析対象データから200×200画素のウィンドウサイズの解析用データを作成し、解析用データを、拡大倍率に対応した学習済みのニューラルネットワークに入力した。ニューラルネットワークから出力される解析結果をもとに、腫瘍領域と、非腫瘍領域と、非組織領域(背景)とに分類し、解析処理により得られた腫瘍領域を白で表示し、非腫瘍領域をグレーで表示し、非組織領域を黒で表示するように処理した。解析結果を図19に示す。
図19中、(a)は、胃がん組織をHE染色して撮像した明視野画像のホールスライドイメージであり、解析対象の画像である。(b)は、ホールスライドイメージの腫瘍領域を病理医が指定し実線で囲った像である。(c)は、拡大倍率1倍の訓練用画像と解析用画像を用いた解析結果を示す。病理医が指定した各領域を正確に示すことはできなかった。(d)は、拡大倍率5倍の訓練用画像と解析用画像を用いた解析結果を示す。病理医が指定した腫瘍領域を腫瘍領域として概ね判別することができた。また、病理医が指定した非腫瘍領域を非腫瘍領域として概ね判別することができた。病理医が指定した非組織領域を非組織領域として概ね判別することができた。(e)は、拡大倍率40倍の訓練用画像と解析用画像を用いた解析結果を示す。病理医が指定した腫瘍領域を腫瘍領域としてある程度判別することができた。しかし、病理医が非腫瘍領域と指定した領域において、腫瘍領域と判定される領域が増えており、非腫瘍領域を腫瘍領域と誤判定する割合が高くなっていた。
以上の結果から、訓練用画像および解析用画像を取得する際の拡大倍率は低すぎても高すぎても誤判定の原因となることが示された。
図20中、(a)は、図19とは異なる胃がん組織をHE染色して撮像した明視野画像のホールスライドイメージであり、解析対象の画像である。(b)は、ホールスライドイメージの腫瘍領域を病理医が指定し実線で囲った像である。(c)は、拡大倍率5倍の訓練用画像と解析用画像を用いた解析結果を示す。病理医が指定した腫瘍領域を腫瘍領域として概ね判別することができた。また、病理医が指定した非腫瘍領域を非腫瘍領域として概ね判別することができた。病理医が指定した非組織領域を非組織領域として概ね判別することができた。(d)は、拡大倍率20倍の訓練用画像と解析用画像を用いた解析結果を示す。拡大倍率5倍の場合と同様に、病理医が指定した各領域を概ね判別することができた。
拡大倍率5倍の解析用画像について、下式にしたがって、ホールスライドイメージ1枚に存在する組織領域における腫瘍領域の含有率を算出した。
腫瘍領域の含有率(%)={[腫瘍領域と判定された画素数]/[(腫瘍領域と判定された画素数)+(非腫瘍領域と判定された画素数)]}×100
腫瘍領域の含有率は54.5%であった。
また、図21に各拡大倍率の感度(a)および陽性的中率(b)を示す。この結果から、訓練用画像および解析用画像を取得する際の組織標本の拡大倍率は、5から20倍が適切であると考えられた。また、図21にウィンドウサイズの画素数の違いによる感度(c)および陽性的中率(d)の変化を示す。解析用画像は拡大倍率5倍で撮像した。ウィンドウサイズの画素数は、125×125画素から200×200画素が好ましいと考えられた。
今回1枚のホールスライドイメージの解析時間は、数分~30分程度であった。