JP4653536B2 - Ultrasonic diagnostic equipment - Google Patents

Ultrasonic diagnostic equipment Download PDF

Info

Publication number
JP4653536B2
JP4653536B2 JP2005093653A JP2005093653A JP4653536B2 JP 4653536 B2 JP4653536 B2 JP 4653536B2 JP 2005093653 A JP2005093653 A JP 2005093653A JP 2005093653 A JP2005093653 A JP 2005093653A JP 4653536 B2 JP4653536 B2 JP 4653536B2
Authority
JP
Japan
Prior art keywords
data
voxel
frame
ray
axis
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2005093653A
Other languages
Japanese (ja)
Other versions
JP2006271594A (en
Inventor
睦弘 赤羽
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hitachi Ltd
Original Assignee
Aloka Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Aloka Co Ltd filed Critical Aloka Co Ltd
Priority to JP2005093653A priority Critical patent/JP4653536B2/en
Publication of JP2006271594A publication Critical patent/JP2006271594A/en
Application granted granted Critical
Publication of JP4653536B2 publication Critical patent/JP4653536B2/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Ultra Sonic Daignosis Equipment (AREA)

Description

本発明は超音波診断装置に関し、特に、ボリュームデータに基づいて三次元画像を形成する技術に関する。   The present invention relates to an ultrasonic diagnostic apparatus, and more particularly to a technique for forming a three-dimensional image based on volume data.

超音波診断装置において三次元超音波画像を形成する場合、生体内の三次元送受波空間に対して超音波が送受波されてフレームデータが取得され、さらに、複数のフレームデータからボリュームデータが形成される。ボリュームデータは、複数のボクセルデータによって構成されるものである。そのようなボリュームデータを用いて三次元超音波画像を形成する場合、例えば、ボリュームレンダリング法が用いられる。   When forming a three-dimensional ultrasonic image in an ultrasonic diagnostic apparatus, frame data is acquired by transmitting / receiving ultrasonic waves to a three-dimensional transmission / reception space in a living body, and volume data is formed from a plurality of frame data. Is done. The volume data is composed of a plurality of voxel data. When forming a three-dimensional ultrasonic image using such volume data, for example, a volume rendering method is used.

この手法では、一般には、三次元データ空間(ボリュームデータが存在するデータ空間)を挟むように、視点とスクリーンとが定義され、また視点からスクリーンへ複数のレイ(透視線)が定義される。そして、三次元データメモリから、各レイごとにそのレイ上に存在するボクセルデータが逐次的に読み出され、各ボクセルデータに対してボクセル演算(ここでは、ボリュームレンダリング法に基づくオパシティを利用した出力光量演算)が逐次的に実行される。最終的なボクセル演算結果(出力光量)が画素値に変換され、各レイごとの画素値をスクリーン上にマッピングすることにより、三次元超音波画像が構成される。   In this method, generally, a viewpoint and a screen are defined so as to sandwich a three-dimensional data space (a data space in which volume data exists), and a plurality of rays (perspective lines) are defined from the viewpoint to the screen. Then, for each ray, the voxel data existing on that ray is sequentially read out from the three-dimensional data memory, and voxel operation (here, output using the opacity based on the volume rendering method) is performed on each voxel data. Light amount calculation) is executed sequentially. A final voxel calculation result (output light amount) is converted into a pixel value, and a pixel value for each ray is mapped on the screen, thereby forming a three-dimensional ultrasonic image.

従来において、三次元画像を形成する各種の演算に当たっては専用のハードウエア(機能が固定された高速演算器)を設計し、そのハードウエアで上記ボクセル演算などを実行させていた。   Conventionally, dedicated hardware (a high-speed computing unit with a fixed function) is designed for various computations for forming a three-dimensional image, and the voxel computation and the like are executed by the hardware.

その一方において、近時、プログラマブルな汎用プロセッサ(例えば、DSP(デジタル・シグナル・プロセッサ))の処理速度が向上し、機能設計やその変更が容易であることなどから、そのような汎用プロセッサを利用することが要請されている。   On the other hand, recently, the processing speed of programmable general-purpose processors (for example, DSP (digital signal processor)) has improved, and functional design and changes are easy. It is requested to do.

上記の三次元画像処理を汎用プロセッサで実現する場合、一般には、(r,θ,φ)座標系の複数のフレームデータから補間処理等により(x,y,z)座標系のボリュームデータ(複数のボクセルデータ)を生成し、生成したボリュームデータを三次元データメモリ(外部メモリ)上に格納し、汎用プロセッサからその三次元データメモリへアクセスし、各レイごとにボクセル演算で必要なボクセルデータをその都度特定してそれを汎用プロセッサに取り込む必要がある。任意位置に視点を設定できる場合、各レイはほとんどの場合にボリュームデータを斜めに通過することになるが、その場合において、各レイごとにボクセル演算を同時進行させると、複数のレイについてのボクセル演算で必要なボクセルデータ群はボリュームデータ上で様々に分布し、すなわち、三次元データメモリに対して必要なボクセルデータを得るためにランダムアクセスをする必要がある。   When the above three-dimensional image processing is realized by a general-purpose processor, in general, volume data (a plurality of (x, y, z) coordinate systems) is obtained from a plurality of frame data of (r, θ, φ) coordinate systems by interpolation processing or the like. Voxel data), and the generated volume data is stored in a three-dimensional data memory (external memory). The general-purpose processor accesses the three-dimensional data memory, and the voxel data necessary for the voxel calculation is obtained for each ray. It is necessary to specify each time and import it into a general-purpose processor. If the viewpoint can be set at an arbitrary position, each ray will pass through the volume data diagonally in most cases, but in that case, if voxel calculation is performed simultaneously for each ray, voxels for multiple rays are used. A group of voxel data necessary for the calculation is variously distributed on the volume data, that is, it is necessary to perform random access to obtain the necessary voxel data for the three-dimensional data memory.

SRAMのようなメモリデバイスが三次元データメモリとして用いられる場合にはそのようなランダムアクセスを高速に行うことができるが、一般には安価且つ集積度が高いDRAMあるいはSDRAMなどが用いられ、それらのメモリデバイスの場合にランダムアクセスを行おうとすると、読み出し時間が増大し、高速転送の要請に反する結果となる。   When a memory device such as SRAM is used as a three-dimensional data memory, such random access can be performed at a high speed. Generally, however, an inexpensive and highly integrated DRAM or SDRAM is used. If random access is attempted in the case of a device, the read time increases, which is contrary to the request for high-speed transfer.

下記の特許文献1には超音波診断装置においてボリュームレンダリング法を基礎として三次元超音波画像を形成する技術が開示されている。しかし、データ転送の方式や各レイごとにどのようにボクセル演算を進行させるのかについては具体的に開示されていない。また、下記の特許文献2には、キャシュミスの発生を防止するために、特定のアドレス関係にあるデータブロックを単位として、三次元データ空間(メインメモリ)から画像処理プロセッサ内へデータ転送を行う装置が開示されている。この装置では、データの読み出し時に特別な演算を行って読み出しアドレス集合を求めており、ランダムアクセスの必要性を指摘できる。   Patent Document 1 below discloses a technique for forming a three-dimensional ultrasonic image based on a volume rendering method in an ultrasonic diagnostic apparatus. However, there is no specific disclosure regarding the data transfer method and how the voxel calculation proceeds for each ray. In Patent Document 2 below, data transfer from a three-dimensional data space (main memory) to an image processor is performed in units of data blocks having a specific address relationship in order to prevent the occurrence of a cache miss. An apparatus is disclosed. In this apparatus, a special calculation is performed at the time of reading data to obtain a set of read addresses, and the necessity of random access can be pointed out.

特許第2883584号Japanese Patent No. 2883584 特開平9−134447号公報JP-A-9-134447 特開2002−224109号公報JP 2002-224109 A 特開2003−19134号公報Japanese Patent Laid-Open No. 2003-19134

ボリュームレンダリング法において、三次元データメモリに対してランダムアクセスが必要となるのは、上述したように、ボクセル演算で必要なボクセルデータ群がボリュームデータ上で様々に分布しているためである。つまり、三次元データメモリ上において、ボクセル演算で必要なボクセルデータがランダムに記憶されているためである。   In the volume rendering method, the reason why random access to the three-dimensional data memory is required is that, as described above, a group of voxel data necessary for voxel calculation is distributed on the volume data. That is, the voxel data necessary for the voxel calculation is randomly stored on the three-dimensional data memory.

三次元データメモリに記憶されるボクセルデータの記憶位置(アドレス)は、主に、エコーデータの取得順序によって決定される。例えば、超音波の走査に従って段階的に取得されるエコーデータがメモリ内のアドレスの小さい方から順に記憶される。   The storage position (address) of voxel data stored in the three-dimensional data memory is mainly determined by the acquisition order of echo data. For example, echo data acquired in stages according to ultrasonic scanning is stored in order from the smallest address in the memory.

したがって、三次元データメモリに対するランダムアクセスを回避する手法として、超音波の走査(超音波の送受波)をボクセル演算の演算状況に応じて適宜制御することが考えられる。ちなみに、ボクセル演算の演算状況に応じて超音波の送受波を制御することにより、三次元データメモリに対するランダムアクセスを回避できる他、場合によっては、三次元データメモリのメモリ容量を小さく抑えることや、究極的には、三次元データメモリを無くしてしまうことも不可能ではない。   Therefore, as a technique for avoiding random access to the three-dimensional data memory, it is conceivable to appropriately control the scanning of ultrasonic waves (transmission / reception of ultrasonic waves) according to the calculation status of voxel calculation. By the way, by controlling the transmission and reception of ultrasonic waves according to the calculation status of voxel calculation, random access to the 3D data memory can be avoided, and in some cases, the memory capacity of the 3D data memory can be kept small, Ultimately, it is not impossible to lose the 3D data memory.

本発明では、ボクセル演算の演算状況を知るための指標として、データ空間内に設定される透視線の方向に着目した。ちなみに、特許文献3や特許文献4においても視線の方向に着目しているが、それらに記載の技術は超音波の送受波の制御を意図したものではない。   In the present invention, attention is focused on the direction of the perspective line set in the data space as an index for knowing the calculation status of the voxel calculation. Incidentally, Patent Document 3 and Patent Document 4 also pay attention to the direction of the line of sight, but the techniques described therein are not intended to control the transmission and reception of ultrasonic waves.

本発明は、こうした背景においてなされたものであり、その目的は、超音波の送受波を制御することによってボリュームデータに基づく三次元超音波画像の形成を能率的に行うことにある。   The present invention has been made in such a background, and an object thereof is to efficiently form a three-dimensional ultrasonic image based on volume data by controlling transmission and reception of ultrasonic waves.

上記目的を達成するために、本発明の好適な態様である超音波診断装置は、三次元空間に超音波を送受波して複数のエコーデータを取得する送受波手段と、前記複数のエコーデータに基づいて三次元画像を形成する三次元画像形成手段と、を有し、前記三次元画像形成手段は、前記三次元空間に対応するデータ空間内に仮想的に設定された視点からの透視線として複数のレイを設定するレイ設定部と、前記複数のエコーデータから前記設定された複数のレイ上のボクセルデータを演算して各レイごとにボクセル演算を進行させるボクセル演算部と、を含み、前記各レイごとの最後のボクセル演算の結果として前記三次元画像を形成し、前記送受波手段は、前記各レイの向きに応じた順序で複数のエコーデータを取得する、ことを特徴とする。   In order to achieve the above object, an ultrasonic diagnostic apparatus according to a preferred aspect of the present invention includes a transmission / reception unit that transmits and receives ultrasonic waves in a three-dimensional space to acquire a plurality of echo data, and the plurality of echo data. A three-dimensional image forming means for forming a three-dimensional image based on the three-dimensional image forming means, wherein the three-dimensional image forming means is a perspective line from a viewpoint virtually set in a data space corresponding to the three-dimensional space. A ray setting unit that sets a plurality of rays as, and a voxel calculation unit that calculates voxel data on the plurality of set rays from the plurality of echo data and advances voxel calculation for each ray, and The three-dimensional image is formed as a result of the last voxel operation for each ray, and the wave transmitting / receiving unit acquires a plurality of echo data in an order corresponding to the direction of each ray.

上記構成によれば、各レイの向きに応じた順序で、ボクセル演算に必要なものから順に複数のエコーデータを取得することができるため、例えば、超音波プローブによってエコーデータを取得した直後からボクセル演算を開始できる。このため、例えば、三次元データ空間内の多数のエコーデータを取得してからボクセル演算を開始する場合に比べて、極めて能率的な演算処理を実現できる。また、三次元データ空間内のエコーデータを記憶する三次元メモリの容量を小さくすることもでき、必要に応じて、三次元メモリを削除する構成も実現できる。   According to the above configuration, since a plurality of echo data can be acquired in order according to the direction of each ray, starting from what is necessary for the voxel calculation, for example, immediately after acquiring the echo data by the ultrasonic probe Calculation can be started. For this reason, for example, compared with the case where voxel calculation is started after acquiring a lot of echo data in the three-dimensional data space, extremely efficient calculation processing can be realized. In addition, the capacity of the three-dimensional memory for storing the echo data in the three-dimensional data space can be reduced, and a configuration in which the three-dimensional memory is deleted as necessary can be realized.

上記構成において、送受波手段としては、二次元的に電子走査を行う送受波器が好適である。ただし、送受波手段として、電子走査と機械走査とを併用する送受波器を利用することも可能である。複数のレイは、互いに平行に設定されてもよいし非平行に設定されてもよい。また、三次元画像形成手段は、例えば、プログラム動作型のプロセッサで構成される。   In the above configuration, the wave transmitting / receiving unit is preferably a wave transmitting / receiving unit that performs two-dimensional electronic scanning. However, it is also possible to use a transducer that uses both electronic scanning and mechanical scanning as the transducer. The plurality of rays may be set parallel to each other or may be set non-parallel. The three-dimensional image forming means is constituted by a program operation type processor, for example.

望ましくは、前記各レイに対応したレイベクトルの所定軸成分の符号から前記各レイの向きを判断することを特徴とする。望ましくは、前記データ空間内における視点の位置座標から前記各レイの向きを判断することを特徴とする。望ましくは、前記送受波手段は、前記各レイの向きに応じた順序で複数の走査面を形成し、各走査面ごとに、複数のエコーデータからなるフレームデータを取得する、ことを特徴とする。望ましくは、前記送受波手段は、前記視点に近い方から順に複数の走査面を形成し、複数の走査面に対応した複数のフレームデータを段階的に取得する、ことを特徴とする。   Preferably, the direction of each ray is determined from the sign of a predetermined axis component of the ray vector corresponding to each ray. Preferably, the direction of each ray is determined from the position coordinates of the viewpoint in the data space. Preferably, the transmission / reception means forms a plurality of scanning planes in an order corresponding to the direction of each ray, and acquires frame data composed of a plurality of echo data for each scanning plane. . Preferably, the wave transmitting / receiving unit forms a plurality of scanning planes in order from the side closer to the viewpoint, and acquires a plurality of frame data corresponding to the plurality of scanning planes in a stepwise manner.

望ましくは、前記ボクセル演算部は、前記段階的に取得される複数のフレームデータに基づいて前記設定された複数のレイ上のボクセルデータを段階的に演算し、各レイごとにボクセル演算を進行させる、ことを特徴とする。望ましくは、前記ボクセル演算部は、前記複数のフレームデータから補間処理によってボクセルデータを算出する、ことを特徴とする。望ましくは、前記ボクセル演算部は、前記複数の走査面をその位置に応じて前記データ空間内に配置した際に隣接して配置される二枚の走査面に対応したフレームデータから、それら二枚の走査面の間のフレーム間領域に存在するボクセルデータを算出する、ことを特徴とする。望ましくは、前記ボクセル演算部は、前記二枚の走査面に対応したフレームデータに含まれるエコーデータであってボクセル座標の近傍に存在するエコーデータから、そのボクセル座標に対応するボクセルデータを算出する、ことを特徴とする。   Preferably, the voxel calculation unit calculates the voxel data on the plurality of set rays step by step based on the plurality of frame data acquired stepwise, and advances the voxel calculation for each ray. It is characterized by that. Preferably, the voxel calculation unit calculates voxel data from the plurality of frame data by interpolation processing. Preferably, the voxel computing unit is configured to generate two sheets of frame data corresponding to two scanning planes arranged adjacent to each other when the plurality of scanning planes are arranged in the data space according to their positions. Voxel data existing in an inter-frame region between the scanning planes is calculated. Preferably, the voxel calculation unit calculates voxel data corresponding to the voxel coordinates from echo data included in frame data corresponding to the two scanning planes and existing in the vicinity of the voxel coordinates. It is characterized by that.

望ましくは、前記三次元画像形成手段は、前記各レイごとに、それが前記データ空間に対して最初に通過する点として、前記データ空間における第1軸上の初期座標、第2軸上の初期座標及び第3軸上の初期座標を演算する初期座標演算部と、前記第1軸の刻み成分、前記第2軸の刻み成分及び前記第3軸の刻み成分を演算する刻み成分演算部と、前記各レイごとに、前記第1軸上の初期座標、前記第2軸上の初期座標及び前記第3軸上の初期座標に対して、それぞれ前記第1軸上の刻み成分、前記第2軸上の刻み成分及び前記第3軸上の刻み成分を累積的に加算することにより、前記各レイ上におけるボクセル演算対象座標を特定する対象座標特定部と、複数のフレームデータの段階的な取得に伴って段階的に移動する前記フレーム間領域の各移動位置ごとに、フレーム間領域内において前記ボクセル演算対象座標に該当するボクセルデータを前記補間処理により生成する補間処理部と、を含むことを特徴とする。   Desirably, the three-dimensional image forming means sets the initial coordinate on the first axis in the data space and the initial value on the second axis as a point at which each ray passes through the data space first. An initial coordinate calculator that calculates coordinates and initial coordinates on the third axis, a step component calculator that calculates a step component of the first axis, a step component of the second axis, and a step component of the third axis; For each ray, for each initial coordinate on the first axis, initial coordinate on the second axis, and initial coordinate on the third axis, the step component on the first axis and the second axis, respectively. By cumulatively adding the step component on the upper axis and the step component on the third axis, the target coordinate specifying unit for specifying the voxel calculation target coordinate on each ray and the stepwise acquisition of a plurality of frame data The inter-frame region that moves step by step For each movement position, characterized in that it comprises an interpolation processor for generating by the interpolation voxel data corresponding to the voxel calculation target coordinates in the region between the frame.

