以下、図面を参照して、医用画像処理装置、X線診断装置及び医用画像処理プログラムの実施形態について詳細に説明する。
(第1の実施形態)
まず、第1の実施形態について説明する。第1の実施形態では、医用画像処理装置を含んだ医用情報処理システムを一例として説明する。また、第1の実施形態では、医療デバイスの一例として、被検体Pの冠動脈内に留置されるステントについて説明する。
図1に示すように、第1の実施形態に係る医用情報処理システム1は、X線診断装置10と、画像保管装置20と、医用画像処理装置30とを備える。なお、図1は、第1の実施形態に係る医用情報処理システム1の構成の一例を示すブロック図である。図1に示すように、X線診断装置10、画像保管装置20及び医用画像処理装置30は、ネットワークを介して相互に接続される。
X線診断装置10は、被検体PからX線画像データを収集する。例えば、X線診断装置10は、被検体Pから時系列の複数のX線画像データを収集し、収集した複数のX線画像データを画像保管装置20に送信する。なお、X線診断装置10の構成については後述する。
画像保管装置20は、X線診断装置10によって収集された複数のX線画像データを保管する。例えば、画像保管装置20は、サーバ装置等のコンピュータ機器によって実現される。本実施形態では、画像保管装置20は、ネットワークを介してX線診断装置10から複数のX線画像データを取得し、取得した複数のX線画像データを、装置内又は装置外に設けられたメモリに記憶させる。
医用画像処理装置30は、ネットワークを介して時系列の複数のX線画像データを取得し、取得した複数のX線画像データを用いて種々の処理を実行する。例えば、医用画像処理装置30は、ワークステーション等のコンピュータ機器によって実現される。本実施形態では、医用画像処理装置30は、ネットワークを介して画像保管装置20から時系列の複数のX線画像データを取得する。また、医用画像処理装置30は、取得した複数のX線画像データを用いて重み付けフィルタ処理を行なう。なお、重み付けフィルタ処理については後述する。
図1に示すように、医用画像処理装置30は、入力インターフェース31と、ディスプレイ32と、メモリ33と、処理回路34とを有する。
入力インターフェース31は、各種指示や各種設定などを行なうためのマウスやキーボード、トラックボール、スイッチ、ボタン、ジョイスティック、タッチパネル等によって実現される。入力インターフェース31は、操作者から受け取った入力操作を電気信号へ変換し処理回路34へと出力する。
ディスプレイ32は、各種の情報を表示する。例えば、ディスプレイ32は、操作者の指示を受け付けるためのGUI(Graphical User Interface)や、各種のX線画像データを表示する。例えば、ディスプレイ32は、液晶ディスプレイやCRT(Cathode Ray Tube)ディスプレイである。
メモリ33は、例えば、RAM(Random Access Memory)、フラッシュメモリ等の半導体メモリ素子、ハードディスク、光ディスク等により実現される。例えば、メモリ33は、画像保管装置20から取得した時系列の複数のX線画像データを記憶する。また、例えば、メモリ33は、医用画像処理装置30に含まれる各回路がその機能を実現するためのプログラムを記憶する。
処理回路34は、取得機能34a、特定機能34b、算出機能34c、設定機能34d、フィルタ処理機能34e及び表示制御機能34fを実行することで、医用画像処理装置30全体の動作を制御する。
例えば、処理回路34は、取得機能34aに対応するプログラムをメモリ33から読み出して実行することにより、画像保管装置20から時系列の複数のX線画像データを取得する。また、例えば、処理回路34は、特定機能34bに対応するプログラムをメモリ33から読み出して実行することにより、時系列の複数のX線画像データのそれぞれにおいて特徴点を特定する。また、例えば、処理回路34は、算出機能34cに対応するプログラムをメモリ33から読み出して実行することにより、時系列の複数のX線画像データ間における特徴点の移動量を算出する。また、例えば、処理回路34は、設定機能34dに対応するプログラムをメモリ33から読み出して実行することにより、特徴点の移動量に基づいて、時系列の複数のX線画像データのそれぞれに対して重み付け係数を設定する。また、例えば、処理回路34は、フィルタ処理機能34eに対応するプログラムをメモリ33から読み出して実行することにより、重み付け係数に基づいて、時系列の複数のX線画像データを用いた重み付けフィルタ処理を行なう。
図1に示す医用画像処理装置30においては、各処理機能がコンピュータによって実行可能なプログラムの形態でメモリ33へ記憶されている。処理回路34は、メモリ33からプログラムを読み出して実行することで各プログラムに対応する機能を実現するプロセッサである。換言すると、各プログラムを読み出した状態の処理回路34は、読み出したプログラムに対応する機能を有することとなる。なお、図1においては単一の処理回路34にて、取得機能34a、特定機能34b、算出機能34c、設定機能34d、フィルタ処理機能34e及び表示制御機能34fが実現するものとして説明したが、複数の独立したプロセッサを組み合わせて処理回路34を構成し、各プロセッサがプログラムを実行することにより機能を実現するものとしても構わない。
次に、時系列の複数のX線画像データを収集するX線診断装置10について、図2を用いて説明する。図2は、第1の実施形態に係るX線診断装置10の構成の一例を示すブロック図である。図2に示すように、X線診断装置10は、X線高電圧装置101と、X線管102と、コリメータ103と、フィルタ104と、天板105と、Cアーム106と、X線検出器107と、制御装置108と、メモリ109と、ディスプレイ110と、入力インターフェース111と、処理回路112とを備える。
X線高電圧装置101は、処理回路112による制御の下、X線管102に高電圧を供給する。例えば、X線高電圧装置101は、変圧器(トランス)及び整流器等の電気回路を有し、X線管102に印加する高電圧を発生する高電圧発生装置と、X線管102が照射するX線に応じた出力電圧の制御を行なうX線制御装置とを有する。なお、高電圧発生装置は、変圧器方式であってもよいし、インバータ方式であってもよい。
X線管102は、熱電子を発生する陰極(フィラメント)と、熱電子の衝突を受けてX線を発生する陽極(ターゲット)とを有する真空管である。X線管102は、X線高電圧装置101から供給される高電圧を用いて、陰極から陽極に向けて熱電子を照射することにより、X線を発生する。
コリメータ(X線絞り装置ともいう)103は、例えば、スライド可能な4枚の絞り羽根を有する。コリメータ103は、絞り羽根をスライドさせることで、X線管102が発生したX線を絞り込んで被検体Pに照射させる。ここで、絞り羽根は、鉛などで構成された板状部材であり、X線の照射範囲を調整するためにX線管102のX線照射口付近に設けられる。
フィルタ104は、被検体Pに対する被曝線量の低減とX線画像データの画質向上を目的として、その材質や厚みによって透過するX線の線質を変化させ、被検体Pに吸収されやすい軟線成分を低減したり、X線画像データのコントラストの低下を招く高エネルギー成分を低減したりする。また、フィルタ104は、その材質や厚み、位置などによってX線の線量及び照射範囲を変化させ、X線管102から被検体Pへ照射されるX線が予め定められた分布になるようにX線を減衰させる。
天板105は、被検体Pを載せるベッドであり、図示しない寝台の上に配置される。なお、被検体Pは、X線診断装置10に含まれない。
Cアーム106は、X線管102、コリメータ103及びフィルタ104と、X線検出器107とを、被検体Pを挟んで対向するように保持する。なお、図2では、X線診断装置10がシングルプレーンの場合を例に挙げて説明しているが、実施形態はこれに限定されるものではなく、バイプレーンの場合であってもよい。
X線検出器107は、例えば、マトリクス状に配列された検出素子を有するX線平面検出器(Flat Panel Detector:FPD)である。X線検出器107は、X線管102から照射されて被検体Pを透過したX線を検出して、検出したX線量に対応した検出信号を処理回路112へと出力する。なお、X線検出器107は、グリッド、シンチレータアレイ及び光センサアレイを有する間接変換型の検出器であってもよいし、入射したX線を電気信号に変換する半導体素子を有する直接変換型の検出器であっても構わない。
制御装置108は、モータ及びアクチュエータ等の駆動機構と、この機構を制御する回路とを含む。制御装置108は、処理回路112による制御の下、コリメータ103やフィルタ104、天板105、Cアーム106等の動作を制御する。例えば、制御装置108は、コリメータ103の絞り羽根の開度を調整することで、被検体Pに対して照射されるX線の照射範囲を制御する。また、制御装置108は、フィルタ104の位置を調整することで、被検体Pに対して照射されるX線の線量の分布を制御する。また、例えば、制御装置108は、Cアーム106を回転・移動させたり、天板105を移動させたりする。
メモリ109は、例えば、RAM、フラッシュメモリ等の半導体メモリ素子、ハードディスク、光ディスク等により実現される。メモリ109は、例えば、処理回路112によって収集されたX線画像データを受け付けて記憶する。また、メモリ109は、処理回路112によって読み出されて実行される各種機能に対応するプログラムを記憶する。
ディスプレイ110は、各種の情報を表示する。例えば、ディスプレイ110は、操作者の指示を受け付けるためのGUIや、各種のX線画像データを表示する。例えば、ディスプレイ110は、液晶ディスプレイやCRTディスプレイである。
入力インターフェース111は、各種指示や各種設定などを行なうためのマウスやキーボード、トラックボール、スイッチ、ボタン、ジョイスティック、タッチパネル等によって実現される。入力インターフェース111は、操作者から受け取った入力操作を電気信号へ変換し処理回路112へと出力する。
処理回路112は、制御機能112a、収集機能112b及び表示制御機能112cを実行することで、X線診断装置10全体の動作を制御する。例えば、処理回路112は、メモリ109から制御機能112aに対応するプログラムを読み出して実行することにより、入力インターフェース111を介して操作者から受け付けた入力操作に基づいて、処理回路112の各種機能を制御する。
また、処理回路112は、メモリ109から収集機能112bに対応するプログラムを読み出して実行することにより、X線画像データを収集する。例えば、収集機能112bは、X線高電圧装置101を制御し、X線管102に供給する電圧を調整することで、被検体Pに対して照射されるX線量やオン/オフを制御する。また、収集機能112bは、制御装置108を制御し、コリメータ103が有する絞り羽根の開度を調整することで、被検体Pに対して照射されるX線の照射範囲を制御する。また、収集機能112bは、制御装置108を制御し、フィルタ104の位置を調整することで、X線の線量の分布を制御する。また、収集機能112bは、制御装置108を制御し、Cアーム106の回転及び移動、天板105の移動等を制御する。また、収集機能112bは、X線検出器107から受信した検出信号に基づいてX線画像データを生成し、生成したX線画像データをメモリ109に格納する。ここで、収集機能112bは、メモリ109が記憶するX線画像データに対して各種画像処理を行なう場合であってもよい。例えば、収集機能112bは、X線画像データに対して、画像処理フィルタによるノイズ低減処理や、散乱線補正を実行する。
また、処理回路112は、メモリ109から表示制御機能112cに対応するプログラムを読み出して実行することにより、ディスプレイ110において、収集機能112bによって収集されたX線画像データを表示する。また、表示制御機能112cは、ディスプレイ110において、操作者の指示を受け付けるためのGUIを表示する。
図2に示すX線診断装置10においては、各処理機能がコンピュータによって実行可能なプログラムの形態でメモリ109へ記憶されている。処理回路112は、メモリ109からプログラムを読み出して実行することで各プログラムに対応する機能を実現するプロセッサである。換言すると、各プログラムを読み出した状態の処理回路112は、読み出したプログラムに対応する機能を有することとなる。なお、図2においては単一の処理回路112にて、制御機能112a、収集機能112b及び表示制御機能112cが実現するものとして説明したが、複数の独立したプロセッサを組み合わせて処理回路112を構成し、各プロセッサがプログラムを実行することにより機能を実現するものとしても構わない。
上記説明において用いた「プロセッサ」という文言は、例えば、CPU(Central Processing Unit)、GPU(Graphics Processing Unit)、或いは、特定用途向け集積回路(Application Specific Integrated Circuit:ASIC)、プログラマブル論理医療デバイス(例えば、単純プログラマブル論理医療デバイス(Simple Programmable Logic Device:SPLD)、複合プログラマブル論理医療デバイス(Complex Programmable Logic Device:CPLD)、及びフィールドプログラマブルゲートアレイ(Field Programmable Gate Array:FPGA))等の回路を意味する。プロセッサはメモリ33又はメモリ109に保存されたプログラムを読み出し実行することで機能を実現する。なお、メモリ33又はメモリ109にプログラムを保存する代わりに、プロセッサの回路内にプログラムを直接組み込むよう構成しても構わない。この場合、プロセッサは回路内に組み込まれたプログラムを読み出し実行することで機能を実現する。なお、本実施形態のプロセッサは、プロセッサごとに単一の回路として構成される場合に限らず、複数の独立した回路を組み合わせて1つのプロセッサとして構成し、その機能を実現するようにしてもよい。
以上、医用画像処理装置30を含んだ医用情報処理システム1について説明した。かかる構成の下、医用情報処理システム1における医用画像処理装置30は、以下、詳細に説明する処理回路34による処理によって、医療デバイスを明瞭に強調したX線画像データを生成する。以下、第1の実施形態に係る医用画像処理装置30が行なう処理について詳細に説明する。
まず、X線診断装置10における収集機能112bは、時系列の複数のX線画像データを収集する。例えば、収集機能112bは、冠動脈内にステントが挿入された状態の被検体Pの心臓に対して、操作者からの指示に応じた期間中、連続的又は間欠的にX線を照射する。この際、X線検出器107は、被検体Pの心臓を透過したX線を検出して、検出したX線量に対応した検出信号を処理回路112に出力する。
次に、収集機能112bは、X線検出器107から受信した検出信号に基づいて、時系列の複数のX線画像データを生成する。以下では一例として、収集機能112bが、図3Aに示すX線画像データI11、X線画像データI12、X線画像データI13、X線画像データI14、X線画像データI15及びX線画像データI16を含んだ時系列の複数のX線画像データを生成した場合について説明する。なお、図3Aは、第1の実施形態に係る時系列の複数のX線画像データの一例を示す図である。
図3Aに示すX線画像データI11~I16のそれぞれは、被検体Pの冠動脈内に挿入されたステントと、ステントマーカーL1及びステントマーカーL2とを含む。一例を挙げると、ステントマーカーL1及びステントマーカーL2は、被検体Pの冠動脈内にステントを挿入するためのカテーテルに付されるX線不透過の金属である。この場合、ステントはカテーテルと一体的に動くため、ステントマーカーL1及びステントマーカーL2は、実質的にステントの位置を示すこととなる。また、図3AのX線画像データI11~I16に示すように、ステント、ステントマーカーL1及びステントマーカーL2の位置は、心拍動により変動する。
X線画像データI11~I16を含む時系列の複数のX線画像データを収集した後、X線診断装置10は、収集した複数のX線画像データを画像保管装置20に送信する。また、画像保管装置20は、X線診断装置10から送信された複数のX線画像データを、装置内又は装置外に設けられたメモリにおいて保管する。次に、医用画像処理装置30における取得機能34aは、画像保管装置20から複数のX線画像データを取得する。なお、取得機能34aは、画像保管装置20を介さず、X線診断装置10から複数のX線画像データを取得する場合であってもよい。そして、取得機能34aは、取得した複数のX線画像データをメモリ33に記憶させる。
次に、特定機能34bは、メモリ33から複数のX線画像データを読み出し、読み出した複数のX線画像データのそれぞれにおいて特徴点を特定する。例えば、特定機能34bは、特徴点として、時系列の複数のX線画像データのそれぞれに描出されたステントマーカーL1及びステントマーカーL2を抽出する。なお、特徴点は、ステントマーカーL1及びステントマーカーL2に限られるものではなく、ステントストラッドのパターンなど、その他のものを用いる場合であってもよい。
次に、算出機能34cは、特定機能34bが特徴点として特定したステントマーカーL1及びステントマーカーL2のそれぞれについて、X線画像データ間における移動量を算出する。例えば、算出機能34cは、図3Aに示すように、X線画像データI11とX線画像データI12との間におけるステントマーカーL1の移動量D21及びステントマーカーL2の移動量D22を算出する。なお、移動量は、X線画像データにおけるピクセル数であってもよいし、その他の長さを示す値であってもよい。例えば、移動量は、メートルやインチ等の単位で算出されてもよい。
一例を挙げると、算出機能34cは、まず、X線画像データI11とX線画像データI12とのそれぞれにおいて、ステントマーカーL1及びステントマーカーL2の座標(例えば、画像の端や中心等を原点とした座標)を取得する。そして、算出機能34cは、X線画像データI11におけるステントマーカーL1と、X線画像データI12におけるステントマーカーL1との座標間の距離を、移動量D21として算出する。また、算出機能34cは、X線画像データI11におけるステントマーカーL2と、X線画像データI12におけるステントマーカーL2との座標間の距離を、移動量D22として算出する。
同様に、算出機能34cは、図示しないX線画像データI10(X線画像データI11の直前に収集されたX線画像データ)と、X線画像データI11との間におけるステントマーカーL1の移動量D11及びステントマーカーL2の移動量D12を算出する。また、算出機能34cは、X線画像データI12とX線画像データI13との間におけるステントマーカーL1の移動量D31及びステントマーカーL2の移動量D32を算出する。また、算出機能34cは、X線画像データI13とX線画像データI14との間におけるステントマーカーL1の移動量D41及びステントマーカーL2の移動量D42を算出する。また、算出機能34cは、X線画像データI14とX線画像データI15との間におけるステントマーカーL1の移動量D51及びステントマーカーL2の移動量D52を算出する。また、算出機能34cは、X線画像データI15とX線画像データI16との間におけるステントマーカーL1の移動量D61及びステントマーカーL2の移動量D62を算出する。
なお、時系列の複数のX線画像データ間でステントマーカーL1及びステントマーカーL2の位置が移動しているのは、例えば、被検体Pの心臓の心拍動(収縮、収縮期、弛緩及び拡張期を周期的に繰り返す動き)に起因する。この場合、ステントマーカーL1及びステントマーカーL2の移動量は、心臓が収縮又は弛緩している時に大きくなり、収縮期又は拡張期に対応する時には小さくなる。
例えば、図3Aに示すX線画像データI12は、X線画像データI12の前のX線画像データI11と比較して、ステントマーカーL1及びステントマーカーL2の位置がそれほど移動していない。即ち、X線画像データI12は、収縮期又は拡張期に収集されたものであり、前のX線画像データI11との間における移動量(移動量D21及び移動量D22)は小さな値となる。この場合、図3Aに示すように、X線画像データI12内のステントは明瞭なものとなる。同様に、移動量D61及び移動量D62も小さな値となり、X線画像データI16内のステントは明瞭なものとなる。
一方で、図3Aに示すX線画像データI14は、前のX線画像データI13と比較して、ステントマーカーL1及びステントマーカーL2の位置が移動している。即ち、X線画像データI14は、心臓が収縮又は弛緩している時に収集されたものであり、前のX線画像データI13との間における移動量(移動量D41及び移動量D42)は大きな値となる。この場合、図3Aに示すように、X線画像データI14内のステントは不明瞭なものとなる。
同様に、移動量D11及び移動量D12も大きな値となり、X線画像データI11内のステントは不明瞭なものとなる。また、移動量D31及び移動量D32も大きな値となり、X線画像データI13内のステントは不明瞭なものとなる。また、移動量D51及び移動量D52も大きな値となり、X線画像データI15内のステントは不明瞭なものとなる。
次に、設定機能34dは、算出機能34cが算出した移動量に基づいて、時系列の複数のX線画像データのそれぞれに対して重み付け係数を設定する。例えば、設定機能34dは、図3Aに示すように、ステントマーカーL1の移動量D11とステントマーカーL2の移動量D12とに基づいて、X線画像データI11に対して重み付け係数C1を設定する。
同様に、設定機能34dは、ステントマーカーL1の移動量D21とステントマーカーL2の移動量D22とに基づいて、X線画像データI12に対して重み付け係数C2を設定する。また、設定機能34dは、ステントマーカーL1の移動量D31とステントマーカーL2の移動量D32とに基づいて、X線画像データI13に対して重み付け係数C3を設定する。また、設定機能34dは、ステントマーカーL1の移動量D41とステントマーカーL2の移動量D42とに基づいて、X線画像データI14に対して重み付け係数C4を設定する。また、設定機能34dは、ステントマーカーL1の移動量D51とステントマーカーL2の移動量D52とに基づいて、X線画像データI15に対して重み付け係数C5を設定する。また、設定機能34dは、ステントマーカーL1の移動量D61とステントマーカーL2の移動量D62とに基づいて、X線画像データI16に対して重み付け係数C6を設定する。
ここで、設定機能34dは、前のX線画像データとの間における移動量が小さいほど重み付け係数が大きくなるように、複数のX線画像データのそれぞれに対して重み付け係数を設定する。
例えば、設定機能34dは、X線画像データI12については、前のX線画像データI11との間における移動量(移動量D21及び移動量D22)が小さな値であるため、X線画像データI12の重み付け係数C2を大きな値に設定する。同様に、設定機能34dは、X線画像データI16の重み付け係数C6を大きな値に設定する。
一方で、X線画像データI14については、前のX線画像データI13との間における移動量(移動量D41及び移動量D42)が大きな値であるため、設定機能34dは、X線画像データI14の重み付け係数C4を小さな値に設定する。同様に、設定機能34dは、X線画像データI11の重み付け係数C1、X線画像データI13の重み付け係数C3及びX線画像データI15の重み付け係数C5を小さな値に設定する。
ここで、図3Bを用いて、重み付け係数の設定の一例を説明する。例えば、設定機能34dは、移動量と重み付け係数との対応を示した対応表を事前に生成し、生成した対応表をメモリ33に記憶させる。なお、図3Bは、移動量がピクセル数で算出された場合を示す。また、図3Bは、第1の実施形態に係る重み付け係数の設定処理の一例を示す図である。
図3Bに示す移動量X1は「0」より大きい値であり、移動量Y1は移動量X1より大きい値であり、移動量Z1は移動量Y1より大きい値である。また、移動量「0」から移動量X1までの数値範囲については、重み付け係数「0.6」が設定される。なお、移動量「0」から移動量X1までの数値範囲は、ステントが明瞭な場合に対応する。また、移動量X1から移動量Y1までの数値範囲については、重み付け係数「0.3」が設定される。また、移動量Y1から移動量Z1までの数値範囲については、重み付け係数「0.1」が設定される。なお、移動量Y1から移動量Z1までの数値範囲は、移動量Y1以下の数値範囲よりもステントが不明瞭な場合に対応する。また、図3Bに示す移動量X1、移動量Y1及び移動量Z1は、ピクセル数を示す。
設定機能34dは、図3Bに示す対応表を用いて、複数のX線画像データのそれぞれに対して重み付け係数を設定する。例えば、X線画像データI12における移動量がX1以下である場合、設定機能34dは、X線画像データI12の重み付け係数C2を「0.6」に設定する。また、例えば、X線画像データI14における移動量がY1以上且つZ1以下である場合、設定機能34dは、X線画像データI14の重み付け係数C4を「0.1」に設定する。
次に、図3Cを用いて、重み付け係数の設定の別の例を説明する。例えば、設定機能34dは、拡大率ごとに、移動量と重み付け係数との対応を示した対応表を事前に生成し、生成した対応表をメモリ33に記憶させる。なお、図3Cは、移動量がメートルで算出された場合を示す。また、図3Cは、第1の実施形態に係る重み付け係数の設定処理の一例を示す図である。
ここで、拡大率とは、X線画像データの拡大率であり、例えば、FOV(Field of View)、SID(Source Image receptor Distance)、天板105の高さ、Cアーム106のアングルなどにより決定される。例えば、FOVのサイズが小さい場合には、X線画像データは、拡大されてディスプレイ110に表示される。即ち、FOVのサイズが小さいほど、拡大率は大きくなる。
また、SIDとは、X線管102とX線検出器107との距離である。ここで、拡大率は、SIDが小さいほど幾何的に大きくなる。また、図2に示したようにX線管102が天板105の下方に位置する場合、拡大率は、天板105の位置が低いほど、幾何的に大きくなる。なお、X線管102が天板105の上方に位置する場合には、拡大率は、天板105の位置が高いほど、幾何的に大きくなる。また、Cアーム106のアングルが変化することでX線管102と対象部位との距離が小さくなる場合、拡大率は幾何的に大きくなる。また、Cアーム106のアングルが変化することでX線管102と対象部位との距離が大きくなる場合、拡大率は幾何的に小さくなる。
例えば、設定機能34dは、拡大率に関するパラメータごとに、移動量と重み付け係数との対応を示した対応表を生成する。一例を挙げると、設定機能34dは、図3Cに示すように、FOVのサイズ「FOV8」と、「FOV8」よりも大きい「FOV10」とのそれぞれについて、移動量と重み付け係数との対応を示した対応表を生成する。
図3Cに示す移動量X2は「0.00」より大きい値であり、移動量Y2は移動量X2より大きい値であり、移動量Z2は移動量Y2より大きい値である。また、移動量「0.00」から移動量X2までの数値範囲については、重み付け係数「0.6」が設定される。なお、移動量「0.00」から移動量X2までの数値範囲は、ステントが明瞭な場合に対応する。また、移動量X2から移動量Y2までの数値範囲については、重み付け係数「0.3」が設定される。また、移動量Y2から移動量Z2までの数値範囲については、重み付け係数「0.1」が設定される。なお、移動量Y2から移動量Z2までの数値範囲は、移動量Y2以下の数値範囲よりもステントが不明瞭な場合に対応する。また、図3Cに示す移動量X2、移動量Y2及び移動量Z2の単位はメートルである。
同様に、図3Cに示す移動量X3は「0.00」より大きい値であり、移動量Y3は移動量X3より大きい値であり、移動量Z3は移動量Y3より大きい値である。また、移動量「0.00」から移動量X3までの数値範囲については、重み付け係数「0.6」が設定される。なお、移動量「0.00」から移動量X3までの数値範囲は、ステントが明瞭な場合に対応する。また、移動量X3から移動量Y3までの数値範囲については、重み付け係数「0.3」が設定される。また、移動量Y3から移動量Z3までの数値範囲については、重み付け係数「0.1」が設定される。なお、移動量Y3から移動量Z3までの数値範囲は、移動量Y3以下の数値範囲よりもステントが不明瞭な場合に対応する。また、図3Cに示す移動量X3、移動量Y3及び移動量Z3の単位はメートルである。
また、移動量X3は移動量X2より大きい値であり、移動量Y3は移動量Y2より大きい値であり、移動量Z3は移動量Z2より大きい値である。従って、図3Cにおいては、「FOV10」の場合よりも、「FOV8」の場合の方が重み付け係数は小さくなりやすい。即ち、図3Cにおいては、FOVのサイズが小さく、拡大率が大きいほど、重み付け係数は小さくなりやすい。
これは、拡大率が大きいほど、移動量に対応するX線画像データ上のピクセル数が大きくなることを考慮したものである。即ち、拡大率が大きいほどステントは不明瞭となりやすい。従って、設定機能34dは、移動量をメートルやインチ等の単位で算出した場合、図3Cの対応表を用いて、拡大率が大きいほど重み付け係数が小さくなるように、複数のX線画像データそれぞれの重み付け係数を設定する。
なお、図3Cの対応表においては、重み付け係数を固定値とし、各重み付け係数に対応する移動量を変化させているが、実施形態はこれに限定されるものではない。例えば、設定機能34dは、移動量を固定値とし、各移動量に対応する重み付け係数を変化させることで、「FOV8」及び「FOV10」のそれぞれについて対応表を生成してもよい。また、例えば、設定機能34dは、移動量及び重み付け係数の双方を変化させることで、「FOV8」及び「FOV10」のそれぞれについて対応表を生成してもよい。
また、移動量をピクセル数で算出した場合には、拡大率が大きいほど移動量も大きくなる。従って、移動量をピクセル数で算出した場合、設定機能34dは、図3Bの対応表を用いて、拡大率が大きいほど重み付け係数が小さくなるように、複数のX線画像データそれぞれの重み付け係数を設定することができる。
次に、フィルタ処理機能34eは、特徴点に基づいて、複数のX線画像データを位置合わせする。一例を挙げると、フィルタ処理機能34eは、ステントマーカーL1及びステントマーカーL2の画像内での位置が同じになるように、時系列の複数のX線画像データのそれぞれを補正する。
以下では、図4に示すように、位置合わせ後のX線画像データI11、X線画像データI12、X線画像データI13、X線画像データI14、X線画像データI15及びX線画像データI16を、それぞれ、X線画像データI21、X線画像データI22、X線画像データI23、X線画像データI24、X線画像データI25及びX線画像データI26と記載する。図4は、第1の実施形態に係る時系列の複数のX線画像データの一例を示す図である。なお、図4に示すように、X線画像データI11の重み付け係数C1は、位置合わせ後のX線画像データI21にも引き継がれる。即ち、X線画像データI21の重み付け係数は、重み付け係数C1である。同様に、X線画像データI22、X線画像データI23、X線画像データI24、X線画像データI25及びX線画像データI26の重み付け係数は、それぞれ、重み付け係数C2、重み付け係数C3、重み付け係数C4、重み付け係数C5及び重み付け係数C6である。
そして、フィルタ処理機能34eは、設定機能34dにより設定された重み付け係数に基づいて、複数のX線画像データを用いた重み付けフィルタ処理を行なう。例えば、フィルタ処理機能34eは、重み付けフィルタ処理を行なう旨の操作者からの指示に応じて、位置合わせ後の複数のX線画像データをメモリ33から読み出し、読み出した複数のX線画像データを用いて重み付けフィルタ処理を行なう。以下、フィルタ処理機能34eが行なう重み付けフィルタ処理について、図5を用いて説明する。図5は、第1の実施形態に係る重み付けフィルタ処理の一例を示す図である。
なお、図5においては、位置合わせ後のX線画像データI24を重み付けフィルタ処理の対象として説明する。また、図5においては、位置合わせ後の複数のX線画像データのうち、X線画像データI24の前に収集された3つのX線画像データ(X線画像データI21、X線画像データI22及びX線画像データI23)を用いて、X線画像データI24に対する重み付けフィルタ処理を行なう場合について説明する。
例えば、フィルタ処理機能34eは、X線画像データI24と、X線画像データI21、X線画像データI22及びX線画像データI23との間で、位置が対応する画素の画素値を、設定機能34dが設定した重み付け係数に基づいて加算処理する。一例を挙げると、フィルタ処理機能34eは、X線画像データI24の各画素の画素値に対し、X線画像データI21の各画素の画素値と重み付け係数C1との積、X線画像データI22の各画素の画素値と重み付け係数C2との積及びX線画像データI23の各画素の画素値と重み付け係数C3との積を加算処理する。以下では、図5に示すように、加算処理後のX線画像データI24を、処理済みX線画像データI34と記載する。また、位置が対応する画素の画素値を加算する処理については、リカーシブフィルタ処理とも記載する。
ここで、フィルタ処理機能34eは、X線画像データI24と処理済みX線画像データI34とで画素値に関する統計値(平均値、中央値等)が同じになるように、処理済みX線画像データI34を生成してもよい。一例を挙げると、フィルタ処理機能34eは、まず、X線画像データI21の各画素の画素値から、X線画像データI21における画素値の平均値を減算することで、X線画像データI21’を生成する。同様に、フィルタ処理機能34eは、X線画像データI22の各画素の画素値からX線画像データI22における画素値の平均値を減算することでX線画像データI22’を生成し、X線画像データI23の各画素の画素値からX線画像データI23における画素値の平均値を減算することでX線画像データI23’を生成する。そして、フィルタ処理機能34eは、X線画像データI24の各画素の画素値に対し、X線画像データI21’の各画素の画素値と重み付け係数C1との積、X線画像データI22’の各画素の画素値と重み付け係数C2との積及びX線画像データI23’の各画素の画素値と重み付け係数C3との積を加算処理することで、処理済みX線画像データI34を生成する。この場合、X線画像データI24と処理済みX線画像データI34とで、画素値の平均値は同じになり、画像全体での明るさが維持される。
また、フィルタ処理機能34eは、更に、重み付け係数C4に基づいて、処理済みX線画像データI34を生成してもよい。例えば、フィルタ処理機能34eは、X線画像データI24の各画素の画素値と重み付け係数C4との積に対し、X線画像データI21の各画素の画素値と重み付け係数C1との積、X線画像データI22の各画素の画素値と重み付け係数C2との積及びX線画像データI23の各画素の画素値と重み付け係数C3との積を加算処理することで、処理済みX線画像データI34を生成する。
ここで、重み付け係数C2は、重み付け係数C1及び重み付け係数C3よりも大きく設定されているため、処理済みX線画像データI34においては、X線画像データI21及びX線画像データI23よりも、X線画像データI22が強く反映されることとなる。また、図5に示すように、X線画像データI12と同様、X線画像データI22内のステントは明瞭なものとなっている。従って、フィルタ処理機能34eは、処理済みX線画像データI34においてX線画像データI22を強く反映させることで、ステントを明瞭に強調することができる。
また、X線画像データI21及びX線画像データI23内のステントは不明瞭なものとなっているものの、処理済みX線画像データI34において、X線画像データI21及びX線画像データI23の影響は小さい。従って、フィルタ処理機能34eは、X線画像データI21及びX線画像データI23を加算処理しても、処理済みX線画像データI34においてステントが不明瞭になることを防止することができる。
同様に、フィルタ処理機能34eは、X線画像データI25と、X線画像データI22、X線画像データI23及びX線画像データI24との間で、位置が対応する画素の画素値を、設定機能34dが設定した重み付け係数に基づいて加算処理し、処理済みX線画像データI35を生成する。ここで、X線画像データI22の重み付け係数C2は、X線画像データI23の重み付け係数C3及びX線画像データI24の重み付け係数C4よりも大きなものとなっている。即ち、処理済みX線画像データI35においては、X線画像データI22が強く反映され、X線画像データI23及びX線画像データI24の影響は小さなものとなる。
そして、フィルタ処理機能34eは、処理済みX線画像データI35において、ステントが明瞭なものとなっているX線画像データI22を強く反映させることで、ステントを明瞭に強調することができる。また、X線画像データI23及びX線画像データI24内のステントは不明瞭なものとなっているものの、処理済みX線画像データI35においてX線画像データI23及びX線画像データI24の影響は小さい。従って、フィルタ処理機能34eは、X線画像データI23及びX線画像データI24を加算処理しても、処理済みX線画像データI35においてステントが不明瞭になることを防止することができる。
同様に、フィルタ処理機能34eは、X線画像データI26と、X線画像データI23、X線画像データI24及びX線画像データI25との間で、位置が対応する画素の画素値を、設定機能34dが設定した重み付け係数に基づいて加算処理し、処理済みX線画像データI36を生成する。ここで、X線画像データI23、X線画像データI24及びX線画像データI25のそれぞれの重み付け係数はいずれも小さなものとなっている。
従って、処理済みX線画像データI36において、X線画像データI23、X線画像データI24及びX線画像データI25の影響は小さく、重み付けフィルタ処理の対象であるX線画像データI26が強く反映される。即ち、フィルタ処理機能34eは、ステントが明瞭なものとなっているX線画像データI26に対する重み付けフィルタ処理を行なう際には、X線画像データI26における明瞭なステントを残存させることで、処理済みX線画像データI36においてもステントを明瞭に強調することができる。
そして、表示制御機能34fは、処理済みX線画像データI34、処理済みX線画像データI35、処理済みX線画像データI36等の処理済みX線画像データを、ディスプレイ32に表示させる。ここで、表示制御機能34fは、処理済みX線画像データを静止画像として表示させる場合であってもよいし、動画像として表示させる場合であってもよい。
なお、これまで、重み付けフィルタ処理の対象のX線画像データと、対象のX線画像データよりも前に収集されたX線画像データとの間で、位置が対応する画素の画素値を加算処理する場合について説明した。例えば、図5においては、X線画像データI24と、X線画像データI24よりも前に収集されたX線画像データI21、X線画像データI22及びX線画像データI23との間で、位置が対応する画素の画素値を加算処理する場合について説明した。しかしながら、実施形態はこれに限定されるものではない。
例えば、フィルタ処理機能34eは、X線画像データI24と、X線画像データI24よりも後に収集されたX線画像データI25及びX線画像データI26との間で、位置が対応する画素の画素値を加算処理してもよい。また、例えば、フィルタ処理機能34eは、X線画像データI24と、X線画像データI24の前後に収集されたX線画像データI21、X線画像データI22、X線画像データI23、X線画像データI25及びX線画像データI26との間で、位置が対応する画素の画素値を加算処理してもよい。
また、これまで、ポストプロセス処理を行なう場合を例として説明した。即ち、上述した実施形態では、フィルタ処理機能34eが、操作者からの指示に応じて、取得機能34aがメモリ33に記憶させた複数のX線画像データを読み出し、読み出した複数のX線画像データを用いて重み付けフィルタ処理を行なう場合について説明した。しかしながら、実施形態はこれに限定されるものではない。
例えば、フィルタ処理機能34eは、X線診断装置10がX線画像データを収集するのに応じて、リアルタイムに重み付けフィルタ処理を行なってもよい。この場合、まず、取得機能34aは、X線診断装置10によってX線画像データが収集される度に、収集されたX線画像データを取得する。例えば、図3Aに示したX線画像データI11、X線画像データI12及びX線画像データI13を取得した後、X線診断装置10によってX線画像データI14が新たに収集された場合、取得機能34aは、新たに収集されたX線画像データI14を取得する。
なお、特定機能34b、算出機能34c及び設定機能34dは、取得機能34aがX線画像データを取得する度に、新たに取得されたX線画像データについて、重み付け係数の設定を行なう。例えば、図示しないX線画像データI10及び図3Aに示したX線画像データI11が既に取得されている場合、特定機能34bは、X線画像データI10及びX線画像データI11のそれぞれにおいて特徴点を特定し、算出機能34cは、X線画像データI10とX線画像データI11との間における特徴点の移動量D11及び移動量D12を算出し、設定機能34dは、X線画像データI11の重み付け係数C1を設定する。
その後、取得機能34aが新たにX線画像データI12を取得した場合、特定機能34bは、X線画像データI12において特徴点を特定し、算出機能34cは、X線画像データI11とX線画像データI12との間における特徴点の移動量D21及び移動量D22を算出し、設定機能34dは、X線画像データI12の重み付け係数C2を設定する。更に、取得機能34aが新たにX線画像データI13を取得した場合、特定機能34bは、X線画像データI13において特徴点を特定し、算出機能34cは、X線画像データI12とX線画像データI13との間における特徴点の移動量D31及び移動量D32を算出し、設定機能34dは、X線画像データI13の重み付け係数C3を設定する。
そして、フィルタ処理機能34eは、取得機能34aが新たに取得したX線画像データI14について位置合わせを行なうことでX線画像データI24を生成し、重み付け係数C1、重み付け係数C2及び重み付け係数C3に基づいてX線画像データI24に対する重み付けフィルタ処理を行なうことで、処理済みX線画像データI34を生成する。また、表示制御機能34fは、処理済みX線画像データI34をディスプレイ32に表示させる。また、特定機能34bは、X線画像データI14において特徴点を特定し、算出機能34cは、X線画像データI13とX線画像データI14との間における特徴点の移動量D41及び移動量D42を算出し、設定機能34dは、X線画像データI14の重み付け係数C4を設定する。
更に、X線診断装置10によってX線画像データI15が新たに収集された場合、取得機能34aは、新たに収集されたX線画像データI15を取得する。そして、フィルタ処理機能34eは、取得機能34aが新たに取得したX線画像データI15について位置合わせを行なうことでX線画像データI25を生成し、重み付け係数C2、重み付け係数C3及び重み付け係数C4に基づいてX線画像データI25に対する重み付けフィルタ処理を行なうことで、処理済みX線画像データI35を生成する。ここで、表示制御機能34fは、ディスプレイ32に表示させている処理済みX線画像データI34を、新たに生成された処理済みX線画像データI35に更新する。また、特定機能34bは、X線画像データI15において特徴点を特定し、算出機能34cは、X線画像データI14とX線画像データI15との間における特徴点の移動量D51及び移動量D52を算出し、設定機能34dは、X線画像データI15の重み付け係数C5を設定する。
更に、X線診断装置10によってX線画像データI16が新たに収集された場合、取得機能34aは、新たに収集されたX線画像データI16を取得し、フィルタ処理機能34eは、X線画像データI16について位置合わせを行なうことでX線画像データI26を生成し、X線画像データI26に対する重み付けフィルタ処理を行なうことで、処理済みX線画像データI36を生成する。ここで、表示制御機能34fは、ディスプレイ32に表示させている処理済みX線画像データI35を、新たに生成された処理済みX線画像データI36に更新する。即ち、表示制御機能34fは、処理済みX線画像データが生成される度に、ディスプレイ32における表示画像を、新たに生成された処理済みX線画像データに更新して表示させる。また、特定機能34bは、X線画像データI16において特徴点を特定し、算出機能34cは、X線画像データI15とX線画像データI16との間における特徴点の移動量D61及び移動量D62を算出し、設定機能34dは、X線画像データI16の重み付け係数C6を設定する。
次に、X線診断装置10による処理の手順の一例を、図6を用いて説明する。図6は、第1の実施形態に係る医用画像処理装置30の処理の一連の流れを説明するためのフローチャートである。ステップS101及びステップS106は、取得機能34aに対応するステップである。ステップS102は、特定機能34bに対応するステップである。ステップS103は、算出機能34cに対応するステップである。ステップS104は、設定機能34dに対応するステップである。ステップS105は、フィルタ処理機能34eに対応するステップである。
まず、処理回路34は、時系列の複数のX線画像データを取得する(ステップS101)。次に、処理回路34は、取得した複数のX線画像データのそれぞれにおいて、ステントマーカー等の特徴点を特定し(ステップS102)、複数のX線画像データ間における特徴点の移動量を算出する(ステップS103)。次に、処理回路34は、算出した移動量に基づいて、複数のX線画像データのそれぞれに対して重み付け係数を設定する(ステップS104)。
そして、処理回路34は、設定した重み付け係数に基づいて、複数のX線画像データを用いた重み付けフィルタ処理を行なうことで、処理済みX線画像データを生成する(ステップS105)。ここで、処理回路34は、更にX線画像データを取得したか否かを判定する(ステップS106)。更にX線画像データを取得した場合(ステップS106肯定)、処理回路34は、再度ステップS102に移行する。一方で、X線画像データを取得しなかった場合(ステップS106否定)、処理回路34は処理を終了する。
上述したように、第1の実施形態によれば、取得機能34aは、時系列の複数のX線画像データを取得する。特定機能34bは、複数のX線画像データのそれぞれにおいて特徴点を特定する。算出機能34cは、特定された特徴点の複数のX線画像データ間における移動量を算出する。設定機能34dは、算出された移動量に基づいて、複数のX線画像データのそれぞれに対して重み付け係数を設定する。フィルタ処理機能34eは、設定された重み付け係数に基づいて、複数のX線画像データを用いた重み付けフィルタ処理を行なう。従って、第1の実施形態に係る医用画像処理装置30は、ステントを明瞭に強調したX線画像データを生成することができる。
なお、図3Aにおいては、ステントマーカー等の特徴点が、被検体Pの心臓の心拍動に起因して周期的に動くものとして説明した。しかしながら、特徴点は、更に、被検体Pの体動等の外乱によって突発的に動く場合がある。このような場合であっても、第1の実施形態に係る医用画像処理装置30は、結果的に生じた特徴点の移動量(例えば、心拍動による動きと外乱による動きとの和)に基づいて重み付け係数を設定し、設定された重み付け係数に基づいて重み付けフィルタ処理を行なうことで、ステントを明瞭に強調したX線画像データを生成することができる。
また、第1の実施形態によれば、設定機能34dは、前のX線画像データとの間における移動量が小さいほど重み付け係数が大きくなるように、複数のX線画像データのそれぞれに対して重み付け係数を設定する。従って、第1の実施形態に係る医用画像処理装置30は、複数のX線画像データの中にステントが不明瞭なX線画像データが含まれている場合でも、不明瞭なX線画像データの影響を低減し、ステントを明瞭に強調したX線画像データを生成することができる。
(第2の実施形態)
上述した第1の実施形態では、特徴点の移動量に基づく重み付け係数を用いて、重み付けフィルタ処理を行なう場合について説明した。これに対して、第2の実施形態では、特徴点の移動量に基づく重み付け係数に加え、複数のX線画像データのそれぞれが収集された収集時間に応じた重み付け係数を用いて、重み付けフィルタ処理を行なう場合について説明する。
第2の実施形態に係る医用画像処理装置30は、図1に示した医用画像処理装置30と同様の構成を有し、設定機能34d及びフィルタ処理機能34eによる処理の一部が相違する。そこで、第1の実施形態において説明した構成と同様の構成を有する点については、図1と同一の符号を付し、説明を省略する。
まず、取得機能34aは、X線診断装置10により収集された時系列の複数のX線画像データを収集する。例えば、取得機能34aは、X線診断装置10によってX線画像データが収集される度に、新たに収集されたX線画像データを収集する。次に、特定機能34bは、取得機能34aが取得した複数のX線画像データのそれぞれにおいて特徴点を特定する。次に、算出機能34cは、複数のX線画像データ間における特徴点の移動量を算出する。次に、設定機能34dは、特徴点の移動量に基づいて、複数のX線画像データのそれぞれに対して重み付け係数を設定する。以下では、設定機能34dが、特徴点の移動量に基づいて設定する重み付け係数を、第1の重み付け係数と記載する。
また、フィルタ処理機能34eは、特徴点に基づいて、複数のX線画像データを位置合わせする。以下では、位置合わせ後の複数のX線画像データの例として、図7Aに示すX線画像データI41、X線画像データI42、X線画像データI43及びX線画像データI44について説明する。図7Aは、第2の実施形態に係る時系列の複数のX線画像データの一例を示す図である。
また、設定機能34dは、時系列の複数のX線画像データのそれぞれの収集時間を取得する。例えば、設定機能34dは、付帯情報(タグ)を参照することにより、複数のX線画像データのそれぞれの収集時間を取得する。次に、設定機能34dは、取得した収集時間に応じて、重み付け係数を設定する。以下では、設定機能34dが、収集時間に応じて設定する重み付け係数を、第2の重み付け係数と記載する。
ここで、図7Aを用いて、X線画像データI44に対して重み付けフィルタ処理を行なう場合について説明する。図7Aに示すように、設定機能34dは、特徴点の移動量に基づいて、X線画像データI41に対して第1の重み付け係数C111を設定し、X線画像データI42に対して第1の重み付け係数C121を設定し、X線画像データI43に対して第1の重み付け係数C131を設定する。
また、設定機能34dは、各X線画像データの収集時間に応じて、X線画像データI41に対して第2の重み付け係数C211を設定し、X線画像データI42に対して第2の重み付け係数C221を設定し、X線画像データI43に対して第2の重み付け係数C231を設定する。ここで、設定機能34dは、例えば、重み付けフィルタ処理の対象であるX線画像データI44と収集時間が近いほど第2の重み付け係数が大きくなるように、第2の重み付け係数C211、第2の重み付け係数C221及び第2の重み付け係数C231を設定する。この場合、X線画像データI41、X線画像データI42及びX線画像データI43のそれぞれの第2の重み付け係数の大きさは、「第2の重み付け係数C231>第2の重み付け係数C221>第2の重み付け係数C211」となる。
次に、フィルタ処理機能34eは、第1の重み付け係数と第2の重み付け係数とに基づく第3の重み付け係数を生成する。例えば、フィルタ処理機能34eは、第1の重み付け係数と第2の重み付け係数とを乗算、加算等することにより、第3の重み付け係数を生成する。一例を挙げると、フィルタ処理機能34eは、図7Aに示すように、第1の重み付け係数C111と第2の重み付け係数C211とに基づく第3の重み付け係数C311、第1の重み付け係数C121と第2の重み付け係数C221とに基づく第3の重み付け係数C321、及び、第1の重み付け係数C131と第2の重み付け係数C231とに基づく第3の重み付け係数C331をそれぞれ算出する。
次に、フィルタ処理機能34eは、算出した第3の重み付け係数を用いて、重み付けフィルタ処理を行なう。例えば、フィルタ処理機能34eは、X線画像データI44の各画素の画素値に対し、X線画像データI41の各画素の画素値と第3の重み付け係数C311との積、X線画像データI42の各画素の画素値と第3の重み付け係数C321との積、及び、X線画像データI43の各画素の画素値と第3の重み付け係数C331との積を加算処理することで、処理済みX線画像データI54を生成する。そして、表示制御機能34fは、生成された処理済みX線画像データI54をディスプレイ32に表示させる。
ここで、図7Bに示すように、X線診断装置10が新たにX線画像データI45を収集した場合、取得機能34aは、新たに収集されたX線画像データI45を取得し、フィルタ処理機能34eは、取得されたX線画像データI45に対して重み付けフィルタ処理を行なう。なお、図7Bは、第2の実施形態に係る時系列の複数のX線画像データの一例を示す図である。ここで、設定機能34dは、図7Bに示すように、特徴点の移動量に基づいて、X線画像データI44に対して第1の重み付け係数C141を設定する。
また、設定機能34dは、各X線画像データの収集時間に応じて、X線画像データI42に対して第2の重み付け係数C222を設定し、X線画像データI43に対して第2の重み付け係数C232を設定し、X線画像データI44に対して第2の重み付け係数C242を設定する。ここで、設定機能34dは、例えば、重み付けフィルタ処理の対象であるX線画像データI45と収集時間が近いほど第2の重み付け係数が大きくなるように、第2の重み付け係数C222、第2の重み付け係数C232及び第2の重み付け係数C242を設定する。この場合、X線画像データI42、X線画像データI43及びX線画像データI44のそれぞれの第2の重み付け係数の大きさは、「第2の重み付け係数C242>第2の重み付け係数C232>第2の重み付け係数C222」となる。
ここで、第2の重み付け係数C222及び第2の重み付け係数C232は、第2の重み付け係数C221及び第2の重み付け係数C231と異なる値であってもよい。即ち、設定機能34dは、第2の重み付け係数を、X線画像データごと固有に設定するのではなく、重み付けフィルタ処理の対象がいずれのX線画像データであるのかに応じて順次変更する場合であってもよい。
次に、フィルタ処理機能34eは、第1の重み付け係数と第2の重み付け係数とに基づく第3の重み付け係数を生成する。例えば、フィルタ処理機能34eは、図7Bに示すように、第1の重み付け係数C121と第2の重み付け係数C222とに基づく第3の重み付け係数C322、第1の重み付け係数C131と第2の重み付け係数C232とに基づく第3の重み付け係数C332、及び、第1の重み付け係数C141と第2の重み付け係数C242とに基づく第3の重み付け係数C342をそれぞれ算出する。
次に、フィルタ処理機能34eは、X線画像データI45の各画素の画素値に対し、X線画像データI42の各画素の画素値と第3の重み付け係数C322との積、X線画像データI43の各画素の画素値と第3の重み付け係数C332との積、及び、X線画像データI44の各画素の画素値と第3の重み付け係数C342との積を加算処理することで、処理済みX線画像データI55を生成する。そして、表示制御機能34fは、ディスプレイ32における表示画像を、処理済みX線画像データI54から、新たに生成された処理済みX線画像データI55に更新して表示させる。
ここで、図7Cに示すように、X線診断装置10が新たにX線画像データI46を収集した場合、取得機能34aは、新たに収集されたX線画像データI46を取得し、フィルタ処理機能34eは、取得されたX線画像データI46に対して重み付けフィルタ処理を行なう。なお、図7Cは、第2の実施形態に係る時系列の複数のX線画像データの一例を示す図である。ここで、設定機能34dは、図7Cに示すように、特徴点の移動量に基づいて、X線画像データI45に対して第1の重み付け係数C151を設定する。
また、設定機能34dは、各X線画像データの収集時間に応じて、X線画像データI43に対して第2の重み付け係数C233を設定し、X線画像データI44に対して第2の重み付け係数C243を設定し、X線画像データI45に対して第2の重み付け係数C253を設定する。ここで、設定機能34dは、例えば、重み付けフィルタ処理の対象であるX線画像データI46と収集時間が近いほど第2の重み付け係数が大きくなるように、第2の重み付け係数C233、第2の重み付け係数C243及び第2の重み付け係数C253を設定する。この場合、X線画像データI43、X線画像データI44及びX線画像データI45のそれぞれの第2の重み付け係数の大きさは、「第2の重み付け係数C253>第2の重み付け係数C243>第2の重み付け係数C233」となる。ここで、第2の重み付け係数C233は、第2の重み付け係数C231や第2の重み付け係数C232と異なる値であってもよい。また、第2の重み付け係数C243は、第2の重み付け係数C242と異なる値であってもよい。
次に、フィルタ処理機能34eは、第1の重み付け係数と第2の重み付け係数とに基づく第3の重み付け係数を生成する。例えば、フィルタ処理機能34eは、図7Cに示すように、第1の重み付け係数C131と第2の重み付け係数C233とに基づく第3の重み付け係数C333、第1の重み付け係数C141と第2の重み付け係数C243とに基づく第3の重み付け係数C343、及び、第1の重み付け係数C151と第2の重み付け係数C253とに基づく第3の重み付け係数C353をそれぞれ算出する。
次に、フィルタ処理機能34eは、X線画像データI46の各画素の画素値に対し、X線画像データI43の各画素の画素値と第3の重み付け係数C333との積、X線画像データI44の各画素の画素値と第3の重み付け係数C343との積、及び、X線画像データI45の各画素の画素値と第3の重み付け係数C353との積を加算処理することで、処理済みX線画像データI56を生成する。そして、表示制御機能34fは、ディスプレイ32における表示画像を、処理済みX線画像データI55から、新たに生成された処理済みX線画像データI56に更新して表示させる。
なお、図7A、図7B及び図7Cに示した複数のX線画像データが一定の間隔で収集されたものである場合、設定機能34dは、第2の重み付け係数C211、第2の重み付け係数C222及び第2の重み付け係数C233を同じ値に設定し、第2の重み付け係数C221、第2の重み付け係数C232及び第2の重み付け係数C243を同じ値に設定し、第2の重み付け係数C231、第2の重み付け係数C242及び第2の重み付け係数C253を同じ値に設定してもよい。即ち、設定機能34dは、各X線画像データの第2の重み付け係数として、重み付けフィルタ処理の対象となっているX線画像データとの間のフレーム数ごとに予め設定された固定値を設定してもよい。
上述したように、第2の実施形態に係るフィルタ処理機能34eは、特徴点の移動量に基づいて設定された第1の重み付け係数と、複数のX線画像データのそれぞれが収集された収集時間に応じた第2の重み付け係数とに基づく第3の重み付け係数を用いて、重み付けフィルタ処理を行なう。従って、第2の実施形態に係る医用画像処理装置30は、X線画像データの収集時間を考慮しつつ、ステントを明瞭に強調したX線画像データを生成することができる。
具体的には、第3の重み付け係数を用いて重み付けフィルタ処理を行なう場合、生成される処理済みX線画像データにおいては、前のX線画像データとの間における移動量が小さく、第1の重み付け係数が大きく設定されるX線画像データと、重み付けフィルタ処理の対象となっているX線画像データと収集時間が近く、第2の重み付け係数が大きく設定されるX線画像データとが強く反映される。従って、フィルタ処理機能34eは、処理済みX線画像データにおいて、移動量が小さいX線画像データを強く反映させることでステントを明瞭に強調するとともに、収集時間が近いX線画像データを強く反映させることでより新しい情報を優先的に強調することができる。
(第3の実施形態)
上述した第1~第2の実施形態では、重み付けフィルタ処理として、X線画像データ間で位置が対応する画素の画素値を、第1の重み付け係数又は第3の重み付け係数に基づいて加算処理する場合について説明した。即ち、上述した実施形態では、重み付けフィルタ処理として、リカーシブフィルタ処理について説明した。これに対して、第3の実施形態では、リカーシブフィルタ処理以外の重み付けフィルタ処理を行なう場合について説明する。
第3の実施形態に係る医用画像処理装置30は、図1に示した医用画像処理装置30と同様の構成を有し、設定機能34d及びフィルタ処理機能34eによる処理の一部が相違する。そこで、第1の実施形態において説明した構成と同様の構成を有する点については、図1と同一の符号を付し、説明を省略する。
以下、図3Aに示したX線画像データI11、X線画像データI12、X線画像データI13及びX線画像データI14を含む時系列の複数のX線画像データを取得機能34aが取得し、X線画像データI14に対する重み付けフィルタ処理を行なう場合において、図8を用いて説明する。図8は、第3の実施形態に係る重み付けフィルタ処理の一例を示す図である。
まず、特定機能34bは、複数のX線画像データのそれぞれにおいて特徴点を特定し、算出機能34cは、複数のX線画像データ間における特徴点の移動量を算出する。次に、設定機能34dは、算出された移動量に基づいて、X線画像データI11に対して重み付け係数C1を設定し、X線画像データI12に対して重み付け係数C2を設定し、X線画像データI13に対して重み付け係数C3を設定する。
また、フィルタ処理機能34eは、X線画像データI14における画素と、X線画像データI11、X線画像データI12及びX線画像データI13における画素との間で、類似度を算出する。例えば、フィルタ処理機能34eは、X線画像データI14における第1の画素と、X線画像データI11、X線画像データI12及びX線画像データI13における画素(第2の画素)との類似度を算出する。そして、フィルタ処理機能34eは、第1の画素と第2の画素との画素値を、類似度及び重み付け係数に基づいて加算処理することにより、処理済みX線画像データI64を生成する。
具体的には、フィルタ処理機能34eは、X線画像データI14における第1の画素とX線画像データI11における第2の画素との画素値を、類似度及び重み付け係数C1に基づいて加算処理する。例えば、フィルタ処理機能34eは、第1の画素の画素値に対し、第2の画素の画素値と類似度と重み付け係数C1との積を加算処理する。同様に、フィルタ処理機能34eは、X線画像データI14における第1の画素とX線画像データI12における第2の画素との画素値を、類似度及び重み付け係数C2に基づいて加算処理する。また、フィルタ処理機能34eは、X線画像データI14における第1の画素とX線画像データI13における第2の画素との画素値を、類似度及び重み付け係数C3に基づいて加算処理する。
なお、第2の画素には、X線画像データI14における画素を含むこととしてもよい。即ち、フィルタ処理機能34eは、更に、X線画像データI14における第1の画素と、X線画像データI14における第2の画素との画素値を、類似度に基づいて加算処理してもよい。また、フィルタ処理機能34eは、特徴点の移動量に基づく重み付け係数(第1の重み付け係数)に代えて、第1の重み付け係数と第2の重み付け係数とに基づく第3の重み付け係数を用いてもよい。また、上述したように、フィルタ処理機能34eは、特徴点に基づく複数のX線画像データの位置合わせを行わない場合であってもよい。
上述したように、第3の実施形態に係るフィルタ処理機能34eは、重み付けフィルタ処理として、第1の画素と第2の画素との類似度を算出し、第1の画素と第2の画素との画素値を、類似度及び重み付け係数に基づいて加算処理する。従って、第3の実施形態に係る医用画像処理装置30は、ノイズを低減した上でステントを明瞭に強調したX線画像データを生成することができる。
(第4の実施形態)
さて、これまで第1~第3の実施形態について説明したが、上述した第1~第3の実施形態以外にも、種々の異なる形態にて実施されてよいものである。
上述した実施形態では、前のX線画像データとの間における移動量が小さいほど重み付け係数(第1の重み付け係数)が大きくなるように、複数のX線画像データのそれぞれに対して重み付け係数を設定する場合について説明した。しかしながら、実施形態はこれに限定されるものではない。
例えば、設定機能34dは、特徴点の移動量が一周期中に有する複数の極小値のうち、いずれか一つの極小値に対応するX線画像データに対して、大きな重み付け係数を設定する。ここで、特徴点の移動量が一周期中に有する極小値とは、例えば、図3Aに示したX線画像データI12の前における特徴点の移動量D21及び移動量D22や、X線画像データI16の前における特徴点の移動量D61及び移動量D62等である。即ち、心臓について収集された時系列の複数のX線画像データの場合、拡張期及び収縮期において、それぞれ、特徴点の移動量が極小値となる。
ここで、拡張期に対応するX線画像データと収縮期に対応するX線画像データとでは、ステントマーカー及びステントの位置や角度が変化することにより、ステントマーカーの間隔やステントの長さが異なって見える場合がある。そこで、設定機能34dは、拡張期及び収縮期のいずれか一つに対応するX線画像データに対して大きな重み付け係数を設定することにより、フィルタ処理機能34eによって生成される複数の処理済みX線画像データにおいてステントマーカーの間隔やステントの長さを統一し、処理済みX線画像データ間でステントマーカーの間隔やステントの長さが伸び縮みするような見え方を防止することができる。
また、上述した実施形態では、医療デバイスの一例として、被検体Pの冠動脈内に留置されるステントについて説明した。しかしながら、医療デバイスはステントに限られるものではなく、医用画像処理装置30は、被検体Pの体内に挿入される任意の医療デバイスについて、明瞭に強調したX線画像データを生成することができる。
例えば、上述した実施形態は、ガイドワイヤについても同様に適用可能である。一例を挙げると、ガイドワイヤに複数のマーカーが付されている場合、特定機能34bは、ガイドワイヤについて収集された複数のX線画像データのそれぞれにおいて複数の特徴点を特定する。また、算出機能34cは、特定された特徴点について移動量を算出する。また、設定機能34dは、算出された移動量に基づいて、複数のX線画像データのそれぞれに対して重み付け係数を設定する。また、フィルタ処理機能34eは、特徴点に基づいて、複数のX線画像データを位置合わせする。
別の例を挙げると、ガイドワイヤに1つのマーカーが付されている場合、特定機能34bは、ガイドワイヤについて収集された複数のX線画像データのそれぞれにおいて1つの特徴点を特定する。また、算出機能34cは、特定された特徴点について移動量を算出する。また、設定機能34dは、算出された移動量に基づいて、複数のX線画像データのそれぞれに対して重み付け係数を設定する。また、フィルタ処理機能34eは、特徴点に基づいて、複数のX線画像データを位置合わせする。例えば、フィルタ処理機能34eは、複数のX線画像データのそれぞれにおいて、ガイドワイヤを示す線状信号を検出する。次に、フィルタ処理機能34eは、特定機能34bが特定した特徴点の位置と線状信号の角度とに基づいて、複数のX線画像データを位置合わせする。
そして、フィルタ処理機能34eは、算出機能34cが算出した移動量に基づいて、位置合わせ後の複数のX線画像データを用いた重み付けフィルタ処理を実行する。これにより、医用画像処理装置30は、被検体Pの体内に挿入されたガイドワイヤについて、明瞭に強調したX線画像データを生成することができる。
また、例えば、上述した実施形態は、アテロームを除去する手技にて使用されるロータブレータ(Rotational Coronary Atherectomy)についても同様に適用可能である。ロータブレータは、ダイヤモンド等を使用したドリルを先端に有するデバイスである。ロータブレータを用いた手技においては、ロータブレータを血管内に挿入し、アテロームをドリルで削って除去することが可能である。
一例を挙げると、ロータブレータに複数のマーカーが付されている場合、特定機能34bは、ロータブレータについて収集された複数のX線画像データのそれぞれにおいて複数の特徴点を特定する。また、算出機能34cは、特定された特徴点について移動量を算出する。また、設定機能34dは、算出された移動量に基づいて、複数のX線画像データのそれぞれに対して重み付け係数を設定する。また、フィルタ処理機能34eは、特徴点に基づいて、複数のX線画像データを位置合わせする。そして、フィルタ処理機能34eは、算出機能34cが算出した移動量に基づいて、位置合わせ後の複数のX線画像データを用いた重み付けフィルタ処理を実行する。これにより、医用画像処理装置30は、被検体Pの体内に挿入されたロータブレータについて、明瞭に強調したX線画像データを生成することができる。
また、上述した実施形態は、複数の医療デバイスについても同様に適用可能である。即ち、医用画像処理装置30は、複数の医療デバイスについて、明瞭に強調したX線画像データを生成することができる。
例えば、慢性完全閉塞病変(Chronic Total Occlusion:CTO)に対する手技においては、血管を閉塞させているプラークを貫通させるため、2つのガイドワイヤが使用される場合がある。具体的には、操作者は、被検体Pにおける同一の血管に対して逆方向から2つのガイドワイヤを挿入する。そして、操作者は、ガイドワイヤの先端をプラークに差し込むことで、プラークを貫通させる。なお、ここでは一例として、2つのガイドワイヤがそれぞれマーカーを1つずつ有するものとして説明する。
一例を挙げると、特定機能34bは、2つのガイドワイヤについて収集された複数のX線画像データのそれぞれにおいて、各ガイドワイヤに付されたマーカーに対応する2つの特徴点を特定する。また、算出機能34cは、特定された特徴点について移動量を算出する。また、設定機能34dは、算出された移動量に基づいて、複数のX線画像データのそれぞれに対して重み付け係数を設定する。また、フィルタ処理機能34eは、特徴点に基づいて、複数のX線画像データを位置合わせする。そして、フィルタ処理機能34eは、算出機能34cが算出した移動量に基づいて、位置合わせ後の複数のX線画像データを用いた重み付けフィルタ処理を実行する。これにより、医用画像処理装置30は、被検体Pの体内に挿入された2つのガイドワイヤについて、明瞭に強調したX線画像データを生成することができる。更に、医用画像処理装置30は、2つのガイドワイヤに挟まれた領域について、明瞭に強調したX線画像データを生成することができる。即ち、医用画像処理装置30は、プラークの視認性を向上させ、プラークを貫通させる手技を容易にすることができる。
なお、特定機能34bが特定する特徴点は、マーカーに限定されるものではない。例えば、特定機能34bは、ガイドワイヤの先端を特徴点として特定してもよい。また、例えば、特定機能34bは、ロータブレータにおけるドリルの先端を特徴点として特定してもよい。
また、上述した実施形態では、被検体Pの心臓について収集されたX線画像データについて説明した。しかしながら、医用画像処理装置30は、心臓のように周期的に動く部位について収集されたX線画像データに限らず、任意の部位について収集されたX線画像データに対して重み付けフィルタ処理を行ない、医療デバイスを明瞭に強調した医用画像を生成することができる。
また、上述した実施形態では、特徴点の移動量として、X線画像データ間における全移動量(フレーム間の移動量)を用いる場合について説明した。しかしながら、実施形態はこれに限定されるものではない。例えば、算出機能34cは、特徴点の移動量として、X線画像データ間における単位時間当たりの移動量(移動速度)を算出してもよい。この場合、設定機能34dは、特徴点の移動速度に基づいて、各X線画像データの重み付け係数を設定する。例えば、算出機能34cは、X線画像データの収集間隔が一定である場合、特徴点の移動量として、フレーム間の移動量を算出する。一方で、X線画像データの収集間隔が一定でない場合、算出機能34cは、フレーム間の移動量をフレーム間隔で除算することにより、特徴点の移動量として移動速度を算出する。
また、上述した実施形態では、医用画像処理装置30が、特定機能34b、算出機能34c、設定機能34d及びフィルタ処理機能34eを有する処理回路34を備える場合について説明した。しかしながら、実施形態はこれに限定されるものではない。例えば、X線診断装置10における処理回路112が、特定機能34b、算出機能34c、設定機能34d及びフィルタ処理機能34eに対応した機能を有する場合であってもよい。
この場合、まず、処理回路112における収集機能112bは、時系列の複数のX線画像データを収集する。次に、処理回路112における特定機能は、収集機能112bが収集した複数のX線画像データのそれぞれにおいて特徴点を特定する。次に、処理回路112における算出機能は、複数のX線画像データ間における特徴点の移動量を算出し、処理回路112における設定機能は、特徴点の移動量に基づいて、複数のX線画像データのそれぞれに対して重み付け係数を設定する。次に、処理回路112におけるフィルタ処理機能は、重み付け係数に基づいて、複数のX線画像データを用いた重み付けフィルタ処理を行なうことで、処理済みX線画像データを生成する。そして、表示制御機能112cは、生成された処理済みX線画像データをディスプレイ110に表示させる。
また、上述した実施形態では、X線診断装置10によって収集されたX線画像データについて説明した。しかしながら、実施形態はこれに限定されるものではなく、X線CT(Computed Tomography)装置や超音波診断装置、磁気共鳴イメージング(MRI:Magnetic Resonance Imaging)装置等、各種モダリティによって取得された医用画像データについても同様に適用することができる。
上述した実施形態に係る各装置の各構成要素は機能概念的なものであり、必ずしも物理的に図示の如く構成されていることを要しない。即ち、各装置の分散・統合の具体的形態は図示のものに限られず、その全部又は一部を、各種の負荷や使用状況などに応じて、任意の単位で機能的又は物理的に分散・統合して構成することができる。更に、各装置にて行われる各処理機能は、その全部又は任意の一部が、CPU及び当該CPUにて解析実行されるプログラムにて実現され、或いは、ワイヤードロジックによるハードウェアとして実現されうる。
また、上述した実施形態で説明した医用画像処理方法は、予め用意された医用画像処理プログラムをパーソナルコンピュータやワークステーション等のコンピュータで実行することによって実現することができる。この医用画像処理プログラムは、インターネット等のネットワークを介して配布することができる。また、この医用画像処理プログラムは、ハードディスク、フレキシブルディスク(FD)、CD-ROM、MO、DVD等のコンピュータで読み取り可能な非一過性の記録媒体に記録され、コンピュータによって記録媒体から読み出されることによって実行することもできる。
以上説明した少なくとも一つの実施形態によれば、医療デバイスを明瞭に強調した医用画像を生成することができる。
本発明のいくつかの実施形態を説明したが、これらの実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。これら実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行なうことができる。これら実施形態やその変形は、発明の範囲や要旨に含まれると同様に、特許請求の範囲に記載された発明とその均等の範囲に含まれるものである。