JP4018300B2 - Image processing device - Google Patents

Image processing device Download PDF

Info

Publication number
JP4018300B2
JP4018300B2 JP27285099A JP27285099A JP4018300B2 JP 4018300 B2 JP4018300 B2 JP 4018300B2 JP 27285099 A JP27285099 A JP 27285099A JP 27285099 A JP27285099 A JP 27285099A JP 4018300 B2 JP4018300 B2 JP 4018300B2
Authority
JP
Japan
Prior art keywords
image
dimensional
point
data
display
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 - Lifetime
Application number
JP27285099A
Other languages
Japanese (ja)
Other versions
JP2001101451A (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.)
Ziosoft Inc
Original Assignee
Ziosoft Inc
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 Ziosoft Inc filed Critical Ziosoft Inc
Priority to JP27285099A priority Critical patent/JP4018300B2/en
Publication of JP2001101451A publication Critical patent/JP2001101451A/en
Application granted granted Critical
Publication of JP4018300B2 publication Critical patent/JP4018300B2/en
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Images

Description

【0001】
【発明の属する技術分野】
本発明は、三次元空間に配置されるデータ集合を三次元画像として表示する機能を有する画像処理装置に係り、特に、画像に基づいた各種の解析アプリケーションのユーザーインターフェースに関する。
【0002】
【従来の技術】
従来公知のこの種の数値計算データや医療画像装置データに代表される三次元空間に配置されるデータは、そのデータ数が非常に多くなる傾向が強く、データ個々の数値を直接人間が調べることは現実的に不可能な場合が多い。そのため、三次元データを視覚的に人間が認識し易い三次元画像として表現することが、多くの分野で一般的に行われている。
このようにして生成された三次元画像は、単に感覚的に映像として見られるだけではなく、分野ごとの目的に応じて様々な解析を行なうための重要な情報として利用される。解析には多くの方法があるが、三次元的な位置を正確に把握したり、三次元空間上の距離を測定したり、ある条件によって区切られた空間の体積を計算したりすることなど共通して用いられる手法の他、分野ごとに特別に考案された数多くの解析手法が存在する。
【0003】
【発明が解決しようとする課題】
三次元画像を利用して三次元空間情報を利用した解析を行なう場合、位置・形状・軌跡などの指定・変更操作は、何らかの入力装置を用いて1つあるいは複数の三次元座標に対する指定・変更操作の組み合わせとして行なうことが一般的である。
しかしながら、三次元画像とは言いながらそれを表示する出力装置は二次元の情報しか扱うことができず、入力装置も二次元の座標しか指定できないため、三次元的な座標の入力は特に奥行き方向の深さ指定において難しいものとなっている。各座標の直接数値入力ではもちろん指定可能であるが、画像を活用した直感的な操作の利点が完全に失われてしまうので、画像表示解析システムとして価値が大きく損なわれてしまった。
また、特別な機械・装置を用いた三次元入出力装置が存在するが、非常に特殊であり、経済性・信頼性・使い易さ、将来にわたる入手性などの面で多くの問題があり、一般的・実用的なシステムに達するとは言い難かった。
このような三次元座標指定の困難さは、操作者により多くの修得期間を要求したり、操作のために大きな精神的・時間的負担を強いていた。
さらに、操作者の意図した内容が正確にシステムに認識されないことも多く、解析結果の信憑性というシステムの最も本質的な価値を損ねる危険性が大きくなってしまった。
【0004】
本発明は、三次元空間における点座標指定という操作を、一般的に入手可能な入出力装置を利用して簡便・迅速・正確に行えるようにすることにより、以上のような課題を解決するものである。
【0005】
【課題を解決するための手段】
上記課題を達成するために、本発明に係る三次元画像高速表示装置は、数値計算や画像処理の制御といった種々の処理を行なうCPUと、三次元格子データ等を格納する第1記憶装置と、処理プログラムや既知データを格納する第2記憶装置と、表示装置と、入力装置とを備えた三次元画像表示装置において、前記ROM内にボリウムレンダリング処理プログラムと三次元高速処理プログラムとを格納したことを特徴としている。
本発明に係る画像処理装置は、ボリュームデータを用いて3次元画像処理を行なう画像処理装置であって、3次元上の点の現在の座標を記憶する座標記憶手段と、操作者の入力に従って、変更対象である点の座標を移動させるときに、前記変更対象である点の動くことの出来る面を、三次元図法を表現するのに必要な情報と前記変更対象である点の現在の座標とに基づいて決定する面決定手段(CPUが実施)と、前記面によって前記ボリュームデータを切断した第一の画像を作成する第一画像作成手段と、前記面上の前記ボリュームデータをサンプリングした第二の画像を作成する第二画像作成手段と、前記第一の画像と前記第二の画像を重ね合わせた重ね合わせ画像を作成する重ね合わせ画像作成手段と、前記重ね合わせ画像を表示する表示手段と、を備える。
【0006】
また、本発明に係る三次元画像高速表示装置以下の各機能を備えたことを特徴としている。
(1) 経時的に変化するパラメータにあわせて、三次元画像を連続的に生成し続けることができる高速な三次元表示機能。
(2) 操作の対象となる点の座標を、数値として記憶する記憶機能。
(3) 前記(2)項の記憶機能によって記憶されている座標点と、関連する点・直線・図形・立体などを、(1)項の三次元表示と同様の投影図法により任意の角度で明確に描出することのできる図形表示機能。
(4) 前記(1)・(2)各項により生成された二つの画像を重ね合わせて表示する重ね合わせ表示機能。
(5) 操作者が、投影図法や角度などを前記(1)・(2)各項の機能に対して指示する機能指示機能。
(6) 操作者が、前記(4)項により生成された画像上において、操作の対象となる点の移動を視覚的・対話的・連続的に指示する点移動指示機能。
(7) 前項によって指示された画像上の移動を、その時点の三次元画像の投影図法・角度・設定された制約条件などを元に、三次元的な移動方向・移動距離に変換し、それを用いて前記(2)項の機能により記憶されている三次元座標を変更する三次元座標変更機能。を特徴としている。
【0007】
また、本発明に係る三次元画像高速表示装置において、さらに次の(a)〜(c)のうちの少なくとも1種類の機能を備え、かつ、操作者が前記(6)項の機能を用いて対象となる点の移動を指示する際には、該三種類の補助画像を、独立に表示・非表示が選択できるものであることを特徴としている。
(a) 対象となる点が移動可能な全ての点集合から構成される、曲面・平面・直線・などの三次元物体を、図形として三次元画像に重ね合わせて表示することができる三次元物体重ね合わせ表示機能。
(b) 同じ三次元物体を用いて三次元データ集合からデータをサンプリングしたものを、三次元画像と同じ投影図法・角度により三次元画像に重ね合わせて表示するデータサンプリング重ね合わせ表示機能。
(c) 同じ三次元物体を用いて三次元データ集合に対して、切断・強調・変形など何らかの加工を施し、データに基づいている三次元画像表示も連動して変化する加工機能。
【0008】
また、本発明に係る元空間内の座標を三次元画像上で対話的に指定する方法は本発明に係る三次元画像高速表示装置を用いて、三次元格子点データとして得られたデータ集合を高速な三次元画像生成機能を利用して三次元画像化し、三次元画像化した結果をデイスプレーに表示し、該デイスプレーに表示された二次元画像を視覚的なガイドとしつつ、三次元画像と同じ投影方法によって図形表示された座標点を重ね合わせ表示し、三次元投影法や視点・角度などの三次元画像作成パラメータを連続的に変化させながら現在の座標設定値を対話的・連続的・直感的に把握することにより、二次元入出力装置を使いながら三次元空間内の座標を簡便・正確に指定することを特徴としている。
【0009】
また、本発明に係る発明は、さらに、座標設定値を変更中の間、三次元格子点データとその時点での三次元画像作成パラメータと変更中の設定座標値を使って座標変更の視覚的ガイドとなるような補助画像を連続的・対話的に生成し、その補助画像を重ね合わせてまたは元々の表示画像に置き換えて表示する機能を加えることによってより多くの視覚的情報を表示し、操作者の意図する三次元的な位置により正確・迅速に座標点を変更できるようにしたことを特徴としている。
【0010】
上記構成により、操作者にとって直感的に理解し易い三次元画像上で、一般に広く利用されている二次元の入力装置・出力装置を使いながら、正確な三次元座標点の指定が迅速・正確に可能となる。
操作者は、指定したい座標点がより特徴的に表現される三次元画像を角度や描画条件などの対話的な指定で作成し、その画像上に重ね合わせて表示される操作対象の図形を、自分の望む通りの位置・形状に簡単に設置することができる。
指定操作を繰り返し行いながら、操作者は三次元画像と図形の重ね合わせ画像をさまざまな角度や描画条件で対話的・連続的に確認し、間違いの有無を常に視覚的に確かめることが可能である。
また、本発明の位置変更時補助画像によって、三次元画像上における、座標点の三次元空間的位置の把握が、奥行きも含めて非常にやり易くなるため、位置変更操作の回数と、座標点位置指定全体に要する時間の両方を、大きく減らすことが可能になる。
また、位置変更後の座標点が操作者の意図する三次元位置に正確に設定されたかどうかの確認が非常に容易になるため、位置指定の正確さも大きく向上する。
【0011】
【発明の実施の形態】
以下、本発明の実施の形態を詳細に説明する前に、膨大な数量の三次元格子点データを従来ようなポリゴンに変換することなく直接三次元に変換できる本発明が用いているボリュームレンダリングと、同じく本発明が採用しているMMXテクノロジについて、説明をしておく。
【0012】
まず、ボリュームレンダリングについて説明する。
ボリュームレンダリングでは、X線CT(Computed Tomography)を利用すると、人体内部を輪切りにして断層像として表示することができる。この断層像は、断層面上の各点でのX線吸収量を表している。断層面を少しずつ移動させて得られた断層像を積み上げることにより、人体を上下・左右・前後にそれぞれ一定間隔で分割してできる、各ボクセルに対するX線吸収量を3次元配列に格納したようなデータが得られる。このようなデータをボリュームデータとよび、測定方法によっては、ある空間(ボリューム)内に分布する特定の物質の濃度や密度などを表することができる。
ボリュームデータをもとに、たとえば骨格を表示するとき、従来のCGの技法では、まず骨の表面の形状を決定してから、レイトレーシングなどのレンダリングアルゴリズムを適用する必要があった。しかし、場所によっては骨はきわめて複雑な形をしており、また骨とそれに隣接する組織でX線の吸収率が滑らかに変化することもあり、骨・筋肉・内臓などを明確に分離することは難しい。
このようなとき、骨の表面の形などを決定することなく、ボリュームデータから直接に組織を描画する方法をボリュームレンダリング(volume rendering)という。ボリュームレンダリングの医用画像以外への応用としては、大気中の水蒸気の濃度分布を用いて雲を表示する際に用いられる。
【0013】
ボリュームレンダリングの手法は次のとおりである(参考文献:「コンピュータグラフィックス」(204ページ以降)財団法人画像情報教育委員会発行、技術系CG標準テキストブック編集委員会監修)。
ボリュームレンダリングでは、3次元空間内に分布している特徴量を、任意の視線(レイ)に沿って一定間隔でサンプリングし、その値を加算していくことで最終的に半透明な画像を生成する。
レイに沿ってボリュームをサンプリングすることをレイキャスティング(ray casting)という。ボリュームレンダリングの概念を図13に示す。レイは投影面上の各画素から射出され、一定間隔でボリューム内のボクセルをサンプリングしていく。
ボリュームレンダリングでは、半透明表示を行なうことで内部を可視化するが、これは各ボクセルに不透明度αを与えることで実現している。不透明度αはボクセルの値そのものを用いることもあるが、隣接するボクセルの値からの勾配に基づいてαを決定する方法も提案されている。
表示対象としている物体表面に対応するボクセルのαを大きくすることで、その対象を不透明に近く、強調して描画することが可能となる。レイキャスティングでは順次各ボクセルの輝度値とαとの積を加算していき、αの総和が1となるか、またはレイが対象としているボリュームから抜け出たとき、その画素に対する処理を終了し、加算結果をその画素の値として表示する。
現在のサンプル位置での輝度値と不透明度をそれぞれi、α、この点に入射した積算輝度値をIinとすれば、このサンプル点を抜けたときの積算輝度値Iout は以下の式(1)で表される。
out =Iin(1−α)+iα ・・・(1)
レイキャスティングにおけるサンプリング点での輝度値と不透明度は、一般に、隣接する8つのボクセルの各々の値から、図14のように線形補間により求めることができる。
【0014】
一般的なボリュームレンダリングの処理手順を図15に示す。
CT画像や各種物理量分布のシミュレーション結果などで得られた3次元ボリュームデータに対して、まず、前処理では雑音除去や画像強調などが実行される。ここではボリューム全体を対象とした3次元画像処理が行われることもある。次に、各ボクセルの輝度値と不透明度を決定し、レイキャスティングにより各画素に対する最終的な輝度値を求める。これらの値の決定がボリュームレンダリングでは重要となる。
【0015】
そこで、輝度値と不透明度の決定の仕方について説明する。
まず、輝度値についてであるが、各ボクセルの輝度値iは隣接するボクセルの値からの勾配より推定される法線ベクトルNを用いて、フォンのシェーディングモデルから式(2)のように計算される。