また望ましくは、前記三次元画像形成手段は、前記データ空間内に処理プレーンを設定し、前記複数のフレームデータの段階的な取得に従って処理プレーンを段階的に移動させる処理プレーン設定部をさらに含み、前記ボクセル演算部は、段階的に移動する処理プレーンの各移動位置ごとに、前記複数のフレームデータから処理プレーン上のボクセルデータを演算し、処理プレーンの移動に従って各レイごとにボクセル演算を進行させる、ことを特徴とする。   Preferably, the three-dimensional image forming unit further includes a processing plane setting unit that sets a processing plane in the data space and moves the processing plane in stages according to the stepwise acquisition of the plurality of frame data. The voxel calculation unit calculates voxel data on the processing plane from the plurality of frame data for each movement position of the processing plane that moves in stages, and advances the voxel calculation for each ray according to the movement of the processing plane. It is characterized by that.

望ましくは、前記処理プレーンは、前記データ空間の所定軸に直交する平面であることを特徴とする。望ましくは、前記ボクセル演算部は、前記複数のフレームデータから補間処理によってボクセルデータを算出することを特徴とする。望ましくは、前記ボクセル演算部は、前記複数の走査面をその位置に応じて前記データ空間内に配置した際に、複数の走査面に対応した複数のフレームデータのうち、前記データ空間の座標であるボクセル座標の近傍に配置される複数のフレームデータから、そのボクセル座標に対応するボクセルデータを算出する、ことを特徴とする。望ましくは、前記ボクセル演算部は、前記複数のフレームデータに含まれるエコーデータであってボクセル座標の近傍に存在するエコーデータから、そのボクセル座標に対応するボクセルデータを算出する、ことを特徴とする。   Preferably, the processing plane is a plane orthogonal to a predetermined axis of the data space. Preferably, the voxel calculation unit calculates voxel data from the plurality of frame data by interpolation processing. Preferably, the voxel computing unit uses the coordinates of the data space among the plurality of frame data corresponding to the plurality of scanning planes when the plurality of scanning planes are arranged in the data space according to the positions thereof. Voxel data corresponding to the voxel coordinate is calculated from a plurality of frame data arranged in the vicinity of a certain voxel coordinate. Preferably, the voxel computing unit calculates voxel data corresponding to the voxel coordinates from the echo data included in the plurality of frame data and existing in the vicinity of the voxel coordinates. .

望ましくは、前記三次元画像形成手段は、前記各レイごとに、それが前記データ空間に対して最初に通過する点として、前記データ空間における第1軸上の初期座標、第2軸上の初期座標及び第3軸上の初期座標を演算する初期座標演算部と、前記第1軸の刻み成分、前記第2軸の刻み成分及び前記第3軸の刻み成分を演算する刻み成分演算部と、前記各レイごとに、前記第1軸上の初期座標、前記第2軸上の初期座標及び前記第3軸上の初期座標に対して、それぞれ前記第1軸上の刻み成分、前記第2軸上の刻み成分及び前記第3軸上の刻み成分を累積的に加算することにより、前記各レイ上におけるボクセル演算対象座標を特定する対象座標特定部と、前記段階的に移動する処理プレーン上において前記ボクセル演算対象座標に該当するボクセルデータを前記補間処理により生成する補間処理部と、を含むことを特徴とする。   Desirably, the three-dimensional image forming means sets the initial coordinate on the first axis in the data space and the initial value on the second axis as a point at which each ray passes through the data space first. An initial coordinate calculator that calculates coordinates and initial coordinates on the third axis, a step component calculator that calculates a step component of the first axis, a step component of the second axis, and a step component of the third axis; For each ray, for each initial coordinate on the first axis, initial coordinate on the second axis, and initial coordinate on the third axis, the step component on the first axis and the second axis, respectively. By cumulatively adding the step component on the third axis and the step component on the third axis, the target coordinate specifying unit for specifying the voxel calculation target coordinate on each ray and the processing plane moving in stages Corresponds to the voxel calculation target coordinates Characterized in that it comprises an interpolation processor for generating Kuseru data by the interpolation processing, the.

以上説明したように、本発明によれば、超音波の送受波を制御することによってボリュームデータに基づく三次元超音波画像の形成を能率的に行うことができる。   As described above, according to the present invention, it is possible to efficiently form a three-dimensional ultrasonic image based on volume data by controlling transmission and reception of ultrasonic waves.

以下、本発明の好適な実施形態を図面に基づいて説明する。   DESCRIPTION OF EXEMPLARY EMBODIMENTS Hereinafter, preferred embodiments of the invention will be described with reference to the drawings.

図1は、ボリュームレンダリング法の原理を説明するための図である。三次元データ空間36は、超音波ビームを二次元走査することによって取得されたエコーデータから得られるボリュームデータを有し、超音波診断装置内において仮想的に構築される。ここでは、三次元データ空間36は、X,Y,Zの互いに直交する座標軸を有し、三次元データ空間36内の各座標にはボクセルデータが存在する。なお、三次元の超音波送受波空間がr,θ,φの極座標空間として構成される場合には、各ボクセルデータに対して、それが有する(r,θ,φ)の座標を(X,Y,Z)の座標に変換する処理が行われる。   FIG. 1 is a diagram for explaining the principle of the volume rendering method. The three-dimensional data space 36 has volume data obtained from echo data acquired by two-dimensional scanning with an ultrasonic beam, and is virtually constructed in the ultrasonic diagnostic apparatus. Here, the three-dimensional data space 36 has X, Y, and Z coordinate axes orthogonal to each other, and voxel data exists at each coordinate in the three-dimensional data space 36. When the three-dimensional ultrasonic transmission / reception space is configured as a polar coordinate space of r, θ, and φ, the coordinates of (r, θ, φ) that each voxel data has are (X, A process of converting to the coordinates of Y, Z) is performed.

ボリュームレンダリングに際しては、通常、三次元データ空間36の外側に仮想的に視点VPが設定され、三次元データ空間を間に介して、視点VPと反対側に二次元平面としてのスクリーン40が仮想的に設定される。その視点VPを基準として複数のレイ(透視線)が定義される(図1には1つのレイ38が代表として示されている)。レイ38は、三次元データ空間36を貫通し、このため、レイ38には複数のボクセルデータからなるボクセルデータ列が対応することになる。レイ38に沿って、視点VP側から各ボクセルデータごとにボリュームレンダリング法に基づくボクセル演算を逐次的に実行すると、最終のボクセル演算の結果として画素値が決定される。その画素値がスクリーン上における当該レイ38に対応する座標Pにマッピングされる。   In volume rendering, a viewpoint VP is normally set outside the three-dimensional data space 36, and a screen 40 as a two-dimensional plane is virtually set on the opposite side of the viewpoint VP through the three-dimensional data space. Set to A plurality of rays (perspective lines) are defined on the basis of the viewpoint VP (one ray 38 is shown as a representative in FIG. 1). The ray 38 penetrates the three-dimensional data space 36, and therefore, the ray 38 corresponds to a voxel data string composed of a plurality of voxel data. When a voxel operation based on the volume rendering method is sequentially executed for each voxel data from the viewpoint VP along the ray 38, a pixel value is determined as a result of the final voxel operation. The pixel value is mapped to a coordinate P corresponding to the ray 38 on the screen.

スクリーンは、Xs,Ysの座標軸を有し、すなわち各座標はXs,Ysの座標で定義される。各座標ごとにレイが設定されており、上記のように、各レイについて求められた画素値をスクリーン40上にマッピングすることにより、そのスクリーン上に三次元画像が形成される。なお、複数のレイが互いに平行の場合もあるが、複数のレイが互いに非平行となる場合もある。   The screen has Xs and Ys coordinate axes, that is, each coordinate is defined by Xs and Ys coordinates. A ray is set for each coordinate. As described above, a pixel value obtained for each ray is mapped on the screen 40, whereby a three-dimensional image is formed on the screen. The plurality of rays may be parallel to each other, but the plurality of rays may be non-parallel to each other.

ボリュームレンダリング法において、各ボクセルデータごとのボクセル演算の演算式としては各種のものが知られている。基本的には、いずれの演算式においても、各ボクセルデータのボクセル演算ごとに、不透明度(オパシティ)がパラメータとして利用される。そのようなパラメータを利用して、各ボクセル演算ごとに出力光量(出力値)が求められ、それが次のボクセル演算において入力光量(入力値)として利用される。そして、これが繰り返され、演算終了条件を満たした時点での出力光量が画素値に変換される。つまり、媒体中を光が散乱、減衰しながら伝搬するモデルを基礎とするものである。本実施形態では、ボクセル演算の演算式として、例えば、次の数1式が用いられる。   In the volume rendering method, various types of calculation formulas for voxel calculation for each voxel data are known. Basically, in any arithmetic expression, opacity (opacity) is used as a parameter for each voxel calculation of each voxel data. Using such parameters, an output light amount (output value) is obtained for each voxel operation, and this is used as an input light amount (input value) in the next voxel operation. This is repeated, and the output light amount at the time when the calculation end condition is satisfied is converted into a pixel value. That is, it is based on a model in which light propagates through a medium while being scattered and attenuated. In the present embodiment, for example, the following equation 1 is used as an arithmetic expression for voxel arithmetic.

Figure 0004653536
もちろん、上記の数1式以外を用いるようにしてもよく、例えば、上記特許文献1に記載されたような演算式を用いてもよい。各レイごとのボクセル演算は、例えば、その対象座標が三次元データ空間を越えた場合、又は、各ボクセル演算で用いた不透明度の累積加算値が所定値(例えば1)を越えた場合など、所定の条件を満たす場合に終了する。そして、演算終了時点の出力光量が画素値に対応付けられる。
Figure 0004653536
Of course, a formula other than the above formula 1 may be used. For example, an arithmetic formula as described in Patent Document 1 may be used. The voxel calculation for each ray is, for example, when the target coordinate exceeds the three-dimensional data space, or when the cumulative addition value of opacity used in each voxel calculation exceeds a predetermined value (for example, 1), etc. The process ends when a predetermined condition is satisfied. Then, the output light amount at the end of the calculation is associated with the pixel value.

なお、本実施形態に係る超音波診断装置は、上記のようなボリュームレンダリング法による画像処理を行う場合に特に好適であるが、各レイに沿って逐次演算を行う画像処理法にも適用可能である。例えば、積算法、最大値や最小値の検出法などである。   The ultrasonic diagnostic apparatus according to the present embodiment is particularly suitable when performing image processing by the volume rendering method as described above, but can also be applied to an image processing method that performs sequential computation along each ray. is there. For example, the integration method, the detection method of the maximum value and the minimum value, and the like.

図2には、本実施形態に係る超音波診断装置の全体構成がブロック図として示されている。3Dプローブ10は、三次元エコーデータ取得用の超音波探触子である。この3Dプローブ10は、体表面上に当接して用いられ、あるいは体腔内に挿入して用いられる。この3Dプローブ10によって超音波ビームが形成され、この超音波ビームは二次元走査される。この超音波ビームの二次元走査によって三次元の送受波空間12が形成される。   FIG. 2 is a block diagram showing the overall configuration of the ultrasonic diagnostic apparatus according to this embodiment. The 3D probe 10 is an ultrasonic probe for acquiring three-dimensional echo data. The 3D probe 10 is used in contact with the body surface or inserted into a body cavity. An ultrasonic beam is formed by the 3D probe 10, and the ultrasonic beam is two-dimensionally scanned. A three-dimensional transmission / reception space 12 is formed by two-dimensional scanning of the ultrasonic beam.

送受波空間12は、ここではr,θ,φの3つの座標によって定義される三次元空間であり、例えば超音波ビームBをθ方向に走査すると走査面Sが形成され、この走査面Sをφ方向(エレベーション方向)に走査すると三次元の送受波空間12が構成される。3Dプローブ10は、電子走査と機械走査とを組み合わせたものであってもよいが、超音波ビームを二次元的に電子走査するものが好適である。後者の場合には公知の2Dアレイ振動子が用いられる。なお、図2においては角錐形状をもった送受波空間12が示されているが、その送受波空間12の形態は立方体であってもよく、あるいはそれ以外であってもよい。   Here, the transmission / reception space 12 is a three-dimensional space defined by three coordinates of r, θ, and φ. For example, when the ultrasonic beam B is scanned in the θ direction, a scanning surface S is formed. When scanning in the φ direction (elevation direction), a three-dimensional transmission / reception space 12 is formed. The 3D probe 10 may be a combination of electronic scanning and mechanical scanning, but is preferably one that two-dimensionally electronically scans an ultrasonic beam. In the latter case, a known 2D array transducer is used. In FIG. 2, the transmission / reception space 12 having a pyramid shape is shown, but the shape of the transmission / reception space 12 may be a cube or may be other than that.

送信部14は送信ビームフォーマーとして機能する。すなわち、送信部14はアレイ振動子を構成する複数の振動素子の各々に対して送信信号を供給する。また、受信部16は受信ビームフォーマーとして機能し、アレイ振動子を構成する複数の振動素子の各々からの受信信号に対して整相加算処理を実行する。これによって各超音波ビームごとに受信部16から受信信号が出力される。受信部16はA/D変換器を有しており、受信部16から出力される整相加算後の受信信号はデジタルデータである。ここで、各データはエコーデータに相当する。なお、本実施形態では、送信部14に視点位置データが提供され、視点位置に基づいて送信制御が行われる。視点位置に基づく送信制御については後に詳述する。   The transmission unit 14 functions as a transmission beam former. That is, the transmission unit 14 supplies a transmission signal to each of the plurality of vibration elements constituting the array transducer. The receiving unit 16 functions as a receiving beam former, and executes a phasing addition process on the received signals from each of a plurality of vibrating elements constituting the array transducer. As a result, a reception signal is output from the receiving unit 16 for each ultrasonic beam. The receiving unit 16 includes an A / D converter, and the received signal after phasing addition output from the receiving unit 16 is digital data. Here, each data corresponds to echo data. In the present embodiment, viewpoint position data is provided to the transmission unit 14, and transmission control is performed based on the viewpoint position. The transmission control based on the viewpoint position will be described in detail later.

任意断面作成部18は、走査面Sに対応する二次元断層画像(Bモード画像)を形成するモジュールである。この任意断面作成部18は例えば従来から用いられているデジタルスキャンコンバータなどによって構成される。任意断面作成部18は任意の走査面Sにおいてr,θ座標をx,y座標に変換する処理、その他の補間処理などを実行する。この任意断面作成部18により形成された二次元断層画像のデータは表示処理部20へ出力される。   The arbitrary cross-section creating unit 18 is a module that forms a two-dimensional tomographic image (B-mode image) corresponding to the scanning plane S. The arbitrary cross-section creating unit 18 is configured by a digital scan converter or the like conventionally used. The arbitrary section creation unit 18 executes processing for converting r, θ coordinates into x, y coordinates on the arbitrary scanning plane S, other interpolation processing, and the like. The data of the two-dimensional tomographic image formed by the arbitrary section creation unit 18 is output to the display processing unit 20.

2D変換部22は、受信部16から出力される各走査フレームごとの複数のエコーデータ、つまりフレームデータに対して二次元の座標変換を実行する。各エコーデータはr,θで定義される極座標を有しており、その座標をx,yの直交座標に変換する。座標変換後のフレームデータはフレームメモリ24上に格納される。   The 2D conversion unit 22 performs two-dimensional coordinate conversion on a plurality of echo data for each scanning frame output from the reception unit 16, that is, frame data. Each echo data has polar coordinates defined by r and θ, and the coordinates are converted into orthogonal coordinates of x and y. The frame data after the coordinate conversion is stored in the frame memory 24.

フレームメモリ24は、後述する3Dプロセッサ26においてボクセルデータを生成するために必要なフレームデータを格納するメモリである。フレームメモリ24の各アドレスは、後に図3を利用して詳述するフレームデータ空間における各座標に対応付けられている。そして、入力される各フレームデータ内のエコーデータはそれが有する三次元座標に対応付けられたアドレスに格納される。フレームメモリ24は、後述する3Dプロセッサ26との関係から見れば外部メモリに相当しており、このフレームメモリは例えばDRAMなどによって構成され、特にSDRAMなどによって構成されるのが望ましい。すなわち、記憶されたデータを所定データ単位でブロック転送可能なメモリを用いるのが望ましい。この場合においてブロック転送の方式としてはDMA転送方式を用いることができる。   The frame memory 24 is a memory that stores frame data necessary for generating voxel data in the 3D processor 26 described later. Each address of the frame memory 24 is associated with each coordinate in the frame data space, which will be described in detail later using FIG. The echo data in each input frame data is stored at an address associated with the three-dimensional coordinates that it has. The frame memory 24 corresponds to an external memory in view of the relationship with the 3D processor 26 described later, and this frame memory is constituted by, for example, a DRAM or the like, and is preferably constituted by an SDRAM or the like. That is, it is desirable to use a memory that can block transfer stored data in predetermined data units. In this case, the DMA transfer method can be used as the block transfer method.

3Dプロセッサ26は、本実施形態においてはプログラム動作するCPUやDSP(デジタル・シグナル・プロセッサ)などによって構成されるものであり、その内部には内部メモリ28が設けられている。内部メモリ28は、3Dプロセッサ26内におけるキャッシュメモリとして機能し、3Dプロセッサ26はその内部メモリ28に対して高速でアクセスすることが可能である。その一方において、フレームメモリ24から内部メモリ28へのデータ転送は一般にあまり高速に行うことができない。   In the present embodiment, the 3D processor 26 is configured by a CPU or DSP (digital signal processor) that performs a program operation, and an internal memory 28 is provided therein. The internal memory 28 functions as a cache memory in the 3D processor 26, and the 3D processor 26 can access the internal memory 28 at high speed. On the other hand, data transfer from the frame memory 24 to the internal memory 28 cannot generally be performed at a high speed.

