(57)【特許請求の範囲】
【請求項１】
対象物の二次元画像から前記対象物の立体モデルの算出を行う三次元画像処理装置であって、
前記二次元画像を読み込む画像読込手段と、
指定された前記二次元画像上の三次元の基準となる基準情報に基づいて、三次元の実空間と二次元の像空間との間の変換関係を取得する変換関係取得手段と、
前記対象物のセグメント毎に、指定された前記セグメントの形状に対応した数の離散的な点の数及び前記点の位置に基づいて、前記対象物の境界を特定する境界特定手段と、
前記変換関係と、前記境界と、指定された前記対象物の厚さ情報と、指定された前記対象物が開口しているか否かの情報とに基づいて、前記対象物の立体モデルを算出する三次元モデル再構築手段と、を含み、
前記セグメントの形状に対応した数の離散的な点の数は、前記セグメントの形状が直線の場合には２点、前記セグメントの形状が円の場合には３点、前記セグメントの形状が軸平行楕円の場合には４点、前記セグメントの形状が一般楕円の場合には５点以上として指定される、ことを特徴とする三次元画像処理装置。
【請求項２】
操作入力を受け付けて、前記二次元画像の中で、二対の互いに平行な線分であって各対は互いに直交する線分の指定と、原点とで、三次元の基準となる前記基準情報を指定する基準位置指定手段を備えることを特徴とする請求項１に記載の三次元画像処理装置。
【請求項３】
前記形状の指定は、中実形状の境界の指定と、中空形状の境界の指定とを含み、前記三次元モデル再構築手段は、中実形状の算出処理と、中空形状の算出処理とを実行し、両者の合体結果で立体モデルを再構築することを特徴とする請求項１または請求項２に記載の三次元画像処理装置。
【請求項４】
立体モデルを算出する際の各面の位置情報に基づいて、二次元画像からテクスチャを取得し、前記立体モデルの各面に貼り付けるテクスチャ貼り付け手段を有することを特徴とする請求項１〜請求項３のいずれかに記載の三次元画像処理装置。
【請求項５】
前記テクスチャ貼り付け手段は、同一対象物に対する複数の異なる視野からの二次元画像を読み込み、各画像ごとに操作入力を受け付け、前記立体モデルの対応する各面に貼り付けることを特徴とする請求項４に記載の三次元画像処理装置。
【請求項６】
前記テクスチャ貼り付け手段は、前記境界の位置情報が修正されたときに、修正された境界の位置情報に対応して前記テクスチャを取得して所定の面に貼り付けることを特徴とする請求項４または請求項５に記載の三次元画像処理装置。
【請求項７】
前記境界の形状を特定する過程で、前記二次元画像の位置情報に含まれる放射歪曲を除去して位置情報を変換する放射歪曲除去手段を有することを特徴とする請求項１〜請求項６のいずれかに記載の三次元画像処理装置。
【請求項８】
前記境界の形状を特定する過程で、前記二次元画像からエッジ画素を検出し、前記エッジ画素の位置情報から前記境界の位置情報を修正するポイント調整手段を有することを特徴とする請求項１〜請求項７のいずれかに記載の三次元画像処理装置。
【請求項９】
操作入力を受け付けて指定された前記点の位置を、特定の軸に沿って裏返すことにより、左右対称性を維持した点の位置を自動的に発生することを特徴とする請求項１〜請求項８のいずれかに記載の三次元画像処理装置。
【請求項１０】
前記対象物を、予め定義された形、箱、錐形、および回転楕円体との組み合わせを使ってモデル化することを特徴とする請求項１〜請求項９のいずれかに記載の三次元画像処理装置。
【請求項１１】
各セグメントにおける点位置の追加、削除、修正が可能であることを特徴とする請求項１〜請求項１０のいずれかに記載の三次元画像処理装置。
【請求項１２】
三次元画像処理装置が、対象物の二次元画像から前記対象物の立体モデルの算出を行う三次元画像処理方法であって、
前記装置は、
二次元画像を読み込み、
指定された前記二次元画像上の三次元の基準となる基準情報に基づいて、三次元の実空間と二次元の像空間との間の変換関係を取得し、
前記対象物のセグメント毎に、指定された前記セグメントの形状に対応した数の離散的な点の数及び前記点の位置に基づいて、前記対象物の境界を特定し、
前記変換関係と、前記境界と、指定された前記対象物の厚さ情報と、指定された前記対象物が開口しているか否かの情報とに基づいて、前記対象物の立体モデルを算出し、
前記セグメントの形状に対応した数の離散的な点の数は、前記セグメントの形状が直線の場合には２点、前記セグメントの形状が円の場合には３点、前記セグメントの形状が軸平行楕円の場合には４点、前記セグメントの形状が一般楕円の場合には５点以上として指定される、ことを特徴とする三次元画像処理方法。
【請求項１３】
対象物の二次元画像から前記対象物の立体モデルの算出を行う三次元画像処理プログラムを記録した媒体であって、
前記二次元画像を読み込む画像読込機能と、
指定された前記二次元画像上の三次元の基準となる基準情報に基づいて、三次元の実空間と二次元の像空間との間の変換関係を取得する変換関係取得機能と、
前記対象物のセグメント毎に、指定された前記セグメントの形状に対応した数の離散的な点の数及び前記点の位置に基づいて、前記対象物の境界を特定する境界特定機能と、
前記変換関係と、前記境界と、指定された前記対象物の厚さ情報と、指定された前記対象物が開口しているか否かの情報とに基づいて、前記対象物の立体モデルを算出する三次元モデル再構築機能とをコンピューターに実現させ、
前記セグメントの形状に対応した数の離散的な点の数は、前記セグメントの形状が直線の場合には２点、前記セグメントの形状が円の場合には３点、前記セグメントの形状が軸平行楕円の場合には４点、前記セグメントの形状が一般楕円の場合には５点以上として指定される、ことを特徴とする三次元画像処理プログラムを記録した媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、三次元画像処理装置、三次元画像処理方法および三次元画像処理プログラムを記録した媒体に関する。
【背景技術】
【０００２】
多くのロボット工学またはコンピューターによる視覚化アプリケーションでは、特定の種類のオブジェクト（例えば、ロボット工学アプリケーションの中の製造中の製品）を非常に高速にモデル化するということは重要である。
１つ目の方法は映像からオブジェクトをモデル化する試みである。そこでは、ユーザーは直観的にオブジェクトの表面の境界線をトレースすることができ、ソフトウェアは自動的にモデルを再構築する。なお、本明細書では特に断りの無い限り、カメラで撮影された画像イメージを映像と称する。
特許文献１として、「三次元モデリングのためのシステムと方法」が知られている。
【０００３】
この特許は、予め定められた二次元領域からユーザーが立体（ボリューム）をつくることができるプッシュ/プル技術を記述する。
この特許は、ユーザーがインタラクティブに二次元の形状から３次元立体（ボリューム）を造る方法を記述する。
また、特許文献２として、「一つの映像から三次元オブジェクトをモデル化するシステムと方法」が知られている。
この特許は、モデル化されるオブジェクトについて、その先行モデルがすでに利用できる状態になっている方法（例えば顔モデル）を記述する。
【０００４】
これは自動的に映像から特徴を見つけ、見つかった特徴が最も適切と説明できるように、同特徴をモデルに合致させる。
さらに、特許文献３として、「複数の映像を使ったインタラクティブなモデル生成装置および方法」が知られている。
この特許は、複数の映像からオブジェクトの三次元モデルを生成するためにユーザーがソフトウェアプログラムとインタラクティブに作業できるようにするためのアーキテクチャを記述するに過ぎない。この場合、原始関数を生み出すための実装方法は提供されていない。
【０００５】
その他、非特許文献１として、Journal of Mathematical Imaging and Vision（2009/11）において「ラジアルディストーション（歪曲）の中心の算定とラジアルディストーション修正の簡単な方法」という技術が開示されている。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】米国特許US6,628,279号公報
【特許文献２】米国公開2007/0127810号公報
【特許文献３】米国公開2002/0080139号公報
【非特許文献】
【０００７】
【非特許文献１】Journal of Mathematical Imaging and Vision（2009/11）、ラジアルディストーション（歪曲）の中心の算定とラジアルディストーション修正の簡単な方法
【発明の概要】
【発明が解決しようとする課題】
【０００８】
特許文献１に示す技術では、二次元の領域を特定するためには、あらかじめ定義された原始関数のセットを使うことを基礎としている。そのため、モデリング対象の物体がより複雑であるほど、モデリング操作がより直感的でなくなる。
特許文献２に示す技術では、特定の種類のオブジェクトをモデル化することができるだけであり、一般的な種類のオブジェクトはモデル化されることができない。
特許文献３に示す技術では、単純な形状の原始関数からなる小さなセットでモデルを作り上げることに限定されており、単純なオブジェクトをモデル化させられるだけである。また、複数の映像間での回転行列を算定するために使用される所定の原始関数は、それ自身がシステムに対するエラーの元となり得るので、先の算定を信頼性の薄いものにする。
【０００９】
非特許文献１に示す技術では、ラジアルディストーションの中心と、実空間においては直線であるべき線に基づく第一次ラジアルディストーションパラメータの算定方法を記載するに過ぎない。
【課題を解決するための手段】
【００１０】
本発明では、二次元画像から三次元画像を算出する三次元画像処理装置であって、二次元画像を読み込む画像読込手段と、読み込んだ二次元画像を表示した上で、操作入力を受け付けて同画像上に三次元の基準となる位置を指定する基準位置指定手段と、三次元の実空間と二次元の像空間との間の変換関係を取得する変換関係取得手段と、表示画像上で、操作入力を受け付けて対象物の表面の境界の形状を、各セグメントごとに各セグメントの形状に対応した数の離散的な点位置で指定するトレース手段と、操作入力を受け付けて高さの値を取得する高さ値取得手段と、各セグメントごとに指定された離散的な点位置とその数に基づいて、当該区分全体の三次元での位置情報を算出して上記境界を特定する境界特定手段と、高さの値と、算出された各セグメントの境界の位置情報と、上記変換関係とに基づいて対象物の三次元モデルを算出する三次元モデル再構築手段とを具備する構成としてある。
【００１１】
上記構成において、画像読込手段が、二次元画像を読み込むと、基準位置指定手段は読み込んだ二次元画像を表示した上で、操作入力を受け付けて同画像上に三次元の基準となる位置を指定し、変換関係取得手段が三次元の実空間と二次元の像空間との間の変換関係を取得する。次に、トレース手段が、表示画像上で、操作入力を受け付けて対象物の表面の境界の形状を、各セグメントごとに各セグメントの形状に対応した数の離散的な点位置で指定するとともに、高さ値取得手段は、操作入力を受け付けて高さの値を取得する。この結果、境界特定手段が各セグメントごとに指定された離散的な点位置とその数に基づいて、当該区分全体の三次元での位置情報を算出して上記境界を特定すると、三次元モデル再構築手段が、高さの値と、算出された各セグメントの境界の位置情報と、上記変換関係とに基づいて対象物の三次元モデルを算出する。
また、本発明は、対象物の二次元画像から前記対象物の立体モデルの算出を行う三次元画像処理装置であって、前記二次元画像を読み込む画像読込手段と、指定された前記二次元画像上の三次元の基準となる基準情報に基づいて、三次元の実空間と二次元の像空間との間の変換関係を取得する変換関係取得手段と、前記対象物のセグメント毎に、指定された前記セグメントの形状に対応した数の離散的な点の数及び前記点の位置に基づいて、前記対象物の境界を特定する境界特定手段と、前記変換関係と、前記境界と、指定された前記対象物の厚さ情報と、指定された前記対象物が開口しているか否かの情報とに基づいて、前記対象物の立体モデルを算出する三次元モデル再構築手段と、を含み、前記セグメントの形状に対応した数の離散的な点の数は、前記セグメントの形状が直線の場合には２点、前記セグメントの形状が円の場合には３点、前記セグメントの形状が軸平行楕円の場合には４点、前記セグメントの形状が一般楕円の場合には５点以上として指定される。
また、本発明は、操作入力を受け付けて、前記二次元画像の中で、二対の互いに平行な線分であって各対は互いに直交する線分の指定と、原点とで、三次元の基準となる前記基準情報を指定する基準位置指定手段を備える。
また、本発明は、前記形状の指定は、中実形状の境界の指定と、中空形状の境界の指定とを含み、前記三次元モデル再構築手段は、中実形状の算出処理と、中空形状の算出処理とを実行し、両者の合体結果で立体モデルを再構築する。
また、本発明は、立体モデルを算出する際の各面の位置情報に基づいて、二次元画像からテクスチャを取得し、前記立体モデルの各面に貼り付けるテクスチャ貼り付け手段を有する。
また、本発明は、前記テクスチャ貼り付け手段は、同一対象物に対する複数の異なる視野からの二次元画像を読み込み、各画像ごとに操作入力を受け付け、前記立体モデルの対応する各面に貼り付ける。
また、本発明は、前記テクスチャ貼り付け手段は、前記境界の位置情報が修正されたときに、修正された境界の位置情報に対応して前記テクスチャを取得して所定の面に貼り付ける。
また、本発明は、前記境界の形状を特定する過程で、前記二次元画像の位置情報に含まれる放射歪曲を除去して位置情報を変換する放射歪曲除去手段を有する。
また、本発明は、前記境界の形状を特定する過程で、前記二次元画像からエッジ画素を検出し、前記エッジ画素の位置情報から前記境界の位置情報を修正するポイント調整手段を有する。
また、本発明は、操作入力を受け付けて指定された前記点の位置を、特定の軸に沿って裏返すことにより、左右対称性を維持した点の位置を自動的に発生する。
また、本発明は、前記対象物を、予め定義された形、箱、錐形、および回転楕円体との組み合わせを使ってモデル化する。
また、本発明は、各セグメントにおける点位置の追加、削除、修正が可能である。
【００１２】
このように、対象物の三次元モデルを算出する手法は必ずしも実体のある装置に限られる必要はなく、その方法としても機能することは容易に理解でき、その方法としても有効であることに相違はない。
ところで、このような三次元画像処理装置は単独で存在する場合もあるし、ある機器に組み込まれた状態で利用されることもあるなど、発明の思想としてはこれに限らず、各種の態様を含むものである。従って、ソフトウェアであったりハードウェアであったりするなど、適宜、変更可能である。
【００１３】
発明の思想の具現化例として三次元画像処理装置のソフトウェアとなる場合には、かかるソフトウェアを記録した記録媒体上においても当然に存在し、利用されるといわざるをえない。
むろん、その記録媒体は、磁気記録媒体であってもよいし光磁気記録媒体であってもよいし、今後開発されるいかなる記録媒体においても全く同様に考えることができる。また、一次複製品、二次複製品などの複製段階については全く問う余地無く同等である。その他、供給方法として通信回線を利用して行なう場合でも本発明が利用されていることにはかわりない。
【００１４】
さらに、一部がソフトウェアであって、一部がハードウェアで実現されている場合においても発明の思想において全く異なるものではなく、一部を記録媒体上に記憶しておいて必要に応じて適宜読み込まれるような形態のものとしてあってもよい。
本発明をソフトウェアで実現する場合、ハードウェアやオペレーティングシステムを利用する構成とすることも可能であるし、これらと切り離して実現することもできる。例えば、各種の演算処理といっても、その実現方法はオペレーティングシステムにおける所定の関数を呼び出して処理することも可能であれば、このような関数を呼び出すことなくハードウェアから入力することも可能である。そして、実際にはオペレーティングシステムの介在のもとで実現するとしても、プログラムが媒体に記録されて流通される過程においては、このプログラムだけで本発明を実施できるものと理解することができる。
【００１５】
また、本発明をソフトウェアで実施する場合、発明がプログラムを記録した媒体として実現されるのみならず、本発明がプログラム自体として実現されるのは当然であり、プログラム自体も本発明に含まれる。
【発明の効果】
【００１６】
本発明は、非傾斜の天面と底面からなる多種多様なオブジェクトの詳細なモデルを得るため、ユーザーが迅速かつ容易に映像の中の境界線をトレースする新規な方法を提供することができ、この技術では、曲がっていたり中空とされた部品を有するオブジェクトもモデル化することができる。
また、本発明によれば、二次元化された画像情報から三次元下において互いに直交する平行線の交差点と、三次元像の起点と高さと外縁点を用いて二次元画像から三次元画像を算出することができる。
【図面の簡単な説明】
【００１７】
【図１】システムの構成要素図である。
【図２】プロセッシングソフトウェアのフローチャートである。
【図３】二次元画像上に三次元の基準となる位置を指定する図である。
【図４】ユニークな一つの円を決定する図である。
【図５】補間状況を示す図である。
【図６】フィッティングプロセスが実行される図である。
【図７】フィッティングプロセスが実行される図である。
【図８】ネガティブトレースが使われる例を示す図である。
【図９】ネガティブトレースが使われる例を示す図である。
【図１０】ネガティブトレースが使用されるもう一つの例を示す図である。
【図１１】ネガティブトレースが使用されるもう一つの例を示す図である。
【図１２】ラジアルディストーションの影響を示す図である。
【図１３】ラジアルディストーションのためにカーブされる状況を示す図である。
【図１４】正しい方向のエッジピクセルだけが残る状況を示す図である。
【図１５】セグメント内領域と指示された領域を示す図である。
【図１６】セグメント内領域と指示された領域を示す図である。
【発明を実施するための形態】
【００１８】
以下、下記の順序に従って添付図面にもとづいて本発明の実施形態を説明する。
図１は、システムの構成要素図である。
三次元オブジェクト再構築ステップは、処理装置（例えばコンピューター）にあるプロセッシングソフトウェアプログラムによって実行される。
ユーザーは、一つの映像と、その映像の外周（適用しえるならば、同オブジェクトにおける天面の内側）の境界をトレースすることとなる一セットの点を供給する。その一セットの点がトレースされる様子は、後で更に詳述する。
【００１９】
プロセッシングソフトウェアは対象物（オブジェクト）の再構築された三次元モデルを作り出す。それは、各種のロボット工学、モデリングまたはエンターテイメント・アプリケーションででも使われることができる。
プロセッシングソフトウェア１は、トレースアンドポイントマネージャ２と、三次元モデルジェネレータ３と、テクスチャマネージャ４とを備える。トレースアンドポイントマネージャ２は、ユーザーによって入力されるトレースと点を管理する。三次元モデルジェネレータ３は、与えられたトレースと点と高さから三次元モデルを作り上げる。テクスチャマネージャ４は、三次元モデルの各々の表面のために記録されているテクスチャを管理する。
【００２０】
図２は、プロセッシングソフトウェアの中に存在するアルゴリズムのフローチャートを表す。
各々のステップについて詳述する前に、オブジェクトモデルプロセスの一般的な概略を説明する。
最初に、映像はプロセッシングソフトウェアプログラム（イメージロード）に取り込まれる（ステップ１）。次に、ユーザーは、キャリブレーションのために、同映像に関して空間座標を定義する必要がある（ステップ２）。
それから、オプションとして、ラジアルディストーション修正を行ってもよい（オプションとしてのラジアルディストーション修正）（ステップ３）。空間座標の情報によって、ユーザーが映像位置と実空間における高さの値を特定したときに、実空間における絶対的な三次元位置が計算できるようになる。
【００２１】
次に、ユーザーは、その映像であるオブジェクトの内部あるいは外周の境界線をトレースする（表面の境界をトレース）（ステップ４）。また、トレースの位置はオプションとして画像情報に基づいて自動的に調整されるようにしてもよい（オプションとしての自動ポイント調整）（ステップ５）。トレースに基づき、プロセッシングソフトウェアは、高さ値を使用しつつ、その境界線の三次元モデルを自動的に再構築する（三次元モデルの構築）（ステップ６）。ユーザーがより多くの境界をトレースしたい（より多くのトレースが必要か？）ならば、追跡ステップは繰り返される（ステップ７）。
【００２２】
一旦、すべての境界がトレースできたら、視認可能な各面のテクスチャを映像から取得する（ステップ８）。
それから、モデルをリファインするため、あるいは以前は見えていなかったオブジェクトの部品の外観を得るため、任意的にユーザーは異なる視野からのオブジェクトのより多くの映像を取り込む（ステップ９）。追加の各映像のため、ユーザーは再びキャリブレーションを行う必要がある（ステップ１０）。
【００２３】
また、オプション的にラジアルディストーションを修正し（オプションとしてのラジアルディストーション修正）（ステップ１１）、画像情報に基づいて自動的にトレースポジションを調整し（オプションとしての自動ポイント調整）（ステップ１２）してもよい。
そして、既存のモデルは現在の視野（追加のモデル修正）（ステップ１３）から修正され、現在の映像で視認できる各面のテクスチャを取得する（ステップ１４）。なお、追加のモデル修正では、先の映像で視認できる境界に加えて、新たな視野に対応する映像から新たな境界を加えることも可能である。このようにして新たな境界が生じてくるときには、ステップ６の三次元モデルの構築を実行しても良い。
【００２４】
以下、各々のステップの詳細を説明する。
まず、（表１）に、本明細書にて使用されるパラメータのリストを示す。
【表１】
0005413188.tif 000002
【００２５】
ステップ１にて、映像を取り込んだ後、ステップ２で、カメラキャリブレーションが行われる。ここで、ステップ１は画像読込手段に相当し、ステップ２は基準位置指定手段に相当する。
これは映像の中で二つのセットからなる平行な線分（実空間においては、各セットの線分はもう一方のセットの線分に対して垂直）を特定することによって行われる。これは映像に反映される空間での原点と同様である。すなわち、各々の線分が２つの終点から成るので、４本の線と原点の位置を定めることであり、合計9ポイントに対して二次元位置座標を提供することになる。このように、二対の互いに平行な線分であって各対は互いに直交する線分の指定と、原点とで、三次元の基準となる位置を指定している。
【００２６】
これらの値に基づき、縮尺に依存しつつ、プロセッシングソフトウェアは実空間から像空間に対する射影行列を計算する。
図３は、映像上に三次元の基準となる位置を指定するプロセスを示す図である。
波線Rと波線Gの四角いタグは２セットの線分（合計４本の線分）の終点を表す。そして、実線の丸いタグは像空間に反映されるときの原点の位置を表す。それからプロセッシングソフトウェアは像空間（それぞれ実線G、実線B、実線Rで示す）に反映されるときのX、Y、Z軸を自動的に計算する。
【００２７】
本実施例における、ステップ２のキャリブレーションの数学的フレームワークは以下のようになっている。なお、以下において三次元の実空間と二次元の像空間との間の変換関係を求めており、これは変換関係取得手段に相当する。
ピンホールカメラモデルにおいては、三次元空間の点は式（１）に示す3x4要素のカメラ射影行列Pを介して映像である二次元の点に（共に同次座標表現で）マップ（取得され貼り付け）される。ここで、Pは自由度が11度からなる射影行列であり、式（２）に示す内部カメラ行列（Kの部分）と外部カメラ行列（[R T]の部分）とに分解されることができる。
【００２８】
RとTは、それぞれ3x3要素の回転行列と3x1要素の並進ベクトルである。Kは式（３）で示すように3x3要素のカメラ固有行列である。そして、αu、αvは焦点距離とピクセルの正方性に関連し、sはスキューパラメータである、そして、x0 =（u0、v0）は映像の原則点である。
ここでは、映像のピクセルは四角いと仮定している。つまり、αu =αv =αが成立する。さらに、映像の中にはゆがみがないためs = 0とし、原則点x0は映像の中央に位置する。
【００２９】
【数１】
0005413188.tif 000003
【数２】
0005413188.tif 000004
【数３】
0005413188.tif 000005
このフレームワークでは、ユーザーが映像中に原点と２つのセットの二対の線分を供給することで、カメラパラメータ（K、R、T）は縮尺に依存して解くことができる。ここで、各々のセットの２本の線分は互いに平行であり、２つのセットの線分は相互に垂直である。各々の線分は２点で表されるので、合計9ポイントがユーザーによって供給される必要がある。２セットの平行線から、各々のセットの消点を計算することができる。
【００３０】
各々のセットの消点は、それぞれのセットの２本の線分の交差点である。これらの２つの消点をx1 =（u1、v1）とx2 =（u2、v2）と定義する。これらの２ポイントと映像主点x0 =（u0、v0）とから、第3の消点x3 =（u3、v3）が決定される。なぜなら、映像主点x0は、x1、x2とx3によってつくられる三角形の垂心に位置するからである。
まず、映像主点は、x1、x2とx3によってつくられる三角形の垂心であることが証明されている。３つの直角方向の各々における無限遠の点を考慮すると、式（１）に示す式は式（４）に示すものとなる。そこから、回転行列は式（５）に示すように推論されることができる。
【００３１】
【数４】
0005413188.tif 000006
【数５】
0005413188.tif 000007
回転行列の列要素は相互に直角であり、λi≠0（i = 1,2,3）なので、式（６）に示す式のとおりとなり、また、これらの式でαを消去すると式（７）に示す式となる。
【数６】
0005413188.tif 000008
【数７】
0005413188.tif 000009
この式のセットから、映像主点x0は、x1、x2とx3によってつくられる三角形の垂心であるということが証明される。第３の消点x3の位置を見つけるため、式（７）の中の最初の２つの式が使われる。
いくつかの単純な代数操作で、式（８）に示される式は演繹され、それから（u3、v3）の値が決められる。
【００３２】
【数８】
0005413188.tif 000010
固有行列に残された最後のパラメータは焦点距離である。式（６）に示す３つの式のいずれかを使い、焦点距離を解くことができる。
たとえば最初の式を用いて、式（９）で示すように焦点距離を解くことができる。
【数９】
0005413188.tif 000011
つぎに、外部カメラ行列を解くことができる。回転行列の直行性と正規性を適用して、式（５）に示す制約は式（１０）に示すように表すことができる。そして、それは式（１１）に示すように解くことができる。以上で、回転行列は解かれる。
【００３３】
【数１０】
0005413188.tif 000012
【数１１】
0005413188.tif 000013
外部カメラ行列の並進ベクトルを発見するために、映像における原点が使用される。
原点の射影は、式（１２）で示すように表すことができる。
【数１２】
0005413188.tif 000014
ここにおいて、これはλ0における自由度の一つである。このパラメータは原点から離れたカメラの並進に直接関連するものであるから、それは映像におけるピクセル対メーターの縮尺としての働きをする。事実、λ0の値が大きなものであるほど、カメラはより原点から離れ、その場面におけるオブジェクトはその映像上により小さく射影されることになる。この縮尺要素は、ある一つの線分（２つの終点を指定する）を映像に引き、実空間におけるその線分の実際の長さを特定することによって得ることができる。この縮尺値により、射影行列は１つのみとなる。
【００３４】
ステップ３のラジアルディストーション修正については後述する。
次のステップ４では、オブジェクトの天面の外側あるいは内部の境界線に沿ってユーザーがトレースすることである。このトレースは、トレース手段に相当する。一つのトレースは、天面の境界線を定めるという一つの閉ループと定義される。すなわち、表示画像上で、ユーザーが行う操作入力を受け付け、対象物の表面の境界の形状を、各セグメントごとに各セグメントの形状に対応した数の離散的な点位置で指定することになる。
【００３５】
このモデルにおいては、一つのトレースは同一形状で異なるxz平面に存在する天面と底面との高さを有する所定の立体となる。そして、ユーザーは、各々のトレースに対して天面と底面の間の高さ値を指定することができる。むろん、このようにしてユーザーによる高さの値を入力する操作を受け付けることで、高さ値取得手段を構成する。この高さ値の入力もステップ４にて行っている。
オブジェクトの再構築された三次元モデルは、複数のトレースから構成されることができ、さらには、それらのトレースは異なる天面と底面の高さ値から成ることができる。
【００３６】
一つのトレースは後に一つ以上のセグメントから成り、そして、各々のセグメントはユーザーによって提供される２つ以上の点から成り立つ。
ここで、ユーザーによって提供されることが可能な２種類の点があり、それらは、セグメント構成点、またはセグメント分割点である。なお、本明細書においては特に断りの無い限り、セグメントとセグメントとの境界に位置する点をセグメント分割点と称し、それ以外の各セグメントを構成する点をセグメント構成点と称する。
各々のセグメントは、１つか２つのセグメント分割点（トレースの最初の点は、自動的にセグメント分割点とされる）を含んでいる。１つのセグメント分割点しか含んでいなセグメントとしては、少なくとも１つのセグメント構成点がなければならない。２つのセグメント分割点を含んでいるセグメントとしては、それは0かそれ以上セグメント構成点を含んでいてもよい。言い換えると、各々のセグメントは少なくとも２点を含んでいる。
【００３７】
セグメントの点の数に応じて、（表２）に示すように、そのセグメントのカーブ（オブジェクトの上面に沿う）は、自動的に異なる方法で区分毎に補間される。
２点を含んでいるセグメントに対しては、そのセグメントは直線によって表現される。３点を含んでいるセグメントに対しては、その３点を通過する円がフィットされる。そして、その円に沿うさらなる点は２つのセグメント分割点の間に自動的に補間される。同様に、４点を含んでいるセグメントに対しては、軸平行楕円がフィットされる。５点を含んでいるセグメントに対しては、一般楕円がフィットされる。セグメントの点の数が５点を超えるケースでは、このフィッティングシステムは過剰決定体系となる。つまり条件が未知数よりも多い。この場合、線形最小二乗法が一般楕円をフィットさせるのに使用される。
【００３８】
【表２】
0005413188.tif 000015
特に、同一直線上にない３つの点があれば、（表３）に示すように使われているパラメータを使い、図４で示すようにユニークな一つの円が決定されることができる。その３点から、点P1と点P2、点P2と点P3とを結ぶことによって２本の線（laとlb）が引かれることができる。続いて、laとlbに直角で、それぞれの中間を通過する線（la'とlb'）ができる。la'とlb'の方程式を、式（１３）に示している。
【００３９】
円の中心は、la'とlb'との交点であり、式（１４）に示されるαとβの方程式を解くことになり、式（１３）に示す方程式へとその値を置き換えることになる。
円の半径は、中心からP1、P2またはP3の３点のいずれかまでの距離である。
【表３】
0005413188.tif 000016
【数１３】
0005413188.tif 000017
【数１４】
0005413188.tif 000018
４つの点は式（１４）に示される形の軸平行楕円の方程式を一義的に定める。その楕円は中心（x0、y0）とし、それぞれxとy軸に沿った半径aとｂとなっている。
【００４０】
楕円のパラメータを解くには、４つの方程式（Fの値は、恣意的に-1とする）の４つの未知数により、式（１６）に示される分析フォームを解くことになる。幾何学的な解析により、楕円の特性は、式（１７）で示すように得られることができる。
【数１５】
0005413188.tif 000019
【数１６】
0005413188.tif 000020
【数１７】
0005413188.tif 000021
５点あるいはそれ以上の点については、式（１８）で示すように分析的フォームによって記述される一般楕円が適合する。ちょうど５点の場合は、楕円の方程式が一義的に決定される。５点以上の場合は、このシステムは過剰決定体系となり、少なくとも最小二乗法で近似的に楕円を決めることができる。
【００４１】
幾何学的な解析によれば、楕円の中心（x0、y0）は、式（１９）で示すように計算される。
この場合、長軸と短軸の長さと楕円の傾きは計算されない。中心（x0、y0）からの特定の角度での楕円上の点の位置を得るため、方程式の分析的フォームが使用される。一般楕円、軸平行楕円と円のケースにとって、少なくとも３点が一つの直線上にあるようなときには、一義的な解が存在しないかもしれない。その場合、一般楕円、軸平行楕円、円、直線の順番により、このようなカーブの算定が成功するまで次の形へと続けられる（始点から終点までの直線としての当てはめは、常に成功するはずである）。
【００４２】
【数１８】
0005413188.tif 000022
【数１９】
0005413188.tif 000023
カーブを直線として表すのであれば、補間法は必要とされない。そのセグメントは、単に２つのセグメント分割点によって表現される。円、軸平行楕円、一般楕円の場合では、補間法は必要とされる。
図５で示すように、補間点の数nはまず式（２０）に示される方程式によって計算される。そこでは、始点角度θsと終点角度θeは適切な角度（2πを加えるか、引くことによって）となっている。それから、n個の点が、始点角度θsと終点角度θeとの間で等間隔となるようにして補間される。２つの終点がデフォルトで存在するので、そのセグメントは結局、（n＋2）点を持っていることになる。
【００４３】
【数２０】
0005413188.tif 000024
図６と図７は、このフィッティングプロセスが実行される例を示している。なお、このフィッティングプロセスは、各セグメントごとに指定された離散的な点位置とその数に基づいて、当該区分全体の三次元での位置情報を算出して上記境界を特定する処理に相当し、境界特定手段を構成する。図６において、セグメント構成点、またはセグメント分割点は、それぞれ一点鎖線の十字と二点鎖線の十字で示されている。
セグメント１、３と５は、各々５点から成る。その結果、一般楕円が適合され、中間点は自動的に補間される。これらの補間された点は、天面から底面まで引かれている垂直の破線で示されている。
【００４４】
他方、セグメント２は、４点だけを含むので、軸平行楕円が適合され、いくつかの点が補間される。
最後に、セグメント４は３点から成るので、これらの点を通る円が適合される。
このように、各セグメントの形状と離散的な点位置の数との対応として、直線は２点、円は３点、軸平行楕円は４点、一般楕円は５点以上としている。
トレースは、２つのタイプのうちの１つであり、それらは、ポジティブかネガティブである。ポジティブトレースは三次元モデルにボリューム加えるものであり、これに対してネガティブトレースは三次元モデルからボリュームを引くものである（たとえば、空洞を形成するときのように）。すなわち、対象物の表面の境界の指定は、中実形状の境界の指定と、中空形状の境界の指定とを含んでいる。そして、ステップ６で、中実形状の算出処理と、中空形状の算出処理とを実行し、両者の合体結果で三次元モデルを再構築する。ステップ６は、三次元モデル再構築手段に相当する。なお、ステップ１３の追加のモデル修正によって三次元モデルを再構築する必要が生じたときに行う場合も三次元モデル再構築手段に相当する。
【００４５】
ユーザーの操作としては、ポジティブトレースは反時計回りの方法で点を捜し出すことによって達成され、そして、ネガティブトレースは時計回りの方法で点を捜し出すことによって達成される。
図８と図９は、ネガティブトレースが使われる例を示している。
図８において、一点鎖線のトレースは、ポジティブトレースであり、それはオブジェクトの外側の境界線に沿ってたどっている。他方、二点鎖線のトレースは、ネガティブトレースであり、それはオブジェクトの内部の境界線に沿ってトレースされている。２、３、４または５点を含んでいるセグメントは、２つのトレースのどちらででも見つけられることができる。
【００４６】
図１０と図１１は、ネガティブトレースが使用されるもう一つの例を示す。
図１０において、ここでは、４つのトレースがある。外側の上のポジティブトレースと内部の上の３つのネガティブトレースである。
ネガティブトレースのうちの２つは１つのセグメント分割点を持っているだけである、しかし、それは２つの他のセグメント構成点を持っている。合計３点があるので、円がフィットされる。
現実の世界では多種多様なオブジェクトが左右対称であるので、ユーザーによって指定された時点で、ユーザーによって指定された点は特定の軸に沿って裏返すことにより自動的に発生することができる。このように、再構築された三次元モデルは、ユーザーによってマニュアルで点の位置を修正させることなく、その左右対称性を維持することが保証される。
【００４７】
このように、ユーザーによる操作入力を受け付けると、指定された点位置を特定の軸に沿って裏返すことにより、左右対称性を維持した点位置を自動的に発生している。
上に示す３つの例では、オブジェクト全体が対称形であるか、少なくともオブジェクトの一部は対称形である。この特徴は、ユーザーが慎重に対称な位置に映像の点を置いていなければならないという単調で退屈な作業をシンプル化させる。
次に、このプロセスソフトウェアプログラムは、トレースを加えたり、取り除くだけでなく、ユーザーが点を加えたり、修正したり、取り除くことができる。ユーザーは後の時点で天面と底面の高さ値を変えることもできる、そして、すべての点の位置が再評価される。
【００４８】
ステップ７で繰り返しの判断を行い、すべてのトレースが加えられたあと、ステップ６でオブジェクトの三次元モデルの再構築をして完了する。すなわち、高さの値と、算出された各セグメントの境界の位置情報と、上記変換関係とに基づいて対象物の立体モデルを算出する。
次のステップ８は、モデルのテクスチャを取得することである。映像の中の視認できる面のため、各面のテクスチャが映像からマップされる。この過程が、三次元モデルを算出する際の各面の位置情報に基づいて、二次元画像からテクスチャを取得し、上記三次元モデルの各面に貼り付けるテクスチャ貼り付け手段に相当する。なお、ステップ１１（ラジアルディストーション修正）、ステップ１２（自動ポイント調整）、ステップ１３（追加のモデル修正）を実行することにより、境界の位置情報が修正されることになる。従って、修正された境界情報に対応したテクスチャを取得して所定の面に貼り付ける必要がある。この意味で、境界の位置情報が修正されたときに、再度、テクスチャを取得して貼り付けるステップ１４もテクスチャ貼り付け手段に相当する。
【００４９】
もし、ステップ９にて利用できる映像がさらにあるならば（異なる視野からの同じオブジェクトにおいて）、その映像の９つの点（それぞれ互いに直交する二組の二本の線の両端と、原点）の位置を与えるキャリブレーションステップが、その新しい映像のために繰り返される（ステップ１０）。また、ステップ１１（およびステップ３）とステップ１２（および、ステップ５）においてラジアルディストーション修正と自動ポイント調整とを行なうが、これらについては後述する。
【００５０】
そのモデルはすでに再構築されているので、ステップ１４にてテクスチャを取得して貼り付けると、自動的にその映像上に正しく投影されるはずである。
この場合、ユーザーは既存のモデルを修正するかもしれないし、以前は邪魔されていたモデルの一部についてのトレースを加えるかもしれないし、あるいは、このフレームで見える面のテクスチャを取得することができる。十分な視野があれば、そのモデル全体の各面のテクスチャを取得させることができる。
【００５１】
図７、図９と、図１１は、その映像で見える（視野）面にテクスチャをマッピングした三次元再構築の結果を示している。
このように、同一対象物に対する複数の異なる視野からの二次元画像を読み込み、各画像ごとに上記操作入力を受け付け、上記三次元モデルの対応する各面に貼り付けている。  ユーザーに表面の境界線をトレースさせる以外に、オブジェクトは予め定義された形（一般的な箱、一般的な錐形、および回転楕円体を含む）の組み合わせを使ってモデル化することもできる。すなわち、オブジェクトを、予め定義された形、一般的な箱、一般的な錐形、および回転楕円体との組み合わせを使ってモデル化する。
【００５２】
（表４）は、これらの形の各々の修正可能なプロパティを示す。
トレースによる柔軟性と同様に、これらの形のすべてが多種多様なオブジェクトをモデル化可能とする。
【表４】
0005413188.tif 000025
【００５３】
ところで、多くの状況では、レンズのいろいろな影響のために、歪曲が映像中に導入される。そして、最も目立つ影響のうちの１つは放射歪曲（ラジアルディストーション）であり、実空間（映像主点を通過するものでないもの）での直線を映像中ではカーブするように表示させる。オブジェクトの三次元モデルを再構築する上述した方法は直線または他の原始関数（再構築段階と同様にキャリブレーション段階において）に基づいているため、ラジアルディストーションによって導入される副作用を減らすことにより、結果は改善される。
【００５４】
以下、ステップ３やステップ１１で行っているように、この二次元画像の位置情報に含まれる放射歪曲を除去して位置情報を変換する方法である放射歪曲除去手段について説明する。
ラジアルディストーションの影響を、図１２に示す。
以下の説明において使われるパラメータを、（表５）に示す。
【表５】
0005413188.tif 000026
【００５５】
なお、ラジアルディストーションは、非特許文献１のような技術に基づいて算定することができる。
【００５６】
ここでは、歪曲の中心とラジアルディストーションの一項を算定する。特に、まず、歪曲の中心が映像の中央に位置するものと仮定する。それから、ラジアルディストーションは式（２１）で示すように分割モデルを使用して記述できる。
【数２１】
0005413188.tif 000027
歪められていない映像ポジション(x-u, yu)がゆがめられた映像ポジション(xd, yd)に対応する場合、rd{=(xd**2+yd**2)**(1/2)}はゆがめられた点の原点までの距離であり、λはラジアルディストーションパラメータである。
【００５７】
歪曲されていない画像の中での直線は、式（２２）のように表されることができる。
【数２２】
0005413188.tif 000028
ここで、kは傾きで、bがy切片である。あるいは、水平よりも垂直に近い線にとっては、yに関してxを表している方程式が得られる。式（２２）に示される式は式（２３）として書き直すことができる、そして、いくつかの代数操作で、式（２４）に示す式が得られる。この式は、このモデルのもとで、ゆがめられた直線が円になることを示している。
【００５８】
【数２３】
0005413188.tif 000029
【数２４】
0005413188.tif 000030
歪曲の中心が中央にないならば、歪曲(x0, y0)のセンターはそれぞれxdとydをxd - x0とyd - y0と入れ替えることによって式（２４）に示される式に取り込むことができる。いくつかの代数操作で、式（２５）に示される式が得られる。あるいは、式（２６）に示される式を記述できる。
【数２５】
0005413188.tif 000031
【数２６】
0005413188.tif 000032
３本の線を使って、(Ai, Bi, Ci), i=1,2,3の値は式（２５）から計算されることができ、それから、歪曲(x0, y0)の中心は式（２７）で示すように計算することができる。最後に、ラジアルディストーションの値は、式（２８）で示すように解ける。あるいは、４本の線を用いた最小二乗法を使用できる。
【００５９】
【数２７】
0005413188.tif 000033
【数２８】
0005413188.tif 000034
以上のようにして、二次元画像の位置情報に含まれる放射歪曲を除去して位置情報を変換することができるようになる。
次の問題は、円をエッジピクセルに対して安定してフィットさせることである。円の方程式が式（２９）で示すように解析的な形に書かれると仮定する。
【数２９】
0005413188.tif 000035
エッジ点(xi, yi)から円までの距離は、式（３０）で示すように表すことができる。
【数３０】
0005413188.tif 000036
さらに、式（３１）で示すように角座標を使ってa2とa3を書くことにより、式（３２）で示す目的の機能は、標準的なLevenberg-Marquardtアルゴリズムを使用することで、三次元空間(a1, a4, θ)で解くことができる。
【００６０】
【数３１】
0005413188.tif 000037
【数３２】
0005413188.tif 000038
最後に、エッジピクセルを見つける処理を行う必要がある。すなわち、二次元画像からエッジ画素を検出し、同エッジ画素の位置情報から上記境界の位置情報を修正するものであり、ステップ５やステップ１２で行なっているポイント調整手段に相当する。
４本の線の各々ごとに、各線を囲んでいるピクセルからなる長方形の一片の中で、キャニーエッジディテクション(canny edge detection)を最初に実行する。エッジピクセルの強さと法線方向も記録される、そして、法線の向きからの角度差異が設定された閾値を超えるエッジピクセルは排除される。
【００６１】
残りのエッジピクセルは、現在の線に帰属するものとみなす。エッジとして十分なピクセル（閾値を上回っているもの）が４本の線のうちの少なくとも３本において見つかるなら、ラジアルディストーション修正プロセスを進めることができる。
たとえば、図１３で示すように、ラジアルディストーションのためにカーブされることになった一点鎖線を含む映像を仮定する。キャリブレーション段階のときにユーザーが二点鎖線を入力したと仮定する。破線の箱は、領域（その中でエッジピクセルがラジアルディストーションパラメータの算定のために使われる）を示す。
【００６２】
エッジ検出を実行すると、即座に、入力された線に関して45度を超える標準偏差を持つすべてのエッジピクセルは、分離物として捨てられる。
残りのエッジピクセルの方向は、１つか２つの互いに反対の一般的な方向（互いの近くに現れている二重のエッジの場合）を示すかもしれない。エッジピクセルのこれらの２つのグループのうち、より多数の数のグループだけが保持される。すなわち、図１４に示されるように、正しい方向のエッジピクセルだけが残る。
【００６３】
ラジアルディストーションがない場合と、ユーザー入力エラーがない場合、すべてのエッジピクセルは正確に直線上に乗ることになる。ラジアルディストーションがあることで、すべてのエッジピクセルが直線上に乗ることにはならない。しかし、映像がラジアルディストーションパラメータの正しい値で正しく歪められていない（歪曲の他のいかなる形も取らない）ならば、エッジピクセルは直線に乗ることになる。
この点で、歪曲の中心（x0、y0）とラジアルディストーションパラメータλは算定される。そして、ラジアルディストーションを修正するために画像を反らすことができる。同時に、ユーザーによって入力された点（原点と、４本の線分の端点）の位置も同様に調節される、そのため、それらは映像上の歪められていない位置に一致する。ラジアルディストーションを修正することにより、画像情報（例えばエッジ）をより信頼性あるものとして利用することができる。
【００６４】
前景と背景が殆ど乱れていない映像については、エッジ情報を用いてトレース（および各セグメント）の正確さを改善することができる。たとえば、実空間の直線は、映像の中でも直線として現れる。
最初に、キャニーエッジディテクションが映像に適用される、その一方で、各々のエッジピクセルの法線方向を記録する。それから、各セグメントは、属しているエッジピクセルを収集する。
以下の２つの条件が満たされるならば、エッジピクセルはある一定の可能性（どのようにしてその可能性を計算するかは、後述する）を持ってそのセグメントに属している：
【００６５】
・エッジピクセルは、そのセグメントから一定の距離（しきい値）内に入る。
・エッジピクセルの標準の方向は、そのエッジピクセルに最も近いセグメントの点上で、セグメントのタンジェントに対して（あるしきい値を持って）垂直である。
エッジピクセルからセグメントまでの距離を計算するには、「セグメント内」という概念が最初に導入される。
【００６６】
もしそのセグメントが直線であるならば、セグメント内領域とは始点と終点の間の領域であると定義され、その線と直角をなす外側に広がる。さもなければ、セグメント内領域はカーブの始点と終点の間の領域であり、中心から外方に広がる。
図１５と図１６は、視覚的に、セグメント内領域と指示された一点鎖線で囲まれた領域として、示している。エッジピクセルjがセグメントiのセグメント内領域内にあるならば、エッジピクセルのセグメントdijまでの距離がそのセグメントまでの最も近い距離である。そのセグメントの既知の方程式に基づいて、この距離は計算される。
【００６７】
もしエッジピクセルがセグメント内領域の外にあるならば、セグメントdijまでの距離は２つのエンドポイントまでの距離の短い方である。
各々のセグメントは、それが収集するすべてのエッジピクセルに対して重みを割り当てる。セグメントiとエッジピクセルjに対して、式（３３）で示すように、重みwijが与えられる。ここで、σは標準偏差の値で、4に等しい。
【数３３】
0005413188.tif 000039
これから、エッジピクセルjがセグメントiに属しているという可能性は式（３４）で示すように計算される。
【００６８】
【数３４】
0005413188.tif 000040
今、各々のセグメントの方程式は、ある特定のピクセルがそのセグメントに属する可能性を計算したのと同様に、そのセグメントが集めたエッジピクセルの位置に基づいて再計算される。
セグメントが直線、円、軸平行楕円または一般楕円であるかどうかにかかわらず、セグメントの複雑さは変わらない。それから、その複雑さ（そのセグメントを定める変数の数）より多くのエッジピクセルがそのセグメントに属し得るということもある。これらの場合、最小二乗法によって求められる。
【００６９】
最小二乗法は、通常、式（３５）で示すように形式をとる。
n個の点が現在のセグメントにあるとする。それから、Wは、斜めに存在している現在のセグメントに属している各々のエッジピクセルの可能性を備えたnxnマトリックスである。Xは解かれるべき変数のリストである、そして、Sとbはそれらの変数に関連を有するエッジ-ピクセルに特有の値である。
【数３５】
0005413188.tif 000041
【００７０】
たとえば、式（３６）に示される分析的なフォームから、円はA=Cで、かつ、B = 0という制約を持つ。
この場合、SとXとbは、式（３７）で示すように書くことができる。
他の形状のためにも類似した式を書くことができる。
【数３６】
0005413188.tif 000042
【数３７】
0005413188.tif 000043
それから、更新された各セグメントの方程式に基づき、クリックされた点の位置を修正する。セグメント構成点については、新しい候補位置は、その点に最も近いセグメント上（新しい方程式に従って）の点である。オリジナル位置と新しい候補位置の間の距離が閾値以下にあるならば、その点の位置は候補位置に修正される。
【００７１】
セグメント分割点については、その新しい候補位置はセグメントの先頭及び末尾の点に依存する。２つのセグメントは、０か、１か、２点、４点で交差するかもしれない。その候補位置は、以下にケース１〜ケース３として示すように、各々のケースごとに違う方法で計算される。
【００７２】
ケース１：
２つのセグメントが交差していない場合
この場合は、各セグメント上で、その２つのセグメントの間の最も近い点の中間が候補位置になる
ケース２：
２つのセグメントが１点で交差する場合：
この場合は、その交差点が候補位置になる
ケース３：
２つのセグメントが２点で交差する場合：
その２つの交点を結ぶ線分上でクリックされた点の位置と最も近い点が、新しい候補位置になる
ケース４：
２つのセグメントが４点で交差する場合：
４点の交点のうち、クリックされた点に最も近い２点を選択する。選択した２点に基づきケース３の方法で計算し、新しい候補位置を決める。
【００７３】
また、候補位置と新しい位置の間の距離がしきい値を越えているならば、クリックされた点の位置は修正されない。
そうでなければ、クリックされた点の位置は候補位置の方へ移動される。このプロセスは、再構築されたモデルの正確さを改善するために、任意に繰り返されることができる（エッジピクセル可能性を計算して、方程式をセグメントに割り当て、クリックされた点位置を移動させる）。
以上のようにして二次元画像からエッジ画素を検出し、同エッジ画素の位置情報から上記境界の位置情報を修正する。すなわち、画像情報（エッジ）に基づいて各々のクリック点の位置を自動的に調節する。
【００７４】
ところで、多くのロボット工学、モデリングと娯楽アプリケーションにおいて、実空間のオブジェクトの三次元モデルを高速に再構築できることは、非常に有益である。
この結果を成し遂げる１つの方法は、ソフトウェアプログラムの助けを借りて、一つ以上の二次元画像から三次元オブジェクトをモデル化しようとすることである。従来技術においても完全に自動的な三次元オブジェクトの再構築手法は、まだまだ成熟しておらず、十分に信頼できるものではない。その結果、簡単で直観的な半自動式の技術は、前述のアプリケーションに対して非常に有益なものである。
【００７５】
本技術は、多種多様なオブジェクトの三次元モデルの再構築に対して迅速かつ容易に解決策を提供する。
ユーザーは、マウスのわずか数クリックで、かなり複雑なオブジェクトの再構築でも直観的にできる。ユーザーは、再構築プロセスの速度をさらに上げるために、オブジェクトの左右対称性を利用することもできる。
映像を利用するので、各面のテクスチャはすぐに利用できる。このように、再構築されたモデルにテクスチャを適用することには、さらなる労力を必要としない。
【００７６】
したがって、この技術は、三次元オブジェクトのモデル再構築の効率を大幅に改善することができる。
さらに、ラジアルディストーションは映像に不要な誤差を取り込んでしまう。ラジアルディストーションによって引き起こされる大きな人工的な不要物の１つは、実空間の直線が映像の中でカーブして現れるということである。
ユーザーによってすでに提供される情報（ユーザーからの新しい入力を必要としない）に基づいてラジアルディストーションを修正することにより、映像はすぐさま修正することができ、より正確に実空間を表す映像とすることができる。その結果、その映像に基づいてより精密なモデルを再構築することができる。
【００７７】
さらに、画像情報（エッジ）に基づいて各々のクリック点の位置を自動的に調節することにより、人為ミスはさらに減らすことができる。このステップはラジアルディストーション修正ステップと相並んで進行する。なぜなら、ラジアルディストーション修正効果が、この自動調整ステップの品質を改善するからである。その結果、より精密なモデルを再構築することができる。
本発明では、ユーザによって境界をトレースして得られた複数のポイントからなる形状とされた非傾斜の天面と底面とを有するオブジェクトの三次元モデルを生成する。
【００７８】
以下、本実施形態における特徴について要約して説明する。
本実施形態では、多くの人工物は、直線、円または楕円の各区分でモデル化可能なエッジによって構成されているというメリットを活かすことにより、一つ以上の映像から半自動的に三次元オブジェクトをモデル化するための方法を開示している。
また、映像の１つに基づいて、ソフトウェアが実空間から像空間への射影行列を計算するのを許可するアトリビュートをユーザーが定める。本キャリブレーションステップは、ユーザーに柔軟性を提供し、射影行列の正しさに対するユーザーの完全な支配を確実にさせる。
【００７９】
本実施形態では、独立してオブジェクト形の異なる区分をモデル化する方法を開示している。
全体的な形がトレースと区分を通してモジュール化され、カーブの特定の部分と独立して表すことができるように各々の区分が別々に補間されることで成し遂げられる。かなり複雑な形の対象もモデル化されることができる。
本実施形態では、キャリブレーション目的でユーザーによって与えられるデータに基づくラジアルディストーションの修正方法を開示している。
【００８０】
ラジアルディストーションは、再構築されるモデルの正確さを減少させることになる不要物（ゴミ）を映像中に作り出す。
本実施形態では、再構築された形からボリュームを増減する方法を開示している。
複数の部品はポジティブトレースで結合され、また、中空部品はネガティブトレースで結合されることにより、成し遂げられる。
本実施形態では、あらかじめ定義された原始関数に基づく単純な形で、オブジェクトまたはオブジェクトの部分を描写する方法を開示している。
【００８１】
一般的な形によるオブジェクトまたはオブジェクトの部分は、一般的な箱形と、一般的な錐形と、回転楕円体を使ってモデル化されることができる。
本実施形態では、再構築されたモデルに左右対称性を導入することによってモデリングを単純化する方法を開示している。
実空間の多種多様なオブジェクトに起きている左右対称性の特質を利用して、特定の軸に沿ったトレース点のいくつかをユーザーが裏返すことで、成し遂げられる。
本実施形態では、画像情報を使用したトレースポイントの正確さを向上する方法を開示している。
【００８２】
エッジのような画像情報を使用することで、トレースポイントの正確さを向上できる。特にラジアルディストーション修正において有用である。
本実施形態では、再構築されたモデルをリファインする方法を開示している。
ユーザーが、いつでも自由に、ポイントを追加、削除、修正し、トレースすることができることにより、成し遂げられる。天面と底面との高さ値は、いつでも自由に修正することができる。
本実施形態では、現実的な見かけでオブジェクトを再構築する方法を開示している。
【００８３】
テクスチャは、映像から再構築されたモデルにマップされることができる。
本実施形態では、再構築されたモデルをより多くの映像で洗練する方法を開示している。
先に、特定の視点からオブジェクトを見ることによって視界を遮られていた構成要素も、モデル化されることができる。特定の視点からオブジェクトを見ることにより、テクスチャがマップ化できなかったが、不十分にマップ化された表面も、マップ化でき、再マップ化もできる。
【００８４】
最後に、本発明を適用分野と、それぞれの場合のメリットについて説明する。
（１）ロボット工学において
ピックアンドプレースアプリケーションのためのオブジェクトのモデリング
ピックアンドプレースアプリケーションのロボット工学シミュレーションのためのオブジェクトの現実的なモデルの再構築
三次元化のためのオブジェクトのモデリング
ロボット工学シミュレーションアプリケーションでの三次元化のための実空間におけるオブジェクトの現実的なモデルの再構築
【００８５】
メリット：
ロボットシミュレーションを現実的にするため、ピックアンドプレースに使われるオブジェクトや、実空間のオブジェクトは、三次元化が実空間で目に見えるのと近いものとなるように、モデリングされなければならない。
ピックアンドプレースシミュレーションのため、ユーザーはロボットがどのようにオブジェクトと相互作用するか、あるいは、オブジェクトのどれほどの特性がその相互作用に影響を及ぼすか試験したいと思うかもしれない。その結果、オブジェクトの精密なモデルが必要となる。
【００８６】
本技術は、広範囲にわたるオブジェクトを簡単かつ正確にモデル化させることができる。
（２）コンピュータービジョンにおいて
オブジェクトおよびポーズ認知ルーチンのトレーニングのためのオブジェクトのモデリング対象となるオブジェクトの再構築されたモデルがあれば、異なる視点、異なる照明下、異なる量の障害物の状況をシミュレーションすることができる。これらの映像から、そのオブジェクトの特別な特徴を学習するため、マシンラーニングアルゴリズムを適用させることができる。例えば、新しい映像のために新しい映像オブジェクトのタスクやポーズ認知が実行されることができる。
【００８７】
メリット：
オブジェクトの様子は、異なる視点、異なる照明、異なる量の障害物の状況の下で大幅に変化する。このため、オブジェクトの映像セットを作り出し、認知アプリケーションを適用することは通常非常に退屈で時間がかかる。
しかし、本方法により、一旦オブジェクトのモデルが再構築されるならば、ユーザーが望むどんな方法ででもその見かけをシミュレートすることができ、指定されたどのような状況下でも映像を作り出すことができる。これは、マシンラーニングによるデータ収集の作業を非常に簡単化する。
【００８８】
（３）ゲーム、エンターテイメント、仮想現実において
ゲーム、エンターテイメント（例えば映画）または仮想現実環境の中でのディスプレイのためのオブジェクトのモデリング
再構築されたオブジェクトはゲームや映画や仮想現実プログラムのような仮想環境の中に置かれることができる。例えば、そのオブジェクトがそのシーンで現実的に三次元化されるように。
ゲームや仮想現実アプリケーションにおいては、ユーザーは各シーンでそのオブジェクトのモデルとかかわり合うことが可能となる。
【００８９】
メリット：
仮想アプリケーションでオブジェクトをより現実的に表すためにはそのオブジェクトの良いモデルが必要となり、それを構築するには非常に時間がかかる。
しかし、この方法により、良いモデル（幾何学的にも表面的にも）が迅速かつ容易に作成することができる。それにより、ユーザーによる努力を殆ど要することなく仮想環境において使えるようになる。
なお、自動的にトレースの精度を向上させるために、プログラムは映像の手掛かりとなるエッジや角などの情報を扱えるようになっているべきである。
なお、本実施形態では、三次元オブジェクト再構築ステップを、処理装置（例えばコンピューター）にあるプロセッシングソフトウェアプログラムによって実行している。この意味で、本発明は、実体のある三次元画像処理装置としても実現されているし、同プログラムを記憶する媒体も実現可能であり、同様に、三次元画像処理プログラムを記録した媒体としても実現されている。さらに、コンピューターにて実行される過程としての三次元画像処理としても実現されている。また、個々において明示的に説明していないが、コンピューターにて実施される各処理は、コンピューターに対して同処理を行う機能を実現させている。
【符号の説明】
【００９０】
１…プロセッシングソフトウェア、２…トレースアンドポイントマネージャ、３…三次元モデルジェネレータ、４…テクスチャマネージャ。
【図１】
0005413188.tif 000044
【図２】
0005413188.tif 000045
【図３】
0005413188.tif 000046
【図４】
0005413188.tif 000047
【図５】
0005413188.tif 000048
【図６】
0005413188.tif 000049
【図７】
0005413188.tif 000050
【図８】
0005413188.tif 000051
【図９】
0005413188.tif 000052
【図１０】
0005413188.tif 000053
【図１１】
0005413188.tif 000054
【図１２】
0005413188.tif 000055
【図１３】
0005413188.tif 000056
【図１４】
0005413188.tif 000057
【図１５】
0005413188.tif 000058
【図１６】
0005413188.tif 000059