Figure 0004018300
ここで、Iは光源強度を表す。
a 、kd 、ks はそれぞれCGで通常用いる環境光、拡散光、鏡面反射光成分の割合を表す。
dは投影面からボクセルまでの距離を表し、
1 およびk2 は投影面に近いものほど明るく表示するデプスコーディング(depth coding)法のパラメータである。
Lはボクセルから光源への単位方向ベクトル、
Hは正反射光を求めるためのベクトルで、レイの方向である視線方向ベクトルVにより次式で求められる。
H=(V+L)/|V+L| ・・・(3)
ボリューム内のあるボクセルf(i,j,k)の法線ベクトルNは次式(4)で求められる。
N=▽f(i,j,k)/|▽f(i,j,k)| ・・・(4)
ここで、▽f(i,j,k)は、このボクセル値のx、y、z方向の勾配として次式(5)のように求められる。
Figure 0004018300
各ボクセルには色属性値を与えることもでき、その場合には、光源の色特性とボクセルの色値の積として、色を含めた輝度値を決定する。色を扱う場合にはR、G、Bの3原色で計算する方法があるが、より厳密には可視光領域でのスペクトル特性を考慮する必要もある。
【0016】
次に、不透明度の決定の仕方について説明する。
先に述べたように、不透明度αとしてボクセルの値そのものを用いることもできるが、ボクセル値に加えて隣接するボクセルの値からの勾配に基づいてαを決定する方法もある。勾配値を考慮するのは、異なる成分との境界を強調することができるからである。
いま、成分の境界となるボクセル値fと不透明度αが図16のように与えられているとする。このとき、任意のボクセル値fをもつボクセルの不透明度αは、勾配と図から補間された不透明度の積として次式(6)で与えられる。
Figure 0004018300
(fn <f<fn+1 のとき。それ以外のときはα=0)
【0017】
以上のようなボリウムレンダリング処理を用いると、従来のようなポリゴンに変換するという中間データ変換がないので、三次元のデータを正確に見ることができるという特長がある。
しかも、ポリゴンに変換すると、あるパラメータが1つの値のとき(例えば、温度がパラメータである場合、例えば20°Cのとき)のポリゴンは得られるものの、それ以外の値(温度)についての情報はこのポリゴンレンダリング処理では欠落してしまうが、ボリウムレンダリング処理を用いると操作者の見たい温度を表示装置を見ながら例えば10°Cから12°Cというように指定しながら見てゆくことが可能になる。
【0018】
ただ、このボリウムレンダリング処理の難点は処理に時間がかかることであり、入出力装置を使いながら対話形式によって指定することは従来はとても考えられないことであった。
本出願人は、ボリウムレンダリング処理が膨大なデータを処理するものであるが、その処理内容のほとんどが実は「繰り返し処理」であることに着目し、これに高速処理を可能とするMMXテクノロジを採用すれば、対話形式による指定が可能であることに至った。
そこで、次に、本発明のもう1つの基礎となっている高速処理を可能とするMMXテクノロジについて説明する。
【0019】
MMXテクノロジとは、元々はIntel社が開発した「マルチメディアや通信分野における処理を高速化する技術」である。つまり、従来のPentium(以下、「Pentium」と言う。)では負荷が重かった処理や不可能だった処理を、特にマルチメディアデータを扱う場合において、より高速に実行することが可能になった技術のことである。
その中核になるデータ処理手法が、M.J.Flynn氏が提唱した「SIMD」(Single Instruction-stream Multiple Data-stream )である。
SIMDはその言葉どおり、ひとつの命令で複数のデータを処理する手法である。複数データを一度に処理できれば実行速度が速くなることは分かるが、それが、マルチメディアに結び付くのは「マルチメディア処理」のほとんどが実は「繰り返し処理」だからである。画像データにエフェクト処理を行ったり、オーディオデータを再生したり、圧縮されたファイルを解凍したり、これらはいずれも元データに対して同じ作業を延々と繰り返す処理になる。
たとえば、元データがD1からD100まで100個の要素で構成されているとき、まずD1に対して処理(演算)を行い、次にD2、D3と順番に実行する。ひとつずつ実行すると100回の演算が必要になる。ところがこれをSIMDを使って1度に4つのデータを処理できる場合には、まずD1〜D4を取り出して演算し、次にD5〜D8取り出して処理することができるので、全部で25回の演算で済むことになる。
【0020】
信号処理によく使われる演算を例にとって説明する。
図17のように、2種類のデータ列(a,b)を最初から8つ互いにペアにして掛け合わせ、その和を求める処理を行なうとする。
▲1▼ 単純に演算処理の部分だけに注目すると、MMXテクノロジがない従来手法の場合だと、データ読み込みに16回、掛け算とシフトを8回、足し算を7回実行することになる。
▲2▼ ところが、MMXテクノロジでは、データ読み込みに4回、掛け算2回、シフト2回、足し算1回で済むことになる。
このように、▲1▼では39個、▲2▼では9個となり、その差は圧倒的に大きいうえ、さらにMMX命令の多くは1クロックで済むものが多いので、実行時間の差はさらに大きくなる。
そこで、本発明は、このように、従来数時間かかったボリュームレンダリングにSIMD手法を用いるとわずか数秒といった短時間で処理できることに着目したものである。
【0021】
以下、本発明の実施の形態を図面に基づき詳細に説明する。
図1は本発明の第一の実施の形態に係る画像処理システムの構成図である。
本システムは、コンピュータ本体1とディスプレイ2、コンピュータマウス3、キーボード4から構成される。ディスプレイ2は二次元画像を出力し、コンピュータマウス3は二次元の位置・動き入力とボタンによる入力が可能である。
操作者はディスプレイ2に表示された画面を見ながらコンピュータマウス3とキーボード4を使って、指示を与える。
図2は、本発明の実施の形態に係る装置の構成図で、CPU21は数値計算や画像処理の制御といった種々の処理を行なう。RAM22は三次元格子データ等を格納する。ROM23は処理プログラムや既知データを格納する。ここに本発明が使用するボリウムレンダリング処理プログラム231とSIMD技術を応用した命令などを利用した三次元高速処理プログラム232も格納されている。本発明はRAMやROMに限定されるものではなく、半導体記憶装置以外の記憶装置を用いてもよいことはいうまでもない。表示装置24は図1に示したディスプレー2で、CRTやカラー液晶表示装置などが使用される。入力装置25は図1に示したコンピュータマウス3とキーボード4である。
CPUは1個しか例示してないが、高速化を進めるためにボリウムレンダリング処理専用のCPUや三次元高速処理専用のCPUを別途用いることもある。
また、三次元格子データ等を外部とやり取りするためには、図示しないがパラレルI/OやシリアルI/Oがメインバスに接続される。
図3は、本発明による三次元座標指定方法により、三次元空間中に任意の線分を設定する手順のフロー図である。
図4は、本実施の形態を実現するための機能を、データの流れと共に図示したものである。コンピュータ本体1には、あらかじめ縦方向、横方向、高さ方向それぞれに大きさを持つ三次元データ集合が図4のB3に示されるデータ記憶に入力されており、個々のデータは、一つの数値からなるスカラデータであるものとする。
【0022】
図3において、ステップS1では、図4のB4とB5に示される変数に値を設定する。設定する値は、これまでの操作や条件設定などにより決定する。B4には三次元図法を表現するのに必要な視点位置、視点角度、視野角などの一連の情報が記憶され、B5には本実施の形態においては線分を表現するための二つの三次元座標が記憶される。
【0023】
ステップS2では、コンピュータ本体1のハードウェア・ソフトウェアによって実現される三次元画像表示機能(図4のB6)により、先ず三次元データ集合から三次元画像が生成される。三次元画像の生成には、B3のデータとB4の三次元作画パラメータが使用される。
本実施の形態においては、三次元画像は図5に示すようなものとなる。
【0024】
ステップS3では、B5に記憶されている座標情報を表現するための図形を作成する。この図形は、三次元画像の作成と同様な図法によって作成されるものであり、本実施の形態においては図6に示すようなものとなる。ここで、P1とP2は設定の対象となる二つの三次元座標を表現した図形であり、Lは操作者が線分を認識できるようにP1とP2をつないだ直線図形である。
【0025】
ステップS4では、ステップS2とS3で作成した二つの画像を重ね合わせてディスプレイ2上に表示する。本実施の形態においては、図7のようなものとなる。
【0026】
ステップS5では、コンピュータマウス3またはキーボード4による操作者入力があるまで待機する。
ステップS6では、操作者の入力が座標設定作業の終了を指示するものかどうかを判断し、もしそうであれば全体の処理を終了する。
ステップS7では、操作者の入力が三次元描画パラメータの変更を指示するものかどうかを判断し、もしそうであればステップS8の処理へ分岐する。
ステップS8では、三次元描画変数B4の内容を操作者の指示に従って更新し、ステップS2へループする。
【0027】
ステップS9では、操作者の指示が三次元座標の変更であると判断し、まず変更の指示が二つある点のどちらに対するものであるかを決定する。本実施の形態においては、コンピュータマウス3のボタンが最初に押された時点で、P1とP2のうちマウスポインタに近い方が変更対象であると決定する。
【0028】
ステップS10では、変更対象である点が動くことのできる面(Mとする)を決定する。本実施の形態においては、対象点は、三次元画像の視点位置から現在の座標に引いた直線(Nとする)と直交する方向に移動できるものとする。従って、この場合、面Mとしては直線Nと直交する平面となる。この様子を図8に示す。このような条件により、点は操作者から見て奥行き方向には動かないことになり、縦横に動かしている操作と対象点の三次元移動が直感的に一致し、理解し易くなる。
【0029】
ステップS11では、面Mを使用して補助画像を作成する。
本実施の形態の補助画像としては面Mによって三次元画像を切断した画像Aと面Mによって三次元データをサンプリングした画像Bの二種類を作成する。
画像Aを図9に、画像Bを図10に示す。
【0030】
ステップS12では、ステップS11で作成した補助画像を元々の表示画像に組み合わせてディスプレイ2に表示する。操作者は元々の表示画像と画像Aと画像Bを、選択し、好みの強さで重ね合わせてディスプレイ2に表示させることができる。図11に画像Aだけを選択した表示例と、図12に画像Aと画像Bを重ね合わせ表示例を示す。
ステップS13では、コンピュータマウス3またはキーボード4による操作者の入力があるまで待機する。
ステップS14では、操作者の入力が現在実行中の座標変更の終了を指示するものであるかどうかを判断する。もし終了の指示があれば、処理はステップS4にループする。
【0031】
ステップS15では、座標変更の内容を解釈する。操作者の入力は対象点の三次元空間における移動ベクトルに変換される。
ステップS16では、ステップS15で計算された移動ベクトルに基づき、座標変数B5の記憶内容を変更する。
ステップS17では、更新された座標変数B5の内容に基づき、新たな座標表示図形を作成する。即ち、P1、P2、Lのそれぞれの図形を新しい位置に描画する。
ステップS18では、ステップS17で作成された座標表示図形を三次元画像に重ね合わせてディスプレイ2に表示し、ステップS12にループする。
【0032】
以上のように、本発明は、以下の各機能の組み合わせからなるものである。
また、これらの各機能は、操作者に対話的操作を可能にするために十分な速度で、変化する角度などのパラメータに応じて連続的に動作し続けることができるものである。
(1) 経時的に変化するパラメータにあわせて、三次元画像を連続的に生成し続けることができる高速な三次元表示機能。
(2) 操作の対象となる点の座標を、数値として記憶する記憶機能。
(3) 前記(2)項の記憶機能によって記憶されている座標点と、関連する点・直線・図形・立体などを、(1)項の三次元表示と同様の投影図法により任意の角度で明確に描出することのできる図形表示機能。
(4) 前記(1)・(2)各項により生成された二つの画像を重ね合わせて表示する重ね合わせ表示機能。
(5) 操作者が、投影図法や角度などを前記(1)・(2)各項の機能に対して指示する機能指示機能。
(6) 操作者が、前記(4)項により生成された画像上において、操作の対象となる点の移動を視覚的・対話的・連続的に指示する点移動指示機能。
(7) 前項によって指示された画像上の移動を、その時点の三次元画像の投影図法・角度・設定された制約条件などを元に、三次元的な移動方向・移動距離に変換し、それを用いて前記(2)項の機能により記憶されている三次元座標を変更する三次元座標変更機能。
(8) 操作者が前記(6)項の機能を用いて対象となる点の移動を指示する際には、次の(a)・(b)・(c)の三種類の補助画像を、独立に表示・非表示が選択できるものである。
(a) 対象となる点が移動可能な全ての点集合から構成される、曲面・平面・直線・などの三次元物体を、図形として三次元画像に重ね合わせて表示することができる三次元物体重ね合わせ表示機能。
(b) 同じ三次元物体を用いて三次元データ集合からデータをサンプリングしたものを、三次元画像と同じ投影図法・角度により三次元画像に重ね合わせて表示するデータサンプリング重ね合わせ表示機能。
(c) 同じ三次元物体を用いて三次元データ集合に対して、切断・強調・変形など何らかの加工を施し、データに基づいている三次元画像表示も連動して変化する加工機能。
【0033】
従来装置では二次元画像で2点間の距離を測定することは可能であっても三次元画像で2点間の距離を測定することは時間がかかり過ぎて不可能であったため、そういうこと自体考えさえもしなかったのであるが、本発明によればそれが可能となってしまう。すなわち、通常の二次元表示装置とマウスを使用し、本発明による高速三次元画像生成を用いて、二次元表示装置に三次元空間画像を表示し、マウスで三次元空間内の点を指定して、回転・拡大・移動等を高速に行なうことにより、1画面の2点の投影だけでは分からなかった奥行きが回転をさせることにより位置を再指定でき、さらに回転させて位置を指定することを数回繰り返すだけで急速に収束して2点間の距離を正確に測定することが可能となる。
【0034】
【発明の効果】
上述のように、従来装置では考えさえもしなかった、通常の二次元表示装置を使っての例えば2点間の距離の測定が、本発明によれば、高速三次元画像生成機能により図形の回転・拡大・移動等が高速に行なわれるようになるので、1画面の2点の投影だけでは分からなかった奥行きを高速回転により即座に知ることができ、位置を再指定することを数回繰り返すことで2点間の距離を正確に測定することができるようになる。
以上は回転の例であるが、拡大・移動についても同様のことが言える。
【図面の簡単な説明】
【図1】本発明の実施の形態に係るシステム構成図である。
【図2】本発明の実施の形態に係る装置の構成図である。
【図3】本発明の実施の形態における処理フロー図である。
【図4】本発明の実施の形態におけるデータの流れを示すブロック図である。
【図5】B6により生成される三次元画像の例である。
【図6】B7により生成される座標表示図形の例である。
【図7】B8により生成される補助画像のない場合の重ね合わせ画像の例である。
【図8】本発明の実施の形態における、座標設定対象点の動ける面Mと視点との関係を示す図である。
【図9】B10により生成される補助画像の例として、面Mによって三次元画像を切断して作成した画像Aを示す。
【図10】B10により生成される補助画像の例として、面Mによって三次元データをサンプリングして作成した画像Bを示す。
【図11】B8により生成される補助画像AとBの場合の重ね合わせ画像の例で、元々の表示画像と画像Aだけを選択した表示例を示す。
【図12】B8により生成される補助画像AとBの場合の重ね合わせ画像の例で、元々の表示画像と画像Aおよび画像Bを重ね合わせた表示例を示す。
【図13】ボリウムレンダリングの概念を示す図である。
【図14】レイキャステイングにおけるサンプリングを示す図である。
【図15】ボリウムレンダリングの処理手順を示す図である。
【図16】勾配値を考慮した不透明度αを説明する図である。
【図17】あるデータ処理の手法を説明する図で、(a)は従来の手法、(b)はMMXテクノロジの手法を示す図である。
【符号の説明】
1 コンピュータ本体
2、24 ディスプレイ
3 コンピュータマウス
4 キーボード
21 CPU
22 RAM
23 ROM
231 ボリウムレンダリング処理プログラム
232 三次元高速処理プログラム
24 表示装置
25 入力装置[0001]
BACKGROUND OF THE INVENTION
The present invention relates to an image processing apparatus having a function of displaying a data set arranged in a three-dimensional space as a three-dimensional image, and more particularly to a user interface of various analysis applications based on images.
[0002]
[Prior art]
Data arranged in a three-dimensional space represented by this kind of numerical calculation data and medical imaging device data known in the past tend to be very large in number, and humans directly examine the numerical values of each data. Is often impossible in practice. Therefore, it is generally performed in many fields to express three-dimensional data as a three-dimensional image that can be easily recognized visually by humans.
The three-dimensional image generated in this way is not only sensuously viewed as a video, but is also used as important information for performing various analyzes according to the purpose of each field. There are many methods for analysis, but it is common to know the three-dimensional position accurately, measure the distance in the three-dimensional space, and calculate the volume of the space delimited by certain conditions In addition to the methods used in the field, there are many analysis methods specially devised for each field.
[0003]
[Problems to be solved by the invention]
When performing analysis using 3D spatial information using 3D images, the designation / change operation of position / shape / trajectory is specified / changed for one or more 3D coordinates using some input device. It is common to perform as a combination of operations.
However, an output device that displays a 3D image can only handle 2D information, and the input device can only specify 2D coordinates. It is difficult to specify the depth. Although it is possible to specify by direct numerical input of each coordinate, the value of the intuitive operation utilizing the image is completely lost, so the value as an image display analysis system has been greatly impaired.
In addition, there are three-dimensional input / output devices using special machines and devices, but they are very special and have many problems in terms of economy, reliability, ease of use, future availability, etc. It was hard to say that it reached a general and practical system.
Such difficulty in designating the three-dimensional coordinates requires a long learning period for the operator and places a great mental and time burden on the operation.
Furthermore, the contents intended by the operator are often not accurately recognized by the system, which increases the risk of damaging the most essential value of the system, namely the authenticity of the analysis results.
[0004]
The present invention solves the above-mentioned problems by enabling the operation of specifying point coordinates in a three-dimensional space to be performed simply, quickly and accurately using a generally available input / output device. It is.
[0005]
[Means for Solving the Problems]
  In order to achieve the above object, a three-dimensional image high-speed display device according to the present invention is provided.IsA CPU that performs various processes such as numerical calculation and image processing control, a first storage device that stores three-dimensional lattice data, a second storage device that stores processing programs and known data, a display device, and an input In the three-dimensional image display apparatus provided with the apparatus, a volume rendering processing program and a three-dimensional high-speed processing program are stored in the ROM.
  An image processing apparatus according to the present invention is an image processing apparatus that performs three-dimensional image processing using volume data, a coordinate storage unit that stores current coordinates of a three-dimensional point, and an operator's input, When moving the coordinates of the point that is the change target, information necessary to express the three-dimensional projection of the movable surface of the point that is the change target and the current coordinates of the point that is the change target A surface determining means (implemented by the CPU) for determining based on the above, a first image generating means for generating a first image obtained by cutting the volume data by the surface, and a second sampled volume data on the surface A second image creating means for creating a first image, a superimposed image creating means for creating a superimposed image by superimposing the first image and the second image, and displaying the superimposed image. It includes a Display means.