3Dプロセッサ26は、本実施形態においてDMAコントローラを内蔵しており、そのDMAコントローラによってフレームメモリ24から内部メモリ28へデータをDMA転送することができる。符号25で示すように、3Dプロセッサ26がフレームメモリ24へのデータの書き込みを制御するようにしてもよく、その場合においては2D変換部22から出力されるフレームデータが一旦3Dプロセッサ26に取り込まれた後に、それを経由してフレームメモリ24へ格納される。もちろん、フレームメモリ24へのデータの書き込みは他のプロセッサが行ってもよく、図2に示される制御部32の機能としてそれを実現するようにしてもよい。   The 3D processor 26 incorporates a DMA controller in the present embodiment, and data can be DMA transferred from the frame memory 24 to the internal memory 28 by the DMA controller. As indicated by reference numeral 25, the 3D processor 26 may control the writing of data to the frame memory 24. In this case, the frame data output from the 2D conversion unit 22 is once taken into the 3D processor 26. After that, it is stored in the frame memory 24 via it. Of course, data may be written into the frame memory 24 by another processor, or it may be realized as a function of the control unit 32 shown in FIG.

本実施形態においては、後に詳述するように、ボクセル演算におけるレイの向きに応じてフレームデータが取得される。つまり、ボクセル演算に必要な順にフレームデータが適切に取得される。このため、フレームメモリ24には、現時点のボクセル演算に必要なフレームデータのみを記憶すればよい。あるいは、フレームメモリ24を無くして、2D変換部22から出力されるフレームデータを3Dプロセッサ26が直接取得し、内部メモリ28のみを利用してボクセル演算を実行させてもよい。   In the present embodiment, as will be described in detail later, frame data is acquired according to the ray direction in the voxel calculation. That is, the frame data is appropriately acquired in the order necessary for the voxel calculation. For this reason, the frame memory 24 may store only the frame data necessary for the current voxel calculation. Alternatively, the frame memory 24 may be eliminated, and the 3D processor 26 may directly acquire the frame data output from the 2D conversion unit 22 and execute the voxel calculation using only the internal memory 28.

フレームメモリ24から内部メモリ28へのフレームデータの転送、あるいは、2D変換部22から内部メモリ28へのフレームデータの転送は、上述したように、レイの向きが考慮され、ボクセル演算に必要なフレームデータが適切に選択される。3Dプロセッサ26においては、従来のように各レイごとにボクセル演算を同時進行で進めるのではなく、送られてきたフレームデータを用いて補間演算により各レイ上のボクセルデータを算出することにより実行可能なボクセル演算が順次実行される。したがって、三次元データ空間とレイの交差関係にもよるが、通常は、各レイごとにボクセル演算の進行度合いは区々である。   The frame data transfer from the frame memory 24 to the internal memory 28 or the frame data transfer from the 2D conversion unit 22 to the internal memory 28 takes into account the direction of the ray as described above, and is a frame necessary for the voxel calculation. Data is selected appropriately. In the 3D processor 26, it is possible to execute voxel data on each ray by interpolation calculation using the received frame data, instead of proceeding with voxel calculation for each ray simultaneously as in the prior art. Voxel operations are executed sequentially. Therefore, although depending on the cross relationship between the three-dimensional data space and the ray, the degree of progress of the voxel operation is usually different for each ray.

3Dプロセッサ26からフレームメモリ24へのランダムアクセスはデータ転送レートが低いなどの理由から画像処理上のボトルネックとなる。これに対し、本実施形態の手法によれば、ボクセル演算におけるレイの向きを考慮してフレームデータが取得されるため、フレームメモリ24へのランダムアクセスを、望ましくは、完全に無くすことができる。もちろん、フレームメモリ24を利用せずに、2D変換部22から出力されるフレームデータを3Dプロセッサ26に直接転送する場合にもランダムアクセスの問題を回避することができる。その結果、本実施形態では、能率的に画像処理を進めることが可能となる。さらに本実施形態の手法によれば、レイが通過するボクセルデータのみが補間処理により生成されるため、三次元空間内の全てのボクセルデータを補間処理で生成する場合に比べて、補間処理の演算量を低減することができる。なお、本実施形態の手法については後にさらに詳述する。   Random access from the 3D processor 26 to the frame memory 24 becomes a bottleneck in image processing because the data transfer rate is low. On the other hand, according to the method of the present embodiment, since frame data is acquired in consideration of the ray direction in the voxel calculation, random access to the frame memory 24 can be desirably eliminated completely. Of course, the random access problem can also be avoided when the frame data output from the 2D conversion unit 22 is directly transferred to the 3D processor 26 without using the frame memory 24. As a result, in the present embodiment, it is possible to efficiently perform image processing. Furthermore, according to the method of the present embodiment, since only the voxel data through which the ray passes is generated by the interpolation process, the calculation of the interpolation process is performed compared to the case where all the voxel data in the three-dimensional space are generated by the interpolation process. The amount can be reduced. The method of this embodiment will be described in detail later.

本実施形態において、3Dプロセッサ26はボクセル演算の演算式として例えば上記数1式に示したものを利用している。したがって、各レイごとにその演算式が順次実行され、終了条件を満たした時点での出力値が画素値に変換される。その画素値は3Dプロセッサ26から表示処理部20に設けられたメモリ上に格納される。もちろん、そのようなメモリを3Dプロセッサ26内に設けることも可能である。いずれにしても、各レイごとにボクセル演算を繰り返し実行することによりスクリーン上に三次元画像が構成されることになる。   In the present embodiment, the 3D processor 26 uses, for example, the expression shown in the above equation 1 as an arithmetic expression for voxel arithmetic. Therefore, the arithmetic expression is sequentially executed for each ray, and the output value when the end condition is satisfied is converted into a pixel value. The pixel value is stored in the memory provided in the display processing unit 20 from the 3D processor 26. Of course, such a memory may be provided in the 3D processor 26. In any case, a three-dimensional image is formed on the screen by repeatedly executing the voxel operation for each ray.

表示処理部20は画像データとグラフィックデータの合成機能やその他の表示処理機能を有しており、装置の動作モードに応じて、表示部30に対して二次元断層画像のデータあるいは三次元画像のデータを出力する。表示部30は二次元断層画像及び三次元画像の両方又は一方が表示されることになる。   The display processing unit 20 has a function for synthesizing image data and graphic data and other display processing functions. Depending on the operation mode of the apparatus, the display processing unit 20 can display 2D tomographic image data or 3D image data. Output data. The display unit 30 displays both or one of the two-dimensional tomographic image and the three-dimensional image.

制御部32はCPU及びそのための動作プログラムによって構成され、図2に示される各構成の動作制御を行っている。その制御部32には操作パネルによって構成される入力部34が接続されている。ユーザはその入力部34を用いてモードの選択やパラメータの指定などの各種の入力操作を行うことができる。また、ユーザは入力部34を用いてボリュームレンダリングにおける視点を好みの位置に設定することもできる。   The control unit 32 is constituted by a CPU and an operation program therefor, and performs operation control of each component shown in FIG. An input unit 34 constituted by an operation panel is connected to the control unit 32. The user can use the input unit 34 to perform various input operations such as mode selection and parameter specification. The user can also set the viewpoint in volume rendering to a desired position using the input unit 34.

以上、本実施形態に係る超音波診断装置の構成の概要を説明した。ちなみに、ドプラ処理を行う構成などを図2の構成に追加するようにしてもよい。以下、図2に示した部分には図2の符号を付して本実施形態の手法について詳述する。   The outline of the configuration of the ultrasonic diagnostic apparatus according to this embodiment has been described above. Incidentally, a configuration for performing Doppler processing may be added to the configuration in FIG. In the following, the part shown in FIG. 2 is denoted by the reference numeral in FIG.

図3には、フレームメモリ24上に仮想的に構築されるフレームデータ空間37が示されている。このフレームデータ空間37は複数のフレームデータによって形成され、複数のフレームデータのエコーデータがそれに対応付けられた座標に格納されている。つまり、各フレームデータにおいてx軸方向に並ぶエコーデータのアドレスが0〜n−1で定義され、y軸方向に並ぶエコーデータのアドレスが0〜m−1で定義され、さらに、フレームを特定するアドレスが0〜k−1で定義されている。なお、上述したように、フレームメモリ24には、図1の三次元データ空間36内の全てのフレームデータが格納される必要はなく、3Dプロセッサ26においてボクセルデータを生成するために必要な枚数分のフレームデータのみが格納されてもよい。図3に示す例は、k枚のフレームデータに相当する。なお、2D変換部22から3Dプロセッサ26へ直接フレームデータが転送される場合にも、転送されるフレームデータによるデータ空間の概念は、図3に示すフレームデータ空間37と同じである。   FIG. 3 shows a frame data space 37 virtually constructed on the frame memory 24. The frame data space 37 is formed by a plurality of frame data, and echo data of the plurality of frame data is stored in coordinates associated therewith. That is, in each frame data, the address of echo data arranged in the x-axis direction is defined by 0 to n-1, the address of echo data arranged in the y-axis direction is defined by 0 to m-1, and a frame is specified. Addresses are defined from 0 to k-1. As described above, the frame memory 24 does not need to store all the frame data in the three-dimensional data space 36 of FIG. 1, and the number of frames necessary to generate voxel data in the 3D processor 26. Only the frame data may be stored. The example shown in FIG. 3 corresponds to k frame data. Even when the frame data is directly transferred from the 2D conversion unit 22 to the 3D processor 26, the concept of the data space by the transferred frame data is the same as the frame data space 37 shown in FIG.

本実施形態において、3Dプロセッサ26は、各フレームを仮想的ボリューム空間である三次元データ空間内に配置し、各フレームのエコーデータから仮想ボリューム内のレイ上のボクセルデータを算出してボリュームレンダリング法による演算を行う。   In this embodiment, the 3D processor 26 arranges each frame in a three-dimensional data space that is a virtual volume space, calculates voxel data on a ray in the virtual volume from echo data of each frame, and performs a volume rendering method. Perform the calculation by.

図4には、三次元データ空間36とフレームとの対応関係が示されており、図示のように、複数のフレーム(♯0〜♯k−1)の各々が、電子走査による取得位置に応じて三次元データ空間36内に仮想的に配置される。三次元データ空間36内のレイ上のボクセルデータは、フレーム(♯0〜♯k−1)内のエコーデータから補間処理して生成される。   FIG. 4 shows the correspondence between the three-dimensional data space 36 and the frames. As shown in the figure, each of the plurality of frames (# 0 to # k-1) corresponds to the acquisition position by electronic scanning. Are virtually arranged in the three-dimensional data space 36. Voxel data on a ray in the three-dimensional data space 36 is generated by interpolation processing from echo data in frames (# 0 to # k-1).

図5には、フレームとレイとの対応関係が示されている。図示のように、三次元データ空間36に配置されたフレーム(♯f,♯f+1)を貫いてレイ38が仮想的に設定される。そして、レイ38上のボクセルデータPcが、フレーム(♯f,♯f+1)上のフレームデータ(エコーデータ)から補間処理によって算出される。   FIG. 5 shows the correspondence between frames and rays. As shown in the figure, a ray 38 is virtually set through a frame (#f, # f + 1) arranged in the three-dimensional data space 36. Then, the voxel data Pc on the ray 38 is calculated from the frame data (echo data) on the frame (#f, # f + 1) by interpolation processing.

図6には、ボクセルデータを生成する際の補間処理の概念図が示されており、図6は、図5の三次元データ空間36についてのXY断面の一部拡大図に相当する。図6では3本のレイ38が示されている。レイ38上の各ボクセルデータは、そのボクセルデータの近傍に位置する4つのエコーデータから生成される。例えば、図6において、ボクセルデータPcは、その近傍の4つのエコーデータP1,P2,P3,P4から補間処理によって生成される。エコーデータはフレーム上のフレームデータである。つまり、エコーデータP1,P2はフレーム♯f上のフレームデータであり、エコーデータP3,P4はフレーム♯f+1上のフレームデータである。また、補間処理としては、例えば、4つのエコーデータP1,P2,P3,P4の各々に補間係数を掛けて加算する処理などが挙げられる。各エコーデータごとの補間係数は、例えば、各エコーデータとボクセルデータとの相対位置に応じて設定される。   FIG. 6 shows a conceptual diagram of interpolation processing when generating voxel data, and FIG. 6 corresponds to a partially enlarged view of the XY section of the three-dimensional data space 36 of FIG. In FIG. 6, three rays 38 are shown. Each voxel data on the ray 38 is generated from four echo data located in the vicinity of the voxel data. For example, in FIG. 6, voxel data Pc is generated by interpolation processing from four echo data P1, P2, P3, and P4 in the vicinity thereof. The echo data is frame data on the frame. That is, the echo data P1 and P2 are frame data on the frame #f, and the echo data P3 and P4 are frame data on the frame # f + 1. Moreover, as an interpolation process, the process etc. which multiply and add each of the four echo data P1, P2, P3, and P4 by an interpolation coefficient etc. are mentioned. The interpolation coefficient for each echo data is set according to the relative position between each echo data and voxel data, for example.

補間処理に利用されるエコーデータP1〜P4は、二つの隣接するフレームデータ内のエコーデータ列であるため、3Dプロセッサ26は、フレームメモリ24から二つのフレームデータをDMA転送によりまとめて読み出し、補間処理を行ってボクセルデータを生成し、ボリュームレンダリング法に基づくボクセル演算を実行することができる。なお、フレームデータはボクセル演算に必要な順に取得されるため、超音波の送受波によって取得された順にフレームデータを次々に3Dプロセッサ26へ転送することもできる。以下、3Dプロセッサ26で実行されるボクセル演算について詳述する。   Since the echo data P1 to P4 used for the interpolation processing is an echo data string in two adjacent frame data, the 3D processor 26 reads the two frame data from the frame memory 24 together by DMA transfer, and performs interpolation. Processing can be performed to generate voxel data, and voxel operations based on the volume rendering method can be executed. Since the frame data is acquired in the order necessary for the voxel calculation, the frame data can also be transferred to the 3D processor 26 one after another in the order acquired by the ultrasonic wave transmission / reception. Hereinafter, the voxel operation executed by the 3D processor 26 will be described in detail.

図7には、単位レイベクトルVが示されている。この単位レイベクトルVは、レイの向きを判定し、また各レイにおいて演算対象となる座標を逐次的に求めるために用いられる。この単位レイベクトルは複数のレイが平行に設定される場合にはそれらについて共通に1つだけ設定され、複数のレイがそれぞれ非平行に設定される場合には、各レイごとに設定される。もちろん、その場合でも、代表として1つの単位レイベクトルを設定してもよい。例えば、ある代表レイについて、その向きと同一で大きさが1のベクトルとして、この単位レイベクトルVが定義される。単位レイベクトルの各座標軸上の成分はΔX,ΔY,ΔZである。単位レイベクトルの大きさは1であるため、各成分(ΔX,ΔY,ΔZ)の最大値は1である。3Dプロセッサ26は、例えば、各成分をs7.8(符号1bit、整数部7bit、小数部8bit)型の固定小数点型などで表現することにより、演算処理を高速化することができる。   FIG. 7 shows a unit ray vector V. This unit ray vector V is used for determining the direction of the ray and sequentially obtaining the coordinates to be calculated in each ray. This unit ray vector is set in common when a plurality of rays are set in parallel, and is set for each ray when the plurality of rays are set non-parallel. Of course, even in that case, one unit ray vector may be set as a representative. For example, for a representative ray, this unit ray vector V is defined as a vector having the same direction and a size of 1. The components on each coordinate axis of the unit ray vector are ΔX, ΔY, and ΔZ. Since the unit ray vector has a size of 1, the maximum value of each component (ΔX, ΔY, ΔZ) is 1. For example, the 3D processor 26 can speed up the arithmetic processing by expressing each component in a fixed-point type of s7.8 (sign 1 bit, integer part 7 bit, decimal part 8 bit) type.

図8には、三次元データ空間36に対して複数のレイが設定された状態が示されている。三次元データ空間36は、三次元空間ではあるが、図8においては説明のために平面的に表されている。   FIG. 8 shows a state in which a plurality of rays are set for the three-dimensional data space 36. Although the three-dimensional data space 36 is a three-dimensional space, in FIG.

図8に示されるように、複数のレイが三次元データ空間36のX軸及びY軸に対して交差する斜め方向に設定された場合、各レイに注目すると、各レイが最初にフレームと交差する座標が図8において黒丸で示されている。各黒丸はボクセルデータに相当するものである。図8に示されるように、各レイの位置に応じてフレームと交差する最初の座標はそれぞれ異なっている。例えば、レイL3〜L12までの10本のレイについては進入位置が三次元データ空間36内において、X座標の原点側に最も近いフレーム(フレーム番号0)のフレーム上に存在し、それがボクセルデータe1〜e10で表されている。その一方、レイL1,L2についてはX座標の終端側に近い二つのフレームに進入しており、その最初の進入位置にあるボクセルデータが図8においてe11,e12で表されている。ちなみに、スクリーン40上における各座標(Xs,Ys)ごとに1つのレイが対応付けられており、また、図8の例では、各レイは平行であって、便宜上、レイL1上に単位レイベクトルVが表されている。   As shown in FIG. 8, when a plurality of rays are set in an oblique direction intersecting the X axis and the Y axis of the three-dimensional data space 36, each ray first intersects with the frame when attention is paid to each ray. The coordinates to be shown are indicated by black circles in FIG. Each black circle corresponds to voxel data. As shown in FIG. 8, the initial coordinates that intersect the frame differ depending on the position of each ray. For example, for the 10 rays from the rays L3 to L12, the approach position exists in the frame (frame number 0) closest to the origin side of the X coordinate in the three-dimensional data space 36, which is voxel data. It is represented by e1 to e10. On the other hand, the rays L1 and L2 have entered two frames close to the end side of the X coordinate, and voxel data at the first entry position is represented by e11 and e12 in FIG. Incidentally, one ray is associated with each coordinate (Xs, Ys) on the screen 40, and in the example of FIG. 8, each ray is parallel, and for convenience, a unit ray vector on the ray L1. V is represented.

3Dプロセッサ26は、各レイが最初にフレームに交差する座標である演算開始点をレンダリングレイの本数分だけ算出してアドレステーブルに保存する。処理を高速化するために、アドレステーブルは頻繁にアクセスを行うので、内部メモリ28に保持することが望ましい。本実施形態の装置においては、各レイ上に存在する複数のボクセルデータ(つまり、ボリュームデータ)が上述したように、各フレームのエコーデータから補間処理によって算出される。そこで、3Dプロセッサ26は、まずX座標における原点側に最も近い0番目のフレームとその隣の1番目のフレームの二つのフレームデータをフレームメモリ24から内部メモリ28に読み込む。そして、3Dプロセッサ26は、この二つのフレームデータから算出されるボクセルデータ(つまり、図8におけるボクセルデータe1〜e10)を含むレイに対して、前記数1式に基づくボクセル演算を行う。その際、演算に利用されるボクセルデータはフレームデータから補間処理して生成される。   The 3D processor 26 calculates the calculation start point, which is the coordinate at which each ray first intersects the frame, by the number of rendering rays and stores it in the address table. In order to speed up the processing, the address table is accessed frequently, so it is desirable to store it in the internal memory 28. In the apparatus of the present embodiment, a plurality of voxel data (that is, volume data) existing on each ray is calculated by interpolation processing from echo data of each frame as described above. Therefore, the 3D processor 26 first reads two frame data of the zeroth frame closest to the origin side in the X coordinate and the first frame adjacent thereto from the frame memory 24 into the internal memory 28. Then, the 3D processor 26 performs a voxel operation based on the equation 1 on a ray including voxel data (that is, voxel data e1 to e10 in FIG. 8) calculated from the two frame data. At that time, voxel data used for the calculation is generated by interpolating from the frame data.

ボクセル演算の出力値Couti、αoutiは一時バッファに保持され、演算を行ったレンダリングレイはアドレステーブルの値にレイ単位ベクトルの各要素を加算し、次のボクセルデータを示すアドレスが生成される。生成された次データを示すアドレスが、0番目のフレームと1番目のフレームの間と各フレーム上を含む領域(以下、フレーム間領域)に存在するレンダリングレイは、そのフレーム間領域から抜け出すまでこの演算を繰り返す。全てのレンダリングレイが0番目のフレームと1番目のフレームの間のフレーム間領域のアドレスを持つデータを処理し終えた場合、または、三次元データ空間36のサイズを超えた場合にそのフレーム間領域における処理を完了する。 The output values C outi and α outi of the voxel operation are held in a temporary buffer, and the rendered ray for which the operation has been performed adds each element of the ray unit vector to the value in the address table to generate an address indicating the next voxel data. . The rendering ray in which the address indicating the generated next data exists between the 0th frame and the 1st frame and in an area including each frame (hereinafter referred to as an interframe area) Repeat the calculation. When all rendering rays have finished processing the data having the address of the interframe area between the 0th frame and the 1st frame, or when the size of the three-dimensional data space 36 is exceeded, the interframe area Complete the process in.

さらに、1番目のフレームと2番目のフレーム、2番目のフレームと3番目のフレーム、3番目のフレームと4番目のフレーム、・・・の順に(つまり、超音波の送受信制御によって取得される順に)フレーム間領域を移動させ、フレームデータを段階的に取得しながらボクセル演算を行い、最後のフレームのフレームデータの処理が完了した時点におけるCoutiの値をスクリーン40上の投影データとして出力する。出力結果は表示処理部20において輝度変換され表示部30に出力される。その結果スクリーン40上に三次元画像を投影した表示画像が表示部30に表示される。 Further, the first frame, the second frame, the second frame, the third frame, the third frame, the fourth frame,... (That is, the order acquired by the ultrasonic transmission / reception control). ) The inter-frame region is moved, the voxel operation is performed while acquiring the frame data step by step, and the value of C outi when the processing of the frame data of the last frame is completed is output as the projection data on the screen 40. The output result is subjected to luminance conversion in the display processing unit 20 and output to the display unit 30. As a result, a display image obtained by projecting the three-dimensional image on the screen 40 is displayed on the display unit 30.

本実施形態において特徴的なことの一つは、ボクセル演算におけるレイの向きに応じて、送信部14および受信部16によって、ボクセル演算に必要な順にフレームデータが適切に取得されることである。   One characteristic of the present embodiment is that frame data is appropriately acquired in the order required for voxel calculation by the transmission unit 14 and the reception unit 16 in accordance with the ray direction in the voxel calculation.

図9は、レイの向きに応じた送受信制御を説明するための図である。視点VPは、例えば、ユーザによって、三次元データ空間36内の所望の位置に設定される。設定された視点VPの位置は、三次元データ空間36内のX軸の座標値に応じて二つの場合に分けられる。つまり、X軸の座標値が負の場合(A)と、X軸の座標値が正の場合(B)とに分けることができる。なお、負の場合あるいは正の場合のいずれか一方に、X軸の座標値がゼロの場合を含めるようにしてもよい。   FIG. 9 is a diagram for explaining transmission / reception control according to the direction of a ray. The viewpoint VP is set at a desired position in the three-dimensional data space 36 by the user, for example. The set position of the viewpoint VP is divided into two cases according to the coordinate value of the X axis in the three-dimensional data space 36. That is, it can be divided into a case where the coordinate value of the X axis is negative (A) and a case where the coordinate value of the X axis is positive (B). Note that the case where the coordinate value of the X axis is zero may be included in either one of the negative case and the positive case.

視点VPのX軸の座標値が負の場合には、図9(A)に示すように、視点VPを起点とするレイ38は、X軸の正の方向に向かって設定される。このため、単位レイベクトル(図7参照)のX軸成分ΔXが正となる。つまり、視点VPのX軸の座標値が負の場合には単位レイベクトルのX軸成分が正となる。図9(A)に示すように、視点VPを起点とするレイ38がX軸の正の方向に向かって設定されている場合、レイ38が最初に交差するフレームはフレーム♯1であり、その後、フレーム♯2、フレーム♯3、・・・の順に交差していく。つまり、ボクセルデータを生成する際の補間処理に利用するフレームが、フレーム番号の昇順に必要となる。   When the coordinate value of the viewpoint VP on the X axis is negative, as shown in FIG. 9A, the ray 38 starting from the viewpoint VP is set toward the positive direction of the X axis. For this reason, the X-axis component ΔX of the unit ray vector (see FIG. 7) is positive. That is, when the coordinate value on the X axis of the viewpoint VP is negative, the X axis component of the unit ray vector is positive. As shown in FIG. 9A, when the ray 38 starting from the viewpoint VP is set in the positive direction of the X axis, the frame where the ray 38 first intersects is the frame # 1, and thereafter , Frame # 2, frame # 3,... That is, frames used for interpolation processing when generating voxel data are required in ascending order of frame numbers.

そこで、本実施形態においては、視点VPを起点とするレイ38がX軸の正の方向に向かって設定されている場合、送信部14および受信部16によって、ボクセル演算に必要な順で、つまり、フレーム番号の昇順でフレームデータが取得される。すなわち、送信部14は、視点位置データ(または単位レイベクトルのX軸成分)に基づいてレイの方向を判断して、3Dプローブ10内の2Dアレイ振動子(1Dアレイと機械式走査の組み合わせでもよい)を制御してフレーム番号の昇順に超音波ビームの走査を行い、受信部16がその走査順に応じてエコーデータを取得する。   Therefore, in the present embodiment, when the ray 38 starting from the viewpoint VP is set in the positive direction of the X axis, the transmitter 14 and the receiver 16 perform in the order necessary for the voxel calculation, that is, The frame data is acquired in the ascending order of the frame numbers. That is, the transmission unit 14 determines the ray direction based on the viewpoint position data (or the X-ray component of the unit ray vector), and the 2D array transducer in the 3D probe 10 (a combination of 1D array and mechanical scanning) Control) is performed to scan the ultrasonic beam in ascending order of the frame number, and the receiving unit 16 acquires echo data according to the scanning order.

