(57)【要約】【課題】医用イメージング・システム向けのアプリケーション開発システムにおけるアプリケーション・プログラムのメンテナンスを容易にする。【解決手段】ワークステーション（１０）は、医用イメージング・システム向けのアプリケーション開発システムとして動作するようにプログラムされている。オブジェクト指向言語でプログラムされたオブジェクトは、ディスプレイ（１２）上のフレームワーク・エリア（６４）からワークスペース・エリア（６６）までのドラッグを可能にしている視覚コンポーネント・アセンブラ（６０）を用いてコンポーネント・ライブラリ（７２）から選択される。選択したコンポーネントのプロパティは編集することができ、また得られたコンポーネントの集合は一つのとして保存することができる。【選択図】図３
2004514993.tif 000002
【特許請求の範囲】
【請求項１】
医用イメージング・システム用アプリケーション開発システムであって、
オブジェクト指向のプログラミング言語で書かれたコンポーネントを記憶するためのコンポーネント・ライブラリ（７２）と、
前記コンポーネント・ライブラリ（７２）内のコンポーネントをフレームワーク・エリア（６４）内に表示するため、並びにユーザに対して該フレームワーク・エリア（６４）内でコンポーネントを選択しこれらをワークスペース・エリア（６６）内でアセンブルすることを可能にするための視覚コンポーネント・アセンブラ（６０）であって、医用イメージング・システム用のアプリケーション・プログラムを形成するように該ワークエリア（６６）内のコンポーネントを永続化させるように動作可能な視覚コンポーネント・アセンブラ（６０）と、
を備えるアプリケーション開発システム。
【請求項２】
前記視覚コンポーネント・アセンブラ（６０）はさらに、プロパティ・エリア（６８）を表示すると共に、ユーザが前記フレームワーク・エリア（６４）内でコンポーネントを選択し該プロパティ・エリア（６８）内に選択したコンポーネントと関連するプロパティの組を表示させることを可能にしている、請求項１に記載のシステム。
【請求項３】
前記永続化が前記フレームワーク・エリア（６６）内のコンポーネントを直列化することにより実行されている、請求項１に記載のシステム。
【請求項４】
前記直列化が、アプリケーション・コンポーネント間の階層関係を記憶すること、並びにそのプロパティを記憶することを含んでいる、請求項３に記載のシステム。
【請求項５】
プロパティ・エリア（６８）に表示されたプロパティのユーザによる変更を可能にするプロパティ・エディタ（７０）を含む請求項２に記載のシステム。
【請求項６】
プロパティ・エリアに表示させたプロパティのうちの一つによりそのコンポーネントの視覚的表現が呼び出されると共に、該視覚的表現を表示させるための手段（７８）を含む請求項５に記載のシステム。
【請求項７】
前記視覚的表現が波形であり、かつ前記手段が波形プロッタ（７８）である、請求項６に記載のシステム。
【請求項８】
フレームワーク・エリア（６４）、ワークスペース・エリア（６６）及びプロパティ・エリア（６８）をその上に表示させている画面を有するディスプレイ（１２）を含む請求項７に記載のシステム。
【請求項９】
前記波形プロッタ（７８）が、その中に波形を出現させているウィンドウ（８０）を前記ディスプレイ（１２）の画面上に生成している、請求項８に記載のシステム。
【請求項１０】
前記プロパティ・エディタ（７０）は、別のプロパティを変更したときに前記視覚的表現を自動的に変更するように動作可能である、請求項７に記載のシステム。
【請求項１１】
前記オブジェクト指向のプログラミング言語がＪａｖａ（商標）である、請求項１に記載のシステム。
【請求項１２】
前記永続化のための手段がＪａｖａ（商標）オブジェクト直列化機構を利用している、請求項３に記載のシステム。
【請求項１３】
磁気共鳴イメージング・システム用のアプリケーション・プログラムを作成するためのシステムであって、
オブジェクト指向のプログラミング言語で書かれたコンポーネントを含むライブラリ（７２）を記憶するためのメモリと、
ディスプレイ（１２）、入力デバイス（１４）、及びアプリケーション開発機能を実行するようにプログラムされたプロセッサ（１６）を有するワークステーション（１０）であって、該アプリケーション開発プログラムは、
ディスプレイ（１２）上のフレームワーク・エリア（６４）にコンポーネント・ライブラリ（７２）内のコンポーネントを表すアイコンを表示し、入力デバイス（１４）を介して入力されたユーザからの指令に応答してコンポーネントを選択し前記ディスプレイ上に表示されたワークスペース・エリア（６６）内で選択した該コンポーネントを表すアイコンをアセンブルさせること、並びに、一つのアプリケーション・プログラムを形成するように該選択したコンポーネントを永続化させることを行うための視覚コンポーネント・アセンブラ（６０）、
を含んでいる、ワークステーション（１０）と、
を備えるシステム。
【請求項１４】
前記永続化が前記アプリケーション・プログラムを記憶している直列化機構を用いて実行されている、請求項１３に記載のシステム。
【請求項１５】
前記視覚コンポーネント・アセンブラ（６０）はさらに、前記ディスプレイ（１２）上にプロパティ・エリア（６８）を表示させると共に、ユーザがコンポーネントを選択し該プロパティ・エリア（６８）内に選択したコンポーネントと関連するプロパティの組を表示させることを可能にしている、請求項１３に記載のシステム。
【請求項１６】
前記アプリケーション開発プログラムはさらに、ユーザが入力デバイス（１４）を介してデータを入力しプロパティ・エリア（６８）に表示されたプロパティ値を変更することを可能にするプロパティ・エディタ（７０）を含んでいる、請求項１５に記載のシステム。
【請求項１７】
プロパティ・エリアに表示されたプロパティのうちの一つがそのコンポーネントの視覚的表現であると共に、前記アプリケーション開発プログラムがさらに該視覚的表現を表示させるための波形プロッタ（７８）を含んでいる、請求項１６に記載のシステム。
【請求項１８】
前記波形プロッタ（７８）は、視覚的表現をその中に生成させているウィンドウ（８０）を前記ディスプレイ（１２）上に生成している、請求項１７に記載のシステム。
【請求項１９】
前記プロパティ・エディタ（７０）は、別のプロパティを変更したときに前記視覚的表現を自動的に変更するように動作可能である、請求項１７に記載のシステム。
【発明の詳細な説明】
【０００１】
【発明の背景】
本発明の属する分野は医用イメージング・システムであり、具体的には、こうしたイメージング・システム向けのソフトウェア・アプリケーションを開発するためのシステムである。
【０００２】
医用イメージング・システムには多くの種類がある。様々なシステム間での主な違いは、Ｘ線、磁気共鳴、超音波あるいは核医学など使用される医学上のイメージング様式にある。さらに、典型的には、各イメージング様式において広範な機能や特徴が提供されている。例えば、ある範囲の偏向磁場強度及び構成を備えると共に、磁気共鳴アンギオグラフィ（「ＭＲＡ」）、心臓イメージング、ファンクショナル磁気共鳴イメージング（「ｆＭＲＩ」）などある範囲の随意選択の様々な特徴を備えているような磁気共鳴イメージング（「ＭＲＩ」）システムが提供されることがある。
【０００３】
違いは多くあるもの、医用イメージング・システムには共通した基本機能が数多くある。医用イメージング・システムはすべて、具体的な画像収集の規定を可能にしているオペレータ・インタフェースと、イメージング様式の一つを用いて被検体からデータを収集するデータ収集装置と、収集したデータを用いて画像を再構成させるための画像再構成プロセッサと、画像及び関連する患者情報を記憶するための記憶装置と、を含んでいる。典型的には、これらの機能を実行させるようにハードウェアを設計し、また各ハードウェア構成向けにシステムのソフトウェアを設計し記述している。
【０００４】
医用イメージング・システムは、特定のタイプのスキャン、画像再構成、及び後処理アプリケーションを実行するようにそのイメージング・システムに指令しているアプリケーション・プログラムを含んでいる。例えば、ＭＲＩシステムは、高速スピンエコー・スキャン、高速グラジェント・リコールドエコー・スキャン、ファンクショナルＭＲＩスキャン、あるいは心臓シネスキャンを実行するようにそのイメージング・システムに指令しているアプリケーション・ソフトウェアを含むことがある。こうした様々なアプリケーションの各々では、アセンブラやＣ言語などの言語でソフトウェア・コードを記述すること、並びにこれらのコードをＭＲＩシステムで使用するようにリンクさせかつコンパイルすること、が必要である。アプリケーションの数が増えると、アプリケーション・ソフトウェア・コードの量及び複雑さは、ますますメンテナンスが困難なものとなる。その結果、新たなアプリケーションをイメージング・システムに追加することはますます困難になる。
【０００５】
【発明の要約】
本発明は、医用イメージング・システム向けのアプリケーションの開発システムであり、また具体的には、その各々がその医用イメージング・システムの動作に関する実行可能コード及びデータの形態をした方法を含んでいる各コンポーネントを記憶したライブラリから、オブジェクト指向のアプリケーション・プログラムを作成するためのシステムである。このアプリケーション開発システムは、コンポーネントからなるライブラリを記憶するためのメモリと、ライブラリに記憶したコンポーネントを指示するためのフレームワーク・エリアを含み、一つのアプリケーション・プログラムを形成するようにライブラリから選択したコンポーネントを指示するためのワークスペース・エリアを含み、かつ選択したコンポーネントのインスタンス変数を指示するためのプロパティ・エリアを含んでいるディスプレイと、入力デバイスと、ユーザが入力デバイスを用いてフレームワーク・エリアに指示されたコンポーネントを選択しこれらをワークスペース・エリアに配置できるようにプログラムされており、入力デバイスを用いてプロパティ・エリアに指示されたインスタンス変数を選択したコンポーネント向けに編集するようにプログラムされており、かつこのコンポーネントをワークスペース・エリア内に一つのアプリケーション・プログラムとして記憶するようにプログラムされているプロセッサと、を含んでいる。
【０００６】
アプリケーション・プログラムはプログラム・コードの記述及びコンパイルをせずに作成することができる。すべてのプログラム・コードはライブラリに記憶されたコンポーネントに包含されており、コンポーネントを選択してディスプレイのワークスペース・エリア内に配置することにより、プログラム・コード及び修正した任意のプロパティ、あるいはインスタンス変数を、「永続化（ｐｅｒｓｉｓｉｔ）」が可能な単一のアプリケーション・プログラムになるようにリンクさせることができる。このアプリケーション・プログラムは、コンポーネント・ライブラリと共に医用イメージング・システム上に記憶しており、スキャンを実行するためにアプリケーションを選択すると、コンポーネント・ライブラリ内の適正なコンポーネントからのプログラム・コードが記憶しておいたアプリケーションの設計に従って互いにリンクされ、さらにそのアプリケーション・プログラムによる指定に従ってインスタンス変数が設定される。
【０００７】
【発明の一般的説明】
具体的に図５を参照すると、医用イメージング・システムは、スキャン中に画像データを収集するように動作させる機械的及び電気的なハードウェア要素から構成されたイメージング装置１１０を含む。このイメージング・システムはさらに、収集した画像データを用いて画像を再構成するように動作させるデータ処理装置１１２を含む。システムを操作しスキャン規定を入力するためにはキーボードや制御パネルなどのオペレータ入力デバイス１１４を設けており、描出のために画像を提示するためにはディスプレイ装置１１６を設けており、また収集した画像をアーカイブするためにはハードディスク駆動装置などの記憶デバイス１１７を設けている。使用する具体的なイメージング様式、並びにこれらのハードウェア要素の複雑度や能力は、システムによってかなりの違いがある。
【０００８】
本システムは、オペレータ入力デバイス１１４を用いてオペレータがスキャン・パラメータを入力できるようなユーザインタフェース１２０を提供するために、Ｊａｖａ（商標）などマシンに依存しない言語でプログラムされたワークステーション１１８を含んでいる。このワークステーション１１８はスキャン記述１２２を作成するようにプログラムされており、このスキャン記述１２２は、最も簡易な構成では、イメージング装置１１０及びデータ処理装置１１２が規定されたスキャンを実行するために要求する情報を含んだ画像収集記述コンポーネント及びデータ処理記述コンポーネントを含んでいる。
【０００９】
ランタイムの前に、イメージング・システムのハードウェア装置を制御している複数のサーバーにスキャン記述１２２のスナップショットをダウンロードしている。最も簡易な構成において、これらのサーバーには、イメージング装置１１０とデータ処理装置１１２のそれぞれを動作させる画像収集サーバー１２４やデータ処理サーバー１２６が含まれる。スキャン記述コンポーネントが提供されると、サーバーのプログラムは画像システムのハードウェア装置に対して規定されたスキャンを実行するように指令する。データ記憶サーバー１１３は記憶デバイス１１７に対してその画像を関連する患者情報と共に保存するように指令する。
【００１０】
医用イメージング・システムにより実行される具体的なスキャンや動作は、ワークステーション１１８に記憶されているアプリケーション・プログラムによる指令を受ける。
【００１１】
このアプリケーション・プログラムはワークステーション１１８または別のワークステーション（図示せず）上で動作するアプリケーション開発システムを用いて作成される。このアプリケーション開発システムによりユーザは、コンポーネント・ライブラリからオブジェクト指向のプログラミング言語で書かれたオブジェクトまたはコンポーネントを選択することによって新たなアプリケーション・プログラムを作成すること、並びにこれらオブジェクトまたはコンポーネントを視覚コンポーネント・アセンブラを用いてアセンブルすることが可能となる。選択したコンポーネントのインスタンス変数は表示させており、新たなアプリケーション・プログラム向けに編集することができる。アセンブルしたコンポーネントはインスタンス化し、その医用イメージング・システム上で使用するために復元可能な新たなアプリケーション・プログラムとして保存される。インスタンス化は、コンポーネントとそのインスタンス変数の階層関係をその内部に記憶している直列化過程を使用して実現することができる。
【００１２】
【好ましい実施形態の説明】
具体的に図１を参照すると、本発明のこの好ましい実施形態はＭＲＩシステムの動作に利用されている。このＭＲＩシステムは、ディスプレイ１２及びキーボード１４を有するワークステーション１０を含んでいる。このワークステーション１０は、Ｓｉｌｉｃｏｎ　Ｇｒａｐｈｉｃｓ，Ｉｎｃ．から市販されているプログラム可能マシンであるプロセッサ１６を含んでいる。このプロセッサは、Ｉｎｔｅｌ製の６４ビット・マイクロプロセッサに基づくと共に、Ｌｉｎｕｘオペレーティング・システムを動作させている。ワークステーション１０により、ＭＲＩシステム内にスキャン規定を入力することを可能にするオペレータ・インタフェースが提供される。より詳細には以下で説明するが、ワークステーション１０は、Ｊａｖａ（商標）互換のその他のプログラム可能マシンに完全に移植可能なＪａｖａ（商標）言語でプログラムされたコードを実行する一つまたは複数のＪａｖａ（商標）仮想マシンを動作させている。
【００１３】
ワークステーション１０には、パルスシーケンス・サーバー１８、データ収集サーバー２０、データ処理サーバー２２、及びデータ記憶サーバー２３という四つのサーバーが結合されている。この好ましい実施形態では、データ記憶サーバー２３は、ワークステーション・プロセッサ１６及び付属のディスク駆動装置のインタフェース回路により動作させている。残りの三つのサーバー１８、２０及び２２は、単一のエンクロージャ内に取り付けられると共に、「ＣｏｍｐａｃｔＰＣＩ」と呼ぶ工業用及び電気通信用アプリケーションのためのＰＣＩ標準に基づく６４ビットのバックプレーン・バス構造を用いて相互接続した別々のプロセッサにより動作させている。パルスシーケンス・サーバー１８は、Ｍｏｔｏｒｏｌａ，Ｉｎｃ．製の３６６ＭＨｚマイクロプロセッサ（モデルＰＰＣ７５０）、並びにカッド（ｑｕａｄ）通信コントローラ（モデルＭＰＣ８６０Ｔ）を利用している。データ収集サーバー２０とデータ処理サーバー２２は共に、同じ３６６ＭＨｚマイクロプロセッサを利用しており、またデータ処理サーバー２２はさらに、Ｍｅｒｃｕｒｙ　Ｃｏｍｐｕｔｅｒ　Ｓｙｓｔｅｍｓ，Ｉｎｃ．からＰｏｗｅｒＰＣ（商標）として市販されている並列ベクトル・プロセッサに基づく一つまたは複数のアレイ・プロセッサを含んでいる。別の３６６ＭＨｚマイクロプロセッサ（図示せず）がＰＣＩバス構造上でハードウェア・コントローラとして動作しており、Ｍｏｔｏｒｏｌａ，Ｉｎｃ．製のカッド通信コントローラ（モデルＭＰＣ８６０Ｔ）を制御している。
【００１４】
ワークステーション１０、並びにサーバー１８、２０及び２２用の各プロセッサは、１００ＢａｓｅＴイーサネット・シリアル通信ネットワーク（「イーサネット」は商標）に接続されている。このシリアル・ネットワークは、ワークステーション１０からサーバー１８、２０及び２２にダウンロードされるデータを伝達しており、また、サーバー同士の間やワークステーションと各サーバーの間で通信されるタグ・データを伝達している。さらに、画像データをデータ記憶サーバー２３に伝達するため、データ処理サーバー２２とワークステーション１０の間には、ＢＩＴ３プロトコルを用いた高速データリンクを設けている。
【００１５】
パルスシーケンス・サーバー１８は、ワークステーション１０からダウンロードされたプログラム要素に応答し、傾斜システム２４及びＲＦシステム２６を動作させるように機能している。アセンブリ２８内の傾斜コイルを励起させＮＭＲ信号の位置エンコーディングで使用する磁場傾斜Ｇｘ、Ｇｙ及びＧｚを発生させるために、規定されたスキャンの実行に必要な傾斜波形を生成して傾斜システム２４に印加している。傾斜コイル・アセンブリ２８は偏向用マグネット３２及び全身用ＲＦコイル３４を含むマグネット・アセンブリ３０の一部を形成している。
【００１６】
規定された磁気共鳴シーケンスを実行するために、ＲＦコイル３４にはＲＦシステム２６によりＲＦ励起波形を印加している。ＲＦコイル３４が検出した応答ＮＭＲ信号はＲＦシステム２６により受信し、パルスシーケンス・サーバー１８が発したコマンドの指示の下に増幅、復調、フィルタ処理及びディジタル化が実行される。例示的なＲＦシステムは米国特許第４，９５２，８７７号及び米国特許第４，９９２，７３６号に記載されている。
【００１７】
パルスシーケンス・サーバー１８はさらに、任意選択では、生理学的収集コントローラ３６から患者データを受け取っている。コントローラ３６は、電極からのＥＣＧ信号やベローズからの呼吸信号など患者に接続した多くの異なるセンサからの信号を受け取っている。こうした信号は、典型的には、パルスシーケンス・サーバー１８がスキャンの動作を同期させるために使用する。
【００１８】
パルスシーケンス・サーバー１８はさらに、患者及びマグネット系の状態に関する様々なセンサから信号を受け取るためのスキャン室インタフェース回路３８と接続されている。患者位置決めシステム４０がスキャン中に患者を所望の位置まで移動させるコマンドを受け取るためにもスキャン室インタフェース回路３８を経由している。
【００１９】
パルスシーケンス・サーバー１８により、スキャン中にＭＲＩシステムの要素に対するリアルタイム制御が実行されることは明らかである。結果的に、そのハードウェア要素は、時宜を得て実行されるプログラム命令により動作させることが必要である。より詳細には以下で説明することにするが、ランタイム中にパルスシーケンス・サーバー１８は、アセンブラ、ＣまたはＣ＋＋などの低級プログラミング言語により記述されたプログラムにより制御されている。スキャン規定のための記述コンポーネントは、オブジェクトの形態でワークステーション１０からダウンロードされる。パルスシーケンス・サーバー１８は、直列化機構を用いてこれらのオブジェクトを受け取るようなプログラムを含んでいる。パルスシーケンス・サーバー１８はさらに、このオブジェクトをランタイム・プログラムで利用されるＣ＋＋オブジェクトに変換するためのプログラムも含んでいる。この好ましい実施形態では、Ｊａｖａ（商標）オブジェクトがダウンロードされ、かつＪａｖａ（商標）直列化機構が利用される。したがって、パルスシーケンス・サーバー１８は、Ｊａｖａ（商標）で記述されたハードウェアに依存しないプログラムと、ハードウェア依存のプログラムとの両方を含んでいる。Ｊａｖａ（商標）インタプリタは事実上、パルスシーケンス・サーバー１８上で動作する概ねすべてのプログラムがハードウェアに依存しない形態で記述されるように十分高速とすることになることが企図される。
【００２０】
ＲＦシステム２６が生成させるディジタルＮＭＲ信号のサンプルは、データ収集サーバー２０により受け取られる。データ収集サーバー２０は、ワークステーション１０からダウンロードした記述コンポーネントに応答して動作し、リアルタイムのＮＭＲデータを受け取ると共に、データのオーバーランによりデータが失われないようにするバッファ記憶を提供している。幾つかのスキャンでは、データ収集サーバー２０は、収集したＮＭＲデータをデータ処理サーバー２２に渡しているに過ぎない。しかし、スキャンの動作をさらに制御するために収集したＮＭＲデータから得られる情報を必要とするようなスキャンでは、そのデータ収集サーバー２０は、こうした情報を作成してパルスシーケンス・サーバー１８に伝達するようにプログラムされている。例えば、予備スキャンの間において、ＮＭＲデータを収集し、パルスシーケンス・サーバー１８が実行するパルスシーケンスをキャリブレーションするために使用している。スキャンの間にナビゲータ信号を収集し、ＲＦや傾斜システムの動作パラメータを調整したり、ｋ空間をサンプリングするビュー順序を制御するために使用することもある。さらに、データ収集サーバー２０は、同時係属の「Ｍｅｔｈｏｄ　Ｆｏｒ　Ｐｅｒｆｏｒｍｉｎｇ　Ｍａｇｎｅｔｉｃ　Ｒｅｓｏｎａｎｃｅ　Ａｎｇｉｏｇｒａｐｈｙ　Ｕｓｉｎｇ　ａ　Ｃｏｎｔｒａｓｔ　Ａｇｅｎｔ」と題する米国特許出願第０８／６３５，０７８号（１９９６年４月１９日提出）に記載されているようにＭＲＡスキャンにおいて造影剤の到達を検出するために使用されるＮＭＲ信号を処理するために利用されることがある。これらすべての例では、データ収集サーバー２０はＮＭＲデータを収集し、これをリアルタイムで処理してスキャンの制御に使用する情報を作成している。
【００２１】
パルスシーケンス・サーバー１８の場合と同様に、データ収集サーバー２０のハードウェア要素はランタイム時において、アセンブラ、ＣまたはＣ＋＋などのプログラミング言語によるプログラム命令による動作を受ける。より詳細には以下で説明することにするが、スキャン中におけるその動作に関する指示は、オブジェクトの形態でワークステーション１０からダウンロードされる。このオブジェクトはサーバー・プロキシにより直列化機構を用いて受け取られており、さらにダウンロードしたオブジェクトは、ランタイム中にデータ収集サーバー２０を動作させるために利用されるＣ＋＋オブジェクトに変換されている。上で指摘したように、Ｊａｖａ（商標）オブジェクトは、この好ましい実施形態では、Ｊａｖａ（商標）直列化機構を用いてダウンロードされる。
【００２２】
データ処理サーバー２２はデータ収集サーバー２０からＮＭＲデータを受け取り、これをワークステーション１０からダウンロードした記述コンポーネントに従って処理している。こうした処理は、例えば、２次元または３次元画像を作成するためのｋ空間未処理ＮＭＲデータのフーリエ変換、再構成画像へのフィルタの適用、収集したＮＭＲデータの逆投影画像再構成の実行、ファンクショナルＭＲ画像の計算、運動画像やフロー画像の計算、その他を含むことがある。
【００２３】
データ処理サーバー２２が再構成した画像はワークステーション１０に返送されてワークステーション１０内に記憶される。リアルタイム画像はデータベースのメモリキャッシュ（図示せず）内に保存しており、ここから画像はオペレータ用ディスプレイ１２や、付き添っている医師が使用するようにマグネット・アセンブリ３０の近傍に配置したディスプレイ４２に出力することができる。バッチモード画像や選択したリアルタイム画像はディスク記憶装置４４上のホスト・データベース内に保存される。こうした画像を再構成して記憶装置に転送し終えたら、データ処理サーバー２２はワークステーション１０上のデータ記憶サーバー２３に通知する。オペレータはワークステーション１０を使用して、画像のアーカイブ、フィルムの作成、あるいはネットワークを介したその他の施設への画像の送信を行うことができる。
【００２４】
データ処理サーバー２２が実行する具体的な動作に関する指示はワークステーション１０からダウンロードされる。速度重視の機能はアセンブラ、ＣまたはＣ＋＋で記述されたプログラムにより実行され、またダウンロードしたＪａｖａ（商標）オブジェクトの指令は上述のように対応する実行可能コードに変換する必要がある。
【００２５】
上で指摘したように、ワークステーション１０は、Ｊａｖａ（商標）プログラミング言語で記述されたプログラムを実行するＪａｖａ（商標）仮想マシンである。ワークステーション・ソフトウェアは、オペレータが選択し動作させることができる「アプリケーション」を実行するような構造とする。こうしたアプリケーションは臨床用イメージング手技に対応しており、さらに例えば、
ＦＳＥパルスシーケンスを用いたスキャンの実行
ＣＥＭＲＡ動態検査の実施
ｆＭＲＩ検査の実行
ランオフ（ｒｕｎｏｆｆ）血管検査の実行
画像の後処理の実行
フィルム化
ネットワーク化
などを含むことがある。
【００２６】
アプリケーションとは、「アプリケーション・コンテナ」内に保存されている、スキャン実行のためにオペレータが選択できるＪａｖａ（商標）オブジェクトの集合のことである。具体的に図２を参照すると、各アプリケーション・コンテナは、そのコンテナ内のその他のＪａｖａ（商標）コンポーネントにそのスキャン実行を指令しているＪａｖａ（商標）アプリケーション・コントローラ・コンポーネント４６を含んでいる。こうしたその他のコンポーネントには、オペレータがそのアプリケーションにより実行する処置を制御できるようにするためのユーザインタフェース・コンポーネント５３及び規定支援コンポーネント５５を含んだ規定コントローラ５２が含まれる。
【００２７】
アプリケーション・コンテナはさらにスキャン記述５０を含んでいる。こうしたスキャン記述はサーバー１８、２０、２２及び２３（図１）にダウンロードされ、各サーバーがこれらを使用して規定されたスキャンを実行する。記憶されているスキャン記述５０は、異なるそれぞれのアプリケーションごとに特有のものである。
【００２８】
本発明の好ましい実施形態は、このＭＲＩシステム向けのアプリケーション・プログラムを作成するためのアプリケーション開発システムである。このアプリケーション・プログラムは、アプリケーション・コンテナＪａｖａ（商標）オブジェクト内にある相互に関連したＪａｖａ（商標）オブジェクトの集合である。これらのオブジェクトは、アプリケーション開発システムのツールを用いて選択及び編集を受ける。アプリケーション開発システムは、ＭＲＩシステムのワークステーション１０上に置くことや、同様の構造及び機能をもつ別のスタンドアロンのワークステーション上に置くことができる。
【００２９】
アプリケーション・プログラムを開発した後、アプリケーション・コンテナ・オブジェクトを直列化してディスク記憶装置４４内に保存する。ＭＲＩシステムのオペレータがこのアプリケーション・プログラムを選択すると、対応する直列化されたアプリケーション・コンテナ・オブジェクトがディスク記憶装置４４から読み取られ、図２に示すようにＭＲＩシステムを動作させるように復元される。ここで、アプリケーション開発システムの要求事項をより十分に理解できるように、アプリケーション・プログラムの指令の下にＭＲＩシステムが実行する動作を記載することにする。
【００３０】
アプリケーション・コントローラ４６は、スキャンを実行する際にアプリケーションの状態を保持しているアプリケーション状態オブジェクト４８を含んでいる。アプリケーションのライフサイクル内で起こりうる状態としては、
初期化
規定実行中
規定終了
ダウンロード中
ダウンロード終了
予備スキャン中
予備スキャン終了
バッチスキャン中
リアルタイムスキャン中
スキャン一時停止
スキャン終了
再構成終了
描画終了
がある。
【００３１】
このライフサイクルは、アプリケーション・コンテナからのコマンド（アプリケーションの初期化など）、オペレータからコマンドの（スキャンの開始など）、及びアプリケーションが内部発生させたコマンド（スキャン完了など）により駆動させている。
【００３２】
オペレータが先ずアプリケーションを選択すると、そのアプリケーションは初期化されて「規定実行中の状態」に変わると共に、規定コントローラ５２が有効になりスキャン記述コンポーネント５０と対話して、オペレータがどのスキャン・パラメータ（例えば、ＴＲ、スライスの数、ＦＯＶの位置、フリップ角）を指定する必要があるかを決定し、またその規定が完了しかつ有効であるか否かを判定する。次いで、規定コントローラ５２はアプリケーション状態オブジェクト４８に対して「規定終了」状態に切り替わるように信号を送り、制御パネル上のダウンロード、予備スキャン及びスキャンのボタンが有効となる。
【００３３】
オペレータが「ダウンロード」ボタンを押すと、アプリケーション状態オブジェクト４８は「ダウンロード状態」に変わると共に、アプリケーション・コントローラ４６はスナップショット・コントローラ５４を利用してスナップショットを発行しコマンドをダウンロードする。より詳細には以下で説明するが、これらのコマンドにより、スキャン記述５０がサーバー１８、２０、２２及び２３にダウンロードされる。スナップショット・コントローラ５４はサーバー１８、２０、２２及び２３の各々から戻される「ダウンロード完了」通知を受け取り、四つのサーバーすべてがダウンロードを受けると、アプリケーション状態オブジェクト４８は「ダウンロード終了」状態に変わる。
【００３４】
オペレータがスキャン・ボタンを押すと、アプリケーション状態オブジェクト４８はスキャンモードに変更されると共に、スキャン・コントローラ５６を利用してスキャン・コマンドがパルスシーケンス・サーバー１８に対して発行される。次の状態遷移は、そのスキャンモード（すなわち、リアルタイムかバッチか）により制御される。この二つのモードにおけるアプリケーションの挙動は極めて異なっており、このため二つの異なるスキャン中状態が存在する。リアルタイム・モードになっている場合はアプリケーションが「リアルタイムスキャン中」状態に設定され、またバッチ・モードになっている場合はアプリケーション状態は「バッチスキャン中」状態に設定される。リアルタイム・モードにあるとき、ユーザがスキャンを一時停止するように選択すると、アプリケーションは「スキャン一時停止」状態に遷移することになる。スキャンを再開すると、アプリケーションはリアルタイムスキャン中状態に戻される。リアルタイムスキャン中状態では、アプリケーションを編集することができ、さらにスキャンの進行中であっても編集した記述がダウンロードされることになる。しかし、アプリケーションは状態遷移を起こさず、編集及びダウンロードを許容するように同じ状態が特徴付けされることになる。リアルタイムスキャン中状態のこの挙動が、この状態とバッチスキャン中状態との違いである。
【００３５】
アプリケーションは、オペレータが「スキャン停止」ボタンを押すと、「スキャン終了」状態に遷移する。さらに、アプリケーションがバッチスキャンの動作モードにある場合、パルスシーケンス・サーバー１８はスキャンが完了するとアプリケーション・コントローラ４６に通知する。いずれのイベントの場合も、アプリケーション状態オブジェクトは「スキャン終了」状態に変わる。
【００３６】
データ処理サーバー２２が収集した画像の再構成を完了すると、アプリケーション・コントローラ４６は通知を受けアプリケーション状態オブジェクト４８は「再構成終了」状態に変わる。これにより、再構成画像をディスク４４上に表示したりさらに処理するために利用できることがワークステーション１０に示される。
【００３７】
スキャン記述５０は、規定コントローラ５２を用いてスキャン・パラメータを集めること、並びにこれらの規定スキャン・パラメータを、サーバー１８、２０、２２及び２３へのダウンロードが可能なより小さなコンポーネントの組に編成させることを受け持つようなコンポーネントの組を含んでいる。サーバー１８、２０、２２及び２３上では、規定されたスキャンを実行するために、これらダウンロードしたコンポーネントによりハードウェアの動作を指令している。
【００３８】
各アプリケーション内には、ＭＲスキャンの実行に関する異なる態様を扱うためのコンポーネントの論理的グループ分けを提供する様々な記述タイプが存在する。こうした記述のタイプとしては、
パルス記述
シーケンス記述
収集記述
データ処理記述
データ記憶記述
がある。
【００３９】
パルス記述は、ハードウェア制御コンポーネントと共に、傾斜システム及びＲＦシステムのハードウェア上で波形が繰り出される（ｐｌａｙｅｄ　ｏｕｔ）ように規定し制御するためのコンポーネントを含む。これらのコンポーネントは、ランタイム時にシーケンス記述のコンポーネントが発生させたイベントに応答して、波形及びハードウェアの動的な態様を制御している。この記述はさらに、ＲＦシステム２６が受け取ったＮＭＲ信号のフィルタ処理を制御するためのコンポーネントを含む。これらのコンポーネントは、一体となって、ＮＭＲ信号の励起、エンコード及び読み出しで使用する傾斜／ＲＦ／制御パルスの一意の組を規定している。その例としては、２Ｄスピンエコー、２Ｄ傾斜エコー、２Ｄ高速スピンエコー、並びに３Ｄ傾斜エコーシーケンスのためのパルス記述がある。
【００４０】
このシーケンス記述は、繰り出されるパルスシーケンスの順序を制御し、かつスキャンの時間軸に沿って一連の規定イベントを定義するためのコンポーネントの組を含む。シーケンス記述により定義したこれらの規定されたイベントによりパルス記述内のパルス・コンポーネントの動的挙動をトリガしている。これらのコンポーネントにより、スライス及びｋ空間サンプリング順序の定義で使用される一意の収集配列が規定される。その例としては、２Ｄシーケンシャル（ｓｅｑｕｅｎｔｉａｌ）、２Ｄインターリーブ、３Ｄシーケンシャル、３Ｄ楕円中心（ｅｌｌｉｐｔｉｃａｌ　ｃｅｎｔｒｉｃ）、マルチスライス・シネがある。
【００４１】
収集記述は、ＲＦシステム２６が収集したＮＭＲ信号のリアルタイム処理を規定しているコンポーネントの組を含んでいる。これらのコンポーネントは、収集したＮＭＲ信号に対する演算の実行を指令して、シーケンス記述内のコンポーネントにフィードバックして後続のスキャナ動作に影響を与えるような情報を作成させている。これらのコンポーネントは、例えば、キャリブレーション予備スキャンの間にＮＭＲ信号を処理して後続のスキャン中に発生させるＲＦパルスのパワー及び周波数の変化をフィードバックすることや、あるいはＮＭＲ信号を処理して造影剤のボーラスが関心領域内に到達する時点を検出して中心ビュー順序（ｃｅｎｔｒｉｃ　ｖｉｅｗ　ｏｒｄｅｒ）収集の開始をトリガすること、あるいは「ナビゲータ」ＮＭＲ信号を処理して、スキャンのビュー順序の変更やＲＦシステム２６の復調基準周波数の変更に使用することができるような位相補正情報を作成することがある。こうした機能を必要としない臨床アプリケーションで共通に使用されるようなスキャンも存在する、しかしこれらのアプリケーションでは、収集記述内のコンポーネントは単に、収集したＮＭＲ信号をバッファリングまたはフィルタ処理して、これらをデータ処理サーバー２２で利用可能としているだけである。
【００４２】
データ処理記述は、データ処理サーバー２２に対して収集したＮＭＲ信号を意味のある形態に変換するように指令するためのコンポーネントを含んでいる。画像再構成は最も一般的な機能であり、得られる形態はスキャン対象の２Ｄまたは３Ｄ画像である。これらのコンポーネントはさらにスペクトロスコピー処理を定義することもでき、この場合に得られる形態は収集したＮＭＲ信号のスペクトル画像となる。
【００４３】
データ記憶記述は、スキャン中にデータベース内に保存する画像を定義するためのコンポーネントを含んでいる。この中には、再構成画像の外に、患者の解剖学情報やスペクトログラフ情報と共に画像上に注釈として表示させる患者情報やスキャン・パラメータ情報が含まれることがある。
【００４４】
上で指摘したように、アプリケーション開発システムは、メモリ、ディスプレイ、キーボードやマウスなどの入力デバイス、及びここで記載する機能を実行するようにプログラムしたプロセッサを有するワークステーション上で実現される。具体的に図３及び４を参照すると、アプリケーション開発システムのソフトウェア・アーキテクチャを形成しているプログラムとデータは、ユーザに対するウィンドウ表示６２を作成する視覚コンポーネント・アセンブラ６０を含んでおり、このウィンドウ表示６２は、フレームワーク・エリア６４、ワークスペース・エリア６６、プロパティ・エリア６８という三つのエリアを含んでいる。アプリケーション・プログラムは、フレームワーク・エリア６４内に表示されるコンポーネント・ライブラリ７２からコンポーネントを選択し、これをワークスペース・エリア６６にドラッグすることにより開発される。こうして選択したコンポーネントは、ワークスペース記憶装置６７内に保存される。ワークスペース・エリア６６内で選択したコンポーネントのプロパティはプロパティ・エリア６６に表示され、またこれらのプロパティはプロパティ・エディタ７０を用いて変更することができる。
【００４５】
フレームワーク・エリア６４に表示されるコンポーネントは、コンポーネント・ライブラリ７２内に保存しておいたＪａｖａ（商標）のクラスまたはオブジェクトである。これらのコンポーネントは、典型的には、市販の統合開発環境７４（Ｓｕｎ　Ｍｉｃｒｏｓｙｓｔｅｍｓにより「Ｆｏｒｔｅ　ｆｏｒ　Ｊａｖａ」の商標名で販売されている環境やＩｎｐｒｉｓｅにより販売されている「ＪＢｕｉｌｄｅｒ」など）を用いて開発している。これらのコンポーネントはＪａｖａ（商標）のソースコードで記述し、バイトコードと呼ぶ２進命令になるようにコンパイルしている。これらのバイトコードのコンポーネントはコンポーネント・ライブラリ７２内の適当なパッケージに保存している。多くのＪａｖａコンポーネントが市販されており、これらを個別仕様で記述したＪａｖａコンポーネントと共に使用し、上述したＭＲＩ機能の実行に特に適用可能なより複雑なコンポーネントを作成することができる。その目的は、コンポーネント・ライブラリ７２内に十分なコンポーネントを作成しかつ保存しておき、ユーザが既存のコンポーネントの選択によって所望の任意のアプリケーションを構築できるようにすることである。こうした場合では、ユーザは新たなアプリケーションを実現するためにソフトウェア・コードを全く記述する必要がなく、ユーザは単に所望の機能を選択し集合させるように求められるだけである。
【００４６】
具体的に図３、４及び６を参照して、コンポーネントをフレームワーク・エリア６４からワークスペース６６内にドラッグすると、視覚コンポーネント・アセンブラ６０によりコンポーネント間の階層関係が確立される。図４の好ましい一方法ではこれらの関係は、その関連するコンテナ・コンポーネントのアイコンの下にコンテイニー（ｃｏｎｔａｉｎｅｅ）コンポーネントのアイコンをインデント表示することにより図示している。ワークスペース６６のコンポーネントのこの階層関係の表示に関する別の実施形態を図６に示す。この実施形態では、各上位クラス・コンポーネントのアイコンからその関連する下位クラス・コンポーネントのアイコンまで矢印で指している。アプリケーションを完全に表示するには利用可能なエリア以上の表示エリアが必要であること、並びにワークスペース６６のアプリケーションの別の部分を表示させるためにはスクロール・バーを用いることができることを理解されたい。
【００４７】
アプリケーションを構築するには、先ずユーザはフレームワーク・エリア６４にコンポーネントのライブラリをロードする。これらのコンポーネントは表示され、アプリケーション・コンテナ・コンポーネント７６が選択される。このコンポーネント７６をワークスペース６６にドラッグすると、その子（ｃｈｉｌｄｒｅｎ）のすべてに対するコンポーネントも特定される。これによりアプリケーションの構築が開始されるが、ユーザはこの構築を完成させるためにさらにどのコンポーネントが必要であるかを知っていなければならない。この作業を支援するために、ワークスペース６６内の任意のコンポーネントをマウスの右クリックで選択し、当該コンポーネントにより実行される機能の説明をＪａｖｏｄｏｃ（商標）の名で知られている形式で表示させることができる。
【００４８】
ワークスペース６６内の各コンポーネントは、数値変数、ブール変数、その他のクラスタイプや名前付き変数を含むようなプロパティを有している。視覚コンポーネント・アセンブラにより、ユーザは選択するコンポーネント上での左クリックにより、プロパティ・エリア６８内にこれらのプロパティを表示させることができる。次いで、ユーザが左クリックしてプロパティ・エリア６６内に表示させたプロパティのうちの一つを選択すると、プロパティ・エディタツール７０を利用したユーザによる変更が可能となる。臨床での設定で作成される新たなアプリケーションはほとんどが、既存のアプリケーションのコンポーネント内のプロパティ変更に限られることになるものと企図される。換言すると、フレームワーク・エリア６４から既存のアプリケーションがドラッグされ、その中で選択したコンポーネントのプロパティが編集され、さらにその結果が新たなアプリケーションとしてコンポーネント・ライブラリ７２に戻されて保存される。
【００４９】
アプリケーションが完成すると、次いでワークスペース・エリア６６でアセンブルを受けた選択コンポーネントを永続化させる。この操作は目下のところ、上述の直列化機構を用いたアプリケーションの保存により達成させているが、別の永続化機構も周知でありかつ利用可能である。永続化機構は選択したコンポーネント間の階層関係（「グラフ」）、並びにインスタンス変数（プロパティ）の値を保存している。アプリケーションの各コンポーネントに対するバイトコードは永続化したアプリケーションと一緒に保存していない。そのアプリケーションを利用する医用イメージング・システムが、アプリケーションで使用されるすべてのコンポーネントに対するバイトコードをそれ自体で保存していなければならない。永続化させたアプリケーションをＭＲＩシステム上に復元する（すなわち「非直列化（ｄｅｓｅｒｉａｌｉｚｅ）」する）と、永続化したオブジェクトのグラフ及びインスタンス変数により指定されたバイトコードのロードが指令される。
【００５０】
ＭＲＩアプリケーションのコンポーネントの多くはパルスの生成及びパルスシーケンスに関連しているため、本発明の別の特徴はコンポーネントにより生成される波形その他のデータの表示である。具体的に図３、７及び８を参照すると、すべてのコンポーネントは、「可視性（ｖｉｓｉｂｌｅ）」と呼ぶ一つのプロパティを含むことができる。パルス波形コンポーネントの場合では、この可視性プロパティを「ｔｒｕｅ」に切り換えると、波形プロッタ７８が有効となりパルスシーケンス・プロッタ・ウィンドウ８０が生成され表示される。このウィンドウ８０はコンポーネントのこのインスタンスにより生成される波形８２及び８４を表示している。エディタ７０を用いてプロパティを変更すると、表示される波形も変化することがある。この様子を、「パルスタイプ」というプロパティを変更しようとしている図８に示している。
【００５１】
アプリケーションが完成すると、アプリケーション・コンテナ・オブジェクトは直列化され記憶装置に保存される。上で指摘したように、アプリケーション・プログラムのこの直列化形態は、上述したＭＲＩシステムなど別の仮想Ｊａｖａ（商標）マシンで再開させ、実行の準備としてオブジェクト指向のアプリケーション・プログラムに復元させることができる。
【００５２】
保存するアプリケーション・プログラムを直列化構成とする利点の一つは、この構成が遠隔の場所から臨床用ＭＲＩシステムまで効率良くダウンロードできることである。この操作は自営イントラネットや公衆電話システムを用いた直接シリアル接続を介して実行することができ、あるいはインターネット公共システムを介して実行することもできる。いずれの場合も、アプリケーション・プログラムの転送は、各オブジェクトまたはコンポーネントのクラス名、並びに属性名、タイプ及び値により記述された当該コンポーネントのインスタンス・データを運んでいるオブジェクトの直列化された流れとなる。さらに、ＭＲＩシステムで受け取る直列の流れにおいてアプリケーション・プログラムのコンポーネントのグラフを収集できるようにコンポーネント間の関係も転送され、次いでＭＲＩシステム上で再生成（すなわち、復元）される。直列化機構はオブジェクト間のすべての関係に従っている。グラフ内の各オブジェクトまたはコンポーネントは一度だけ直列化を受ける。万一、あるコンポーネントが複数回参照された場合は、直列化過程がこの反復を認識しグラフ内で前回の出現に対する参照を挿入する。これによりオブジェクトの重複が回避され、ダウンロード作業の量が少なくなる。
【００５３】
直列化過程によりさらに、バイトコードをダウンロードする必要がなくなる。このことは、ダウンロードしたアプリケーション・プログラムを受け取った任意のＭＲＩシステムがそのアプリケーション・プログラムに含まれるすべてのコンポーネントに対するバイトコードを記憶したライブラリを有していることを前提としている。したがって、臨床システムに対するアップデートには、新たなアプリケーションのダウンロード、並びにそのＭＲＩシステムのライブラリに対する新たに必要なすべてのコンポーネントのダウンロードの両方が含まれることがある。
【００５４】
もちろん、直列化過程によりさらに、アプリケーションを臨床用ＭＲＩシステムからアップロードすることも可能となる。これにより、臨床研究システムで開発したアプリケーション及び／またはコンポーネントを検討及び分析のためにＭＲＩシステム製造者にアップロードすることが可能となる。
【００５５】
アプリケーション開発システムはさらに、シミュレーション・モードで動作させて、ＭＲＩシステムのハードウェア上で実際のスキャンを実行させる前にそのアプリケーション・プログラムを試すことができる。そのアプリケーション・プログラムが任意のＪａｖａ（商標）仮想マシン上で適当なコンポーネント・ライブラリを用いて動作しているためこのシミュレーション能力が促進されている。この能力はさらに、ユーザインタフェースがアプリケーションの一つのコンポーネントであり、そのシミュレーションが同じインタフェースを用いてＭＲＩシステム上での動作時と同じ情報を表示していることによっても促進されている。シミュレーション環境は、アプリケーション開発システムの動作モードの一つであり、これにより開発者は自らのアプリケーションをスキャナとほぼ同様の環境で試験しデバッグすることができる。コンポーネント・アセンブラ・コレクションにロードされたＪａｖａアプリケーションは先ず保存することができ、次いでシミュレーションを開始することができる。シミュレーション中は、サーバーを「シミュレーション・モード」としており、したがって、ある種のハードウェア・インタフェースはエミュレートされているか稼働させていない。典型的には、サーバーのイメージング・チェーンには、送受信装置が受け取ったらそのままの状態で処理を受ける生データが注入される。
【００５６】
アプリケーションのシミュレーションの間に、開発者には、あるレベルのメッセージ・トレースやコンポーネント・デバッグを実施する機会が与えられる。開発者には幾つかのレベルのコンポーネント・メッセージ・トレースが提供され、これらはアプリケーションのシミュレーションの間で動的に設定することができる。開発者はさらに、幾つかのレベルのデバッグを呼び出すことができる。コンポーネント及びアプリケーションの開発の間に、開発者は各コンポーネント内で「ｄｅｂｕｇ＝ＴＲＵＥ」のプロパティを設定し、当該コンポーネントに対する個別ユーザ向けのデバッグ挙動にアクセスすることができる。あるいは、あるプロパティに対して、「０」をｎｏｎｅまたは「ｄｅｂｕｇ　ｏｆｆ」とするように幾つかのレベルのデバッグが存在することもある。例えば、シーケンス記述のシーケンス・コンポーネントにより、スライスと位相エンコーディングのループ形成の単一のステップを提供することができる。所与のコンポーネントで必要となる個別仕様のあらゆるユーザインタフェースは、デバッグ・モードにおいて当該コンポーネントにより提供される。
【００５７】
シミュレーション中にアクセスを受けることができるシミュレーション・ユーザインタフェースは一つまたは複数存在することもあり、ある特定のサーバーの内部挙動、インターサーバーのタグ通信の監視、また恐らくは、タグやエージェント挙動を含めある特定のサーバーの詳細な挙動の監視などのさらに全体的な動作にアクセスすることができる。
【図面の簡単な説明】
【図１】
本発明の好ましい実施形態を利用しているＭＲＩシステムのブロック図である。
【図２】
図１のＭＲＩシステムの一部を形成している、ワークステーション内の機能コンポーネントのブロック図である。
【図３】
本発明を利用したアプリケーション開発システムの好ましい実施形態のソフトウェア・アーキテクチャのブロック図である。
【図４】
図３のソフトウェア・アーキテクチャの一部を形成している視覚コンポーネント・アセンブラにより生成される表示を図示したものである。
【図５】
本発明を利用したイメージング・システムのブロック図である。
【図６】
図４の表示内のワークスペース領域の別の実施形態の図表示である。
【図７】
図４の表示のうち、ＲＦパルス・コンポーネントを表しているプロパティ部分の図表示である。
【図８】
図７のＲＦパルス・コンポーネントのグラフ・プロットを表した図表示である。
【符号の説明】
１０　ワークステーション
１２　ディスプレイ
１４　キーボード
１６　ワークステーション・プロセッサ
１８　パルスシーケンス・サーバー
２０　データ収集サーバー
２２　データ処理サーバー
２３　データ記憶サーバー
２４　傾斜システム
２６　ＲＦシステム
２８　傾斜コイル・アセンブリ
３０　マグネット・アセンブリ
３２　偏向用マグネット
３４　全身用ＲＦコイル
３６　生理学的収集コントローラ
３８　スキャン室インタフェース回路
４０　患者位置決めシステム
４２　ディスプレイ
４４　ディスク記憶装置
４６　アプリケーション・コントローラ
４８　アプリケーション状態オブジェクト
５０　スキャン記述
５２　規定コントローラ
５３　ユーザインタフェース・コンポーネント
５４　スナップショット・コントローラ
５５　規定支援コンポーネント
５６　スキャン・コントローラ
６０　視覚コンポーネント・アセンブラ
６２　ウィンドウ表示
６４　フレームワーク・エリア
６６　ワークスペース・エリア
６７　ワークスペース記憶装置
６８　プロパティ・エリア
７０　プロパティ・エディタ
７２　コンポーネント・ライブラリ
７４　統合開発環境
７６　コンポーネント
７８　波形プロッタ
８０　パルスシーケンス・プロッタ・ウィンドウ
８２　波形
８４　波形
１１０　イメージング装置
１１２　データ処理装置
１１３　データ記憶サーバー
１１４　オペレータ入力デバイス
１１６　ディスプレイ装置
１１７　ハードディスク駆動装置、記憶デバイス
１１８　ワークステーション
１２０　ユーザインタフェース
１２２　スキャン記述
１２４　画像収集サーバー
１２６　データ処理サーバー
【図１】
2004514993.tif 000003
【図２】
2004514993.tif 000004
【図３】
2004514993.tif 000005
【図４】
2004514993.tif 000006
【図５】
2004514993.tif 000007
【図６】
2004514993.tif 000008
【図７】
2004514993.tif 000009
【図８】
2004514993.tif 000010
【国際公開パンフレット】
2004514993.tif 000011
2004514993.tif 000012
2004514993.tif 000013
2004514993.tif 000014
2004514993.tif 000015
2004514993.tif 000016
2004514993.tif 000017
2004514993.tif 000018
2004514993.tif 000019
2004514993.tif 000020
2004514993.tif 000021
2004514993.tif 000022
2004514993.tif 000023
2004514993.tif 000024
2004514993.tif 000025
2004514993.tif 000026
2004514993.tif 000027
2004514993.tif 000028
2004514993.tif 000029
2004514993.tif 000030
2004514993.tif 000031
2004514993.tif 000032
2004514993.tif 000033
2004514993.tif 000034
2004514993.tif 000035
2004514993.tif 000036
2004514993.tif 000037
2004514993.tif 000038
2004514993.tif 000039
2004514993.tif 000040
2004514993.tif 000041