[0006]
  Also,According to the present inventionThree-dimensional image high-speed display deviceIsIt is characterized by having the following functions.
(1) A high-speed three-dimensional display function capable of continuously generating a three-dimensional image according to a parameter that changes over time.
(2) A storage function for storing the coordinates of points to be operated as numerical values.
(3) The coordinate points stored by the storage function of the item (2) and related points, straight lines, figures, solids, etc. can be displayed at an arbitrary angle by the same projection projection as the three-dimensional display of the item (1). Graphic display function that can be drawn clearly.
(4) A superposition display function for superposing and displaying the two images generated by the items (1) and (2).
(5) A function instruction function for an operator to instruct the projection projection, the angle, and the like to the functions of the items (1) and (2).
(6) A point movement instruction function for the operator to visually, interactively, and continuously instruct the movement of the point to be operated on the image generated in the item (4).
(7) The movement on the image instructed in the previous section is converted into a three-dimensional movement direction and distance based on the projection method, angle, and set constraints of the three-dimensional image at that time. A three-dimensional coordinate changing function for changing the three-dimensional coordinates stored by the function of the item (2). It is characterized by.
[0007]
  Also,According to the present inventionThe three-dimensional image high-speed display device further includes at least one of the following functions (a) to (c), and the operator moves the target point using the function described in (6) above. When the instruction is given, the three types of auxiliary images can be independently displayed or hidden.