一方、視点VPのX軸の座標値が正の場合には、図9(B)に示すように、視点VPを起点とするレイ38は、X軸の負の方向に向かって設定される。視点VPを起点とするレイ38がX軸の負の方向に向かって設定されている場合、レイ38が最初に交差するフレームはフレーム♯k−1であり、その後、フレーム♯k−2、フレーム♯k−3、・・・の順に交差していく。つまり、ボクセルデータを生成する際の補間処理に利用するフレームがフレーム番号の降順に必要となる。このため、視点VPを起点とするレイ38がX軸の負の方向に向かって設定されている場合、ボクセル演算に必要な順で、つまり、フレーム番号の降順でフレームデータが取得される。   On the other hand, when the coordinate value of the X axis of the viewpoint VP is positive, as shown in FIG. 9B, the ray 38 starting from the viewpoint VP is set toward the negative direction of the X axis. When the ray 38 starting from the viewpoint VP is set in the negative direction of the X axis, the frame where the ray 38 first intersects is the frame # k-1, and then the frame # k-2, the frame Cross in the order of # k-3,. That is, frames used for interpolation processing when generating voxel data are required in descending order of frame numbers. For this reason, when the ray 38 starting from the viewpoint VP is set in the negative direction of the X axis, the frame data is acquired in the order required for the voxel calculation, that is, in descending order of the frame numbers.

以上のように、視点VPの位置(または単位レイベクトルのX軸成分)に応じて、ボクセル演算に必要な順でフレームデータが取得され、ボクセル演算が段階的に実行される。   As described above, according to the position of the viewpoint VP (or the X-axis component of the unit ray vector), the frame data is acquired in the order necessary for the voxel calculation, and the voxel calculation is executed in stages.

図10には、レイがX軸の正の方向に向かって設定されている場合のボクセル演算の実行過程が段階的に示されており、(a),(b),(c),(d)の順で工程が進行する。すなわち、まず(a)に示される、0番目のフレームと1番目のフレームの間のフレーム間領域E1を通るレイL3〜レイL12についてボクセルデータが生成されてボクセル演算が実行される。この時点において、それ以外のレイL1,L2についてのボクセル演算は見送られる。さらに(b)に示すようにフレーム間領域E2について、フレーム間領域E2を通るレイL3〜レイL12についてボクセルデータが生成されてボクセル演算が実行される。同様に(c),(d)に示すように、フレーム間領域E3,E4に関してボクセル演算が実行される。   In FIG. 10, the execution process of the voxel calculation when the ray is set toward the positive direction of the X axis is shown step by step, and (a), (b), (c), (d ) The process proceeds in this order. That is, first, voxel data is generated for the rays L3 to L12 passing through the inter-frame region E1 between the 0th frame and the 1st frame shown in (a), and the voxel operation is executed. At this time, the voxel operations for the other rays L1 and L2 are postponed. Further, as shown in (b), for the inter-frame region E2, voxel data is generated for the rays L3 to L12 passing through the inter-frame region E2, and the voxel calculation is executed. Similarly, as shown in (c) and (d), the voxel calculation is executed for the inter-frame regions E3 and E4.

図示しないが、(d)以降もフレーム間領域が段階的に移動しながら、各移動位置においてそのフレーム間領域を通過するレイに関してボクセル演算が実行され、このような過程が繰り返されると、最終的に全レイについて必要なボクセル演算を行うことができ、その結果としてスクリーン40上に三次元画像を構築することが可能となる。ちなみに、各レイごとのボクセル演算の終了条件として、例えば、ボクセル演算の対象となる対象座標が三次元データ空間36から外れたこと、又は、累積加算した不透明度の値が所定値を越えたことなどが設定されており、そのような終了状況を満たした時点で各レイごとに個別的にボクセル演算が終了する。   Although not shown, after (d), the inter-frame region moves in a stepwise manner, and voxel calculation is performed on the ray that passes through the inter-frame region at each moving position. In addition, necessary voxel operations can be performed for all the rays, and as a result, a three-dimensional image can be constructed on the screen 40. Incidentally, as an end condition of the voxel calculation for each ray, for example, the target coordinates to be subjected to the voxel calculation are out of the three-dimensional data space 36, or the cumulatively added opacity value exceeds a predetermined value. Etc. are set, and the voxel calculation is individually ended for each ray when such an end situation is satisfied.

一方、図11には、レイがX軸の負の方向に向かって設定されている場合のボクセル演算の実行過程が段階的に示されており、(a),(b),(c),(d)の順で工程が進行する。すなわち、まず(a)に示される、k−2番目のフレームとk−1番目のフレームの間のフレーム間領域E1を通るレイL1〜レイL8についてボクセルデータが生成されてボクセル演算が実行される。この時点において、それ以外のレイL9〜レイL12についてのボクセル演算は見送られる。さらに(b)に示すようにフレーム間領域E2について、フレーム間領域E2を通るレイL2〜レイL9についてボクセルデータが生成されてボクセル演算が実行される。同様に(c),(d)に示すように、フレーム間領域E3,E4に関してボクセル演算が実行される。   On the other hand, FIG. 11 shows a step-by-step process of executing the voxel operation when the ray is set toward the negative direction of the X axis. (A), (b), (c), The process proceeds in the order of (d). That is, first, voxel data is generated for the rays L1 to L8 passing through the inter-frame region E1 between the (k-2) th frame and the (k-1) th frame shown in (a), and the voxel operation is executed. . At this time, the voxel operations for the other rays L9 to L12 are postponed. Further, as shown in (b), for the inter-frame region E2, voxel data is generated for the rays L2 to L9 passing through the inter-frame region E2, and the voxel calculation is executed. Similarly, as shown in (c) and (d), the voxel calculation is executed for the inter-frame regions E3 and E4.

このように、本実施形態によれば、三次元データ空間36に対して任意の位置に視点を設定した場合においても、ボクセル演算の進行方向に沿ってフレームデータが取得され、フレーム間領域を移動させながらボクセルデータを生成することができる。こうして、各レイについてのボリュームレンダリング演算(ボクセル演算)を適切に行うことが可能となる。   As described above, according to the present embodiment, even when the viewpoint is set at an arbitrary position with respect to the three-dimensional data space 36, the frame data is acquired along the traveling direction of the voxel calculation, and the inter-frame region is moved. Voxel data can be generated. In this way, volume rendering calculation (voxel calculation) for each ray can be appropriately performed.

本実施形態においては、単位レイベクトルによってレイ方向における基本長が定義されており、その基本長が対象座標の間隔すなわちピッチとされている。このような方式によれば、各レイの向きによらずにボクセル演算の回数あるいは密度を均一化することができるので、視点を異ならせた場合において、ボクセル演算のピッチが不定の場合に生ずる画質の相違あるいは画像内容の変化といった問題を未然に防止することが可能となる。   In the present embodiment, the basic length in the ray direction is defined by the unit ray vector, and the basic length is set as the interval of the target coordinates, that is, the pitch. According to such a method, the number or density of voxel operations can be made uniform regardless of the direction of each ray, so that the image quality that occurs when the pitch of voxel operations is indefinite when the viewpoints are different. It is possible to prevent problems such as differences in image quality or changes in image content.

次に、図12〜図15を用いて、図2に示した超音波診断装置の動作、特に3Dプロセッサの動作について説明する。図12にはメインルーチンが示されており、S101では、図13に示される初期化プロセスが実行される。S102では、単位レイベクトルの成分ΔXの符号を用いて、ボクセル演算の方向が選択され、すなわちS103のプロセスを実行するか、S104のプロセスを実行するかが選択される。   Next, the operation of the ultrasonic diagnostic apparatus shown in FIG. 2, particularly the operation of the 3D processor, will be described with reference to FIGS. FIG. 12 shows the main routine. In S101, the initialization process shown in FIG. 13 is executed. In S102, the direction of the voxel calculation is selected using the sign of the unit ray vector component ΔX, that is, whether to execute the process of S103 or the process of S104 is selected.

S103では、X方向における正方向がボクセル演算の方向として指定され、フレーム番号が増加する方向に順次フレームデータが取得され、ボクセルデータが生成されて画像処理が実行される。これについては後に図14を用いて詳述する。その一方において、S104においてはX方向における負方向がボクセル演算の方向として指定され、フレーム番号が減少する方向に順次フレームデータが取得され、それに基づいた画像処理が実行される。S103のプロセスとS104のプロセスは基本的には同一であるがそこで設定されるパラメータがいくつか異なっている。これについては後に説明する。S105では、上記のいずれかのプロセスによって生成された三次元画像が3Dプロセッサから表示処理部へ転送される。   In S103, the positive direction in the X direction is designated as the voxel calculation direction, frame data is sequentially acquired in the direction in which the frame number increases, voxel data is generated, and image processing is executed. This will be described in detail later with reference to FIG. On the other hand, in S104, the negative direction in the X direction is designated as the direction of voxel calculation, frame data is sequentially acquired in the direction in which the frame number is decreased, and image processing based on the frame data is executed. The process of S103 and the process of S104 are basically the same, but some parameters are set there. This will be described later. In S105, the 3D image generated by any of the above processes is transferred from the 3D processor to the display processing unit.

図13には、図12に示したS101の初期化プロセスがフローチャートとして示されている。まず、S201では、正規化された視線(単位レイ)ベクトルについて各軸ごとの成分すなわち要素ΔX,ΔY,ΔZが演算される。単位レイベクトルはその長さが1で、視点からスクリーンを見た方向として定義される。S202では、パラメータYscに0が代入され、S203ではパラメータXscに0が代入される。   FIG. 13 shows a flowchart of the initialization process of S101 shown in FIG. First, in S201, components for each axis, that is, elements ΔX, ΔY, and ΔZ are calculated for the normalized line-of-sight (unit ray) vector. The unit ray vector has a length of 1 and is defined as the direction of viewing the screen from the viewpoint. In S202, 0 is substituted for the parameter Ysc, and in S203, 0 is substituted for the parameter Xsc.

S204では、スクリーン座標Xsc,Yscで特定されるレイについて、それが最初に三次元データ空間と交わる点(Xs,Ys、Zs)が最初のボクセル演算の対象となる対象座標として演算される。そして、S205では、その対象座標が内部メモリ上に構成されるアドレステーブルに格納される。   In S204, for the ray specified by the screen coordinates Xsc and Ysc, the point (Xs, Ys, Zs) at which it first intersects with the three-dimensional data space is calculated as the target coordinate that is the target of the first voxel calculation. In step S205, the target coordinates are stored in an address table configured on the internal memory.

S206では、パラメータXscが1つインクリメントされ、S207では、Xscがその最大値を越えたか否かが判断され、越えていなければ、S204からの各工程が実行される。   In S206, the parameter Xsc is incremented by 1. In S207, it is determined whether or not Xsc exceeds the maximum value. If not, each process from S204 is executed.

