(57)【特許請求の範囲】
【請求項１】
三次元空間上において、少なくとも一の方向に層を形成する複数の平面を含む平面群を設定し、前記平面群のうち一つを基準面とし、視軸と前記基準面との位置関係に基づいて決定する描画順に従って前記複数の平面の画像を形成する制御手段を備え、
前記制御手段は、前記描画順に従って前記複数の平面の画像を形成するとき、前記視軸上で前記基準面から手前側に位置する平面および後方側に位置する平面について、前記基準面に近い平面を優先して順次にまたは交互に画像形成する、
画像処理装置。
【請求項２】
視軸方向に重なって存在する複数の平面間で、前記視軸上で手前側に位置する手前面の画像を形成するときに、前記手前面の後方に位置する後方面と前記手前面とが重複する部分において、前記手前面の不透明度に基づいて画像を形成する第１形成手段をさらに備え、
前記制御手段は、前記視軸上で前記基準面から手前側に位置する平面については、前記第１形成手段によって画像形成する請求項１に記載の画像処理装置。
【請求項３】
視軸方向に重なって存在する複数の平面間で、前記視軸上で手前側に位置する手前面に重複する部分を省略して前記手前面の後方に位置する後方面の画像を形成する第２形成手段をさらに備え、
前記制御手段は、前記視軸上で前記基準面から後方側に位置する平面については、前記第２形成手段によって画像形成する請求項１または２に記載の画像処理装置。
【請求項４】
コンピュータが、
三次元空間上において、少なくとも一の方向に層を形成する複数の平面を含む平面群を設定し、前記平面群のうち一つを基準面とし、視軸と前記基準面との位置関係に基づいて決定する描画順に従って前記複数の平面の画像を形成する制御ステップを実行し、
前記制御ステップは、前記描画順に従って前記複数の平面の画像を形成するとき、前記視軸上で前記基準面から手前側に位置する平面および後方側に位置する平面について、前記基準面に近い平面を優先して順次にまたは交互に画像形成する、
画像処理方法。
【請求項５】
コンピュータが、
視軸方向に重なって存在する複数の平面間で、前記視軸上で手前側に位置する手前面の画像を形成するときに、前記手前面の後方に位置する後方面と前記手前面とが重複する部分において、前記手前面の不透明度に基づいて画像を形成する第１形成ステップをさらに実行し、
前記制御ステップは、前記視軸上で前記基準面から手前側に位置する平面については、前記第１形成ステップによって画像形成する請求項４に記載の画像処理方法。
【請求項６】
コンピュータが、
視軸方向に重なって存在する複数の平面間で、前記視軸上で手前側に位置する手前面に重複する部分を省略して前記手前面の後方に位置する後方面の画像を形成する第２形成ステップをさらに実行し、
前記制御ステップは、前記視軸上で前記基準面から後方側に位置する平面については、前記第２形成ステップによって画像形成する請求項４または５に記載の画像処理方法。
【請求項７】
コンピュータに、
三次元空間上において、少なくとも一の方向に層を形成する複数の平面を含む平面群を設定し、前記平面群のうち一つを基準面とし、視軸と前記基準面との位置関係に基づいて決定する描画順に従って前記複数の平面の画像を形成する制御ステップを実行させ、
前記制御ステップは、前記描画順に従って前記複数の平面の画像を形成するとき、前記視軸上で前記基準面から手前側に位置する平面および後方側に位置する平面について、前記基準面に近い平面を優先して順次にまたは交互に画像形成する、
画像処理プログラム。
【請求項８】
コンピュータに、
視軸方向に重なって存在する複数の平面間で、前記視軸上で手前側に位置する手前面の画像を形成するときに、前記手前面の後方に位置する後方面と前記手前面とが重複する部分において、前記手前面の不透明度に基づいて画像を形成する第１形成ステップをさらに実行させ、
前記制御ステップは、前記視軸上で前記基準面から手前側に位置する平面については、前記第１形成ステップによって画像形成する請求項７に記載の画像処理プログラム。
【請求項９】
コンピュータに、
視軸方向に重なって存在する複数の平面間で、前記視軸上で手前側に位置する手前面に重複する部分を省略して前記手前面の後方に位置する後方面の画像を形成する第２形成ステップをさらに実行させ、
前記制御ステップは、前記視軸上で前記基準面から後方側に位置する平面については、前記第２形成ステップによって画像形成する請求項７または８に記載の画像処理プログラム。
【請求項１０】
第１情報処理装置が、
少なくとも一の方向に層を形成する複数の平面を含む平面群から基準面を決定し、前記基準面の描画順を最初とし、前記基準面に近い平面を優先して描画順を決定する描画順決定手段と、
前記平面群と、前記描画順決定手段が決定した前記描画順を送信する送信手段と、を備え、
第２情報処理装置が、
前記平面群と、前記描画順決定手段が決定した前記描画順とを受信する受信手段と、
視軸の方向および前記描画順に基づいて、前記平面群の各平面の画像を表示画像に合成する制御手段と、を備え、
前記描画順は、前記視軸上で前記基準面から手前側に位置する平面および後方側に位置する平面について、前記基準面に近い平面を優先して順次にまたは交互に前記複数の平面の画像を合成するように決定されている、
画像処理システム。
【請求項１１】
前記制御手段は、前記平面の画像を合成するときに、前記平面の画像と前記基準面の画像もしくは既に合成した表示画像とが重複する部分において、前記平面が視軸上で手前側に位置する場合、当該部分において前記平面の不透明度に基づいて、前記平面の画像と前記基準面の画像もしくは既に合成した表示画像とを新たな表示画像に合成する
請求項１０に記載の画像処理システム。
【請求項１２】
前記制御手段は、前記平面の画像を合成するときに、前記平面の画像と前記基準面の画像もしくは既に合成した画像とが重複する部分において、前記平面が視軸上で後方側に位置する場合、当該部分において前記平面の画像を省略して、前記平面の画像と前記基準面の画像もしくは既に合成した表示画像とを新たな表示画像に合成する
請求項１０または１１に記載の画像処理システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、三次元画像の画像処理に関する。
【背景技術】
【０００２】
不透明度（または、透明度）を有する２次元画像の積層による従来のボリュームレンダリング手法では、αブレンディングによる画面形成を行う際、視軸方向に対して後方面から手前面の順で描画処理が行われるように、Ｚ値によるソーティングが行われる。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０００−１９４８７８号公報
【特許文献２】特開平１１−６６３４０号公報
【特許文献３】特開２００３−２６３６５１号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、Ｚ値によるソーティング処理は視軸の変更が起こった場合に必ず行われるため、計算コストがかかるという問題がある。
【０００５】
本発明は、計算コストが低い画像処理装置を提供することを課題とする。
【課題を解決するための手段】
【０００６】
開示の技術は、上記課題を解決するために、以下の手段を採用する。
【０００７】
即ち、第１の態様は、
三次元空間上において、少なくとも一の方向に層を形成する複数の平面を含む平面群を設定し、前記平面群のうち一つを基準面とし、視軸と基準面との位置関係に基づいて画像を形成する制御手段
を備える画像処理装置である。
【０００８】
第２の態様は、さらに、
視軸方向に重なって存在する複数の平面間で、前記視軸上で手前側に位置する手前面の画像を形成するときに、前記手前面の後方に位置する後方面と前記手前面とが重複する部分において、前記手前面の不透明度に基づいて画像を形成する第１形成手段をさらに備え、
前記制御手段は、前記視軸上で前記基準面から手前側に位置する平面については、前記基準面に近い面を優先して前記複数の平面間で前記第１形成手段によって画像形成する画像処理装置である。
【０００９】
第３の態様は、さらに、
視軸方向に重なって存在する複数の平面間で、前記視軸上で手前側に位置する手前面に重複する部分を省略して前記手前面の後方側の面の表示画像を形成する第２形成手段をさらに備え、
前記制御手段は、前記視軸上で前記基準面から後方側に位置する平面については、前記基準面に近い面を優先して前記第２形成手段によって画像形成する画像処理装置である。
【００１０】
第４の態様は、
第１情報処理装置が、
少なくとも一の方向に層を形成する複数の平面を含む平面群から基準面を決定し、前記基準面の描画順を最初とし、前記基準面に近い面を優先して描画順を決定する描画順決定手段と、
前記平面群と、前記描画順決定手段が決定した前記描画順を送信する送信手段と、を備え、
第２情報処理装置が、
前記平面群と、前記描画順決定手段が決定した前記描画順を受信する受信手段と、
視軸の方向および前記描画順に基づいて、前記平面群の各平面の画像を表示画像に合成する制御手段と、を備える
画像処理システムである。
【００１１】
第５の態様は、さらに、
前記制御手段は、前記平面の画像を合成するときに、前記平面の画像と前記基準面の画像もしくは既に合成した表示画像とが重複する部分において、前記平面が視軸上で手前側に位置する場合、当該部分において前記平面の不透明度に基づいて、前記平面の画像と前記基準面の画像もしくは既に合成した表示画像とを新たな表示画像に合成する
画像処理システムである。
【００１２】
第６の態様は、さらに、
前記制御手段は、前記平面の画像を合成するときに、前記平面の画像と前記基準面の画像もしくは既に合成した画像とが重複する部分において、前記平面が視軸上で後方側に位置する場合、当該部分において前記平面の画像を省略して、前記平面の画像と前記基準面の画像もしくは既に合成した表示画像とを新たな表示画像に合成する
画像処理システムである。
【００１３】
開示の態様は、プログラムが情報処理装置によって実行されることによって実現されてもよい。即ち、開示の構成は、上記した態様における各手段が実行する処理を、情報処理装置に対して実行させるためのプログラム、或いは当該プログラムを記録した記録媒体として特定することができる。また、開示の構成は、上記した各手段が実行する処理を情報処理装置が実行する方法をもって特定されてもよい。開示の態様は、プログラムが複数の情報処理装置によって処理を分担して実行されることによって実現されてもよい。
【発明の効果】
【００１４】
開示の技術によれば、計算コストが低い画像処理装置を提供することができる。
【図面の簡単な説明】
【００１５】
【図１】図１は、画像処理装置の構成例を示す図である。
【図２】図２は、情報処理装置の例を示す図である。
【図３】図３は、画像処理装置の動作フローの例を示す図である。
【図４】図４は、ポリゴンデータの例を示す図である。
【図５】図５は、スライス面群の例を示す図である。
【図６】図６は、スライス面と描画順の例（１）を示す図である。
【図７】図７は、スライス面と描画順の例（２）を示す図である。
【図８】図８は、スライス面と描画順の例（３）を示す図である。
【図９】図９は、ジオメトリ変換部が生成するポリゴンデータ（スライス面データ）の例を示す図である。
【図１０】図１０は、レンダリング処理部が算出するスライス面データ（ポリゴンＩＤ００１）についてのピクセル（スクリーン座標）ごとのＺ値データの例を示す図である。
【図１１】図１１は、レンダリング処理部によるレンダリング処理の動作フローの例（１）を示す図である。
【図１２】図１２は、レンダリング処理部によるレンダリング処理の動作フローの例（２）を示す図である。
【図１３】図１３は、画像データの例を示す図である。
【図１４】図１４は、レンダリング処理部の処理を経た表示結果の例（１）を示す図である。
【図１５】図１５は、レンダリング処理部の処理を経た表示結果の例（２）を示す図である。
【図１６】図１６は、レンダリング処理部の処理を経た表示結果の例（３）を示す図である。
【図１７】図１７は、変形例の画像処理システムの例を示す図である。
【発明を実施するための形態】
【００１６】
不透明度を有する２次元画像の積層によるボリュームレンダリングにおいて、画像のレンダリングの順番を制御し、レンダリング処理を確実に且つ効率的に行うことができる画像処理装置について説明する。
【００１７】
以下、図面を参照して実施形態について説明する。実施形態の構成は例示であり、開示の構成は、開示の実施形態の具体的構成に限定されない。開示の構成の実施にあたって、実施形態に応じた具体的構成が適宜採用されてもよい。
【００１８】
〔実施形態１〕
（構成例）
図１は、画像処理装置の構成例を示す図である。画像処理装置１００は、データ作成部１０２、描画順決定部１０４、ジオメトリ変換部１０６、レンダリング処理部１０８、出力部１１０を含む。各処理部は、それぞれ、複数の処理部に分かれて動作してもよい。また、各処理部のうち２以上の処理部が、１つの処理部として動作してもよい。
【００１９】
データ作成部１０２は、元データから、ポリゴンデータ、テクスチャデータを生成する。元データは、例えば、三次元位置座標データ、および、各位置に対応する値データである。本発明の実施において、元データの生成元に限定はない。元データは、様々な測定装置、計測装置、診断装置、画像形成装置、計算機シミュレーション、数値解析等から得ることができる。
【００２０】
データ作成部１０２は、ポリゴンデータを含むディスプレイデータを生成してもよい。ポリゴンデータは、ここでは、主に、スライス面群データである。スライス面群データは、複数のスライス面データを含む。データ作成部１０２は、境界のない複数のスライス面データを含むスライス面群データを作成してもよい。
【００２１】
描画順決定部１０４は、スライス面群データにおける各スライス面データの描画順を決定する。
【００２２】
ジオメトリ変換部１０６は、データ作成部１０２で作成されたポリゴンデータを、画面表示のための数値データに変換する。
【００２３】
レンダリング処理部１０８は、ジオメトリ変換部１０６で変換された数値データ、描画順決定部１０４で決定された描画順に基づいて、レンダリング処理を行い、表示装置に画像を表示するための画像データを生成する。
【００２４】
バッファ部１１０は、データ作成部１０２が生成したポリゴンデータ、視点データ、描画順決定部１０４が決定したスライス面データの描画順、レンダリング処理部１０８におけるレンダリング処理で使用されるデータ等が格納される。バッファ部１１０には、画像処理装置１００で使用されるあらゆるデータ等が格納されうる。バッファ部１１０は、複数の記憶装置によって実現されてもよい。
【００２５】
表示部１１２は、レンダリング処理部１０８で処理された画像データによる画像を表示する。表示部１１２は、画像処理装置１００の外部の表示装置に画像を表示させてもよい。また、表示部１１２は、画像処理装置１００の外部の情報処理装置に当該画像データを送信し、当該外部の情報処理装置の表示部に当該画像データによる画像を表示させてもよい。
【００２６】
画像処理装置１００は、パーソナルコンピュータ（ＰＣ、Personal Computer）、サー
バマシン、ワークステーション（ＷＳ、Work Station）、ＰＤＡ（Personal Digital Assistant）、スマートフォン、携帯電話、カーナビゲーションのような専用または汎用のコンピュータ、あるいは、コンピュータを搭載した電子機器を使用して実現可能である。画像処理装置１００を構成する各要素は、サーバおよびクライアントに分割して搭載されてもよい。
【００２７】
図２は、情報処理装置の例を示す図である。図２の例では、コンピュータ、すなわち、情報処理装置は、プロセッサ、主記憶装置、及び、二次記憶装置、表示装置、通信インタフェース装置のような周辺装置とのインタフェース装置を含む。主記憶装置及び二次記憶装置は、コンピュータ読み取り可能な記録媒体である。情報処理装置は、表示装置を含まなくてもよい。
【００２８】
コンピュータは、プロセッサが記録媒体に記憶されたプログラムを主記憶装置の作業領域にロードして実行し、プログラムの実行を通じて周辺機器が制御されることによって、所定の目的に合致した機能を実現することができる。
【００２９】
プロセッサは、例えば、ＣＰＵ（Central Processing Unit）、ＧＰＵ（Graphics Processing Unit）やＤＳＰ（Digital Signal Processor）である。
【００３０】
主記憶装置は、例えば、ＲＡＭ（Random Access Memory）やＲＯＭ（Read Only Memory）を含む。
【００３１】
二次記憶装置は、例えば、ＥＰＲＯＭ（Erasable Programmable ROM）、ハードディス
クドライブ（ＨＤＤ、Hard Disk Drive）である。また、二次記憶装置は、リムーバブル
メディア、即ち可搬記録媒体を含むことができる。リムーバブルメディアは、例えば、ＵＳＢ（Universal Serial Bus）メモリ、あるいは、ＣＤ（Compact Disk）やＤＶＤ（Digital Versatile Disk）のようなディスク記録媒体である。
【００３２】
表示装置は、例えば、ＣＲＴ（Cathode Ray Tube）ディスプレイ、ＬＣＤ（Liquid Crystal Display）等の画像を表示する装置である。表示装置は、ＶＲＡＭ（Video RAM）、
ＲＡＭなどの記憶装置を含んでもよい。
【００３３】
通信インタフェース装置（通信Ｉ／Ｆ装置）は、例えば、ＬＡＮ（Local Area Network）インタフェースボードや、無線通信のための無線通信回路である。
【００３４】
周辺装置は、上記の二次記憶装置や通信インタフェース装置の他、キーボードやポイン
ティングデバイスのような入力装置や、ディスプレイ装置やプリンタのような出力装置を含む。また、入力装置は、カメラのような映像や画像の入力装置や、マイクロフォンのような音声の入力装置を含むことができる。また、出力装置は、スピーカのような音声の出力装置を含むことができる。
【００３５】
画像処理装置１００を実現するコンピュータは、プロセッサが二次記憶装置に記憶されているプログラムを主記憶装置にロードして実行することによって、データ作成部１０２、描画順決定部１０４、ジオメトリ変換部１０６、レンダリング処理部１０８、表示部１１２としての機能を実現する。一方、バッファ部１１０は、主記憶装置、二次記憶装置、表示装置内の記憶装置の記憶領域に設けられる。
【００３６】
一連の処理は、ハードウェアにより実行させることもできるが、ソフトウェアにより実行させることもできる。
【００３７】
プログラムを記述するステップは、記載された順序に沿って時系列的に行われる処理はもちろん、必ずしも時系列的に処理されなくても、並列的または個別に実行される処理を含む。
【００３８】
（動作例）
図３は、画像処理装置の動作フローの例を示す図である。
【００３９】
画像処理装置１００のデータ作成部１０２は、元データに基づいて、ポリゴンデータ（スライス面群データ）、テクスチャデータを作成する（Ｓ１０１）。元データは、画像処理装置１００の記憶装置、周辺装置などから取得される。また、元データは、ネットワークを介して外部の情報処理装置等から取得されてもよい。元データは、表示する画像の画像データの元となるデータである。元データは、例えば、三次元領域における、三次元位置座標データ、および、各位置に対応する値データである。三次元座標は、直交座標系に限定されず、極座標系、円筒座標系などの他の座標系が採用されてもよい。ポリゴンデータは、スライス面の頂点の三次元座標、法線ベクトル、テクスチャ座標を含む。ここでは、ポリゴンデータは、スライス面データとして作成される。データ作成部１０２は、元データに基づいて、複数のスライス面データを生成する。各スライス面データのスライス面は、互いに平行である。１群の複数のスライス面データは、スライス面群データともいう。複数のスライス面群データが生成されてもよい。テクスチャデータは、ポリゴンにテクスチャをマッピングするためのデータである。テクスチャデータは、例えば、座標毎に、元データに基づく値、色、不透明度等の情報を含む。元データに基づく値と色および不透明度との対応関係が、テクスチャデータと別に用意されてバッファ部１１０等に格納されていてもよい。スライス面群データは、少なくとも３つのスライス面を有する。作成されたポリゴンデータ、テクスチャデータ等は、バッファ部１１０に格納される。
【００４０】
図４は、ポリゴンデータの例を示す図である。図４では、ポリゴンデータとして、ポリゴンＩＤ００１、ポリゴンＩＤ００２の例が示される。ポリゴンＩＤ００１、ポリゴンＩＤ００２は、それぞれ、４つの頂点を有する四角形ポリゴンである。図４の例では、ポリゴンＩＤ００１、ポリゴンＩＤ００２は、それぞれ、１つのスライス面データである。
１つのスライス面データにおける４つの頂点は、同一平面上に存在する。１つのスライス面データにおける４つの頂点は、当該スライス面データに含まれるポリゴンの頂点である。各スライス面データは、互いに平行である。図４の例では、各頂点は、三次元座標、法線ベクトル、テクスチャ座標を有する。ここで、法線ベクトルは、スライス面の法線ベクトルである。ここで使用されるポリゴンデータは平行なスライス面であることから、各頂点が、それぞれ、法線ベクトルを有さなくてもよい。図４の例では、三次元テクスチャを使用する際のテクスチャ座標の例が示されている。テクスチャとして、二次元画像データ
群が使用される場合、テクスチャ座標は２次元（Tu, Tv）となる。
【００４１】
１つのスライス面データは、１つの辺を共有する２つの三角形ポリゴンで表されてもよい。三角形ポリゴンは、３つの頂点を有する。図４では、法線ベクトルとテクスチャ座標とが、各頂点座標とともに記憶されている。しかし、ポリゴン頂点座標の組（３頂点、４頂点等の組）に対して、１つの法線ベクトルとテクスチャとを定義するようにしてもよい。
【００４２】
図５は、スライス面群の例を示す図である。図５の例では、ｘ軸と直交する面によるスライス面群Ｘ、ｙ軸と直交する面によるスライス面群Ｙ、ｚ軸と直交する面によるスライス面群Ｚが示される。１つのスライス面群における各スライス面は、互いに交差しない。データ生成部１０２は、想定される視点の位置及び視軸の方向に応じて、少なくとも１つのスライス面群によるスライス面群データを生成する。例えば、想定される視軸の方向が、ｚ軸とほぼ平行である場合、図５のｚ軸と直交する面によるスライス面群Ｚによるスライス面群データが生成される。また、データ生成部１０２は、空間軸（ｘ軸、ｙ軸、ｚ軸）の方向とは異なる方向と直交する複数の平面（スライス面）によるスライス面群データを生成してもよい。
【００４３】
また、スライス面は球の球面の一部であって、スライス面群は半径が異なる同心球の球面の一部の集合であってもよい。
【００４４】
図３の動作フローに戻って、画像処理装置１００の描画順決定部１０４は、スライス面データの描画順を決定する（Ｓ１０２）。描画順とは、レンダリング処理において、スライス面の処理する順番である。描画順決定部１０４は、１つのスライス面群データにおける複数のスライス面データの、レンダリング処理における処理する順番を決定する。描画順は、バッファ部１１０に格納される。
【００４５】
描画順決定部１０４は、１つのスライス面群データにおいて、一方の端から他方の端に並ぶ複数のスライス面から両端のスライス面を除くいずれかのスライス面を基準面とする。描画順決定部１０４は、この基準面を１番目に処理するスライス面として決定する。描画順決定部１０４は、この基準面から一方の端に向かって基準面に近い順に、処理する順番を決定する。さらに、描画順決定部１０４は、この基準面から他方の端に向かって基準面に近い順に処理する順番を決定する。描画順決定部１０４は、このようにして、各スライス面に対して、描画順を決定する。描画順は、基準面のスライス面から端のスライス面に向かって処理されるように決定される。
【００４６】
また、描画順決定部１０４は、次のように描画順を決定してもよい。描画順決定部１０４は、上記のように、基準面のスライス面を１番目に処理すると決定する。次に、上記一方の端から他方の端に並ぶ複数のスライス面のうち、一方の端側の基準面に最も近いスライス面を２番目に処理することが決定され、他方の端側の基準面に最も近いスライス面を３番目に処理することが決定される。その後、一方の端側の基準面に２番目に近いスライス面を４番目に処理することが決定されるようにして、両端のスライス面までの処理する順番が決定されてもよい。
【００４７】
描画順決定部１０４は、スライス面群データの一方の端から他方の端まで並ぶスライス面のうち、ほぼ中央のスライス面を基準面として決定することができる。
【００４８】
図６は、スライス面と描画順の例（１）を示す図である。図６の例は、スライス面群をスライス面の法線方向と直交する方向から見た図である。また、図６の例では、視軸の方向は、ｘ軸方向またはｘ軸に対する傾きが９０度未満、又は、これらと逆方向を想定する
。図６の例では、スライス面が、スライス面００１からスライス面０１０まで、一方の端から他方の端まで並んでいる。ここで、ほぼ中央のスライス面００６が基準面（描画順１番目）として決定される。また、基準面から一方の端に向かって、スライス面００５からスライス面００１までが、描画順２番目から描画順６番目として決定される。さらに、基準面から他方の端に向かって、スライス面００７からスライス面０１０までが、描画順７番目から描画順１０番目として決定される。
【００４９】
図７は、スライス面と描画順の例（２）を示す図である。図７の例では、スライス面が、スライス面００１からスライス面０１０まで、一方の端から他方の端まで並んでいる。ここで、ほぼ中央のスライス面００６が基準面（描画順１番目）として決定される。また、一方の端側の基準面に最も近いスライス面００５が描画順２番目として決定される。さらに、他方の端側の基準面に最も近いスライス面００７が描画順３番目として決定される。そして、一方の端側の基準面に２番目に近いスライス面００４が描画順４番目として決定される。以後、図７のように、他のスライス面も同様にして、描画順が決定される。
【００５０】
図８は、スライス面と描画順の例（３）を示す図である。図８の例のように、ほぼ中央のスライス面ではないスライス面００３が基準面として決定されてもよい。図８の例のような描画順は、例えば、スライス面０１０側に視点が存在することが多いことが想定される場合に、有効である。なぜなら、視点から見て基準面より後方の面では基準面から前方の面と重なる部分について不透明度が無視されるが、このようにすることで、スライス面０１０側に視点が存在する場合に不透明度が無視される面をより少なくすることができる。
【００５１】
図３の動作フローに戻って、画像処理装置１００のジオメトリ変換部１０６は、ジオメトリ変換をする（Ｓ１０３）。画像処理装置１００は、ジオメトリ変換を開始するまでに、ユーザ等により入力装置等を介して、視点データを指定される。視点データには、例えば、視点の座標、視線の方向（視軸）、表示する範囲、画像の大きさ、視野角等が含まれる。さらに、画像処理装置１００は、視点データに基づいて、どのスライス面群データを使用するかを抽出する。画像処理装置１００は、例えば、スライス面の法線方向と視軸の方向とが平行に近いスライス面群データを、使用するスライス面群データとして抽出する。
【００５２】
ジオメトリ変換部１０６は、視点データに基づいて、決定したスライス面群データの各スライス面データに対して、ジオメトリ変換を行う。ジオメトリ変換部１０６は、視点データに基づいて、各スライス面データを表示画面上の二次元座標空間に変換する。変換されたポリゴンデータは、バッファ部１１０に格納される。
【００５３】
図９は、ジオメトリ変換部が生成するポリゴンデータ（スライス面データ）の例を示す図である。図９の例では、図４のポリゴンデータ（スライス面データ）の各頂点の三次元座標が、表示画面のスクリーン座標（Ｓｘ，Ｓｙ）、表示画面内の奥行きを示すＺ値に変換されている。Ｚ値は、視点から遠くなるほど大きい値となる。任意の点ＡのＺ値は、例えば、視点を通り視軸を法線とする平面と点Ａとの距離に対して正の相関を有する。
【００５４】
図３の動作フローに戻って、画像処理装置１００のレンダリング処理部１０８は、レンダリング処理を行う（Ｓ１０４）。
【００５５】
最初に、レンダリング処理部１０８は、ジオメトリ変換部１０６で変換されたポリゴンデータ（スライス面データ）を取り出す。さらに、レンダリング処理部１０８は、取り出したスライス面データの各スライス面内の各頂点に囲まれる範囲内のすべてのピクセル（座標点）について、各スライス面の頂点のスクリーン座標及びＺ値に基づいて、Ｚ値デー
タを算出する。ピクセルのスクリーン座標が表示画面外である場合、表示画面外のピクセルについては算出されなくてもよい。各ピクセルのＺ値は、各頂点のスクリーン座標とＺ値と基づいて補間演算することにより算出されうる。算出された各スライス面のピクセル毎のＺ値データは、バッファ部１１０に格納される。ここで、レンダリング処理部１０８は、各スライス面の頂点のテクスチャ座標及びテクスチャデータに基づいて、各スライス面のピクセル毎の色データおよび不透明度データ（α値）を算出し、Ｚ値データと共にバッファ部１１０に格納してもよい。ここで格納される色データおよび不透明度データは、後に説明するレンダリング処理の際に使用されてもよい。
【００５６】
図１０は、レンダリング処理部が算出するスライス面データ（ポリゴンＩＤ００１）についてのピクセル（スクリーン座標）ごとのＺ値データの例を示す図である。図１０の例では、ポリゴンＩＤ００１のスライス面内の各スクリーン座標について、Ｚ値が示される。
【００５７】
次に、レンダリング処理部１０８は、各頂点のテクスチャ座標、テクスチャデータ、図１０のような各スライス面についてのスクリーン座標毎のＺ値などに基づいて、画面表示用の画像データを生成するレンダリング処理を行う。レンダリング処理については後に詳述する。画像データは、バッファ部１１０に格納される。
【００５８】
画像処理装置１００の表示部１１２は、バッファ部１１０に格納される画像データに基づいて、画像を表示する（Ｓ１０５）。表示部１１２は、画像処理装置１００の外部の表示装置に画像を表示させてもよい。また、表示部１１２は、画像処理装置１００の外部の情報処理装置に当該画像データを送信し、当該外部の情報処理装置の表示部に当該画像データによる画像を表示させてもよい。
【００５９】
（レンダリング処理）
図１１及び図１２は、レンダリング処理部によるレンダリング処理の動作フローの例を示す図である。図１１の「Ａ」、「Ｂ」、「Ｃ」は、それぞれ、図１２の「Ａ」、「Ｂ」、「Ｃ」に接続する。
【００６０】
レンダリング処理部１０８は、描画順が１番目のポリゴンデータ（スライス面データ）を読み出す。描画順が１番目のポリゴンデータは、基準面のスライス面データである。レンダリング処理部１０８は、基準面における各スクリーン座標（ピクセル）のＺ値を読み出し、基準面のスライス面の頂点のテクスチャ座標及びテクスチャデータに基づいて、各ピクセルの色データを算出する。レンダリング処理部１０８は、基準面のスライス面内のすべてのピクセル毎に、色データ、Ｚ値データを、バッファ部１１０に画像データとして書き込む（Ｓ２０１）。仮に画像が背景画像を有する場合、レンダリング処理部１０８は、色データと共に、不透明度（α値）も算出し、背景画像の色データと基準面の色データとのブレンディングを行い、Ｚ値データ、色データを画像データに書き込む。次に、処理がステップＳ２０２に進むが、ステップＳ２０１から進んだステップＳ２０２では、描画順が２番目のスライス面について処理が行われる。
【００６１】
図１３は、画像データの例を示す図である。図１３の画像データでは、表示画面内のすべてのピクセルについて、スクリーン座標と、色データと、Ｚ値とが対応づけられている。画像データ内で、まだ書き込まれていないピクセルについては、例えば、色データとして初期色（例えば、黒色や他の指定色）、Ｚ値として最も遠くを示す値又は未だ比較が行われてないことを示す値が書き込まれている。また、画像データ内で、まだ書き込まれていないピクセルについては、色データとＺ値とは空であってもよい。画像データは、バッファ部１１０に格納される。
【００６２】
以下、ステップＳ２０２−ステップＳ２０９の処理は、未処理のスライス面に対して、繰り返し実行される。ステップＳ２０２では、レンダリング処理部１０８は、処理中のスライス面の未処理の１つのピクセルについて、Ｚ値を読み出す（Ｓ２０２）。ここでは、すべてのピクセルにおいてＺ値が予め算出されるとしているが、ステップＳ２０１やステップＳ２０２でＺ値が使用される際に、処理中のスライス面の処理中のピクセルのＺ値が算出されてもよい。
【００６３】
ステップＳ２０３では、レンダリング処理部１０８は、ステップＳ２０２でＺ値を読み出したピクセル（処理中のスライス面の処理中のピクセル）に対する画像データのピクセルのデータを読み出し、既に当該画像データのピクセルに色データが書きこまれているか否かを確認する（Ｓ２０３）。
【００６４】
処理中のスライス面の処理中のピクセルに対する画像データのピクセルに色データが未だ書き込まれていない場合（Ｓ２０３；ＮＯ）、処理がステップＳ２０５に進む。処理中のスライス面の処理中のピクセルに対する画像データのピクセルに色データが既に書き込まれている場合（Ｓ２０３；ＹＥＳ）、レンダリング処理部１０８は、処理中のスライス面における処理中のピクセルのＺ値と、画像データにおける処理中のピクセルのＺ値とを比較する（Ｓ２０４）。
【００６５】
処理中のスライス面における処理中のピクセルのＺ値が画像データにおける処理中のピクセルのＺ値未満である場合（Ｓ２０４；ＹＥＳ）、処理がステップＳ２０５に進む。このとき、処理中のスライス面の処理中のピクセルは、既に書き込まれた色データよりも手前に位置する。
【００６６】
処理中のスライス面における処理中のピクセルのＺ値が画像データにおける処理中のピクセルのＺ値以上である場合（Ｓ２０４；ＮＯ）、処理がステップＳ２０６に進む。このとき、処理中のスライス面の処理中のピクセルは、既に書き込まれた色データよりも後方に位置する。よって、処理中のスライス面の処理中のピクセルは、画像データに書き込まれない。ここで、処理中のスライス面の処理中のピクセルについては、処理が終了したことになる。
【００６７】
ステップＳ２０５では、レンダリング処理部１０８は、処理中のスライス面の処理中のピクセルについて、処理中のスライス面の頂点のテクスチャ座標及びテクスチャデータに基づいて、色データ、不透明度データ（α値）を算出する。レンダリング処理部１０８は、処理中のスライス面の処理中のピクセルの不透明度データ、色データ、画像データの処理中のピクセルの色データに基づいて、新たな色データを算出する（αブレンディング）。レンダリング処理部１０８は、画像データの処理中のピクセルのＺ値および色データを、処理中のスライス面の処理中のピクセルのＺ値および算出した新たな色データに書き換える（Ｓ２０５）。ここで、処理中のスライス面の処理中のピクセルについては、処理が終了したことになる。
【００６８】
ステップＳ２０６では、レンダリング処理部１０８は、処理中のスライス面内のすべてのピクセルについて処理が終了したか否かを確認する（Ｓ２０６）。処理中のスライス面内のすべてのピクセルについて処理が終了した場合（Ｓ２０６；ＹＥＳ）、処理がステップＳ２０８に進む。ここで、処理中のスライス面については、処理が終了したことになる。
【００６９】
処理中のスライス面内のすべてのピクセルについて処理が終了していない場合（Ｓ２０６；ＮＯ）、レンダリング処理部１０８は、他の未処理のピクセルを処理中のピクセルとし、処理がステップＳ２０２に戻る（Ｓ２０７）。
【００７０】
ステップＳ２０８では、レンダリング処理部１０８は、すべてのスライス面について処理が終了したか否かを確認する（Ｓ２０８）。未だすべてのスライス面について処理が終了していない場合（Ｓ２０８；ＮＯ）、レンダリング処理部１０８は、描画順決定部１０４が決定した描画順に従って、次の順番のスライス面のピクセルを処理中のピクセルとする。
【００７１】
すべてのスライス面について処理が終了した場合（Ｓ２０８；ＹＥＳ）、レンダリング処理部１０８における処理が終了する。この時点における画像データが画面表示用の画像データとなる。ここで、画像データにおける各ピクセルのＺ値は削除されてもよい。
【００７２】
図１４、図１５、図１６は、レンダリング処理部の処理を経た表示結果の例を示す図である。各図において、図面の表面から裏面に向かう方向が視軸の方向である。
【００７３】
図１４の例では、スライス面Ａは基準面であり、スライス面Ｂはスライス面Ａよりも手前に存在するスライス面である。スライス面Ａが先に描画され、スライス面Ｂが後に描画される。スライス面Ａとスライス面Ｂとが重なる部分では、αブレンディングによって描画が行われる。
【００７４】
図１５の例では、スライス面Ａは基準面であり、スライス面Ｃはスライス面Ａよりも後方に存在するスライス面である。スライス面Ａが先に描画され、スライス面Ｃが後に描画される。スライス面Ａとスライス面Ｃとが重なる部分では、Ｚバッファ法によって描画が行われる。
【００７５】
図１６の例では、スライス面Ａは基準面であり、スライス面Ｂはスライス面Ａよりも手前に存在するスライス面であり、スライス面Ｃはスライス面Ａよりも後方に存在するスライス面である。スライス面Ａ、スライス面Ｂ、スライス面Ｃの順、又は、スライス面Ａ、スライス面Ｃ、スライス面Ｂの順に描画される。スライス面Ａとスライス面Ｂとが重なる部分では、αブレンディングによって描画が行われる。スライス面Ａとスライス面Ｃとが重なる部分では、Ｚバッファ法によって描画が行われる。即ち、基準面よりも視軸に対して手前ではαブレンディングによる処理が、後方ではＺバッファ法による処理が行われる。
【００７６】
（変形例）
次に上記の実施形態の変形例を説明する。この変形例は、上記の実施形態との共通点を有する。従って、ここでは、主として相違点について説明し、共通点については、説明を省略する。
【００７７】
画像処理装置１００における処理は、サーバ装置及びクライアント装置に分割して行われてもよい。サーバ装置及びクライアント装置は、上記の画像処理装置１００と同様の機能を有する。
【００７８】
図１７は、本変形例の画像処理システムの例を示す図である。図１７の画像処理システム１０００は、サーバ装置２００及びクライアント装置３００を含む。サーバ装置２００とクライアント装置３００とは、例えば、ネットワークを介して接続される。サーバ装置２００は、データ作成部２０２、描画順決定部２０４、バッファ部２１０を備える。クライアント装置３００は、ジオメトリ変換部３０６、レンダリング処理部３０８、バッファ部３１０、表示部３１２を備える。これらの処理部は、それぞれ、図１のデータ作成部１０２、描画順決定部１０４、ジオメトリ変換部１０６、レンダリング処理部１０８、バッファ部１１０、表示部１１２と同様の機能を有する。また、サーバ装置２００は、スライ
ス面群データ、テクスチャデータ及び描画順をクライアント装置に送信する送信部２２２を備える。クライアント装置３００は、スライス面群データ、テクスチャデータ及び描画順をサーバ装置２００から受信する受信部３２２を備える。サーバ装置２００は、クライアント装置３００の表示部３１２の表示画面に合わせて、スライス面群データ、テクスチャデータを変換してもよい。即ち、サーバ装置２００は、クライアント装置３００の表示部３１２の表示画面に合わせて、スライス面群データ、テクスチャデータを、データを間引く等の操作により、小さいサイズなるように変換してもよい。データのサイズが小さくなることで、サーバ装置２００とクライアント装置３００との間のデータ通信量を削減することができる。スライス面群データおよびテクスチャデータを、平面群ともいう。
【００７９】
サーバ装置２００は、データ作成部２０２によりスライス面群データ、テクスチャデータを作成し、描画順決定部２０４により描画順を決定する。サーバ装置２００は、スライス面群データ、テクスチャデータ、描画順をクライアント装置３００に送信する。
【００８０】
クライアント装置３００は、スライス面群データ、テクスチャデータをサーバ装置２００から受信し、バッファ部２１０に格納する。クライアント装置３００は、ユーザ等により入力装置等を介して、視点データを指定される。次に、クライアント装置３００は、ジオメトリ変換部３０６によりジオメトリ変換をし、レンダリング処理部３０８により描画順に基づいてレンダリング処理を行う。さらに、クライアント装置３００は、レンダリング処理された画像を表示部３１２に表示する。
【００８１】
データ作成及び描画順決定をサーバ装置２００で行うことにより、クライアント装置３００における計算負荷が軽減する。従って、クライアント装置３００がリソース（計算リソースやメモリ）の少ないハードウェアであっても、高精細なレンダリング処理が実行され得る。
【００８２】
サーバ装置２００及びクライアント装置３００は、パーソナルコンピュータ（ＰＣ、Personal Computer）、サーバマシン、ワークステーション（ＷＳ、Work Station）、ＰＤ
Ａ（Personal Digital Assistant）、スマートフォン、携帯電話、カーナビゲーションのような専用または汎用のコンピュータ、あるいは、コンピュータを搭載した電子機器を使用して実現可能である。サーバ装置２００の送信部２２２、クライアント装置３００の受信部３２２は、コンピュータ等のプロセッサ、通信インタフェース装置等によって実現されうる。
【００８３】
（実施形態の作用、効果）
画像処理装置１００は、三次元領域において、少なくとも１方向に対し層状の構造を持つスライス面群に対し、各スライス面が描画される順序を設定する。画像処理装置１００は、スライス面群の並びの両端以外の面の１つを基準面とし、並びの両端が最後に描画されるように描画順を決定する。各スライス面に対応する不透明度を有する２次元画像を添付することにより、基準面より視線手前側ではαブレンディングによって、基準面より視線後方側ではＺバッファ法によって基準面に近いスライス面を優先した描画が行われる。
【００８４】
基準面より手前側（視軸を形成する観測者側）では、αブレンディングによって、値データを詳細に、あるいは忠実に表示できる。一方、基準面より奥側では、Ｚバッファリングによって、裏面側の値データが隠されることになるが、視軸を形成する観測者から遠い面であるため、値データが隠される影響は、手前側が隠される場合よりも少ない。すなわち、観測者にとって重要となる手前側の値データの表示を優先した上で、全体の表示効率を向上できる。
【００８５】
画像処理装置１００によれば、視点位置による視点位置の変更によるスライス面群の再
生成やそれらの描画順を再計算しなくてもよいため、描画の計算コストを軽減できる。そのため、画像処理装置１００が携帯端末やスマートフォン等のリソース（計算リソースやメモリ）の少ないハードウェアであっても、高精細なレンダリング処理が実行され得る。
【００８６】
本実施形態の構成は、例えば、医療分野において、病院で撮影したＣＴ（Computed Tomography）画像やＭＲＴ（Magnetic Resonance Tomography）画像から再構成された人体の内部構造を携帯端末等で表示する場合等において有効である。具体的には、サーバ上に保持されているＣＴ画像やＭＲＴ画像を、データサイズの削減等によりクライアントである携帯端末が利用可能な形態に変換して送出し、ネットワーク経由で医師や患者が携帯端末を用いてボリュームレンダリングにより表示する場合などにおいて有効である。この場合の実施形態として、画像処理装置１００を構成する各要素は、必要に応じてサーバおよびクライアントに分割して搭載されてもよい。
【００８７】
画像処理装置１００によれば、画像のレンダリング処理の順序を予め決定しておくことで、この順序を描画処理中にリアルタイムに決定しなくてもよく、全体のレンダリング処理の効率を向上させることができる。即ち、画像処理装置１００によれば、画像のレンダリング処理の順序が予め決定されていることで、視軸の変更が起こった場合でも、描画順決定のためのＺ値によるソーティング処理が行われなくてもよい。
【００８８】
画像処理装置１００による処理は、雲や炎のようなボリュームレンダリング向きのオブジェクトの表現方法として利用効果がある。即ち、画像処理装置１００における処理は、動きが不規則な雲や炎、煙のような画像表現の際、リアリティを損なうことなくユーザに認識しやすいように表示することができる。
【産業上の利用可能性】
【００８９】
ここで説明した画像処理装置１００は、例えば、構造エンジニアリング、地質学、天体物理学、気象等のシミュレーション結果の表示、ゲームや映画等における雲、霧、炎等の映像表現において利用できる。
【符号の説明】
【００９０】
１００      画像処理装置
１０２        データ作成部
１０４        描画順決定部
１０６        ジオメトリ変換部
１０８        レンダリング処理部
１１０        バッファ部
１１２        表示部
２００      サーバ装置
２０２        データ作成部
２０４        描画順決定部
２１０        バッファ部
２２２        送信部
３００      クライアント装置
３０６        ジオメトリ変換部
３０８        レンダリング処理部
３１０        バッファ部
３１２        表示部
３２２        受信部
１０００      画像処理システム
【図１】
0005846373.tif 000002
【図２】
0005846373.tif 000003
【図３】
0005846373.tif 000004
【図４】
0005846373.tif 000005
【図５】
0005846373.tif 000006
【図６】
0005846373.tif 000007
【図７】
0005846373.tif 000008
【図８】
0005846373.tif 000009
【図９】
0005846373.tif 000010
【図１０】
0005846373.tif 000011
【図１１】
0005846373.tif 000012
【図１２】
0005846373.tif 000013
【図１３】
0005846373.tif 000014
【図１４】
0005846373.tif 000015
【図１５】
0005846373.tif 000016
【図１６】
0005846373.tif 000017
【図１７】
0005846373.tif 000018