(A) A three-dimensional object that can be displayed by superimposing a three-dimensional object such as a curved surface, a plane, a straight line, etc. composed of all point sets that can move the target point as a figure on a three-dimensional image. Overlay display function.
(B) A data sampling superposition display function for displaying data sampled from a three-dimensional data set using the same three-dimensional object and superposing it on the three-dimensional image with the same projection projection method and angle as the three-dimensional image.
(C) A processing function in which a 3D data set is subjected to some processing such as cutting, emphasis, and deformation using the same 3D object, and the 3D image display based on the data is changed in conjunction with the processing.
[0008]
  Also,According to the present inventionSpecifying coordinates in the original space interactively on a 3D imageLaw is,According to the present inventionUsing a high-speed 3D image display device, the data set obtained as 3D lattice point data is converted into a 3D image using the high-speed 3D image generation function, and the 3D image is displayed on the display. The coordinate points displayed graphically by the same projection method as the three-dimensional image are superimposed and displayed using the two-dimensional image displayed on the display as a visual guide. By interactively, continuously and intuitively grasping the current coordinate settings while continuously changing the original image creation parameters, the coordinates in the 3D space can be easily and accurately used while using the 2D input / output device. It is characterized by specifying.
[0009]
  Also,According to the present inventionThe invention further provides an auxiliary image that serves as a visual guide for changing the coordinates using the three-dimensional lattice point data, the three-dimensional image creation parameters at that time and the set coordinate values being changed while the coordinate setting values are being changed. More visual information is displayed by adding the function to generate the images continuously or interactively and superimposing the auxiliary images or replacing them with the original display images. The feature is that the coordinate point can be changed accurately and quickly according to the position.