また、S208では、パラメータYscが1つインクリメントされ、S209ではパラメータYscがその最大値を越えたか否かが判断され、越えていなければS203からの各工程が繰り返し実行される。すなわちパラメータXsc及びYscをそれぞれ1つずつ変えながら、スクリーン上の全ての座標の各々に対応するレイについて最初の対象座標が演算され、それがアドレステーブルに格納されることになる。   In S208, the parameter Ysc is incremented by 1. In S209, it is determined whether or not the parameter Ysc has exceeded its maximum value. If not, each step from S203 is repeatedly executed. That is, while changing the parameters Xsc and Ysc one by one, the first target coordinates are calculated for the rays corresponding to all the coordinates on the screen and stored in the address table.

図14には、図12に示したS103のプロセスの具体的な内容がフローチャートとして示されている。S301では、フレーム番号に相当するパラメータfに0が代入される(図12に示したS104の場合には、f=k−1(fの最大値)が代入される)。ちなみに、S301においてパラメータfに0が代入され、後述するようにそのfは1つずつインクリメントされ、フレーム番号が増加する方向に処理が順次移動することで本プロセスが進行する。   FIG. 14 is a flowchart showing specific contents of the process of S103 shown in FIG. In S301, 0 is substituted for the parameter f corresponding to the frame number (in the case of S104 shown in FIG. 12, f = k-1 (maximum value of f) is substituted). Incidentally, 0 is substituted for the parameter f in S301, and f is incremented by 1 as will be described later, and the process proceeds by sequentially moving the process in the direction of increasing the frame number.

S302では、フレームデータの転送が行われる。すなわち、f番目およびf+1番目のフレームのフレームデータが受信部16および2D変換部22を介して内部メモリへ転送される(前述したように、フレームメモリ24を経由してフレームデータが転送されてもよい)。そして転送されたフレームデータを利用してボリュームデータが補間処理によって生成される。S302で転送される二つのフレームデータは図4を利用して説明したようにメモリ空間上で連続しているデータ集合である。   In S302, frame data is transferred. That is, the frame data of the f-th and f + 1-th frames are transferred to the internal memory via the receiving unit 16 and the 2D conversion unit 22 (even if the frame data is transferred via the frame memory 24 as described above). Good). Then, volume data is generated by interpolation processing using the transferred frame data. The two frame data transferred in S302 is a data set continuous in the memory space as described with reference to FIG.

S303ではパラメータYscに0が代入され、S304ではパラメータXscに0が代入される。S305では、Xsc及びYscで特定されるスクリーン座標に対応するレイについて、それについてのボクセル演算が全て完了したレイであるか否かが判断される。YesであればS315からの各工程が実行され、NoであればS306からの各工程が実行される。   In S303, 0 is substituted for the parameter Ysc, and in S304, 0 is substituted for the parameter Xsc. In S305, it is determined whether or not the ray corresponding to the screen coordinates specified by Xsc and Ysc is a ray for which all voxel operations have been completed. If Yes, each step from S315 is executed, and if No, each step from S306 is executed.

S306では、アドレステーブルからXsc及びYscで特定されるレイについて対象座標Pc(Xp,Yp,Zp)が読み出される。すなわち、当該レイについて現在演算対象となっている座標が特定される。そして、S307では、座標Pcがf番目およびf+1番目のフレームまたはこれらのフレームの間にあるか否かが判断される。Noであれば現在演算すべきボクセルデータは存在しないものとして処理がS315へ移行し、一方、Yesであればその当該レイについてボクセル演算の対象となるボクセルデータが存在しているものとして処理がS308へ移行する。   In S306, the target coordinates Pc (Xp, Yp, Zp) are read for the ray specified by Xsc and Ysc from the address table. That is, the coordinates currently being calculated for the ray are specified. In S307, it is determined whether or not the coordinate Pc is in the f-th and f + 1-th frames or between these frames. If No, the process proceeds to S315 on the assumption that there is no voxel data to be currently calculated, whereas if Yes, the process proceeds to S308 assuming that there is voxel data to be subjected to voxel calculation for that ray. Migrate to

S308では、座標Pcがf番目またはf+1番目のフレーム上ではなく、これらのフレームの間にあるか否かが判断される。Noであれば、つまり、座標Pcがf番目またはf+1番目のフレーム上に存在すればS309へ移行し、一方、YesであればS310へ移行する。S309では、座標Pcがフレーム上に存在するため、座標Pcの位置に相当するフレーム上のフレームデータ(エコーデータ)が座標Pcの位置におけるボクセルデータとして選択される。なお、座標Pcに完全に一致する位置にエコーデータが存在しなければ、最も近傍に位置するエコーデータをボクセルデータとして選択してもよく、あるいは、近傍のエコーデータから補間処理などによりボクセルデータを算出してもよい。   In S308, it is determined whether or not the coordinate Pc is not on the f-th or f + 1-th frame but between these frames. If No, that is, if the coordinate Pc exists on the f-th or f + 1-th frame, the process proceeds to S309, whereas if Yes, the process proceeds to S310. In S309, since the coordinate Pc exists on the frame, frame data (echo data) on the frame corresponding to the position of the coordinate Pc is selected as the voxel data at the position of the coordinate Pc. If there is no echo data at a position that completely coincides with the coordinate Pc, the nearest echo data may be selected as the voxel data, or the voxel data may be selected from the nearby echo data by interpolation or the like. It may be calculated.

S310では、座標Pcがフレーム上に存在しないため、座標Pcの位置におけるボクセルデータが、フレーム上の近傍エコーデータから補間処理によって算出される。なおS310において実行される補間処理の詳細は、後に図15を利用して詳述する。   In S310, since the coordinate Pc does not exist on the frame, the voxel data at the position of the coordinate Pc is calculated by interpolation processing from the neighborhood echo data on the frame. The details of the interpolation processing executed in S310 will be described later with reference to FIG.

S311では、対象座標によって特定されるボクセルデータを利用して上記の数1式を実行することにより、出力値が演算される。S312では、上記の演算結果が内部メモリ上のテーブルに保存される。すなわち、上記の数1式に従えば、当該レイについての演算結果であるCoutXY及びαoutXYが保存される。ちなみに、この段階において例えばオパシティ値の累積加算値が1に到達した場合など所定の終了条件を満たす場合には、処理をS312へ移行させることなくデータの保存前あるいはデータの保存後に処理をS315へ移行させるのが望ましい。 In S311, the output value is calculated by executing the above equation 1 using the voxel data specified by the target coordinates. In S312, the calculation result is stored in a table on the internal memory. That is, according to the above equation 1, C outXY and α outXY that are the calculation results for the ray are stored. Incidentally, in this stage, when a predetermined end condition is satisfied, for example, when the accumulated addition value of the opacity value reaches 1, for example, the process proceeds to S315 without storing the data or after storing the data without shifting the process to S312. It is desirable to migrate.

S313では、当該レイについて対象座標が更新される。すなわち、X座標、Y座標及びZ座標のそれぞれについてΔX、ΔY、ΔZが加算され、これによって対象座標が更新される。S314においては、そのような更新された対象座標が三次元データ空間(あるいは有効な処理範囲)内にあるか否かが判断され、対象座標が三次元データ空間内に存在すれば処理がS307へ移行し、その一方、対象座標が三次元データ空間内でなければ処理がS315へ移行する。   In S313, the target coordinates are updated for the ray. That is, ΔX, ΔY, and ΔZ are added for each of the X coordinate, the Y coordinate, and the Z coordinate, thereby updating the target coordinates. In S314, it is determined whether or not such updated target coordinates are in the three-dimensional data space (or an effective processing range). If the target coordinates are in the three-dimensional data space, the process proceeds to S307. On the other hand, if the target coordinates are not within the three-dimensional data space, the process proceeds to S315.

ここで、S313から処理がS307へ移行した場合において、現在処理対象となっているボクセル演算実行可能なボクセルデータが存在するならばS308以降の各工程が繰り返し実行されることになる。すなわち、このようなプロセスにより、フレームデータのデータ転送ごとに、ボクセル演算実行可能なレイが判断され、しかもそのレイについてボクセル演算実行可能なところまでボクセル演算を進行させることができる。   Here, when the process proceeds from S313 to S307, if there is currently voxel data that can be processed by the voxel calculation, the processes after S308 are repeatedly executed. That is, by such a process, for each data transfer of the frame data, a ray capable of executing the voxel operation is determined, and the voxel operation can be advanced to a place where the voxel operation can be executed for the ray.

S315においては、パラメータXscが1つインクリメントされ、S316ではそのパラメータXscがその最大値を越えたか否かが判断され、越えていなければ処理がS305へ移行し、越えていればS317においてパラメータYscが1つインクリメントされ、S318においてパラメータYscがその最大値を越えているか否かが判断される。Yscがその最大値を超えていなければ処理がS304へ移行し、その一方、越えていれば処理がS319へ移行する。S319では、fが1つインクリメントされ(図12のS104の場合にはf=f−1)、S320においてそのパラメータfがその最大値k−1に達したか否かが判断され(図12のS104の場合にはf=0が判断され)、達していなければ処理がS321へ移行し、f+1番目のフレームに相当するフレームデータが転送されてS303以降の処理が実行される。一方、S320においてパラメータfがその最大値k−1に達したと判断されると処理がS322へ移行する。   In S315, the parameter Xsc is incremented by 1. In S316, it is determined whether or not the parameter Xsc exceeds the maximum value. If not, the process proceeds to S305. If it exceeds, the parameter Ysc is set in S317. It is incremented by 1, and it is determined in S318 whether or not the parameter Ysc exceeds the maximum value. If Ysc does not exceed the maximum value, the process proceeds to S304, and if it exceeds, the process proceeds to S319. In S319, f is incremented by 1 (f = f-1 in the case of S104 in FIG. 12), and it is determined in S320 whether the parameter f has reached its maximum value k-1 (in FIG. 12). In the case of S104, f = 0 is determined), and if not reached, the process proceeds to S321, the frame data corresponding to the (f + 1) th frame is transferred, and the processes after S303 are executed. On the other hand, if it is determined in S320 that the parameter f has reached its maximum value k-1, the process proceeds to S322.

すなわち、フレームデータの転送ごとに、また、各レイごとに、ボクセル演算の実行が可能か否かが判断され、それが可能であればボクセル演算が実行可能なところまでボクセル演算が進行する。そして、全てのレイについてそのような検証及び演算が実行された後、処理がS321を介してS303に戻って次のフレームデータについての演算が行われ、これがフレームデータの転送ごとに順次繰り返されることになる。したがって、最初のフレームデータの転送から最後のフレームデータの転送までを完了すると、その結果として全レイについて実行可能な全てのボクセル演算が完結することになる。そこで、S322においては、各レイごとに求められた出力値であるCoutXYを輝度変換して画素値として格納する処理が実行される。 That is, for each transfer of frame data and for each ray, it is determined whether or not the execution of the voxel operation is possible. If it is possible, the voxel operation proceeds to the point where the voxel operation can be executed. Then, after such verification and calculation are executed for all the rays, the process returns to S303 via S321, and the calculation for the next frame data is performed, which is sequentially repeated for each transfer of the frame data. become. Therefore, when the process from the transfer of the first frame data to the transfer of the last frame data is completed, all the voxel operations that can be executed for all the rays are completed as a result. Therefore, in S322, a process of performing luminance conversion on C outXY , which is an output value obtained for each ray, and storing it as a pixel value is executed.

図15には、図14に示したS310のプロセスの具体的な内容がフローチャートとして示されている。S401では、対象座標Pc(Zp,Yp,Xp)から、補間点INTpを算出するための4つのフレームデータ(エコーデータ)を得るために用いる補間基準点P1(f,y,x)を次の数2式に基づいて求める。

Figure 0004653536
数2式において、mはフレームのy方向のピクセル数であり、nはフレームのx方向のピクセル数であり、kはフレーム数である(図3参照)。また、Ymax,Xmaxは、それぞれ、三次元データ空間のY軸方向サイズ、X軸方向のサイズである。さらに、φrotは、0番目のフレームと最終番号のフレームとの間の角度(図5参照)である。 FIG. 15 is a flowchart showing the specific contents of the process of S310 shown in FIG. In S401, the interpolation reference point P1 (f, y, x) used to obtain four frame data (echo data) for calculating the interpolation point INTp from the target coordinates Pc (Zp, Yp, Xp) is It calculates | requires based on Formula 2.
Figure 0004653536
In Equation 2, m is the number of pixels in the y direction of the frame, n is the number of pixels in the x direction of the frame, and k is the number of frames (see FIG. 3). Ymax and Xmax are the Y-axis direction size and the X-axis direction size of the three-dimensional data space, respectively. Further, φrot is an angle (see FIG. 5) between the 0th frame and the last numbered frame.

S402では、補間基準点P1(f,y,x)を基準として、残りの点P2〜P4を、P2=(f,y+1,x),P3=(f+1,y,x),P4=(f+1,y+1,x)として求める。こうして、補間点INTpを算出するための4つのフレームデータ(エコーデータ)P1〜P4が求められる(図6参照)。   In S402, with the interpolation reference point P1 (f, y, x) as a reference, the remaining points P2 to P4 are changed to P2 = (f, y + 1, x), P3 = (f + 1, y, x), P4 = (f + 1). , Y + 1, x). Thus, four frame data (echo data) P1 to P4 for calculating the interpolation point INTp are obtained (see FIG. 6).

S403では、P1〜P4の各々に対応する補間係数w1〜w4を求める。補間係数w1〜w4は、例えば、フレームデータと補間点INTpとの位置関係(各フレームデータと補間点の距離など)から決定される。 In S403, interpolation coefficients w 1 to w 4 corresponding to each of P1 to P4 are obtained. The interpolation coefficients w 1 to w 4 are determined from, for example, the positional relationship between the frame data and the interpolation point INTp (such as the distance between each frame data and the interpolation point).

そして、S404では、次の数3式の補間処理によりINTpが求められる。

Figure 0004653536
数3式において、P1は点P1のフレームデータ、P2は点P2のフレームデータ、P3は点P3のフレームデータ、P4は点P4のフレームデータである。こうして、レイ上のボクセルデータ(補間点INTp)が算出される。 In S404, INTp is obtained by the interpolation processing of the following equation (3).
Figure 0004653536
In Equation 3, P 1 is frame data at point P 1 , P 2 is frame data at point P 2 , P 3 is frame data at point P 3 , and P 4 is frame data at point P 4 . Thus, voxel data on the ray (interpolation point INTp) is calculated.

以上説明したように、本実施形態においては、ボクセル演算におけるレイの向きを考慮して、ボクセル演算に必要な順にフレームデータが適切に取得され、ボリュームレンダリング演算が行われる。このため、三次元データ空間内の多数のエコーデータを取得してからボクセル演算を開始する場合に比べて、極めて能率的な演算処理を実現できる。   As described above, in the present embodiment, in consideration of the ray direction in the voxel calculation, the frame data is appropriately acquired in the order necessary for the voxel calculation, and the volume rendering calculation is performed. For this reason, compared with the case where voxel calculation is started after acquiring a lot of echo data in the three-dimensional data space, extremely efficient calculation processing can be realized.

図16は、本実施形態におけるエコーデータの取得から三次元画像の表示までの処理タイミングを説明するための図である。   FIG. 16 is a diagram for explaining processing timing from the acquisition of echo data to the display of a three-dimensional image in the present embodiment.

図16には、受信部16、2D変換部22、3Dプロセッサ26および表示部30の各々についての処理のタイミングが示されており、横軸が時間軸に相当する。図16において、♯0,♯1,・・・,♯k−1は、フレーム番号(図4参照)を示している。つまり、受信部16は、フレーム♯0,フレーム♯1,フレーム♯2,・・・の順でフレームデータを段階的に取得している。三次元データ空間内にはフレーム♯0からフレーム♯k−1までのk枚のフレームが存在する。これらk枚のフレームによって一つのボリュームが構成される。つまり、受信部16は、フレーム♯0からフレームデータを段階的に取得し、フレーム♯k−1までのフレームを取得した時点で、ボリューム1の全てのデータを取得したことになり、その後ボリューム2のフレーム♯0の取得を開始する。図示省略しているが、受信部16は、フレームデータの取得動作を継続させ、ボリューム2,ボリューム3,・・・の順にフレームデータを取得する。   FIG. 16 shows processing timings for each of the receiving unit 16, the 2D conversion unit 22, the 3D processor 26, and the display unit 30, and the horizontal axis corresponds to the time axis. In FIG. 16, # 0, # 1,..., # K-1 indicate frame numbers (see FIG. 4). That is, the receiving unit 16 obtains frame data step by step in the order of frame # 0, frame # 1, frame # 2,. There are k frames from frame # 0 to frame # k-1 in the three-dimensional data space. One volume is constituted by these k frames. That is, the receiving unit 16 acquires frame data from the frame # 0 step by step, and has acquired all the data of the volume 1 at the time when the frames up to the frame # k−1 are acquired. Acquisition of frame # 0 is started. Although not shown, the receiving unit 16 continues the frame data acquisition operation and acquires frame data in the order of volume 2, volume 3,.

2D変換部22は、受信部16から出力されるフレームデータに対して二次元の座標変換を実行する。このため、2D変換部22によるフレーム♯0に処理の開始は、受信部16においてフレーム♯0のデータが取得された直後からとなる。さらに、受信部16においてフレーム♯1,フレーム♯2,・・・が次々に取得されると、2D変換部22は、各フレームが取得された直後から取得されたフレームの座標変換を実行する。   The 2D conversion unit 22 performs two-dimensional coordinate conversion on the frame data output from the reception unit 16. Therefore, the 2D conversion unit 22 starts processing at frame # 0 immediately after the reception unit 16 acquires the data of frame # 0. Further, when frame # 1, frame # 2,... Are acquired one after another in the receiving unit 16, the 2D conversion unit 22 performs coordinate conversion of the acquired frames immediately after each frame is acquired.

なお、受信部16においてフレーム♯0のデータが完全に取得される前に、取得されたデータ部分のみを利用して2D変換部22が処理を開始するようにしてもよい。つまり、2D変換部22、3Dプロセッサ26および表示部30は、各々、前段における1フレーム分の処理が完全に終了する前に、前段において処理が終了した部分のみを利用して処理を開始することも可能である。ただし、以下の説明においては、前段において1フレーム分の処理が完全に終了してから、後段の処理を開始するものとして説明する。   Note that before the data of frame # 0 is completely acquired by the reception unit 16, the 2D conversion unit 22 may start processing using only the acquired data portion. That is, each of the 2D conversion unit 22, the 3D processor 26, and the display unit 30 starts processing using only the portion that has been processed in the previous stage before the processing for one frame in the previous stage is completely completed. Is also possible. However, in the following description, it is assumed that the processing of one frame is completely completed in the former stage and the subsequent process is started.

