特許第6782669号(P6782669)IP Force 特許公報掲載プロジェクト 2022.1.31 β版

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

▶ 株式会社日立製作所の特許一覧

<>
  • 特許6782669-X線CT装置 図000002
  • 特許6782669-X線CT装置 図000003
  • 特許6782669-X線CT装置 図000004
  • 特許6782669-X線CT装置 図000005
  • 特許6782669-X線CT装置 図000006
  • 特許6782669-X線CT装置 図000007
  • 特許6782669-X線CT装置 図000008
  • 特許6782669-X線CT装置 図000009
  • 特許6782669-X線CT装置 図000010
  • 特許6782669-X線CT装置 図000011
  • 特許6782669-X線CT装置 図000012
  • 特許6782669-X線CT装置 図000013
  • 特許6782669-X線CT装置 図000014
  • 特許6782669-X線CT装置 図000015
  • 特許6782669-X線CT装置 図000016
  • 特許6782669-X線CT装置 図000017
  • 特許6782669-X線CT装置 図000018
  • 特許6782669-X線CT装置 図000019
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】6782669
(24)【登録日】2020年10月22日
(45)【発行日】2020年11月11日
(54)【発明の名称】X線CT装置
(51)【国際特許分類】
   A61B 6/03 20060101AFI20201102BHJP
【FI】
   A61B6/03 350P
   A61B6/03 370B
   A61B6/03 330A
