(57)【要約】腫瘍を検出するためのシステムおよび方法である。患者の３次元スキャンが、造影剤の注入前および／または後に、透過放射線を用いて実行される。生密度アレイがスキャンから形成される。臓器内の密度の中央値が計算され、そして、オフセットアレイを形成するために、生密度アレイそれぞれから減算される。オフセットアレイは、ペア毎に減算され、そして、弁別器アレイを形成するために差分が加算される。
2020530797.tif 000002
【特許請求の範囲】
【請求項１】
腫瘍を検出するための方法であって、
複数の生密度アレイそれぞれにおいて、それぞれの生密度アレイの領域の中でそれぞれの中央値を決定するステップであり、
前記複数の生密度アレイそれぞれは、複数のアレイ要素を有する３次元アレイであり、前記生密度アレイそれぞれは、それぞれの時点と関連付けられており、前記生密度アレイそれぞれの各要素は、それぞれの時点における患者の一部分の密度を表している、
ステップと、
複数のオフセット密度アレイを形成するステップであり、
それぞれが前記生密度アレイそれぞれに対応しており、
前記オフセット密度アレイを形成するステップは、前記生密度アレイそれぞれから、前記それぞれの中央値を減算するステップを含む、
ステップと、
第１差分アレイを形成するステップであり、
前記第１差分アレイを形成するステップは、第１オフセット密度アレイから、第２オフセット密度アレイを減算するステップを含み、
前記第２オフセット密度アレイは、前記第１オフセット密度アレイより後の時点と関連付けられている、
ステップと、
第２差分アレイを形成するステップであり、
前記第２差分アレイを形成するステップは、第３オフセット密度アレイから、第４オフセット密度アレイを減算するステップを含み、
前記第４オフセット密度アレイは、前記第３オフセット密度アレイより後の時点と関連付けられている、
ステップと、
弁別器アレイを形成するステップであり、
前記弁別器アレイを形成するステップは、前記第１差分アレイと前記第２差分アレイとを加算するステップを含む、
ステップと、
を含む、方法。
【請求項２】
前記方法は、さらに、
前記複数の密度アレイを受信するステップを含み、前記複数の密度アレイそれぞれは、前記患者における放射線撮影密度を表す密度アレイである、
請求項１に記載の方法。
【請求項３】
前記弁別器アレイを形成するステップは、さらに、
前記第１差分アレイおよび前記第２差分アレイそれぞれにおいて、ゼロより小さいあらゆる値をゼロで置き換えるステップ、を含む、
請求項１に記載の方法。
【請求項４】
前記第１オフセット密度アレイは、前記第３オフセット密度アレイと同一である、
請求項１に記載の方法。
【請求項５】
前記方法は、さらに、
前記第１差分アレイおよび前記第２差分アレイを含み、かつ、オフセット密度アレイの全てのペアに対する差分アレイを含む、複数の差分アレイを形成するステップ、を含み、
前記差分アレイそれぞれは、より早いオフセット密度アレイから、後のオフセット密度アレイを減算することによって形成されており、
前記後のオフセット密度アレイは、前記より早いオフセット密度アレイより後の時点と関連付けられている、
請求項１に記載の方法。
【請求項６】
前記複数の生密度アレイは、４つの生密度アレイから構成されており、
最も早い時点に関連付けられた最も早い生密度アレイ、および、前記最も早い時点より遅い時点に関連付けられた３つの後の生密度アレイを含んでおり、
前記３つの後の生密度アレイと関連付けられた３つの時点それぞれは、約３０秒だけ分離されている、
請求項１に記載の方法。
【請求項７】
前記方法は、さらに、
前記複数の生密度アレイのうち第１生密度アレイを獲得するために、患者について第１のコンピュータ体軸断層撮影スキャンを実行するステップと、
前記患者の中へ造影剤を注入するステップと、
前記患者の中へ造影剤を注入してから約３０秒後に、前記複数の生密度アレイのうち第２生密度アレイを獲得するために、前記患者について第２のコンピュータ体軸断層撮影スキャンを実行するステップと、
を含む、請求項１に記載の方法。
【請求項８】
オブジェクトは患者であり、かつ、前記領域は前記患者の臓器に対応している、
請求項１に記載の方法。
【請求項９】
前記弁別器アレイを形成するステップは、さらに、
前記臓器内に存在しないボクセルに対応する各要素をゼロに設定するステップ、を含む、
請求項８に記載の方法。
【請求項１０】
前記方法は、さらに、
前記弁別器アレイの２次元図をディスプレイ上に表示するステップ、を含む、
請求項１に記載の方法。
【請求項１１】
前記弁別器アレイを形成するステップは、さらに、
前記弁別器アレイの各要素をゼロに設定するステップであり、前記各要素は、
前記複数のオフセット密度アレイのうち最も早いオフセット密度アレイから、
前記複数のオフセット密度アレイのうち２番目に早いオフセット密度アレイを減算することによって形成される、差分アレイのうち、
対応する要素が、ゼロより小さいかゼロに等しく、かつ、
前記２番目に早いオフセット密度アレイのうち対応する要素が、ゼロより小さい、
ステップ、を含み、
前記最も早いオフセット密度アレイは、前記複数の生密度アレイのうち、最も早い時点と関連付けられた、生密度アレイから形成されており、かつ、
前記２番目に早いオフセット密度アレイは、前記複数の生密度アレイのうち、２番目に早い時点と関連付けられた、生密度アレイから形成されている、
請求項１に記載の方法。
【請求項１２】
前記弁別器アレイを形成するステップは、さらに、
前記弁別器アレイの各要素をゼロに設定するステップであり、前記各要素は、
あらゆる前記生密度アレイについて、対応する要素が、上限閾値よりも大きい値または下限閾値よりも小さい値を有する、
ステップ、を含む、
請求項１に記載の方法。
【請求項１３】
腫瘍を検出するためのシステムであって、
透過放射線を用いてオブジェクトをスキャンするためのスキャナであり、患者を通過する前記透過放射線の透過率を測定する、スキャナと、
処理回路と、
ディスプレイと、を含み、
前記処理回路は、
複数の生密度アレイそれぞれにおいて、それぞれの生密度アレイの領域の中でそれぞれの中央値を決定し、
前記複数の生密度アレイそれぞれは、複数のアレイ要素を有する３次元アレイであり、前記生密度アレイそれぞれは、それぞれの時点と関連付けられており、前記生密度アレイそれぞれの各要素は、それぞれの時点における患者の一部分の密度を表しており、
複数のオフセット密度アレイを形成し、
それぞれが前記生密度アレイそれぞれに対応しており、
前記オフセット密度アレイを形成することは、前記生密度アレイそれぞれから、前記それぞれの中央値を減算することを含んでおり、
第１差分アレイを形成し、
前記第１差分アレイを形成することは、第１オフセット密度アレイから、第２オフセット密度アレイを減算することを含んでおり、
前記第２オフセット密度アレイは、前記第１オフセット密度アレイより後の時点と関連付けられており、
第２差分アレイを形成し、
前記第２差分アレイを形成することは、第３オフセット密度アレイから、第４オフセット密度アレイを減算することを含んでおり、
前記第４オフセット密度アレイは、前記第３オフセット密度アレイより後の時点と関連付けられており、
弁別器アレイを形成し、
前記弁別器アレイを形成することは、前記第１差分アレイと前記第２差分アレイとを加算することを含んでいる、
ように構成されている、
システム。
【請求項１４】
前記弁別器アレイを形成することは、さらに、
前記第１差分アレイおよび前記第２差分アレイそれぞれにおいて、ゼロより小さいあらゆる値をゼロで置き換えること、を含む、
請求項１３に記載のシステム。
【請求項１５】
前記第１オフセット密度アレイは、前記第３オフセット密度アレイと同一である、
請求項１３に記載のシステム。
【請求項１６】
前記処理回路は、さらに、
前記第１差分アレイおよび前記第２差分アレイを含み、かつ、オフセット密度アレイの全てのペアに対する差分アレイを含む、複数の差分アレイを形成し、
前記差分アレイそれぞれは、より早いオフセット密度アレイから、後のオフセット密度アレイを減算することによって形成されており、
前記後のオフセット密度アレイは、前記より早いオフセット密度アレイより後の時点と関連付けられている、
ように構成されている、請求項１３に記載のシステム。
【請求項１７】
前記複数の生密度アレイは、４つの生密度アレイから構成されており、
最も早い時点に関連付けられた最も早い生密度アレイ、および、前記最も早い時点より遅い時点に関連付けられた３つの後の生密度アレイを含んでおり、
前記３つの後の生密度アレイと関連付けられた３つの時点それぞれは、約３０秒だけ分離されている、
請求項１３に記載のシステム。
【請求項１８】
前記オブジェクトは患者であり、かつ、前記領域は前記患者の臓器に対応している、
請求項１３に記載のシステム。
【請求項１９】
前記弁別器アレイを形成することは、さらに、
前記臓器内に存在しないボクセルに対応する各要素をゼロに設定すること、を含む、
請求項１８に記載のシステム。
【請求項２０】
前記弁別器アレイを形成することは、さらに、
前記弁別器アレイの各要素をゼロに設定すること、を含み、各要素は、
前記複数のオフセット密度アレイのうち最も早いオフセット密度アレイから、
前記複数のオフセット密度アレイのうち２番目に早いオフセット密度アレイを減算することによって形成される、差分アレイのうち、
対応する要素が、ゼロより小さいかゼロに等しく、
前記２番目に早いオフセット密度アレイのうち対応する要素が、ゼロより小さく、
前記最も早いオフセット密度アレイは、前記複数の生密度アレイのうち、最も早い時点と関連付けられた、生密度アレイから形成されており、かつ、
前記２番目に早いオフセット密度アレイは、前記複数の生密度アレイのうち、２番目に早い時点と関連付けられた、生密度アレイから形成されている、
請求項１３に記載のシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明に従った実施形態の１つまたはそれ以上の態様は、腫瘍検出のためのシステムおよび方法に関する。そして、より特定的には、コンピュータ体軸断層撮影スキャンデータ（computerized  axial  tomography  scan  data）において腫瘍を検出するためのアルゴリズムに関する。
【０００２】
本出願は、2017年8月14日に出願された、タイトルが”SBTRACTION  ALGORITHM  FOR  DETERCTION  OF  TUMORS”の米国仮特許出願第62/545,410号、および、2018年8月13日に出願された、タイトルが”SBTRACTION  ALGORITHM  FOR  DETERCTION  OF  TUMORS”の米国特許出願第16/102,449号について優先権および利益を主張するものであり、その内容全体が参照によりここにおいて組み込まれている。
【０００３】
本出願は、2017年4月17日に出願された、タイトルが”SYSTEM  AND  METHOD  FOR  COMBINING  3D  IMAGES  IN  COLOR”の米国特許出願第15/489,652号に関連しており、その内容全体が参照によりここにおいて組み込まれている。
【背景技術】
【０００４】
コンピュータ体軸断層撮影スキャンは、患者の内部組織の画像を獲得するために使用され得る。そして、そうした画像は、患者における、腫瘍といった、異常の徴候（indications）を示し得る。しかしながら、これらの指示は微妙なものであり、存在する異常の診断を失敗するリスク、または、正常な臓器に異常が存在すると誤って結論付けるリスクを結果として生じることがある。
【０００５】
従って、腫瘍を検出する改良されたシステムおよび方法に対する必要性が存在している。
【発明の概要】
【０００６】
本開示の実施形態の態様は、腫瘍を検出するためのシステムおよび方法に向けられている。患者の３次元スキャンが、造影剤（contrast  agent）の注入前および／または後で、透過放射線を用いて実行される。生密度アレイ（raw  density  array）が、スキャンから形成される。臓器内の密度の中央値（median  density）が計算され、そして、オフセットアレイを形成するために、生密度アレイから減算（subtracted）される。オフセットアレイは、ペア毎（pairwise）に減算され、そして、弁別器アレイ（discriminator  array）を形成するために、差分が合計(summed)される。
【０００７】
本発明の一つの実施形態に従って、腫瘍を検出するための方法が提供される。本方法は、複数の生密度アレイそれぞれにおいて、それぞれの生密度アレイの領域の中でそれぞれの中央値を決定するステップであり、前記複数の生密度アレイそれぞれは、複数のアレイ要素を有する３次元アレイであり、前記生密度アレイそれぞれは、それぞれの時点と関連付けられており、前記生密度アレイそれぞれの各要素は、それぞれの時点における患者の一部分の密度を表しているステップと、複数のオフセット密度アレイを形成するステップであり、それぞれが前記生密度アレイそれぞれに対応しており、前記オフセット密度アレイを形成するステップは、前記生密度アレイそれぞれから、前記それぞれの中央値を減算するステップを含む、ステップと、第１差分アレイを形成するステップであり、前記第１差分アレイを形成するステップは、第１オフセット密度アレイから、第２オフセット密度アレイを減算するステップを含み、前記第２オフセット密度アレイは、前記第１オフセット密度アレイより後の時点と関連付けられているステップと、第２差分アレイを形成するステップであり、前記第２差分アレイを形成するステップは、第３オフセット密度アレイから、第４オフセット密度アレイを減算するステップを含み、前記第４オフセット密度アレイは、前記第３オフセット密度アレイより後の時点と関連付けられているステップと、弁別器アレイを形成するステップであり、前記弁別器アレイを形成するステップは、前記第１差分アレイと前記第２差分アレイとを加算するステップを含む、ステップ、を含む。
【０００８】
一つの実施形態において、本方法は、前記複数の密度アレイを受信するステップを含む。前記複数の密度アレイそれぞれは、前記患者における放射線撮影密度を表す密度アレイである。
【０００９】
一つの実施形態において、弁別器アレイを形成するステップは、さらに、前記第１差分アレイおよび前記第２差分アレイそれぞれにおいて、ゼロより小さいあらゆる値をゼロで置き換えるステップを含む。
【００１０】
一つの実施形態において、前記第１オフセット密度アレイは、前記第３オフセット密度アレイと同一である。
【００１１】
一つの実施形態において、本方法は、前記第１差分アレイおよび前記第２差分アレイを含み、かつ、オフセット密度アレイの全てのペアに対する差分アレイを含む、複数の差分アレイを形成するステップを含む。前記差分アレイそれぞれは、より早いオフセット密度アレイから、後のオフセット密度アレイを減算することによって形成されており、前記後のオフセット密度アレイは、前記より早いオフセット密度アレイより後の時点と関連付けられている、
【００１２】
一つの実施形態において、本方法は、最も早い時点に関連付けられた最も早い生密度アレイ、および、前記最も早い時点より遅い時点に関連付けられた３つの後の生密度アレイを含んでおり、前記３つの後の生密度アレイと関連付けられた３つの時点それぞれは、約３０秒だけ分離されている。
【００１３】
一つの実施形態において、本方法は、前記複数の生密度アレイのうち第１生密度アレイを獲得するために、患者について第１のコンピュータ体軸断層撮影スキャンを実行するステップと、前記患者の中へ造影剤を注入するステップと、前記患者の中へ造影剤を注入してから約３０秒後に、前記複数の生密度アレイのうち第２生密度アレイを獲得するために、前記患者について第２のコンピュータ体軸断層撮影スキャンを実行するステップを含む。
【００１４】
一つの実施形態において、オブジェクトは患者であり、かつ、前記領域は前記患者の臓器に対応している。
【００１５】
一つの実施形態において、前記弁別器アレイを形成するステップは、さらに、前記臓器内に存在しないボクセルに対応する各要素をゼロに設定するステップを含む。
【００１６】
一つの実施形態において、本方法は、ディスプレイ上に弁別器アレイの２次元図を表示することを含む。
【００１７】
一つの実施形態において、前記弁別器アレイを形成するステップは、さらに、前記弁別器アレイの各要素をゼロに設定するステップを含む。各要素は、前記複数のオフセット密度アレイのうち最も早いオフセット密度アレイから、前記複数のオフセット密度アレイのうち２番目に早いオフセット密度アレイを減算することによって形成される、差分アレイのうち、対応する要素がゼロより小さいかゼロに等しく、そして、前記２番目に早いオフセット密度アレイのうち対応する要素がゼロより小さい。ここで、前記最も早いオフセット密度アレイは、前記複数の生密度アレイのうち、最も早い時点と関連付けられた生密度アレイから形成されており、かつ、前記２番目に早いオフセット密度アレイは、前記複数の生密度アレイのうち、２番目に早い時点と関連付けられた生密度アレイから形成されている。
【００１８】
一つの実施形態において、前記弁別器アレイを形成するステップは、さらに、前記弁別器アレイの各要素をゼロに設定するステップを含む。各要素は、あらゆる前記生密度アレイについて、対応する要素が、上限閾値よりも大きい値または下限閾値よりも小さい値を有する。
【００１９】
本発明の一つの実施形態に従って、腫瘍を検出するためのシステムが提供される。本システムは、透過放射線を用いてオブジェクトをスキャンするためのスキャナであり、患者を通過する前記透過放射線の透過率を測定する、スキャナと、処理回路と、ディスプレイを含む。前記処理回路は、複数の生密度アレイそれぞれにおいて、それぞれの生密度アレイの領域の中でそれぞれの中央値を決定し、前記複数の生密度アレイそれぞれは、複数のアレイ要素を有する３次元アレイであり、前記生密度アレイそれぞれは、それぞれの時点と関連付けられており、前記生密度アレイそれぞれの各要素は、それぞれの時点における患者の一部分の密度を表しており、複数のオフセット密度アレイを形成し、それぞれが前記生密度アレイそれぞれに対応しており、前記オフセット密度アレイを形成することは、前記生密度アレイそれぞれから、前記それぞれの中央値を減算することを含んでおり、第１差分アレイを形成し、前記第１差分アレイを形成することは、第１オフセット密度アレイから、第２オフセット密度アレイを減算することを含んでおり、前記第２オフセット密度アレイは、前記第１オフセット密度アレイより後の時点と関連付けられており、第２差分アレイを形成し、前記第２差分アレイを形成することは、第３オフセット密度アレイから、第４オフセット密度アレイを減算することを含んでおり、前記第４オフセット密度アレイは、前記第３オフセット密度アレイより後の時点と関連付けられており、そして、弁別器アレイを形成し、前記弁別器アレイを形成することは、前記第１差分アレイと前記第２差分アレイとを加算することを含んでいるように、構成されている。
【００２０】
一つの実施形態において、前記弁別器アレイを形成することは、さらに、前記第１差分アレイおよび前記第２差分アレイそれぞれにおいて、ゼロより小さいあらゆる値をゼロで置き換えることを含む。
【００２１】
一つの実施形態において、前記第１オフセット密度アレイは、前記第３オフセット密度アレイと同一である。
【００２２】
一つの実施形態において、本システムは、前記第１差分アレイおよび前記第２差分アレイを含み、かつ、オフセット密度アレイの全てのペアに対する差分アレイを含む。前記差分アレイそれぞれは、より早いオフセット密度アレイから、後のオフセット密度アレイを減算することによって形成されており、前記後のオフセット密度アレイは、前記より早いオフセット密度アレイより後の時点と関連付けられている。
【００２３】
一つの実施形態において、本システムは、最も早い時点に関連付けられた最も早い生密度アレイ、および、前記最も早い時点より遅い時点に関連付けられた３つの後の生密度アレイを含んでいる。前記３つの後の生密度アレイと関連付けられた３つの時点それぞれは、約３０秒だけ分離されている。
【００２４】
一つの実施形態において、オブジェクトは患者であり、かつ、前記領域は前記患者の臓器に対応している。
【００２５】
一つの実施形態において、前記弁別器アレイを形成することは、さらに、前記臓器内に存在しないボクセルに対応する各要素をゼロに設定することを含む。
【００２６】
一つの実施形態において、前記弁別器アレイを形成することは、さらに、前記弁別器アレイの各要素をゼロに設定することを含む。各要素は、前記複数のオフセット密度アレイのうち最も早いオフセット密度アレイから、前記複数のオフセット密度アレイのうち２番目に早いオフセット密度アレイを減算することによって形成される、差分アレイのうち、対応する要素がゼロより小さいかゼロに等しく、そして、前記２番目に早いオフセット密度アレイのうち対応する要素がゼロより小さい。ここで、前記最も早いオフセット密度アレイは、前記複数の生密度アレイのうち、最も早い時点と関連付けられた、生密度アレイから形成されており、かつ、前記２番目に早いオフセット密度アレイは、前記複数の生密度アレイのうち、２番目に早い時点と関連付けられた、生密度アレイから形成されている。
【図面の簡単な説明】
【００２７】
特徴、態様、実施形態が、添付の図面と関連して説明される。
【図１】図1は、本発明の一つの実施形態に従った、腫瘍を検出するためのシステムである。
【図２】図2は、本発明の一つの実施形態に従った、腫瘍を検出するための方法のフローチャートである。
【図３Ａ】図3Aは、本発明の一つの実施形態に従って、マトリクスに配置された、ペア毎の差分を示す等式である。
【図３Ｂ】図3Bは、本発明の一つの実施形態に従って、マトリクスに配置された、ペア毎の差分を示す等式である。
【図４Ａ】図4Aは、本発明の一つの実施形態に従った、時間の関数としての密度のグラフである。
【図４Ｂ】図4Bは、本発明の一つの実施形態に従った、時間の関数としての密度のグラフである。
【発明を実行するための形態】
【００２８】
添付の図面に関連して以下で明らかにされる詳細な説明は、本発明に従って提供される腫瘍を検出するためのシステムおよび方法の例示的な実施形態の説明として意図されたものであり、そして、本発明が構築または利用され得る唯一の形態を表すように意図されたものではない。説明は、図示され実施形態に関連して、本発明の特徴を明らかにしている。しかしながら、本発明の精神および範囲内に包含されるようにも意図されている異なる実施形態によって、同一または均等な機能および構造が達成され得ることが理解されるべきである。ここにおける他の箇所で示されるように、同様な要素番号は、同様な要素または特徴を示すように意図されている。
【００２９】
コンピュータ体軸断層撮影(CATまたはCT)スキャンは、オブジェクト(例えば、患者)が放射線源からの透過性（penetrating）放射線(例えば、X線)をいくつかの方向から照射され、そして、透過放射線（transmitted  radiation）の生スキャン画像（raw  scan  mage）が、各インスタンスにおいて、検出器によって形成されて、複数の生スキャン画像を形成し、それぞれが２次元アレイとして表現され得る、プロシージャである。放射線は、異なる種類の物質（matter）において異なる速度（rate）で減衰され得るものであり、従って、各画像における各ポイントは、放射線が放射線源から検出器へ進む際の経路における物質の構成物（compositions）減衰率（attenuation  rate）に依存して、透過放射強度に対応し得るものである。生スキャン画像の組み合わせから、オブジェクトの「密度（”density”）」または「放射線撮影密度（”radiographic  density”）」の３次元モデルが形成され得る。ここで、CATスキャンに関連してここにおいて使用されるように、「密度」は、透過放射線の局所的な減衰率を参照する。密度は、例えば、ハンズフィールドユニット（hounsfield  unit）で表現され得る。本開示において、実行例は、ヒト患者（human  patient）のCATスキャンのコンテクストにおいて説明されているが、本発明は、これに限定されるものではなく、そして、いくつかの実施形態において、磁気共鳴画像スキャン、または、陽電子放射断層撮影（positron  emission  tomography）スキャン、もしくは、ヒト患者以外のオブジェクトのスキャンといった、３次元密度データを提供する他の種類のスキャンが、類似の方法において処理され得る。他の実施形態においては、例えば、サブボクセル（sub-voxel）レベルに対して３次元で空間的に登録されるスキャンを生成する別のスキャン方法が使用される。他の種類のスキャンの場合に、密度は、それに応じて定義されてよく、例えば、陽電子放射断層撮影スキャンの場合に、密度は、ベータプラス放射によって崩壊する核（nuclei）の密度であり得る。ここにおいて使用されるように、用語「オブジェクト」は、スキャンされ得るあらゆるものを含み、そして、限定するものではなく、ヒト患者、動物、植物、無生物オブジェクト、および、それらの組み合わせを包含している。
【００３０】
スキャンされるオブジェクトがヒト患者(または、他の生きているオブジェクト)であるとき、いくつかの組織の密度を選択的に変化させるために、造影剤が使用され得る(例えば、患者の中へ注入され、または、摂取される)。造影剤は、例えば、相対的に不透明な物質（substance）(すなわち、透過放射線に対して相対的に不透明であるもの)を含んでよい。その結果として、造影剤を含んでいる組織の密度が増加し、そして、組織内で造影剤濃度に応じた程度まで増加され得る。図1は、一つの実施形態に従った、スキャンを実行して、処理し、そして、結果を表示するためのシステムのブロック図を示している。システムは、スキャナ110、処理回路115(以下でさらに詳細に説明される)、画像又は映画の形態で画像のシーケンスを表示するためのディスプレイ120、および、キーボードまたはマウスといった１つまたはそれ以上の入力装置125を含んでおり、オペレータ(例えば、放射線科医)が、システムを操作し、そして、表示される画像の処理に影響を与えるパラメータを設定するために使用することができる。処理回路115、ディスプレイ120、および入力装置125は、例えば、ディスプレイ120および入力装置125とは別個であり、かつ、通信できるように結合されている処理回路115を備えた、単一のシステムの一部であってよく、または、分散システムであってもよいことが留意されるべきである。いくつかの実施形態において、サーバは画像を保管し、クライアントは保管された画像をリクエストし、画像処理が、サーバ上またはクライアント上、または両方で実行される。
【００３１】
複数のスキャンが、実行され、そして、一緒に分析され得る。例えば、第１スキャンは、造影剤が注入される前に実行されてよく、そして、造影剤の濃度が変化するので、造影剤の注入後に様々な時間において(例えば、３０秒間隔といった、規則的なインターバルで)、いくつかの後続スキャンが実行され得る。造影剤の濃度が増加する速度は、最初に、ピーク濃度に達し、そして、その後に造影剤の濃度が減少する速度は、組織の種類に全て依存し得る。
【００３２】
いくつかの実施形態においては、診断ツールとしてのCATスキャンの使用を助けるために、CATスキャンデータから画像を生成するように種々の方法が使用され得る。図2に例示され、そして、以下でさらに詳細に説明されるステップのシーケンスまたは「アクト（”act”）」は、例えば、正常組織と癌性組織(すなわち、悪性腫瘍)との間で外観における差分を増強するために使用され得る。本プロセスは、患者の肝臓について、図2、および、以下のリスト１のサンプルコードに示されている。他の実施形態においては、他の臓器における癌性組織を特定するために、類似のアプローチが使用され得る。
【００３３】
リスト１は、腫瘍を検出するため、すなわち、腫瘍が患者の中に存在するか否かを決定するために使用され得る弁別器アレイを生成するためのMATLABコードを示している。リスト１のコードは、入力として、変数a1、a2、a3、およびa4を受け取り、各変数は、「生密度アレイ」(例えば、第１生密度アレイ、第２生密度アレイ、第３生密度アレイ、および第４生密度アレイ)を含んでいる。各生密度アレイの各要素は、要素の座標に対応する患者の中の物理的位置での小さなボリューム（volume）または「ボクセル」における組織の密度を表している。
【００３４】
これらの(３次元)生密度アレイは、例えば、スキャンされるオブジェクト(例えば、患者)の、３次元における、密度を推測するためのデコンボリューションプロセスを使用して、(２次元)生スキャン画像から生成され得る(次いで、アクト205(図2)において受信される)。第１変数、a1は、造影剤が患者の中へ注入される前に実行されたスキャンからのデータを含んでよく、そして、残りの３つのファイルは、造影剤が患者の中へ注入された後のインターバル(例えば、３０秒間隔)で実行されたスキャンからのデータを含んでよい。しかしながら、他のタイミング間隔、または、異なる数の画像が使用され得ることが理解されるべきである。
【００３５】
アクト210においては、患者の肝臓に対応するボクセルにわたり、生密度アレイそれぞれの中で中央値（median）が計算され、そして、アクト215においては、それぞれの生密度アレイから中央値が減算される。このアクトは、例えば、リスト１の３−９行のコードによって実行され得る。リスト１において、liver_maskは、患者の肝臓内に存在するボクセルを特定するマスクである。レバーマスク（liver  mask）は、生密度アレイの線形表示における要素位置のリストである。変数a1、a2、a3、およびa4は、(上述のように)生密度アレイを表し、そして、a1m、a2m、a3m、およびa4mは、リスト１に示されるように、それぞれの中央値を減算することによって獲得される「オフセット密度アレイ（”offset  density  array”）」である。生密度アレイそれぞれ及びオフセット密度アレイそれぞれは、生密度アレイまたはオフセット密度アレイを結果として生じさせるスキャンが実行された時点と関連付けられている。そのように、生密度アレイの任意のペアにおいて、一方は「より早い（”earlier”）」生密度アレイで、他方よりも早い時点で実行されたスキャンから生じたものであり、他方は「後の（”later”）」生密度アレイとして参照され得る。このように、「最も早い（”earliest”）」、「２番目に早い（”second-earliest”）」、「より早い」、および「後の」といった、形容詞は、生密度アレイまたはオフセット密度アレイを適任（qualify）とするように、ここにおいて使用されるときに、それぞれのアレイを生じさせるスキャンが実行された時点を参照するものである。
【００３６】
アクト220において、(リスト１の１８−２５行において実行される)、差分アレイ（difference  array）は、ペア毎に互いからオフセット密度アレイ（offset  density  array）を減算することによって形成される。それぞれ可能な差分アレイが形成され、そうして、４つのスキャン(そして、従って、４つのオフセット密度アレイ)、６つの差分アレイ(すなわち、４と２の組み合わせ（４Ｃ２）、または４！／（２！・２！））の差分アレイが形成される。これらの差分アレイは、リスト１の２０−２５行の実行の結果として、６つの変数s12、s13、s14、s23、s24、およびs34に保管される。各差分アレイは、より早く実行されたオフセット密度アレイ(すなわち、より早く実行されたスキャンから生じるオフセット密度アレイ)から、後の実行されたオフセット密度アレイ(すなわち、後の実行されたスキャンから生じるオフセット密度アレイ)を減算した結果である。いくつかの実施形態においては、４つより多いか、または少ないスキャンが使用される。そのような場合、６つより多い、または少ない差分アレイが計算され得る。全ての可能なペア毎の差分が計算される場合に、差分アレイの数は、ｎ回スキャンが使用される場合、ｎＣ２(すなわち、ｎ！／（ｎ１・２！))であり得る。
【００３７】
概念的には、６つの差分アレイそれぞれにおけるボクセルに対応する６つの要素（element）は、図3A(腫瘍組織について)および図3B(正常組織について)において示されている非対称行列(または「交代（”skew-symmetric”）」行列)の例の下三角形部分に対応すると考えられ得る。図3Aにおいて、各Ｔ（ｉ）は、上述のように４つのスキャンのシーケンスのうちｉ回目スキャンからのオフセット密度アレイの１つのボクセルからの値であり、ここで、ボクセルは腫瘍組織内に存在するものである。図3Bにおいて、各Ｎ（ｉ）は、上述の４つのスキャンのシーケンスのうちｉ回目スキャンからのオフセット密度アレイの１つのボクセルからの値であり、ここで、ボクセルは正常組織内に存在するものである。ここにおいて使用されるように、正方行列の「下三角形部分（”lower  triangular  portion”）」は、対角線の下の要素を参照するものである。座標（ｉ、ｊ）における非対角（off-diagonal）要素それぞれは、ｊ回目スキャンからの値からｉ回目スキャンからの値を減算することによって計算される。ここで、値は、(図3Aおよび3Bに示されるように)２つのスキャンに対応するオフセット密度アレイにおける同じ位置からの２つのボクセルであってよく、または、(リスト１の２０−２５行のコードに対する事例のように)生密度アレイ全体であってよい。図3Aの行列は、丸め誤差のせいで、数値的には正確な交代行列ではない。
【００３８】
図4Aおよび図4Bは、同様の結果をグラフで示しており、各々は、時間の関数としてのハンズフィールドユニットでの密度のグラフである。生スキャンデータが図4Aに示されており、そして、オフセットデータ(すなわち、肝臓について中央値を減算した後の密度)が図4Bに示されている。主として（primarily）正常組織から成る肝臓において、中央値密度が正常組織の密度に対応し得る。従って、中央値を減算すること(その結果が図4Bに示されている)は、正常組織についてのオフセットデータにおいてほとんど変動を結果として生じ得ない。そして、変動は、オフセットデータにおいて、生データにおけるものよりも、腫瘍組織についてより顕著であり得る。
【００３９】
フロア（floor）が、次いで、アクト225においてゼロに設定され得る。差分アレイそれぞれにおいて(その各々は、図3Aまたは図3Bのものといった、マトリクスの下三角形部分の要素のうち１つに対応する要素を含む)、ゼロより小さい要素は、ゼロで置き換えられてよい。アクト230においては、差分アレイが(フロアをゼロで設定した後で)加算される。この加算は、リスト１の３４行において実行される(３４行は、”imgData=”で始まり、”...”で終了している)。合計は、腫瘍インジケータ、または、弁別器アレイであり得る。すなわち、一般的に、腫瘍組織内のボクセルについて相対的に高い値をとり、正常組織内のボクセルについて相対的に低い値をとる結果である。
【００４０】
さらなるステップが、弁別器の能力を改善するために講じられ得る。誤警報（false  alarm）を生じる可能性、すなわち、正常組織を強調してしまう可能性、を低減する一方で、腫瘍組織が強調される画像を生成するためである。例えば、１１−１６行および３５行に示されるように、データマスキングアレイ(リスト１におけるdata_mask)、そこでは、各要素は（ｉ）生密度アレイのいずれかの対応する要素が、上限閾値を超えるか、または下限閾値より小さい値を有する場合に、ゼロの値を有し、そして、（ｉｉ）そうでない場合に、１の値を有するものは、弁別器アレイによって形成され、そして、乗算され得る(例えば、リスト１の３５行におけるように)。上限および下限閾値は、関心の臓器について期待される密度の範囲に対応するように設定されてよく、そして、この方法は、関心の臓器の一部分ではないボクセルを特定するために使用されてよい。例えば、肝臓に対するマスクの定義  (リスト１におけるliver_mask)におけるエラーのせいで、レバーマスクによって定義された領域内にいくらかの骨が存在する場合、そして、骨が肝臓組織よりも著しく高い密度を有する場合に、生密度アレイは、骨を含んでいるボクセルに対応する要素における上限閾値を超える値を有し得る。そして、データマスキングアレイの対応する要素がゼロに設定されてよく、結果として、弁別器アレイの対応する要素がゼロに設定されている。
【００４１】
パターンマスク(リスト１におけるpattern_mask)は、さらに、誤警報の可能性を示す特性を有する要素をゼロに設定するために使用され得る。リスト１は、２９行において、そうした特性に対するテストを示している。パターンマスクの各要素は、（ｉ）最も早いオフセット密度アレイから２番目に早いオフセット密度アレイを減算することによって形成された差分アレイの対応する要素が、ゼロより小さいか等しい値を有し、そして、２番目に早いオフセット密度アレイの対応する要素が、ゼロより小さい値を有する場合に、ゼロに設定され、そして、（ｉｉ）そうでない場合、１に設定される。このパターンマスクは、パターンマスクがゼロである弁別器アレイの各要素をゼロに設定するために、リスト１の３５行において使用されている。
【００４２】
弁別器アレイは、オペレータ(例えば、放射線科医)に対してディスプレイされ得る。次いで、オペレータは、腫瘍が患者の中に存在するようにみなされるか否かに関して決定を行うことができる。弁別器アレイは、オペレータの前で回転される患者をシミュレーションする動く表示としてディスプレイされてよい。患者の画像は部分的に透明であり、そして、弁別器は、例えば、３色(例えば、赤、緑、青)表示における１つの色(例えば、赤)の輝度（intensity）としてディスプレイされてよい。リスト２のコード(リスト３で定義されているordfilt3関数をコールするもの)は、そうした動く表示の実施例を生成する。他の実施形態において、弁別器アレイ(３次元アレイ)は、２次元スライスのシーケンスとしてディスプレイされてよい。リスト４のコード(リスト３で定義されているordfilt3関数をまたもコールするもの)は、一つの例示的な実施形態において、そうしたスライスのアレイを生成する。
【００４３】
リスト１
1  %  Core  cumulative  subtraction  matrix  algorithm
2  
3  %  First  remove  the  liver  median  from  each  scan
4  %  Since  the  median  is  an  estimate  of  a  healthy  liver  tissue  value,
5  %  this  should  "flatten"  the  response  of  healthy  tissue
6  a1m=a1-median(a1(liver_mask));
7  a2m=a2-median(a2(liver_mask));
8  a3m=a3-median(a3(liver_mask));
9  a4m=a4-median(a4(liver_mask));
10  
11  %  data  mask  is  a  logical  array  that  will  discard  (0)  anything  outside  of
12  %  expected  values  for  the  liver
13  data_mask=a1>mask_lower_scan_thr&a1<mask_upper_scan_thr&...
14    a2>mask_lower_scan_thr&a2<mask_upper_scan_thr&...
15    a3>mask_lower_scan_thr&a3<mask_upper_scan_thr&...
16    a4>mask_lower_scan_thr&a4<mask_upper_scan_thr;
17  
18  %  compute  all  6  combinations  of  early  time  minus  late  time
19  %  CSMA  lower  triangular
20  s12=a1m-a2m;
21  s13=a1m-a3m;
22  s14=a1m-a4m;
23  s23=a2m-a3m;
24  s24=a2m-a4m;
25  s34=a3m-a4m;
26  
27  %  pattern  mask  is  a  logical  that  will  zero  out  certain  patterns  that  were
28  %  deemed  to  be  false  alarms
29  pattern_mask=single(s12>0)+single(s12<=0).*single(a2m<0);
30  
31  %  final  result  accumulates  the  greater  of  0  and  the  6  matrix  terms  and  also
32  %  applies  the  masks  (liver  mask  is  passed  in  and  is  1  inside  the  liver,  and
33  %  0  outside  the  liver)
34  imgData=(max(s12,0)+max(s13,0)+max(s14,0)+max(s23,0)+max(s24,0)+max(s34,0))...
35    .*single(liver_mask).*data_mask.*pattern_mask;
【００４４】
リスト２
1  %  Make  a  gray  3D  image  (movie)  using  scans  and  overlay  with  various  methods
2  %  of  cancer  detection  in  Red
3  
4  crop_to_liver_en=0;
5  erode_livermask_en=1;
6  mask_lower_scan_thr=900;
7  mask_upper_scan_thr=1200;
8  
9  sub_fract=1.0;
10  fudge=20;
11  bias=fudge-50-(1-sub_fract)*1000;
12  
13  c1=1;
14  c2=1;
15  c3=1;
16  gain=0.333;
17  
18  G=11.25*1.5;%0.5=low,1=medium,1.5=high,2=veryhigh
19  
20  ROTXY=1;
21  ROTXZ=2;
22  ROTYZ=3;
23  
24  rot_axis=ROTXY;
25  
26  dirname='H:\Apollo\data\ROC  Curve  Data\';
27  
28  if~exist('c_type','var')
29    c_type=input('c_type(hcc,pancreas_data):','s');
30  end
31  
32  if~exist('patient_num','var')
33    patient_num=input('Patient  number:');
34  end
35  
36  fname=strcat(dirname,c_type,'\',num2str(patient_num),'_imgset1.mat');
37  
38  load(fname)
39  
40  %  Peter's  liver  masks
41  load(strcat(dirname,c_type,'\livermask_',c_type,'_',num2str(patient_num),'.mat'))
42  if  erode_livermask_en
43          liver_mask=bw_eroded;
44  else
45          liver_mask=bw;
46  end
47  
48  a1=single(imgset1(1).image);
49  a2=single(imgset1(2).image);
50  a3=single(imgset1(3).image);
51  a4=single(imgset1(4).image);
52  
53  if  max(liver_mask(:))>0&&size(a1,3)==size(liver_mask,3)
54    
55    %----------------------------------------------------------------------
56    %----------------------------------------------------------------------
57    core_csma
58    %----------------------------------------------------------------------
59    %----------------------------------------------------------------------
60    
61    e=imgData/600;
62    
63    e=ordfilt3(e,5,5,3);
64    %  Square  decompresses  covariance  values  but  still  in  -1  to  1  range
65    e=e.^2;%.*  sign(imgData);
66    
67    grscl=a2-sub_fract*a1;
68    
69    bkg=mean(grscl(liver_mask==1));
70    
71    a21=grscl+G*e/0.3*bkg;
72    a31=grscl;
73    a41=grscl;
74    
75    idx_offset=0;
76    
77    liv_cut_x=max(squeeze(max(liver_mask,[],3)),[],2);
78    x_idx_liv=find(liv_cut_x>0.5);
79    liv_cut_y=max(squeeze(max(liver_mask,[],3)),[],1);
80    y_idx_liv=find(liv_cut_y>0.5);
81    liv_cut_z=max(squeeze(max(liver_mask,[],1)),[],1);
82    z_idx_liv=find(liv_cut_z>0.5);
83    
84    if  crop_to_liver_en
85      a21=a21(x_idx_liv,y_idx_liv,z_idx_liv);
86      a31=a31(x_idx_liv,y_idx_liv,z_idx_liv);
87      a41=a41(x_idx_liv,y_idx_liv,z_idx_liv);
88      liver_mask=liver_mask(x_idx_liv,y_idx_liv,z_idx_liv);
89    end
90    
91    red4=max(a21+bias,eps).*liver_mask;
92    grn4=max(a31+bias,eps).*liver_mask;
93    blu4=max(a41+bias,eps).*liver_mask;
94    
95    red5=red4;
96    grn5=grn4;
97    blu5=blu4;
98    
99    [Nx,Ny,Nz]=size(red5);
100    
101    if  rot_axis==ROTXZ
102      mask=ones(Nx,1)*(1:Nz).^2;
103    elseif  rot_axis==ROTYZ
104      mask=ones(Ny,1)*(1:Nz).^2;
105    elseif  rot_axis==ROTXY
106      mask=(Nx:-1:1)'.^3/Nx^2*ones(1,Ny);
107    end
108    
109    ANG_LIMIT=90;
110    
111    ANG_STEP=round(ANG_LIMIT/45);
112    
113    ang_array=[(0:-ANG_STEP:-ANG_LIMIT),...
114    (-ANG_LIMIT+1:ANG_STEP:ANG_LIMIT),(ANG_LIMIT-1:-ANG_STEP:1)];
115    
116    clear  col_im
117    clear  Mov
118    
119    img_count=0;
120    
121    for  ang=0%ang_array
122    
123      for  n=1:Ny*(rot_axis==ROTXZ)+Nx*(rot_axis==ROTYZ)+Nz*(rot_axis==ROTXY)
124      
125        if  rot_axis==ROTXZ
126          red_temp=squeeze(red4(:,n,:));
127          grn_temp=squeeze(grn4(:,n,:));
128          blu_temp=squeeze(blu4(:,n,:));
129        elseif  rot_axis==ROTYZ
130          red_temp=squeeze(red4(n,:,:));
131          grn_temp=squeeze(grn4(n,:,:));
132          blu_temp=squeeze(blu4(n,:,:));
133        elseif  rot_axis==ROTXY
134          red_temp=squeeze(red4(:,:,n));
135          grn_temp=squeeze(grn4(:,:,n));
136          blu_temp=squeeze(blu4(:,:,n));
137        end
138        
139        red_tempr=imrotate(red_temp,ang,'nearest','crop');
140        grn_tempr=imrotate(grn_temp,ang,'nearest','crop');
141        blu_tempr=imrotate(blu_temp,ang,'nearest','crop');
142        
143        if  rot_axis==ROTXZ
144          red5(:,n,:)=red_tempr.*mask;
145          grn5(:,n,:)=grn_tempr.*mask;
146          blu5(:,n,:)=blu_tempr.*mask;
147        elseif  rot_axis==ROTYZ
148          red5(n,:,:)=red_tempr.*mask;
149          grn5(n,:,:)=grn_tempr.*mask;
150          blu5(n,:,:)=blu_tempr.*mask;
151        elseif  rot_axis==ROTXY
152          red5(:,:,n)=red_tempr.*mask;
153          grn5(:,:,n)=grn_tempr.*mask;
154          blu5(:,:,n)=blu_tempr.*mask;
155        end
156      end
157      
158      siz1=512;%size(red5,1);%max(size(red5,1),886/2);%886;
159      
160      if  rot_axis==ROTXZ||rot_axis==ROTYZ
161        red_im=squeeze(c1*mean(red5,3)+c2*max(red5,[],3)+c3*std(red5,[],3));
162        grn_im=squeeze(c1*mean(grn5,3)+c2*max(grn5,[],3)+c3*std(grn5,[],3));
163        blu_im=squeeze(c1*mean(blu5,3)+c2*max(blu5,[],3)+c3*std(blu5,[],3));
164        fctr=siz1/(size(red_im,1));
165      elseif  rot_axis==ROTXY
166        red_im=squeeze(c1*mean(red5,1)+c2*max(red5,[],1)+c3*std(red5,[],1))';
167        grn_im=squeeze(c1*mean(grn5,1)+c2*max(grn5,[],1)+c3*std(grn5,[],1))';
168        blu_im=squeeze(c1*mean(blu5,1)+c2*max(blu5,[],1)+c3*std(blu5,[],1))';
169        fctr=siz1/(size(red_im,1)*2.5);
170      end
171      
172      siz2=round(fctr*size(red_im,2));
173      if  siz2>1700
174        siz2=1700;
175        siz1=round(siz2*(size(red_im,1)*2.5)/size(red_im,2));
176      end
177      col_im(:,:,1)=imresize(red_im,[siz1,siz2],'bilinear');
178      col_im(:,:,2)=imresize(grn_im,[siz1,siz2],'bilinear');
179      col_im(:,:,3)=imresize(blu_im,[siz1,siz2],'bilinear');
180      denom=mean(blu_im(blu_im>eps));
181      
182      image(max(0,min(1,gain*col_im/denom)))
183      if  img_count==0,truesize;end
184      
185      img_count=img_count+1;
186      
187      axis('image','off')
188      
189      drawnow
190      Mov(img_count)=getframe;
191      
192    end
193    
194    
195    fname_avi=strcat(fname(1:strfind(fname,'_imgset1')),c_type,'_csma_3D.avi');
196    
197    movie2avi1(  Mov,  fname_avi,  30)
198  
199  end
【００４５】
リスト３
1  function  a_filt=ordfilt3(a,NFILTx,NFILTy,NFILTz)
2  
3  %median  filter  in  x-y
4  %min  filter  in  z
5  
6  xyfilt_order=0.5;%0.5=median
7  
8  a_filt=a;
9  
10  [~,~,Nz]=size(a);
11  
12  for  z=1:Nz
13  
14    if  NFILTx>1||NFILTy>1
15      a_filt(:,:,z)=ordfilt2(squeeze(a(:,:,z)),round(NFILTx*NFILTy*xyfilt_order),ones(NFILTx,NFILTy));
16    end
17    
18  end
19  
20  temp=a_filt;
21  
22  if  NFILTz>1
23    for  z=(NFILTz+1)/2:Nz-(NFILTz-1)/2
24      a_filt(:,:,z)=median(temp(:,:,z-(NFILTz-1)/2:z+(NFILTz-1)/2),3);
25  %    a_filt(:,:,z)=min(temp(:,:,z-(NFILTz-1)/2:z+(NFILTz-1)/2),[],3);
26    end
27  end
【００４６】
リスト４
1  %  clear
2  %  close  all
3  
4  %  Magic  numbers
5  erode_livermask_en=1;
6  mask_lower_scan_thr=900;
7  mask_upper_scan_thr=1200;
8  disp_lower_scan_thr=900;
9  disp_upper_scan_thr=1300;
10  scale_factor1=0.5;
11  scale_factor2=0.375;
12  imgData_norm=600;
13  L_med_x=5;
14  L_med_y=5;
15  L_med_z=3;
16  e_power=2;
17  contrast_setting=1.5;%0.5=LO,1=MED,1.5=HI,2=VHI
18  G=100*contrast_setting;
19  
20  if  ~exist('c_type','var')
21    c_type=input('c_type(hcc,pancreas_data):','s');
22  end
23  
24  if  ~exist('patient_num','var')
25    patient_num=input('Patient  number:');
26  end
27  
28  dirname='h:\apollo\data\ROC  Curve  Data\';
29  
30  fname=strcat(dirname,c_type,'\',num2str(patient_num),'_imgset1.mat');
31  load(fname)
32  
33  clear  bw
34  clear  BW
35  
36  load(strcat(dirname,c_type,'\livermask_',c_type,'_',num2str(patient_num),'.mat'))
37  
38  if  erode_livermask_en
39    liver_mask=bw_eroded;
40  else
41    liver_mask  =  bw;
42  end
43  
44  num_scans=length(imgset1);
45  num_slices=size(imgset1(1).image,3);
46  
47  %  fprintf('Number  of  scans=%i\n',num_scans)
48  %  fprintf('Number  of  slices=%i\n',num_slices)
49  
50  a1=single(imgset1(1).image);
51  a2=single(imgset1(2).image);
52  a3=single(imgset1(3).image);
53  a4=single(imgset1(4).image);
54  
55  if  length(liver_mask(:))==length(a1(:))
56  
57    %  ----------------
58    %  ----------------
59    core_csma
60    %  ----------------
61    %  ----------------
62    
63    %  ----------------
64    %  ----------------
65    %  ----------------
66    %  DISPLAY  CUBE  CODE  below
67    %  ----------------
68    %  ----------------
69    %  ----------------
70    
71    e=imgData/imgData_norm;
72    e=ordfilt3(e,L_med_x,L_med_y,L_med_z);
73    e=e.^e_power;
74    
75    grscl=max(0,min(disp_upper_scan_thr-disp_lower_scan_thr,a2-disp_lower_scan_thr));
76    
77    bkg=mean(grscl(liver_mask==1));
78    
79    %  add  "e"  to  red  only
80    a21=grscl+G*e*bkg;
81    a31=grscl;
82    a41=grscl;
83    
84    red4=max(a21,eps).*liver_mask;
85    grn4=max(a31,eps).*liver_mask;
86    blu4=max(a41,eps).*liver_mask;
87    
88    data=zeros(size(a21,1),size(a21,2),size(a21,3),3,'single');
89    norm_fact=3*median(grn4(liver_mask  ==  1));
90    
91    data(:,:,:,1)=red4/norm_fact*scale_factor2;
92    data(:,:,:,2)=grn4/norm_fact*scale_factor2;
93    data(:,:,:,3)=blu4/norm_fact*scale_factor2;
94    
95    csma=uint8(round(255*min(1,max(0,data))));
96    
97    fname_mat=strcat(fname(1:strfind(fname,'_imgset1')),c_type,'_csma_4D.mat');
98    
99    save(fname_mat,'csma')
100    
101  else
102  
103  fprintf('Error:Liver  mask  has  z  dimension  %i\n',size(liver_mask,3))
104  end
【００４７】
用語「処理回路（”processing  circuit”）」は、ここにおいて、データまたはデジタル信号を処理するために使用される、ハードウェア、ファームウェア、およびソフトウェアの任意の組み合わせを含むように使用されている。処理回路ハードウェアは、例えば、特定用途向け集積回路（ASICs）、汎用または専用中央処理装置（CPUs）、デジタル信号プロセッサ（DSPs）、グラフィックス処理装置（GPUs）、および、フィールドプログラマブルゲートアレイ（FPGAs）といったプログラマブル論理装置を含んでよい。処理回路においては、ここにおいて使用されるように、各機能が、その機能を実行するように構成されたハードウェア、すなわちハードワイヤード（hard-wired）によって、または、非一時記憶媒体に保管された命令を実行するように構成された、CPUといった、より汎用的なハードウェアによって実行される。処理回路は、単一のプリント配線基板（PWB）上に製造されてよく、または、複数の相互接続されたPWBにわたり分散されてよい。処理回路は、他の処理回路を含んでよく、例えば、１つの処理回路が、PWB上で相互接続された、２つの処理回路、FPGAおよびCPU、を含んでよい。処理回路は、地理的に分離されており、かつ、例えば、インターネットといったネットワークによって、接続されている複数の処理ユニットを含むことができる。
【００４８】
腫瘍を検出するためのシステムおよび方法の限定された実施形態が、ここにおいて具体的に記載され、そして、説明されてきたが、当業者にとっては多くの変更および変形が明らかだろう。従って、この発明の原理に従って使用される腫瘍を検出するためのシステムおよび方法は、ここにおいて具体的に説明される以外に実施され得ることが理解されるべきである。本発明は、また、以下の請求項、およびその均等物においても定義される。
【図１】
2020530797.tif 000003
【図２】
2020530797.tif 000004
【図３Ａ】
2020530797.tif 000005
【図３Ｂ】
2020530797.tif 000006
【図４Ａ】
2020530797.tif 000007
【図４Ｂ】
2020530797.tif 000008
【国際調査報告】
2020530797.tif 000009
2020530797.tif 000010
2020530797.tif 000011