以下、本開示の実施形態について、図面を用いて説明する。
(本開示の一形態を得るに至った経緯)
脾臓や肝臓の周辺では、臓器(例えば、肝臓、脾臓)と臓器に接続される血管(例えば肝動脈、肝静脈、肝門脈、脾動脈、脾静脈)とでは、同じ臓器系(器官)であっても、器官の部分によって、又は器官を形成する物質に応じて、明瞭さや不明瞭さ(曖昧さ)が異なる。例えば、臓器内に血管がある場合や毛細血管の領域では、複雑に血管が入り組むことで明瞭に表現することが困難である。そのため、レイキャスティングを行うことで視認性が良くなる。また、比較的太い血管では、血管壁を明瞭に表現することが可能である。そのため、サーフィスレンダリングを行うことで視認性が良くなる。
特許文献1の画像処理装置は、同一の器官の同一の部分について、ボリュームレンダリング及びサーフィスレンダリングにより医用画像を生成する。しかし、ボリュームレンダリングを用いる領域とサーフィスレンダリングを用いる領域とを区分することを想定していない。そのため、同一の器官において異なる特性を有する部分について、この特性に応じたレンダリングを行うことが困難である。また、ボリュームレンダリング画像での指定位置がボリュームレンダリング画像に対する奥行方向のどの位置に相当するかを考慮しているが、物体の描画精度等の画質の改善は考慮されていない。また、ボリュームレンダリング画像とサーフィスレンダリング画像を独立して作成してから一様に合成を行っている。
以下、連続的に明瞭な部分と不明瞭な部分との間を遷移する物体の描画精度を向上できる医用画像処理装置、医用画像処理方法、及び医用画像処理プログラムについて説明する。
(第1の実施形態)
本実施形態では、器官は、骨、血管等の臓器や、肺葉、心室などの臓器の一部、腫瘍、嚢胞などの病変組織、その他の器官、を含んでもよい。また、器官は、胆嚢と肝臓の組み合わせ、左右の肺のような複数の臓器の組み合わせ、を含んでもよい。また、器官は、無数の肺胞など、それぞれの微小要素が必ずしも空間上で連続していない器官を含んでもよい。また、器官は、臓器とその臓器に接続される血管とを含んでもよい。また、臓器に対してその臓器に入り込んでいる血管を除去したものであってもよい。また、器官は、血管であっても良い。また、器官は、気管支であってもよい。また、器官は、消化器官であってもよい。
図1は、第1の実施形態における医用画像処理装置100の構成例を示すブロック図である。医用画像処理装置100は、ポート110、ユーザインタフェース(UI:User Interface)120、ディスプレイ130、プロセッサ140、及びメモリ150を備える。
医用画像処理装置100には、CT装置200が接続される。医用画像処理装置100は、CT装置200からボリュームデータを取得し、取得されたボリュームデータに対して処理を行う。医用画像処理装置100は、PC(Personal Computer)とPCに搭載されたソフトウェアにより構成されてもよい。また、医用画像処理装置100は、CT装置200の付属装置として提供されてもよい。
CT装置200は、生体へX線を照射し、体内の組織によるX線の吸収の違いを利用して、画像(CT画像)を撮像する。生体としては人体等が挙げられる。生体は、被写体の一例である。
CT画像は、時系列に複数撮像されてもよい。CT装置200は、生体内部の任意の箇所の情報を含むボリュームデータを生成する。生体内部の任意の箇所は、各種臓器(例えば心臓、腎臓)を含んでもよい。CT画像が撮像されることにより、CT画像における各画素(ボクセル)の画素値(CT値)が得られる。CT装置200は、CT画像としてのボリュームデータを医用画像処理装置100へ、有線回線又は無線回線を介して送信する。
CT装置200は、連続的に撮像することで3次元のボリュームデータを複数取得し、動画を生成することも可能である。複数の3次元画像による動画のデータは、4D(4次元)データとも称される。
医用画像処理装置100内のポート110は、通信ポートや外部装置接続ポートを含み、CT画像から得られたボリュームデータを取得する。取得されたボリュームデータは、直ぐにプロセッサ140に送られて各種処理されてもよいし、メモリ150において保管された後、必要時にプロセッサ140へ送られて各種処理されてもよい。
UI120は、タッチパネル、ポインティングデバイス、キーボード、又はマイクロホンを含んでもよい。UI120は、医用画像処理装置100のユーザから、任意の入力操作を受け付ける。ユーザは、医師、放射線技師、又はその他医療従事者(Paramedic Staff)を含んでもよい。
UI120は、ボリュームデータにおける関心領域(ROI:Region of Interest)の指定や輝度条件の設定等の操作を受け付ける。関心領域は、病変や組織(例えば、血管、臓器、器官、骨)の領域を含んでもよい。
ディスプレイ130は、LCD(Liquid Crystal Display)を含んでもよく、各種情報を表示する。各種情報は、ボリュームデータから得られる3次元画像を含む。3次元画像は、ボリュームレンダリング画像、サーフェスレンダリング画像、及びMPR(Muti Planar Reconstruction)画像を含んでもよい。
メモリ150は、各種ROM(Read Only Memory)やRAM(Random Access Memory)の一次記憶装置を含む。メモリ150は、HDD(Hard Disk Drive)やSSD(Solid State Drive)の二次記憶装置を含んでもよい。メモリ150は、USBメモリやSDカードの三次記憶装置を含んでもよい。メモリ150は、各種情報やプログラムを記憶する。各種情報は、ポート110により取得されたボリュームデータ、プロセッサ140により生成された画像、プロセッサ140により設定された設定情報、を含んでもよい。
プロセッサ140は、CPU(Central Processing Unit)、DSP(Digital Signal Processor)、又はGPU(Graphics Processing Unit)を含んでもよい。
プロセッサ140は、メモリ150に記憶された医用画像処理プログラムを実行することにより、各種処理や制御を行う。また、プロセッサ140は、医用画像処理装置100の各部を統括する。
プロセッサ140は、ボリュームデータにおいて、セグメンテーション処理を行ってよい。この場合、UI120がユーザからの指示を受け付け、指示の情報がプロセッサ140に送られる。プロセッサ140は、指示の情報に基づいて、公知の方法により、ボリュームデータから、セグメンテーション処理を行い、関心領域を抽出(segment)してもよい。また、ユーザからの詳細な指示により、手動で関心領域を設定(set)しても良い。また、観察対象の器官が予め定められている場合、プロセッサ140は、ユーザ指示なしでボリュームデータから、セグメンテーション処理を行い、観察対象の器官を含む関心領域を抽出してもよい。
プロセッサ140は、ポート110により取得されたボリュームデータに基づいて、3次元画像を生成する。プロセッサ140は、ポート110により取得されたボリュームデータから、指定された領域に基づいて、3次元画像を生成してもよい。
3次元画像は、ボリュームレンダリング画像である場合、レイサム(RaySum)画像、MIP(Maximum Intensity Projection)画像、MinIP(Minimum Intensity Projection)画像、平均値(Average)画像、又はレイキャスト(Raycast)画像を含んでもよい。
尚、サーフィスレンダリング画像とボリュームレンダリング画像に含まれるレイキャスト画像とは、いずれも、目標物に仮想光線が投射され、仮想光線が減衰し、反射光が加算されて得られるという点で共通する。レイキャスト画像を除くボリュームレンダリング画像では、仮想光線の減衰や反射光の加算を伴わない。レイキャスト画像は、ボリュームレンダリングの1つであるレイキャスティングにより得られる。
次に、サーフィスレンダリング及びレイキャスティングのそれぞれの特徴について説明する。
図2は、輪郭が明瞭な器官に対するサーフィスレンダリングを説明するための模式図である。図2では、輪郭は、器官の外形状としてのサーフィスS1を示す。
プロセッサ140は、各ボクセルVXの画素値を基に、サーフィスレンダリングに係るサーフィスS1を生成する。プロセッサ140は、例えばMarching Cube法に従って、ボリュームデータからポリゴンデータを生成し、ポリゴンデータから器官のサーフィスS1を生成してもよい。
1つのサーフィスS1は、明瞭でかつ広い範囲にわたる輪郭を形成している。これにより、互いに隣接する仮想光線VR1がサーフィスS1とそれぞれ交差する三次元座標は近くなる。互いに隣接する仮想光線VR1の双方がサーフィスS1と交差する場合、交差点における仮想光線VR1に対する法線方向も近くなる。一方、互いに隣接する仮想光線VR1のいずれか一方が交差しない場合は、この2つの仮想光線VR1の間にサーフィスS1が存在し、この2つの仮想光線VR1の間において明確な輪郭がサーフィスレンダリング画像に形成される。これにより、滑らかなサーフィスレンダリング画像が得られる。また、1つの仮想光線VR1がサーフィスS1と交差する回数は比較的少ないために、光量を減衰させる機会も少ない。これにより、サーフィスレンダリング画像の形成に影響するボクセルVXの数が少なくなり、描画された対象が明確となる。
また、サーフェスレンダリングにより、サーフィスS1を示す輪郭が連続的に繋がり、サーフィスS1が平滑化される。また、サーフィスS1が連続的に繋がっているので、生成されたサーフィスS1により定義される面の方向が明確となる。
尚、図2では、ボクセルVXは、ボクセルVX1,VX2,VX3を含んでよい。ボクセルVX1は、観察対象の器官内に位置するか器官外に位置するか不明なボクセルである。ボクセルVX2は、観察対象の器官内に位置するボクセルである。ボクセルVX3は、観察対象の器官外に位置するボクセルである。
図3は、輪郭が明瞭な器官に対するレイキャスティングを説明するための模式図である。
プロセッサ140は、レイキャスティングを実施する際、各仮想光線VR1上の各サンプリングポイントにおいて、ボクセルVXの勾配(Gradient)や透明度(又は不透明度)を計算する。勾配は、ボクセルVXにおけるボクセル値の変化率を指し、対象ボクセルの近傍の各ボクセルVXでの各ボクセル値に基づき算出される。
3次元空間のボリュームデータに対して進行する複数の仮想光線VR1は、サーフィスレンダリングの場合と異なり、ボクセルVXを通過するときにサンプリングポイント毎に減衰しつつ透過する。よって、サーフィスS1に相当する面(サーフィス相当面S2ともいう)が比較的多く発生する。これにより、互いに隣接する仮想光線VR1がサーフィス相当面S2とそれぞれ交差する三次元座標は、サンプリングポイントの位置に応じて分かれ、例えばモアレ画像と同じように不連続となる。また、互いに隣接する仮想光線VR1の双方がサーフィス相当面S2とそれぞれ交差する場合、各交差点における法線方向も異なり、不連続となる。つまり、サーフィス相当面S2の法線方向はボクセルVXの勾配を示すので、この勾配がサンプリングポイントの位置によって異なることを意味する。一方、互いに隣接する仮想光線VR1のいずれか一方がサーフィス相当面S2と交差し、他方が交差しない場合も、明確にはサーフィス相当面S2が発生しないことがある。これは、仮想光線VR1が複数回サーフィス相当面S2と交差する場合から、一切交差しない場合まで段階があるからである。
よって、図3に示すように、描画される物体の実空間におけるある1つの面においてサーフィス相当面S2が同一の仮想光線VR1上に複数存在する場合がある等、描画される物体の面を示す位置は、複数のサーフィス相当面S2が合成(例えば平滑化)されて示されるので、不明瞭となる。また、図3に示すように、複数の仮想光線VR1のボクセルVXの勾配の法線方向もそれぞれ異なり、サーフィス相当面S2の方向が一定せず、ばらついている。
このように、器官の輪郭が明瞭である場合には、レイキャスティングでは、サーフィス相当面S2としての等値面が不連続となるが、サーフィスレンダリングでは、明瞭なサーフィスS1が生成され得る。よって、器官の輪郭が明瞭である場合には、サーフィスレンダリングを適用することが好ましいと言える。
図4は、輪郭が不明瞭な器官に対するサーフィスレンダリングを説明するための模式図である。
ボリュームデータにおいて、描画対象の器官が明瞭に識別できない画素値で撮影されている場合、画素値が所定の閾値以上であるか所定の閾値未満であるかで器官の領域を抽出すると、例えば市松模様の領域が形成される。画素値が閾値以上となるボクセルと閾値未満となるボクセルとが混在するためである。この所定の閾値は、例えば、描画対象の器官の各位置の画素値と同程度の画素値である。ここで、Marching Cube法に従ってボクセルデータからポリゴンデータを生成すると、図4に示すように輪郭を示すサーフィスS1が空間的に不連続になる。図4では、ボクセル値が等値となるボクセルVXの位置が入り組んでおり、等値のボクセルVXを結ぶと、市松模様となる。よって、レイキャスティングによって得られる画像は、サーフィスS1を反映して生成されるので、描画対象の器官の実際の形態からかけ離れたものとなる。
図5は、輪郭が不明瞭な器官に対するレイキャスティングを説明するための模式図である。
図4と同様に、図5においても器官の輪郭が不明瞭であるが、レイキャスティングでは等値面としてのサーフィスS1が描画されないため、不連続なサーフィスS1を生成する必要がない。また、レイキャスティングでは、各ボクセルVXの透明度に応じて仮想光線VR1の光量が減衰するので、不明瞭な箇所は不明瞭なまま扱われることが可能である。
このように、器官の輪郭が不明瞭である場合には、サーフィスレンダリングでは、強制的に不連続なサーフィスS1が生成されるが、レイキャスティングでは不明瞭な器官を不明瞭なまま表現できる。よって、器官の輪郭が不明瞭である場合には、レイキャスティングを適用することが好ましいと言える。
次に、レイキャスティング及びサーフィスレンダリングにおける半透明処理の違いについて説明する。
図6は、サーフィスレンダリングでの半透明について説明するための模式図である。図6に示すサーフィスレンダリングでは、器官の表面(サーフィスS1)を仮想光線VR1が通過すると、その位置で仮想光線VR1の光量が大きく減衰する。サーフィスレンダリングでの半透明処理によれば、器官の表面形状が明瞭に描画可能である。一方、器官の内部はあまり描画されない。
図7では、レイキャスティングでの半透明について説明するための模式図である。図7に示すレイキャスティングでは、器官の内部のボクセルVXを進行しながら各サンプリングポイントにおいて仮想光線VR1の光量が徐々に減衰するので、器官の内部が描画される。一方、器官の表面(サーフィス相当面S2)はあまり描画されない。レイキャスティングでの半透明処理によれば、不明瞭な観察対象を、不明瞭なまま可視化することができる。
次に、本実施形態の医用画像処理装置100の動作について説明する。
医用画像処理装置100では、プロセッサ140は、体内の観察対象となる1つの器官又は1つの器官の一部において、ある部分(第1の部分)に対してサーフィスレンダリングし、他のある部分(第2の部分)に対してレイキャスティングする。プロセッサ140は、サーフィスレンダリングの結果とレイキャスティングの結果とが混然一体としたレンダリング画像を生成する。
また、プロセッサ140は、体内の観察対象となる1つの器官又は1つの器官の一部の等質部において、ある部分(第1の部分)に対してサーフィスレンダリングし、他のある部分(第2の部分)に対してレイキャスティングしてもよい。ここで、等質部とは、同等の組成又は連続的に遷移する組成からなる部分を指す。1つの器官には、等質部と、等質部ではない非等質部と、が含まれ得る。
プロセッサ140は、観察対象に対して異なるレンダリング手法であるサーフィスレンダリング及びレイキャスティングを混在して実施する。これにより、医用画像処理装置100は、連続的に明瞭から曖昧に遷移する物体を精度良く描画できる。
また、この1つの観察対象において、サーフィスレンダリングにより決定されたピクセル値とレイキャスティングにより決定されたピクセル値とが混在する混在領域が存在してもよい。
等質部には、気管支の基部(比較的太い根本部分)及び気管支の端部(比較的細かな先端部分)が含まれてもよい。この場合、気管支の基部には、サーフィスレンダリングが施され、気管支の端部には、レイキャスティングが施されてもよい。
等質部には、門脈の基部(比較的太い根本部分)及び門脈の端部(比較的細かな先端部分)が含まれてもよい。この場合、門脈の基部には、サーフィスレンダリングが施され、門脈の端部には、レイキャスティングが施されてもよい。
等質部には、脳血管の基部(比較的太い根本部分)及び脳血管の端部(比較的細かな先端部分)が含まれてもよい。この場合、脳血管の基部には、サーフィスレンダリングが施され、脳血管の端部には、レイキャスティングが施されてもよい。
等質部には、動きの少ない箇所及び動きの多い箇所が含まれてもよい。この場合、組織における動きの少ない箇所には、サーフィスレンダリングが施され、組織における動きの多い(ブレの大きい)箇所には、レイキャスティングが施されてもよい。例えば、等質部が1つの器官としての心臓に含まれる場合、心尖部及び弁付近は動きの少ない箇所に該当し、心筋は動きの多い箇所に該当する。
等質部には、乳頭筋の基部(比較的太い根本部分)及び乳頭筋の端部(比較的細い先端部分)が含まれてもよい。この場合、乳頭筋の基部には、サーフィスレンダリングが施され、乳頭筋の端部には、レイキャスティングが施されてもよい。
等質部には、心室と乳頭筋とが含まれてもよい。心室には、サーフィスレンダリングが施され、乳頭筋にはレイキャスティングが施されてもよい。
尚、等質部には、骨及び臓器の組み合わせは含まれない。
同一の器官における同等の組成の部分は、CT装置200やMPI装置に撮像されることで、概ね同一のボクセル値を有すると考えられる。そのため,1つの観察対象としての塊として可視化することは有益である。
また、同一の器官における連続的に遷移する組成は、例えば、血管内の造影剤が不均一に拡散し、画素値が空間的に遷移する組成を含む。組成は、血流等の液体を含んでもよい。尚、血管壁に発生するプラークや石灰化は、等質部に含まれない。また、肺動脈のように、肺の外側から始まり肺の末梢に向かって分岐する器官は、連続的に遷移する器官の一部と言える。
図8は、脾臓10及び脾臓10と接続される血管を含むレンダリング画像を示す図である。
脾臓10では、脾臓10に接続される血管や脾臓10自体の形状によって雑然としており、輪郭が入り組んで表現される。そのため、プロセッサ140は、脾臓10に対してレイキャスティングを実施する。これにより、医用画像処理装置100は、脾臓10特有の雑然として様子を、明瞭にさせずに曖昧な状態で表現できる。
また、脾臓10に接続される血管に含まれる脾門脈11は、比較的太く輪郭の明確な基部12と、比較的細く輪郭の不明確な端部13と、を含む。基部12は、肝臓側の血管と接続され、端部13は、脾臓10に接続される。プロセッサ140は、脾門脈11の基部12に対して、サーフィスレンダリングを実施する。これにより、医用画像処理装置100は、基部12を鮮明に表現できる。プロセッサ140は、脾門脈11の端部13に対して、レイキャスティングを実施する。これにより、医用画像処理装置100は、端部13が鮮明となることで、恣意的に表現されることを抑制できる。
また、脾門脈11の基部12と端部13との中間の領域14では、プロセッサ140は、サーフィスレンダリングとレイキャスティングとの混在の割合(混合比)を調整しながら、レンダリング方法を遷移して表現してもよい。例えば、プロセッサ140は、中間の領域14における位置に応じて、混合比を決定してもよい。この場合、プロセッサ140は、中間の領域14における脾門脈11の基部12側では、サーフィスレンダリングの割合をレイキャスティングよりも高くしてレンダリングしてもよい。また、プロセッサ140は、中間の領域14における脾門脈11の端部13側では、レイキャスティングの割合をサーフィスレンダリングよりも高くしてレンダリングしてもよい。
図9は、血管又は気管支に対するサーフィスレンダリングとレイキャスティングとの間の遷移例を示す模式図である。
血管や気管支では、図8に示した脾門脈11の基部12と端部13のように、輪郭が明瞭な部分から不明瞭な部分に徐々に移行することがある。そのため、サーフィスレンダリングとレイキャスティングとを任意の割合で混合して実施することが考えられる。
図9では、SR領域(図9では「SR」と表記)は、例えば脾門脈11の基部12に相当し、サーフィスレンダリングが実施される領域である。
SR+VR領域(図9では「SR+VR」と表記)は、例えば脾門脈11の基部12と端部13との間の中間の領域14であり、明瞭と不明瞭との間の状態の領域である。図9では、SR+VR領域においてSR領域側(左側)である程、血管や気管支が太くて輪郭が明瞭な箇所である。SR+VR領域においてVR領域側(右側)である程、血管や気管支が細くて輪郭が不明瞭な箇所である。
また、VR領域(図9では「VR」と表記)は、例えば脾門脈11の端部13に相当し、レイキャスティングが実施される領域である。
尚、SR領域、SR+VR領域、及びVR領域のいずれであるかは、例えば、後述するレンダリング処理の実施によって識別可能である(例えば図14参照)。
図10は、臓器(例えば肝臓、腎臓、脾臓)に対するサーフィスレンダリングとレイキャスティングとの間の遷移例を示す模式図である。
臓器の(VR領域D21側の)先端部では、臓器の輪郭は凸凹形状を多数有するために輪郭線がかなり複雑となり、S/N比(Signal to Noise ratio)が大きくなる。例えば、腎臓に血管がつながっている腎臓の内側は、腎小体が集合し複雑な形状をしており、場合によってはボリュームデータの解像度を超えた複雑さである。この場合、サーフィスレンダリングすると、輪郭は明瞭となるが必ずしも臓器の真の凸凹形状を反映しないものとなる。従って、プロセッサ140は、臓器の先端部に対してレイキャスティングを施す。つまり、臓器の先端部は、VR領域D21となる。これにより、医用画像処理装置100は、明確な輪郭線をやや曖昧に表現でき、輪郭線の描画を適度に明確な状態にできる。
臓器の表面等において滑らかな輪郭の部分では、SR領域D22となる。これにより、医用画像処理装置100は、例えば、臓器の輪郭が複雑な凸凹の形状を有さず、滑らかな部分において、明瞭な箇所を明瞭に表現できる。
対象の臓器に動きがあったり、対象の臓器と対象の臓器に隣接する臓器との画素値の差異が少ない場合は、対象の臓器と対象の臓器の周囲との濃淡差が小さくなり、対象の臓器の輪郭線が不明瞭となることがある。臓器に多数の血管が接続される箇所で、濃淡差が小さくなることもある。プロセッサ140は、この箇所に対してレイキャスティングを施す。つまり、臓器に多数の血管が接続される箇所では、VR領域23となる。これにより、医用画像処理装置100は、不明瞭な当該箇所を不明瞭なまま表現でき、当該箇所が恣意的な表現となることを抑制できる。
VR領域D21とSR領域D22との間の領域は、SR+VR領域D24となる。SR+VR領域D24は、臓器の輪郭がかなり明瞭な箇所に相当する。ここでは、臓器は複雑な形状をしつつも、概ねボリュームデータの解像度を超えたとまではいえない複雑さであるが、一部においては越えることもある。SR+VR領域D24では、サーフィスレンダリングとレイキャスティングとの割合を任意の割合(例えば1:1)としてもよいし、SR+VR領域D24の位置に応じて、混合比が調整されてもよい。例えば、プロセッサ140は、SR+VR領域D24において、VR領域D21側である程、レイキャスティングの割合を大きくし、SR領域D22側である程、サーフィスレンダリングの割合を大きくしてもよい。
SR領域D22とVR領域D23との間の領域は、SR+VR領域D25となる。SR+VR領域D24は、臓器の輪郭がやや不明瞭な箇所に相当する。SR+VR領域D25では、サーフィスレンダリングとレイキャスティングとの割合を任意の割合(例えば1:1)としてもよいし、SR+VR領域D25の位置に応じて、混合比が調整されてもよい。例えば、プロセッサ140は、SR+VR領域D25において、VR領域D23側である程、レイキャスティングの割合を大きくし、SR領域D22側である程、サーフィスレンダリングの割合を大きくしてもよい。
図11は、腎臓20、腎臓20に接続される血管、及び周辺器官を含む断面図(コロナル断面図)である。
領域D11は、消化器官の内側である。消化器官には内容物が入っており雑然としている。そのため、プロセッサ140は、領域D11をレイキャスティングで可視化することが出来る。領域D12では、腎臓20の腎小体が集合し複雑な形状をしている。そのため、プロセッサ140は、領域D12をレイキャスティングで可視化することが出来る。領域D13は、血管が腎臓20に入っていくところで、造影された血流が器官に流入し境界が不明瞭である。そのため、プロセッサ140は、領域D13をレイキャスティングで可視化することが出来る。領域D14では、腎臓20の輪郭が滑らかで明瞭である。そのため、プロセッサ140は、領域D14をサーフィスレンダリングで可視化することができる。領域D15は、静脈であり、造影が薄く輪郭がやや不明瞭である。そのため、プロセッサ140は、領域D15をレイキャスティングで可視化することが出来る。領域D16は、動脈であり、造影が濃く輪郭が明瞭である。そのため、プロセッサ140は、領域D16をサーフィスレンダリングで可視化することができる。
このように、医用画像処理装置100は、臓器の表面形状や血管との接続関係に応じて複数のレンダリングを使い分け、又は複数のレンダリングを混合してレンダリング画像を生成する。これにより、ユーザは、レンダリング画像を観察し易くなる。
サーフィスレンダリングとレイキャスティングとの切り替え、又はサーフィスレンダリングとレイキャスティングとの混合比は、以下に例示される。
観察対象が細分化された管状器官(例えば血管、気管支)であったり、複雑に入り組んだ微細な構造を有する器官(例えば骨軟部、腎臓の内側)であったりすることで、輪郭の凹凸がCT装置200の撮像のための分解能を上回ると、器官の輪郭が不鮮明に表現されることが予想される。
これに対し、プロセッサ140は、観察対象の器官の太さ又は厚さに基づいて、観察対象のボクセルVXでのサーフィスレンダリング及びレイキャスティングの混合比を導出(例えば算出)可能である。器官の太さ又は厚さは、後述する距離マップや太さマップにより導出される。
また、何らかの原因でS/N比が小さくなると、器官の輪郭がノイズに埋没し、不明瞭となることが予想される。同様に、何らかの原因でS/N比が小さくなり、アーチファクトが存在する場合も、器官の輪郭が不明瞭となることが予想される。
これに対し、プロセッサ140は、輪郭近傍でのS/N比に基づいて、観察対象としての器官のボクセルVXでのサーフィスレンダリング及びレイキャスティングの混合比を導出(例えば算出)可能である。輪郭は、サーフィスS1やサーフィス相当面S2に相当する。輪郭近傍とは、例えば、サーフィスS1やサーフィス相当面S2が存在するボクセルの近傍に存在するボクセルである。S/N比は、後述するノイズマップにより導出される。
また、観察対象の器官に係るボクセル値とその器官周辺の観察対象外の領域に係るボクセル値との差異が小さい場合、器官の実際の輪郭がボクセル値に十分に反映されていないと考えられ、器官の輪郭が不明瞭となることが予想される。CT装置200により撮像する際の器官の造影が薄い場合にも、観察対象と観察対象外とで得られる上記のボクセル値の差異が小さくなることが予想される。
これに対し、プロセッサ140は、観察対象としての器官の輪郭における勾配の大きさに基づいて、観察対象のボクセルVXでのサーフィスレンダリング及びレイキャスティングの混合比を導出(例えば算出)可能である。勾配の大きさは、後述する勾配マップにより導出される。
次に、医用画像処理装置100の具体的な動作について説明する。
まず、医用画像処理装置100によるボクセルVX毎の混合比決定時の動作について説明する。図12は、医用画像処理装置100によるボクセルVX毎の混合比決定時の動作例を示すフローチャートである。
まず、ポート110は、CT装置200から送信されたボリュームデータVを取得する(S11)。
プロセッサ140は、既知のセグメンテーション処理によって、ボリュームデータVに含まれる観察対象(例えば対象臓器)の領域Iを抽出する(S12)。この場合、例えば、ユーザがUI120を介して大まかに領域を指定した後、プロセッサ140が正確に領域Iを抽出してもよい。また、プロセッサ140が抽出した領域IにユーザがUI120を介して変更を加えても良い。
プロセッサ140は、対象臓器の太さマップD’を生成する(S13)。具体的には、プロセッサ140は、対象臓器の領域Iについて、距離マップDを生成する。距離マップDは、対象臓器における各ボクセルVXでの対象臓器の表面からの距離を示すボリュームデータである。プロセッサ140は、距離マップDのグレースケール値に対してDilation処理を行い、Dilation処理の結果を対象臓器の太さマップD’として生成する。太さマップD’は、対象臓器の表面近傍のボクセルVXにおいて、対象臓器の太さを示すボリュームデータである。
プロセッサ140は、対象臓器のノイズマップNを生成する(S14)。ノイズマップは、対象臓器における各ボクセルVXでのノイズを示すボリュームデータである。
具体的には、プロセッサ140は、ボリュームデータVに対してバイラテラルフィルタ(Bilateral Filter)処理を行う。プロセッサ140は、バイラテラルフィルタ処理により、対象臓器の輪郭を維持して、つまり輪郭を不明瞭化せずに、ノイズを除去したボリュームデータV’を生成する。プロセッサ140は、観察対象のボクセルVXのうち、対象ボクセルに隣接するボクセルを含めた27個のボクセルVXについて、バイラテラルフィルタ処理の処理前後におけるボクセル値を比較する。つまり、プロセッサ140は、上記27個のボクセルVXに係るボリュームデータVとV’とを比較し、このボリュームデータVとV’の差分値をノイズ量として取得(例えば算出)する。プロセッサ140は、対象ボクセルを順次変更し、ボクセルVX毎のノイズ量を導出し、ノイズマップNとする。尚、ノイズマップNの代わりに、S/N比マップが生成されてもよい。
プロセッサ140は、対象臓器の勾配マップGを生成する(S15)。具体的には、プロセッサ140は、バイラテラルフィルタ処理されたボリュームデータV’を用いて、各ボクセルVXの勾配の絶対値を示す勾配マップGを取得(例えば算出)する。
プロセッサ140は、各ボクセルVXの混合比を算出する(S16)。具体的には、プロセッサ140は、各ボクセルVXでの対象臓器の太さ情報、ノイズ情報、及び勾配情報を基に、(式1)を用いて、各ボクセルVXの混合比MR(x,y,z)を算出してもよい。
尚、(x,y,z)は、3次元直交座標系での3次元空間におけるx座標、y座標、z座標を示す。混合比MR(x,y,z)は、0〜1の範囲の値である。MR(x,y,z)=0の場合、このボクセルVXはVR領域である。MR(x,y,z)=1の場合、このボクセルVXはSR領域である。Cp()は、この関数の出力を値0〜1の範囲にクリップする関数である。d0、n0、g0は、係数であり、任意の値を有する。D’(x,y,z)は、太さマップD’の座標(x,y,z)に対応するボクセルVXでの値である。N(x,y,z)は、ノイズマップNの座標(x,y,z)に対応するボクセルVXでの値である。G(x,y,z)は、勾配マップGの座標(x,y,z)に対応するボクセルVXでの値である。
このように、医用画像処理装置100は、ボクセルVX毎に混合比を決定することで、ボクセルVX毎にサーフィスレンダリング及びレイキャスティングの割合を調整できる。例えば、器官が比較的太いボクセルVXでは、サーフィスレンダリングの割合を高くできる。また、ノイズが比較的多く含まれるボクセルVXでは、レイキャスティングの割合を高くできる。また、勾配が比較的大きなボクセルVXでは、サーフィスレンダリングの割合を高くできる。これにより、医用画像処理装置100は、器官の明瞭さに適したレンダリング手法を混在させて、器官の描画精度を向上できる。
尚、プロセッサ140は、対象臓器の領域Iに到達した仮想光線VR1を、混合比を基に、サーフィスレンダリング及びレイキャスティングにより減衰させる。そして、プロセッサ140は、混合比を基に、サーフィスレンダリングによる反射光とレイキャスティングによる反射光とを得る。
尚、図12に示した混合比決定の処理は、後述するレンダリング処理の前に予め実施されてもよいし、レンダリング処理中に実施されてもよい。
続いて、医用画像処理装置100によるレンダリング時の動作について説明する。図13は、医用画像処理装置100によるレンダリング時の動作例を示すフローチャートである。
まず、医用画像処理装置100は、図12に示した混合比決定処理を行う(S21)。混合比決定処理は、例えば、先に説明したS11〜S16の処理を含む。
プロセッサ140は、領域Iに含まれる対象臓器の表面形状(輪郭)を示すサーフィスS1を生成する(S22)。この場合、プロセッサ140は、サーフィスS1の基準となる閾値thを設定する。プロセッサ140は、領域Iに含まれる各ボクセルVXにおいて、閾値thを用いて、Marching Cube法に従ってボクセルデータからポリゴンデータを生成し、ポリゴンデータから対象臓器のサーフィスS1を生成する。よって、サーフィスS1と領域Iの表面とは異なってもよい。
プロセッサ140は、画像が形成される投影面のピクセル毎に、ピクセル値を算出する(S23)。
図14は、医用画像処理装置100によるレンダリング画像のピクセル毎のピクセル値算出時の動作例を示すフローチャートである。図14の処理は、図13のS23のピクセル値算出処理に含まれる。
まず、プロセッサ140は、仮想光線VR1に係る各パラメータを初期化する(S31)。ここでは、パラメータには、光線位置v(仮想光線VR1上の位置)、仮想光線VR1のサンプリング間隔t、投影方向ベクトルd、減衰光量AT、反射光SP、等が含まれる。プロセッサ140は、光線位置vを光線初期位置v0に設定し、サンプリング間隔tを設定し、投影方向ベクトルdの大きさをサンプリング間隔tに設定する。サンプリング間隔tは、サンプリングポイントの間隔を示す。プロセッサ140は、減衰光量ATを値1に設定し、反射光SPを値0に設定する。各パラメータの情報は、メモリ150に保持される。
尚、サンプリングポイントの詳細については後述する。サンプリングポイントの間隔は任意であるが、例えば、ボクセルVXの間隔である。
プロセッサ140は、初期ピクセル位置において、仮想光線VR1の投射を開始する(S32)。仮想光線VR1上の最初の位置は、光線初期位置V0である。
プロセッサ140は、光線位置vが対象臓器の領域I内に存在するか否かを判定する(S33)。
光線位置vが対象臓器の領域I内に存在する場合、プロセッサ140は、レイキャスティング(RC処理)を実施する(S34)。
レイキャスティングでは、プロセッサ140は、光線位置vに対応するボクセルVXのボクセル値と勾配gとを取得(例えば算出)する。勾配gは、勾配マップGから導出可能である。また、勾配gの値を基に、陰影値も得られる。プロセッサ140は、ボクセル値に基づいて、不透明度Opを取得(例えば算出)する。尚、ボクセル値と不透明度Opとの間には相関関係がある。この相関関係の情報は、メモリ150に予め保持され、プロセッサ140により参照され得る。
また、プロセッサ140は、現在の反射光SPの値に、減衰光量AT、不透明度Op、投影方向ベクトルd、勾配g、及び混合比MRに基づく値を加算して、新たな反射光SPの値を導出する。具体的には、プロセッサ140は、(式2)を用いて反射光SPを算出してもよい。
SP+=AT*Op*(1−MR(x,y,z))*d・g ・・・(式2)
尚、「*」は、乗算符号を示す。「・」は内積符号を示す。混合比MRは、例えばボクセルVX毎に定まる。
また、プロセッサ140は、現在の減衰光量ATに、不透明度Op及び混合比MRに基づく値を乗算して、新たな減衰光量ATを取得(例えば算出)する。具体的には、プロセッサ140は、(式3)を用いて減衰光量ATを算出してもよい。
AT*=1−Op*(1−MR(x,y,z)) ・・・(式3)
プロセッサ140は、現在の光線位置vと、光線位置vから投影方向ベクトルdの方向にサンプリング間隔t進んだ位置(v+d)と、の間に、サーフィスS1が存在するか否かを判定する(S35)。
これらの位置の間にサーフィスS1が存在する場合、プロセッサ140は、サーフィスレンダリングを実施する(S36)。具体的には、プロセッサ140は、光線位置vと上記位置(v+d)との間に存在するサーフィスS1について、サーフィスS1の不透明度Op2及びサーフィスS1の法線ベクトルg2を取得(例えば算出)する。
尚、不透明度Opの場合と同様に、サーフィスS1での補間値と不透明度Op2との間には相関関係がある。この相関関係の情報は、メモリ150に予め保持され、プロセッサ140により参照され得る。法線ベクトルg2は、サーフィスS1の面方向を基に算出可能である。
また、プロセッサ140は、現在の反射光SPの値に、減衰光量AT、不透明度Op2、投影方向ベクトルd、法線ベクトルg2、及び混合比MRに基づく値を加算して、新たな反射光SPの値を取得(例えば算出)する。具体的には、プロセッサ140は、(式4)を用いて反射光SPを算出してもよい。
SP+=AT*Op2*MR(x,y,z)*d・g2 ・・・(式4)
また、プロセッサ140は、現在の減衰光量ATに、不透明度Op2及び混合比MRに基づく値を乗算して、新たな減衰光量ATを取得(例えば算出)する。具体的には、プロセッサ140は、(式5)を用いて減衰光量ATを算出してもよい。
AT*=1−Op2*MR(x,y,z) ・・・(式5)
プロセッサ140は、減衰光量ATが所定値ε以下であるか否かを判定する(S37)。減衰光量ATが所定値ε以下である場合、反射光SPの値がこれ以上変わらないとして、このピクセルに関する処理を終了する。
減衰光量ATが所定値εより大きい場合、プロセッサ140は、仮想光線VR1における光線位置vを次の位置に進める(S38)。ここでの次の位置は、例えば、仮想光線VR1上で投影方向ベクトルdの方向にサンプリング間隔t進んだ位置である。
プロセッサ140は、進行した光線位置vがボリュームデータVの範囲外つまり対象の3次元空間外に存在するか否かを判定する(S39)。進行した光線位置vがボリュームデータVの範囲内である場合、さらに同一の仮想光線VR1上において進行した光線位置vでレンダリング処理すべく、S33に進む。
進行した光線位置vがボリュームデータVの範囲外である場合、プロセッサ140は、このピクセルに関する処理を終了する。
尚、全ピクセルのピクセル値算出時には、S39で光線位置vがボリュームデータの範囲外の場合、プロセッサ140は、ピクセル位置を次の位置に進め、S33に進む。
図14により導出されたピクセル毎の反射光SPの値が、レンダリング画像における各ピクセルのピクセル値となり、投影面に表現される。ディスプレイ130は、得られたレンダリング画像を表示する。
このような図13及び図14に示したレンダリング処理によれば、医用画像処理装置100は、ボクセルVX毎(又は後述するサンプリングポイント毎)にサーフィスレンダリング及びレイキャスティングの少なくとも一方を実施し、サーフィスレンダリングとレイキャスティングとが混然一体としたレンダリング画像を描画可能である。
尚、S34において、不透明度Opが値0の場合、ボクセルVXにおいて、レイキャスティングが施されずサーフィスレンダリングのみが実施される。例えば、領域Iの境界近辺(周端部近辺)では、領域Iの外側の領域を透明とする場合、ボクセルVXの不透明度Opが、補間により小さくなり、値0となる又は値0に近付くことが多い。
図15は、医用画像処理装置100による選択的にサーフィスS1を生成する場合の動作例を示すフローチャートである。
まず、医用画像処理装置100は、先に説明した図12のS11〜S15の処理を行う。つまり、ポート110は、ボリュームデータVを取得する。プロセッサ140は、ボリュームデータVから対象臓器の領域Iを取得し、対象臓器の太さマップD’を生成し、対象臓器のノイズマップNを生成し、対象臓器の勾配マップGを生成する。
そして、プロセッサ140は、先に説明した図13のS22と同様に、サーフィスS1を生成する。
プロセッサ140は、生成されたサーフィスS1の各頂点、つまりサーフィスS1を形成するポリゴンの各頂点の尤度を算出する(S51)。具体的には、プロセッサ140は、(式6)を用いて尤度LF(x,y,z)を算出してもよい。
尚、尤度LF(x,y,z)は、サーフィスレンダリングの相応しさを示し、0〜1の範囲の値である。尚、(式1)と同様の数式部分については、説明を省略又は簡略化している。
尚、ここでの座標(x、y,z)は、サーフィスS1の各頂点の座標であるので、D’(x,y,z)の値は、各ボクセルVXの太さ情報を示す太さマップD’から補間して生成される。同様に、N(x,y,z)の値は、各ボクセルVXのノイズ情報を示すノイズマップNから補間して生成される。同様に、G(x,y,z)の値は、各ボクセルVXの勾配情報を示す勾配マップGから補間して生成される。
プロセッサ140は、尤度LF(x,y,z)=0の頂点をサーフィスS1から削除する(S52)。また、プロセッサ140は、サーフィスS1の各頂点に割り当てる不透明度を、尤度LF(x,y,z)を基に設定する。不透明度は、下記の(式7)により得られる。
不透明度=(本来のサーフィスS1の不透明度)×(尤度LF(x,y,z)) ・・・(式7)
尚、本来のサーフィスS1の不透明度とは、サーフィスレンダリングのみを行うときに用いるサーフィスの不透明度に相当する。
このような図15に示した選択的なサーフィス生成によれば、医用画像処理装置100は、尤度LFに応じてサーフィスS1の半透明度を調整できる。そのため、医用画像処理装置100は、サーフィスS1が存在しない可能性が低い場合には、サーフィスS1の影響を小さくでき、サーフィスS1が存在する可能性が高い場合には、サーフィスS1の影響を大きくできる。
また、医用画像処理装置100は、サーフィスS1の不透明度を尤度LFから導出可能であり、尤度LFが値0である場合、つまりそのサーフィスS1が描画に寄与しない場合には、そのサーフィスS1を削除できる。そのため、医用画像処理装置100は、各仮想光線VR1におけるサーフィスレンダリングに係る処理(例えば図14のS36)を簡略化でき、レンダリングを高速化できる。例えば、医用画像処理装置100は、サーフィスS1から削除される頂点の数が多い程、レンダリングを高速化できる。また、医用画像処理装置100がサーフィスレンダリングのみに係るピクセル値のみを反映してレンダリング画像を表示し、ユーザが確認する際に、ユーザの利便性が向上する。
また、プロセッサ140は、尤度LFを用いてサーフィスS1の各頂点の不透明度を導出可能であるので、ボクセルVXに対する不透明度を毎回参照しなくてよい。つまり、医用画像処理装置100は、図14の演算処理を簡略化しても、レンダリング画像の画質の低下を抑制できる。
図16は、医用画像処理装置100による合成によりサーフィスレンダリングとレイキャスティングとの混在の割合を設定したレンダリング画像を生成する場合の動作例を示すフローチャートである。図16では、プロセッサ140は、サーフィスレンダリング及びレイキャスティングを独立して実施し、更に合成比マップによってSR画像とRC画像を合成して、サーフィスレンダリングとレイキャスティングとの混在した画像を生成する。なお、合成は、混合の一態様である。
プロセッサ140は、サーフィスレンダリングを用いないレイキャスティングの画像(RC画像)を生成する(S61)。
プロセッサ140は、レイキャスティングを用いないサーフィスレンダリングの画像(SR画像)を生成する(S62)。
プロセッサ140は、合成比マップを生成する(S63)。合成比マップとは、レイキャスティングの画像とサーフィスレンダリングの画像を合成するときの画素毎の合成比を表すマップである。合成比マップは、画像と同一の大きさの、スカラー値を格納する2次元配列で表現されてよい。合成比マップの生成処理の詳細については後述する。
プロセッサ140は、RC画像、SR画像、及び合成比マップを基に、レンダリング画像としての合成画像(x,y)を生成する(S64)。ディスプレイ130は、生成された合成画像をレンダリング画像として表示する。合成画像(x,y)は、以下の(式8)で表される。
合成画像(x,y)=合成比マップ(x,y)*SR画像(x,y)+(1−合成比マップ(x,y))*RC画像(x,y) ・・・(式8)
尚、(x,y)は、合成画像における2次元のピクセル位置を示す。画像(x,y)は、(x,y)のピクセル位置におけるピクセル値を示す。
図17は、S63における合成比マップのピクセル値算出の一例を示すフローチャートである。
合成比マップに含まれる各ピクセル値算出の生成では、まず、プロセッサ140は、仮想光線VR1に係る各パラメータを初期化する(S71)。ここでは、パラメータには、光線位置v(仮想光線上の位置)、仮想光線VR1のサンプリング間隔t、投影方向ベクトルd、減衰光量AT、混合比変数MRV、等が含まれる。プロセッサ140は、光線位置vを光線初期位置v0に設定し、サンプリング間隔tを設定し、投影方向ベクトルdの大きさをサンプリング間隔tに設定する。プロセッサ140は、減衰光量ATを値1に設定し、混合比変数MRVを値0に設定する。各パラメータの情報は、メモリ150に保持される。
プロセッサ140は、初期ピクセル位置において、仮想光線VR1の投射を開始する(S72)。仮想光線VR1上の最初の位置は、光線初期位置V0である。
プロセッサ140は、光線位置vが対象臓器の領域I内に存在するか否かを判定する(S73)。
光線位置vが対象臓器の領域I内に存在する場合、プロセッサ140は、レイキャスティング(RC処理)を実施する(S74)。
レイキャスティングでは、プロセッサ140は、光線位置vに対応するボクセルVXのボクセル値と勾配gとを取得(例えば算出)する。プロセッサ140は、ボクセル値に基づいて、不透明度Opを取得(例えば算出)する。
また、プロセッサ140は、現在の減衰光量ATに、不透明度Op及び混合比MRに基づく値を乗算して、新たな減衰光量ATを取得(例えば算出)する。具体的には、プロセッサ140は、先述の(式3)を用いて減衰光量ATを算出してもよい。
プロセッサ140は、現在の光線位置vと、光線位置vから投影方向ベクトルdの方向にサンプリング間隔t進んだ位置(V+d)と、の間に、サーフィスS1が存在するか否かを判定する(S75)。
これらの位置の間にサーフィスS1が存在する場合、プロセッサ140は、サーフィスレンダリングを実施する(S76)。具体的には、プロセッサ140は、光線位置vと上記位置(V+d)との間に存在するサーフィスS1について、サーフィスS1の不透明度Op2を取得(例えば算出)する。
また、プロセッサ140は、現在の混合比変数MRVに、減衰光量AT、不透明度OP2、及び混合比MRに基づく値を加算して、新たな混合比変数MRVを取得(例えば算出)する。具体的には、プロセッサ140は、(式9)を用いて混合比変数MRVを算出してもよい。
MRV+=AT*OP2*混合比MR(x,y,z) ・・・(式9)
また、プロセッサ140は、プロセッサ140は、現在の減衰光量ATに、不透明度Op2及び混合比MRに基づく値を乗算して、新たな減衰光量ATを取得(例えば算出)する。具体的には、プロセッサ140は、先述の(式5)を用いて減衰光量ATを算出してもよい。
プロセッサ140は、減衰光量ATが所定値ε以下であるか否かを判定する(S77)。減衰光量ATが所定値ε以下である場合、混合比変数MRVの値がこれ以上変わらないとして、このピクセルに関する処理を終了する。
減衰光量ATが所定値εより大きい場合、プロセッサ140は、仮想光線VR1における光線位置vを次の位置に進める(S78)。ここでの次の位置は、例えば、仮想光線VR1上で投影方向ベクトルdの方向にサンプリング間隔t進んだ位置である。
プロセッサ140は、進行した光線位置vがボリュームデータVの範囲外つまり対象の3次元空間外に存在するか否かを判定する(S79)。進行した光線位置vがボリュームデータVの範囲内である場合、同一の仮想光線VR1上において進行した光線位置vでレンダリング処理すべく、S73に進む。
進行した光線位置vがボリュームデータVの範囲外である場合、プロセッサ140は、このピクセルに関する処理を終了する。
尚、合成比マップの全ピクセルのピクセル値算出時には、S79で光線位置vがボリュームデータの範囲外の場合、プロセッサ140は、ピクセル位置を次の位置に進め、S73に進む。
図17の処理で得られた混合比変数MRVの値が、合成比マップのピクセル値となる。
このような図16及び図17に示した画像生成によれば、医用画像処理装置100は、RC画像及びSR画像を独立して生成し、これらの画像を合成比マップとともに合成することによっても、レンダリング画像を生成できる。よって、医用画像処理装置100は、既存のレイキャスティングエンジン及びサーフィスレンダリングエンジンを利用し、これらのエンジンによるレンダリングに係る品質と同等の品質を継承できる。また、医用画像処理装置100は、ピクセル毎に混合比変数MRVの値を決定でき、つまりピクセル毎にRC画像とSR画像との合成比を異なるようにできる。なお、合成比マップは、サーフィスレンダリング画像とレイキャスティング画像と同一のピクセル数を持つ2次元配列を有するとして説明した。この代わりに、プロセッサ140が、縮小した2次元配列として合成比マップを作成し、RC画像とSR画像の合成時に合成比マップを補間して、RC画像とSR画像を合成してもよい。また、プロセッサ140は、合成比マップを任意の点群からなるマップとして作成し、RC画像とSR画像の合成時に合成比マップを補間して、RC画像とSR画像を合成してもよい。また、RC画像とSR画像のピクセル数が同一でなくてもよい。
以上のように、医用画像処理装置100では、ポート110は、観察対象の器官を含むボリュームデータVを取得する。プロセッサ140は、ボリュームデータVに基づいて、器官の第1部分に対してサーフィスレンダリングを行い、器官の第2部分に対してレイキャスティングを行い、サーフィスレンダリングにより得られる第1の中間値とレイキャスティングにより得られる第2の中間値とが混然一体とした表示画像を生成する。ディスプレイ130は、表示画像を表示する。第1の中間値とは、(式4)の右辺の算出値でよい。第2の中間値は、例えば(式2)の右辺の算出値でよい。
これにより、医用画像処理装置100は、同一の器官における異なる部分(第1部分、第2部分)において異なるレンダリング処理(SR処理、RC処理)を行い、それぞれのレンダリング処理の特性を活かした表示画像を生成できる。従って、医用画像処理装置100は、同一の物体(器官)において、連続的に明瞭な部分と不明瞭な部分とを含む物体の描画精度を向上できる。また、連続的に明瞭な部分から不明瞭な部分に遷移する物体の描画精度も向上できる。
また、第1の中間値は、サーフィスレンダリングによる反射光量を少なくとも含んでよい。第2の中間値は、レイキャスティングによる反射光量を少なくとも含んでよい。プロセッサ140は、第1の中間値と第2の中間値を反映した表示画像の画素の画素値を導出することによって、表示画像を生成してよい。反射光量は、例えば反射光SPである。
これにより、医用画像処理装置100は、サーフィスレンダリング及びレイキャスティングにおける反射光量を用いて、サーフィスレンダリング及びレイキャスティングに基づく混然一体とした表示画像を生成できる。
また、器官の第1部分と第2部分とは、器官を含む3次元空間において重複部分を有してもよい。
これにより、医用画像処理装置100は、器官についてサーフィスレンダリング及びレイキャスティングの双方が反映された表示画像を生成できる。例えば、サーフィスレンダリングに向いているボクセルVXからレイキャスティングに向いているボクセルVXに遷移する途中のボクセルVXにおいて、同一のボクセルVXに対してサーフィスレンダリング及びレイキャスティングの双方が実施されてもよい。また、例えば、重複した範囲(例えば第1部分と第2部分の重複部分)内において、所定の画像処理の順番に従って(例えば任意の順番で)、仮想光線VR1についてサーフィスレンダリング及びレイキャスティングが実施されてもよい。これらの場合、医用画像処理装置100は、サーフィスレンダリングに係るボクセル値の成分とレイキャスティングに係るボクセル値の成分とが滑らかに繋がる。従って、表示画像の画素値(ピクセル値)においても、隣接するピクセル同志で滑らかに繋がる。よって、医用画像処理装置100は、異なるレンダリング手法が実行されても、各ボクセルVXにおいてレンダリング手法に起因して、表示画像の特性が急激に変化することを抑制できる。従って、医用画像処理装置100は、明瞭な部分と不明瞭な部分との間で明瞭さが遷移する物体の描画精度を向上できる。
また、プロセッサ140は、重複部分におけるサーフィスレンダリングとレイキャスティングとの混合比を基に、表示画像を生成してもよい。
これにより、医用画像処理装置100は、混合比によりサーフィスレンダリングとレイキャスティングとが表示画像の画素値に反映される割合を調整して、表示画像を生成できる。よって、医用画像処理装置100は、サーフィスレンダリングに係るボクセル値の成分とレイキャスティングに係るボクセル値の成分とを滑らかに繋げることができ、自然な描画が可能となる。
また、サーフィスレンダリングに用いる前記第1部分のサーフィスは、少なくとも一部に半透明な箇所を有してもよい。
これにより、医用画像処理装置100は、仮想光線VR1上でサーフィスS1よりも奥側の様子を表現できる。よって、ユーザは、明瞭なサーフィスS1の奥に観察を希望する箇所が存在する場合でも、観察可能となる。
また、レイキャスティングに用いる第2部分のボクセルVXは、少なくとも一部に半透明な箇所を有してもよい。
これにより、医用画像処理装置100は、仮想光線VR1上でサーフィス相当面S2よりも奥側の様子を表現できる。よって、ユーザは、サーフィス相当面S2の奥に観察を希望する箇所が存在する場合でも、観察可能となる。また、医用画像処理装置100は、仮想光線上で観察対象が複数存在する場合でも、レイキャスティングが施される不明瞭な観察対象の部位を、不明瞭なまま可視化できる。
また、器官は、同等な組成又は連続的に遷移する組成で形成されてもよい。
これにより、医用画像処理装置100は、同一の器官において明瞭さが異なる部位が存在する場合でも、それぞれの特性に合わせたレンダリング手法により表示画像の画素値の成分を導出でき、これらの画素値の成分から表示画像の画素値を決定できる。従って、医用画像処理装置100は、明瞭な部分と不明瞭な部分との間で明瞭さが遷移する器官の描画精度を向上できる。
また、器官は、3次元空間上で連続していてもよい。
これにより、医用画像処理装置100は、明瞭な部分と不明瞭な部分との間で明瞭さが空間上連続した器官において遷移し、3次元空間上で連続する器官の描画精度を向上できる。
また、器官の第1部分に対するサーフィスレンダリングと器官の第2部分に対するレイキャスティングとは、少なくとも1つの仮想光線VR1において第1の中間値と第2の中間値との両方が反映されてよい。
これにより、医用画像処理装置100は、仮想光線VR1を共用できるので、1つの仮想光線に係る演算で済み、レンダリング処理を高速化できる。
また、サーフィスレンダリング及びレイキャスティングにおける仮想光線VR1の減衰光量は、共用されてもよい。
これにより、医用画像処理装置100は、仮想光線VR1の減衰光量を共用できるので、1つの仮想光線の光量に係る演算で済み、レンダリング処理を高速化できる。また、減衰光量を共通とするので、医用画像処理装置100は、シームレスなサーフィスレンダリングとレイキャスティングの遷移を表現できる。
また、混合比は、少なくとも器官の太さ情報、ノイズ情報、及び勾配情報のいずれか1つを基に導出されてもよい。太さ情報は、例えば太さマップD’である。ノイズ情報は、例えばノイズマップNである。勾配情報は、例えば勾配マップGである。
これにより、医用画像処理装置100は、ボクセルVXの明瞭さに影響する各パラメータに基づいて、混合比を導出できる。よって、医用画像処理装置100は、混合比を用いてピクセル値を決定することで、ボリュームデータVから想定される器官の明瞭さを加味してレンダリング画像を生成し、表示できる。
また、プロセッサ140は、サーフィスレンダリングに用いる第1の透明度の情報及び第1の色の情報の少なくとも1つと、レイキャスティングに用いる第2の透明度の情報及び第2の色の情報の少なくとも1つと、を設定してよい。
これにより、ユーザは、医用画像処理装置100に診断に適した色彩と透明度を設定することが出来る。
また、プロセッサ140は、第1の透明度の情報及び第1の色の情報の少なくとも1つと、第2の透明度の情報及び第2の色の情報の少なくとも1つとを、連動して設定してよい。
これにより、ユーザは、医用画像処理装置100に診断に適した色彩と透明度をサーフィスレンダリングとレイキャスティングとの双方について一括して設定することが出来る。これにより、サーフィスレンダリングとレイキャスティングの違いによって生じる場合がある色合いや濃淡の違いを減らし、ユーザによる設定を容易にすることが出来る。
(他の実施形態)
以上、図面を参照しながら実施形態について説明したが、本開示はかかる例に限定されないことは言うまでもない。当業者であれば、特許請求の範囲に記載された範疇内において、各種の変更例または修正例に想到し得ることは明らかであり、それらについても当然に本開示の技術的範囲に属するものと了解される。
上記実施形態では、領域Iをレンダリング手法の区別なく設け、主にボクセルVX毎にレンダリング処理を行いながらどのレンダリングを行うかを判断することを例示したが、領域Iをレンダリング手法毎に区別して設けてもよい。具体的には、領域Iは、レイキャスティングが実施される領域IRCと、サーフィスレンダリングが実施される領域ISRと、を含んでもよい。また、領域Iは、領域IRC,ISRとともに、レイキャスティングとサーフィスレンダリングとの双方が実施される混在領域IMを含んでもよい。また、プロセッサ140は、UI120を介した入力操作に応じた調整により、領域IVRを領域ISRよりも膨らませたり(dilate)、縮小させたり(erode)してもよい。
上記実施形態では、混合比が予めボクセル単位又はピクセル単位で設定される場合を例示した。尚、プロセッサ140が、混合比を、仮想光線VR1を用いた投影面への投影時に、仮想光線VR1上で都度算出してもよい。また、混合比は、ボクセルVXに対してではなく、サーフィスS1に対して設定されてもよい。また、混合比は、任意の位置のサンプリングポイントにおいて計算されてもよいサーフィスS1に対して設定される場合、各サーフィスS1の頂点をサンプリングポイントとしてサンプル値が補間で導出され、このサンプル値が用いられてもよい。また、混合比算出以外の場面においても、ボクセルVXの代わりにサンプリングポイントのサンプル値が用いられてもよい。
サンプリングポイントは、1つのボクセルVXに1つでもよいし、1つのボクセルVXに複数でもよいし、複数のボクセルVXに1つでもよい。仮想光線VR1におけるサンプリングポイントの位置は、任意である。
プロセッサ140は、サンプリングポイント及びこのサンプリングポイントに隣接するボクセルVXの間の距離と、隣接する各ボクセルVXのボクセル値と、に基づいて、サンプリングポイントにおけるサンプル値(補間値)を導出してもよい。サンプル値は、例えば、3重線形補間等により補間ボリュームデータとして生成される。
また、プロセッサ140は、混合比を明示的に設定せずに、ボクセルVXとサーフィスS1とで先に仮想光線VR1が吸収した(当たった)方の計算結果を用いてもよい。計算結果とは、例えば、(式2)〜(式5)の計算結果である。例えば、仮想光線VR1上を光線位置vが進む際、ボクセルVXが継続して透明である一方、サーフィスS1に半透明な箇所が存在する場合に、サーフィスS1に係る計算結果を用いて、仮想光線VR1が対象とするピクセルのピクセル値が算出されてもよい。また、実質的に又は段階的にボクセルVXとサーフィスS1とが仮想光線SR1を吸収してもよい。これは、図14に示したピクセル値算出時の動作例において、混合比に依らずボクセルVXとサーフィスS1との両方で光量が減衰する場合を示す。
言い換えると、図14に示したレンダリング処理において、混合比MRを加味してレイキャスティング(S34)及びサーフィスレンダリング(S36)を実施することを例示したが、混合比MRを加味しなくてもよい。この場合、(式2)は(式10)となり、(式3)は(式11)となり、(式4)は(式12)となり、(式5)は(式13)となる。
SP+=AT*Op*d・g ・・・(式10)
AT*=1−Op ・・・(式11)
SP+=AT*Op2*d・g2 ・・・(式12)
AT*=1−Op2 ・・・(式13)
(式10)〜(式13)を用いる場合、不透明度Opが実質的に混合比として機能する。この場合、医用画像処理装置100は、各式のパラメータの値を工夫することで、混合比MRを明示的に加味しなくてもレンダリング画像の画質の低下を抑制できる。例えば、混合比MRを加味する場合よりも、相関関係の情報においてボクセル値に対する不透明度Opが低めの値に設定され、相関関係の情報においてサーフィスS1での補間値に対する不透明度が高めの値に設定されてもよい。
また、プロセッサ140は、モデル(仮想モデル)からの距離が所定距離Dth以上であるボクセルVXに対してはサーフィスレンダリングし、モデルからの距離が所定距離Dth未満であるボクセルVXに対してはレイキャスティングしてもよい。例えば、モデルが血管の中心パスである場合、血管が比較的太い箇所は、サーフィスレンダリングにより可視化され、血管が比較的細い箇所は、レイキャスティングにより可視化されてもよい。
上記実施形態では、レイキャスティングには、ShearWarp法、EarlyRayTermination等の高速化手法が含まれてもよい。レイキャスティングでは、上記実施形態のように勾配の算出結果を考慮してもよいし、勾配の算出を考慮しなくてもよい。レイキャスティングでは、ボリュームデータの補間を考慮しても考慮しなくてもよい。つまり、上記実施形態のレイキャスティングでは、様々な亜種が含まれてもよい。尚、レイキャスティングには、仮想光線上の1以上のボクセルVXのボクセル値を用い、2以上のボクセルVXを用いる場合には仮想光線上のボクセルの位置関係が相互交換可能な方法(例えばMIP、MinIP法、AVE法、SUM法)は含まれない。
上記実施形態では、プロセッサ140は、Marching Cube法に従ってボリュームデータのボクセルデータからポリゴンデータを生成し、ポリゴンデータから組織のサーフィスを取得することを例示したが、他の方法によってサーフィスS1を取得してよい。例えば、プロセッサ140は、Active Contourを用いてサーフィスS1を取得してもよい。
上記実施形態では、プロセッサ140は、サーフィスS1を加工してもよい。例えば、プロセッサ140は、ポリゴンデータのDecimation処理によってポリゴン数を削減してもよいし、移動境界面を用いてもよいし、サーフィスS1の形状を平滑化してもよい。
上記実施形態では、サーフィスレンダリングの手法については、各種手法を用いることが可能である。例えば、プロセッサ140は、エッジを強調するサーフィスレンダリングを実施してもよいし、エッジを隠すサーフィスレンダリングを実施してもよい。
上記実施形態では、プロセッサ140は、サーフィスレンダリング及びレイキャスティングにおいて、色情報を付加してもよい。色情報は、例えば反射光SPに対して付加される。尚、ボクセル値と不透明度Opとの間に相関関係があることと同様に、ボクセル値と色情報(例えばRGBの情報)との間においても、相関関係がある。また、プロセッサ140は、ボクセル値と色情報との間の相関関係及びボクセル値と不透明度Opとの間の相関関係を、サーフィスレンダリング及びレイキャスティングについて個別独立して、UI120を介してユーザによる指示を受け、設定することができる。この相関関係の情報は、メモリ150に予め保持され、プロセッサ140により参照され得る。また、プロセッサ140は、UI120を介して、これらの情報(例えば色情報、相関関係の情報)を設定してもよい。プロセッサ140は、UI120を介して、事細かに色情報、相関関係の情報、等を設定してもよいし、予め準備された複数の設定から選択してもよい。
また、プロセッサ140は、サーフィスレンダリングに用いる色及び不透明度の情報と、レイキャスティングに使用する色と不透明度の情報と、を共通化して設定してもよい。また、プロセッサ140は、ボクセル値と色情報との間の相関関係及びボクセル値と不透明度Opとの間の相関関係を、サーフィスレンダリング及びレイキャスティングについて一括して、UI120を介してユーザーによる指示を受け、設定することができる。
また、プロセッサ140は、係数等を用いて、サーフィスレンダリングに用いる色と不透明度の情報を、レイキャスティングに用いる色と不透明度の情報に従属(連動)させてもよい。例えば、プロセッサ140は、レイキャスティングに対する色情報として青色を設定し、サーフィスレンダリングに対する色情報として水色を設定してもよい。これによって、プロセッサ140は、サーフィスレンダリングとレイキャスティングの違いによって生じる場合がある色合いや濃淡の違いを減らすことが出来る。
逆に、プロセッサ140は、係数等を用いて、レイキャスティングに用いる色と不透明度の情報を、サーフィスレンダリングに用いる色と不透明度の情報に従属(連動)させてもよい。例えば、プロセッサ140は、サーフィスレンダリングに対する色情報として青色を設定し、レイキャスティングに対する色情報として水色を設定してもよい。また、プロセッサ140は、ボクセル値と色情報との間の相関関係及びボクセル値と不透明度Opとの間の相関関係を、サーフィスレンダリング及びレイキャスティングの一方ついて、U120を介してユーザによる指示を受け設定し、他方は設定した一方に連動して設定することができる。
上記実施形態では、混合比が各種マップを用いて導出されることを例示したが、混合比は、UI120を用いて入力されてもよいし、各種マップを用いて導出された混合比からUI120を介して微調整されてもよい。この場合、UI120は、混合比を変更や調整可能なスライダGUIを含んでもよい。
上記実施形態では、撮像されたCT画像としてのボリュームデータは、CT装置200から医用画像処理装置100へ送信されることを例示した。この代わりに、ボリュームデータが一旦蓄積されるように、ネットワーク上のサーバ等へ送信され、サーバ等に保管されてもよい。この場合、必要時に医用画像処理装置100のポート110が、ボリュームデータを、有線回線又は無線回線を介してサーバ等から取得してもよいし、任意の記憶媒体(不図示)を介して取得してもよい。
上記実施形態では、撮像されたCT画像としてのボリュームデータは、CT装置200から医用画像処理装置100へポート110を経由して送信されることを例示した。これは、実質的にCT装置200と医用画像処理装置100とを併せて一製品として成立している場合も含まれるものとする。また、医用画像処理装置100がCT装置200のコンソールとして扱われている場合も含む。
上記実施形態では、CT装置200により画像を撮像し、生体内部の情報を含むボリュームデータを生成することを例示したが、他の装置により画像を撮像し、ボリュームデータを生成してもよい。他の装置は、MRI(Magnetic Resonance Imaging)装置、PET(Positron Emission Tomography)装置、血管造影装置(Angiography装置)、又はその他のモダリティ装置を含む。また、複数のモダリティ装置と組み合わせて用いられてもよい。また、複数のモダリティ装置から得られた複数のボリュームデータを合成してもよい。また、複数のモダリティ装置から得られた複数のボリュームデータを合成するときに、いわゆるレジストレーション処理をしてもよい。
上記実施形態では、プロセッサ140は、ボリュームデータに含まれるボクセルVXを用いたが、これにはボクセルVXを補間したものも含まれてもよい。
また、上記実施形態では、被検体の一例である生体として人体を例示したが、動物の体でもよい。
また、本開示は、医用画像処理装置の動作を規定した医用画像処理方法として表現することも可能である。さらに、本開示は、上記実施形態の医用画像処理装置の機能を実現するプログラムを、ネットワークあるいは各種記憶媒体を介して医用画像処理装置に供給し、この医用画像処理装置内のコンピュータが読み出して実行するプログラムも適用範囲である。