[0010]
With the above configuration, accurate 3D coordinate point specification can be performed quickly and accurately on a 3D image that is easy to understand intuitively for the operator, while using 2D input devices and output devices that are widely used in general. It becomes possible.
The operator creates a three-dimensional image in which the coordinate point to be specified is more characteristically expressed by interactive specification such as an angle and a drawing condition, and displays an operation target figure displayed superimposed on the image. It can be easily installed at the position and shape you want.
While repeatedly performing the specified operation, the operator can check the 3D image and the superimposed image of the figure interactively and continuously at various angles and drawing conditions, and can always confirm whether there is a mistake visually. .
In addition, since the auxiliary image at the time of position change of the present invention makes it very easy to grasp the three-dimensional spatial position of the coordinate point on the three-dimensional image, including the depth, the number of position change operations and the coordinate point position Both the time required for the entire designation can be greatly reduced.
Further, since it becomes very easy to confirm whether or not the coordinate point after the position change has been accurately set to the three-dimensional position intended by the operator, the accuracy of position designation is greatly improved.
[0011]
DETAILED DESCRIPTION OF THE INVENTION
Before describing the embodiment of the present invention in detail, the volume rendering used by the present invention, which can directly convert a huge amount of three-dimensional lattice point data into three-dimensional data without converting it into conventional polygons, and Similarly, the MMX technology employed by the present invention will be described.
[0012]
First, volume rendering will be described.
In volume rendering, if X-ray CT (Computed Tomography) is used, the inside of the human body can be cut and displayed as a tomographic image. This tomographic image represents the amount of X-ray absorption at each point on the tomographic plane. By storing the tomographic images obtained by moving the tomographic planes little by little, the human body can be divided vertically, horizontally, and back and forth at regular intervals. Data can be obtained. Such data is called volume data, and depending on the measurement method, it can represent the concentration and density of a specific substance distributed in a certain space (volume).
When displaying a skeleton based on volume data, for example, in the conventional CG technique, it is necessary to first determine the shape of the bone surface and then apply a rendering algorithm such as ray tracing. However, depending on the location, the bone has a very complex shape, and the X-ray absorption rate may change smoothly between the bone and the adjacent tissue, so that bones, muscles, and internal organs are clearly separated. Is difficult.
In such a case, a method of drawing a tissue directly from volume data without determining the shape of the surface of the bone or the like is called volume rendering. As an application of volume rendering to other than medical images, it is used when clouds are displayed using the concentration distribution of water vapor in the atmosphere.
[0013]
The volume rendering method is as follows (reference: “computer graphics” (page 204 and later) issued by the Foundation for Image Information Education, supervised by the Technical CG Standard Textbook Editorial Committee).
In volume rendering, feature values distributed in a three-dimensional space are sampled at regular intervals along an arbitrary line of sight (ray), and the values are added to produce a semitransparent image. To do.
Sampling a volume along a ray is called ray casting. The concept of volume rendering is shown in FIG. Rays are emitted from each pixel on the projection plane and sample voxels in the volume at regular intervals.
In volume rendering, the inside is visualized by performing translucent display, which is realized by giving opacity α to each voxel. Although the opacity α may use the voxel value itself, a method for determining α based on the gradient from the value of the adjacent voxel has been proposed.
By increasing α of the voxel corresponding to the object surface to be displayed, it becomes possible to draw the target with emphasis close to being opaque. In ray casting, the product of the brightness value of each voxel and α is added sequentially. When the sum of α becomes 1 or when the ray exits the target volume, the processing for that pixel is terminated and added. The result is displayed as the value of that pixel.
The luminance value and opacity at the current sample position are i and α, respectively, and the integrated luminance value incident at this point is IinThen, the integrated luminance value I when passing through this sample point isoutIs represented by the following formula (1).
Iout= Iin(1-α) + iα (1)
In general, the luminance value and opacity at the sampling point in ray casting can be obtained from the values of each of the eight adjacent voxels by linear interpolation as shown in FIG.
[0014]
A general volume rendering processing procedure is shown in FIG.
For the three-dimensional volume data obtained from the CT image and simulation results of various physical quantity distributions, first, noise removal, image enhancement, and the like are executed in the preprocessing. Here, three-dimensional image processing for the entire volume may be performed. Next, the luminance value and opacity of each voxel are determined, and the final luminance value for each pixel is obtained by ray casting. The determination of these values is important in volume rendering.
[0015]
Therefore, how to determine the luminance value and the opacity will be described.
First, regarding the luminance value, the luminance value i of each voxel is calculated from the von shading model as shown in Equation (2) using the normal vector N estimated from the gradient from the value of the adjacent voxel. The
Figure 0004018300
Here, I represents the light source intensity.
ka, Kd, KsRespectively represent the ratio of ambient light, diffused light, and specular reflection light components normally used in CG.
d represents the distance from the projection plane to the voxel;
k1And k2Is a parameter of a depth coding method in which the closer to the projection plane is displayed brighter.
L is the unit direction vector from the voxel to the light source,
H is a vector for obtaining specularly reflected light, and is obtained from the line-of-sight direction vector V, which is the ray direction, by
H = (V + L) / | V + L | (3)
A normal vector N of a certain voxel f (i, j, k) in the volume is obtained by the following equation (4).
N = ▽ f (i, j, k) / | ▽ f (i, j, k) | (4)
Here, ▽ f (i, j, k) is obtained as the gradient of the voxel value in the x, y, and z directions as shown in the following equation (5).
Figure 0004018300
A color attribute value can also be given to each voxel. In this case, the luminance value including the color is determined as the product of the color characteristic of the light source and the color value of the voxel. In the case of handling colors, there is a method of calculating with three primary colors of R, G, and B, but more strictly, it is necessary to consider the spectral characteristics in the visible light region.
[0016]
Next, how to determine the opacity will be described.
As described above, the value of the voxel itself can be used as the opacity α, but there is a method of determining α based on the gradient from the value of the adjacent voxel in addition to the voxel value. The gradient value is taken into account because the boundary between different components can be emphasized.
Now, it is assumed that the voxel value f and the opacity α which are the boundaries of the components are given as shown in FIG. At this time, the opacity α of a voxel having an arbitrary voxel value f is given by the following equation (6) as a product of the gradient and the opacity interpolated from the figure.
Figure 0004018300
(Fn<F <fn + 1When. Otherwise, α = 0)
[0017]
When the volume rendering process as described above is used, there is no intermediate data conversion such as conversion to a polygon as in the prior art, and there is a feature that three-dimensional data can be accurately viewed.
Moreover, when converted into polygons, polygons can be obtained when a certain parameter has a single value (for example, when temperature is a parameter, for example, at 20 ° C), but information about other values (temperature) is Although this polygon rendering process is missing, if the volume rendering process is used, it is possible to see the temperature desired by the operator while designating the display device, for example, 10 ° C to 12 ° C. Become.
[0018]
However, the difficulty of this volume rendering process is that it takes time to process, and it has been unthinkable to specify it interactively using an input / output device.
The applicant of the present invention pays attention to the fact that the volume rendering process processes a large amount of data, but most of the processing content is actually "repetitive processing" and adopts MMX technology that enables high-speed processing. In this way, it was possible to specify interactively.
Therefore, the MMX technology that enables high-speed processing, which is another basis of the present invention, will be described next.
[0019]
The MMX technology is “technology for speeding up processing in the multimedia and communication fields” originally developed by Intel. In other words, a technology that makes it possible to execute processing that was heavy or impossible with conventional Pentium (hereinafter referred to as “Pentium”) at a higher speed, particularly when handling multimedia data. That is.
The core data processing method is M.M. J. et al. “SIMD” (Single Instruction-stream Multiple Data-stream) proposed by Mr. Flynn.
SIMD is a technique for processing a plurality of data with a single command, as the word suggests. It can be seen that if multiple data can be processed at once, the execution speed will be faster, but the reason why it is linked to multimedia is that most “multimedia processing” is actually “repetitive processing”. The effect processing is performed on the image data, the audio data is reproduced, and the compressed file is decompressed. In any case, the same operation is repeatedly performed on the original data.
For example, when the original data is composed of 100 elements from D1 to D100, first, processing (calculation) is performed on D1, and then D2 and D3 are executed in order. If executed one by one, 100 operations are required. However, when four data can be processed at one time using SIMD, D1 to D4 can be first extracted and then calculated, and then D5 to D8 can be extracted and processed. Will be enough.
[0020]
An explanation will be given by taking an example of operations often used for signal processing.
As shown in FIG. 17, it is assumed that eight types of data strings (a, b) are first paired and multiplied to obtain the sum.
{Circle over (1)} Focusing only on the arithmetic processing part, in the case of the conventional method without MMX technology, 16 times for data reading, 8 times multiplication and shifting, and 7 times addition are executed.
(2) However, with MMX technology, data reading requires four times, two multiplications, two shifts, and one addition.
Thus, 39 in (1) and 9 in (2), the difference is overwhelmingly large, and many MMX instructions only require one clock, so the difference in execution time is even greater. Become.
Thus, the present invention focuses on the fact that processing can be performed in a short time of only a few seconds when the SIMD method is used for volume rendering that has conventionally taken several hours.
[0021]
Hereinafter, embodiments of the present invention will be described in detail with reference to the drawings.
FIG. 1 is a configuration diagram of an image processing system according to the first embodiment of the present invention.
This system includes a computer main body 1, a display 2, a computer mouse 3, and a keyboard 4. The display 2 outputs a two-dimensional image, and the computer mouse 3 can input a two-dimensional position / motion and a button.
The operator gives an instruction using the computer mouse 3 and the keyboard 4 while viewing the screen displayed on the display 2.
FIG. 2 is a block diagram of the apparatus according to the embodiment of the present invention. The CPU 21 performs various processes such as numerical calculation and image processing control. The RAM 22 stores three-dimensional lattice data and the like. The ROM 23 stores processing programs and known data. A volume rendering processing program 231 used by the present invention and a three-dimensional high-speed processing program 232 using instructions applying SIMD technology are also stored here. The present invention is not limited to the RAM and the ROM, and it goes without saying that a storage device other than the semiconductor storage device may be used. The display device 24 is the display 2 shown in FIG. 1, and a CRT, a color liquid crystal display device or the like is used. The input device 25 is the computer mouse 3 and the keyboard 4 shown in FIG.
Although only one CPU is illustrated, a CPU dedicated to volume rendering processing or a CPU dedicated to three-dimensional high-speed processing may be used separately in order to increase the speed.
In order to exchange 3D grid data and the like with the outside, parallel I / O and serial I / O are connected to the main bus (not shown).
FIG. 3 is a flowchart of a procedure for setting an arbitrary line segment in the three-dimensional space by the three-dimensional coordinate designating method according to the present invention.
FIG. 4 illustrates functions for realizing the present embodiment together with a data flow. In the computer main body 1, a three-dimensional data set having a size in each of the vertical direction, the horizontal direction, and the height direction is input in advance into the data storage indicated by B3 in FIG. It is assumed to be scalar data consisting of
[0022]
In FIG. 3, in step S1, values are set in the variables indicated by B4 and B5 in FIG. The value to be set is determined by the previous operations and condition settings. B4 stores a series of information such as a viewpoint position, a viewpoint angle, and a viewing angle necessary for expressing a three-dimensional projection, and B5 stores two three-dimensional information for expressing a line segment in the present embodiment. The coordinates are stored.
[0023]
In step S2, a 3D image is first generated from the 3D data set by the 3D image display function (B6 in FIG. 4) realized by the hardware and software of the computer main body 1. B3 data and B4 three-dimensional drawing parameters are used to generate a three-dimensional image.
In the present embodiment, the three-dimensional image is as shown in FIG.
[0024]
In step S3, a graphic for expressing the coordinate information stored in B5 is created. This figure is created by the same projection method as that for creating a three-dimensional image, and in the present embodiment, it is as shown in FIG. Here, P1 and P2 are figures that express two three-dimensional coordinates to be set, and L is a straight line figure that connects P1 and P2 so that the operator can recognize the line segment.
[0025]
In step S4, the two images created in steps S2 and S3 are superimposed and displayed on the display 2. In the present embodiment, it is as shown in FIG.
[0026]
In step S5, the process waits until there is an operator input from the computer mouse 3 or the keyboard 4.
In step S6, it is determined whether or not the operator's input is an instruction to end the coordinate setting operation. If so, the entire process is ended.
In step S7, it is determined whether or not the operator's input is an instruction to change the three-dimensional drawing parameter. If so, the process branches to step S8.
In step S8, the contents of the three-dimensional drawing variable B4 are updated according to the operator's instruction, and the process loops to step S2.
[0027]
In step S9, it is determined that the operator's instruction is to change the three-dimensional coordinates, and first, it is determined which of the two points the change instruction is for. In the present embodiment, when the button of the computer mouse 3 is first pressed, it is determined that one of P1 and P2 that is closer to the mouse pointer is the object to be changed.
[0028]
In step S10, a surface (M) on which the point to be changed can move is determined. In the present embodiment, it is assumed that the target point can move in a direction orthogonal to a straight line (N) drawn from the viewpoint position of the three-dimensional image to the current coordinates. Therefore, in this case, the surface M is a plane orthogonal to the straight line N. This is shown in FIG. Under such conditions, the point does not move in the depth direction when viewed from the operator, and the operation moving vertically and horizontally and the three-dimensional movement of the target point intuitively match, making it easy to understand.
[0029]
In step S11, an auxiliary image is created using the surface M.
Two types of images are created as auxiliary images in the present embodiment: an image A obtained by cutting a three-dimensional image by the surface M and an image B obtained by sampling three-dimensional data by the surface M.
Image A is shown in FIG. 9, and image B is shown in FIG.
[0030]
In step S12, the auxiliary image created in step S11 is combined with the original display image and displayed on the display 2. The operator can select the original display image, the image A, and the image B, and display them on the display 2 by superimposing them with a desired strength. FIG. 11 shows a display example in which only image A is selected, and FIG. 12 shows a display example in which image A and image B are superimposed.
In step S13, the process waits until there is an operator input from the computer mouse 3 or the keyboard 4.
In step S14, it is determined whether or not the operator's input is an instruction to end the coordinate change currently being executed. If there is an instruction to end, the process loops to step S4.
[0031]
In step S15, the contents of the coordinate change are interpreted. The operator's input is converted into a movement vector in the three-dimensional space of the target point.
In step S16, the stored content of coordinate variable B5 is changed based on the movement vector calculated in step S15.
In step S17, a new coordinate display graphic is created based on the updated content of the coordinate variable B5. That is, the respective figures P1, P2, and L are drawn at new positions.
In step S18, the coordinate display figure created in step S17 is superimposed on the three-dimensional image and displayed on the display 2, and the process loops to step S12.
[0032]
As described above, the present invention is a combination of the following functions.
Each of these functions can continue to operate continuously according to parameters such as a changing angle at a speed sufficient to allow an operator to perform an interactive operation.
(1) A high-speed three-dimensional display function capable of continuously generating a three-dimensional image according to a parameter that changes over time.
(2) A storage function for storing the coordinates of points to be operated as numerical values.
(3) The coordinate points stored by the storage function of the item (2) and related points, straight lines, figures, solids, etc. can be displayed at an arbitrary angle by the same projection projection as the three-dimensional display of the item (1). Graphic display function that can be drawn clearly.
(4) A superposition display function for superposing and displaying the two images generated by the items (1) and (2).
(5) A function instruction function for an operator to instruct the projection projection, the angle, and the like to the functions of the items (1) and (2).
(6) A point movement instruction function for the operator to visually, interactively, and continuously instruct the movement of the point to be operated on the image generated in the item (4).
(7) The movement on the image instructed in the previous section is converted into a three-dimensional movement direction and distance based on the projection method, angle, and set constraints of the three-dimensional image at that time. A three-dimensional coordinate changing function for changing the three-dimensional coordinates stored by the function of the item (2).
(8) When the operator uses the function of item (6) to instruct the movement of the target point, the following three types of auxiliary images (a), (b), and (c) are used: Display / hide can be selected independently.
(A) A three-dimensional object that can be displayed by superimposing a three-dimensional object such as a curved surface, a plane, a straight line, etc. composed of all point sets that can move the target point as a figure on a three-dimensional image. Overlay display function.
(B) A data sampling superposition display function for displaying data sampled from a three-dimensional data set using the same three-dimensional object and superposing it on the three-dimensional image with the same projection projection method and angle as the three-dimensional image.
(C) A processing function in which a 3D data set is subjected to some processing such as cutting, emphasis, and deformation using the same 3D object, and the 3D image display based on the data is changed in conjunction with the processing.
[0033]
In the conventional apparatus, although it is possible to measure the distance between two points with a two-dimensional image, it is too much time to measure the distance between two points with a three-dimensional image. I didn't even think about it, but according to the present invention it is possible. That is, using a normal two-dimensional display device and a mouse, using the high-speed three-dimensional image generation according to the present invention, a three-dimensional space image is displayed on the two-dimensional display device, and a point in the three-dimensional space is designated with the mouse. By rotating, enlarging, moving, etc. at high speed, the depth can be re-designated by rotating the depth that could not be found by only projecting two points on one screen, and the position can be further designated by rotating it. It is possible to measure the distance between two points accurately by converging rapidly only by repeating several times.
[0034]
【The invention's effect】
As described above, for example, the distance between two points using a normal two-dimensional display device, which was not even considered in the conventional device, can be measured by a high-speed three-dimensional image generation function according to the present invention.・ Because enlargement and movement are performed at high speed, the depth that could not be found by only projecting two points on one screen can be immediately known by high-speed rotation, and re-specifying the position several times Thus, the distance between the two points can be accurately measured.
The above is an example of rotation, but the same can be said for enlargement and movement.
[Brief description of the drawings]
FIG. 1 is a system configuration diagram according to an embodiment of the present invention.
FIG. 2 is a configuration diagram of an apparatus according to an embodiment of the present invention.
FIG. 3 is a processing flow diagram according to the embodiment of the present invention.
FIG. 4 is a block diagram showing a data flow in the embodiment of the present invention.
FIG. 5 is an example of a three-dimensional image generated by B6.
FIG. 6 is an example of a coordinate display graphic generated by B7.
FIG. 7 is an example of a superimposed image when there is no auxiliary image generated by B8.
FIG. 8 is a diagram showing a relationship between a moving surface M of a coordinate setting target point and a viewpoint according to the embodiment of the present invention.
FIG. 9 shows an image A created by cutting a three-dimensional image along a plane M as an example of an auxiliary image generated by B10.
FIG. 10 shows an image B created by sampling three-dimensional data using a plane M as an example of an auxiliary image generated by B10.
FIG. 11 is an example of a superimposed image in the case of auxiliary images A and B generated by B8, and shows a display example in which only the original display image and image A are selected.
FIG. 12 is an example of a superimposed image in the case of auxiliary images A and B generated by B8, and shows a display example in which the original display image and images A and B are superimposed.
FIG. 13 is a diagram showing the concept of volume rendering.
FIG. 14 is a diagram illustrating sampling in ray casting.
FIG. 15 is a diagram illustrating a processing procedure of volume rendering.
FIG. 16 is a diagram illustrating opacity α in consideration of a gradient value.
17A and 17B are diagrams for explaining a certain data processing method, in which FIG. 17A shows a conventional method, and FIG. 17B shows a method of MMX technology.
[Explanation of symbols]
1 Computer body
2, 24 display
3 Computer mouse
4 Keyboard
21 CPU
22 RAM
23 ROM
231 Volume rendering program
232 Three-dimensional high-speed processing program
24 display devices
25 Input device

Claims (3)

ボリュームデータを用いて3次元画像処理を行なう画像処理装置であって、
3次元上の点の現在の座標を記憶する座標記憶手段と、
操作者の入力に従って、変更対象である点の座標を移動させるときに、前記変更対象である点の動くことの出来る面を、三次元図法を表現するのに必要な情報と前記変更対象である点の現在の座標とに基づいて決定する面決定手段と、
前記面によって前記ボリュームデータを切断した第一の画像を作成する第一画像作成手段と、
前記面上の前記ボリュームデータをサンプリングした第二の画像を作成する第二画像作成手段と、
前記第一の画像と前記第二の画像を重ね合わせた重ね合わせ画像を作成する重ね合わせ画像作成手段と、
前記重ね合わせ画像を表示する表示手段と、
を備える画像処理装置。
An image processing apparatus that performs three-dimensional image processing using volume data,
Coordinate storage means for storing the current coordinates of the three-dimensional point;
When the coordinates of the point to be changed are moved according to the input from the operator, the surface on which the point to be changed can move is the information necessary for expressing the 3D projection and the change target. Surface determining means for determining based on the current coordinates of the point ;
First image creating means for creating a first image obtained by cutting the volume data by the surface;
Second image creation means for creating a second image obtained by sampling the volume data on the surface;
A superimposed image creating means for creating a superimposed image in which the first image and the second image are superimposed;
Display means for displaying the superimposed image;
An image processing apparatus comprising:
請求項1記載の画像処理装置であって、
前記面は、視点位置から前記変更対象である点の現在の座標に引いた直線に対して直交する平面である画像処理装置。
The image processing apparatus according to claim 1,
The image processing apparatus, wherein the surface is a plane orthogonal to a straight line drawn from a viewpoint position to a current coordinate of the point to be changed .
請求項1記載の画像処理装置であって、
前記座標記憶手段は、操作者の入力に従って移動可能な複数の点の現在の座標を記憶し、
前記変更対象である点は、前記複数の点の中から選択された点である画像処理装置。
The image processing apparatus according to claim 1,
The coordinate storage means stores current coordinates of a plurality of points that can be moved in accordance with an operator's input,
The point to be changed, the image processing apparatus is a point selected from the plurality of points.
JP27285099A 1999-09-27 1999-09-27 Image processing device Expired - Lifetime JP4018300B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP27285099A JP4018300B2 (en) 1999-09-27 1999-09-27 Image processing device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP27285099A JP4018300B2 (en) 1999-09-27 1999-09-27 Image processing device

Publications (2)

Publication Number Publication Date
JP2001101451A JP2001101451A (en) 2001-04-13
JP4018300B2 true JP4018300B2 (en) 2007-12-05

Family

ID=17519652

Family Applications (1)

Application Number Title Priority Date Filing Date
JP27285099A Expired - Lifetime JP4018300B2 (en) 1999-09-27 1999-09-27 Image processing device

Country Status (1)

Country Link
JP (1) JP4018300B2 (en)

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4653938B2 (en) * 2003-01-14 2011-03-16 ザイオソフト株式会社 Volume rendering image processing method, volume rendering image processing apparatus, and program
JP2007522826A (en) * 2004-02-18 2007-08-16 コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ Volume visualization method using tissue mixing
JP2006055213A (en) * 2004-08-17 2006-03-02 Konica Minolta Medical & Graphic Inc Image processor and program
US7792343B2 (en) * 2004-11-17 2010-09-07 Koninklijke Philips Electronics N.V. Elastic image registration functionality
US20070132754A1 (en) * 2005-12-12 2007-06-14 Intel Corporation Method and apparatus for binary image classification and segmentation
JP5065740B2 (en) * 2007-04-12 2012-11-07 富士フイルム株式会社 Image processing method, apparatus, and program
JP6005905B2 (en) * 2011-04-06 2016-10-12 東芝メディカルシステムズ株式会社 Image processing system, image processing apparatus, and image processing method
JP2013017056A (en) * 2011-07-04 2013-01-24 Toshiba Corp Image processing system, image processing method, and medical image diagnostic device
JP5868051B2 (en) * 2011-07-20 2016-02-24 株式会社東芝 Image processing apparatus, image processing method, image processing system, and medical image diagnostic apparatus
JP7003635B2 (en) * 2017-12-22 2022-01-20 大日本印刷株式会社 Computer program, image processing device and image processing method

Also Published As

Publication number Publication date
JP2001101451A (en) 2001-04-13

Similar Documents

Publication Publication Date Title
Bruckner et al. Volumeshop: An interactive system for direct volume illustration
JP3483929B2 (en) 3D image generation method
RU2497194C2 (en) Method and device for 3d visualisation of data sets
US20100149174A1 (en) Information Processing Apparatus and Program
US7586501B2 (en) Simultaneous projection of multi-branched vessels and their context on a single image
JP2006302103A (en) Developed image projection method, developed image projection program and developed image projector
EP1775685B1 (en) Information processing device and program
JP4018300B2 (en) Image processing device
Haubner et al. Virtual reality in medicine-computer graphics and interaction techniques
CN101275993A (en) System and method for fast texture-based tensor field visualization for DT-MRI
Svakhine et al. Illustration-inspired depth enhanced volumetric medical visualization
JP2006122663A (en) Image processing apparatus and image processing method
Noon A volume rendering engine for desktops, laptops, mobile devices and immersive virtual reality systems using GPU-based volume raycasting
JP3232612B2 (en) 3D image information presentation method
WO2006067714A2 (en) Transparency change of view-obscuring objects
Bruckner et al. Illustrative focus+ context approaches in interactive volume visualization
Behrendt et al. 2.5 D Geometric Mapping of Aortic Blood Flow Data for Cohort Visualization.
Bornik et al. Interactive editing of segmented volumetric datasets in a hybrid 2D/3D virtual environment
Mensmann et al. Interactive cutting operations for generating anatomical illustrations from volumetric data sets
JPH05266214A (en) Picture display method
US7046241B2 (en) Oriented three-dimensional editing glyphs
Shimabukuro et al. Visualisation and reconstruction in dentistry
Fons et al. Rendering and interacting with volume models in inmmersive environments
Nystrom et al. Segmentation and visualization of 3D medical images through haptic rendering
WO2022004898A1 (en) Image processing device, image processing method, and program

Legal Events

Date Code Title Description
RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20060425

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20061031

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20061108

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20061221

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20070606

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20070727

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: 20070822

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20070920

R150 Certificate of patent or registration of utility model

Ref document number: 4018300

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

Free format text: PAYMENT UNTIL: 20100928

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20100928

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20110928

Year of fee payment: 4

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

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

Free format text: PAYMENT UNTIL: 20120928

Year of fee payment: 5

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

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

Free format text: PAYMENT UNTIL: 20130928

Year of fee payment: 6

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

EXPY Cancellation because of completion of term