【請求項の数】14
【全頁数】19
(21)【出願番号】特願2017-121258(P2017-121258)
(22)【出願日】2017年6月21日
(65)【公開番号】特開2019-4980(P2019-4980A)
(43)【公開日】2019年1月17日
【審査請求日】2020年1月10日
(73)【特許権者】
【識別番号】000005108
【氏名又は名称】株式会社日立製作所
(74)【代理人】
【識別番号】110000350
【氏名又は名称】ポレール特許業務法人
(72)【発明者】
【氏名】鈴木 剛志
(72)【発明者】
【氏名】小原 亮太
【審査官】 相川 俊
(56)【参考文献】
【文献】 国際公開第2005/072613(WO,A1)
【文献】 国際公開第2005/122901(WO,A1)
【文献】 特開2009−101086(JP,A)
【文献】 国際公開第2015/194545(WO,A1)
(58)【調査した分野】(Int.Cl.,DB名)
A61B 6/00 − 6/14
(57)【特許請求の範囲】
【請求項1】
X線管球と、
前記X線管球に対向配置され、前記X線管球から発生され、被検体を透過したX線を検出するX線検出器と、
前記X線検出器で検出した透過X線の空間分布より生成される投影データを格納するメインメモリと、
前記メインメモリから投影データがあらかじめ転送されるキャッシュメモリと、
逆投影処理に使用する投影データが前記キャッシュメモリに転送されている場合には、前記キャッシュメモリに記憶されている投影データを用いて逆投影処理を行い、前記被検体の断層像データを生成するプロセッサとを有し、
第1断層像データは、前記X線検出器からの連続したビューからなる原投影データに対して、画像位置に基いて第1の複数のセグメントが設定され、前記第1の複数のセグメントごとに設定された第1ビュー重みにしたがって前記第1の複数のセグメントの投影データを逆投影することにより生成されるものであって、
前記プロセッサは、前記原投影データから前記第1の複数のセグメントを抽出した再編成投影データを生成して前記メインメモリに格納し、前記第1ビュー重みを前記再編成投影データに対応させた第2ビュー重みを生成し、
前記キャッシュメモリには前記メインメモリに格納された前記再編成投影データがあらかじめ転送され、
前記プロセッサは前記再編成投影データ及び前記第2ビュー重みを用いて前記第1断層像データを生成するX線CT装置。
【請求項2】
請求項1において、
前記原投影データは、前記被検体の周りを前記X線管球及び前記X線検出器がらせん軌道状に周回しながら撮影を行って得られるX線CT装置。
【請求項3】
請求項2において、
前記被検体から取得した生体信号に基づき、前記第1の複数のセグメントを設定するX線CT装置。
【請求項4】
請求項3において、
前記生体信号は心電波形であり、前記心電波形から求められる心拍時相に基づき前記第1の複数のセグメントを設定するX線CT装置。
【請求項5】
X線管球と、
前記X線管球に対向配置され、前記X線管球から発生され、被検体を透過したX線を検出するX線検出器と、
前記X線検出器で検出した透過X線の空間分布より生成される投影データを格納するメインメモリと、
前記メインメモリから投影データがあらかじめ転送されるキャッシュメモリと、
逆投影処理に使用する投影データが前記キャッシュメモリに転送されている場合には、前記キャッシュメモリに記憶されている投影データを用いて逆投影処理を行い、前記被検体の断層像データを生成するプロセッサとを有し、
第1断層像データは、前記X線検出器からの連続したビューからなる原投影データに対して、画像位置に基いて第1の複数のセグメントが設定され、前記第1の複数のセグメントごとに設定された第1ビュー重みにしたがって前記第1の複数のセグメントの投影データを逆投影することにより生成されるものであって、
第2断層像データは、前記原投影データに対して、画像位置に基づいて第2の複数のセグメントが設定され、前記第2の複数のセグメントごとに設定された第2ビュー重みにしたがって前記第2の複数のセグメントの投影データを逆投影することにより生成されるものであって、
前記プロセッサは、前記原投影データから前記第1の複数のセグメント及び前記第2の複数のセグメントを重ね合わせて抽出した再編成投影データを生成して前記メインメモリに格納し、前記第1ビュー重みを前記再編成投影データに対応させた第3ビュー重みを生成し、前記第2ビュー重みを前記再編成投影データに対応させた第4ビュー重みを生成し、
前記キャッシュメモリには前記メインメモリに格納された前記再編成投影データがあらかじめ転送され、
前記プロセッサは、前記再編成投影データ及び前記第3ビュー重みを用いて前記第1断層像データを生成し、前記再編成投影データ及び前記第4ビュー重みを用いて前記第2断層像データを生成するX線CT装置。
【請求項6】
請求項5において、
前記原投影データは、前記被検体の周りを前記X線管球及び前記X線検出器がらせん軌道状に周回しながら撮影を行って得られるX線CT装置。
【請求項7】
請求項6において、
前記被検体から取得した生体信号に基づき、前記第1の複数のセグメント及び前記第2の複数のセグメントを設定するX線CT装置。
【請求項8】
請求項7において、
前記生体信号は心電波形であり、前記心電波形から求められる心拍時相に基づき前記第1の複数のセグメント及び前記第2の複数のセグメントを設定するX線CT装置。
【請求項9】
請求項7において、
前記第1断層像データの画像位置と前記第2断層像データの画像位置とは互いに異なるX線CT装置。
【請求項10】
請求項7において、
前記第1断層像データの画像位置と前記第2断層像データの画像位置とは同じ位置であり、前記生体信号に対して異なったタイミングにより前記第1の複数のセグメントと前記第2の複数のセグメントとが設定されるX線CT装置。
【請求項11】
請求項10において、
前記生体信号は心電波形であり、前記心電波形から求められる第1の心拍時相に基づき前記第1の複数のセグメントが設定され、前記心電波形から求められる第2の心拍時相に基づき前記第2の複数のセグメントが設定されるX線CT装置。
【請求項12】
請求項5において、
前記プロセッサは前記再編成投影データに含まれる各ビューが逆投影対象となる断層像の枚数に応じてビュー範囲を区分し、
前記ビュー範囲に応じて、前記メインメモリから前記キャッシュメモリに転送する前記再編成投影データの量を異ならせるX線CT装置。
【請求項13】
請求項12において、
前記キャッシュメモリに転送される前記再編成投影データの量は、逆投影処理に割り当てられた前記キャッシュメモリの容量から、前記ビュー範囲における断層像の枚数に応じた断層像データの量を除いて定められるX線CT装置。
【請求項14】
請求項12において、
前記プロセッサはマルチコアプロセッサであり、
前記断層像をブロック分割してマルチコアのそれぞれに割り当て、
前記断層像をブロック分割する数は、前記マルチコアの数よりも多いX線CT装置。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、X線CT(Computed Tomography)装置に関し、特にX線透過データから断層像を再構成する画像処理技術に関する。
【背景技術】
【0002】
心臓のような一定周期の動きを伴う部位に対して、部位の動きを考慮せずに断層像を作成するとモーションアーチファクトを含んだ断層像となる。
【0003】
特許文献1には、らせんスキャンを行うことで得られる連続した投影データ及び心電波形を入力とし、心臓の拡張期間となるR波間の投影データで断層像を再構成できるように心電波形をテーブル位置に変換し、心電波形を変換したテーブル位置と連続した投影データとを用いて再構成することにより心臓の拡張期の断層像を得ることが開示されている。
【先行技術文献】
【特許文献】
【0004】
【特許文献1】特開2003−79613号公報
【発明の概要】
【発明が解決しようとする課題】
【0005】
しかしながら、特許文献1に開示される方法においては、連続した投影データの中には逆投影に使用されないデータも含まれていることになり、使用しない投影データをメインメモリからキャッシュメモリに持ってきた場合、逆投影に使用しない投影データによって逆投影に使用するデータがキャッシュメモリから追い出されることになり、キャッシュヒット率の低下、ひいては画像処理の遅延につながる。
【0006】
本発明は、投影データを逆投影するときのキャッシュヒット率を向上させることができるX線CT装置を提供することを目的とする。
【課題を解決するための手段】
【0007】
X線管球と、X線管球に対向配置され、X線管球から発生され、被検体を透過したX線を検出するX線検出器と、X線検出器で検出した透過X線の空間分布より生成される投影データを格納するメインメモリと、メインメモリから投影データがあらかじめ転送されるキャッシュメモリと、逆投影処理に使用する投影データがキャッシュメモリに転送されている場合には、キャッシュメモリに記憶されている投影データを用いて逆投影処理を行い、被検体の断層像データを生成するプロセッサとを有するX線CT装置において、X線検出器からの連続したビューからなる原投影データに対して、画像位置に基いて第1の複数のセグメントが設定され、第1の複数のセグメントごとに設定された第1ビュー重みにしたがって第1の複数のセグメントの投影データを逆投影することにより生成される第1断層像データを生成する場合、プロセッサは、原投影データから第1の複数のセグメントを抽出した再編成投影データを生成してメインメモリに格納し、第1ビュー重みを再編成投影データに対応させた第2ビュー重みを生成し、キャッシュメモリにはメインメモリに格納された再編成投影データがあらかじめ転送され、プロセッサは再編成投影データ及び第2ビュー重みを用いて第1断層像データを生成する。
【発明の効果】
【0008】
本発明によれば、投影データを逆投影するときのキャッシュヒット率を向上させることができるX線CT装置を提供することができる。
【図面の簡単な説明】
【0009】
図1】X線CT装置の外観を示す図である。
図2】X線CT装置のブロック図である。
図3】画像作成部の処理の詳細を説明する図である。
図4】実施例1のフローチャートである。
図5】ビュー重み生成部の処理の詳細を説明する図である。
図6】投影データ取捨領域算出部の処理の詳細を説明する図である。
図7】投影データ取捨選択部の処理の詳細を説明する図である。
図8】再編成投影データビュー重み生成部の処理の詳細を説明する図である。
図9】実施例2のフローチャートである。
図10】キャッシュメモリに置くビュー数の求め方を説明する図である。
図11】プロセッサ、キャッシュメモリとメインメモリとの関係を示す図である。
図12】第1の画像位置での断層像を逆投影するためのビュー重みを示す図である。
図13】第2の画像位置での断層像を逆投影するためのビュー重みを示す図である。
図14】第3の画像位置での断層像を逆投影するためのビュー重みを示す図である。
図15】第1〜第3の画像位置での断層像の再構成に必要なビュー範囲の求め方を説明する図である。
図16】投影データの再編成を説明する図である。
図17】再編成された投影データにおけるビュー重みを示す図である。
図18】セグメント再構成を説明する図である。
【発明を実施するための形態】
【0010】
以下、添付図を用いて本発明の実施例に係るX線CT装置を説明する。図1にX線CT装置の外観を示し、図2にX線CT装置のブロック図を示す。X線CT装置は、寝台102上の被検体に対してX線撮像を行うスキャナ101、スキャナ101によるX線撮像を制御する操作卓103を備える。
【0011】
図2に示すように、スキャナ101は、X線管球107と、寝台102と、X線検出器108と、X線制御部110と、ガントリ制御部111と、寝台制御部112と、検出器制御部113とを備えている。X線管球107は、寝台102上に載置された被検体106にX線を照射する装置である。寝台102は被検体106を載置する装置である。X線検出器108は、被検体106が位置するスキャナ101の中央部を挟んでX線管球107と対向配置され、撮像時に被検体106を透過したX線を検出することにより透過X線の空間的な分布を計測する装置である。X線検出器108には、多数のX線検出素子が2次元に配列されている。
【0012】
X線制御部110は、X線管球107に入力される電流及び電圧を制御する装置である。ガントリ制御部111は、Z軸方向を周回転軸としてX線管球107及びX線検出器108の周回転動作の制御を行う装置である。寝台制御部112は、寝台102の上下・前後・左右の移動を制御する装置である。検出器制御部113は、X線検出器108を制御する装置である。X線CT装置では、一般的に周回方向に1周あたり約1000回の撮影が行われ、1回あたりの撮影を「1ビュー」という単位で呼ぶ。X線発生中に寝台102が固定され、X線管球107及びX線検出器108が被検体106の周りを円軌道状に周回しながら撮影を行う撮影態様をアキシャルスキャン、ノーマルスキャン、コンベンショナルスキャン等と呼ぶ。一方、X線発生中に寝台102が周回転軸(Z軸)方向に連続的に移動し、X線管球107及びX線検出器108が被検体106の周りをらせん軌道状に周回しながら撮影を行う撮影態様を、らせんスキャン、ヘリカルスキャン、スパイラルスキャン等(以後、「らせんスキャン」と表記する)と呼ぶ。また、X線CT装置により被検体106の心臓の断層像を作成する場合には、心電波形取得装置109が設けられ、被検体106の生体信号として心電波形を取得し、後述する画像作成部115に心電波形を送信している。
【0013】
操作卓103は、システム制御部114と、画像作成部115と、画像表示部116と、操作部117を備える。システム制御部114は、操作部117からの入力を受けてX線CT装置全体を制御する。具体的には、操作部117により設定された撮影条件にしたがって、X線制御部110、ガントリ制御部111、寝台制御部112、検出器制御部113を制御し、操作部117により設定された画像再構成条件にしたがって、画像作成部115を制御する。画像作成部115は、検出器制御部113によりX線検出器108から送り出された投影データを用いて画像再構成処理を施し、画像を作成する。
【0014】
画像表示部116は、再構成条件の設定画面や画像を表示するディスプレイ104を備えている。また、操作部117は、被検体氏名、検査日時などを入力するキーボード105Aや、ディスプレイ104上に映るマウスポインターの位置を指示するマウス105B等を備えている。
【0015】
心臓は一定の周期で収縮/拡張運動を繰り返すため、収縮/拡張運動によるモーションアーチファクトの発生を抑制する必要がある。このための心臓の断層像を作成するための撮影方法として、レトロスペクティブスキャンとプロスペクティブスキャンの2種類が挙げられる。プロスペクティブスキャンでは、心電波形取得装置109からの心電波形と同期してアキシャルスキャンを実施する。心電波形を監視し、特定時相(例えばR波)を検出してから指定した遅延時間後にX線を照射してアキシャルスキャンを行う。心臓の動きが小さい時相のみを狙ってX線を照射するため、無効被ばくは少ないが、心拍変動や高心拍に対しては撮影が困難になる。これに対して、レトロスペクティブスキャンは、らせんスキャンを実施しながら、被検体106の心電波形を取得する。投影データ及び心電波形の取得後、心電波形情報を用いて心臓の動きが小さい時相(収縮期/拡張期)の投影データを抽出し、抽出された投影データのみを用いて画像再構成を行う。再構成の際には心臓の動きが小さい心拍時相での投影データのみを使用することにより、心臓の動きに起因するモーションアーチファクトを抑えた断層像を作成することができる。
【0016】
レトロスペクティブスキャンによる心臓画像再構成にはセグメント再構成を用いる。セグメント再構成では、複数の心拍中から同一時相の投影データを用いて再構成を行う。心拍が遅い(心臓の動きが遅い)場合は、1心拍内の投影データのみで再構成可能であるが、心拍が速い(心臓の動きが速い)場合、1心拍内の投影データのみではモーションアーチファクトが出るため、複数心拍の投影データから同一時相のみを集めて再構成する。図18を用いてセグメント再構成について説明する。画像位置701, 702はそれぞれ投影データから被検体106の心臓の断層像を作成する画像位置である。画像位置701, 702を中心とする近傍として定義される使用セグメント範囲から取得された投影データを用いて断層像を再構成する。図18の(a)に画像位置702の断層像を形成するためには螺旋703, 704がその使用セグメント範囲に含まれる例を、(b)に画像位置701の断層像を形成するためには螺旋703, 704, 705がその使用セグメント範囲に含まれる例を示す。そのため、画像位置702では2心拍分のセグメント711, 712(セグメント数2)の投影データから断層像を作成し、画像位置701では3心拍分のセグメント713, 714, 715(セグメント数3)の投影データから断層像を作成する。なお、断層像を作成するためには複数セグメントの投影データの合計ビュー数は半周分以上でなければならないので、セグメント数2で断層像を形成する場合とセグメント数3で断層像を形成する場合とでは、セグメントの大きさ(例えば、セグメント711の大きさとセグメント713の大きさ)は異なるものになる。また、画像再構成にはビューごとに重み付けをして逆投影を行うため、セグメントの各ビューに対する重み付けの形状を「ビュー重み」と呼ぶ。
【0017】
図3に画像作成部115における処理の詳細を示す。スキャナ101のX線管球107から被検体106に向けてX線を照射し、X線検出器108が被検体106を透過したX線を検出し、透過データとして透過データ入力部201に送る。透過データ入力部201は、取得した透過データを透過データ保存用メモリ202に書き込む。一方、心電波形取得装置109は、被検体106の心電波形を心電波形データ入力部206に送る。心電波形データ入力部206は、受け取った心電波形データを心電波形データ保存用メモリ207に書き込む。
【0018】
前処理部204は、透過データ保存用メモリ202から透過データを読み込み、前処理を施して投影データ(原投影データ)を作成し、原投影データ保存用メモリ205に書き込む。ここで前処理とは、CT値精度、画質向上のため、生データである透過データに対して各種補正等の処理を行うものである。
【0019】
ビュー重み生成部208は、心電波形データ保存用メモリ207から心電波形を読み込み、その心電波形を参考にして、特定の心拍時相の投影データを用いて逆投影するためのビュー重みを全画像分生成する。
【0020】
投影データ取捨領域算出部209は、ビュー重み生成部208が生成した全画像分のビュー重みを参考にして、全画像を逆投影するために必要な投影データ取捨領域を算出する。投影データ取捨選択部210は、投影データ取捨領域算出部209が算出した投影データ取捨領域を用いて、原投影データ保存用メモリ205から逆投影に必要な投影データのみを読み込み、再編成した後に再編成投影データ保存用メモリ212に書き込む。再編成投影データビュー重み生成部211は、投影データ取捨選択部210が再編成した投影データ(再編成投影データ)に合わせて全画像のビュー重みを作り直す。
【0021】
逆投影処理部214は、投影データ取捨選択部210が再編成し、再編成投影データ保存用メモリ212に書き込まれた投影データ(再編成投影データ)と、再編成投影データビュー重み生成部211が作成したビュー重みを用いて断層像を作成し、画像保存用メモリ215に書き込む。この断層像作成作業において、再編成投影データ保存用メモリ212(メインメモリ)から読み出した投影データを一時的にキャッシュメモリ213に記憶することで、メモリ212へのアクセス回数を低減させている。
【0022】
画像表示部116は画像保存用メモリ215から断層像を読み取り、ディスプレイ104に表示する。また、ディスプレイ104には画像再構成に関するパラメータが表示され、操作部117を介してパラメータの変更が可能である。
【実施例1】
【0023】
以下に、実施例1を説明する。図3で説明した前処理部204、ビュー重み生成部208、投影データ取捨領域算出部209、投影データ取捨選択部210、再編成投影データビュー重み生成部211、逆投影処理部214といった各機能ブロックは、一般的な計算機ハードウェアにより実現されるものであり、計算機のプロセッサが各機能ブロックに相当するプログラムを実行することによって実現されるものである。一般的に、プロセッサは演算を実行する際、メインメモリから必要なデータを読み出し、演算した後に演算結果を再度メインメモリに書き込む。ところで、ここ近年のプロセッサの高速化により、プロセッサとメインメモリとの間の転送速度がプロセッサの処理速度に追いつかず、プロセッサがメインメモリからのデータ待ち状態に陥ることになる。このような待ち状態が生じるのを防止するため、プロセッサとメインメモリとの間にキャッシュメモリが設けられる。すなわち、プロセッサが必要とするデータをあらかじめメインメモリからキャッシュメモリに転送しておくことにより、メインメモリへのアクセスがプロセッサの処理遅延につながらないようにすることができる。キャッシュメモリの容量は小さいが高速アクセスが可能であり、具体的には、プロセッサの演算実行サイクルと並行して、キャッシュラインサイズの整数倍のサイズで連続したデータがメインメモリからキャッシュメモリに転送される。次の演算実行サイクルで使用するデータがキャッシュメモリに転送されている場合には、プロセッサは高速なキャッシュメモリからデータを読み込むことにより、データ待ちが発生しない。
【0024】
しかし、演算に必要なデータがキャッシュメモリ上に無ければ、プロセッサは必要なデータをメインメモリから読み込むことになり(これを、キャッシュミスという)、データ待ちが発生する。よって、必要なデータがキャッシュメモリに存在している確率(キャッシュヒット率という)を高めることが処理の高速化の観点から重要である。キャッシュヒット率を上げるため、実施例1での各機能ブロックでの処理を図4のフローチャートを用いて説明する。
【0025】
(ステップS101)
透過データ入力部201は、X線検出器108から送られてきた透過データを透過データ保存用メモリ202に書き込む。心電波形データ入力部206は、心電波形取得装置109から送られてきた心電波形データを心電波形データ保存用メモリ207に書き込む。
【0026】
(ステップS102)
前処理部204は、透過データ保存用メモリ202から透過データを読み出し、前処理を施して投影データ(原投影データ)を作成し、原投影データ保存用メモリ205に投影データを書き込む。
【0027】
(ステップS103)
撮影が終了したか判断する。終了していない場合はステップS101に戻る。撮影終了の場合はステップS104に進む。
【0028】
(ステップS104)
ビュー重み生成部208は、心電波形データを用いて全画像のビュー重みを生成する。図5を用いて、ビュー重み生成部208の処理の詳細を説明する。
【0029】
図5の各横軸はビューを表している。心電波形データ保存用メモリ207から心電波形を読み込み、心電波形の中からR波301の位置を調べる(a)。R波の位置から特定時相分ずらしてセグメント位置302を決める(b)。例えば、相対的に特定時相をずらす場合、隣り合うR波−R波間を0−100%とし、0から100%の間で特定時相を設定する。心電波形には心臓における収縮/拡張の状況が表れているため、心臓の動きが小さい時相を心電波形に基づき設定するものである。図5の例では心臓の動きが小さい時相をR波−R波間の75%の位置として、セグメント位置を設定している。
【0030】
図5ではZ方向に互いにずれた画像位置304, 309, 313について断層像を作成する例を示している。断層像を作成する画像位置を中心として定義される使用セグメント範囲の中に存在するセグメント位置に合わせてセグメントを設定し、各セグメントに含まれる投影データのそれぞれに対してビュー重みを設定する。画像位置304の断層像の場合(c)、画像位置304を中心とした使用セグメント範囲308の中には3個のセグメント305, 306, 307が存在し、各セグメントにおいてビュー重み305a, 306a, 307aを設定する。なお、この例ではビュー重みはセグメント位置302の投影データのビュー重みを最大としてその前後で漸増、漸減するようになっているが、このようなパターンに限定されるものではなく、撮影条件にしたがって任意に決めることができる。画像位置309の断層像の場合(d)、画像位置309を中心とした使用セグメント範囲312の中には2個のセグメント310, 311が存在し、各セグメントにおいてビュー重み310a, 311aを設定する。画像位置313の断層像の場合(e)、画像位置313を中心とした使用セグメント範囲317の中には3個のセグメント314, 315, 316が存在し、各セグメントにおいてビュー重み314a, 315a, 316aを設定する。先に説明したように、逆投影で断層像を作成するためには、少なくとも半周分のビュー数の投影データが必要となる。よって、セグメント数が多い場合(c,e)は1セグメントの幅は小さくなり、セグメント数が少ない場合(d)は1セグメントあたりの幅は大きくなる。
【0031】
(ステップS105)
投影データ取捨領域算出部209は、逆投影で使用する投影データの範囲を算出する。図6を用いて、投影データ取捨領域算出部209の処理の詳細を説明する。図6の各横軸もビューを表している。
【0032】
投影データ取捨領域算出部209では、ビュー重み生成部208が生成した各断層像に対するセグメントを重ね合わせて、逆投影に必要なビュー範囲を算出する。セグメント位置302aにおける画像位置304のセグメント305は他に重ね合わせるセグメントがないため、結果としてセグメント305と同じビュー範囲318となる。一方、セグメント位置302bにおいては、画像位置304のセグメント306と画像位置309のセグメント310と画像位置313のセグメント314とが、重ね合わされる。これらのうち、最も幅の広いセグメントは、セグメント数が2個であるセグメント310であるため、重ね合わせた後のビュー範囲319は、セグメント310の幅と同じになる。同様に、セグメント位置302cにおいては、画像位置304のセグメント307と画像位置309のセグメント311と画像位置313のセグメント315とが、重ね合わされる。これらのうち、最も幅の広いセグメントは、セグメント数が2個であるセグメント311であるため、重ね合わせた後のビュー範囲320は、セグメント311の幅と同じになる。また、セグメント位置302dにおいては、画像位置313のセグメント316は他に重ね合わせるセグメントがないため、結果としてセグメント316と同じビュー範囲321となる。このようにして算出されたビュー範囲318, 319, 320, 321は、画像位置304, 309, 313の断層像の生成に必要な領域を表す(f)。なお、図6の例は断層像3枚として説明したが、特に枚数の制限はなく、撮影条件による。断層像1枚であってもよい。また、セグメントの幅を用いて必要な領域を算出しており、セグメントにおけるビュー重みの形状は特に限定されない。
【0033】
(ステップS106)
投影データ取捨選択部210は、逆投影に必要な投影データのみとなるように投影データを再編成する。図7を用いて、投影データ取捨選択部210の処理の詳細を説明する。図7の各横軸もビューを表している。
【0034】
投影データ取捨選択部210では、投影データ取捨領域算出部209が算出したビュー範囲318, 319, 320, 321を用いて、原投影データ保存用メモリ205に格納されている投影データ(原投影データ)322から逆投影に必要な投影データ、すなわちビュー範囲318, 319, 320, 321に対応する投影データ323, 324, 325, 326を読み込む(g)。そして、読み込んだ投影データを繋ぎ合わせて再編成した投影データ(再編成投影データ)327を再編成投影データ保存用メモリ212に書き込む(h)。
【0035】
(ステップS107)
再編成投影データビュー重み生成部211は、投影データ取捨選択部210で再編成した投影データに合わせて、全画像のビュー重みを生成する。図8を用いて、再編成投影データビュー重み生成部211の処理の詳細を説明する。図8の各横軸もビューを表している。
【0036】
再編成投影データビュー重み生成部211では、投影データ取捨選択部210が再編成した投影データ(再編成投影データ)327に対して、各画像位置で断層像を作成するための各セグメントのビュー重みを生成する。ビュー重み生成部208が当初の投影データ(原投影データ)322に対して生成したセグメント数及びビュー重みの形状と同じであるが、投影データが再編成されたことにより、ビュー重みの位置が変化する。具体的には、投影データ327の各セグメント323’, 324’, 325’, 326’の中心302a’, 302b’, 302c’, 302d’がビュー重みの中心と一致するようにビュー重みを配置する。
【0037】
画像位置304の断層像の場合(i)、再編成された投影データ327の3個のセグメント323’, 324’, 325’を使用するが、セグメント324’, 325’の全ての投影データを使用しないため、ビュー重み328, 329, 330は互いに隣接しない。しかしながら、ビュー重み生成部208で生成したビュー重み305a, 306a, 307aと比較すると、その間の間隔は狭くなっている(図5参照)。画像位置309の断層像の場合(j)、再編成された投影データ327の2個のセグメント324’, 325’の全ての投影データを使用するため、ビュー重み331, 332は互いに隣接している。画像位置313の断層像の場合(k)、再編成された投影データ327の3個のセグメント324’, 325’, 326’を使用するが、セグメント324’, 325’の全ての投影データを使用しないため、ビュー重み333, 334, 335は互いに隣接しない。しかしながら、ビュー重み生成部208で生成したビュー重み314a, 315a, 316aと比較すると、その間の間隔は狭くなっている(図5参照)。
【0038】
(ステップS108)
逆投影処理部214は、投影データ取捨選択部210が再編成した投影データ(再編成投影データ)327と再編成投影データビュー重み生成部211が生成したビュー重み328〜335とを用いて逆投影処理することで、断層像を作成する。この際、メインメモリ(再編成投影データ保存用メモリ212)からキャッシュ213に持ってきた投影データは常に逆投影処理に使用されることになり、キャッシュヒット率が向上する。
【0039】
以上より、実施例1では従来と比較して、メインメモリからキャッシュへ持ってくる投影データのサイズが小さく、かつ、キャッシュに持ってきた投影データは必ず逆投影に使用されるため、キャッシュヒット率を向上させることができる。
【0040】
また、先頭ビューから順に投影データにアクセスすることを想定しており、メモリ上を先頭から順にアクセスすることでハードウェア・プリフェッチが有効に働き、キャッシュヒット率を向上させることができるため、逆投影の処理時間短縮となり、CT検査のワークフローが向上する。
【0041】
なお、心臓撮影を例として説明したが、心臓撮影に限定されるものではない。例えば、呼吸同期を用いたCT撮影の時でも、生体信号として呼気・吸気を利用し、心電波形情報と同様に扱うことで実施例1の技術を適用可能である。
【実施例2】
【0042】
実施例2では、キャッシュメモリの利用の効率化について図9を用いて説明する。
【0043】
(ステップS201〜ステップS207)
ステップS201〜ステップS207は、それぞれ実施例1にて説明したステップS101〜ステップS107と同様であるため、説明を省略する。
【0044】
(ステップS208)
再編成投影データビュー重み生成部211が生成したビュー重み328〜335を用いて、投影データの各ビューが同時に逆投影する断層像の枚数を調べる。図10はその結果を示している。(h)〜(k)は図8と同じである。投影データ327上のビュー範囲401では、各ビューが逆投影対象となる断層像枚数は「1」となり、逆投影対象の画像は「画像位置304の断層像」及び「画像位置309の断層像」となる。投影データ327上のビュー範囲402では、各ビューが逆投影対象となる断層像枚数は「3」となり、逆投影対象の画像は「画像位置304の断層像」、「画像位置309の断層像」及び「画像位置313の断層像」となる。投影データ327上のビュー範囲403では、各ビューが逆投影対象となる断層像枚数は「1」となり、逆投影対象の画像は「画像位置309の断層像」となる。投影データ327上のビュー範囲404では、各ビューが逆投影対象となる断層像枚数は「3」となり、逆投影対象の画像は「画像位置304の断層像」、「画像位置309の断層像」及び「画像位置313の断層像」となる。投影データ327上のビュー範囲405では、各ビューが逆投影対象となる断層像枚数は「1」となり、逆投影対象の画像は「画像位置309の断層像」及び「画像位置313の断層像」となる。
【0045】
例えば、投影データ327上のビュー範囲402の場合、逆投影対象は、画像位置304の断層像406、画像位置309の断層像407、画像位置313の断層像408の計3枚となり、1枚あたりのサイズが1MB(512pixel×512pixel×4byte)とすると、3枚で3MBとなる。一方、1ビューあたりの投影データのサイズに関しては、0.25MB(1024ch×64slice×4byte)と仮定する。キャッシュメモリ213のサイズが 20 MBの場合、他の処理にてキャッシュメモリ213を利用することを考慮して半分ほど空けておくとすると、逆投影に使用できるキャッシュサイズは10MBとなる。断層像用に3MB使用し、残り7MBを投影データ用に使用すると、28ビュー分(=7MB÷0.25MB)の投影データをキャッシュメモリ213上に置くことができる。
(ステップS209)
キャッシュメモリ213を使用して逆投影処理を行うためのプロセッサ409、メインメモリ412、キャッシュメモリ213の関係性について図11を用いて説明する。プロセッサ409が逆投影処理をするためにメインメモリ412上からデータを読み出す時、一旦キャッシュメモリ213に持ってきた後に、プロセッサ409はキャッシュメモリ213からデータを読み出す。読み出したデータを用いて計算した後の結果は、キャッシュメモリ213に書き出した後に、キャッシュメモリ213からメインメモリ412に書き出される。プロセッサ409が次に同じデータを使用する時はキャッシュメモリ213上に存在するデータにアクセスすることになる。データ転送の速度は、キャッシュメモリ213−メインメモリ412間よりも、プロセッサ409−キャッシュメモリ213間の方が高速なため、キャッシュメモリ213に置いたデータをなるべく再利用することが望ましい。
【0046】
したがって、投影データ327上のビュー範囲402を逆投影する場合においては(図10参照)、3枚分の断層像データ411と、28ビュー分の投影データ410をメインメモリ412からキャッシュメモリ213に持ってくることで、逆投影に必要なデータはキャッシュメモリ213上にあるため、キャッシュヒット率の向上を図ることができる。28ビュー分の投影データ410を全て逆投影処理に使用した後は、次の28ビュー分の投影データをメインメモリ412から持ってくる。古い投影データに関してはアクセスされなくなるため、キャッシュメモリ213上から消えることになる。3枚分の断層像データに関しては、投影データ327のビュー範囲402の投影データを用いて逆投影している限りは変わらないため、キャッシュメモリ213上に残り続ける。
【0047】
続く投影データ327のビュー範囲403では、逆投影対象は画像位置309の断層像407の1枚のみとなる。このため、1枚分の断層像データ(1MB)をキャッシュメモリ213に置いておけばよく、逆投影用の残る9MB分は投影データに充てることが可能になる。この場合、36ビュー分(9MB÷0.25MB)の投影データをキャッシュメモリ213に持ってくることができる。このように、投影データ327を各ビューが同時に逆投影する断層像の枚数に応じてビュー範囲を区分し、逆投影のためにあてるキャッシュメモリ容量から、同時に逆投影する断層像データをまず確保し、残るキャッシュメモリ容量を投影データの記憶のために用いることで、キャッシュミスをできるだけ少なくして効率的にキャッシュメモリ213を使用することができる。
【0048】
プロセッサ409としてマルチコアプロセッサを使用する場合には、逆投影の計算結果の書き込み先(断層像)がマルチコア同士で競合しないように、断層像をブロック分割し、マルチコアに割り当てる。図10の例では、断層像1枚あたり16分割しているが、この分割数に限定されない。マルチコアの並列度を上げるため、ブロック分割数はマルチコア数よりも多い方が望ましい。もし、ブロック分割数がマルチコア数よりも少ない場合、一部のコアは演算中にも関わらず、別のコアはスリープ状態となるため、全てのマルチコアを活かすことができないためである。
【0049】
以上、投影データの所定のビュー範囲にて、キャッシュメモリ213に持ってくる投影データのビュー数と断層像データの枚数とを適切に設定することにより、逆投影に必要なデータが全てキャッシュメモリ213に載せることができ、キャッシュヒット率が向上し、逆投影の処理時間短縮が可能になり、CT検査のワークフローが向上する。
【実施例3】
【0050】
心臓は全身に血液を循環させるために、絶えずポンプ運動を繰り返す。そのポンプ運動において、心臓の動きが小さい時相(収縮期/拡張期)を探すために、複数の時相の断層像をまとめて生成し、その中から一番モーションアーチファクトの少ない断層像(心拍時相)を見つける場合がある。実施例3では、実施例1を応用して複数時相の断層像をまとめて作成する。
【0051】
最初に、ビュー重み生成部208にて、各画像における複数時相のビュー重みを生成する。図12は、所定の画像位置(画像位置504)での断層像の生成に必要なビュー範囲を算出する方法を説明するものであり、R波−R波間を0−100%とし、3個の心拍時相(25%、50%、75%)に合わせたビュー範囲を算出する例を示している。心拍時相25%をセグメント位置として設定する場合(c)、画像位置504を中心とした使用セグメント範囲505の中には2個の25%の心拍時相501b, 501cが存在するため、心拍時相501b, 501cにあわせてセグメント506, 507を設定し、各セグメントのそれぞれに対してビュー重み506a, 507aを設定する。心拍時相50%をセグメント位置として設定する場合(d)、画像位置504を中心とした使用セグメント範囲505の中には3個の50%の心拍時相502a, 502b, 502cが存在するため、心拍時相502a, 502b, 502cにあわせてセグメント508, 509, 510を設定し、各セグメントのそれぞれに対してビュー重み508a, 509a, 510aを設定する。心拍時相75%をセグメント位置として設定する場合(e)、画像位置504を中心とした使用セグメント範囲505の中には2個の75%の心拍時相503a, 503bが存在するため、心拍時相503a, 503bにあわせてセグメント511, 512を設定し、各セグメントのそれぞれに対してビュー重み511a, 512aを設定する。
【0052】
投影データ取捨領域算出部209は、3個の心拍時相(25%、50%、75%)に合わせて設定したセグメントを重ね合わせることで、画像位置504での断層像の生成に必要なビュー範囲513, 514, 515を生成する(f)。ビュー範囲513〜515は、画像位置504にて全ての心拍時相の断層像を作成するために必要なビュー範囲を示している。
【0053】
図13は、画像位置504とは異なる画像位置516での断層像の生成に必要なビュー範囲を算出する方法を説明するものである。心拍時相25%をセグメント位置として設定する場合(g)、画像位置516を中心とした使用セグメント範囲517の中には2個の25%の心拍時相501b, 501cが存在するため、心拍時相501b, 501cにあわせてセグメント518, 519を設定し、各セグメントのそれぞれに対してビュー重み518a, 519aを設定する。心拍時相50%をセグメント位置として設定する場合(h)、画像位置516を中心とした使用セグメント範囲517の中には2個の50%の心拍時相502b, 502cが存在するため、心拍時相502b, 502cにあわせてセグメント520, 521を設定し、各セグメントのそれぞれに対してビュー重み520a, 521aを設定する。心拍時相75%をセグメント位置として設定する場合(i)、画像位置516を中心とした使用セグメント範囲517の中には2個の75%の心拍時相503b, 503cが存在するため、心拍時相503b, 503cにあわせてセグメント522, 523を設定し、各セグメントのそれぞれに対してビュー重み522a, 523aを設定する。
【0054】
投影データ取捨領域算出部209は、3個の心拍時相(25%、50%、75%)に合わせて設定したセグメントを重ね合わせることで、画像位置516での断層像の生成に必要なビュー範囲524, 525を生成する(j)。ビュー範囲524, 525は、画像位置516にて全ての心拍時相の断層像を作成するために必要なビュー範囲を示している。
【0055】
図14は、画像位置504, 516とは異なる画像位置526での断層像の生成に必要なビュー範囲を算出する方法を説明するものである。心拍時相25%をセグメント位置として設定する場合(k)、画像位置526を中心とした使用セグメント範囲527の中には2個の25%の心拍時相501c, 501dが存在するため、心拍時相501c, 501dにあわせてセグメント528, 529を設定し、各セグメントのそれぞれに対してビュー重み528a, 529aを設定する。心拍時相50%をセグメント位置として設定する場合(l)、画像位置526を中心とした使用セグメント範囲527の中には3個の50%の心拍時相502b, 502c, 502dが存在するため、心拍時相502b, 502c, 502dにあわせてセグメント530, 531, 532を設定し、各セグメントのそれぞれに対してビュー重み530a, 531a, 532aを設定する。心拍時相75%をセグメント位置として設定する場合(m)、画像位置526を中心とした使用セグメント範囲527の中には2個の75%の心拍時相503b, 503cが存在するため、心拍時相503b, 503cにあわせてセグメント533, 534を設定し、各セグメントのそれぞれに対してビュー重み533a, 534aを設定する。
【0056】
投影データ取捨領域算出部209は、3個の心拍時相(25%、50%、75%)に合わせて設定したセグメントを重ね合わせることで、画像位置526での断層像の生成に必要なビュー範囲535, 536, 537を生成する(n)。ビュー範囲535〜537は、画像位置526にて全ての心拍時相の断層像を作成するために必要なビュー範囲を示している。
【0057】
図15では、投影データ取捨領域算出部209が各画像位置での断層像を生成する3個の心拍時相(25%、50%、75%)のビュー重みを重ね合わせることで得られたビュー範囲513, 514, 515, 524, 525, 535, 536, 537を更に重ね合わせる様子を示す(o)。画像位置504のビュー範囲513は、他に重ね合わせるビュー範囲がないため、結果としてビュー範囲513と同じ幅のビュー範囲538になる。ビュー範囲514は、画像位置516のビュー範囲524と画像位置526のビュー範囲535と重ね合わせることができる。ここで、ビュー範囲514とビュー範囲524とは同じ幅であるため、重ね合わせた後のビュー範囲539の幅は、ビュー範囲514及びビュー範囲524と同じになる。同様に、ビュー範囲515は、ビュー範囲525とビュー範囲536と重ね合わせることができ、ビュー範囲525とビュー範囲536とは同じ幅であるため、重ね合わせた後のビュー範囲540の幅は、ビュー範囲525及びビュー範囲536と同じになる。画像位置526のビュー範囲537は、他に重ね合わせるビュー範囲がないため、結果としてビュー範囲537と同じ幅のビュー範囲541となる。このようにして算出されたビュー範囲538, 539, 540, 541は、3個の画像位置において、かつ3つの心拍時相での断層像の生成に必要な領域を表すビュー範囲となる。なお、今回は3個の画像位置での断層像を作成する例を説明したが、特に枚数の制限はない。また、本例でもビュー重みはセグメント位置の投影データのビュー重みを最大としてその前後で漸増、漸減するようになっているが、このようなパターンに限定されるものではなく、撮影条件にしたがって任意に決めることができる。
【0058】
図16では、図15にて説明した取捨領域に基づき、投影データ取捨選択部210が投影データを再編成する方法を説明する。投影データ取捨選択部210は、投影データ取捨領域算出部209が算出したビュー範囲538〜541を用いて、原投影データ保存用メモリ205に格納されている投影データ(原投影データ)322から逆投影に必要な投影データのみ読み込む(p)。そして、読み込んだ投影データを繋ぎ合わせて再編成した投影データ(再編成投影データ)546を再編成投影データ保存用メモリ212に書き込む(q)。
【0059】
図17では、再編成投影データビュー重み生成部211が再編成投影データ546に対して、各心拍時相における全画像のビュー重みを生成する処理の詳細を説明する。ビュー重み生成部208が当初の投影データ(原投影データ)322に対して生成したセグメント数及びビュー重みの形状(図12〜14を参照)と同じであるが、投影データが再編成されたことにより、ビュー重みの位置が変化する。
【0060】
画像位置504、心拍時相25%の断層像の場合(r)、再編成された投影データ546の2個のセグメント543’, 544’を使用するが、それぞれビュー重みの左端が各セグメントの左端に位置するよう、ビュー重み547, 548が配置される。画像位置504、心拍時相50%の断層像の場合(s)、再編成された投影データ546の3個のセグメント542’, 543’ , 544’を使用するが、ビュー重み549の左端がセグメント542’の左端に位置するよう、またそれぞれビュー重みの中央がセグメント543’, 544’の中央に位置するようビュー重み550, 551が配置される。画像位置504、心拍時相75%の断層像の場合(t)、再編成された投影データ546の2個のセグメント542’, 543’を使用するが、それぞれビュー重みの右端が各セグメントの右端に位置するよう、ビュー重み552, 553が配置される。
【0061】
画像位置516、心拍時相25%の断層像の場合(u)、再編成された投影データ546の2個のセグメント543’, 544’を使用するが、それぞれビュー重みの左端が各セグメントの左端に位置するよう、ビュー重み554, 555が配置される。画像位置516、心拍時相50%の断層像の場合(v)、再編成された投影データ546の2個のセグメント543’ , 544’を使用するが、それぞれビュー重みの中央がセグメントの中央に位置するようビュー重み556, 557が配置される。画像位置516、心拍時相75%の断層像の場合(w)、再編成された投影データ546の2個のセグメント543’, 544’を使用するが、それぞれビュー重みの右端が各セグメントの右端に位置するよう、ビュー重み558, 559が配置される。
【0062】
画像位置526、心拍時相25%の断層像の場合(x)、再編成された投影データ546の2個のセグメント544’, 545’を使用するが、それぞれビュー重みの左端が各セグメントの左端に位置するよう、ビュー重み560, 561が配置される。画像位置526、心拍時相50%の断層像の場合(y)、再編成された投影データ546の3個のセグメント543’, 544’ , 545’を使用するが、ビュー重み564の右端がセグメント545’の右端に位置するよう、またそれぞれビュー重みの中央がセグメント543’, 544’の中央に位置するようビュー重み562, 563が配置される。画像位置526、心拍時相75%の断層像の場合(z)、再編成された投影データ546の2個のセグメント543’, 544’を使用するが、それぞれビュー重みの右端が各セグメントの右端に位置するよう、ビュー重み565, 567が配置される。
【0063】
逆投影処理部214は、再編成投影データ546と再編成投影データ546に合わせて生成したビュー重み547〜567を用いて逆投影処理することで、断層像を作成する。この際、投影データは常に逆投影処理に使用されるため、メインメモリ(再編成投影データ保存用メモリ212)からキャッシュメモリ213に持ってきた投影データは必ず使用されることになり、キャッシュヒット率が向上し、逆投影の処理時間短縮につながる。
【0064】
なお、本実施例は実施例2と組み合わせて使用することも可能である。
【符号の説明】
【0065】
101:スキャナ、102:寝台、103:操作卓、104:ディスプレイ、105A:キーボード、105B:マウス、106:被検体、107:X線管球、108:X線検出器、109:心電波形取得装置、110:X線制御部、111:ガントリ制御部、112:寝台制御部、113:検出器制御部、114:システム制御部、115:画像作成部、116:画像表示部、117:操作部。
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10
図11
図12
図13
図14
図15
図16
図17
図18