3Dプロセッサ26は、座標変換されたフレームデータに基づいてボクセル演算を実行する。ただし、上述したように、ボクセル演算の際には、隣接する二枚の走査面に対応したフレームデータが必要になる(図6参照)。このため、3Dプロセッサ26によるボクセル演算は、2D変換部22において二枚のフレームが処理された直後からとなる。つまり、2D変換部22において、フレーム♯0とフレーム♯1の変換が行われた直後に、これら二枚のフレーム(♯0,♯1)のデータに基づくボクセル演算が開始される。さらに、2D変換部22においてフレーム♯1,フレーム♯2,・・・が次々に変換されると、3Dプロセッサ26は、各フレームが変換された直後から変換されたフレームを含むボクセル演算を実行する。   The 3D processor 26 performs a voxel operation based on the frame data subjected to coordinate conversion. However, as described above, frame data corresponding to two adjacent scanning planes is required for voxel calculation (see FIG. 6). For this reason, the voxel calculation by the 3D processor 26 is performed immediately after two frames are processed in the 2D conversion unit 22. That is, the voxel calculation based on the data of these two frames (# 0, # 1) is started immediately after the conversion of the frames # 0 and # 1 is performed in the 2D conversion unit 22. Further, when frames # 1, # 2,... Are successively converted by the 2D conversion unit 22, the 3D processor 26 executes a voxel operation including the converted frames immediately after each frame is converted. .

そして、3Dプロセッサ26において二枚のフレーム(♯k−2,♯k−1)を利用したボクセル演算が終了した時点で一つのボリューム(ボリューム1)に関するボクセル演算が完了し、その結果、ボリューム1の三次元画像が表示部30に表示される。   When the 3D processor 26 finishes the voxel operation using two frames (# k-2, # k-1), the voxel operation for one volume (volume 1) is completed. As a result, the volume 1 Are displayed on the display unit 30.

図16に示したように、本実施形態によれば、エコーデータの取得開始から三次元画像を表示するまでに、「1ボリューム分のデータ取得時間+2フレーム分のデータ取得時間」のディレイのみとなる。   As shown in FIG. 16, according to the present embodiment, only a delay of “data acquisition time for one volume + data acquisition time for two frames” from the start of the acquisition of echo data to the display of the 3D image. Become.

従来は、例えば1ボリューム内全てのデータを三次元メモリに取得(1ボリューム分のデータ取得時間)してから、三次元メモリ内のデータを利用して三次元空間内のボクセルデータを演算し(例えば、1ボリューム分のデータ取得時間に相当)、その後、各レイごとにボクセル演算を実行(さらに、1ボリューム分のデータ取得時間に相当)していた。このため、従来は、例えば3ボリューム分のデータ取得時間分だけディレイが存在していた。これに比べて、本実施形態では、大幅にディレイ時間を短縮することができるのが理解できる。   Conventionally, for example, after all data in one volume is acquired in a three-dimensional memory (data acquisition time for one volume), voxel data in a three-dimensional space is calculated using data in the three-dimensional memory ( For example, it corresponds to the data acquisition time for one volume), and then the voxel calculation is executed for each ray (further, it corresponds to the data acquisition time for one volume). For this reason, there has conventionally been a delay corresponding to, for example, a data acquisition time for 3 volumes. Compared to this, it can be understood that the delay time can be greatly shortened in the present embodiment.

以上説明した本実施形態では、レイの向きに応じてボクセル演算に必要なものから順に複数のエコーデータを取得して、3Dプロセッサ26においてボクセル演算を実行している。3Dプロセッサ26によるボクセル演算については、図6から図15を利用して詳述したとおりである。ただし、本発明におけるボクセル演算の手法は、上述した手法に限定されない。例えば、3Dプロセッサ26において、処理プレーンを構成してからボクセル演算を行ってもよい。以下、処理プレーンを構成してからボクセル演算を行う変形例について説明する。   In the present embodiment described above, a plurality of echo data are acquired in order from those necessary for the voxel calculation according to the direction of the ray, and the 3D processor 26 executes the voxel calculation. The voxel calculation by the 3D processor 26 is as described in detail with reference to FIGS. However, the method of voxel calculation in the present invention is not limited to the method described above. For example, in the 3D processor 26, a voxel operation may be performed after a processing plane is configured. Hereinafter, a modified example in which the voxel calculation is performed after the processing plane is configured will be described.

変形例においても、レイの向きに応じてボクセル演算に必要なものから順に複数のエコーデータが取得される。例えば、上述した実施形態と同様に、視点に近いものから順にフレームデータ(エコーデータ)が取得される。そして、3Dプロセッサ26は、取得した各フレームを仮想的ボリューム空間である三次元データ空間内に配置し、各フレームのエコーデータから仮想ボリューム内の処理プレーン上のボクセルデータを算出してボリュームレンダリング法による演算を行う。   Also in the modified example, a plurality of pieces of echo data are acquired in order from those required for voxel calculation according to the direction of the ray. For example, as in the above-described embodiment, frame data (echo data) is acquired in order from the one closest to the viewpoint. Then, the 3D processor 26 arranges each acquired frame in a three-dimensional data space that is a virtual volume space, calculates voxel data on a processing plane in the virtual volume from echo data of each frame, and performs a volume rendering method. Perform the calculation by.

図17には、変形例において、3Dプロセッサ26がボクセルデータを生成する際の補間処理の概念図が示されている。図17は、図4の三次元データ空間36についてのxy断面における一部拡大図に相当する。三次元データ空間36内の各ボクセルデータは、そのボクセルデータの近傍に位置する4つのエコーデータから生成される。例えば、図17において、ボクセルデータINTpは、その近傍の4つのエコーデータP1,P2,P3,P4から補間処理によって生成される。補間処理としては、例えば、4つのエコーデータP1,P2,P3,P4の各々に補間係数を掛けて加算する処理などが挙げられる。各エコーデータごとの補間係数は、例えば、各エコーデータとボクセルデータとの相対位置に応じて設定される。   FIG. 17 shows a conceptual diagram of interpolation processing when the 3D processor 26 generates voxel data in a modified example. FIG. 17 corresponds to a partially enlarged view of the three-dimensional data space 36 of FIG. Each voxel data in the three-dimensional data space 36 is generated from four echo data located in the vicinity of the voxel data. For example, in FIG. 17, voxel data INTp is generated by interpolation processing from four echo data P1, P2, P3, and P4 in the vicinity thereof. As the interpolation process, for example, a process of multiplying each of the four echo data P1, P2, P3, and P4 by an interpolation coefficient and adding them can be cited. The interpolation coefficient for each echo data is set according to the relative position between each echo data and voxel data, for example.

本変形例では、フレームデータ(♯j〜♯j+3)が三次元データ空間36のxy平面に垂直に配置されるため、三次元データ空間36内において、x座標値およびy座標値が同一でz軸方向に並ぶボクセルデータ列の各ボクセルデータに対して、同一の補間係数が利用される。   In the present modification, since the frame data (#j to # j + 3) is arranged perpendicular to the xy plane of the three-dimensional data space 36, the x coordinate value and the y coordinate value are the same and z in the three-dimensional data space 36. The same interpolation coefficient is used for each voxel data in the voxel data sequence arranged in the axial direction.

図18には、補間処理によって生成される処理プレーン上のボクセルデータ列が示されている。図18のフレームデータ♯j内のエコーデータ列P1´は、図17のエコーデータP1の位置からフレームデータ座標系のα軸(z軸に平行)に沿って並ぶエコーデータのデータ列であり、図18のフレームデータ♯j内のエコーデータ列P2´は、図17のエコーデータP2の位置からα軸に沿って並ぶエコーデータのデータ列である。また、図18のフレームデータ♯j+1内のエコーデータ列P3´は、図17のエコーデータP3の位置からα軸に沿って並ぶエコーデータのデータ列であり、図18のフレームデータ♯j+1内のエコーデータ列P4´は、図17のエコーデータP4の位置からα軸に沿って並ぶエコーデータのデータ列である。   FIG. 18 shows a voxel data string on the processing plane generated by the interpolation process. The echo data string P1 ′ in the frame data #j in FIG. 18 is a data string of echo data arranged along the α axis (parallel to the z axis) of the frame data coordinate system from the position of the echo data P1 in FIG. The echo data string P2 ′ in the frame data #j in FIG. 18 is a data string of echo data arranged along the α axis from the position of the echo data P2 in FIG. Further, the echo data string P3 ′ in the frame data # j + 1 in FIG. 18 is a data string of echo data arranged along the α axis from the position of the echo data P3 in FIG. 17, and the echo data string P3 ′ in the frame data # j + 1 in FIG. The echo data string P4 ′ is a data string of echo data arranged along the α axis from the position of the echo data P4 in FIG.

図18のボクセルデータ列INTp´は、図17のボクセルデータINTpの位置からz軸(α軸に平行)に沿って並ぶボクセルデータのデータ列である。ボクセルデータ列INTp´上の各ボクセルデータは、そのボクセルデータが含まれるxy断面上に存在するエコーデータ列P1´〜P4´上のエコーデータから補間処理によって生成される。この補間処理は、ボクセルデータ列INTp´上の全てのボクセルデータに対して実行される。この際、エコーデータ列P1´上の全てのエコーデータに対して同一の補間係数が利用される。同様に、エコーデータ列P2´上の全てのエコーデータに対して同一の補間係数が利用され、エコーデータ列P3´上の全てのエコーデータに対して同一の補間係数が利用され、エコーデータ列P4´上の全てのエコーデータに対して同一の補間係数が利用される。   The voxel data string INTp ′ in FIG. 18 is a data string of voxel data arranged along the z axis (parallel to the α axis) from the position of the voxel data INTp in FIG. Each voxel data on the voxel data string INTp ′ is generated by interpolation processing from echo data on the echo data strings P1 ′ to P4 ′ existing on the xy section including the voxel data. This interpolation processing is executed for all the voxel data on the voxel data string INTp ′. At this time, the same interpolation coefficient is used for all echo data on the echo data string P1 ′. Similarly, the same interpolation coefficient is used for all echo data on the echo data string P2 ′, and the same interpolation coefficient is used for all echo data on the echo data string P3 ′. The same interpolation coefficient is used for all echo data on P4 ′.

補間処理に利用されるエコーデータ列P1´〜P4´は、二つの隣接するフレームデータ内のエコーデータ列であるため、3Dプロセッサ26は、段階的に取得されてフレームメモリ24に記憶された複数のフレームデータのうちから二つのフレームデータをDMA転送などによりまとめて読み出し、補間処理を行ってボクセルデータを生成し、ボリュームレンダリング法に基づくボクセル演算を実行することができる。以下、3Dプロセッサ26で実行されるボクセル演算について詳述する。   Since the echo data sequences P1 ′ to P4 ′ used for the interpolation processing are echo data sequences in two adjacent frame data, the 3D processor 26 acquires a plurality of pieces of data acquired in stages and stored in the frame memory 24. Of these frame data, two frame data can be read together by DMA transfer or the like, voxel data can be generated by performing an interpolation process, and a voxel operation based on the volume rendering method can be executed. Hereinafter, the voxel operation executed by the 3D processor 26 will be described in detail.

図19には、三次元データ空間36に対して複数のレイが設定された状態が示されている。三次元データ空間36は、三次元空間ではあるが、図19においては説明のために平面的に表されている。   FIG. 19 shows a state in which a plurality of rays are set for the three-dimensional data space 36. Although the three-dimensional data space 36 is a three-dimensional space, it is represented in a planar manner in FIG. 19 for explanation.

図19に示されるように、複数のレイがx軸及びy軸に対して交差する斜め方向に設定された場合、各レイに注目すると、各レイが最初に三次元データ空間36に進入する座標が図19において黒丸で示されている。各黒丸はボクセルデータに相当するものである。図19に示されるように、各レイの位置に応じて三次元データ空間36に進入する最初の座標はそれぞれ異なっている。例えば、レイL5〜L12までの8つのレイについては進入位置はx座標における原点を横切るy−z面上(最初の処理プレーン上)に存在し、それがボクセルデータe1〜e8で表されている。その一方、レイL1〜L4についてはy方向の終端を横切るx−z面上に進入しており、その最初の進入位置にあるボクセルデータが図19においてe9〜e12で表されている。ちなみに、スクリーン40上における各座標ごとに1つのレイが対応付けられており、また、図19の例では、各レイは平行であって、便宜上、レイL1上に単位レイベクトルVが表されている。   As shown in FIG. 19, when a plurality of rays are set in an oblique direction intersecting with the x-axis and the y-axis, when attention is paid to each ray, the coordinates at which each ray first enters the three-dimensional data space 36 are shown. Is indicated by a black circle in FIG. Each black circle corresponds to voxel data. As shown in FIG. 19, the initial coordinates that enter the three-dimensional data space 36 differ depending on the position of each ray. For example, for the eight rays from the rays L5 to L12, the approach positions exist on the yz plane (on the first processing plane) crossing the origin in the x coordinate, which is represented by the voxel data e1 to e8. . On the other hand, the rays L1 to L4 enter the xz plane crossing the end in the y direction, and the voxel data at the initial entry position is represented by e9 to e12 in FIG. Incidentally, one ray is associated with each coordinate on the screen 40, and in the example of FIG. 19, each ray is parallel, and for convenience, a unit ray vector V is represented on the ray L1. Yes.

3Dプロセッサ26は、各レイが最初に三次元データ空間36に進入する座標である演算開始点をレンダリングレイの本数分だけ算出してアドレステーブルに保存する。処理を高速化するために、アドレステーブルは頻繁にアクセスを行うので、内部メモリ28に保持することが望ましい。本変形例においては、三次元データ空間36内に存在する複数のボクセルデータ(つまり、ボリュームデータ)が上述したように、各フレームのエコーデータから補間処理によって算出される。そこで、3Dプロセッサ26は、まずx座標における原点を横切るy−z面を処理プレーンとして、この処理プレーン上のボクセルデータ(つまり、図19におけるボクセルデータe1〜e8)を生成するために必要なフレームデータをフレームメモリ24から内部メモリ28に読み込む。そして、3Dプロセッサ26は、アドレステーブルを参照して、y−z面上のボクセルデータを含むレイに対して、前記数1式に基づくボクセル演算を行う。その際、演算に利用されるボクセルデータはフレームデータから補間処理して生成される。   The 3D processor 26 calculates the calculation start points, which are the coordinates at which each ray first enters the three-dimensional data space 36, by the number of rendering rays and stores the calculation start points in the address table. In order to speed up the processing, the address table is accessed frequently, so it is desirable to store it in the internal memory 28. In the present modification, a plurality of voxel data (that is, volume data) existing in the three-dimensional data space 36 are calculated from the echo data of each frame by interpolation processing as described above. Therefore, the 3D processor 26 first uses the yz plane that crosses the origin in the x coordinate as a processing plane, and the frames necessary for generating voxel data on the processing plane (that is, voxel data e1 to e8 in FIG. 19). Data is read from the frame memory 24 into the internal memory 28. Then, the 3D processor 26 refers to the address table and performs voxel calculation based on the equation 1 on the ray including the voxel data on the yz plane. At that time, voxel data used for the calculation is generated by interpolating from the frame data.

ボクセル演算の出力値Couti、αoutiは一時バッファに保持され、演算を行ったレンダリングレイはアドレステーブルの値にレイ単位ベクトルの各要素を加算し、次のボクセルデータを示すアドレスが生成される。生成された次データを示すアドレスが、x=0(y−z面上)になっているレンダリングレイはxアドレスが0以外になるまでこの演算を繰り返す。全てのレンダリングレイがx=0のアドレスを持つデータを処理し終えた場合、または、y,zのアドレスが三次元データ空間36のサイズを超えた場合にx=0の面における処理を完了する。 The output values C outi and α outi of the voxel operation are held in a temporary buffer, and the rendered ray for which the operation has been performed adds each element of the ray unit vector to the value in the address table to generate an address indicating the next voxel data. . For a rendering ray in which the address indicating the generated next data is x = 0 (on the yz plane), this calculation is repeated until the x address becomes other than 0. When all the rendering rays have finished processing data having an address of x = 0, or when the addresses of y and z exceed the size of the three-dimensional data space 36, the processing on the plane of x = 0 is completed. .

さらに、x=1,2,3,・・・の順に処理プレーンを移動させながらボクセル演算を行い、最後の面の処理が完了した時点におけるCoutiの値をスクリーン40上の投影データとして出力する。出力結果は表示処理部20において輝度変換され表示部30に出力される。その結果スクリーン40上に三次元画像を投影した表示画像が表示部30に表示される。 Further, voxel calculation is performed while moving the processing plane in the order of x = 1, 2, 3,..., And the value of C outi at the time when the processing of the last surface is completed is output as projection data on the screen 40. . The output result is subjected to luminance conversion in the display processing unit 20 and output to the display unit 30. As a result, a display image obtained by projecting the three-dimensional image on the screen 40 is displayed on the display unit 30.

図20には、ボクセル演算の実行過程が段階的に示されており、(a),(b),(c),(d)の順で工程が進行する。すなわち、まず(a)に示される、レイL5〜レイL12についてボクセルデータ列E1が生成されてボクセル演算が実行される。この時点において、それ以外のレイL1〜4についてのボクセル演算は見送られる。次に(b)に示すように今度はボクセルデータ列E2を生成してレイL4〜L12についてボクセル演算が実行される。すなわち、(a)に示した場合に比べてボクセル演算実行可能なレイとしてレイL4が加えられている。   FIG. 20 shows the execution process of the voxel operation step by step, and the processes proceed in the order of (a), (b), (c), and (d). That is, first, the voxel data string E1 is generated for the rays L5 to L12 shown in (a), and the voxel operation is executed. At this time, the voxel operations for the other rays L1 to L4 are postponed. Next, as shown in (b), this time, a voxel data string E2 is generated and a voxel operation is performed on the rays L4 to L12. That is, a ray L4 is added as a ray capable of executing the voxel operation compared to the case shown in FIG.

次に、(c)に示されるボクセルデータ列E3を生成してレイL4〜L12についてボクセル演算が実行され、この段階においては新しくボクセル演算実行可能なレイは加えられていない。そして、(d)に示されるように、更にボクセルデータ列E4を生成してレイL3〜L12についてボクセル演算が実行される。このような過程が繰り返されると、最終的に全レイについて必要なボクセル演算を行うことができ、その結果としてスクリーン40上に三次元画像を構築することが可能となる。ちなみに、各レイごとのボクセル演算の終了条件として、例えば、ボクセル演算の対象となる対象座標が三次元データ空間36から外れたこと、又は、累積加算した不透明度の値が所定値を越えたことなどが設定されており、そのような終了状況を満たした時点で各レイごとに個別的にボクセル演算が終了する。   Next, the voxel data string E3 shown in (c) is generated, and the voxel operation is executed for the rays L4 to L12. At this stage, no ray that can execute the voxel operation is added. Then, as shown in (d), the voxel data string E4 is further generated, and the voxel operation is executed for the rays L3 to L12. If such a process is repeated, the necessary voxel calculation can be finally performed for all the rays, and as a result, a three-dimensional image can be constructed on the screen 40. Incidentally, as an end condition of the voxel calculation for each ray, for example, the target coordinates to be subjected to the voxel calculation are out of the three-dimensional data space 36, or the cumulatively added opacity value exceeds a predetermined value. Etc. are set, and the voxel calculation is individually ended for each ray when such an end situation is satisfied.

図20に示した例では、左上から右下の方向に各レイの向きが定められており、ボクセル演算がx方向における正方向に順次進行している。この場合の視点の位置は、図9の(A)の状態に対応する。したがって、図20に示した例では、図9(A)に示すように、視点VPを起点とするレイ38が最初に交差するフレームはフレーム♯1であり、その後、フレーム♯2、フレーム♯3、・・・の順に交差していくため、送信部14および受信部16によって、フレーム番号の昇順にフレームデータが取得される。   In the example shown in FIG. 20, the direction of each ray is determined in the direction from the upper left to the lower right, and the voxel calculation proceeds sequentially in the positive direction in the x direction. In this case, the viewpoint position corresponds to the state shown in FIG. Therefore, in the example shown in FIG. 20, as shown in FIG. 9A, the frame where the ray 38 starting from the viewpoint VP first intersects is the frame # 1, and thereafter, the frame # 2, the frame # 3 ..,..., So that the transmission unit 14 and the reception unit 16 obtain frame data in ascending order of frame numbers.

なお、図20とは逆に、右上から左下の方向に各レイの向きが設定されているような場合には、ボクセル演算がx方向における負方向に順次進行する。この場合においては、図9(B)に示すように、視点VPを起点とするレイ38が最初に交差するフレームはフレーム♯k−1であり、その後、フレーム♯k−2、フレーム♯k−3、・・・の順に交差していくため、送信部14および受信部16によって、フレーム番号の降順にフレームデータが取得される。   Contrary to FIG. 20, when the direction of each ray is set from the upper right to the lower left, the voxel calculation proceeds sequentially in the negative direction in the x direction. In this case, as shown in FIG. 9B, the frame at which the ray 38 starting from the viewpoint VP first intersects is the frame # k-1, and thereafter, the frame # k-2 and the frame # k- 3 and so on, the frame data is acquired by the transmission unit 14 and the reception unit 16 in the descending order of the frame numbers.

本変形例においても、ボクセル演算におけるレイの向きを考慮して、ボクセル演算に必要な順にフレームデータが適切に取得され、ボリュームレンダリング演算が行われる。このため、三次元データ空間内の多数のエコーデータを取得してからボクセル演算を開始する場合に比べて、極めて能率的な演算処理を実現できる。   Also in this modified example, in consideration of the ray direction in the voxel calculation, the frame data is appropriately acquired in the order necessary for the voxel calculation, and the volume rendering calculation is performed. For this reason, compared with the case where voxel calculation is started after acquiring a lot of echo data in the three-dimensional data space, extremely efficient calculation processing can be realized.

図21は、本変形例におけるエコーデータの取得から三次元画像の表示までの処理タイミングを説明するための図である。   FIG. 21 is a diagram for explaining processing timing from acquisition of echo data to display of a three-dimensional image in the present modification.

図21の(A)には、フレームと処理プレーンの配置関係が図示されている。なお、図21の(A)は、図4の三次元データ空間36についてのxy断面に相当する。図21の(A)において、Frame♯0,Frame♯1,・・・Frame♯k−1はフレーム番号(図4参照)を示している。また、Plane♯0,Plane♯1,・・・Plane♯(Xmax−1)は処理プレーン番号を示している。   FIG. 21A shows the arrangement relationship between the frame and the processing plane. 21A corresponds to the xy section of the three-dimensional data space 36 in FIG. In FIG. 21A, Frame # 0, Frame # 1,... Frame # k-1 indicate frame numbers (see FIG. 4). Also, Plane # 0, Plane # 1,..., Planet # (Xmax-1) indicate processing plane numbers.

本変形例において、処理プレーン上のボクセルデータは、フレーム上のフレームデータから補間処理によって求められる(図17参照)。このため、処理プレーン上のボクセルデータを全て生成するためには、その処理プレーンの生成に利用されるフレームデータを全て取得する必要がある。例えば、図21の(A)において、処理プレーンPlane♯1を生成するためには、二枚のフレームFrame♯0,Frame♯1が必要になる。そして、処理プレーンの番号が大きくなるにつれて処理プレーンとフレームの交点が増えることに伴い、処理プレーンを生成するために必要とされるフレーム数が増加することがわかる。そして、フレームFrame♯((k−1)/2)までのフレームデータを取得すると、中央に位置する処理プレーンPlane♯((Xmax−1)/2)よりも左側(X軸の負方向側)に位置する処理プレーンについては生成可能になる。   In this modification, voxel data on the processing plane is obtained by interpolation processing from frame data on a frame (see FIG. 17). For this reason, in order to generate all the voxel data on the processing plane, it is necessary to acquire all the frame data used for generating the processing plane. For example, in FIG. 21A, two frames Frame # 0 and Frame # 1 are required to generate the processing plane Plan # 1. As the number of processing planes increases, the number of frames required to generate a processing plane increases as the number of intersections between processing planes and frames increases. When the frame data up to the frame Frame # ((k−1) / 2) is acquired, the processing plane Plan # ((Xmax−1) / 2) located at the center is on the left side (the negative direction side of the X axis). It is possible to generate the processing plane located at.

そこで、本変形例では、フレームFrame♯((k−1)/2)までのフレームデータを取得してからボクセル演算(処理プレーンの生成)を開始する。   Therefore, in the present modification, voxel calculation (generation of a processing plane) is started after obtaining frame data up to frame Frame # ((k−1) / 2).

図21の(B)には、受信部16、2D変換部22、3Dプロセッサ26および表示部30の各々についての処理のタイミングが示されており、横軸が時間軸に相当する。   FIG. 21B shows the processing timing for each of the receiving unit 16, the 2D conversion unit 22, the 3D processor 26, and the display unit 30, and the horizontal axis corresponds to the time axis.

図21の(B)において、F♯0,F♯1,・・・,F♯(k−1)は、フレーム番号(図4参照)を示している。つまり、例えば、受信部16は、フレーム♯0,フレーム♯1,フレーム♯2,・・・の順でフレームデータを段階的に取得している。三次元データ空間内にはフレーム♯0からフレーム♯(k−1)までのk枚のフレームが存在する。これらk枚のフレームによって一つのボリュームが構成される。つまり、受信部16は、フレーム♯0からフレームデータを段階的に取得し、フレーム♯(k−1)までのフレームを取得した時点で、ボリューム1の全てのデータを取得したことになり、その後ボリューム2のフレーム♯0の取得を開始する。図示省略しているが、受信部16は、フレームデータの取得動作を継続させ、ボリューム2,ボリューム3,・・・の順にフレームデータを取得する。   In FIG. 21B, F # 0, F # 1,..., F # (k−1) indicate frame numbers (see FIG. 4). That is, for example, the receiving unit 16 obtains frame data step by step in the order of frame # 0, frame # 1, frame # 2,. There are k frames from frame # 0 to frame # (k-1) in the three-dimensional data space. One volume is constituted by these k frames. That is, the receiving unit 16 acquires frame data from the frame # 0 in stages, and acquires all the data of the volume 1 at the time when the frames up to the frame # (k−1) are acquired. Acquisition of frame # 0 of volume 2 is started. Although not shown, the receiving unit 16 continues the frame data acquisition operation and acquires frame data in the order of volume 2, volume 3,.

2D変換部22は、受信部16から出力されるフレームデータに対して二次元の座標変換を実行する。このため、2D変換部22によるフレーム♯0の処理の開始は、受信部16においてフレーム♯0のデータが取得された直後からとなる。さらに、受信部16においてフレーム♯1,フレーム♯2,・・・が次々に取得されると、2D変換部22は、各フレームが取得された直後から取得されたフレームの座標変換を実行する。   The 2D conversion unit 22 performs two-dimensional coordinate conversion on the frame data output from the reception unit 16. For this reason, the processing of the frame # 0 by the 2D conversion unit 22 starts immediately after the reception unit 16 acquires the data of the frame # 0. Further, when frame # 1, frame # 2,... Are acquired one after another in the receiving unit 16, the 2D conversion unit 22 performs coordinate conversion of the acquired frames immediately after each frame is acquired.

なお、受信部16においてフレーム♯0のデータが完全に取得される前に、取得されたデータのみを利用して処理を開始するようにしてもよい。つまり、2D変換部22、3Dプロセッサ26および表示部30は、各々、前段における1フレーム分の処理が完全に終了する前に、前段において処理が終了した部分のみを利用して処理を開始することも可能である。ただし、以下の説明においては、前段において1フレーム分の処理が完全に終了してから、後段の処理を開始するものとして説明する。   Note that the processing may be started using only the acquired data before the data of frame # 0 is completely acquired by the receiving unit 16. That is, each of the 2D conversion unit 22, the 3D processor 26, and the display unit 30 starts processing using only the portion that has been processed in the previous stage before the processing for one frame in the previous stage is completely completed. Is also possible. However, in the following description, it is assumed that the processing of one frame is completely completed in the former stage and the subsequent process is started.

3Dプロセッサ26は、座標変換されたフレームデータに基づいてボクセル演算を実行する。ただし、上述したように、ボクセル演算の際には、処理プレーンの生成に利用されるフレームデータを全て取得する必要がある。このため、3Dプロセッサ26によるボクセル演算は、2D変換部22においてフレーム♯((k−1)/2)が処理された直後からとなる。つまり、2D変換部22において、フレーム♯((k−1)/2)の変換が行われた直後に、最初の処理プレーンP♯0が生成される。さらに、2D変換部22においてフレームが次々に変換されるに従って、3Dプロセッサ26は、各フレームが変換された直後から処理プレーンP♯1,P♯2,・・・の順に処理プレーンを生成し、ボクセル演算を実行する。   The 3D processor 26 performs a voxel operation based on the frame data subjected to coordinate conversion. However, as described above, in the voxel calculation, it is necessary to acquire all the frame data used for generating the processing plane. Therefore, the voxel calculation by the 3D processor 26 is performed immediately after the frame # ((k−1) / 2) is processed in the 2D conversion unit 22. That is, the first processing plane P # 0 is generated immediately after the frame # ((k−1) / 2) is converted in the 2D conversion unit 22. Further, as the frames are sequentially converted in the 2D conversion unit 22, the 3D processor 26 generates processing planes in the order of processing planes P # 1, P # 2,... Immediately after each frame is converted, Perform voxel operations.

そして、3Dプロセッサ26において処理プレーンP♯(Xmax−1)を利用したボクセル演算が終了した次点で一つのボリューム(ボリューム1)に関するボクセル演算が完了し、その結果、ボリューム1の三次元画像が表示部30に表示される。   Then, the voxel operation relating to one volume (volume 1) is completed at the next point where the voxel operation using the processing plane P # (Xmax-1) is completed in the 3D processor 26. As a result, a three-dimensional image of the volume 1 is obtained. It is displayed on the display unit 30.

図21の(B)に示したように、本変形例によれば、エコーデータの取得開始から三次元画像を表示するまでに、「1.5ボリューム分のデータ取得時間+1フレーム分のデータ取得時間」のディレイのみとなる。このため、従来の3ボリューム分のデータ取得時間分だけディレイが存在していた場合に比べて、本変形例によっても大幅にディレイ時間を短縮することができるのが理解できる。   As shown in FIG. 21B, according to the present modification, from the start of the acquisition of echo data to the display of the three-dimensional image, “data acquisition time for 1.5 volumes + 1 data acquisition for one frame” Only "time" delay. For this reason, it can be understood that the delay time can be significantly shortened by this modification as compared with the case where there is a delay corresponding to the data acquisition time of the conventional three volumes.

以上説明した実施形態(その変形例を含む)によって形成される三次元画像は、低侵襲治療におけるモニタとしての利用が期待できる。例えば、腹腔鏡下手術における手術器具のモニタである。通常、腹腔鏡下手術では小型カメラにより器具のモニタリングを行っているが、手術器具の先端が臓器内に入っている場合や臓器の裏にある場合には、先端の様子を見ることが困難であった。そこで、本実施形態の超音波診断装置を利用して臓器内や臓器裏を表示することによって、手術器具の先端の様子を把握することが可能になる。特に、本実施形態の超音波診断装置は、エコーデータの取得から三次元画像の形成までのディレイが小さいため、器具や臓器の動きを捉えるのに好適である。   The three-dimensional image formed by the embodiment described above (including its modifications) can be expected to be used as a monitor in minimally invasive treatment. For example, a surgical instrument monitor in laparoscopic surgery. Usually, in laparoscopic surgery, the instrument is monitored by a small camera, but it is difficult to see the state of the tip when the tip of the surgical instrument is inside the organ or behind the organ. there were. Therefore, it is possible to grasp the state of the distal end of the surgical instrument by displaying the inside of the organ and the back of the organ using the ultrasonic diagnostic apparatus of the present embodiment. In particular, the ultrasonic diagnostic apparatus according to the present embodiment is suitable for capturing movements of instruments and organs since the delay from acquisition of echo data to formation of a three-dimensional image is small.

以上、本発明の好適な実施形態を説明したが、上述した実施形態は、あらゆる点で単なる例示にすぎず、本発明の範囲を限定するものではない。   As mentioned above, although preferred embodiment of this invention was described, embodiment mentioned above is only a mere illustration in all the points, and does not limit the scope of the present invention.

ボリュームレンダリングの原理を説明するための説明図である。It is explanatory drawing for demonstrating the principle of volume rendering. 本実施形態に係る超音波診断装置の全体構成を示すブロック図である。1 is a block diagram showing an overall configuration of an ultrasonic diagnostic apparatus according to the present embodiment. フレームデータ空間の構造を概念的に示す図である。It is a figure which shows notionally the structure of frame data space. 三次元データ空間とフレームとの対応関係を示す図である。It is a figure which shows the correspondence of a three-dimensional data space and a frame. フレームとレイとの対応関係を示す図である。It is a figure which shows the correspondence of a flame | frame and a ray. ボクセルデータを生成する際の補間処理を説明するための図である。It is a figure for demonstrating the interpolation process at the time of producing | generating voxel data. 単位レイベクトルを説明するための説明図である。It is explanatory drawing for demonstrating a unit ray vector. フレームと各レイごとのボクセル演算との関係を示す図である。It is a figure which shows the relationship between a frame and the voxel calculation for every ray. レイの向きに応じた送受信制御を説明するための図である。It is a figure for demonstrating the transmission / reception control according to the direction of a ray. 段階的にボクセル演算される様子を示した説明図である。It is explanatory drawing which showed a mode that voxel calculation was carried out in steps. 段階的にボクセル演算される様子を示した説明図である。It is explanatory drawing which showed a mode that voxel calculation was carried out in steps. 装置の動作例を示すフローチャートである。It is a flowchart which shows the operation example of an apparatus. 初期化プロセスの具体的な内容を示すフローチャートである。It is a flowchart which shows the specific content of the initialization process. 図12に示すS103のプロセスの具体的な内容を示すフローチャートである。It is a flowchart which shows the specific content of the process of S103 shown in FIG. 図14に示すS310のプロセスの具体的な内容を示すフローチャートである。It is a flowchart which shows the specific content of the process of S310 shown in FIG. エコーデータの取得から三次元画像の表示までの処理タイミングを説明するための図である。It is a figure for demonstrating the processing timing from acquisition of echo data to the display of a three-dimensional image. ボクセルデータを生成する際の補間処理の概念図である。It is a conceptual diagram of the interpolation process at the time of producing | generating voxel data. 補間処理で生成されるボクセルデータ列を説明するための図である。It is a figure for demonstrating the voxel data sequence produced | generated by the interpolation process. 三次元データ空間と各レイごとのボクセル演算との関係を示す図である。It is a figure which shows the relationship between a three-dimensional data space and the voxel calculation for every ray. 段階的にボクセル演算される様子を示した説明図である。It is explanatory drawing which showed a mode that voxel calculation was carried out in steps. 変形例におけるエコーデータの取得から三次元画像の表示までの処理タイミングを説明するための図である。It is a figure for demonstrating the processing timing from acquisition of the echo data in a modification to the display of a three-dimensional image.

符号の説明Explanation of symbols

10 3Dプローブ、12 送受波空間、22 2D変換部、24 フレームメモリ(外部メモリ)、26 3Dプロセッサ、28 内部メモリ、36 三次元データ空間、40 スクリーン。   10 3D probe, 12 transmit / receive space, 22 2D converter, 24 frame memory (external memory), 26 3D processor, 28 internal memory, 36 3D data space, 40 screens.

Claims (13)

三次元空間に超音波を送受波して複数のエコーデータを取得する送受波手段と、
前記複数のエコーデータに基づいて三次元画像を形成する三次元画像形成手段と、
を有し、
前記三次元画像形成手段は、
前記三次元空間に対応するデータ空間内に仮想的に設定された視点からの透視線として複数のレイを設定するレイ設定部と、
前記複数のエコーデータから前記設定された複数のレイ上のボクセルデータを演算して各レイごとにボクセル演算を進行させるボクセル演算部と、
を含み、前記各レイごとに演算終了条件を満たした時点におけるボクセル演算の結果画素値に対応付けて、前記複数のレイから得られる複数の画素値に基づいて前記三次元画像を形成し、
前記送受波手段は、前記視点に近い方から順に複数の走査面を形成し、各走査面ごとに複数のエコーデータからなるフレームデータを得ることにより、複数の走査面に対応した複数のフレームデータを段階的に取得し、
前記ボクセル演算部は、前記段階的に取得される複数のフレームデータに基づいて前記設定された複数のレイ上のボクセルデータを段階的に演算し、各レイごとにボクセル演算を進行させる、
ことを特徴とする超音波診断装置。
A wave transmitting / receiving means for transmitting and receiving ultrasonic waves in a three-dimensional space to obtain a plurality of echo data;
Three-dimensional image forming means for forming a three-dimensional image based on the plurality of echo data;
Have
The three-dimensional image forming means includes:
A ray setting unit for setting a plurality of rays as perspective lines from a viewpoint virtually set in a data space corresponding to the three-dimensional space;
A voxel computing unit that computes voxel data on the plurality of set rays from the plurality of echo data and advances voxel computation for each ray; and
Hints, the association with the pixel value the results of voxel calculation at the time that satisfies the operation end condition for each ray, the three-dimensional image is formed based on a plurality of pixel values obtained from the plurality of rays,
The wave transmitting / receiving means forms a plurality of scanning planes in order from the one closest to the viewpoint, and obtains frame data composed of a plurality of echo data for each scanning plane, thereby obtaining a plurality of frame data corresponding to the plurality of scanning planes. Get step by step,
The voxel computing unit computes the voxel data on the plurality of set rays step by step based on the plurality of frame data acquired stepwise, and advances the voxel computation for each ray,
An ultrasonic diagnostic apparatus.
請求項1に記載の超音波診断装置において、
前記送受波手段は、前記データ空間内における前記視点の位置座標から、前記視点に近い方から順に複数の走査面を形成する走査方向を決定する、
ことを特徴とする超音波診断装置。
The ultrasonic diagnostic apparatus according to claim 1,
The wave transmitting / receiving means determines a scanning direction in which a plurality of scanning planes are formed in order from a position closer to the viewpoint from a position coordinate of the viewpoint in the data space.
An ultrasonic diagnostic apparatus.
請求項1に記載の超音波診断装置において、
前記送受波手段は、前記複数のレイのうちの一つである代表レイについて、前記視点の位置から当該代表レイの向きを判断し、当該代表レイの向きに応じた順序で複数の走査面を形成することにより、前記視点に近い方から順に複数の走査面を形成する、
ことを特徴とする超音波診断装置。
The ultrasonic diagnostic apparatus according to claim 1,
The transmission / reception means determines the direction of the representative ray from the position of the viewpoint for the representative ray that is one of the plurality of rays, and sets the plurality of scanning planes in an order corresponding to the direction of the representative ray. By forming, a plurality of scanning planes are formed in order from the one closer to the viewpoint,
An ultrasonic diagnostic apparatus.
請求項に記載の超音波診断装置において、
前記ボクセル演算部は、前記複数のフレームデータから補間処理によってボクセルデータを算出する、
ことを特徴とする超音波診断装置。
The ultrasonic diagnostic apparatus according to claim 1 ,
The voxel computing unit calculates voxel data by interpolation processing from the plurality of frame data;
An ultrasonic diagnostic apparatus.
請求項に記載の超音波診断装置において、
前記ボクセル演算部は、前記複数の走査面をその位置に応じて前記データ空間内に配置した際に隣接して配置される二枚の走査面に対応したフレームデータから、それら二枚の走査面の間のフレーム間領域に存在するボクセルデータを算出する、
ことを特徴とする超音波診断装置。
The ultrasonic diagnostic apparatus according to claim 4 ,
The voxel computing unit calculates the two scanning planes from the frame data corresponding to the two scanning planes arranged adjacent to each other when the plurality of scanning planes are arranged in the data space according to their positions. Voxel data existing in the interframe area between
An ultrasonic diagnostic apparatus.
請求項に記載の超音波診断装置において、
前記ボクセル演算部は、前記二枚の走査面に対応したフレームデータに含まれるエコーデータであってボクセル座標の近傍に存在するエコーデータから、そのボクセル座標に対応するボクセルデータを算出する、
ことを特徴とする超音波診断装置。
The ultrasonic diagnostic apparatus according to claim 5 ,
The voxel computing unit calculates voxel data corresponding to the voxel coordinates from echo data included in frame data corresponding to the two scanning planes and existing in the vicinity of the voxel coordinates.
An ultrasonic diagnostic apparatus.
請求項に記載の超音波診断装置において、
前記三次元画像形成手段は、
前記各レイごとに、それが前記データ空間に対して最初に通過する点として、前記データ空間における第1軸上の初期座標、第2軸上の初期座標及び第3軸上の初期座標を演算する初期座標演算部と、
前記第1軸の刻み成分、前記第2軸の刻み成分及び前記第3軸の刻み成分を演算する刻み成分演算部と、
前記各レイごとに、前記第1軸上の初期座標、前記第2軸上の初期座標及び前記第3軸上の初期座標に対して、それぞれ前記第1軸上の刻み成分、前記第2軸上の刻み成分及び前記第3軸上の刻み成分を累積的に加算することにより、前記各レイ上におけるボクセル演算対象座標を特定する対象座標特定部と、
前記視点に近い方から順に複数のフレームデータが段階的に取得されることに伴って段階的に移動する前記フレーム間領域の各移動位置ごとに、フレーム間領域内において前記ボクセル演算対象座標に該当するボクセルデータを前記補間処理により生成する補間処理部と、
を含むことを特徴とする超音波診断装置。
The ultrasonic diagnostic apparatus according to claim 6 ,
The three-dimensional image forming means includes:
For each ray, the initial coordinate on the first axis, the initial coordinate on the second axis, and the initial coordinate on the third axis in the data space are calculated as the first points that pass through the data space. An initial coordinate calculation unit,
A step component computing unit that computes the step component of the first axis, the step component of the second axis, and the step component of the third axis;
For each of the rays, with respect to the initial coordinates on the first axis, the initial coordinates on the second axis, and the initial coordinates on the third axis, the step component on the first axis and the second axis, respectively. A target coordinate specifying unit for specifying the voxel calculation target coordinates on each ray by cumulatively adding the step component on the upper axis and the step component on the third axis;
Corresponding to the voxel calculation target coordinates in the inter-frame region for each movement position of the inter-frame region that moves step by step as a plurality of frame data is acquired step by step from the closest to the viewpoint An interpolation processing unit for generating voxel data to be generated by the interpolation processing;
An ultrasonic diagnostic apparatus comprising:
三次元空間に超音波を送受波して複数のエコーデータを取得する送受波手段と、
前記複数のエコーデータに基づいて三次元画像を形成する三次元画像形成手段と、
を有し、
前記三次元画像形成手段は、
前記三次元空間に対応するデータ空間内に仮想的に設定された視点からの透視線として複数のレイを設定するレイ設定部と、
前記複数のエコーデータから前記設定された複数のレイ上のボクセルデータを演算して各レイごとにボクセル演算を進行させるボクセル演算部と、
を含み、前記各レイごとに演算終了条件を満たした時点におけるボクセル演算の結果を画素値に対応付けて、前記複数のレイから得られる複数の画素値に基づいて前記三次元画像を形成し、
前記送受波手段は、前記視点に近い方から順に複数の走査面を形成し、各走査面ごとに複数のエコーデータからなるフレームデータを得ることにより、複数の走査面に対応した複数のフレームデータを段階的に取得し、
前記三次元画像形成手段は、前記データ空間内に処理プレーンを設定し、前記複数のフレームデータの段階的な取得に従って、前記視点に近い方から順に処理プレーンを段階的に移動させる処理プレーン設定部をさらに含み、
前記ボクセル演算部は、段階的に移動する処理プレーンの各移動位置ごとに、前記複数のフレームデータから処理プレーン上のボクセルデータを演算し、処理プレーンの移動に従って各レイごとにボクセル演算を進行させる、
ことを特徴とする超音波診断装置。
A wave transmitting / receiving means for transmitting and receiving ultrasonic waves in a three-dimensional space to obtain a plurality of echo data;
Three-dimensional image forming means for forming a three-dimensional image based on the plurality of echo data;
Have
The three-dimensional image forming means includes:
A ray setting unit for setting a plurality of rays as perspective lines from a viewpoint virtually set in a data space corresponding to the three-dimensional space;
A voxel computing unit that computes voxel data on the plurality of set rays from the plurality of echo data and advances voxel computation for each ray; and
And associating the result of the voxel calculation at the time when the calculation end condition is satisfied for each ray with a pixel value, and forming the three-dimensional image based on a plurality of pixel values obtained from the plurality of rays,
The wave transmitting / receiving means forms a plurality of scanning planes in order from the one closest to the viewpoint, and obtains frame data composed of a plurality of echo data for each scanning plane, thereby obtaining a plurality of frame data corresponding to the plurality of scanning planes. Get step by step,
The three-dimensional image forming unit sets a processing plane in the data space, and moves the processing plane in stages from the viewpoint closer to the viewpoint according to the stepwise acquisition of the plurality of frame data. Further including
The voxel calculation unit calculates voxel data on the processing plane from the plurality of frame data for each movement position of the processing plane that moves in stages, and advances the voxel calculation for each ray according to the movement of the processing plane. ,
An ultrasonic diagnostic apparatus.
請求項に記載の超音波診断装置において、
前記処理プレーンは、前記データ空間の所定軸に直交する平面である、
ことを特徴とする超音波診断装置。
The ultrasonic diagnostic apparatus according to claim 8 ,
The processing plane is a plane orthogonal to a predetermined axis of the data space.
An ultrasonic diagnostic apparatus.
請求項記載の超音波診断装置において、
前記ボクセル演算部は、前記複数のフレームデータから補間処理によってボクセルデータを算出する、
ことを特徴とする超音波診断装置。
The ultrasonic diagnostic apparatus according to claim 9 .
The voxel computing unit calculates voxel data by interpolation processing from the plurality of frame data;
An ultrasonic diagnostic apparatus.
請求項10に記載の超音波診断装置において、
前記ボクセル演算部は、前記複数の走査面をその位置に応じて前記データ空間内に配置した際に、複数の走査面に対応した複数のフレームデータのうち、前記データ空間の座標であるボクセル座標の近傍に配置される複数のフレームデータから、そのボクセル座標に対応するボクセルデータを算出する、
ことを特徴とする超音波診断装置。
The ultrasonic diagnostic apparatus according to claim 10 ,
The voxel computing unit, when arranging the plurality of scanning planes in the data space according to their positions, out of a plurality of frame data corresponding to the plurality of scanning planes, voxel coordinates that are coordinates of the data space Voxel data corresponding to the voxel coordinates is calculated from a plurality of frame data arranged in the vicinity of
An ultrasonic diagnostic apparatus.
請求項11に記載の超音波診断装置において、
前記ボクセル演算部は、前記複数のフレームデータに含まれるエコーデータであってボクセル座標の近傍に存在するエコーデータから、そのボクセル座標に対応するボクセルデータを算出する、
ことを特徴とする超音波診断装置。
The ultrasonic diagnostic apparatus according to claim 11 ,
The voxel computing unit calculates the voxel data corresponding to the voxel coordinates from the echo data included in the plurality of frame data and existing in the vicinity of the voxel coordinates.
An ultrasonic diagnostic apparatus.
請求項12に記載の超音波診断装置において、
前記三次元画像形成手段は、
前記各レイごとに、それが前記データ空間に対して最初に通過する点として、前記データ空間における第1軸上の初期座標、第2軸上の初期座標及び第3軸上の初期座標を演算する初期座標演算部と、
前記第1軸の刻み成分、前記第2軸の刻み成分及び前記第3軸の刻み成分を演算する刻み成分演算部と、
前記各レイごとに、前記第1軸上の初期座標、前記第2軸上の初期座標及び前記第3軸上の初期座標に対して、それぞれ前記第1軸上の刻み成分、前記第2軸上の刻み成分及び前記第3軸上の刻み成分を累積的に加算することにより、前記各レイ上におけるボクセル演算対象座標を特定する対象座標特定部と、
前記視点に近い方から順に段階的に移動する処理プレーン上において前記ボクセル演算対象座標に該当するボクセルデータを前記補間処理により生成する補間処理部と、
を含むことを特徴とする超音波診断装置。
The ultrasonic diagnostic apparatus according to claim 12 ,
The three-dimensional image forming means includes:
For each ray, the initial coordinates on the first axis, the initial coordinates on the second axis, and the initial coordinates on the third axis in the data space are calculated as the first points that pass through the data space. An initial coordinate calculation unit,
A step component computing unit that computes the step component of the first axis, the step component of the second axis, and the step component of the third axis;
For each ray, for each initial coordinate on the first axis, initial coordinate on the second axis, and initial coordinate on the third axis, the step component on the first axis and the second axis, respectively. A target coordinate specifying unit for specifying the voxel calculation target coordinates on each ray by cumulatively adding the step component on the upper axis and the step component on the third axis;
An interpolation processing unit that generates voxel data corresponding to the voxel calculation target coordinates by the interpolation processing on a processing plane that moves step by step in order from the closest to the viewpoint;
An ultrasonic diagnostic apparatus comprising:
JP2005093653A 2005-03-29 2005-03-29 Ultrasonic diagnostic equipment Expired - Fee Related JP4653536B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2005093653A JP4653536B2 (en) 2005-03-29 2005-03-29 Ultrasonic diagnostic equipment

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2005093653A JP4653536B2 (en) 2005-03-29 2005-03-29 Ultrasonic diagnostic equipment

Publications (2)

Publication Number Publication Date
JP2006271594A JP2006271594A (en) 2006-10-12
JP4653536B2 true JP4653536B2 (en) 2011-03-16

Family

ID=37206918

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2005093653A Expired - Fee Related JP4653536B2 (en) 2005-03-29 2005-03-29 Ultrasonic diagnostic equipment

Country Status (1)

Country Link
JP (1) JP4653536B2 (en)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5632680B2 (en) 2010-08-25 2014-11-26 日立アロカメディカル株式会社 Ultrasonic image processing device
JP5890311B2 (en) * 2010-08-31 2016-03-22 株式会社日立メディコ Three-dimensional elastic image generation method and ultrasonic diagnostic apparatus

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2883584B2 (en) * 1995-07-17 1999-04-19 アロカ株式会社 Ultrasonic image processing apparatus and method
JP2000333947A (en) * 1999-05-25 2000-12-05 Aloka Co Ltd Ultrasonograph
JP2001079003A (en) * 1999-09-14 2001-03-27 Aloka Co Ltd Ultrasonograph
JP2002238890A (en) * 2001-02-13 2002-08-27 Matsushita Electric Ind Co Ltd Ultrasonic diagnostic apparatus
JP2003019132A (en) * 2001-07-10 2003-01-21 Aloka Co Ltd Ultrasonograph
JP2003290222A (en) * 2002-03-29 2003-10-14 Fuji Photo Film Co Ltd Ultrasonic image pickup apparatus and ultrasonic image pickup method

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3373268B2 (en) * 1993-12-10 2003-02-04 ジーイー横河メディカルシステム株式会社 Ultrasound diagnostic equipment
JP3422927B2 (en) * 1998-05-06 2003-07-07 アロカ株式会社 3D image processing device

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2883584B2 (en) * 1995-07-17 1999-04-19 アロカ株式会社 Ultrasonic image processing apparatus and method
JP2000333947A (en) * 1999-05-25 2000-12-05 Aloka Co Ltd Ultrasonograph
JP2001079003A (en) * 1999-09-14 2001-03-27 Aloka Co Ltd Ultrasonograph
JP2002238890A (en) * 2001-02-13 2002-08-27 Matsushita Electric Ind Co Ltd Ultrasonic diagnostic apparatus
JP2003019132A (en) * 2001-07-10 2003-01-21 Aloka Co Ltd Ultrasonograph
JP2003290222A (en) * 2002-03-29 2003-10-14 Fuji Photo Film Co Ltd Ultrasonic image pickup apparatus and ultrasonic image pickup method

Also Published As

Publication number Publication date
JP2006271594A (en) 2006-10-12

Similar Documents

Publication Publication Date Title
JP5632680B2 (en) Ultrasonic image processing device
US8333701B2 (en) Ultrasound diagnosis apparatus
JP5462598B2 (en) Ultrasound diagnostic system
KR101100464B1 (en) Ultrasound system and method for providing three-dimensional ultrasound image based on sub region of interest
JP4922006B2 (en) Ultrasonic diagnostic apparatus and data processing method
WO2016132956A1 (en) Ultrasound diagnostic device
JP2003325514A (en) Ultrasonic diagnostic apparatus
JP4653536B2 (en) Ultrasonic diagnostic equipment
JP4139318B2 (en) Ultrasonic diagnostic apparatus and volume data processing method
JP4299187B2 (en) Ultrasonic diagnostic apparatus and echo data processing method
JP6890677B2 (en) A virtual light source embedded in a 3D volume and coupled to the crosshairs in the MPR diagram
JP2008067915A (en) Medical picture display
JP4220934B2 (en) Ultrasonic diagnostic apparatus and echo data processing method
JP5576041B2 (en) Ultrasonic diagnostic equipment
JP3422927B2 (en) 3D image processing device
JP4909137B2 (en) Volume data processing apparatus and method
JP2003325512A (en) Ultrasonic diagnostic apparatus
JP4829044B2 (en) Ultrasonic diagnostic equipment
JP2007275150A (en) Ultrasonic diagnosing system
JP4616711B2 (en) Ultrasonic diagnostic equipment
JP2002238890A (en) Ultrasonic diagnostic apparatus
JP4763378B2 (en) Ultrasonic diagnostic equipment
JP6793075B2 (en) Ultrasonic image processing equipment
JP2013013650A (en) Ultrasonic image processor
JP2012120692A (en) Ultrasonic image processor

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20080109

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20100713

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20100909

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20100928

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20101124

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20101214

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20101217

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20131224

Year of fee payment: 3

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees