IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ ナントミクス,エルエルシーの特許一覧

特許7061671デジタル画像の対象領域の少なくとも1つの形状を生成する方法および装置ならびに機械学習システムを訓練するための訓練データを生成する方法
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2022-04-20
(45)【発行日】2022-04-28
(54)【発明の名称】デジタル画像の対象領域の少なくとも1つの形状を生成する方法および装置ならびに機械学習システムを訓練するための訓練データを生成する方法
(51)【国際特許分類】
   G06T 7/00 20170101AFI20220421BHJP
   A61B 5/00 20060101ALI20220421BHJP
【FI】
G06T7/00 350B
A61B5/00 G
【請求項の数】 22
(21)【出願番号】P 2020536730
(86)(22)【出願日】2018-09-12
(65)【公表番号】
(43)【公表日】2020-11-19
(86)【国際出願番号】 US2018050737
(87)【国際公開番号】W WO2019055555
(87)【国際公開日】2019-03-21
【審査請求日】2020-03-11
(31)【優先権主張番号】62/557,737
(32)【優先日】2017-09-12
(33)【優先権主張国・地域又は機関】US
(73)【特許権者】
【識別番号】516001591
【氏名又は名称】ナントミクス,エルエルシー
(74)【代理人】
【識別番号】110002572
【氏名又は名称】特許業務法人平木国際特許事務所
(72)【発明者】
【氏名】ソン,ビン
(72)【発明者】
【氏名】ジェイバー,ムスタファ
【審査官】宮島 潤
(56)【参考文献】
【文献】特表2016-518813(JP,A)
【文献】特表2017-516992(JP,A)
【文献】特開2017-129990(JP,A)
【文献】https://ieeexplore.ieee.org/stamp/stamp.jsp?tp=&arnumber=7780635,Patch-based Convolutional Neural Network for Whole Slide Tissue Image Classification,2016 IEEE Conference on Computer Vision and Pattern Recognition,IEEE,2016年06月27日,2424-2433
【文献】Alexander Senf, et al.,Comparison of One-Class SVM and Two-Class SVM for Fold Recognition,International Conference on Neural Information,2006年10月06日,https://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.94.5565&rep=rep1&type=pdf
(58)【調査した分野】(Int.Cl.,DB名)
G06T 7/00 - 7/90
G06T 1/00 - 1/40
G06T 3/00 - 5/50
G06T 9/00 - 9/40
G06T 11/60 - 13/80
G06T 17/05
G06T 19/00 - 19/20
A61B 5/00 - 5/01
A61B 5/055
A61B 6/00 - 6/14
G01N 33/48 - 33/98
G06T 1/161 - 1/166
(57)【特許請求の範囲】
【請求項1】
デジタル画像の対象領域の少なくとも1つの形状を生成する方法であって、
前記方法はコンピュータが実行するものであり、
画像処理エンジンによって、データ記憶装置に格納された生体サンプルのデジタル組織画像へのアクセスを得るステップと、
前記画像処理エンジンによって、前記デジタル組織画像を画像パッチの一群にタイルのように重ねずに並べるステップと、
前記画像処理エンジンによって、前記画像パッチの一群の各パッチから複数の特徴を取得するステップであって、前記複数の特徴が、次元として前記複数の特徴を含む多次元特徴空間におけるベクトルを定義する、ステップと、
前記画像処理エンジンによって、前記画像パッチの一群のパッチのユーザ選択および対象クラスのユーザ選択の入力を受け付けるステップと、
前記パッチの一群の他のパッチの前記ベクトルに訓練された分類器を適用することによって、前記他のパッチを、前記パッチのユーザ選択と同じ対象クラスに属する又は属さないに分類するステップと、
少なくとも部分的に、前記分類するステップの結果に基づいて、1つ又は複数の対象領域を識別するステップと、
を含む、方法。
【請求項2】
前記デジタル組織画像をタイルのように重ねずに並べる前記ステップが、均一なサイズ及び均一な形状の画像パッチを生成することを含む、請求項1に記載の方法。
【請求項3】
前記均一なサイズ及び均一な形状の画像パッチが、
a. 1,000ピクセル×1,000ピクセル以下、
b. 400ピクセル×400ピクセル以下、または
c. 256ピクセル×256ピクセル以下、
の正方形パッチを含む、請求項2に記載の方法。
【請求項4】
前記デジタル組織画像をタイルのように重ねずに並べる前記ステップが、非均一なサイズ及び形状の画像パッチを生成することを含む、請求項1に記載の方法。
【請求項5】
前記画像パッチの一群が、重なり合わないパッチを含む、請求項1に記載の方法。
【請求項6】
前記訓練された分類器が、サポートベクトルマシンを含む、請求項1に記載の方法。
【請求項7】
前記訓練された分類器が、サポートベクトルマシンを含み、前記サポートベクトルマシンを訓練するために使用される訓練パッチが、第2のサポートベクトルマシンによって生成される、請求項1に記載の方法。
【請求項8】
前記第2のサポートベクトルマシンが、前記パッチのユーザ選択を含む訓練パッチによって訓練され、データを1つのクラスに分類する1クラスサポートベクトルマシンである、
請求項7に記載の方法。
【請求項9】
前記サポートベクトルマシンが、データを2つのクラスに分類する2クラスサポートベクトルマシンであり、前記第2のサポートベクトルマシンが、前記パッチのユーザ選択を含む訓練パッチによって訓練され、データを1つのクラスに分類する1クラスサポートベクトルマシンである、
請求項7に記載の方法。
【請求項10】
前記特徴を取得するステップが、特徴抽出処理を実行する訓練された画像処理ニューラルネットワークに各パッチを提出することを含み、前記特徴抽出処理が、既知のオブジェクトの画像に対して訓練済みである、請求項1に記載の方法。
【請求項11】
前記画像処理ニューラルネットワークが、畳み込みニューラルネットワークである、請求項10に記載の方法。
【請求項12】
前記画像処理ニューラルネットワークが、少なくとも1,000,000個の画像に対して訓練済みであり、前記様々な既知のオブジェクトが、少なくとも1,000個の異なるクラスの既知のオブジェクトに属するオブジェクトを含む、
請求項10に記載の方法。
【請求項13】
前記既知のオブジェクトの過半数が、生体サンプルのデジタル組織画像ではない、請求項10に記載の方法。
【請求項14】
前記既知のオブジェクトの全てが、生体サンプルのデジタル組織画像ではない、請求項10に記載の方法。
【請求項15】
前記既知のオブジェクトの全てが、前記パッチのユーザ選択と同じ前記対象クラスに存在しない、請求項10に記載の方法。
【請求項16】
コンピューティングデバイスに、ディスプレイ上に前記対象領域の形状をレンダリングさせるステップをさらに含む、請求項1に記載の方法。
【請求項17】
前記対象領域の形状が、少なくとも1つの組織マスクを含む、請求項1に記載の方法。
【請求項18】
前記対象クラスが、少なくとも1つの癌クラスを含む、請求項1に記載の方法。
【請求項19】
前記対象クラスが、以下の組織の種類:異常組織、良性組織、悪性組織、骨組織、皮膚組織、神経組織(nerve tissue)、間質組織、筋肉組織、結合組織、瘢痕組織、リンパ組織、脂肪、上皮組織、神経組織(nervous tissue)、又は血管の少なくとも1つを含む、請求項1に記載の方法。
【請求項20】
前記デジタル組織画像が、組織サンプルスライドのスライド画像を含む、
請求項1に記載の方法。
【請求項21】
デジタル画像の対象領域の少なくとも1つの形状を生成する装置であって、
ソフトウェア命令を保存する、非一時的コンピュータ可読メモリと、
前記非一時的コンピュータ可読メモリと結合されたプロセッサであって、前記ソフトウェア命令の実行時に、
データ記憶装置に格納された生体サンプルのデジタル組織画像へのアクセスを得るステップと、
前記デジタル組織画像を画像パッチの一群にタイルのように重ねずに並べるステップと、
前記画像パッチの一群の各パッチから複数の特徴を取得するステップであって、前記複数の特徴が、次元として前記複数の特徴を含む多次元特徴空間におけるベクトルを定義する、ステップと、
前記画像パッチの一群のパッチのユーザ選択および対象クラスのユーザ選択の入力を受け付けるステップと、
前記パッチの一群の他のパッチの前記ベクトルに訓練された分類器を適用することによって、前記他のパッチを、前記パッチのユーザ選択と同じ対象クラスに属する又は属さないに分類するステップと、
少なくとも部分的に、前記分類するステップの結果に基づいて、1つ又は複数の対象領域を識別するステップと、
を行うプロセッサと、
を含む、装置。
【請求項22】
機械学習システムを訓練するための訓練データを生成する方法であって、
前記方法はコンピュータが実行するものであり、
画像処理エンジンによって、データ記憶装置に格納された生体サンプルのデジタル組織画像へのアクセスを得るステップと、
前記画像処理エンジンによって、前記デジタル組織画像を画像パッチの一群にタイルのように重ねずに並べるステップと、
前記画像処理エンジンによって、前記画像パッチの一群の各パッチから複数の特徴を取得するステップであって、前記複数の特徴が、次元として前記複数の特徴を含む多次元特徴空間におけるベクトルを定義する、ステップと、
前記画像処理エンジンによって、前記画像パッチの一群のパッチのユーザ選択および対象クラスのユーザ選択の入力を受け付けるステップと、
前記パッチの一群の他のパッチの前記ベクトルに訓練された一般分類器を適用することによって、前記他のパッチを、前記パッチのユーザ選択と同じ対象クラスに属する又は属さないに分類するステップと、
前記画像処理エンジンによって、前記パッチのユーザ選択と、前記パッチの一群の前記他のパッチとの分類に基づいて、前記機械学習システムの訓練データを生成するステップと、
を含む、方法。
【発明の詳細な説明】
【技術分野】
【0001】
関連出願の相互参照
本出願は、2017年9月12日に出願された米国仮特許出願第62/557,737号明細書の優先権を主張するものであり、2017年10月23日に出願された米国特許出願第15/791,209号明細書及び2016年10月21日に出願された米国仮特許出願第62/411,290号明細書(それぞれ米国特許商標局に出願)に関連するものである
【0002】
序論
この技術は、一般に認識に関し、幾つかの実施形態に関しては、画像認識に関する。幾つかの実施形態では、本技術は、組織病理学(組織が病変しているか否かを決定し、及び/又は病変した組織を調べるための組織の顕微鏡検査)に関する。組織は、例えば、乳房のしこり、腸、腎臓、肝臓、子宮内膜、肺、胸、リンパ節、筋肉、神経、皮膚、睾丸、甲状腺などの検体を含む身体の部分から除去される。
【背景技術】
【0003】
幾つかの実施形態では、この開示技術は、デジタル画像内の対象領域を識別すること、例えば、背景シーンから前景オブジェクトを識別すること、又はデジタル組織病理学画像内の癌細胞を識別することに関する。癌細胞の癌の種類は、乳癌、膀胱癌、脳腫瘍、肺癌、膵臓癌、皮膚癌、大腸癌、前立腺癌、胃癌、肝臓癌、子宮頸癌、食道癌、白血病、非ホジキンリンパ腫、腎臓癌、子宮癌、胆管癌、骨肉腫、卵巣癌、胆嚢癌、消化管癌、口腔癌、咽喉癌、眼癌、骨盤内癌、脊椎癌、睾丸癌、膣癌、外陰癌、及び甲状腺癌を含み得るが、必ずしもこれらに限定されない。対象領域/対象クラスは、より広くてもよく、異常組織、良性組織、悪性組織、骨組織、皮膚組織、神経組織(nerve tissue)、間質組織、筋肉組織、結合組織、瘢痕組織、リンパ組織、脂肪、上皮組織、神経組織(nervous tissue)、及び血管を含み得る。
【0004】
組織は、生検、手術、又は剖検を含む複数の設定で被験者から収集され得る。組織が被験者から除去された後、これらの組織は、組織の腐敗を防ぐために、ホルマリンなどの固定液中に配置されることによって化学的固定の準備が行われる。次いで、組織は、冷凍されるか、或いは溶けたロウの中に入れられる。次いで、組織の切片がカットされ、スライド上に配置される
【0005】
組織の切片がスライド上に置かれると、病理学者は、顕微鏡を通してスライドを見て、組織が例えば病変しているか否かを決定し、もし病変している場合には、病気のステージを決定する。例えば、病理学者は、乳房のしこりが、乳癌細胞を含むか否かを決定することができ、乳癌細胞を含む場合には、病理学者は、癌のグレード及び/又はステージを決定することができる。病理学者は、組織が病変しているか否か以外の組織に関する決定も行い得る。例えば、病理学者は、組織がリンパ球を含むか否かを決定することができる。しかし、これらの決定は、多くの場合、信頼性を欠き、費用がかかり、時間がかかり、一般に、誤った決定の可能性を最小限に抑えるために複数の病理学者による検証を必要とする点で、これらの決定には技術的問題がある。
【0006】
この技術的問題に対する解決策の1つは、組織のデジタル画像が病変しているか否かを決定するように、並びに病気の種類(例えば、乳癌)及びステージ(例えば、ステージ3)を決定するようにニューラルネットワーク(又は他の機械学習システム)を訓練することによって、癌の種類及び/又はグレードなどの組織特性を決定するためにコンピュータビジョンを使用することである。しかし、この手法には、例えば、病気ごとに大量の訓練データを必要とする(例えば、様々な癌の大量の陽性及び陰性の訓練パッチが必要とされる)点において技術的問題がある。
【発明の概要】
【課題を解決するための手段】
【0007】
本発明の幾つかの実施形態は、上記の技術的問題を解決し、組織が病変している可能性が高いか否かを決定するために、病理学者又は他の人若しくは団体などからの限られた入力と組み合わせて、ニューラルネットワーク、より詳細には、畳み込みニューラルネットワーク及びサポートベクトルマシンを用いる技術的解決策を提供する。
【0008】
特許又は出願ファイルは、カラーで作成された少なくとも1つの図面を含む。1つ又は複数のカラー図面を有する本特許又は特許出願公開のコピーは、依頼及び必要手数料の支払に応じて、米国特許商標局によって提供されるだろう。
【図面の簡単な説明】
【0009】
図1】本発明のある実施形態の1つ又は複数の局面を実装し得る分散コンピュータシステムのブロック図を示す。
図2】本発明のある実施形態の1つ又は複数の局面を実装し得る電子デバイスのブロック図を示す。
図3】本発明のある実施形態の1つ又は複数の局面を実装し得る電子デバイスのアーキテクチャ図を示す。
図4A】本発明のある実施形態の1つ又は複数の局面を実装し得る一般深層学習アーキテクチャを示す。
図4B】本発明のある実施形態の1つ又は複数の局面を実装し得る従来のニューラルネットワークの層を示す。
図4C】本発明のある実施形態の1つ又は複数の局面を実装し得るデバイスのハードウェアアーキテクチャ図を示す。
図5A】本発明のある実施形態の1つ又は複数の局面を実装し得る電子デバイスによって実施されるプロセスを示す。
図5B図5Aのつづきである。
図5C図5Bのつづきである。
図5D図5Cのつづきである。
図6A】本発明のある実施形態の1つ又は複数の局面による、2つのクラスのオブジェクトを示す。
図6B図6Aのオブジェクトのニューラルネットワークの分類結果を示す。
図6C】本発明のある実施形態の1つ又は複数の局面による、2つのクラスのオブジェクトを示す。
図6D図6Cのオブジェクトのニューラルネットワークの分類結果を示す。
図7A】本発明のある実施形態の1つ又は複数の局面を実装する電子デバイスによって処理される組織の複数のパッチを示す図を示す。
図7B図7Aのつづきである。
図7C図7Bのつづきである。
図8】本発明のある実施形態の1つ又は複数の局面による、放射基底関数(RBF)カーネルを有する1クラスサポートベクトルマシン(SVM)を示す。
図9A】本発明のある実施形態の1つ又は複数の局面による、2クラスSVMを示す。
図9B図9Aのつづきである。
図10A】本発明のある実施形態の1つ又は複数の局面に対する、2クラスSVMによる分析に続く陽性パッチの描写を示す。
図10B】本発明のある実施形態の1つ又は複数の局面を実装する電子デバイスによって生成された対象領域の周囲の凸包を示す図を示す。
図11A】本発明のある実施形態の1つ又は複数の局面を実装する電子デバイスによって生成されたグラフィカルユーザインタフェース上に示されるスライド画像を示す。
図11B図11Aのつづきである。
図11C図11Bのつづきである。
図11D図11Cのつづきである。
図11E図11Dのつづきである。
図11F図11Eのつづきである。
図11G図11Fのつづきである。
図11H図11Gのつづきである。
図11I図11Hのつづきである。
【発明を実施するための形態】
【0010】
上記の図面を参照して本発明を説明するが、図面は、例示的であることが意図されたものであり、本発明は、本発明の精神の範囲内の他の実施形態を企図する。
【0011】
例示として本発明が実施され得る具体的な実施形態を示す添付の図面を参照して、これより本発明を以下により完全に説明する。しかし、本発明は、多くの異なる形態で具現化されることが可能であり、本明細書に記載する実施形態に限定されると解釈されるものではない。むしろ、これらの実施形態は、本開示が詳細且つ完全なものとなり、及び当業者に本発明の範囲を完全に伝えるように提供されるものである。中でも、本発明は、デバイス又は方法として具現化され得る。それに応じて、本発明は、完全にハードウェアの実施形態、完全にソフトウェアの実施形態、又はソフトウェア及びハードウェアの局面を組み合わせた実施形態の形を取り得る。従って、以下の詳細な説明は、限定的な意味で解釈されるものではない。
【0012】
本明細書及び特許請求の範囲全体を通して、以下の用語は、文脈上明らかに他の意味を規定する場合を除き、本明細書と明示的に関連する意味を持つ。本明細書で使用する「一実施形態では」、「ある実施形態では」などのフレーズは、同じ実施形態を指す場合もあるが、必ずしもそうではない。さらに、本明細書で使用する「別の実施形態では」というフレーズは、異なる実施形態を指す場合もあるが、必ずしもそうではない。従って、以下に記載するように、本発明の様々な実施形態は、本発明の範囲又は精神から逸脱することなく、容易に組み合わせることができる。
【0013】
さらに、本明細書で使用するように、「又は」という用語は、両立的な「又は」オペレータであり、文脈上明らかに他の意味を規定する場合を除き、「及び/又は」という用語と同等である。「~に基づく」という用語は、排他的ではなく、文脈上明らかに他の意味を規定する場合を除き、記載されていない追加のファクタに基づくことを許容する。さらに、本明細書全体を通して、「a」、「an」、及び「the」の意味は、複数の言及を含む。「~の中に(in)」の意味は、「~の中に(in)」及び「~の上に(on)」を含む。
【0014】
本明細書の記載は、広範囲にわたる概要であることが意図されたものではなく、そのため、概念は、明瞭さ及び簡潔さのために簡略化される場合があることに留意されたい。
【0015】
出願に記載するどのプロセスも、どのような順序で行われてもよく、プロセスのステップの何れも省略し得る。プロセスは、他のプロセス又は他のプロセスのステップと組み合わせられてもよい。
【0016】
図1は、本発明が実施され得る環境の一実施形態のコンポーネントを示す。本発明を実施するために全てのコンポーネントが必要とされるわけではなく、これらのコンポーネントの配置及び種類のバリエーションが、本発明の精神又は範囲から逸脱することなく作成され得る。図示するように、システム100は、1つ又は複数のローカルエリアネットワーク(「LAN」)/広域ネットワーク(「WAN」)112、1つ又は複数の無線ネットワーク110、1つ又は複数の有線又は無線クライアントデバイス106、モバイル又は他の無線クライアントデバイス102~106、サーバ107~109、光学顕微鏡システム111、レーザ113を含み、1つ又は複数のデータ記憶装置又はデータベースを含んでもよく、又はそれらと通信することができる。様々なクライアントデバイス102~106には、例えば、デスクトップコンピュータ、ラップトップコンピュータ、セットトップボックス、タブレット、セルフォン、スマートフォンなどが含まれ得る。サーバ107~109には、例えば、1つ又は複数のアプリケーションサーバ、コンテンツサーバ、検索サーバ、ウェブサーバ、グラフィックスプロセッシングユニット(GPU)サーバなどが含まれ得る。
【0017】
光学顕微鏡システム111は、顕微鏡、接眼レンズアセンブリ、カメラ、スライドプラットフォーム、及び図2に示すような電子デバイス200のコンポーネントを含み得る。図1は、ネットワーク112と通信可能に結合された光学顕微鏡システム111を示すが、サーバ107~109の何れか又は全て、無線ネットワーク110、及び/又はクライアントデバイス102~106の何れかに結合されてもよい。
【0018】
ネットワーク112に接続され得るレーザ113は、癌細胞(又は他の種類の細胞)があると思われる組織部分をカットするために使用され得る。
【0019】
図2は、本発明の一実施形態による双方向ビデオ生成及びレンダリングのシステム及び方法の1つ又は複数の局面を実装し得る電子デバイス200のブロック図を示す。電子デバイス200のインスタンスには、サーバ(例えば、サーバ107~109)、光学顕微鏡システム111、及びクライアントデバイス(例えば、クライアントデバイス102~106)が含まれ得る。一般に、電子デバイス200は、プロセッサ/CPU202、メモリ230、電源206、及び入出力(I/O)コンポーネント/デバイス240(例えばグラフィカルユーザインタフェースを提供するために操作可能となり得る、例えば、マイクロホン、スピーカ、ディスプレイ、スマートフォンディスプレイ、タッチスクリーン、キーボード、マウス、キーパッド、GPSコンポーネントなど)を含み得る。
【0020】
ユーザは、電子デバイス200のタッチスクリーンを用いて入力を提供し得る。タッチスクリーンは、例えば、ユーザが自身の指などのユーザの身体の一部でタッチスクリーンにタッチしているか否かを決定することによって、ユーザが入力を提供しているか否かを決定し得る。電子デバイス200は、電子デバイス200の上述の要素を接続する通信バス204も含み得る。ネットワークインタフェース214は、受信機及び送信機(又は送受信機)と、無線通信のための1つ又は複数のアンテナとを含み得る。
【0021】
プロセッサ202は、任意の種類の処理デバイス(例えば、中央処理装置(CPU))の1つ又は複数を含み得る。また、例えば、プロセッサは、中央処理論理又は他の論理でもよく、1つ又は複数の機能又は動作を行うための、或いは1つ又は複数の他のコンポーネントから1つ又は複数の機能又は動作を生じさせるためのハードウェア、ファームウェア、ソフトウェア、又はそれらの組み合わせを含み得る。また、所望のアプリケーション又は必要性に基づいて、中央処理論理又は他の論理は、例えば、ソフトウェア制御マイクロプロセッサ、個別論理(例えば、特定用途向け集積回路(ASIC))、プログラマブル/プログラム化論理デバイス、命令などを有するメモリデバイス、又はハードウェアで具現化された組み合わせ論理を含み得る。さらに、論理は、ソフトウェアとして完全に具現化されてもよい。電子デバイス200は、GPU(不図示)、ディスプレイデバイスへの出力向けのフレームバッファにおける画像の作成及び処理を加速させるためにメモリの操作及び変更を行うように設計された専用電子回路も含み得る。
【0022】
ランダムアクセスメモリ(RAM)212及び読出し専用メモリ(ROM)232を含み得るメモリ230は、任意の種類のメモリデバイス(例えば、一次(CPUによって直接アクセス可能である)又は二次(CPUによって間接的にアクセス可能である)ストレージデバイス(例えば、フラッシュメモリ、磁気ディスク、光ディスクなど))の1つ又は複数によって可能にされ得る。RAMは、オペレーティングシステム221と、データストレージ224(1つ又は複数のデータベースを含み得る)と、プログラム及び/又はアプリケーション222(例えば、デジタル組織病理学及び顕微解剖プログラム223のソフトウェア局面を含み得る)とを含み得る。ROM232は、電子デバイスの基本入出力システム(BIOS)220も含み得る。
【0023】
プログラム223は、本発明の実施形態による方法及びシステムを実装するため又は容易にするために必要な全てのプログラミング、アプリケーション、アルゴリズム、ソフトウェア、及び他のツールを広く含むこと、又は表すことを意図したものである。双方向ビデオ生成及びレンダリングプログラムのシステム及び方法の要素は、単一のサーバコンピュータ上に存在してもよく、又は複数のコンピュータ、サーバ、デバイス又は団体(広告主、パブリッシャー、データプロバイダなどを含み得る)に配布されてもよい。双方向ビデオ生成及びレンダリングプログラムのシステム及び方法が、複数のコンピュータ、サーバ、デバイス、又は団体に配布される場合、このような複数のコンピュータは、例えば図1に示すように通信する。
【0024】
電源206は、1つ又は複数の電力コンポーネントを含み、電子デバイス200への電力の供給及び管理を容易にする。
【0025】
入出力(I/O)インタフェース240を含む入出力コンポーネントは、例えば、電子デバイス200のあらゆるコンポーネントと、外部デバイスのコンポーネント(例えば、ネットワーク又はシステム100の他のデバイスのコンポーネント)と、エンドユーザとの間の通信を容易にするためのあらゆるインタフェースを含み得る。例えば、このようなコンポーネントは、受信機、送信機、送受信機、及び1つ又は複数の入出力インタフェースの統合でもよいネットワークカードを含み得る。例えば、ネットワークカードは、ネットワークの他のデバイスとの有線又は無線通信を容易にし得る。無線通信の場合、アンテナが、このような通信を容易にし得る。また、入出力インタフェース240の幾つか及びバス204は、電子デバイス200のコンポーネント間の通信を容易にすることができ、一例では、プロセッサ202によって行われる処理を軽減することができる。
【0026】
電子デバイス200がサーバである場合、それは、例えば有線又は無線ネットワークを介して信号の送信又は受信が可能となり得る、或いは例えば物理的メモリ状態としてのメモリ内で信号の処理又は保存が可能となり得るコンピューティングデバイスを含み得る。サーバは、ネットワークを介して、1つ又は複数のアプリケーション(例えば、双方向ビデオ生成及びレンダリングのシステム及び方法の局面)を別のデバイスに提供するための構成を含むアプリケーションサーバでもよい。また、アプリケーションサーバは、例えば、双方向ビデオ生成及びレンダリングのシステム及び方法の例示的局面の運営のためのユーザインタフェースを提供することができるウェブサイトをホスティングし得る。
【0027】
双方向ビデオ生成及びレンダリングのシステム及び方法の実装の局面を容易にする際などに、有線及び/又は無線ネットワーク上でデータの送信、受信、及び処理を行うことが可能なコンピューティングデバイスもサーバとして機能することができる。従って、サーバとして機能するデバイスには、専用ラックマウント式サーバ、デスクトップコンピュータ、ラップトップコンピュータ、セットトップボックス、前述のデバイスの1つ又は複数を組み合わせた集積デバイスなどのデバイスが含まれ得る。
【0028】
サーバは、構成及び能力において大きく異なり得るが、サーバは、一般に、1つ又は複数の中央処理装置、メモリ、大規模データストレージ、電源、有線又は無線ネットワークインタフェース、入出力インタフェース、及びWindows(登録商標) Server、Mac OS X、Unix(登録商標)、Linux(登録商標)、FreeBSDなどのオペレーティングシステムを含む。
【0029】
サーバは、例えば、双方向ビデオ生成及びレンダリングの例示的システム及び方法の局面を容易にする際などに、1つ又は複数のネットワークを介して、データ又はコンテンツを別のデバイスに提供するように構成された、又はそれを行うための構成を含むデバイスを含み得る。例えば、ウェブサイトwww.microsoft.comなどのウェブサイトをホスティングする際に、1つ又は複数のサーバが使用され得る。1つ又は複数のサーバは、例えば、ビジネスサイト、情報サイト、ソーシャルネットワーキングサイト、教育サイト、Wiki、金融サイト、政府サイト、個人サイトなどの各種サイトをホスティングし得る。
【0030】
サーバは、例えば、ウェブサービス、第三者サービス、オーディオサービス、ビデオサービス、電子メールサービス、HTTP又はHTTPSサービス、インスタントメッセージング(IM)サービス、ショートメッセージサービス(SMS)サービス、マルチメディアメッセージングサービス(MMS)サービス、ファイル転送プロトコル(FTP)サービス、ボイスオーバーアイピー(VOIP)サービス、カレンダリングサービス、電話サービスなど(これらは全て、双方向ビデオ生成及びレンダリングの例示的システム及び方法の例示的局面と協働し得る)の各種サービスも提供し得る。コンテンツは、例えば、テキスト、画像、音声、動画などを含み得る。
【0031】
双方向ビデオ生成及びレンダリングのシステム及び方法の例示的局面では、クライアントデバイスには、例えば、有線及び/又は無線ネットワーク上でデータの送信及び受信を行うことが可能などのようなコンピューティングデバイスも含まれ得る。このようなクライアントデバイスには、デスクトップコンピュータ、並びにセルラー電話、スマートフォン、ディスプレイポケットベル、無線周波(RF)デバイス、赤外線(IR)デバイス、携帯型情報端末(PDA)、ハンドヘルドコンピュータ、GPS対応デバイスタブレットコンピュータ、センサ装備デバイス、ラップトップコンピュータ、セットトップボックス、ウェアラブルコンピュータ、前述のデバイスの1つ又は複数を組み合わせた集積デバイスなどのポータブルデバイスが含まれ得る。
【0032】
双方向ビデオ生成及びレンダリングの例示的システム及び方法において使用され得るようなクライアントデバイスは、能力及び特徴に関して多岐にわたり得る。例えば、セルフォン、スマートフォン、又はタブレットは、数字キーパッドと、テキストのみが表示され得る数行のモノクロ液晶表示(LCD)ディスプレイとを有し得る。別の例では、ウェブ対応クライアントデバイスが、物理的又は仮想キーボード、データストレージ(フラッシュメモリ又はSDカードなど)、加速度計、ジャイロスコープ、GPS又は他の位置認識能力、並びにテキスト及びグラフィックスの両方が表示され得る2D又は3Dのタッチセンサ式カラースクリーンを有し得る。
【0033】
例えば、双方向ビデオ生成及びレンダリングの例示的システム及び方法において使用され得るようなクライアントデバイス102~106などのクライアントデバイスは、Windows、iOS、又はLinuxなどのパーソナルコンピュータオペレーティングシステム、及びiOS、Android(登録商標)、Windows Mobile(登録商標)などのモバイルオペレーティングシステムを含む各種オペレーティングシステムを走らせ得る。クライアントデバイスは、別のコンピューティングデバイスからデータを送信又は受信するように構成された1つ又は複数のアプリケーションを走らせるために使用され得る。クライアントアプリケーションは、テキストコンテンツ、マルチメディア情報などの提供及び受信を行い得る。クライアントアプリケーションは、ウェブページのブラウジング、ウェブサーチエンジンの使用、スマートフォンに保存された様々なアプリとのインタラクション、電子メール、SMS、又はMMSによるメッセージの送信及び受信、ゲーム(ファンタジースポーツリーグなど)のプレイ、広告の受信、ローカルで保存又はストリームされたビデオの視聴、又はソーシャルネットワークへの参加などのアクションを行うことができる。
【0034】
双方向ビデオ生成及びレンダリングのシステム及び方法の例示的局面において、例えば、ネットワーク110又は112などの1つ又は複数のネットワークは、サーバ及びクライアントデバイスを他のコンピューティングデバイスに結合し得る(無線ネットワークを介してクライアントデバイスへを含む)。ネットワークは、ある電子デバイスから別の電子デバイスへと情報の通信を行うためのコンピュータ可読媒体のどのような形式も用いることが可能にされ得る。ネットワークは、ローカルエリアネットワーク(LAN)、広域ネットワーク(WAN)、直接接続(ユニバーサルシリアルバス(USB)ポートを用いるなど)、他の形式のコンピュータ可読媒体、又はこれらの任意の組み合わせに加えて、インターネットを含み得る。相互接続されたLANのセット(異なるアーキテクチャ及びプロトコルに基づくものを含む)に対して、ルータが、LAN間のリンクとして機能し、データがあるLANから別のLANへと送信されることを可能にする。
【0035】
LAN内の通信リンクは、ツイストペア線又は同軸ケーブルを含み得るが、ネットワーク間の通信リンクは、アナログ電話回線、ケーブル回線、光回線、T1、T2、T3、及びT4を含む完全又は部分的専用デジタル回線、デジタル総合サービス網(ISDN)、デジタル加入者回線(DSL)、衛星リンクを含む無線リンク、光ファイバリンク、又は当業者に公知の他の通信リンクを利用し得る。さらに、リモートコンピュータ及び他の関連の電子デバイスが、モデム及び電話回線を介してLAN又はWANにリモートで接続されてもよい。
【0036】
双方向ビデオ生成及びレンダリングの例示的システム及び方法において見られるような無線ネットワーク110などの無線ネットワークは、デバイスをネットワークに結合することができる。無線ネットワークは、スタンドアロンアドホックネットワーク、網目状ネットワーク、無線LAN(WLAN)ネットワーク、セルラーネットワークなどを用い得る。
【0037】
無線ネットワークは、無線ラジオリンクなどによって接続された端末、ゲートウェイ、ルータなどの自律システムをさらに含み得る。これらのコネクタは、無線ネットワークのトポロジーが急激に変化し得るように、自由に及びランダムに移動し、任意にコネクタを編成するように構成されてもよい。無線ネットワークは、第2(2G)、第3(3G)、第4(4G)世代を含む複数のアクセス技術、セルラーシステム用のロングタームエボリューション(LTE)無線アクセス、WLAN、無線方式ルータ(WR)メッシュなどをさらに用い得る。2G、2.5G、3G、4Gなどのアクセス技術及び未来のアクセスネットワークは、様々な度合いのモビリティを備えたクライアントデバイスなどのクライアントデバイスに対する広域カバレージを可能にし得る。例えば、無線ネットワークは、Global System for Mobile communication(GSM)(登録商標)、Universal Mobile Telecommunications System(UMTS)、General Packet Radio Services(GPRS)、Enhanced Data GSM Environment(EDGE)、3GPP(登録商標) Long Term Evolution(LTE)、LTE Advanced、Wideband Code Division Multiple Access(WCDMA(登録商標))、Bluetooth(登録商標)、802.11b/g/nなどの無線ネットワークアクセス技術を用いた無線接続を可能にし得る。無線ネットワークには、それによって情報がクライアントデバイス及び別のコンピューティングデバイス、ネットワークなどの間を移動し得る事実上どのような無線通信機構も含まれ得る。
【0038】
インターネットプロトコル(IP)が、デジタル通信ネットワークに参加するネットワーク上でデータ通信パケットを送信するために使用されてもよく、インターネットプロトコル(IP)には、TCP/IP、UDP、DECnet、NetBEUI、IPX、Appletalkなどのプロトコルが含まれ得る。インターネットプロトコルのバージョンは、IPv4及びIPv6を含む。インターネットは、ローカルエリアネットワーク(LAN)、広域ネットワーク(WAN)、無線ネットワーク、及びローカルエリアネットワーク間でパケットが通信されることを可能にし得る長距離公衆網を含む。パケットは、それぞれが固有のローカルネットワークアドレスを有するサイトへとネットワークのノード間で送信され得る。データ通信パケットは、インターネットにより、ユーザサイトからインターネットに接続されたアクセスノードを介して送られ得る。パケットは、ターゲットサイトのサイトアドレスがパケットのヘッダに含まれる場合には、ネットワークに接続されたターゲットサイトへとネットワークノードを通して転送され得る。インターネット上で通信される各パケットは、ターゲットアドレス及びターゲットサイトへと接続するためのネットワーク経路の可用性に応じてパケットを切り替えるゲートウェイ及びサーバによって決定された経路を通して送られ得る。
【0039】
パケットのヘッダは、例えば、送信元ポート(16ビット)、宛先ポート(16ビット)、シーケンス番号(32ビット)、確認番号(32ビット)、データオフセット(4ビット)、予約(6ビット)、チェックサム(16ビット)、緊急ポインタ(16ビット)、オプション(長さが8ビットの倍数の様々なビット数)、パディング(全てゼロから成る場合があり、ヘッダが32ビット境界上で終わるような幾つかのビットを含む)を含み得る。上記のそれぞれのビット数は、より大きくても、或いはより小さくてもよい。
【0040】
双方向ビデオ生成及びレンダリングの例示的システム及び方法において使用され得るような「コンテンツ配信ネットワーク」又は「コンテンツ配布ネットワーク」(CDN)は、一般に、コンテンツプロバイダを代表してコンテンツ、ストリーミングメディア、及びアプリケーションの保存、キャッシング、又は送信などの様々なサービスを容易にするように設計されたソフトウェア、システム、プロトコル、及び技術と共に、1つ又は複数のネットワークによってリンクさせた自律コンピュータの一群を含む分散コンピュータシステムを指す。このようなサービスは、限定されないが、「クラウドコンピューティング」、分散ストレージ、DNSリクエストハンドリング、プロビジョニング、データモニタリング及び報告、コンテンツターゲティング、個人化、及びビジネスインテリジェンスを含む補助技術を利用し得る。CDNは、第三者を代表して、全体的に又は部分的に第三者のウェブサイトインフラストラクチャの操作及び/又は管理を団体が行うことも可能にし得る。
【0041】
ピアツーピア(又はP2P)コンピュータネットワークは、主に、ネットワークの参加者の計算能力及び処理能力に依存する(それを所与の専用サーバのセットに集結させるのではなく)。P2Pネットワークは、一般的に、主にアドホック接続によりノードを接続するために使用される。純粋なピアツーピアネットワークは、クライアント又はサーバの概念を持たないが、ネットワーク上の他のノードに対して「クライアント」及び「サーバ」の両方として同時に機能する同一のピアノードのみを有する。
【0042】
本発明の一実施形態は、デジタル組織病理学及び顕微解剖に関連したシステム、方法、及びコンピュータプロセッサによって実行され得るコンピュータプログラム論理を有形的に保存する1つ又は複数の非一時的コンピュータ可読ストレージ媒体を含む。
【0043】
上述の通り、組織サンプル(「サンプル」)が、病変している、又は具体的に癌に罹患しているなどの特定の特性を有するか否かに関して詳しく調べるため及び決定を行うために様々な病理学者に完全に依存する方法は、信頼性を欠き、費用がかかり、又は時間がかかり得る。一方、決定がニューラルネットワークによってのみ行われる場合、病気の種類及びグレードなどの様々な組織特性ごとに、大量の訓練データ(陽性及び陰性の訓練データの両方を含む)が必要となり得るが、これは、収集が困難である。例えば、このような訓練データの生成は、多数の画像について、このような画像が、特定の病気又はサンプルの画像の他の特性に対して陽性又は陰性であるかに関して、一人又は複数の病理学者から入力を受け取る必要があり得る。
【0044】
本発明の一実施形態は、サンプルが病変しているか否かを決定することを含む。以下に記載する実施形態は、具体的に癌に言及する。しかし、本発明の実施形態は、サンプルの他の特性に関する決定を行うために使用されてもよい。例えば、本発明の実施形態は、サンプルが他の病気又は病気のグレードを示すか否かを決定するために使用することができる。別の例として、本発明の実施形態は、サンプルがリンパ球を含むか否かを決定するために使用することができる。
【0045】
本発明の実施形態は、画像の1つ又は複数のパッチが癌の特定の種類又はグレードに対して陽性又は陰性であるかに関して、コンピュータビジョン及び一人又は複数の病理学者からの入力を用いて、サンプルが癌性であるか否かを決定することに関する。他の実施形態は、サンプル(例えば、画像、音、パターンなど)が、基準(例えば、人、物体、音、パターンなどを認識するための基準)を満たすことに対して陽性又は陰性であるかを認識することに関する。
【0046】
コンピュータビジョンは、1つ又は複数のデジタル画像からの有用な情報の自動抽出、分析、及び理解に関する。例えば、コンピュータビジョンを使用して、写真中の人の年齢を、デジタル画像中のこの人の顔の位置を決定し、この人の両眼の位置を決定し、及びこの人の瞳孔間距離を測定することによって決定することができる。
【0047】
機械学習の分野では、畳み込みニューラルネットワーク(「CNN」)は、コンピュータビジョンの分野で使用され得る人工ニューラルネットワークである。Christian Szegedyらによる論文「Rethinking the Inception Architecture for Computer Vision」(arXiv:1512.00567v3[cs.CV]11 Dec 2015)は、コンピュータビジョンにおけるCNNの使用を論じる
【0048】
図3は、本発明の一実施形態の1つ又は複数の局面を実装し得る電子デバイスのアーキテクチャ図を示す。図3は、デジタル画像を処理して対象領域321を出力する画像処理エンジン301を含む。画像処理エンジン301は、タイル生成エンジン303、特徴抽出エンジン305、ユーザ選択エンジン307、SVM訓練エンジン308、分類エンジン309、及びグループ化エンジン317を含む。画像処理エンジン301は、CNN319、デジタル組織画像データベース323、訓練パッチデータベース302F及び302J、陽性1クラスサポートベクトルマシン(SVM)311、陰性1クラスSVM313、及び2クラスSVM315に結合される(例えば、通信する)。画像処理エンジン301は、他のデジタル画像を分類するようにCNN329を訓練するための訓練データとして画像処理エンジン301の出力を利用することができるCNN329にも結合される。
【0049】
図4Aは、CNNの深層学習アーキテクチャを示す。CNNは、図4Bに示すように複数の層と、各層において複数のパラメータ(入力サイズ)とを有する。図4Bは、層の種類、パッチサイズ、及び各層の入力サイズに関する情報を含む。パラメータの値は、CNNの出力を決定する。
【0050】
CNN319は、組織サンプルの画像(又はこのような画像のパッチ)の入力が提供され、CNN319は、出力として、複数(例えば、2048個)の画像特徴値(すなわち、特徴抽出又は視覚的記述子の特徴表現)を提供し得る。このような出力は、線形層からのものであるだろう。図4Bにおいて線形層の真下に示されるソフトマックス層は、使用される必要がない場合があり、CNN319のアーキテクチャから除去されてもよい。組織サンプルの画像は、スライド画像、具体的にはデジタル組織病理学画像でもよい。
【0051】
図5Aは、本発明のある実施形態の1つ又は複数の局面を実装し得る電子デバイスによって実施されるプロセスを示す。より詳細には、図5Aは、組織学の技師が組織サンプルをスライスすることから始まり、技師がシステムによって癌性(又は別の病気)であると決定されたサンプル部分をサンプルからカットすることで終了するエンドツーエンドハイレベルプロセスを示す。図4Cに示すハードウェアアーキテクチャ図を参照する。図4Cは、簡単にするために、特定のハードウェアを省略していることを理解されたい。例えば、図4Cは、ネットワーク、スイッチ、ルータなどを示していない。しかし、当業者は、クライアントがネットワークを介してサーバ又は他のクライアントに接続され、サーバが、ネットワークを介してサーバに接続されることを理解するだろう。すなわち、例えば、図4Cのクライアント401及び403は、図1のクライアントデバイス102~106、光学顕微鏡システム111、又はレーザ113の何れであってもよく、図4Cのサーバ405、407、409、及び411は、図1のサーバ107~109であってもよい。別の方法では、以下に記載する処理の何れも、任意の他のデバイス上で行われ得る(例えば、ウェブサーバ上で生じる処理が、代わりにGPUサーバ上で行われ得る)。
【0052】
図5Aのステップ500Aでは、組織学の技師が、塊の組織サンプルを受け取り、この組織サンプルを薄く及び厚くスライスする。薄いスライスを用いてスキャンを行い、薄いスライスの関連部分が識別されると、厚いスライスが、顕微解剖に使用される。技師は、例えば、病院、診療所、研究所などにいる場合がある。
【0053】
ステップ500Bでは、技師は、例えばヘマトキシリン及びエオシン(H&E)を用いて薄いスライスを染色し、デジタル組織画像(ホールスライド画像(WSI)とも呼ばれる)を生成するためにH&Eガラススライドをスキャンする。スキャニングには、200,000×200,000解像度スキャナを使用し得る。単一WSIは、サイズが約5GBとなり得る。
【0054】
ステップ500Cでは、クライアント401又はクライアント403を使用して、技師は、WSIをウェブサーバ405にアップロードする(複数のウェブサーバが存在し得るが、簡単にするために1つのみを示す)。次いで、ウェブサーバ405は、複数のWSI及び関連のメタデータを保存するファイルサーバ407にWSIを送信する。次いで、ウェブサーバ405は、ウェブサーバ上で走る待行列エンジンを使用して、負荷バランシングアルゴリズムに基づいてWSIをパッチ及び追加の特徴に分割するために、GPUサーバ409又は411のどちらを使用するかを決定する。GPUサーバが選択されると、ウェブサーバ405は、選択されたGPUサーバ(GPUサーバ409など)に対して、WSIをパッチに分割し、GPUサーバ409上で走る畳み込みニューラルネットワークを使用して特徴を抽出するように(図5Bのステップ505を参照して以下により詳細に論じるように)命令を送信する。
【0055】
ステップ500Dでは、GPUサーバ409(又は411)が畳み込みニューラルネットワークを用いて特徴を抽出すると、GPUサーバ409(又は411)は、WSIに関連付けられたメタデータ(メタデータは、パッチ位置、パッチサイズ(例えば、400×400ピクセル)、及びGPUサーバ409によって抽出されたパッチの各特徴の値を含む)を保存するようにメッセージをファイルサーバ407に送信する。次いで、メタデータは、ファイルサーバ407に保存され(保存されたWSIに関連付けられ)、何れのGPUサーバ(例えば、409及び411)又はウェブサーバ405によってもアクセスすることができる。
【0056】
ステップ500Eでは、WSIの全パッチに関して、メタデータが生成され、ファイルサーバ407に保存されると、ウェブサーバ405によって、WSIの全パッチに関するメタデータが生成されたという通知が、病理学者などのユーザに送られる。病理学者は、例えば、クライアント403のユーザでもよい。
【0057】
ステップ500Fでは、クライアント403のユーザは、図5Bのステップ507を参照して以下により詳細に論じるように、1つ又は複数の陽性パッチと、0以上の陰性パッチとを選択する。次いで、ユーザの選択が、クライアント403からウェブサーバ405へと送信され、次に、ウェブサーバ405は、これらの選択をWSIと関連付けられたメタデータとして保存するためにファイルサーバ407へと送信する。
【0058】
ステップ500Gでは、ユーザの選択及び抽出された特徴に基づいて、ウェブサーバは、図5Bのステップ509、511、及び513に関して以下に詳細に論じるように、顕微解剖マスクなどのマスクを生成する。
【0059】
ステップ500Hでは、ウェブサーバ405は、クライアント401の技師にマスクを送信する。次いで、ステップ500Jにおいて、技師は、レーザ113を使用して、マスクで識別された厚いスライド組織サンプルの部分をカットする。
【0060】
図5Bは、本発明のある実施形態の1つ又は複数の局面を実装し得る電子デバイスによって実施されるプロセスを示す。より詳細には、図5Bは、生体サンプルのデジタル組織画像を受信し、部分的にユーザ入力及び機械学習に基づいて、癌の可能性が高い部分を決定するための方法を示す。上記で図5Aを参照して論じたように、上記部分が決定されると、生体サンプルの一部が、さらなる処理のために顕微解剖され得る。図5Bのステップは、図示される順序で行われてもよく、別の順序で行われてもよい。例えば、ステップ503は、ステップ505又はステップ507の後に行われてもよい。
【0061】
本発明のある実施形態によれば、CNN319が、入力として関連の組織サンプル画像(すなわち、テストサンプル)(又はこのような画像のパッチ)を受信し、出力として画像特徴値を提供するより前に、CNN319は、一般画像(すなわち、癌細胞の画像ではない、及び癌細胞のない画像)に関して訓練され得る。すなわち、CNN319は、訓練された一般分類器と見なすことができる。例えば、CNN319は、ImageNet画像を使用して訓練され得る。ImageNetは、視覚的物体認識ソフトウェア研究で使用するための大規模視覚データベースであり、これは、いわゆるWordNet階層(現在、大規模な名詞リストを含む)に従って編成され、階層の各ノードは、多数の画像(例えば、500個)を含む。例えば、http://www.image-net.org/を参照のこと。例えば、ImageNetは、階層に編成された以下の名詞ごとに多数の画像を含む:動物、脊椎、ほ乳類、有胎盤、霊長類、サル、ヒヒ、マンドリル。各カテゴリは、同義語及び/又は関連用語(例えば、動物は、生物、獣、生き物の関連用語を含む)を含み得る。WordNet中の各用語(すなわち、画像の各クラス)に関する多数の画像は、追加の物体、背景などと共に、様々なポーズ、時点、年齢、位置、画質、色の関連の対象を示す。例えば、階層に1000個のノードが存在し得る。最初にCNN319を訓練するために使用される複数の画像には、例えば、必ずしも何らかの病気に関連しない様々な一般画像の複数の画像(又はパッチ)が含まれ得る。一例では、CNN319は、数十万、或いは数百万ものこのような画像に関して事前に訓練されている。
【0062】
CNN319、陽性1クラスSVM311、陰性1クラスSVM313、2クラスSVM315、1クラスSVM訓練パッチ302F、2クラスSVM訓練パッチ302J、テストパッチ323、及び対象領域321も、サーバ107~109上で保存及び実行が行われてもよく、或いは、その代わりに、1つ又は複数のクライアントデバイス102~106、又はサーバ107~109及び/又はクライアントデバイス102~106の組み合わせ上で保存及び実行が行われてもよい。より詳細には、SVM311、313、及び315は、図4Cのウェブサーバ405上で保存及び実行が行われてもよい。
【0063】
訓練されたCNN319を使用して、分類が未知である生体サンプルの画像のパッチ(すなわち、テストパッチ)から特徴を抽出することができる。CNN319が訓練されると、「テスト」パッチと共に使用する準備が整う。テストパッチ323などのテストパッチは、光学顕微鏡システム111の顕微鏡、接眼レンズアセンブリ、カメラ、及びスライドプラットフォームを用いて捕捉されたかもしれない実際の患者の組織サンプルからのパッチである。
【0064】
ステップ502では、画像処理エンジン301は、生体サンプルのデジタル組織画像へのアクセスを得る。ユーザは、図11Cに示すような生体サンプルのデジタル組織画像(すなわち、ホールスライド画像)の選択に関する指示を提供され得る。デジタル画像は、例えば、SVS、TIFF、VMS、VMU、NDPI、SCN、MRXS、SVSLIDE、BIF、PDF、JPG、BMP、GIF、及びその他のデジタル画像フォーマットなどの様々な形式のものでよい。また、デジタル画像は、サーバ上に存在してもよく、それは、大型画像(サイズが多くのGB)であってもよく、画像は、クラウドに保存されてもよく、及び図5Bの全ての分析は、クラウドで行われてもよい。クラウドは、サーバ107~109を含み得る。しかし、図5Bのステップは、1つ又は複数のクライアントデバイス102~106、又はサーバ107~109及び/又はクライアントデバイス102~106の組み合わせで行われてもよい。処理は、並行であって、複数のサーバ上で行われてもよい。デジタル画像は、以下:組織の種類、組織の提供者、スキャナ、染色剤、染色法、作成者の識別子、画像サイズ、サンプル識別子、追跡識別子、バージョン番号、ファイル形式、画像年月日、症状、診断、治療を行った医師の識別情報、組織の提供者の病歴、組織の提供者の人口統計情報、組織の提供者の家族の病歴、及び組織の提供者の人種の少なくとも1つと関連付けられたデジタル情報を含む生体サンプルメタデータを含み得る。
【0065】
ステップ503では、タイル生成エンジン303が、デジタル組織画像を画像パッチ323(テストパッチ323)の一群にタイルのように重ねずに並べる。テストパッチ323中の各タイル/パッチは、例えば、1000×1000ピクセル以下、400×400ピクセル以下、256×256ピクセル以下、又はその他の適宜のピクセル数でもよい。タイルのように重ねずに並べるステップは、繰り返し、或いは1つ又は複数のコンピュータによって並行して行われ得る。タイルのように重ねずに並べることは、均一なサイズ及び均一な形状を有する画像パッチを生成することを含み得る。パッチのサイズは、以前の陽性パッチ302D及び以前の陰性パッチ302E(癌、癌のグレード、テストパッチ323の疑われる癌の特定の種類若しくはグレード、又はその他の病気に対して陽性又は陰性であると病理学者によって以前に選択されたパッチ)のサイズの関数でもよい。例えば、陽性又は陰性であると病理学者によって以前に選択されたパッチが400×400パッチであった場合、タイル生成エンジン303は、画像を同一サイズ(400×400)のパッチ、又は以前のパッチのサイズの1%、3%、5%、10%、20%、25%、若しくは30%以内にタイルのように重ねずに並べ得る。
【0066】
ステップ503では、テストパッチ323は、均一なサイズ及び形状を有していても、或いは均一なサイズ及び形状を有していなくてもよい。例えば、1つのパッチが400×400であり、別のパッチが300×300又は300×200であってもよい。また、パッチは正方形である必要はなく、長方形、円形、楕円形、又はより複雑な形状であってもよい。様々なプロセスが、ペンローズタイルのように重ねずに並べること、バルクエクスクルージョン、及び/又はバウンドボックスなどのタイルのように重ねずに並べることに使用され得る。
【0067】
ステップ503では、生成されたパッチが、重なり合っていても、或いは重なり合っていなくてもよい。すなわち、デジタル画像の同じエリアが、2つ以上のタイル/パッチに含まれてもよく、或いは含まれなくてもよい。
【0068】
生成されたパッチは、テストパッチ323として、サーバ107~109及び/又はクライアントデバイス102~106、又はサーバ107~109及び/又はクライアントデバイス102~106の組み合わせのメモリに保存される。
【0069】
ステップ505では、特徴抽出エンジン305が、テストパッチ323の各パッチから複数の特徴を抽出し、それらをテストパッチ323内にメタデータ又は別個のデータ構造として、或いはテストパッチ323の外で別個のデータベース/データ構造に保存する。具体的には、特徴抽出エンジン305は、パッチ323から画像特徴を抽出する。一実施形態では、特徴抽出エンジン305は、CNN319(例えば、Inception v3に基づき、例えばImageNet画像などの多種多様な画像に関して訓練されたもの)によって有用であると識別された特徴を抽出する。特徴抽出エンジン305は、画像から特徴を抽出するために、完全に訓練されたCNN319を利用する。一実施形態では、特徴抽出エンジン305は、訓練されたCNN319と通信し、一度に1つずつ、或いは単一のコール/メッセージで、CNN319に特徴抽出のためにパッチ323を提供する。CNN319は、特徴抽出エンジン305から各パッチを受信し、最上部の畳み込み層から始まり、最下部から2つ目の線形層までの図4Bに示す層を通して、各パッチ323を処理する。線形層は、出力として、入力パッチを表す多数の特徴(例えば、2048個)を提供し、図3に示すように、2048個の特徴値を特徴抽出エンジン305に提供する。これらの値は、例えば、アレイ、ベクトル、リンクリスト、又は他の適宜のデータ構造でCNN319によって特徴抽出エンジン305に提供され得る。次いで、これらの特徴は、テストパッチ323に保存され得る。
【0070】
ステップ505では、特徴抽出エンジン305は、全てのテストパッチ323から特徴を抽出する代わりに、ピクセルコンテンツの関数として、テストパッチ323からパッチを識別/選択し得る。例えば、識別は、画像パッチ内のピクセルのカラーチャネルに基づいて、パッチをフィルタリングすることを含み得る。例えば、識別は、パッチの分散の関数として行われ得る。パッチの分散は、特定のパッチにおける、赤、緑、青(RGB)チャネル、及び/又は色相、彩度、値(HSV)、及び/又は色相、彩度、及び/又は明るさ(HLS)、及び/又は色相、彩度、輝度(HIS)の分散に基づき得る。このステップは、細胞を含むパッチのみが考慮されることを確実にすることを助ける。ステップ505が完了すると、細胞を有するパッチのみが、特徴抽出のために識別/選択され得る。
【0071】
ステップ507では、ユーザ選択エンジン307が、画像パッチの一群のユーザ選択サブセットのユーザ選択を決定する。ユーザは、図11Dに示すようなユーザ選択を行うことに関する指示を提供され得る。すなわち、ユーザ選択エンジン307によって制御されるグラフィカルユーザインタフェース(GUI)は、ユーザ(病理学者、又は1つ若しくは複数の場所にいる一人若しくは複数の病理学者)にテストパッチ323を示す。例えば、図7A~7Cは、ユーザに示され得る複数のパッチを示す。ユーザは、スクリーン、スマートフォンスクリーン、タブレット、タッチスクリーンなどの入出力インタフェース240上で、図7A、7B、又は7Cに類似のGUIをユーザ選択エンジン307によって示され得る(より多くの、又はより少ないパッチが示されてもよい)。図11E及び11Fは、ユーザが1つの陽性パッチを選択した後の状態におけるGUIを示す。ユーザは、自分が陽性或いは陰性パッチを選択していることを示すために、陽性/陰性ドロップダウンを選択し得る。ユーザが陽性又は陰性を選択すると、ユーザは、1つ又は複数のパッチをクリックして、それらを選択し得る。ユーザが、選択においてミスをしたかもしれないと考える場合には、クリアボタンをクリックし、パッチの選択を新たに開始することができる。図11Eに示すように、「穴埋め」チェックボックスにチェックマークが付けられると、癌に対して陽性であるとユーザによって選択されたエリア内に、穴(ユーザによって選択されない1つ又は複数のパッチのエリア)が存在する場合、穴(非選択エリア)は、それにもかかわらず、癌に対して陽性であるとユーザによって選択されたかのように扱われ、それに応じて埋められる(ユーザが陰性パッチを選択している場合にも、同じことが当てはまる)。ユーザが、自分が望む全ての陽性又は陰性パッチを選択したと確信すると、ユーザは、コミットボタンをクリックし得る。
【0072】
まず、ユーザは、陽性パッチ(すなわち、癌、癌の特定の種類若しくはグレード、又は他の関連の病気に対して陽性であるとユーザが考えるパッチ)又は陰性パッチ(すなわち、癌、癌の特定の種類若しくはグレード、又は他の関連の病気に対して陰性であるとユーザが考えるパッチ)のどちらを選択するのかを選択し得る。選択が行われると、ユーザは、1つ又は複数の陽性又は陰性パッチを選択する(ユーザが上記で陰性又は陽性パッチのどちらを選んだかに応じて)。任意選択的に、ユーザは、陽性パッチを最初に選択してもよく、或いは陽性パッチのみを選択し、陰性パッチは選択しなくてもよい。ユーザが、適切な数のパッチを選択したと満足すれば、ユーザがパッチの特定のセット(陽性又は陰性)の選択を終えたことをユーザ選択エンジン307に知らせるために、ユーザは、「コミット」(又は類似の)ボタンを選択し得る。
【0073】
次いで、ユーザによって選択されたあらゆる陽性パッチが、SVM訓練パッチ302F、具体的には現在の陽性パッチ302Bに保存され、ユーザによって選択されたあらゆる陰性パッチが、現在の陰性パッチ302Cに保存される。全ての選択されたパッチが保存されてもよく、又はテストパッチ323中のパッチの識別子が参照されてもよい(例えば、10,000個のテストパッチ323があり、それぞれが1~10,000の識別子を有する場合、現在の陽性パッチ302B及び現在の陰性パッチ302Cは、それぞれがテストパッチ323中のあるテストパッチを参照する複数の識別子を保存し得る。例えば、ステップ507のユーザ選択に続いて、ユーザ選択エンジン307は、識別子8、500、1011、5000、及び9899と共に、現在の陽性パッチ302Bにリンクリストを保存し得る。同様に、ユーザ選択エンジン307は、識別子10、550、1015、4020、及び9299と共に、現在の陰性パッチ302Cにリンクリストを保存し得る。
【0074】
ユーザの選択は、画像処理エンジン301が、癌に対して陰性である可能性が高い又は陽性である可能性が高い他のテストパッチ323を正しく決定することを助ける。ユーザが陽性及び陰性パッチを正しく選択すると仮定して、画像処理エンジン301は、陽性であると分かっている(ステップ507における陽性パッチのユーザ選択により)パッチをテストパッチ323中の他のパッチと比較し、陽性1クラスサポートベクトルマシン(SVM)311、陰性1クラスSVM313、及び2クラスSVM315に関して以下により詳細に論じるように、テストパッチ323中の候補テストパッチと、ユーザ選択された陽性パッチとの間の特徴距離に基づいて、このようなパッチを陽性の可能性が高いものとして選択し得る。同様に、画像処理エンジンは、陰性の可能性が高いパッチを決定するために、ユーザ選択された陰性パッチ及びテストパッチ323を比較し得る。
【0075】
画像処理エンジン301が、以下に詳細に論じるように、ステップ501で一般画像を用いて、且つSVM311、313、及び315を使用せずに訓練されたCNN319を使用して、陽性の可能性が高い又は陰性の可能性が高いパッチを選択することは可能であるが、図6A~6Dに示すようなこのようなプロセスは、以下により詳細に論じるように、分類エラーを有し得る。
【0076】
図6Aは、2つのクラスの画像:(1)松及び竹(「竹」)と、(2)餃子とを示す。図6Aの画像は、CNN、例えば、ImageNetなどの一般画像に関して訓練されたInception v3に入力される。ImageNet訓練に基づいて、CNNの線形層は、図6Aに示す各テスト画像に関して2048個の特徴を生成する。次いで、画像処理エンジン301は、各画像と他の各画像との間の距離(CNNの線形層によって抽出された2048個の特徴のユークリッド/L2距離など)(すなわち、画像ペア間の距離)を計算する。2048個の特徴の内のどれが特に重要であるかを決定し、特定の特徴を他の特徴よりも重く重み付けする修正L2距離を生成するようにそれらの重みを増加させるために、分析が行われ得る。先験的に距離閾値を用いることにより、システムは、複数の画像ペアを同じクラスに存在するものとして分類する。ユーザが、陽性画像/パッチに関する選択を行うと、システムは、上記分析を用いて合致するパッチを見つける。ユーザによって選択された陰性パッチに関して同じ分析が行われ得る。
【0077】
図6Bは、上記で論じたような図6Aの画像の分類結果を示す縦棒グラフを示す。x軸は、(CNN319によって抽出された2048個の特徴の値の)ペアのL2距離の差を表す。y軸は、そのL2距離内に入るペアの値の正規化数を示す正規化ヒストグラムである。
【0078】
図6Bによれば、各緑の棒(すなわち、左から8つの棒)は、合致ペア(すなわち、竹-竹、又は餃子-餃子)を示し、各赤い棒(右端近くの最後の2つの棒)は、非合致ペア(すなわち、竹-餃子)を示す。図6Bにより示唆されるように、ユーザが、先験的にL2距離閾値を決定して、L2距離に基づいて非合致ペアから合致ペアをプログラムで分けることが可能となり得る。例えば、約18のL2距離が選ばれた場合(ここでは、L2距離が18以下であったあらゆる画像ペアが、合致と見なされ、L2距離が18を超えたあらゆる画像ペアが、非合致と見なされた)、これは、合致ペア及び非合致ペアの正確な結果を提供するように思われ得る。
【0079】
しかし、図6C~6Dに見られるように、上記の手法は、他の画像セットに関して上手く機能しない場合がある。図6Cは、図6Aと同様に、2つのクラスの画像:(1)竹及び(2)餃子を示す。図6Bと同様に、図6Dは、図6Cの画像の分類結果を示す縦棒グラフを示す。しかし、図6Dに見られるように、図6A~6Bと同じプロセスを使用して、幾つかの非合致ペア(赤い棒)は、合致ペア(緑の棒)よりも短いL2距離を有する。従って、閾値以下のL2距離を有する合致ペアのみ、及び閾値を超えるL2距離を有する非合致ペアのみを含むL2距離閾値を先験的に選択することは、可能ではない場合がある。
【0080】
そして、病理学サンプルにおいて、(例えば、色及び輝度の)テスト画像/パッチのばらつきは、図6A~6Dの場合よりも分類をさらに難しくする。従って、病理学サンプルに図6A~6Dのマッチング法を使用すると、画像/パッチのさらに誤った合致ペアがもたらされ得る。
【0081】
再び図5Bを参照し、ステップ507において陽性及び/又は陰性パッチのユーザ選択が決定されると、2クラスSVM315の訓練画像が、ステップ509において決定される。以下で図5Cを参照して、ステップ509をさらに詳細に記載する。
【0082】
ステップ509Aでは、SVM訓練エンジン308が、現在の陽性パッチ302B(すなわち、現在のテストパッチ323からユーザによって選択された陽性パッチ)にアクセスする(一般に、現在の陽性パッチ302Bなどのデータは、直接アクセスされてもよく、又は以前の若しくは他のエンジン(この場合、ユーザ選択エンジン307)によって、現在のエンジン(SVM訓練エンジン308)に提供されてもよい)。次いで、ステップ509Bにおいて、SVM訓練エンジン308は、以前の陽性パッチ302Dにアクセスする。例えば、SVM訓練エンジン308は、全ての又は所定数(2、3、5、10、15、20、30、50、又は100など)の最も新しく選択された以前の陽性パッチ302Dを選択してもよく、或いはSVM訓練エンジン308は、テストパッチ323において疑われるのと同じ種類の癌/病気に関係する以前のテストパッチから選択された全ての又は所定数の以前の陽性パッチ302Dを選択してもよく、或いはSVM訓練エンジン308は、現在のユーザによって選択された全ての又は所定数の以前の陽性パッチ302Dを選択してもよい。
【0083】
現在の陽性パッチ302Bは、ユーザがそれらを選択したため、正確である高いレベルの確率が存在する。しかし、以前の陽性パッチ302Dは、他の画像/パッチ(現在のテストパッチ323ではない)からのパッチを含む。従って、現在の陽性パッチ302Bと比較して関連する以前の陽性パッチ302Dのみを選択することによって、それらがテストパッチ323に関連するか否かを決定する必要がある。このような決定は、ステップ509C~509Dで行われる。
【0084】
ステップ509Cでは、SVM訓練エンジン308が、陽性1クラスSVM311にアクセスし、図8に示すように、陽性1クラスSVM311を訓練する。SVMは、分類及び回帰分析(我々のケースでは、分類)に使用されるデータを分析する関連の学習アルゴリズムを備えた教師あり学習モデルである。まず、SVMは、入力として、1つ又は複数のクラスの訓練データ(例えば、画像)を受信する。次いで、SVMは、新しいテスト画像が属するクラスを決定することができる訓練データに基づいたモデルを構築する。1クラスSVMは、それが分類する単一クラスの画像を有する。
【0085】
図8は、本発明のある実施形態の1つ又は複数の局面による、放射基底関数(RBF)カーネルを有する1クラスSVMを使用した結果の一例を示す。見て分かるように、図8は、801、803、及び805を含む複数の縞を示す。図8は、陽性1クラスSVM311を訓練するために使用されるパッチである緑の訓練観測802も示す。訓練観測は、現在の陽性パッチ302B(又は所定数の現在の陽性パッチ302B)のみを含む。
【0086】
現在の陽性パッチ302Bが、陽性1クラスSVM311を訓練するために陽性1クラスSVM311に入力されると、SVMは、現在の陽性パッチ302Bを表すために本実施形態で使用される2048次元特徴空間のデータ点(ベクトル)に基づくガウス分布を使用して縞を生成する。次いで、テストパッチが陽性1クラスSVM311に入力されると、2つの最も内側のピンクの楕円状領域801内のテストパッチ323が、現在の陽性パッチ302Bに最も類似する。2つのピンク領域801を完全に包囲する最も内側の最も暗い青の縞803は、最も内側のピンク領域内のパッチ(又は一般に、訓練パッチ(現在の陽性パッチ302B))よりも類似の度合いが低いパッチを含む。領域805は、ピンク領域801からさらに遠く、これらの領域内のパッチは、ピンク領域801内のパッチよりもさらに類似の度合いが低い。
【0087】
SVM訓練エンジン308は、どの縞が、訓練データ(この場合、陽性パッチ)のクラスへの包含を示し、どの縞が除外を示すかを決定する。例えば、SVM訓練エンジン308は、領域801及び803内に存在すると決定された以前の陽性パッチ302D(観測)のみが、訓練データ(この例では、現在の陽性パッチ302B)と同じクラス内の包含を示すことを決定し得る(或いは、それが予め決定され得る)。すなわち、陽性1クラスSVM311が領域801又は803内に存在すると決定する以前の陽性パッチ302Dが、現在の陽性パッチ302Bと同じクラス内に存在すると見なされる。すなわち、訓練に続いて、SVM訓練エンジン308は、陽性1クラスSVM311への入力として以前の陽性パッチ302Dのサブセット(又は全て)を提供する。陽性1クラスSVM311は、訓練データに基づいて各パッチの領域を決定し、領域801又は803内に存在する以前の陽性パッチ302Dのみが同じクラス内に存在すると決定する。
【0088】
ステップ509Cにおいて陽性1クラスSVM311を用いて、以前の陽性パッチ302Dのどれが、現在の陽性パッチ302Bと同じクラス内に存在するかを決定する上記のプロセスが、他の異常値検出手段によって行われ得ることに留意されたい。例えば、以前の陽性パッチ302D中のどのパッチを異常値として除去するかを決定するために、楕円エンベロープ、又はアイソレーションフォレスト(例えば、2分木を使用してデータアノマリを検出する)が、1クラスSVMの代わりに、又は1クラスSVMと組み合わせて使用され得る。
【0089】
ステップ509Eにおいて、以前の陽性パッチ302Dのどれが、現在の陽性パッチ302Bと同じクラス内に存在するかをSVM訓練エンジン308が決定すると、現在の陽性パッチ302B及び選択された以前の陽性パッチ302D(陽性1クラスSVMによって選択された)の両方が、組み合わせられ、2クラス陽性訓練パッチ302Gとして保存される(パッチは、画像として、又は関連のテストパッチ323に対する識別子として保存され得る)。これらのパッチ302Gは、次に、2クラスSVM315を訓練するために使用される。
【0090】
次いで、同様のプロセスが、陰性パッチに関して行われ得る。すなわち、ステップ509Fにおいて、ステップ509Aと同様に、現在の陰性パッチ302Cがアクセスされ得る。ステップ509Gでは、ステップ509Bと同様に、以前の陰性パッチ302Eがアクセスされ得る。ステップ509Hでは、ステップ509Cと同様に、陰性1クラスSVM313が訓練され得る。ステップ509Jでは、ステップ509Dと同様に、以前の陰性パッチ302Eのサブセットが決定され得る。ステップ509Kでは、ステップ509Eと同様に、現在の陰性パッチ302Cが、以前の陰性パッチ302Eのサブセットと組み合わせられ、2クラス陰性訓練パッチ302Hに保存され得る。
【0091】
代替方法として、陰性1クラスSVM313を用いてステップ509F~509Kを行う代わりに、陽性及び陰性パッチの両方に陽性1クラスSVM311が使用されてもよい。すなわち、例えば、ユーザによって現在の陰性パッチ302Cが提供されていない場合には、SVM訓練エンジン308は、陽性1クラスSVM311を使用して、2クラス陰性訓練パッチ302Hとして使用する以前の陰性パッチを決定してもよい。
【0092】
具体的には、ステップ509Fにおいてアクセスする現在の陰性パッチが存在しないので、ステップが省かれる。ステップ509Gでは、以前の陰性パッチ302Eがアクセスされる。ステップ509Hは、省かれてもよく、代わりに、訓練された陽性1クラスSVMが使用される。ステップ509Jは、内側の縞801及び803内に存在する以前の陰性パッチ302Eを選択する代わりに、縞801及び803内に存在しない以前の陰性パッチ302Eのみが選択されるように変更される。すなわち、現在の陽性パッチ302Bに十分に類似していない以前の陰性パッチ302Eのみが選択される(縞805など)。次いで、選択された以前の陰性パッチ302E(又はそれらの識別子)が、2クラス陰性訓練パッチ302Hに保存される。以前の陰性パッチ302Eが存在しなければ、SVM訓練エンジン308は、他のシステムのユーザによって選択された、或いはどのユーザにも選択されたことはないが陰性パッチの特性を持つストック陰性パッチを保存してもよい。この代替方法では、これらのストック陰性パッチは、以前の陰性パッチ302Eに保存されてもよい。
【0093】
2クラス陽性訓練パッチ302G及び2クラス陰性訓練パッチ302Hが決定されると、SVM訓練エンジン308は、ステップ509Lにおいて、パッチ302G及び302Hを用いた2クラスSVM315の訓練に移る。すなわち、2クラスSVM315の2つのクラスは、陽性パッチ及び陰性パッチであり、1クラスSVM311及び313によって決定されたそれぞれの陽性及び陰性パッチによって保存される。
【0094】
ステップ509Lでは、2クラス陽性訓練パッチ302G(図9Aの右上に1つの例外を有して示される)及び2クラス陰性訓練パッチ302H(図9Aの左下に示される)が(線形)2クラスSVM315に提供されると、マージン幅(2つの平行破線間の幅)を最大にするように、2クラスSVM315は、陰性サポートベクトル(下の破線が交差する円で囲まれたパッチ)及び陽性サポートベクトル(上の破線が交差する円で囲まれたパッチ)を選択する。超平面は、2つの破線間の中点に示される実線である。図9Bは、同様である。
【0095】
ステップ509Lにおいて、2クラスSVM315において超平面が決定されると、図5Bのステップ509が完了する。
【0096】
ステップ511において、分類エンジン309は、入力として、テストパッチ323の全て又はサブセットを現在訓練されている2クラスSVM315に提供する。次いで、訓練された2クラスSVM315は、各テストパッチ323を、図9A~9Bに示すように、パッチが超平面の陽性側にあれば陽性パッチ(例えば、癌に対して陽性)であると分類し、パッチが超平面の陰性側にあれば陰性パッチ(例えば、癌に対して陰性)であると分類する。ステップ511が完了すると、各テストパッチ323は、陽性又は陰性としてマークが付けられる。
【0097】
ステップ511の分類が完了すると、システムは、ステップ513(グループ化ステップ)に移る。ステップ513において、陽性であると決定されたテストパッチ323が、他の近傍陽性パッチと共にグループ化される。同様に、陰性であると決定されたテストパッチ323が、他の近傍陰性パッチと共にグループ化される。図5Dを参照して、ステップ513を以下にさらに詳細に記載する。
【0098】
一般に、凸包の生成によるプロセスは、以下の通りである。(1)2クラスSVMに基づいて、パッチグリッドマップを構築し(陽性は1、陰性は0)、(2)隣接カーネルを用いてこのマップを畳み込み、(3)主ブロブを作成する。各ブロブ内で、各パッチは、少なくとも7.5のスコアを有し、全てのパッチが接続される必要があり、(4)補助ブロブを作成し、各補助ブロブ内で、各パッチは、少なくとも4.0のスコアを有し、全てのパッチが接続される必要があり、及び(5)主ブロブ及び補助ブロブのそれぞれに関して凸包を構築する。
【0099】
ステップ513Aにおいて、グループ化エンジン317は、各テストパッチ323及びその近傍パッチを分析することによって、確率スコアを決定する。具体的には、スコアは、以下のように決定される。0から開始し、パッチ自体が関連のクラス(陽性又は陰性)として分類されている場合に2を加算し、同じクラス(すなわち、陽性又は陰性)と分類された真上、真下、左隣り、及び右隣りの各パッチに対して1を加算し、同じクラスと分類された各近傍角パッチに対して0.5を加算する。
【0100】
例えば、図10Aは、テストパッチ323の代表的部分を示す。特定のパッチ内のPは、パッチが陽性であることを2クラスSVM315が決定したことを示す。例えば、パッチ(2,4)(列2,行4)を分析すると、このパッチは、7.5の確率スコアを有する。パッチ自体(2,4)が2クラスSVM315によって陽性であると決定されているので、2を加算する。関連パッチの上、下、左、及び右にある各パッチ(1,4)、(2,5)、(3,4)、及び(2,3)に対して1を加算する。そして、3つの近傍角パッチ(1,5)、(3,5)、及び(3,3)のそれぞれに対して0.5を加算する。(1,3)は、陽性として示されていないので、このパッチに関して、確率スコアに0.5は加算されない。従って、その確率スコアは、2+4+1.5=7.5となる。
【0101】
別の例として、パッチ(4,2)は、5.0のスコアを有する(パッチ(3,2)、(4,3)、(5,2)、及び(4,1)のそれぞれに対して1.0、並びに角パッチ(3,3)及び(5,3)のそれぞれに対して0.5)。
【0102】
ステップ513Bによれば、全てのテストパッチ323に対して上記のプロセスが行われると、7.5以上の確率スコアを有するパッチが、主ブロブと見なされ、4.0以上の確率スコアを有するパッチが、補助エリアと見なされる(これらの数字は単なる例であり、異なる数字が使用され得る)。より詳細には、2つのバイナリマップ(主及び補助)が生成される。主バイナリマップは、7.5以上のスコアを有するパッチのみを含み、補助バイナリマップは、4.0以上のスコアを有するパッチのみを含む。
【0103】
ステップ513Cにおいて、グループ化エンジン317が、全ての主ブロブに関して、凸包、ラインストリング、及び点を生成し、凸包内の全てのパッチに対して7.5(又は、凸包内の何れかのパッチの最高スコア)の確率スコアを割り当てる。
【0104】
図10Bは、複数の陽性パッチ(又は場合によっては陰性パッチ。図5Dのプロセスが、陽性パッチに対して行われ、次いで、陰性パッチに対して行われる)の周囲の生成された凸包を示す。
【0105】
ステップ513Dにおいて、グループ化エンジン317が、補助ブロブに関して、凸包、ラインストリング、及び点を生成し、凸包内の全てのパッチに対して4.0(又は、凸包内の何れかのパッチの最高スコア)の確率スコアを割り当てる。
【0106】
ステップ513Eにおいて、グループ化エンジン317は、主ブロブ及び補助ブロブが重なり合うジオメトリを有する場合には、補助ブロブを主ブロブとマージする。ある凸包(例えば、主ブロブ凸包)の頂点の1つが、他の凸包(例えば、補助ブロブ/エリア凸包)内に存在する場合に、重なり合うジオメトリの決定が下される。すなわち、ある凸包内の各頂点に関して、それがその他の凸包内に存在するか否かをシステムが決定している。別の凸包内に頂点が存在しなければ、2つの凸包は、重なり合っていない。
【0107】
ステップ513Fにおいて、凸包、ラインストリング、又は点が交差すれば、グループ化エンジン317は、最大重複基準を用いて、凸包を一緒にグループ化する。
【0108】
ステップ513Gにおいて、各主ブロブの確率が、以下のように決定される。Probabilityprimary=k*primary_patch_countであり、kは、0.1、0.2、0.3、0.4、又は0.5などの定数であり、primary_patch_countは、特定の主ブロブのパッチ数である。定数kは、ユーザによって設定されてもよく、或いは予め決められてもよい。例えば、kが0、1であり、且つprimary_patch_countが13の場合、確率は、0.1*13=1.3である。上記の計算の目的は、多数のパッチを含む陽性パッチを含有する可能性が高いと識別されたブロブが、より少ない数のパッチを有するブロブよりも陽性である可能性が高いことを考慮に入れることである。
【0109】
ステップ513Hにおいて、主ブロブにマージされる各補助エリア/ブロブの確率スコアが、以下のように決定される。Probabilitysupporting=k*supporting_patch_count/jであり、kは、0.1、0.2、0.3、0.4、又は0.5などの定数であり、supporting_patch_countは、特定の主ブロブにマージされる全ての補助ブロブにおけるパッチ数のパッチカウントであり、Jは、50、60、70、80、90、100、110、120、130、140、又は150などの定数である。例えば、kが0、5であり、supporting_patch_countが300であり、jが100である場合、確率は、0.5*300/100=1.5である。最後に、Probabilitysupporting≧k又は別の定数である場合、Probabilitysupportingは、kに設定される。例えば、上記の例において、Probabilitysupportingが1.5であると決定されたので、Probabilitysupportingは、kの値(0.5)に設定される。
【0110】
ステップ513Jにおいて、主ブロブ及び主ブロブにマージされる補助エリア/ブロブの最終確率は、以下のように決定される。Probabilityfinal=Probabilityprimary+Probabilitysupportingである。例えば、Probabilityprimaryが0.7であり、Probabilitysupportingが0.5である場合、最終確率は、1.2である。しかし、最終確率が1.0よりも大きければ、最終確率は、1.0に設定される。従って、上記の例においては、最終確率は、1.0に設定される。
【0111】
ステップ513Kにおいて、グループ化エンジン317は、最終グループ化凸包を用いて、グループ内の凸包の何れかの最大スコアに確率を再び割り当てる。次いで、凸包のスコアが、対象領域321に保存され、1.0などの閾値を超えるあらゆる凸包に関して、このような凸包は、図11A~11B及び11G~Hにおいて、陽性又は陰性パッチの高い可能性を示すために緑で示される。例えば、緑は、陽性パッチの高い可能性を示し得る。本発明の実施形態を用いて、サンプル/画像の様々な特性の陽性パッチの高い可能性を示すことができる。例えば、図11A~11B及び11G~11Hでは、緑は、癌の陽性パッチの高い可能性を示し、図11Iの緑は、リンパ球の高い可能性を示す。
【0112】
次いで、対象領域(ROI)321(複数の領域を含み得る)が、ステップ513Kからの出力に基づいて生成され得る。対象領域321は、さらなる処理のためにターゲットROIを切除するために、レーザ顕微解剖を行う際に使用され得る顕微解剖マスクなどの組織マスクを含み得る。ROIのサイズ及びROIの質に基づいて、特定のROIのみが、顕微解剖マスクとして使用され得る。すなわち、あるROIは、顕微解剖に適していない場合がある。
【0113】
本明細書に記載する実施形態は、サンプル中の対象組織領域の分類をより効率的且つより迅速に生成するために、病理学者の入力と組み合わせた少数ショット学習を実装する。病理学者は、もはや、画像中の全ての対象領域の輪郭を手作業で描く必要はない。むしろ、本明細書に記載の少数ショット学習技術を用いたシステムは、対象領域を識別するプロセスを少なくとも部分的に自動化することによって、病理学者の作業を加速させる助けとなる。別の実施形態では、開示した実施形態の出力が、深層学習ネットワーク(図3に示すCNN329など)又は大量の訓練データを必要とする他の機械学習システムを訓練するための訓練データとして使用される。これは、訓練データがより効率的に生成されることを可能にする。
【0114】
特定の例示的実施形態を本明細書に記載したが、これらの実施形態は、限定ではなく単なる例として提示されるものであることが理解されるものとする。実施形態を具体的に図示及び説明したが、形態及び詳細において様々な変更が成され得ることが理解されるだろう。特定の特徴及び/又はコンポーネントの組み合わせを有するものとして様々な実施形態を記載したが、上述したような実施形態の何れかからの何れかの特徴及び/又はコンポーネントの組み合わせを有する他の実施形態が可能である。
図1
図2
図3
図4A
図4B
図4C
図5A
図5B
図5C
図5D
図6A
図6B
図6C
図6D
図7A
図7B
図7C
図8
図9A
図9B
図10A
図10B
図11A
図11B
図11C
図11D
図11E
図11F
図11G
図11H
図11I