(57)【特許請求の範囲】
【請求項１】
超音波の送受波により生体内の三次元空間から取得されたデータが格納される外部メモリと、
前記外部メモリから転送されたデータを一時的に格納する内部メモリを有し、その内部メモリ上のデータを参照しながら、前記三次元空間に対して設定される各レイごとに奥行方向に三次元画像形成のためのボクセル演算を繰り返し実行し、これにより三次元画像を形成する演算処理部と、
を含み、
前記演算処理部は、
前記三次元空間に対して複数のレイからなる二次元レイ集合を設定するレイ集合設定部と、
前記二次元レイ集合に対して二次元的に整列した複数の二次元レイグループを設定するレイグループ設定部と、
所定のグループ選択順序に従って前記レイ集合から二次元レイグループを順次選択する過程において、選択された二次元レイグループごとに所定のレイ選択順序に従ってボクセル演算の対象となるレイを順次選択する進行制御部と、
前記選択されたレイ上でのボクセル演算に際して必要となるデータが前記内部メモリに存在していない場合に、当該データを前記外部メモリから取得して前記内部メモリ上に格納する転送制御部と、
を含むことを特徴とする超音波診断装置。
【請求項２】
超音波の送受波により生体内の三次元空間から取得されたデータが格納される外部メモリと、
前記外部メモリから転送されたデータを一時的に格納する内部メモリを有し、その内部メモリ上のデータを参照しながら、前記三次元空間に対して設定される各レイごとに奥行方向に三次元画像形成のためのボクセル演算を繰り返し実行し、これにより三次元画像を形成する演算処理部と、
を含み、
前記演算処理部は、
前記三次元空間に対して複数のレイからなる二次元レイ集合を設定するレイ集合設定部と、
前記二次元レイ集合に対して二次元的に整列した複数の二次元レイグループを設定するレイグループ設定部と、
前記各二次元レイグループに対して奥行方向に複数の区画を設定することにより、前記二次元レイ集合に対して三次元的に整列した複数の三次元処理単位を設定する処理単位設定部と、
所定のグループ選択順序に従って前記二次元レイ集合から二次元レイグループを順次選択する過程において、選択された二次元レイグループごとに奥行方向に三次元処理単位を順次選択すると共に選択された三次元処理単位内で所定のレイ選択順序に従ってボクセル演算の対象となるレイを順次選択する進行制御部と、
前記選択されたレイ上でのボクセル演算に際して必要となるデータが前記内部メモリに存在していない場合に、当該データを前記外部メモリから取得して前記内部メモリ上に格納する転送制御部と、
を含むことを特徴とする超音波診断装置。
【請求項３】
請求項１又は２記載の装置において、
前記演算処理部は、更に、
前記選択されたレイ上における各ボクセルのボクセル値をその近傍に存在する複数の近傍データから補間演算により求める補間演算部と、
前記選択されたレイ上における各ボクセルのボクセル値を用いてボクセル演算を実行するボクセル演算部と、
を含むことを特徴とする超音波診断装置。
【請求項４】
請求項１又は２記載の装置において、
前記所定のレイ選択順序は、一筆書きに相当するレイ選択ルートを構成することを特徴とする超音波診断装置。
【請求項５】
請求項４記載の装置において、
前記レイ選択ルートは、つづら折り形態、螺旋形態、又は、ペアノ曲線形態を有することを特徴とする超音波診断装置。
【請求項６】
請求項１又は２記載の装置において、
前記所定のグループ選択順序は、一筆書きに相当するグループ選択ルートを構成することを特徴とする超音波診断装置。
【請求項７】
請求項５記載の装置において、
前記グループ選択ルートは、つづら折り形態、螺旋形態、又は、ペアノ曲線形態を有するうことを特徴とする超音波診断装置。
【請求項８】
請求項２記載の装置において、
前記各三次元処理単位は奥行方向に複数のボクセルに相当するサイズを有することを特徴とする超音波診断装置。
【請求項９】
請求項８記載の装置において、
前記各三次元処理単位は、開始面から停止面まで、奥行方向に複数のボクセルに相当するサイズを有し、
前記各三次元処理単位における各レイごとに前記開始面から前記停止面までボクセル演算が進行することを特徴とする超音波診断装置。
【請求項１０】
請求項９記載の装置において、
前記各二次元レイグループにおける奥行方向に隣接する２つの三次元処理単位間では、各レイごとにボクセル演算結果が引き継がれることを特徴とする超音波診断装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は超音波診断装置に関し、特に、外部メモリから転送されるデータに基づいて超音波画像を形成する演算処理部（プロセッサ）の制御に関する。
【背景技術】
【０００２】
超音波診断装置において、超音波ビームを二次元走査することによって三次元空間（三次元エコーデータ取込空間）が形成される。これによってボリュームデータが取得される。ボリュームデータに対するレンダリング処理によって三次元画像が形成される。一方、三次元空間に対して任意の位置及び姿勢で任意断面（切断面）をユーザー指定させ、その任意断面に相当する断層画像（任意断層画像）を形成することも行われている。
【０００３】
一般に、ボリュームデータは、複数のフレームデータによって構成され、各フレームデータは複数のビームデータによって構成される。各ビームデータは、超音波ビーム上に存在するデータ（エコーデータ）列によって構成される。つまり、ボリュームデータは、三次元空間内で離散的に存在するデータ（エコーデータ）集合である。
【０００４】
一般に、レンダリング処理に際しては、三次元空間に対して複数のレイ（仮想的視線）が設定され、各レイごとにレイ上に存在するデータ列（ボクセル列）に対して視点側から逐次的にボクセル演算が実行される。例えば、ボリュームレンダリング法においては、不透明度等のパラメータを利用するボクセル演算が繰り返し実行される。その場合、レイ上の各ボクセルの座標に丁度一致するデータが存在するとは限らないので、その近傍の複数のデータから補間演算によってデータ（ボクセル値）が生成され、あるいは、近傍のデータが当該ボクセルについてのデータ（ボクセル値）であるとみなされる（それも一種の補間演算である）。
【０００５】
レンダリング処理つまり三次元画像形成は、一般に、超音波診断装置に設けられた汎用プロセッサ（ＣＰＵ）又は専用プロセッサ（ＤＳＰ）などによって実行される。それらのプロセッサはプロセッサコアから高速にアクセスできる内部メモリ（キャッシュメモリ）を有するが、通常、その記憶容量はボリュームデータ全体を格納できるほど大きいものではない。そこで、従来の超音波診断装置においては、外部メモリ上にボリュームデータを一時的に格納し、そこから必要なデータを切り出してプロセッサ内の内部メモリへ転送していた。外部メモリは一般に大容量であるが、そこへのアクセスは低速となる。よって、三次元画像の形成（補間演算及びボクセル演算）に当たっては、内部メモリ上にキャッシュされているデータをできる限り利用して（キャッシュヒット率を高めて）、外部メモリへのアクセスを少なくすることが要請される。ちなみに、外部メモリからプロセッサ内の内部メモリへ、必要なデータの転送が行われる場合、一般に、当該データの周囲データも含めて一緒に転送され（ブロック単位での転送）、その周囲データについてもキャッシュされることになる。
【０００６】
なお、通常、送受波座標系（通常、ｒθφ座標系）とデータ処理上の座標系（ｘｙｚ座標系）の相違から、座標変換が必要となるが、その座標変換は外部メモリへのデータの書き込み時に行われ、あるいは、外部メモリからのデータの読み出し時に行われる。前者の場合には、外部メモリの記憶空間（アドレス空間）がデータ処理上の座標系に相当し、すべてのデータに対して座標変換が適用される。後者の場合には、外部メモリの記憶空間（アドレス空間）が送受波座標系に相当し、結果として、読み出し対象となったデータについて座標変換が適用されることになる。いずれの場合にも、レイ上における各ボクセルにボクセル値を与えるため、その周囲のデータが参照されて補間演算によってそのボクセル値が求められる。
【特許文献１】特開２０００−３３９４４１号公報
【発明の開示】
【発明が解決しようとする課題】
【０００７】
以上のように、ボリュームデータを用いて三次元画像を形成する場合において、外部メモリからプロセッサ内の内部メモリへのデータ転送を出来る限り効率的に行うことが求められる。内部メモリの容量（キャッシュ容量）にもよるが、例えば、レイ集合において単にラスタースキャンに従ってレイを個別的に選択し、その選択されたレイごとに奥行方向に沿ってボクセル演算を進行させると、スキャン経路の折り返し時点（経路が完全に分断され不連続となる地点）で、キャッシングされたデータを効果的に利用することができなくなる。つまり、上記の補間演算で必要となる複数のデータがキャッシュされている確率が小さくなる。また、個々のレイについて最初のボクセルから最後のボクセルまでボクセル演算を進行させ、それをレイの順序に従って繰り返すと、内部メモリの容量（あるいはキャッシュ容量）によっては、隣接レイ間で隣接しているデータ同士であっても、後のボクセル演算に先立って、先に記憶されたデータが内部メモリから追い出されてしまうこともある。すなわち、「参照の時間的局所性」及び「参照の空間的局所性」を考慮して、データのキャッシュを行うことが求められる。上記の特許文献１には、一表示画面を複数の区画に分割し、各区画を単位として処理を進行させることが記載されているが、区画内における選択順序や三次元的な区画については記載されていない。
【０００８】
本発明は、超音波診断装置において外部メモリからプロセッサ内の内部メモリへデータを転送して画像処理を行う場合に、内部メモリ上のデータが効率的に利用されるようにし、これにより画像処理時間を短縮化できるようにすることにある。
【課題を解決するための手段】
【０００９】
（１）本発明に係る超音波診断装置は、超音波の送受波により生体内の三次元空間から取得されたデータが格納される外部メモリと、前記外部メモリから転送されたデータを一時的に格納する内部メモリを有し、その内部メモリ上のデータを参照しながら、前記三次元空間に対して設定される各レイごとに奥行方向に三次元画像形成のためのボクセル演算を繰り返し実行し、これにより三次元画像を形成する演算処理部と、を含み、前記演算処理部は、前記三次元空間に対して複数のレイからなるレイ集合を設定するレイ集合設定部と、前記レイ集合に対して複数のレイグループを設定するレイグループ設定部と、所定のグループ選択順序に従って前記レイ集合からレイグループを順次選択する過程において、選択されたレイグループごとに所定のレイ選択順序に従ってボクセル演算の対象となるレイを順次選択する進行制御部と、前記選択されたレイ上でのボクセル演算に際して必要となるデータが前記内部メモリに存在していない場合に、当該データを前記外部メモリから取得して前記内部メモリ上に格納する転送制御部と、を含むことを特徴とする。
【００１０】
上記構成によれば、複数のレイ群に対して複数のレイグループが設定される。各レイグループは、望ましくは二次元的に互いに密集した複数のレイによって構成され、それは、処理単位あるいはそれを規定する二次元区分に相当する。複数のレイグループが所定のグループ選択順序に従って選択され、選択されたレイグループを単位として各レイごとにボクセル演算が進行する。
【００１１】
上記構成においては、個々のレイグループを単位として処理を進行させることができるので、互いに空間的に近い関係にあるデータを時間的に近接して参照できる確率を高めることができる。従来のように、単なるラスタースキャン順で個々のレイを順次選択していくと、特に、そのパス上における複数の折り返し地点で、レイ間に空間的に大きな不連続性が発生し、つまり過去に格納されていたデータがキャッシュから追い出された後にそれを再び参照する確率が高まっていたが、上記構成によれば、そのような問題が生じる確率を低減することができる。
【００１２】
特に、補間演算のために、演算対象ボクセルの周囲に存在する複数の（例えば８点の）近傍データを参照する場合にその効果が大きくなる。よって、上記構成によればキャッシュのヒット率を高めて、外部メモリへのアクセスを低減できる。これにより迅速な画像処理を実現して、画像処理のリアルタイム性を向上できる。
【００１３】
（２）本発明に係る超音波診断装置は、超音波の送受波により生体内の三次元空間から取得されたデータが格納される外部メモリと、前記外部メモリから転送されたデータを一時的に格納する内部メモリを有し、その内部メモリ上のデータを参照しながら、前記三次元空間に対して設定される各レイごとに奥行方向に三次元画像形成のためのボクセル演算を繰り返し実行し、これにより三次元画像を形成する演算処理部と、を含み、前記演算処理部は、前記三次元空間に対して複数のレイからなるレイ集合を設定するレイ集合設定部と、前記レイ集合に対して複数のレイグループを設定するレイグループ設定部と、前記各レイグループに対して奥行方向に複数の区画を設定することにより、前記レイ集合に対して複数の処理単位を設定する処理単位設定部と、所定のグループ選択順序に従って前記レイ集合からレイグループを順次選択する過程において、選択されたレイグループごとに奥行方向に処理単位を順次選択すると共に選択された処理単位内で所定のレイ選択順序に従ってボクセル演算の対象となるレイを順次選択する進行制御部と、前記選択されたレイ上でのボクセル演算に際して必要となるデータが前記内部メモリに存在していない場合に、当該データを前記外部メモリから取得して前記内部メモリ上に格納する転送制御部と、を含むことを特徴とする。
【００１４】
上記構成によれば、複数のレイ群に対して複数のレイグループが設定される。各レイグループは、望ましくは二次元的に互いに密集した複数のレイによって構成され、それは、後述の処理単位を規定する二次元区分に相当する。各レイグループには、奥行方向に沿って複数の区画が設定され、これにより、各レイグループごとに奥行方向に沿って複数の処理単位が構成される。結果として、レイ群全体としては三次元的に整列した複数の処理単位が構成されることになる。各処理単位は奥行方向にも広がる三次元のサブ空間として構成されるのが望ましいが、その奥行方向の厚みを１ボクセル分とすることも可能である。
【００１５】
画像形成に当たっては、複数のレイグループが所定のグループ選択順序に従って選択され、その選択されたレイグループについて奥行方向に沿って処理単位が順次選択される。各処理単位においては、所定のレイ選択順序に従ってレイが選択される。そして、各処理単位における各レイごとにボクセル演算が進行する。
【００１６】
上記構成においては、個々の処理単位ごとにボクセル演算を進行させることができるので、互いに空間的に近い関係にあるデータを時間的に近接して参照できる確率を高めることができる。第１に、従来のように、単なるラスタースキャン順で個々のレイを順次選択していくと、特にそのパス上における複数の折り返し地点で、レイ間に空間的に大きな不連続性が発生し、つまり過去に格納されていたデータがキャッシュから追い出された後にそれを再び参照する確率が高まっていたが、上記構成によれば、そのような問題が生じる確率を低減することができる。第２に、従来においては、各レイごとに奥行方向に沿ってボクセル演算が完了した後に次のレイについてのボクセル演算が行われており、先のレイから後のレイに切り替わる時に空間的に大きな不連続が生じていた。これに対し、上記構成によれば、各レイ上における一連の処理を分断した結果として、上記の不連続性を緩和することができる。これによりキャッシュのヒット率を高められる。
【００１７】
上記構成によれば、特に、補間演算のために、演算対象ボクセルの周囲に存在する複数の（例えば８点の）近傍データを参照する場合にその効果が顕著となる。よって、上記構成によれば、キャッシュのヒット率を高めて、外部メモリへのアクセスを低減できる。これにより迅速な画像処理を実現して、画像処理のリアルタイム性を向上できる。
【００１８】
（３）上記のボクセル演算は、望ましくは、ボリュームレンダリング法に基づく、オパシティ（不透明度）を利用した積和演算であるが、レイに沿って進行する演算であればそれ以外であっても構わない。そのボクセル演算は、実際にデータが存在する有効空間内においてのみ実行されるようにしてもよい。つまり、各レイが三次元空間を横切る入射点を演算開始点とし、三次元空間から出る出射点を演算終了点とするようにしてもよい。その構成によれば、不要な演算を省略してより迅速な画像形成処理を達成できる。また、各レイ上において、所定の条件が満たされた場合には当該レイについてはそこでボクセル演算を終了するようにしてもよい。その所定の条件としては、例えば、ボリュームレンダリング法において、各ボクセル演算の結果（出力光量）が最大に到達した条件、又は、各ボクセル演算で決定されるオパシティの累積加算値が所定値に到達した条件、などをあげることができる。上記のレイ群は、互いに並行な関係にある複数のレイによって構成されてもよいし、互いに非並行な（例えば放射状に広がるあるいは収束する）複数のレイによって構成されてもよい。
【００１９】
望ましくは、前記演算処理部は、更に、前記選択されたレイ上における各ボクセルのボクセル値をその近傍に存在する複数の近傍データから補間演算により求める補間演算部と、前記選択されたレイ上における各ボクセルのボクセル値を用いてボクセル演算を実行するボクセル演算部と、を含む。
【００２０】
上記の構成において、補間演算部は、内部メモリ上に補間演算で必要なデータが保有されていればそれを直ちに参照する。一方、内部メモリ上に補間演算で必要なデータが保有されていなければそれが外部メモリから取得され（転送され）、それが内部メモリに格納される。その転送されたデータが補間演算部により参照（利用）される。本発明では、参照の時間的局所性及び空間的局所性を高められるので、いったん内部メモリに格納されたデータがそれが追い出される（上書き消去される）前に再び参照される確率を高められる。補間演算の結果（ボクセル値としての補間値）はいったん内部メモリ上に保存されてもよいし、直ちに次のボクセル演算で利用されるようにしてもよい。
【００２１】
望ましくは、前記所定のレイ選択順序は、一筆書きに相当するレイ選択ルートを構成する。望ましくは、前記レイ選択ルートは、つづら折り形態、螺旋形態、又は、ペアノ曲線形態を有する。この構成によれば順次参照されるデータ間の空間的な不連続性を低減することができる。望ましくは、前記所定のグループ選択順序は、一筆書きに相当するグループ選択ルートを構成する。望ましくは、前記グループ選択ルートは、つづら折り形態、螺旋形態、又は、ペアノ曲線形態を有する。この構成によれば順次参照されるデータ間の空間的な不連続性を低減することができる。グループ選択順序におけるレイグループ間で、先のレイグループの最後のレイと後のレイグループの最初のレイとが空間的に隣接するようにしてもよい。すべてのレイが一筆書きのルートで順次選択されるようにしてもよい。なお、グループ選択ルート及びレイ選択ルートの少なくとも一方が一筆書きに相当する形態となるように条件付けを行うのが望ましい。
【００２２】
望ましくは、前記各処理単位は奥行方向に１又は複数のボクセルに相当するサイズを有する。望ましくは、前記各処理単位は、開始面から停止面まで、奥行方向に複数のボクセルに相当するサイズを有し、前記各処理単位における各レイごとに前記開始面から前記停止面までボクセル演算が進行する。望ましくは、前記各レイグループにおける奥行方向に隣接する２つの処理単位間では、各レイごとにボクセル演算結果が引き継がれる。これにより、結果として、各レイごとに奥行方向に沿って連続的にボクセル演算を行った場合と同じ結果を得られる。
【発明の効果】
【００２３】
以上説明したように、本発明によれば、超音波診断装置において外部メモリからプロセッサ内の内部メモリへデータを転送して画像処理を行う場合に、外部メモリへのアクセス数を削減して、画像処理時間を短縮化できる。
【発明を実施するための最良の形態】
【００２４】
以下、本発明の好適な実施形態を図面に基づいて説明する。
【００２５】
図１には、本発明に係る超音波診断装置の好適な実施形態がブロック図として示されている。図１に示す超音波診断装置は生体に対して超音波の送受波を行って超音波画像を形成する装置である。
【００２６】
３Ｄプローブ１０は、超音波の送受波を行う送受波手段であり、この３Ｄプローブ１０によって三次元空間（三次元データ取り込み空間）４０が形成される。具体的には、３Ｄプローブ１０は本実施形態において図示されていない２Ｄアレイ振動子を有している。２Ｄアレイ振動子は二次元配列された複数の振動素子によって構成されるものである。この２Ｄアレイ振動子によって超音波ビームＢが形成され、その超音波ビームＢをθ方向に走査することにより、走査面Ｓが形成され、その走査面Ｓをφ方向に走査することにより、三次元空間４０が構成される。ちなみにｒは深さ方向を表している。
【００２７】
上記のように、超音波ビームを電子的に二次元走査するのではなく、１Ｄアレイ振動子を機械的に運動させることにより、三次元空間４０を形成するようにしてもよい。３Ｄプロ−ブ１０は生体の表面上に当接して用いられるものであるが、それが体腔内に挿入されるものであってもよい。電子走査方式としては、電子リニア走査、電子セクタ走査などが知られている。
【００２８】
送受信部１２は、送信ビームフォーマおよび受信ビームフォーマとして機能する。すなわち、送受信部１２は所定の遅延関係をもって、複数の送信信号を上記の２Ｄアレイ振動子に出力する。これによって送信ビームが形成される。２Ｄアレイ振動子から出力される複数の受信信号が送受信部１２に入力され、複数の受信信号に対する整相加算処理が実行される。これによって電子的に受信ビームが形成され、それを表す整相加算後の受信信号が信号処理部１４へ出力される。
【００２９】
信号処理部１４は検波処理、対数圧縮処理などの各種の必要な処理を受信信号に対して実行するモジュールである。なお、本実施形態においては、エコーデータに基づいて組織の三次元画像が構築されるが、ドップラー情報に基づいて血流などの運動体の三次元画像を構築するようにしてもよい。
【００３０】
３Ｄメモリ１６は後に詳述する３Ｄ画像形成プロセッサ２０との関係において外部メモリとして働くものである。３Ｄメモリ１６は三次元の記憶空間を有しており、上記の三次元空間４０において取得されたデータ群は３Ｄメモリ１６上における各アドレスに格納される。超音波ビーム１本分に対応する受信信号に対して、送受信部１２あるいは信号処理部１４においてＡ／Ｄ変換（サンプリング）を実行することにより複数のエコーデータが得られ、それらのエコーデータが３Ｄメモリ１６に格納されている。
【００３１】
三次元空間４０は送受波座標系によって定義され、一方３Ｄ画像形成プロセッサ２０は直交座標系に従った演算を実行するため、いずれかの段階において座標変換を行う必要がある。そのような座標変換は、３Ｄメモリ１６の各データの書き込み時に行うこともできるし、３Ｄメモリ１６から各データを読み出す際に行うこともできる。すなわち、３Ｄメモリ１６が有する記憶空間は送受波座標系に対応し、あるいは座標変換後の直交座標系に対応する。
【００３２】
３Ｄメモリ１６には図１に示されるように、２Ｄ画像形成プロセッサ１８および３Ｄ画像形成プロセッサ２０が接続されている。それらのプロセッサ１８，２０を単一のプロセッサによって構成することもできる。各プロセッサ１８，２０は本実施形態においてプログラムによって動作するデジタルシグナルプロセッサ（ＤＳＰ）によって構成されている。２Ｄ画像形成プロセッサ１８は、三次元空間４０に対してユーザにより任意に設定された切断面に対応する断層画像を形成する。切断面上における各座標のデータが３Ｄメモリ１６から読み出され、そのように読み出されたデータに従って断層画像が形成されることになる。その場合において、必要に応じて補間演算が実行される。
【００３３】
３Ｄ画像形成プロセッサ２０は、三次元空間４０を空間的に表す三次元画像を構築するプロセッサである。本実施形態においては後に詳述するように、三次元空間４０に対して複数のレイからなるレイ群が設定され、各レイごとにボリュームレンダリング法に従ったボクセル演算を順次実行することにより、各レイごとに画素値が求められている。それらの画素値を平面上にマッピングすることにより、三次元画像が構築されている。３Ｄ画像形成プロセッサ２０は、後に説明するように、補間演算機能、ボクセル演算機能、データ転送制御機能などの各種の機能を有している。
【００３４】
３Ｄ画像形成プロセッサ２０によって形成された三次元画像のデータは表示処理部２２に出力されている。また、２Ｄ画像形成プロセッサ１８によって形成された断層画像のデータも表示処理部２２に出力されている。表示処理部２２は画像データとグラフィックデータとを合成する機能などを有しており、表示部２４に表示される画像が表示処理部２２によって生成される。なお、図１においては通常のＢモード画像（断層画像）などを形成するモジュールについては図示省略されている。
【００３５】
制御部２８は、図１に示される各構成の動作制御を行っている。制御部２８には、キーボードやトラックボールなどを有する操作パネル２６が接続されており、ユーザは、その操作パネル２６を用いて動作モードの選択や動作条件の設定を行うことができる。
【００３６】
上記の３Ｄ画像形成プロセッサ２０は、プロセッサコア３０および内部メモリ３２を有している。プロセッサコア３０は、補間演算やボクセル演算などを実行する演算部として機能する。内部メモリ３２は図１に示す例において、入力メモリ３４、キャッシュメモリ３６および出力メモリ３８を有している。入力メモリ３４は入力バッファとして機能し、３Ｄメモリ１６から転送されてきたデータが一次的に格納される。キャッシュメモリ３６は、上記のように転送されたデータをキャッシュすることによって後のデータ参照の便宜を図るためのメモリである。一般に、入力メモリ３４に格納されたデータがキャッシュメモリ３６を介してプロセッサコア３０に与えられる。キャッシュメモリ３６としては高速にアクセス可能なメモリデバイスが用いられている。なお、キャッシュメモリ３６として複数段階のキャッシュ構造を採用することもできる。すなわち１次キャッシュメモリおよび２次キャッシュメモリといったものを設けることも可能である。出力メモリ３８は出力バッファとして機能し、プロセッサコア３０において各レイごとに実行されたボリュームレンダリング演算の結果が格納される。すなわち表示プレーン上における各座標ごとの画素値が出力メモリ３８上にマッピングされることになる。これにより、出力メモリ３８上には三次元空間４０を表す三次元画像が構築される。
【００３７】
上記のように、プロセッサコア３０は補間演算およびボクセル演算を実行する。すなわち、後に詳述するような順序で各レイごとにボクセル演算を順次進行させ、その際において必要となるレイ上における各サンプル点のデータ（ボクセル値）を補間演算によって求める。本実施形態においては、各ボクセルすなわち各サンプル点ごとに、その周囲に存在する例えば８個のデータ（近傍データ）が参照され、それらに基づいて補間演算を実行することにより補間値つまりボクセル値が求められている。
【００３８】
その場合において、補間演算で必要となる近傍データがキャッシュメモリ３６上に保有されていれば、当該近傍データがプロセッサコア３０によって参照される。その一方、補間演算で必要となるデータがキャッシュメモリ３６上に存在していなければ、３Ｄメモリ１６上から当該データを取得する転送処理が実行される。転送されてきたデータが入力メモリ３４上に格納された上で、キャッシュメモリ３６上に保存され、そのデータがプロセッサコア３０によって参照されることになる。本実施形態においては、上記のようなデータの参照及び転送が、図示されていないキャッシュコントローラによって制御されている。
【００３９】
キャッシュコントローラは、あるデータを３Ｄメモリ１６から取得する場合、当該データを含むブロックを単位としてデータ転送が行われるように制御している。ブロックは本実施形態において、同じ超音波ビーム上に整列している所定数のエコーデータによって構成されるものである。すなわち、１つのブロックは１つのエコーデータ列に相当する。そのエコーデータ列の長さはキャッシュコントローラによって事前に設定される。したがって、キャッシュメモリ３６上には上記のようなキャッシュコントローラの制御によって取得された実際に参照対象となるデータのほか、それを含むブロック内に存在する他の複数のデータも格納されることになる。したがって、プロセッサコア３０が補間演算等を行う場合において、そのようなキャッシュされたデータをより有効に活用して、外部メモリへのアクセスをより低減するために、以下に詳述するような演算順序の制御が行われている。
【００４０】
図２には、三次元空間４０に対して設定されたレイ集合４２が示されている。レイ集合４２は、具体的には、三次元空間４０の外部に設定された視点（図２において上方）から延びる複数のレイ４６によって構成されるものである。複数のレイ４６は互いに平行であってもよいし、互いに非平行であってもよい。図２には三次元空間４０とレイ集合４２との関係が一例として示されており、図２においては三次元空間４０がレイ集合４２によって包みこまれている様子が示されているが、レイ集合４２が三次元空間４０の一部分を包みこむように設定されてもよい。その場合には当該一部分の三次元画像が構築されることになる。また、三次元空間４０に対して三次元の関心領域を設定し、その関心領域（それも三次元空間に相当する）に対してレイ集合４２を設定するようにしてもよい。
【００４１】
上述したレイ集合４２は複数のレイ４６によって構成され、各レイごとに視点側からマッピングプレーン５２側に向かって各ボクセルごとにボクセル演算が順次実行される。その結果として、各レイごとにボクセル演算の最終結果値としての画素値が求められ、その画素値が当該レイに対応づけられたマッピングプレーン５２上のアドレスにマッピングされる。それが図２において、Ｐ（ｘ，ｙ）で示されている。マッピングプレーン５２はｘｙ座標系を有しており、レイ集合４２はｘｙｚ座標系を有している。ちなみに、そのような座標系とは別に、上述した送受波座標系からの座標変換後の座標系としてＸＹＺ座標系が定義されるが、それについては図示省略されている。
【００４２】
本実施形態においては、キャッシュのヒット率を高めるため、いくつかの工夫が施されている。まず第１に、レイ集合４２が図２に示されるように複数のレイグループ４４に区分されている。各レイグループ４４は二次元的に互いに密集した複数のレイアレイとして構成される。また第２に、各レイグループ４４ごとに奥行方向、つまり複数のｚ方向に複数の区画５０が設定されており、各区画５０によって処理単位４８が定義されている。つまり、１つのレイグループ４４にはその奥行方向に沿って複数の処理単位４８が設定される。三次元のレイ集合４２の全体として三次元的に複数の処理単位４８が定義されることになる。各処理単位４８のｚ方向の厚み、すなわち区画５０の大きさは少なくとも１つのボクセル以上に設定され、望ましくは複数のボクセルに相当するものとして定義される。
【００４３】
ボクセル演算の順序は本実施形態において次の条件に従って定められる。まず、所定のグループ選択順序が定められており、それに従って各レイグループ４４が順番に選択される。また、上述したように各レイグループ４４ごとに複数の処理単位４８が設定されており、各レイグループ４４ごとに奥行方向に沿って順次処理単位４８が選択される。さらに、本実施形態においてはレイグループ４４内に所定のレイ選択順序が設定されており、各処理単位４８の処理にあたっては上記の所定のレイ選択順序に従ってレイが順次選択される。すなわち、このような複数の条件に従って、ボクセル演算を順次進行させることにより、キャッシュされたデータを参照する確率を効果的に高めることが可能となり、つまり外部メモリへのアクセスを低減することが可能となる。換言すれば、キャッシュにおける参照の時間的局所性及び参照の空間的局所性を高めることが可能となる。
【００４４】
図３には、代表として１つの処理単位４８が示されている。処理単位４８は１つ手前の処理単位における停止面（ｉ−１番目の停止面）に相当するｉ番目の開始面と当該処理単位についての停止面としてのｉ番目の停止面とによって挟まれる空間に相当する。処理単位４８にはそれが存在するレイグループを構成する複数のレイが貫通しており、具体的には、レイの断片としての複数の区画５０によって処理単位４８が構成されている。処理単位４８に対してボクセル演算を進行させる過程においては、上述した所定のレイ選択順序に従って順番に区画５０が選択され、当該区画内に含まれる各レイ上の複数のボクセル５４に対して奥行方向に沿って順次ボクセル演算が実行される。あるレイ上すなわちある区画５０上における最後のボクセル演算が終了すると、次のレイすなわち次の区画５０が選択され、それについて奥行方向に沿って各ボクセルごとにボクセル演算が順次実行される。そして、それが処理単位４８における最後の区画５０まで繰り返されることになる。１つの処理単位４８についてのボクセル演算が全て完了すると、当該処理単位よりも奥行方向に１つシフトした次の処理単位が処理の対象となり、上記のような所定のレイ選択順序に従った処理が実行されることになる。あるレイグループ４４における最後の処理単位についての処理が完了すると、レイ選択順序に従った次のレイグループが選択され、当該レイグループの最初の処理単位について処理が開始されることになる。そしてこのような過程が最後のレイグループにおける最後の処理単位について完結すると、最終的に図２に示したマッピングプレーン５２上に三次元画像が構築されることになる。
【００４５】
但し、本実施形態においては、各レイごとのボリュームレンダリングにあたって、演算の終了条件がいくつか定められている。第１に、各レイごとに最後のボクセルにボクセル演算が到達した場合には、当該レイについてのボクセル演算はそこで終了する。第２に、各ボクセル演算を順次進行していく場合において、ボクセル演算の結果（出力光量）が最大値となった場合にはそこで当該レイについてのボクセル演算が終了する。第３に、各レイごとにボクセル演算を進行していく場合において各ボクセル演算で用いられる不透明度の値（オパシティの値）が累積加算されており、それが所定値（例えば１）に到達した時点をもって当該レイについてのボクセル演算が終了する。
【００４６】
したがって、上記のように、グループ選択順序、処理単位の奥行方向の並び、レイ選択順序に従って、ボクセル演算が進行していくことになるが、各レイについて着目した場合には、上記の出力光量の終了条件あるいはオパシティの終了条件が満たされた段階で当該レイに限ってはボクセル演算は終了することになる。もちろん、このような条件づけは一例であって、実際の装置における要求に応じて各種の変形例を採用することができる。例えば上記のような終了条件を定めないようにしてもよいし、あるいは他の終了条件を定めるようにしてもよい。
【００４７】
次に上述したグループ選択順序及びレイ選択順序について説明する。図４には、レイ集合４２が概念図として示されている。上述したようにレイ集合４２に対しては２次元的に複数のレイグループが設定され、本実施形態では、図４に示されるようにＧ1からＧnまでのｎ個のレイグループが設定されている。各レイグループは四角形の形態を有し、すなわち二次元マトリクス状の複数のレイによって構成されている。
【００４８】
図５には、各レイグループについて設定されるレイ選択順序のいくつかの例が示されている。いずれの例においても一筆書きのレイ選択ルートが構成されている。具体的には、（Ａ１）および（Ａ２）にはつづら折りの形態をもったレイ選択ルート５８，６０が示されている。（Ｂ１）および（Ｂ２）には渦巻き型の形態を有するレイ選択ルート６２，６４が示されている。（Ｃ）にはペアノ曲線形態を有するレイ選択ルート６６が示されている。それぞれのレイ選択ルートにおいてはルート上において隣接するレイ間に空間的に大きなギャップが生じていないためキャッシュのヒット率を高めることが可能である。
【００４９】
図６には、グループ選択順序の一例が示されている。図示される例においてはつづら折りの形態を有するグループ選択ルート６８が示されている。そのグループ選択ルート６８における正方向に沿って当該ルート上に存在する個々のレイグループが順次選択されることになる。このような構成によればレイグループ間における空間的な不連続あるいはギャップを小さくすることができるので上述同様にキャッシュのヒット率を高めることが可能となる。ちなみに、グループ選択ルートの形態としては、図６に示したつづら折りの形態のほか、図５に示したような渦巻き型の形態あるいはペアノ曲線形態などを採用することができる。なお、全てのレイが一筆書きのルートをもって選択されるように構成してもよい。
【００５０】
次に、図７を用いて図１に示した３Ｄ画像形成プロセッサの動作例について説明する。
【００５１】
Ｓ１０１では三次元空間に対してレイ群が設定される。具体的には、例えば三次元空間に対してユーザにより任意に視点が設定され、その視点によって複数のレイからなるレイ群が定義される。複数のレイは平行な関係にあってもよいし、非平行な関係にあってもよい。Ｓ１０２では、レイ群に対して複数のレイグループが設定される。各レイグループは上述したように矩形形態をもったマトリクス状のアレイとして構成されている。また、Ｓ１０２では各レイグループごとに奥行方向に沿って複数の区間が設定され、すなわち複数の処理単位が設定される。Ｓ１０３では、あらかじめ定められたグループ選択順序に従って、レイグループが１つ選択される。Ｓ１０４では、選択されたレイグループにおいて、奥行方向に沿った順序で１つ処理単位が選択される。Ｓ１０５では選択された処理単位内においてレイ選択順序にしたがって、レイが１つ選択される。Ｓ１０６では、選択されたレイにおいて奥行方向に沿った順序でボクセルが１つ選択される。
【００５２】
Ｓ１０７では、選択されたボクセルについて補間演算が実行される。その場合において、補間演算で必要な近傍データセットがキャッシュメモリまたは外部メモリから取得される。すなわち、補間演算で必要な近傍データがキャッシュメモリ上に存在していればそれを外部メモリから取得する動作は行われず、キャッシュメモリ上にある当該近傍データがそのまま参照される。一方、その近傍データがキャッシュメモリ上に存在していなければ、上述したキャッシュコントローラの作用によって外部メモリから当該近傍データを含むブロックが３Ｄ画像形成プロセッサ内に取り込まれることになる。そのブロックに含まれる上記の近傍データが補間演算で参照されることになり、これとともに、当該ブロックを構成する複数のデータがキャッシュメモリ上に保存される。Ｓ１０７において補間演算の結果値であるボクセル値は内部メモリ上に格納される。
【００５３】
Ｓ１０８では、上記のように演算されたボクセル値を用いてＳ１０６で選択されたボクセルについてボリュームレンダリング法に従ったボクセル演算が実行される。そして、Ｓ１０８では、その演算結果が内部メモリ上に格納される。
【００５４】
Ｓ１０９では、現在演算対象となっている処理単位について定められた停止面にボクセル演算が到達したか否かが判断され、到達していなければＳ１０６以降の各工程が繰り返し実行される。Ｓ１０９においてはボクセル演算の終了条件も考慮されており、停止面へボクセル演算が到達した場合のほか、所定の終了条件が満足された場合にも処理がＳ１１０へ移行する。
【００５５】
Ｓ１１０では、現在演算対象となっている処理単位内における全てのレイについてボクセル演算が終了したか否かが判断され、終了していなければＳ１０５以降の工程が繰り返し実行される。全てのレイについてボクセル演算が終了していれば、Ｓ１１１において現在演算対象となっているレイグループ内における最終の処理単位についての処理が終了したか否かが判断され、それが終了していなければＳ１０４以降の各工程が繰り返し実行される。
【００５６】
Ｓ１１２においては全レイグループについての処理が終了したか否かが判断され、終了していなければＳ１０３以降の各工程が繰り返し実行される。全ての処理単位についての処理が完了すると、各レイごとに求められた画素値によって三次元画像が構築されることになる。
【００５７】
上述した実施形態においてはボリュームレンダリング法に従って三次元画像が構築されていたが、他の手法を用いて三次元画像を構築してもよく、いずれにしてもレイ上に沿ってボクセル演算が順次実行される処理が適用される場合に本発明における固有の制御を適用するのが望ましい。
【００５８】
上記の実施形態において、画像形成プロセッサ内に設けられているキャッシュメモリの容量などに応じて、あるいはレイ群を構成しているレイ密度などに応じて、あるいは各レイ上におけるボクセルの密度すなわちサンプル間隔などに応じて、各処理単位の形状を適宜可変設定できるようにしてもよい。上記実施形態においては、各レイグループごとに奥行方向に沿って複数の処理単位を定義したが、そのような処理単位を定義することなくレイグループを単位として処理を進行させていくことも可能である。この場合においても、従来のような単純なラスタスキャンに従ったレイの選択との比較において、参照の局所性を高めることができるのでキャッシングされたデータを参照できる確率を高めて迅速な画像形成を行えるという利点がある。もちろん、そのような条件付けに加えて上記のような複数の処理単位の設定を組み合わせれば、より参照の局所性を高めて実用的価値の高い制御を実現できるという利点がある。
【００５９】
なお、奥行方向に並んだ複数の処理単位において、隣接する処理単位間においては各レイごとに演算結果が渡される関係となる。すなわち、従来においては各レイごとに奥行方向に沿って連続的にボクセル演算が進行していたが、上記実施形態によれば、各レイごとに処理区間を断片的に設定し、各区間ごとに演算を行うことによって上述したように参照の局所性を高めることが可能である。なお、上記の実施形態においては、外部メモリから三次元画像形成プロセッサに対する転送の単位がブロックであったが、個別的にデータの転送を行う場合においても上述同様の効果を得ることが可能である。
【図面の簡単な説明】
【００６０】
【図１】本発明に係る超音波診断装置の好適な実施形態を示すブロック図である。
【図２】三次元空間とレイ集合との関係を示す図である。
【図３】処理単位を説明するための図である。
【図４】複数のレイグループの設定を説明するための図である。
【図５】レイ選択順序のいろいろなバリエーションを説明するための図である。
【図６】グループ選択順序を説明するための図である。
【図７】図１に示した装置の動作例を示すフローチャートである。
【符号の説明】
【００６１】
１０  ３Ｄプローブ、１２  送受信部、１６  ３Ｄメモリ（外部メモリ）、２０  ３Ｄ画像形成プロセッサ、２２  表示処理部、２４  表示部、４０  三次元（３Ｄ）空間、４２  レイ集合、４４  レイグループ、４８  処理単位。
【図１】
0004763378.tif 000002
【図２】
0004763378.tif 000003
【図３】
0004763378.tif 000004
【図４】
0004763378.tif 000005
【図５】
0004763378.tif 000006
【図６】
0004763378.tif 000007
【図７】
0004763378.tif 000008