JP5287613B2 - 画像表示方法、情報処理装置および画像表示プログラム - Google Patents

画像表示方法、情報処理装置および画像表示プログラム Download PDF

Info

Publication number
JP5287613B2
JP5287613B2 JP2009198988A JP2009198988A JP5287613B2 JP 5287613 B2 JP5287613 B2 JP 5287613B2 JP 2009198988 A JP2009198988 A JP 2009198988A JP 2009198988 A JP2009198988 A JP 2009198988A JP 5287613 B2 JP5287613 B2 JP 5287613B2
Authority
JP
Japan
Prior art keywords
point
viewpoint
solid
normal
unit
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 - Fee Related
Application number
JP2009198988A
Other languages
English (en)
Other versions
JP2011048797A (ja
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.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
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 Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP2009198988A priority Critical patent/JP5287613B2/ja
Publication of JP2011048797A publication Critical patent/JP2011048797A/ja
Application granted granted Critical
Publication of JP5287613B2 publication Critical patent/JP5287613B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Processing Or Creating Images (AREA)

Description

本発明は、画像表示方法、情報処理装置および画像表示プログラムに関する。
近年、三次元モデルを利用する技術として、例えば、CAD(Computer Aided Design)やデジタルモックアップが知られている。三次元モデルを表示する情報処理装置は、三次元モデルを二次元の面に投影し、投影された二次元の画像を表示する。
具体的には、情報処理装置は、三次元モデルを撮影する仮想的なカメラの位置を設定し、仮想的なカメラによって撮影された三次元モデルを二次元画像として表示する。ここで、情報処理装置は、所定の位置から撮影された三次元モデルを二次元画像として表示するので、二次元画像に表示されない範囲が存在する。このような二次元画像に表示されない状態をオクルージョンという。
図17を用いて、オクルージョン発生の一例を説明する。情報処理装置は、図17に示すように、三次元モデルAと重ねて表示されている三次元モデルBおよびCの一部の範囲αを二次元の画像に表示しない。利用者は、表示された画像にオクルージョンが発生した場合には、オクルージョンとなった範囲が表示されるように、手動で仮想的なカメラの位置を移動させる操作を行う。
また、利用者に指定された三次元モデルが二次元の画像に表示されるように仮想的なカメラの位置を自動的に変更する技術が知られている。具体的には、情報処理装置は、ユーザによって指定された三次元モデルがオクルージョンに含まれないように、仮想的なカメラの位置を自動的に移動させる。
特開2002−24862号公報 特開平8−221602号公報 特開平11−184898号公報
しかし、利用者が仮想的なカメラの位置を手動で変更し、オクルージョンとなった範囲を表示する方法では、利用者がカメラ位置を試行錯誤しながら変更して適切なカメラ位置を探すため、手間が掛かるという問題があった。
また、上記した仮想的なカメラの位置を自動的に変更する技術では、情報処理装置は、利用者によって指定された三次元モデルがオクルージョンとはならないように仮想的なカメラの位置を自動的に設定する。しかし、情報処理装置は、指定された三次元モデルに隠された範囲が表示されるように仮想的なカメラの位置を自動的に設定することができないという問題があった。
開示の技術は、上記に鑑みてなされたものであって、三次元モデルの表示を行う場合に、三次元モデルに隠された範囲を表示するカメラ位置を自動で設定する画像表示方法を提供する。
本願の開示する画像表示方法は、プロセッサが、立体の表面から一つの点が指定された場合には、指定された点における表面の法線を判定する。また、画像表示方法は、プロセッサが、立体の表面を囲む各辺のうち立体の表面上の点から最も近い辺を判定し、立体の表面上の点から判定された辺への垂線が判定された辺と交差する交点から現在の視点までの距離を計測する。また、画像表示方法は、プロセッサが、交点を基点とし、判定された法線方向上の点であって、交点から計測された距離分離れたところに位置する点に視点の位置を移動させる。
本願の開示する画像表示方法は、三次元モデルに隠された範囲を表示するので、隠された範囲を利用者が容易に識別することができる。
図1は、実施例1に係る画像表示方法を実行する情報処理装置を説明するためのブロック図である。 図2は、実施例2に係る画像表示方法を実行する情報処理装置を説明するためのブロック図である。 図3は、実施例2に係るポリゴン情報記憶部に記憶されたデータを説明するための図である。 図4は、実施例2に係る画像表示方法の処理の流れを説明するためのフローチャートである。 図5は、実施例2に係る視点位置を変更する処理を説明するための図である。 図6は、実施例2に係る情報処理装置が視点Tから投影した図である。 図7は、実施例2に係る情報処理装置が視点T’から投影した図である。 図8は、実施例3に係る画像表示方法を実行する情報処理装置を説明するためのブロック図である。 図9は、実施例3に係る三次元モデル情報記憶部が記憶する情報の一例を表す図である。 図10は、実施例3に係る画像表示方法が実行する処理の流れを説明するためのフローチャート(1)である。 図11は、実施例3に係る画像表示方法の処理の流れを説明するためのフローチャート(2)である。 図12は、実施例3に係る視点位置を変更する処理を説明するための図である。 図13は、オフセット処理を説明するための図である。 図14は、遮蔽物を避ける処理を説明するための図である。 図15は、視点T’’から投影した図である。 図16は、画像表示プログラムを実行するコンピュータを説明するための図である。 図17は、従来技術を説明するための図である。
以下に添付図面を参照して本願に係る画像表示方法の実施例について説明する。
以下の実施例1では、画像表示方法を実行する装置の構成および処理の流れを順に説明する。
まず最初に、図1を用いて、画像表示方法を実行する情報処理装置の構成について説明する。ここで、図1は、実施例1に係る画像表示方法を実行する情報処理装置を説明するためのブロック図である。情報処理装置1は、記憶部10と、表面特定部2、法線取得部3および視点位置設定部4を有している。
記憶部10は、三次元モデルの情報を記憶している。具体的には、記憶部10は、三次元モデルを形作る点、線および面の情報を記憶している。また、記憶部10は、三次元モデルを形作る点、線および面の位置を示す情報を記憶している。
表面特定部2は、立体が投影された二次元の画像内の一点が指定された場合に、指定された点に対応する立体の表面を特定する。法線取得部3は、表面特定部2によって特定された立体の表面の法線方向を取得する。視点位置設定部4は、法線取得部3によって取得された法線方向に応じて、立体を投影する視点の位置を設定する。
[実施例1の効果]
上述してきたように、実施例1に係る情報処理装置1は、利用者によって指定された点を含む立体の表面を特定し、特定された表面の法線方向に視点を自動的に移動させる。このため、情報処理装置1は、立方体の上部の面に含まれる点を指定された場合には、立方体の上方へ視点を移動させ、前回の視点からでは立方体によって隠されていた範囲を投影させることができる。結果として、情報処理装置1は、隠された範囲を表示させる視点を利用者が容易に設定することができる。
以下の実施例2では、画像表示方法を実行する装置の構成および処理の流れを順に説明する。
まず最初に、図2を用いて、画像表示方法を実行する装置の構成について説明する。ここで、図2は、実施例2に係る画像表示方法を実行する情報処理装置を説明するためのブロック図である。情報処理装置1bは、表示装置5bおよび操作装置6bと接続されている。
情報処理装置1bは、記憶部10bと処理部20bとを有している。記憶部10bは、ポリゴン情報記憶部12bを有している。また、処理部20bは、投影部21b、法線取得部24b、視点位置設定部25b、視点距離計測部23bおよび表面特定部22bを有している。
表示装置5bは、情報処理装置1bによって作成された画像を表示する。具体的には、表示装置5bは、投影部21bによって投影された画像を表示する。例えば、表示装置5bは、液晶ディスプレイやプロジェクタ等である。
操作装置6bは、利用者から情報処理装置1に対する操作を受け付ける。また、操作装置6bは、表示装置5bに表示された画像を介して、利用者が三次元モデルの表面に位置する一点を指定する操作を情報処理装置1bに送信する。例えば、操作装置6bは、マウスやキーボードである。
ポリゴン情報記憶部12bは、三次元モデルを表示するために、三次元モデルを形作る多角形の情報を記憶する。具体的には、ポリゴン情報記憶部12bは、各三次元モデルの表面を構成する小さな三角形平面(ポリゴン)の情報を記憶している。
そのため、ポリゴン情報記憶部12bは、図3に示すように、ポリゴンが有する各頂点の座標と、規格化された法線ベクトルの情報とを記憶している。つまり、ポリゴンは、3つの頂点の位置を示す座標と、ポリゴンの向きを表す法線情報とを用いて表示される三次元モデルである。ここで、図3は、ポリゴン情報記憶部に記憶されたデータを説明するための図である。
例えば、ポリゴン情報記憶部12bは、RAM(Random Access Memory)、ROM(Read Only Memory)、フラッシュメモリ (flash memory)などの半導体メモリ素子、または、ハードディスク、光ディスクなどの記憶装置である。
ポリゴン情報記憶部12bは、図3に示すように、ポリゴンIDが「1」であるポリゴンとして、座標(a1、b1、c1)、(d1,e1,f1)、(g1,h1,i1)に頂点を有するポリゴンを記憶している。また、ポリゴン情報記憶部12は、ポリゴンIDが「1」であるポリゴンの法線ベクトルとして、(j1、k1、l1)を記憶している。
ポリゴン情報記憶部12bは、ポリゴンの表と裏とを表現するために、ポリゴンの法線ベクトルを記憶している。ポリゴン法線ベクトルを用いてポリゴンの向きを示す技術は、公知な技術の一つである。
ここで、ポリゴン情報記憶部12は、ポリゴン法線方向に対して反時計周りの順番にポリゴンの頂点の位置を示す座標を記憶している。また、各ポリゴンの法線ベクトルは、規格化されている。例えば、ポリゴンIDが「1」であるポリゴンの法線ベクトル(j1、k1、l1)は、規格化されているので、以下の式を満たす。
Figure 0005287613
投影部21bは、各三次元モデルを二次元の面に投影し、投影された画像を表示装置5bに表示させる。具体的には、投影部21bは、視点位置設定部25bによって設定された視点の位置に応じて、各三次元モデルを二次元の投影面に投影する。そして、投影部21bは、三次元モデルを投影した画像を表示装置5bに表示させる。
例えば、投影部21bは、ASIC(Application Specific Integrated Circuit)やFPGA (Field Programmable Gate Array)などの集積回路、または、CPU(Central Processing Unit)やMPU(Micro Processing Unit)などの電子回路である。
投影部21bは、三次元モデルを二次元の面に投影する場合には、視点位置設定部25bによって設定された視点を焦点として、三次元モデルを投影する。まず、投影部21bは、視点から所定の距離離れた位置に所定の大きさの投影面を設定する。ここで、投影面は、細かなドットの集合で表現される。投影部21bは、視点と投影面上のドットを結ぶ直線が三次元モデルの表面と交差した場合には、三次元モデルと直線との交点を投影面上のドットに投影する。
例えば、投影部21bは、投影面上のドットNと視点とを結ぶ直線が三次元モデルの表面の点Mと交差している場合には、投影面上のドットNに三次元モデルの表面の点Mを投影する。投影部21bは、投影面上の全てのドットに投影を行う。また、投影部21bは、投影面上のドットと視点とを結ぶ直線が複数の三次元モデルと交差する場合には、投影面に最も近い点のみを投影面に反映させる。
表面特定部22bは、立体が投影された二次元の画像内の一点が指定された場合に、指定された点に対応する立体の表面を特定する。具体的には、表面特定部22bは、表示装置に表示された画像上の点が利用者によって指定された場合には、当該指定された画像上の点が三次元モデルの表面上においてどの位置と対応するのかを計算し、特定する。
利用者は、三次元モデル上の点を指定する場合には、操作装置6bを介して、三次元モデルを投影した二次元の画像上の一点を指定する。そのため、情報処理装置1bは、表示装置上の点が三次元モデル上のどの点と対応するかを計算する必要がある。そこで、表面特定部22bは、三次元モデルが投影された投影面の位置と視点の位置とを用いて、指定された点が三次元モデル上のどの位置に存在する点であるのかを計算する。以降に、表面特定部22bが実行する処理について詳しく説明する。
例えば、表面特定部22bは、ASIC(Application Specific Integrated Circuit)やFPGA (Field Programmable Gate Array)などの集積回路、または、CPU(Central Processing Unit)やMPU(Micro Processing Unit)などの電子回路である。
表面特定部22bが行う計算の一例として、利用者が表示装置に表示されれた画像上の点P(X、Y)を指定した場合を説明する。ここで、点P(X、Y)は、表示装置5bに表示された画像の中心を原点(0、0)として、利用者によって指定された画像上の点を二次元の座標系で表すものとする。
表面特定部22bは、利用者によって点P(X、Y)を指定された場合には、表示装置5bに表示された投影画像の視点の位置を投影部21bから取得する。また、表面特定部22bは、投影面の位置を投影部21bから取得する。そして、表面特定部22bは、取得された視点および投影面の情報を用いて、指定された点P(X,Y)の座標を三次元空間の座標に変換する。
例えば、表面特定部22bは、三次元座標系での視点の位置(x1、y1、z1)を投影部21bより取得する。また、表面特定部22bは、投影面が(a、0、0)、(0、b、0)、(0,0、c)を通る面であるという情報を投影部21bより取得する。
次に、表面特定部22bは、取得された視点の位置と投影面の位置を用いて、視点から投影面に対する垂線が投影面と交差する点の座標C1(xc1、yc1、zc1)を計算する。また、原点から投影面に降ろした垂線をzx平面上に投影した線がx軸となす角度を「α」とし、原点から投影面に降ろした垂線がxz平面となす角度を「β」とする。
ここで、k1=sinα、k2=cosα/sinβ、k3=cosα・cosα/sinβ、ai=1/A、bi=1/b、ci=1/cと表記した場合は、指定された画像上の点P(X、Y)を三次元モデルの座標系で表した点P(x、y、z)は、以下の値となる。
Figure 0005287613
Figure 0005287613
Figure 0005287613
表面特定部22bは、数2〜数4を用いて、投影面上の点P(x、y、z)を計算する。次に、表面特定部22bは、視点と点Pとを結ぶ直線と交わり、かつ視点に最も近い位置に存在する三次元モデルの表面を検索する。具体的には、表面特定部22bは、視点(x1、y1、z1)および点P(x、y、z)を通る直線を示す方程式を計算する。そして、表面特定部22bは、ポリゴン情報記憶部に記憶された情報を用いて、視点と点Pとを結ぶ直線と交わる三次元モデルの表面を検索する。
まず、表面特定部22bは、視点(x1、y1、z1)および点P(x、y、z)を通る直線を示すベクトルPを計算する。ここで、視点(x1、y1、z1)の位置ベクトルをa、点P(x、y、z)の位置ベクトルをbとすると、視点および点Pを通る直線ベクトルPは、以下の式で表すことができる。
Figure 0005287613
ここで、rは、直線上の位置を示すパラメータである。また、r>1であるとする。一方、点Vを通り法線ベクトルnを有する平面Hは、以下の式で表すことができる。
Figure 0005287613
すると、点Vを通り法線ベクトルnを有する平面Hと直線ベクトルPとの交点をPxとすると、ベクトルPxは、以下の式で表すことができる。
Figure 0005287613
ここで、ベクトルPxは、数7にポリゴン情報記憶部12bに記憶された各ポリゴンのデータを代入した場合には、各ポリゴンを無限に大きくした平面と、数5によって表される直線との交点の位置ベクトルを表す。そこで、表面特定部22bは、ベクトルPxが各ポリゴンの範囲内にあるかを判定する。具体的には、表面特定部22bは、ポリゴン情報記憶部12bに記憶された各ポリゴンのデータを数7に代入し、ベクトルPxを計算する。次に、表面特定部22bは、以下の式を計算する。
Figure 0005287613
ここで、ポリゴン情報記憶部12bに記憶された各ポリゴンの頂点をベクトルA、ベクトルB、ベクトルCで表す。また、数8に示したsおよびtは定数である。ここで、ベクトルPxで表される点がベクトルA、ベクトルB、ベクトルCで表される頂点を有するポリゴンに含まれる場合には、以下の式を満たす。
Figure 0005287613
Figure 0005287613
Figure 0005287613
表面特定部22bは、数7を用いて、ポリゴン情報記憶部12bに記憶された各ポリゴンについてベクトルPxを計算する。また、表面特定部22bは、数9〜数11を用いて、ベクトルPxで表される点が各ポリゴンの範囲内にあるかを判定する。
次に、表面特定部22bは、ベクトルPxで表される点をポリゴンの範囲内に含むポリゴンが複数ある場合には、直線ベクトルPとポリゴンとの各交点から視点までの距離を計算し、視点から最も近い位置に存在する交点を指定された点とする。
例えば、表面特定部22bは、ポリゴン情報記憶部12bに記憶されたポリゴンID「1」のポリゴンと、直線ベクトルPとの交点を判定する場合には、法線ベクトルをnとして(j1、k1、l1)を数7へ代入する。また、表面特定部22bは、点Vとして、ポリゴンID「1」のポリゴン頂点から任意の点、例えば、(a1、b1、c1)を数7へ代入する。
次に、表面特定部22bは、ベクトルPxを計算した場合には、(a1、b1、c1)をベクトルAとして数8に代入する。また、表面特定部22bは、(d1、e1、f1)をベクトルBとして数8に代入する。また、表面特定部22bは、(g1、h1、i1)をベクトルCとして数8に代入する。また、表面特定部22bは、計算されたベクトルPxを数8に代入する。
次に、表面特定部22bは、数8を計算した結果、定数sおよび定数tが数9〜11を満たすかどうかを判定する。表面特定部22bは、数8を計算した結果、定数sおよび定数tが数9〜11を満たす場合には、直線ベクトルPとポリゴンID「1」のポリゴンとが位置ベクトルPxの点で交わると判定する。
その後、表面特定部22bは、ポリゴン情報記憶部12bに記憶された全てのポリゴンについて、直線ベクトルPと交わるかを判定する。表面特定部22bは、複数のポリゴンが直線ベクトルPと交わる場合には、各交点と視点との距離を比較し、最も視点に近い交点が指定された点であると特定する。
表面特定部22bは、指定された画像上の点と対応する立体の表面に含まれる点の位置を特定した場合には、指定された点の座標を視点距離計測部23bおよび視点位置設定部25bへ通知する。また、表面特定部22bは、指定された点を含むポリゴンのIDをポリゴン情報記憶部12bより取得し、取得されたポリゴンIDを法線取得部24bへ通知する。
視点距離計測部23bは、指定された点と、視点との距離を計測する。具体的には、視点距離計測部24bは、指定された点の座標を表面特定部22bから通知された場合は、視点の座標と指定された点の座標とを用いて、指定された点と、視点との距離を計測する。例えば、視点距離計測部23bは、ASIC(Application Specific Integrated Circuit)やFPGA (Field Programmable Gate Array)などの集積回路、または、CPU(Central Processing Unit)やMPU(Micro Processing Unit)などの電子回路である。
例えば、視点距離計測部23bは、視点の位置を(x1、y1、z1)、指定された点の座標を(x2、y2、z2)とした場合には、以下の式を用いて、視点から指定された点までの距離Rを計算する。
Figure 0005287613
視点距離計測部23bは、視点と指定された点との距離Rを計算した場合には、計算された距離Rを視点位置設定部25bへ通知する。
法線取得部24bは、表面特定部22bによって特定された立体の表面の法線方向を取得する。具体的には、法線取得部24bは、表面特定部22bから通知されたポリゴンIDと関連付けられて記憶されたポリゴン法線データをポリゴン情報記憶部12bより取得する。
例えば、法線取得部24bは、ASIC(Application Specific Integrated Circuit)やFPGA (Field Programmable Gate Array)などの集積回路、または、CPU(Central Processing Unit)やMPU(Micro Processing Unit)などの電子回路である。
例えば、法線取得部24bは、ポリゴンID「n」を表面特定部22bより通知された場合には、ポリゴン情報記憶部12bからポリゴン法線データ(jn、kn、ln)を取得する。そして、法線取得部24bは、取得されたポリゴン法線データを視点位置設定部25bへ通知する。
視点位置設定部25bは、法線取得部24bによって取得された法線方向に応じて、立体を投影する視点の位置を設定する。具体的には、法線取得部24bによって取得された法線データに応じて、立体を投影するための視点の位置を設定する。
また、視点位置設定部25bは、指定された点から法線方向上に存在する点であって、指定された点から視点距離計測部23bによって計測された距離分離れたところに位置する点を新たな視点の位置として設定する。具体的には、視点位置設定部25bは、表面特定部22bによって通知された点から法線取得部24bによって取得された法線が示す方向に向かって、視点距離計測部23bによって計測された視点と指定された点との距離分離れた点を新たな視点として設定する。
例えば、視点位置設定部25bは、ASIC(Application Specific Integrated Circuit)やFPGA (Field Programmable Gate Array)などの集積回路、または、CPU(Central Processing Unit)やMPU(Micro Processing Unit)などの電子回路である。
視点位置設定部25bは、指定された点の位置ベクトルをPx、取得された法線ベクトルをni、計測された距離をRとすると、新たな視点の位置ベクトルTを以下の式で計算する。
Figure 0005287613
その後、視点位置設定部25bは、数13を用いて計算されたベクトルTで表される位置を、新たな視点の位置として設定し、投影部21bへ通知する。
[情報処理装置の処理]
次に、図4を用いて、情報処理装置1bが実行する処理の流れを説明する。図4は、実施例2に係る画像表示方法の処理の流れを説明するためのフローチャートである。情報処理装置1bは、利用者が表示装置5bに表示された投影画像上の点を指定したことをトリガとして、処理を開始する。
まず、表面特定部22bは、指定されたモニタ上の座標を三次元モデルの座標に変換する(ステップS101)。次に、表面特定部22bは、視点と指定された投影面上の点を通る直線を表すベクトル式を算出する(ステップS102)。次に、表面特定部22bは、算出された直線と、ポリゴンとの交点を算出し、算出された交点を三次元モデル表面上の指定された点として特定する(ステップS103)。次に、視点距離計測部23bは、三次元モデル上の指定された点と、視点との距離を計算する(ステップS104)。
次に、法線取得部24bは、三次元モデル上の指定された点を含むポリゴンをポリゴン情報記憶部12bから検索する(ステップS105)。次に、法線取得部24bは、検索されたポリゴンが有するポリゴン法線データを取得する(ステップS106)。次に、視点位置設定部25bは、法線取得部24bによって取得されたポリゴン法線データと、視点距離計測部23bによって計測された距離と、表面特定部22bによって算出された交点の位置とを用いて、新たな視点の位置を設定する(ステップS107)。
次に、投影部21bは、視点位置設定部25bによって新たに設定された視点を視点として、三次元モデルを投影した投影画像を作成する(ステップS108)。次に、投影部21bは、投影画像を表示装置5bに表示させる(ステップS109)。その後、情報処理装置1bは、処理を終了する。
次に、図5を用いて、実施例2に係る情報処理装置1bが実行する処理の例を説明する。図5は、実施例2に係る視点位置を変更する処理を説明するための図である。例えば、情報処理装置1bは、図5に示すように、視点Tから三次元モデルCおよび三次元モデルDを表示させている。
情報処理装置1bは、表示装置5bに表示させた画像から利用者によって一点が指定され、指定された画像上の点が図5に示す指定点Pと対応すると特定した場合には、指定点Pを含むポリゴンが有するポリゴン法線の方向を取得する。次に、情報処理装置1bは、指定点Pと視点Tとの距離を計測する。次に、情報処理装置1bは、指定点Pから法線方向上に存在する点であって、指定点Pから視点Tまでの距離と同じ距離分離れたところに位置する点T’を新たな視点の位置として設定する。
つまり、情報処理装置1bは、三次元モデルの上方向に視点を新たに設定した場合には、三次元モデルの横方向に視点を設定するよりも、三次元モデルによって隠された範囲を表示させ易い。ここで、情報処理装置1bが視点Tを視点として三次元モデルCおよび三次元モデルDを投影した画像を図6に示す。図6は、実施例2に係る情報処理装置が視点Tから投影した図である。
情報処理装置1bは、視点Tを視点として各三次元モデルを投影した場合には、図6に示すように、隠された範囲βを表示していない。次に、情報処理装置1bが新視点T’を視点として三次元モデルCおよび三次元モデルDを投影した画像を図7に示す。情報処理装置1bは、新視点T’を視点として各三次元モデルを投影した場合には、図7に示すように、隠された範囲βを表示することができる。図7は、実施例2に係る情報処理装置が視点T’から投影した図である。
[実施例2の効果]
上述してきたように、実施例2に記載の情報処理装置1bは、三次元モデルが投影された二次元の画像内から利用者によって一点が指定された場合には、指定された点に対応する三次元モデル上の表面の位置を特定する。また、情報処理装置1bは、特定された点を含むポリゴンの法線方向を取得する。また、情報処理装置1bは、特定された点から現在の視点までの距離を計測する。そして、情報処理装置1bは、特定された点から取得された法線方向に向かって計測された距離分離れた点を新たな視点の位置として設定する。
そのため、情報処理装置1bは、三次元モデルに隠された範囲を表示するので、利用者が三次元モデルに隠された範囲を容易に識別することができる。すなわち、情報処理装置1bは、利用者が三次元モデルの表面上から選択した点の位置に応じて、新たな視点の位置を設定する。そのため、情報処理装置1bは、利用者に対して容易に視点の位置を変更させることができる。
情報処理装置1bは、指定された点の法線方向を取得し、取得された法線方向に新たな視点を設定するので、視点された点の近隣に存在する隠された範囲を投影可能な視点を設定することができる。結果として、情報処理装置1bは、隠された範囲を表示させる視点を利用者が容易に設定することができる。
また、情報処理装置1bは、指定された点を含むポリゴンの法線方向を取得し、取得されたポリゴン法線方向に応じて、新たな視点を設定する。ここで、ポリゴンの法線方向は、ポリゴンを表示するために記憶部10bに記憶されている。また、一つのポリゴン上に存在する任意の点は、同一の法線方向を有している。そのため、情報処理装置1bは、余計な計算処理等を実行することなく、記憶部10bに記憶されたデータからポリゴンの法線方向を取得することができる。
以下の実施例3では、画像表示方法を実行する情報処理装置の構成および処理の流れを順に説明する。なお、実施例3と同様の処理および機能については、説明を省略する。
[情報処理装置の構成]
まず最初に、図8を用いて、画像表示方法を実行する装置の構成について説明する。ここで、図8は、実施例3に係る画像表示方法を実行する情報処理装置を説明するためのブロック図である。実施例3に係る情報処理装置1cは、記憶部10cおよび処理部20cを有している。また、表示装置5cは、表示装置5bと同様の表示装置である。また、操作装置6cは、操作装置6bと同様の表示装置である。
記憶部10cは、三次元モデル情報記憶部11cおよびポリゴン情報記憶部12cを有している。ポリゴン情報記憶部12cは、実施例2に係るポリゴン情報記憶部12bと同様の機能を発揮する。
三次元モデル情報記憶部11cは、複数の三次元モデルの情報を記憶している。具体的には、三次元モデル情報記憶部11cは、図9に示すように、三次元モデルが有する辺の情報を記憶している。図9は、実施例3に係る三次元モデル情報記憶部が記憶する情報の一例を表す図である。
三次元モデル情報記憶部11cは、各辺にIDを付して記憶している。例えば、三次元モデル情報記憶部11cは、辺IDが「1」である辺として、点P1から点P2までの線分で表すことができる辺を記憶している。また、三次元モデル情報記憶部11cは、各辺を有する面を示す情報として、面IDを記憶している。
例えば、三次元モデル情報記憶部11cは、面ID「1」の面が辺ID「1〜3」の辺を有していることを記憶している。三次元モデル情報記憶部11cは、図9に示すように、面ID「1」の面として、頂点(P1、P2、P3)を有する三角形の平面を記憶している。例えば、三次元モデル情報記憶部11bは、RAM(Random Access Memory)、 ROM(Read Only Memory)、フラッシュメモリ (flash memory)などの半導体メモリ素子、または、ハードディスク、光ディスクなどの記憶装置である。
処理部20cは、投影部21c、表面特定部22c、視点距離計測部23c、法線取得部24cおよび視点位置設定部25cを有している。投影部21cは、実施例2に係る投影部21bと同様の機能を発揮する。表面特定部22cは、表面特定部22bと同様の機能を発揮する。法線取得部24cは、実施例2に係る法線取得部24bと同様の機能を発揮する。
視点距離計測部23cは、指定された点を有する立体の表面を囲む各辺のうち指定された点から最も近い辺を判定し、指定された点から判定された辺への垂線が判定された辺と交差する交点から現在の視点までの距離を計測する。具体的には、視点距離計測部23cは、指定された点の位置情報を取得した場合には、指定された点を含む三次元モデル上の平面を示す情報を三次元モデル情報記憶部11cより取得する。
例えば、視点距離計測部23cは、面IDが「1」である面の情報を三次元モデル情報記憶部11cから取得した場合には、辺IDが「1〜3」の辺の情報を取得する。次に、視点距離計測部23cは、取得された平面の情報と指定された点の位置情報とを用いて、取得された平面が有する辺のうち、指定された点に最も近い辺を判定する。ここで、指定された点を含む平面が有する辺をエッジという。視点距離計測部23cは、取得された平面を囲む各エッジと指定された点との距離を以下の式、および数12を用いて計算する。
Figure 0005287613
ここで、aおよびdは、エッジの両端に存在する点の位置ベクトルである。pは、指定された点の位置ベクトルである。qは、指定された点からエッジに下ろした垂線とエッジとの交点の位置ベクトルである。視点距離計測部23cは、各エッジと指定された点との距離を計算した場合には、指定された点に最も近いエッジを判定する。
具体的には、視点距離計測部23cは、数12にベクトルpとベクトルqを代入し、指定された点から各エッジに下ろした垂線と各エッジとの交点のうち、最も指定された点に近い交点を判定する。そして、視点距離計測部23cは、指定された点に最も近いエッジを判定する。
視点距離計測部23cは、指定された点に最も近いエッジを判定した場合には、指定された点から判定されたエッジに下ろした垂線とエッジとの交点を判定する。視点距離計測部23cは、交点を判定した場合には、判定された交点から視点までの距離を数12を用いて計測し、計測した距離を視点位置設定部25cへ通知する。また、視点距離計測部23cは、判定された交点の位置を視点位置設定部25cへ通知する。
視点位置設定部25cは、指定された点から指定された点に最も近いエッジへ下ろした垂線と、指定された点に最も近いエッジとの交点を基点とする。また、視点位置設定部25cは、基点とした点から、法線取得部24cによって取得された法線方向上の点であって、交点から視点距離計測部23cによって計測された距離分離れたところに位置する点を新たな視点の位置として設定する。
具体的には、視点位置設定部25cは、視点距離計測部23cによって判定された交点の位置ベクトルをPx、法線取得部24cによって取得された法線ベクトルをniとする。また、視点位置設定部25cは、視点距離計測部23cによって計測された距離をRとする。
そして、視点位置設定部25cは、Px、niおよびRを用いて、ベクトルTを数13を用いて計算する。その後、視点位置設定部25cは、数13を用いて計算されたベクトルTで表される位置を新たな視点の位置として設定し、投影部21cへ通知する。
[情報処理装置の処理]
次に、図10を用いて、情報処理装置1cが実行する処理の流れを説明する。図10は、実施例3に係る画像表示方法が実行する処理の流れを説明するためのフローチャート(1)である。情報処理装置1cは、利用者が操作装置6cを用いて、表示装置5cに表示された投影画像上の点を指定したことをトリガとして、処理を開始する。
まず、表面特定部22cは、指定されたモニタ上の座標を三次元モデルの座標に変換する(ステップS201)。次に、表面特定部22cは、視点と指定された投影面上の点を通る直線を表すベクトル式を算出する(ステップS202)。次に、表面特定部22cは、算出された直線と、ポリゴンとの交点を算出し、算出された交点を三次元モデル上の指定された点として特定する(ステップS203)。
次に、法線取得部24cは、三次元モデル上の指定された点を含むポリゴンをポリゴン情報記憶部12cから検索する(ステップS204)。次に、法線取得部24cは、検索されたポリゴンが有するポリゴン法線データを取得する(ステップS205)。
次に、情報処理装置1cは、エッジ視点処理を実行する(ステップS206)。次に、情報処理装置1cは、エッジ視点処理によって設定された新たな視点からの画像を作成する(ステップS207)。次に、投影部21bは、投影画像を表示装置5bに表示させる(ステップS208)。その後、情報処理装置1cは、処理を終了する。
次に、図11を用いて、エッジ視点処理の流れを具体的に説明する。図11は、実施例3に係る画像表示方法の処理の流れを説明するためのフローチャート(2)である。情報処理装置1cは、法線取得部24がポリゴン法線データを取得したことを契機として、エッジ視点処理を実行する。
まず、視点距離計測部23cは、指定された点から一番近いエッジを判定する(ステップS301)。次に、視点距離計測部23cは、指定された点から判定されたエッジに下ろした垂線とエッジとの交点を判定する(ステップS302)。次に、視点距離計測部23cは、判定された交点から視点までの距離を計測する(ステップS303)。
次に、視点位置設定部25cは、視点距離計測部23cによって判定された交点の位置と、視点距離計測部23cによって計測された距離と、法線取得部24cによって取得された法線データとを用いて、新たな視点の位置を設定する(ステップS304)。
例えば、図12に示すように、情報処理装置1cは、利用者によって点Pが指定された場合には、点Pにおける三次元モデル表面の法線方向を取得する。次に、情報処理装置1cは、点Pから最も近くに存在するエッジを判定する。また、情報処理装置1cは、点Pから判定されたエッジに下ろした垂線とエッジとの交点P’を判定する。
次に、情報処理装置1cは、点P’から点T2までの距離を計測する。次に、情報処理装置1cは、点P’から取得された法線方向へ、計測された距離だけ離れた位置を新たな視点T’の位置として設定する。その後、情報処理装置1cは、エッジ視点処理を終了する。ここで、図12は、実施例3に係る視点位置を変更する処理を説明するための図である。
ここで、図12を用いて、情報処理装置1cが特定された点の位置を変更する処理を具体的に説明する。情報処理装置1cは、図12に示すように、視点Tの位置を視点として三次元モデルEおよび三次元モデルFを投影した場合には、範囲γが三次元モデルEに隠されてしまうため、範囲γを表示させることができない。ここで、指定された点Pよりも、特定された点に基づいて判定された点P’の方が範囲γに近い。
一般的に、三次元モデルに隠された範囲は、三次元モデルが有するエッジの近辺に存在すると考えられる。情報処理装置1cは、指定された点よりも、より隠された範囲に近い点を基点して新たな視点T’を設定するので、利用者が隠された範囲を識別しやすくすることができる。結果として、情報処理装置1cは、隠された範囲を表示させるとともに、隠された範囲がより利用者にとって識別されやすいように表示させることができる。
[実施例3の効果]
上述してきたように、実施例3に記載の情報処理装置1cは、三次元モデルの表面上から一つの点が指定された場合には、指定された点の法線方向を取得する。また、情報処理装置1cは、指定された点を有する平面を囲むエッジのうち、指定された点に最も近いエッジを判定し、指定された点から判定されたエッジへ下ろした垂線と判定されたエッジとの交点を判定する。
また情報処理装置1cは、判定された交点から視点までの距離を計測する。そして、情報処理装置1cは、判定された交点から、取得された法線方向へ計測された距離分離れた点を視点の位置として新たに設定する。そのため、情報処理装置1cは、投影された範囲を利用者がより識別しやすいように三次元モデルを投影することができる。
これまで本発明の実施例について、説明したが本発明は、上述した実施例以外にも様々な異なる形態にて実施されてよいものである。そこで、以下では実施例4として本発明に含まれる他の実施例を説明する。
(1)オフセット及び遮蔽物を避ける処理について
実施例1および実施例2に係る情報処理装置は、指定された点の法線方向を取得し、指定された点から取得された法線方向へ所定の距離離れた位置を新たな視点の位置としていた。また、実施例3に係る情報処理装置は、指定された点の法線方向を取得し、指定された点から最も近いエッジへ下ろした垂線とエッジとの交点から、取得された法線方向へ所定の距離離れた位置を新たな視点の位置としていた。しかし、実施例4に係る情報処理装置はこれに限定されるものではなく、他の処理を付加してもよい。
例えば、三次元モデルの真上に視点を設定した場合は、投影された画像のコントラストが不明瞭となり、利用者による識別が困難となる場合がある。そのため、情報処理装置は、新たに設定される視点の位置にオフセットを考慮してもよい。例えば、情報処理装置は、図13に示すように、計算された視点の位置T’に対して所定の角度傾けた位置Uを新たな視点の位置として設定してもよい。
また、情報処理装置は、図13に示したT’を新たな視点として設定した場合には、P’を中心としT及びT’を有する円弧の延長上の点Uを新たな視点の位置として設定してもよい。
また、情報処理装置は、公知の技術を利用して、遮蔽物を避ける処理を行ってもよい。一例として、情報処理装置は、図14に示すように、指定された点Pと新たに計算された視点T3’との間に三次元モデルが存在する場合について説明する。ここで、図14は、遮蔽物を避ける処理の一例を説明するための図である。
例えば、本実施例に係る情報処理装置1dは、各実施例において説明した処理を実行する各部21d〜25dを有している。さらに、情報処理装置1dは、補正方向判定部26dと新視点補正部27dとを有している。補正方向判定部26dは、視点位置設定部25dによって新たに設定された視点と、指定された点とを結ぶ線分が他の立体と交差するかを判定する。
また、補正方向判定部26dは、新たな視点と指定された点とを結ぶ線分が他の立体と交差する場合には、新たな視点と指定された点とを結ぶ線分と交差する立体に含まれる辺のうち、交差する点から最も近い辺の方向を補正方向として判定する。
具体的には、補正方向判定部26dは、視点位置設定部25dが新たな視点T’の位置を設定した場合には、指定された点Pから新たな視点T’までの線分を表すベクトルPT’を計算する。次に、補正方向判定部26dは、ベクトルPT’と三次元モデルが交差するかどうかを判定する。
そして、補正方向判定部26dは、ベクトルPT’と三次元モデルが交差する場合は、ベクトルPT’と三次元モデルが交差する点のうち、もっとも点Pに近い交点の位置を算出する。一例として、線分PT’と三次元モデルが交差する点のうち、最も点Pに近い交点Qを図14に示した。
次に、補正方向判定部26dは、交点Qから最も近い位置にあるエッジを判定する。次に、情報処理装置は、交点Qから判定されたエッジに下ろした垂線と判定されたエッジとの交点を交点Sとして判定する。そして、補正方向判定部26dは、交点Qから交点Sの方向を補正方向として判定する。
新視点補正部27dは、指定された点と新たに設定された視点との距離を変更することなく、補正方向判定部26dによって判定された補正方向へ傾けるように、新たに設定された視点の位置を補正する。具体的には、新視点補正部27dは、図14に示す点Pの位置を固定したままで、線分PT’を補正方広範手部26dによって判定された交点Qから交点Sの方向へ傾ける。
また新視点補正部27dは、線分PT’が判定されたエッジと交わった場合には、さらに線分PT’を所定の角度傾ける。図14に示した場合には、新視点補正部27dは、線分PT’をさらにθだけ傾けている。新視点補正部27dは、得られた線分PT’が有する点T’’の位置を新たな視点の位置として補正する。そして、情報処理装置1dは、新視点補正部27dによって補正された視点T’’から各三次元モデルを投影する。
例えば、情報処理装置は、視点T’から三次元モデルを投影した場合には、範囲Δを表示させることができないが、視点T’’に視点を移動して三次元モデルを投影した場合には、図15に示すように、範囲Δを表示させることができる。
情報処理装置は、遮蔽物を避ける処理を行った場合には、新たな視点を設定したにもかかわらず、利用者が識別したい範囲が遮蔽物によって投影されないという問題をさらに解決することができる。
(2)視点の距離について
実施例1および実施例2では、指定された点から視点までの距離と指定された点から新たに設定される視点までの距離を変更せずに、新たな視点の位置を設定していた。また、実施例3では、指定された点から最近傍のエッジに下ろした垂線とエッジとの交点から視点までの距離と、垂線とエッジとの交点から新たに設定される視点までの距離を変更せずに、新たな視点の位置を設定していた。
しかし、実施例はこれに限定されるものではなく、例えば、情報処理装置は、指定された点と新たに設定される視点までの距離をあらかじめ利用者が設定するようにしてもよい。また、指定された点を含む三次元モデルの大きさに応じて、指定された点と新たに設定される視点までの距離を自動的に設定してもよい。
例えば、情報処理装置は、指定された点を含む三次元モデル全体が投影面に投影されるように、指定された点と新たに設定される視点との距離を自動的に設定してもよい。
(3)取得する法線方向について
実施例1〜3に係る情報処理装置は、指定された点を含むポリゴンが有する法線方向のみを取得していた。しかし、実施例はこれに限定されるものではなく、例えば、複数のポリゴンが有する法線方向を用いてもよい。例えば、法線取得部は、指定された点の近傍に存在する各ポリゴンの法線方向を取得し、取得された各法線方向を合成した方向を取得してもよい。
具体的には、法線取得部は、指定された点を有するポリゴンおよび指定されたポリゴンと接している複数のポリゴンが有する法線方向を取得し、取得された各法線方向を合成した後に規格化した法線ベクトルを用いて、新たな視点を設定してもよい。
また、実施例1〜3に係る情報処理装置は、三次元モデル上の一点を指定されていた。しかし、実施例はこれに限定されるものではなく、情報処理装置は、矩形選択を用いて、三次元モデル上の一部分を指定されてもよい。
例えば、情報処理装置は、三次元モデル上の一部分を矩形選択によって指定された場合には、矩形選択に含まれるポリゴンの法線方向を合成した後に規格化した法線ベクトルを取得する。そして、情報処理装置は、矩形選択によって指定された範囲の重心点を基点とし、取得された法線ベクトルの方向に所定の距離離れた位置を新たな視点として設定してもよい。
複雑な形状を有する三次元モデルは、様々な向きのポリゴンを有している。しかし、一定の範囲内に含まれる複数のポリゴンは、各ポリゴン法線の向きが大まかにそろっている。そのため、利用者は、好適なポリゴン法線を有するポリゴンを一つ指定するよりも、好適なポリゴン法線を有する大まかな範囲を指定した場合に、新たに設定される好適な視点の位置の方向を容易に指定することができる。
情報処理装置は、利用者によって指定された範囲に含まれるポリゴンの各ポリゴン法線を合成し、合成されたポリゴン法線に応じた視点を新たに設定するので、利用者が好適なポリゴン法線を容易に指定することができるからである。
(4)表示方法について
実施例1〜3に係る情報処理装置は、指定された視点に応じて三次元モデルを投影し、投影された画像を画像表示装置に表示させていた。しかし、実施例はこれに限定されるものではなく、例えば、情報処理装置は、新たな視点の位置が設定された場合には、新たに設定された視点に応じて投影された画像を作成し、作成された画像を直前に表示させた画像とは別途表示させてもよい。
具体的には、情報処理装置は、新たな視点の位置が設定された場合には、新たな視点の位置に応じて投影された画像を作成し、作成された画像を直前に表示された画像とは別ウインドウで表示してもよい。
また、情報処理装置は、新たな視点が設定された場合には、直前の視点と新たに設定された視点とを結ぶ曲線上から複数の視点を選択し、各視点に応じて投影された画像を段階的に表示するようにしてもよい。例えば、情報処理装置は、新たな視点を設定した場合には、直前の視点の位置から新たな視点の位置まで視点を一定距離ずつ動かしながら、各位置で三次元モデルを投影する。そして情報処理装置は、各視点の位置で投影された三次元モデルの画像を連続で表示させる。
(5)エッジの選択について
実施例3に係る情報処理装置では、指定された点から指定された点に最も近い辺に垂線を下ろし、垂線と辺との交点を基点として新たな視点を設定していた。しかし、実施例はこれに限定されるものではない。
例えば、情報処理装置は、三次元モデルが投影された二次元の画像内から一点が指定された場合には、指定された点に対応する立体の表面上の点を特定し、特定された点を含む平面を囲む各辺のうち、視点を基準として指定された点の奥側にある辺を判定する。そして、情報処理装置は、指定された点から判定された辺へ垂線を下ろし、垂線と辺との交点を基点として新たな視点を設定してもよい。
通常、オクルージョンとなった範囲は、視点を基準として三次元モデルの奥側に発生する。そのため、情報処理装置は、視点を基準として指定された点の奥側にある辺が有する点を基点とした場合には、オクルージョンとなった範囲により近い視点を新たに設定することができる。結果として、情報処理装置は、より適切な視点を新たに設定することができる。
(6)プログラム
ところで、実施例2および実施例3に係る情報処理装置は、ハードウェアを利用して各種の処理を実現する場合を説明した。しかし、実施例はこれに限定されるものではなく、あらかじめ用意されたプログラムを情報処理装置で実行することによって実現するようにしてもよい。
そこで、以下では、図16を用いて、実施例2および実施例3に示した情報処理装置と同様の機能を有するプログラムを実行する情報処理装置の一例を説明する。図16は、画像表示プログラムを実行するコンピュータを説明するための図である。
図16に例示された情報処理装置200は、HDD(Hard Disc Drive)150、RAM(Random Access Memory)120、ROM(Read Only Memory)130、がバス170で接続されている。
また、図11に例示された情報処理装置200は、CPU(Central Processing Unit)140がバス170で接続されている。さらにバス170には、表示装置5および操作装置6と接続するための接続端子部分I/O(Input/Output)160が接続されている。
HDD150には、三次元モデル情報記憶テーブル151およびポリゴン情報記憶テーブル152が記憶されている。三次元モデル情報記憶テーブル151は、図8に示した実施例3に係る三次元モデル情報記憶部11cと同様の情報を有している。また、ポリゴン情報記憶テーブル152は、図8に示したポリゴン情報記憶部12cと同様の情報、または、図2に示した実施例2に係るポリゴン情報記憶部12bと同様の情報を有している。
ROM130には、投影プログラム131、表面特定プログラム132、視点距離計測プログラム133、法線取得プログラム134および視点位置設定プログラム135があらかじめ保持されている。CPU140が各プログラム131〜135をROM130から読み出して実行することによって、図11に示すように、各プログラム131〜135は、投影プロセス141、表面特定プロセス142、視点距離計測プロセス143、法線取得プログラム144および視点位置プロセス145として機能するようになる。
なお、各プロセス141〜145は、図3に示した投影部21b、表面特定部22b、視点距離計測部23、法線取得部24b、視点位置設定部25bと同様の機能を発揮する。また、各プロセス141〜145は、図8に示した各部21c〜25cと同様の機能を発揮するようにすることも可能である。
なお、各プログラム141〜145はROM130に保持されている必要は無く、例えばHDD150に記録されており、CPU140によって展開され、各プロセス141〜145として機能するようにしてもよい。また、各プログラム141〜145は、RAM120に保持されてもよい。
なお、本実施例で説明した複製作成プログラムは、あらかじめ用意されたプログラムをパーソナル情報処理装置やワークステーションなどの情報処理装置で実行することによって実現することができる。このプログラムは、インターネットなどのネットワークを介して配布することができる。
また、このプログラムは、ハードディスク、フレキシブルディスク(FD)、CD−ROM,MO、DVDなどの情報処理装置で読取可能な記録媒体に記録され、情報処理装置によって記録媒体から読み出されることによって実行することもできる。
以上の各実施例を含む実施形態に関し、さらに以下の付記を開示する。
(付記1)立体が投影された二次元の画像内の一点が指定された場合に、該指定された点に対応する立体の表面を特定する表面特定ステップと、
前記表面特定ステップによって特定された立体の表面の法線方向を取得する法線取得ステップと、
前記法線取得ステップによって取得された法線方向に応じて、前記立体を投影する視点の位置を設定する視点位置設定ステップと、
を含んだことを特徴とする画像表示方法。
(付記2)前記指定された点と対応する立体の表面上の点から現在の視点までの距離を計測する視点距離計測ステップをさらに含み、
前記視点位置設定ステップは、前記指定された点と対応する立体の表面上の点から前記法線方向上に存在する点であって、前記指定された点と対応する立体の表面上の点から前記視点距離計測ステップによって計測された前記距離分離れたところに位置する点を新たな視点の位置として設定する事を特徴とする付記1に記載の画像表示方法。
(付記3)前記法線取得ステップは、前記立体の表面が複数の多角形平面で形成されている場合には、前記指定された点と対応する立体の表面上の点の近傍に存在する各多角形平面の法線方向を取得し、当該取得された各法線方向を合成した方向を取得することを特徴とする付記1または2に記載の画像表示方法。
(付記4)前記視点距離計測ステップは、前記指定された点と対応する立体の表面上の点を有する前記立体の表面を囲む各辺のうち前記立体の表面上の点から最も近い辺を判定し、前記立体の表面上の点から前記判定された辺への垂線が前記判定された辺と交差する交点から前記現在の視点までの距離を計測し、
前記視点位置設定ステップは、前記交点を基点とした前記法線方向上の点であって、前記交点から前記視点距離計測ステップによって計測された前記距離分離れたところに位置する点を新たな視点の位置として設定することを特徴とする付記1または3に記載の画像表示方法。
(付記5)前記視点位置設定ステップによって新たに設定された視点と、前記指定された点と対応する立体の表面上の点とを結ぶ線分が他の前記立体と交差する場合には、当該他の立体に含まれる辺のうち、前記交差する点から最も近い辺の方向を補正方向として判定する補正方向判定ステップと、
前記表面上の点と前記新たに設定された視点との距離を変更することなく、前記新たに設定された視点の位置を、前記補正方向判定ステップによって判定された前記補正方向へ傾けるように補正する新視点補正ステップと、をさらに含むことを特徴とする付記1から4のいずれか一つに記載の画像表示方法。
(付記6)前記視点位置判定ステップによって、前記新たな視点の位置が判定された場合には、当該新たに判定された視点の位置に応じた平面へ、前記立体の形状を投影した画像を作成し、画像を表示する表示装置に、前回表示した画像とは別途表示させる表示ステップをさらに含むことを特徴とする付記1から5のいずれか一つに記載の画像表示方法。
(付記7)前記視点位置判定ステップによって、前記新たな視点の位置が判定された場合には、前回判定された前記視点と前記新たな視点とを結ぶ曲線上に存在する複数の点を通過視点として複数選択し、当該選択された各通過視点の位置に応じた各平面へ、立体の形状を投影した画像を作成し、当該作成された画像を段階的に表示することを特徴とする付記1から6のいずれか一つに記載の画像表示方法。
(付記8)二次元の平面に投影されている立体の表面から一つの点が指定された場合には、該指定された点における表面の法線方向を取得する法線取得部と、
前記法線取得部によって取得された法線方向に応じて、前記立体を投影する視点の位置を設定する視点位置設定部と、
を備えることを特徴とする情報処理装置。
(付記9)立体が投影された二次元の画像内の一点が指定された場合に、該指定された点を含む立体の表面を特定する表面特定手順と、
前記表面特定手順によって特定された立体の表面の法線方向を取得する法線取得手順と、
前記法線取得手順によって取得された法線方向に応じて、前記立体を投影する視点の位置を設定する視点位置設定手順と、
を含んだことを特徴とする画像表示プログラム。
1 情報処理装置
2 表面特定部
3 法線取得部
4 視点位置設定部
5b 表示装置
6b 操作装置
10 記憶部
11b 三次元モデル情報記憶部
12b ポリゴン情報記憶部

Claims (5)

  1. コンピュータを用いて画像を表示する画像表示方法であって、
    前記コンピュータが有するプロセッサが、立体が投影された二次元の画像内の一点が指定された場合に、該指定された点に対応する立体の表面を特定する表面特定ステップと、
    前記プロセッサが、前記表面特定ステップによって特定された立体の表面の法線方向を取得する法線取得ステップと、
    前記プロセッサが、前記指定された点と対応する立体の表面上の点を有する前記立体の表面を囲む各辺のうち前記立体の表面上の点から最も近い辺を判定し、前記立体の表面上の点から前記判定された辺への垂線が前記判定された辺と交差する交点から前記現在の視点までの距離を計測する視点距離計測ステップと、
    前記プロセッサが、前記交点を基点とし、前記法線取得ステップによって取得された法線方向上の点であって、前記交点から前記視点距離計測ステップによって計測された前記距離分離れたところに位置する点を前記立体を投影する新たな視点の位置として設定する視点位置設定ステップと、
    を含んだことを特徴とする画像表示方法。
  2. 前記法線取得ステップは、前記立体の表面が複数の多角形平面で形成されている場合には、前記指定された点と対応する立体の表面上の点を含む多角形平面と前記多角形平面と接する複数の各多角形平面の法線方向を取得し、当該取得された各法線方向を合成した方向を取得することを特徴とする請求項1に記載の画像表示方法。
  3. コンピュータを用いて画像を表示する画像表示方法であって、
    前記コンピュータが有するプロセッサが、立体が投影された二次元の画像内の一点が指定された場合に、該指定された点に対応する立体の表面を特定する表面特定ステップと、
    前記表面特定ステップによって特定された立体の表面の法線方向を取得する法線取得ステップと、
    前記プロセッサが、前記法線取得ステップによって取得された法線方向に応じて、前記立体を投影する視点の位置を設定する視点位置設定ステップと、
    前記プロセッサが、前記視点位置設定ステップによって新たに設定された視点と、前記指定された点と対応する立体の表面上の点とを結ぶ線分が他の前記立体と交差する場合には、当該他の立体に含まれる辺のうち、前記交差する点から最も近い辺の方向を補正方向として判定する補正方向判定ステップと、
    前記プロセッサが、前記表面上の点と前記新たに設定された視点との距離を変更することなく、前記新たに設定された視点の位置を、前記補正方向判定ステップによって判定された前記補正方向へ傾けるように補正する新視点補正ステップと、を含んだことを特徴とする画像表示方法。
  4. 二次元の平面に投影されている立体の表面から一つの点が指定された場合には、該指定された点に対応する立体の表面の法線方向を取得する法線取得部と、
    前記指定された点と対応する立体の表面上の点を有する前記立体の表面を囲む各辺のうち前記立体の表面上の点から最も近い辺を判定し、前記立体の表面上の点から前記判定された辺への垂線が前記判定された辺と交差する交点から前記現在の視点までの距離を計測する視点距離計測部と、
    前記交点を基点とし、前記法線取得部によって取得された法線方向上の点であって、前記交点から前記視点距離計測部によって計測された前記距離分離れたところに位置する点を前記立体を投影する新たな視点の位置として設定する視点位置設定部と、
    を備えることを特徴とする情報処理装置。
  5. コンピュータが実行する画像表示プログラムであって、
    立体が投影された二次元の画像内の一点が指定された場合に、該指定された点に対応する立体の表面を特定する表面特定手順と、
    前記表面特定手順によって特定された立体の表面の法線方向を取得する法線取得手順と、
    前記指定された点と対応する立体の表面上の点を有する前記立体の表面を囲む各辺のうち前記立体の表面上の点から最も近い辺を判定し、前記立体の表面上の点から前記判定された辺への垂線が前記判定された辺と交差する交点から前記現在の視点までの距離を計測する視点距離計測手順と、
    前記交点を基点とし、前記法線取得手順によって取得された法線方向上の点であって、前記交点から前記視点距離計測手順によって計測された前記距離分離れたところに位置する点を前記立体を投影する新たな視点の位置として設定する視点位置設定手順と、
    前記コンピュータに実行させることを特徴とする画像表示プログラム。
JP2009198988A 2009-08-28 2009-08-28 画像表示方法、情報処理装置および画像表示プログラム Expired - Fee Related JP5287613B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2009198988A JP5287613B2 (ja) 2009-08-28 2009-08-28 画像表示方法、情報処理装置および画像表示プログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2009198988A JP5287613B2 (ja) 2009-08-28 2009-08-28 画像表示方法、情報処理装置および画像表示プログラム

Publications (2)

Publication Number Publication Date
JP2011048797A JP2011048797A (ja) 2011-03-10
JP5287613B2 true JP5287613B2 (ja) 2013-09-11

Family

ID=43835005

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2009198988A Expired - Fee Related JP5287613B2 (ja) 2009-08-28 2009-08-28 画像表示方法、情報処理装置および画像表示プログラム

Country Status (1)

Country Link
JP (1) JP5287613B2 (ja)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101745321B1 (ko) * 2016-10-28 2017-06-09 (주)이지스 3차원 공간정보 기반의 교통영향평가 분석정보 제공방법
JP2021140196A (ja) * 2018-05-31 2021-09-16 ソニーグループ株式会社 情報処理装置、情報処理方法、及びプログラム

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH05157538A (ja) * 1991-12-03 1993-06-22 Fujitsu Ltd 法線ベクトル算出装置
JPH08221602A (ja) * 1995-02-14 1996-08-30 Hitachi Ltd 3次元図形処理装置
JP3383563B2 (ja) * 1997-12-18 2003-03-04 富士通株式会社 物体移動シミュレーション装置
JP2001195608A (ja) * 2000-01-14 2001-07-19 Artdink:Kk Cgの三次元表示方法
JP2002024862A (ja) * 2000-07-07 2002-01-25 Ntt Data Corp コンピュータを利用した表示制御装置及び方法
JP2002049936A (ja) * 2000-08-03 2002-02-15 Namco Ltd ゲーム装置および情報記憶媒体
JP4183441B2 (ja) * 2002-05-21 2008-11-19 株式会社キャドセンター 3次元データ処理システム、3次元データ処理方法、並びにコンピュータ上で動作する情報処理プログラム

Also Published As

Publication number Publication date
JP2011048797A (ja) 2011-03-10

Similar Documents

Publication Publication Date Title
JP6338021B2 (ja) 画像処理装置、画像処理方法および画像処理プログラム
JP6503906B2 (ja) 画像処理装置、画像処理方法および画像処理プログラム
US10930008B2 (en) Information processing apparatus, information processing method, and program for deriving a position orientation of an image pickup apparatus using features detected from an image
JP6464938B2 (ja) 画像処理装置、画像処理方法および画像処理プログラム
US11189041B2 (en) Image processing apparatus, control method of image processing apparatus, and non-transitory computer-readable storage medium
JP2000163590A (ja) 三次元モデル変換装置及び方法
US11490062B2 (en) Information processing apparatus, information processing method, and storage medium
US10863154B2 (en) Image processing apparatus, image processing method, and storage medium
WO2009147806A1 (ja) 遠隔操作装置及び遠隔操作方法
US11962946B2 (en) Image processing apparatus, display system, image processing method, and medium
KR20200103115A (ko) 가상 물체 표시 제어 장치, 가상 물체 표시 시스템, 가상 물체 표시 제어 방법, 및 가상 물체 표시 제어 프로그램
US20200118327A1 (en) Image generation apparatus, image generation method, and program
JP5461782B2 (ja) カメラ映像シミュレータプログラム
JP5287613B2 (ja) 画像表示方法、情報処理装置および画像表示プログラム
JP2018010473A (ja) 画像処理装置、画像処理方法、および画像処理プログラム
JP2013092888A (ja) データ処理装置
JP2017184136A (ja) 情報処理装置、情報処理方法、情報処理システム及びプログラム
JP6564259B2 (ja) 画像処理装置、画像処理方法
JP2006300656A (ja) 画像計測方法、装置、プログラム及び記録媒体
JP2019144958A (ja) 画像処理装置、画像処理方法およびプログラム
JP2008140297A (ja) 動画像生成方法及びシステム
JP3943975B2 (ja) 情報処理方法および装置
JP2005140623A (ja) 画像計測方法、装置、プログラム及び記録媒体
JP6091676B2 (ja) 3次元地図表示システム
JP2019146010A (ja) 画像処理装置、画像処理方法およびプログラム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20120510

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20130205

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20130212

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20130415

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20130507

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20130520

LAPS Cancellation because of no payment of annual fees