(57)【要約】【課題】異なる視点から撮像された２つの原画像を用いて、歪みのない中間画像を生成できるとともに、計算コストも抑制する。【解決手段】同一のオブジェクトを相異なる２つの視点から撮像した第１及び第２の原画像のうち少なくとも一方の原画像内の直線エッジを検出する直線エッジ検出部と、第１及び第２の原画像に対して、平行化処理を伴わない第１のモーフィング処理を行うことにより、２つの視点の間の仮想視点から見える第１の中間画像を生成する第１のモーフィング処理部と、検出された直線エッジに対応する、第１の中間画像内の前記オブジェクトのエッジに歪みがあるか否かを判定する歪み判定部と、エッジに歪みがある場合には、第１及び第２の原画像に対して、平行化処理を伴う第２のモーフィング処理を行うことにより、仮想視点から見える第２の中間画像を生成する第２のモーフィング処理部と、を備える、画像処理装置が提供される。【選択図】図１
2010282295.tif 000002
【特許請求の範囲】
【請求項１】
同一のオブジェクトを相異なる２つの視点から撮像した第１及び第２の原画像のうち、少なくとも一方の原画像内の前記オブジェクトの直線エッジを検出する直線エッジ検出部と、
前記第１及び第２の原画像に対して、前記第１及び第２の原画像の平行化処理を伴わない第１のモーフィング処理を行うことにより、前記２つの視点の間の仮想視点から見える第１の中間画像を生成する第１のモーフィング処理部と、
前記直線エッジ検出部により検出された前記直線エッジに対応する、前記第１の中間画像内の前記オブジェクトのエッジに歪みがあるか否かを判定する歪み判定部と、
前記エッジに歪みがある場合には、前記第１及び第２の原画像に対して、前記第１及び第２の原画像の平行化処理を伴う第２のモーフィング処理を行うことにより、前記仮想視点から見える第２の中間画像を生成する第２のモーフィング処理部と、
を備える、画像処理装置。
【請求項２】
前記直線エッジ検出部は、前記少なくとも一方の原画像を２値化し、当該２値化した画像に対して膨張及び収縮処理を行い、当該膨張及び収縮処理後の画像からハフ変換により前記直線エッジを検出する、請求項１に記載の画像処理装置。
【請求項３】
前記歪み判定部は、前記第１の中間画像における前記エッジと当該エッジの両端を結ぶ線分とによって囲まれる画像領域の面積が、所定の判断基準定数により定まる閾値以上である場合には、前記エッジに歪みがあると判定する、請求項１に記載の画像処理装置。
【請求項４】
前記第２のモーフィング処理はビューモーフィング処理である、請求項１に記載の画像処理装置。
【請求項５】
同一のオブジェクトを相異なる２つの視点から撮像した第１及び第２の原画像のうち、少なくとも一方の原画像内の前記オブジェクトの直線エッジを検出するステップと、
前記第１及び第２の原画像に対して、前記第１及び第２の原画像の平行化処理を伴わない第１のモーフィング処理を行うことにより、前記２つの視点の間の仮想視点から見える第１の中間画像を生成するステップと、
前記直線エッジを検出するステップにより検出された前記直線エッジに対応する、前記第１の中間画像内の前記オブジェクトのエッジに歪みがあるか否かを判定するステップと、
前記エッジに歪みがある場合には、前記第１及び第２の原画像に対して、前記第１及び第２の原画像の平行化処理を伴う第２のモーフィング処理を行うことにより、前記仮想視点から見える第２の中間画像を生成するステップと、
を含む、画像処理方法。
【請求項６】
同一のオブジェクトを相異なる２つの視点から撮像した第１及び第２の原画像のうち、少なくとも一方の原画像内の前記オブジェクトの直線エッジを検出するステップと、
前記第１及び第２の原画像に対して、前記第１及び第２の原画像の平行化処理を伴わない第１のモーフィング処理を行うことにより、前記２つの視点の間の仮想視点から見える第１の中間画像を生成するステップと、
前記直線エッジを検出するステップにより検出された前記直線エッジに対応する、前記第１の中間画像内の前記オブジェクトのエッジに歪みがあるか否かを判定するステップと、
前記エッジに歪みがある場合には、前記第１及び第２の原画像に対して、前記第１及び第２の原画像の平行化処理を伴う第２のモーフィング処理を行うことにより、前記仮想視点から見える第２の中間画像を生成するステップと、
をコンピュータに実行させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像処理装置、画像処理方法及びプログラムに関する。
【背景技術】
【０００２】
近年、複数枚の画像を統合したり合成したりすることによって、空間や建造物などを３次元的に表現するサービスが普及し始めている。これらのサービスにより、ユーザは、構築された３次元化モデルを様々な視点から見ることができ、実際にその場にいるような一種の没入感を得ることができる。しかし、複数の画像を用いた３次元モデリングは計算コストが大きく、また、３次元画像自体やその生成に必要な画像のデータ量が多くなってしまうといった問題がある。
【０００３】
これに対し、モーフィング（ｍｏｒｐｈｉｎｇ）は、一方の姿形から他方の姿形へと徐々に変化をしていく様子を見せる画像処理技術である。このモーフィングは、異なる２つの視点から撮像された２枚の２次元画像（原画像）における対応画素を線形補間することによって、その中間の任意の仮想視点から見える中間画像（仮想画像）を生成できる。従って、モーフィングは、あたかも視点が移動しているような映像効果をもたらすことができる。かかるモーフィングによれば、撮像された２枚の実写画像を用いて、視点移動したときの複数の中間画像を順次計算により生成できるので、上記３次元モデリングと比べて、生成前後の画像のデータ量を大幅に削減できるといったメリットがある。
【０００４】
ところが、あるオブジェクト（被写体）を異なる２つの視点から撮像して得られた２枚の原画像を用いてモーフィングを行う場合、２つの視点とオブジェクトとがなす角度が大きすぎると、モーフィングにより生成された中間画像が歪んでしまうという問題が生じる。この問題に対して、例えば特許文献１記載のように、カメラ幾何を考慮したモーフィング手法であるビューモーフィング（例えば、非特許文献１参照）を用いることにより、歪みのない、より自然なモーフィング画像を生成することができる。ここで、カメラ幾何とは、２つの視点間のカメラの相対的な位置関係を意味する。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特許第３６３４６７７号公報
【非特許文献】
【０００６】
【非特許文献１】Ｓｔｅｖｅｎ  Ｍ．Ｓｅｉｔｚ，Ｃｈａｒｌｅｓ  Ｒ．Ｄｙｅｒ，”Ｖｉｅｗ  Ｍｏｒｐｈｉｎｇ”，Ｐｒｏｃｅｅｄｉｎｇｓ  ｏｆ  ＳＩＧＧＲＡＰＨ  ’９６，ｐｐ．２１−３１，１９９６．
【発明の概要】
【発明が解決しようとする課題】
【０００７】
しかし、上述したビューモーフィングでは、通常のモーフィングとは異なり、カメラ幾何を考慮するための行列演算や特異値分解などといった計算コストの大きな処理が含まれている。従って、ビューモーフィングは、通常モーフィングよりも計算コストが大きくなってしまうので、より計算コストを低減できるモーフィング手法が希求されていた。特に、処理能力が低いプロセッサが搭載された電子機器（例えば、デジタルカメラなどの携帯機器）にモーフィング技術を実装する場合には、ビューモーフィングのような計算コストの大きい処理を行う回数を、極力抑制することが要求されていた。
【０００８】
そこで、本発明は、上記事情に鑑みてなされたものであり、本発明の目的とするところは、異なる視点から撮像された２つの原画像を用いて、歪みのない中間画像を生成できるとともに、計算コストも抑制することが可能な、新規かつ改良された画像処理装置、画像処理方法及びプログラムを提供することにある。
【課題を解決するための手段】
【０００９】
上記課題を解決するために、本発明のある観点によれば、同一のオブジェクトを相異なる２つの視点から撮像した第１及び第２の原画像のうち、少なくとも一方の原画像内の前記オブジェクトの直線エッジを検出する直線エッジ検出部と、前記第１及び第２の原画像に対して、前記第１及び第２の原画像の平行化処理を伴わない第１のモーフィング処理を行うことにより、前記２つの視点の間の仮想視点から見える第１の中間画像を生成する第１のモーフィング処理部と、前記直線エッジ検出部により検出された前記直線エッジに対応する、前記第１の中間画像内の前記オブジェクトのエッジに歪みがあるか否かを判定する歪み判定部と、前記エッジに歪みがある場合には、前記第１及び第２の原画像に対して、前記第１及び第２の原画像の平行化処理を伴う第２のモーフィング処理を行うことにより、前記仮想視点から見える第２の中間画像を生成する第２のモーフィング処理部と、を備える、画像処理装置が提供される。
【００１０】
前記直線エッジ検出部は、前記少なくとも一方の原画像を２値化し、当該２値化した画像に対して膨張及び収縮処理を行い、当該膨張及び収縮処理後の画像からハフ変換により前記直線エッジを検出するようにしてもよい。
【００１１】
前記歪み判定部は、前記第１の中間画像における前記エッジと当該エッジの両端を結ぶ線分とによって囲まれる画像領域の面積が、所定の判断基準定数により定まる閾値以上である場合には、前記エッジに歪みがあると判定するようにしてもよい。
【００１２】
前記第２のモーフィング処理はビューモーフィング処理であるようにしてもよい。
【００１３】
前記第１の原画像から複数の特徴点を抽出する特徴点抽出部と、前記第２の原画像から前記特徴点にそれぞれ対応する複数の対応点を探索する対応点探索部と、をさらに備え、前記第１及び第２のモーフィング処理部は、前記特徴点及び前記対応点を用いて前記第１及び第２のモーフィング処理を行うようにしてもよい。
【００１４】
また、上記課題を解決するために、本発明の別の観点によれば、同一のオブジェクトを相異なる２つの視点から撮像した第１及び第２の原画像のうち、少なくとも一方の原画像内の前記オブジェクトの直線エッジを検出するステップと、前記第１及び第２の原画像に対して、前記第１及び第２の原画像の平行化処理を伴わない第１のモーフィング処理を行うことにより、前記２つの視点の間の仮想視点から見える第１の中間画像を生成するステップと、前記直線エッジを検出するステップにより検出された前記直線エッジに対応する、前記第１の中間画像内の前記オブジェクトのエッジに歪みがあるか否かを判定するステップと、前記エッジに歪みがある場合には、前記第１及び第２の原画像に対して、前記第１及び第２の原画像の平行化処理を伴う第２のモーフィング処理を行うことにより、前記仮想視点から見える第２の中間画像を生成するステップと、を含む、画像処理方法が提供される。
【００１５】
また、上記課題を解決するために、本発明の別の観点によれば、同一のオブジェクトを相異なる２つの視点から撮像した第１及び第２の原画像のうち、少なくとも一方の原画像内の前記オブジェクトの直線エッジを検出するステップと、前記第１及び第２の原画像に対して、前記第１及び第２の原画像の平行化処理を伴わない第１のモーフィング処理を行うことにより、前記２つの視点の間の仮想視点から見える第１の中間画像を生成するステップと、前記直線エッジを検出するステップにより検出された前記直線エッジに対応する、前記第１の中間画像内の前記オブジェクトのエッジに歪みがあるか否かを判定するステップと、前記エッジに歪みがある場合には、前記第１及び第２の原画像に対して、前記第１及び第２の原画像の平行化処理を伴う第２のモーフィング処理を行うことにより、前記仮想視点から見える第２の中間画像を生成するステップと、をコンピュータに実行させるためのプログラムが提供される。
【００１６】
上記構成によれば、第１及び第２の原画像のうち少なくとも一方の原画像内の前記オブジェクトの直線エッジが検出され、前記第１及び第２の原画像に対して、前記第１及び第２の原画像の平行化処理を伴わない第１のモーフィング処理を行うことにより、前記２つの視点の間の仮想視点から見える第１の中間画像が生成され、前記第１の中間画像内における前記直線エッジに対応するエッジに歪みがあるか否かが判定され、前記エッジに歪みがある場合には、前記第１及び第２の原画像に対して、前記第１及び第２の原画像の平行化処理を伴う第２のモーフィング処理を行うことにより、前記仮想視点から見える第２の中間画像が生成される。これにより、第１のモーフィング処理により生成された第１の中間画像に歪みがあるか否かを好適に検出でき、当該第１の中間画像に歪みがある場合にのみ、第２のモーフィング処理を行って、歪みのない第２の中間画像を生成できる。
【発明の効果】
【００１７】
以上説明したように本発明によれば、異なる視点から撮像された２つの原画像を用いて、歪みのない中間画像を生成できるとともに、計算コストも抑制することができる。
【図面の簡単な説明】
【００１８】
【図１】本発明の第１の実施形態に係る通常モーフィング処理を示す概念図である。
【図２】同実施形態に係るビューモーフィング処理を示す概念図である。
【図３】同実施形態に係るビューモーフィング処理を示す概念図である。
【図４】同実施形態に係るビューモーフィング処理を示す概念図である。
【図５】同実施形態に係る画像処理装置のハードウェア構成を示すブロック図である。
【図６】同実施形態に係る画像処理装置の機能構成を示すブロック図である。
【図７】同実施形態に係る画像処理方法を示すフローチャートである。
【図８】図７の直線エッジ検出処理（Ｓ３００）を示すフローチャートである。
【図９】同実施形態に係るラプラシアンフィルタを示す説明図である。
【図１０】同実施形態に係る膨張・収縮処理を示す説明図である。
【図１１】同実施形態に係るハフ変換により検出された画像内の直線を示す説明図である。
【図１２】図７の通常モーフィング処理（Ｓ４００）を示すフローチャートである。
【図１３】同実施形態に係るドロネー三角網が張られた画像を示す説明図である。
【図１４】同実施形態に係るベクトル表記された三角メッシュ内の画素を示す説明図である。
【図１５】図７の通常モーフィング処理（Ｓ５００）を示すフローチャートである。
【図１６】図７の歪み検出処理（Ｓ６００）を示すフローチャートである。
【図１７】同実施形態に係る対応エッジの歪み検出処理を示す説明図である。
【図１８】図７のビューモーフィング処理（Ｓ７００）を示すフローチャートである。
【図１９】同実施形態に係るビューモーフィング処理を示す概念図である。
【図２０】本発明の第２の実施形態に係る画像処理方法を示すフローチャートである。
【発明を実施するための形態】
【００１９】
以下に添付図面を参照しながら、本発明の好適な実施の形態について詳細に説明する。なお、本明細書及び図面において、実質的に同一の機能構成を有する構成要素については、同一の符号を付することにより重複説明を省略する。
【００２０】
なお、説明は以下の順序で行うものとする。
１．第１の実施の形態（歪み検出前に通常モーフィングを行う例）
［１．画像処理方法の概要］
［２．画像処理装置の構成］
［３．画像処理方法］
［３．１．特徴点抽出処理及び対応点探索処理］
［３．２．直線エッジ検出処理］
［３．３．通常モーフィング処理（カラー画像）］
［３．４．通常モーフィング処理（２値画像）］
［３．５．歪み検出処理］
［３．６．ビューモーフィング処理］
［４．まとめ］
２．第２の実施の形態（歪み検出後に通常モーフィングとビューモーフィングを切り替える例）
【００２１】
［１．画像処理方法の概要］
まず、図１〜図４を参照して、本発明の第１の実施形態に係る画像処理装置におけるモーフィング処理の概要について説明する。図１は、本実施形態に係る通常モーフィング処理を示す概念図である。図２〜図４は、本実施形態に係るビューモーフィング処理を示す概念図である。
【００２２】
なお、本明細書では、「視点」とは、「視点位置」と「視線方向」を含むものとする。「視点位置」は、原画像を撮像したときのカメラ１０の位置であり、「視線方向」は、ある視点位置からオブジェクト１に向かうである。また、「原画像」は、カメラ１０により撮像された実写画像であり、「中間画像」は、モーフィング処理により２枚の原画像を合成して得られた仮想画像である。また、オブジェクト１は、カメラ１０により撮像される任意の物体（被写体）であり、以下では、説明の便宜上、オブジェクト１が四角柱等である例を挙げるが、オブジェクトは、例えば人物、動物、植物、建造物、商品など、任意の物体であってよい。
【００２３】
図１に示すように、本実施形態に係る画像処理装置は、姿勢センサ及び位置センサを備えてカメラ１０により、同一のオブジェクト１を相異なる２つの視点（例えば視点ＰＡ、と視点ＰＢ）から撮像して得られた２つの原画像（例えば原画像Ａと原画像Ｂ）に対して、モーフィング処理を行う。このモーフィング処理では、原画像Ａと原画像Ｂの対応画素を線形補完することにより、視点ＰＡと視点ＰＢの中間に位置する任意の仮想視点ＰＣからオブジェクト１を見たときの中間画像Ｃ（図１の中間画像Ｃ１又は図４の中間画像Ｃ２に相当する。）を生成する。このとき、生成される中間画像Ｃは１枚に限られず、視点ＰＡと視点ＰＢの間に任意の複数の仮想視点ＰＣを設定し、これらの仮想視点ＰＣから見える複数の中間画像Ｃを生成してもよい。かかるモーフィング処理により、視点を視点ＰＡから視点ＰＢに移動させながらオブジェクト１を見たときに、オブジェクト１の姿形が徐々に変化する様子を表す複数の中間画像Ｃを生成できる。
【００２４】
上述したように、モーフィング処理には、原画像Ａ、Ｂを撮像したときのカメラ幾何（２つの視点ＰＡと視点ＰＢ間でのカメラ１０の相対的な位置関係）を考慮するか否かによって、通常モーフィング処理（第１のモーフィング処理に相当する。）と、ビューモーフィング処理（第２のモーフィング処理に相当する。）がある。
【００２５】
通常モーフィング処理は、カメラ幾何を考慮しないモーフィング処理であり、後述するように、原画像Ａ、Ｂの平行化処理と、逆射影処理を伴わない。この通常モーフィング処理では、まず、２つの原画像Ａ、Ｂ中の同一のオブジェクト１が写っている画像領域を、複数の矩形領域で対応付ける。図１では、原画像Ａに写っているオブジェクト１の特徴点ＸＡ（座標（ｘ１、ｙ１））と、原画像Ｂに写っているオブジェクト１の特徴点ＸＢ（座標（ｘ２、ｙ２））は、相互に対応する対応点である。そして、２つの原画像Ａ、Ｂ内の対応する画像領域の形状と色を線形補間することにより、仮想視点ＰＣから見えるオブジェクト１の中間画像Ｃ１を生成する。
【００２６】
このような通常モーフィング処理は、カメラ幾何を考慮していないので、２つの視点ＰＡ、ＰＢとオブジェクト１とがなす角度θが大きすぎる場合には、モーフィングにより生成された中間画像Ｃ１内のオブジェクトが歪んでしまうという問題が生じることがある。また、原画像Ａ、Ｂを撮像したときの２つの視点ＰＡ、ＰＢにおけるカメラ１０の光軸１１、１２が、基線１３（２つの視点ＰＡ、ＰＢにおけるカメラ１０の中心を結ぶ直線）に対して直行している場合には、線形補間により適切な中間画像Ｃ１を生成できるが、そうでない場合には、線形補間により生成された中間画像Ｃ１が歪んでしまうという問題もある。
【００２７】
これに対して、ビューモーフィング処理は、上記場合に通常モーフィング処理による中間画像Ｃ１が歪んでしまうという問題を解消するために提案されたものである。図２〜図４に示すように、ビューモーフィング処理は、カメラ幾何を考慮したモーフィング処理であり、後述するように原画像Ａ、Ｂの平行化処理と、中間画像Ｃ２’の逆射影処理を伴う。
【００２８】
詳細には、ビューモーフィング処理では、まず、図２及び図３に示すように、２つの視点ＰＡ、ＰＢにおけるカメラ１０間の相対的な位置関係を計算し、両画像Ａ、Ｂに対して平行化処理を行う。この平行化処理では、視点ＰＡで撮像された原画像Ａと視点ＰＢで撮像された原画像Ｂとが平行になるように、即ち、両視点ＰＡ、ＰＢでのカメラ１０の光軸１１、１２が平行となるように、原画像Ａ、Ｂを回転させて、画像Ａ’、画像Ｂ’を得る。そして、図４に示すように、平行化された画像Ａ’、Ｂ’に対して通常のモーフィング処理を行い、上記線形補間によって中間画像Ｃ２’を得る。その後、図４に示すように、得られた中間画像Ｃ２’を、上記平行化前の空間に逆射影することによって、仮想視点ＰＣから本来見えるべき中間画像Ｃ２を生成する。
【００２９】
このように、ビューモーフィング処理では、２つの視点ＰＡ、ＰＢにおけるカメラ１０の相対的な位置関係を考慮して、原画像Ａ、Ｂを平衡化処理した上でモーフィングすることによって、中間画像Ｃ２を得る。従って、２つの視点ＰＡ、ＰＢとオブジェクト１とがなす角度θが大きすぎる場合や、カメラ１０の光軸１１、１２が、基線１３に対して直行していない場合であっても、歪みのない適正な中間画像Ｃ２を生成できるというメリットがある。ところが、ビューモーフィング処理では、上記カメラ幾何を考慮するための平衡化処理及び逆投射処理などが必要となるので、複雑な行列演算処理や特異値分解などといった計算コストの大きな処理を行わなければならない。このため、計算コストが通常モーフィング処理よりも少なくとも１０倍以上も大きくなってしまうという問題があった。
【００３０】
そこで、本実施形態に係る画像処理装置では、歪みのない中間画像Ｃを生成し、かつ、モーフィング処理に要する計算コストも抑制するために、通常モーフィング処理により生成された中間画像Ｃ１内のオブジェクトの歪みを検出し、その歪みの有無に応じて、カメラ幾何を考慮しない通常モーフィング処理と、カメラ幾何を考慮したビューモーフィング処理とを適宜切り替えることを特徴としている。
【００３１】
詳細には、本実施形態に係る画像処理装置は、まず、原画像Ａ又は原画像Ｂのいずれか一方の画像（例えば原画像Ａ）内に写っているオブジェクト１のエッジの中から、直線エッジを検出する。直線エッジは、原画像に含まれるオブジェクト１のエッジ（輪郭）のうち、直線状のエッジである。次いで、画像処理装置は、原画像Ａ、Ｂを用いて通常モーフィング処理を行い、カラーの中間画像Ｃ１を生成し、また、２値化された原画像Ａ、Ｂを用いて通常モーフィングを行い、２値化された中間画像Ｃ３を生成する。そして、画像処理装置２０は、その中間画像Ｃ３（２値画像）に含まれるオブジェクト１の対応エッジの歪みを検出する。ここで、中間画像Ｃ３内の対応エッジは、上記原画像Ａ内で検出された直線エッジに対応する、中間画像Ｃ３内のオブジェクト１のエッジである。この歪み検出の結果、当該中間画像Ｃ３内の対応エッジに歪みがある場合にのみ、画像処理装置は、原画像Ａ、Ｂを用いてビューモーフィング処理を行って、歪みのない新たな中間画像Ｃ２を生成して記録する。一方、通常モーフィング処理により生成された中間画像Ｃ３内の対応エッジに歪みがない場合には、画像処理装置は、ビューモーフィング処理を行わずに、通常モーフィング処理により得られた中間画像Ｃ１を最終画像として記録する。
【００３２】
上記のように、通常モーフィング処理により実際に生成された中間画像Ｃ３の対応エッジの歪みを検出することによって、当該歪みの有無によって、通常モーフィング処理とビューモーフィング処理を適切に使い分けることができる。従って、視点ＰＡ、ＰＢから撮像された原画像Ａ、Ｂを用いて、オブジェクト１の歪みのない自然な中間画像Ｃ１又はＣ２を生成できる。かつ、計算コストが高いビューモーフィング処理を行う回数を最小限に抑えて、全体としての計算コストを大幅に抑制できる。特に、視点ＰＡ、ＰＢの中間に多数の仮想視点ＰＣを設定し、当該仮想視点ＰＣから見える多数の中間画像Ｃをモーフィングによって順次生成する場合に、本実施形態に係る計算コストの抑制効果が高くなる。
【００３３】
なお、以下の説明では、本発明の画像処理装置の一例として、パーソナルコンピュータの例を挙げ、この画像処理装置が、カメラ１０により撮像された原画像Ａ、Ｂに対してモーフィング処理を実行する場合について説明する。
【００３４】
この場合、カメラ１０は、同一のオブジェクト１を相異なる複数の視点ＰＡ、ＰＢから撮像して、原画像Ａ、Ｂ（実写画像）を生成するとともに、その原画像Ａ、Ｂを撮像したときの視点情報をそれぞれ生成し、原画像Ａ、Ｂと視点情報を記憶媒体に記録する。視点情報は、原画像Ａ、Ｂを撮像したときの視点位置（例えば緯度・経度）と、視線方向を表す情報であり、カメラ１０設けられた姿勢・位置センサの検出値に基づいて生成される。姿勢・位置センサは、例えば、ＧＰＳ（Ｇｌｏｂａｌ  Ｐｏｓｉｔｉｏｎｉｎｇ  Ｓｙｓｔｅｍ）センサ、角速度センサ、加速度センサ、磁気センサなどで構成される。
【００３５】
これらの原画像Ａ、Ｂと視点情報は、カメラ１０から、リムーバブル記憶媒体（例えば、メモリカード、光ディスク等）又はネットワークを介して、画像処理装置（例えばパーソナルコンピュータ）に提供される。画像処理装置は、これらの原画像Ａ、Ｂに対して通常モーフィング及び／又はビューモーフィング処理を行って、中間画像Ｃ１又はＣ２を生成し、記録媒体に記録する。この際、画像処理装置がビューモーフィング処理を行うときには、原画像Ａ、Ｂに関連づけられた上記視点情報を用いて、原画像Ａ、Ｂに対する平行化処理などを行う。
【００３６】
なお、本発明の画像処理装置は、上記パーソナルコンピュータの例に限定されず、画像処理機能を備えた電子機器であれば、例えば、デジタルカメラ、ビデオカメラ等の撮像装置であってもよい。また、該画像処理装置は、携帯電話、ＰＤＡ（Ｐｅｒｓｏｎａｌ  Ｄｉｇｉｔａｌ  Ａｓｓｉｓｔａｎｔ）、携帯型の映像／音楽プレーヤー、携帯端末、ゲーム機などの携帯機器であってもよい。さらには、画像処理装置は、テレビジョン受像器等の表示装置、光ディスクプレーヤ／レコーダ等の記録／再生装置、各種の家庭電化製品、業務用の画像編集装置などであってもよい。
【００３７】
［２．画像処理装置の構成］
次に、図５を参照して、本実施形態に係る画像処理装置２０のハードウェア構成について説明する。図５は、本実施形態に係る画像処理装置２０のハードウェア構成を示すブロック図である。
【００３８】
図５に示すように、画像処理装置２０は、例えば、ＣＰＵ２０１と、ＲＯＭ２０２と、ＲＡＭ２０３と、ホストバス２０４と、ブリッジ２０５と、外部バス２０６と、インタフェース２０７と、入力装置２０８と、出力装置２０９と、ストレージ装置（ＨＤＤ）２１０と、ドライブ２１１と、接続ポート２１２と、通信装置２１３とを備える。このように画像処理装置２０は、例えば、汎用のコンピュータ機器を用いて構成できる。
【００３９】
ＣＰＵ２０１は、演算処理装置および制御装置として機能し、各種プログラムに従って動作し、画像処理装置２０内の各部を制御する。このＣＰＵ２０１は、ＲＯＭ２０２に記憶されているプログラム、或いは、ストレージ装置２１０からＲＡＭ２０３にロードされたプログラムに従って、各種の処理を実行する。ＲＯＭ２０２は、ＣＰＵ２０１が使用するプログラムや演算パラメータ等を記憶するとともに、ＣＰＵ２０１からストレージ装置２１０へのアクセスを軽減するためのバッファーとしても機能する。ＲＡＭ２０３は、ＣＰＵ２０１の実行において使用するプログラムや、その実行において適宜変化するパラメータ等を一時記憶する。これらはＣＰＵバスなどから構成されるホストバス２０４により相互に接続されている。ホストバス２０４は、ブリッジ２０５を介して、ＰＣＩ（Ｐｅｒｉｐｈｅｒａｌ  Ｃｏｍｐｏｎｅｎｔ  Ｉｎｔｅｒｃｏｎｎｅｃｔ／Ｉｎｔｅｒｆａｃｅ）バスなどの外部バス２０６に接続されている。
【００４０】
ＣＰＵ２０１に付随して設けられるメモリ部（例えばＲＯＭ２０２や不図示のフラッシュメモリ等）には、ＣＰＵ２０１に各種の制御処理を実行させるためのプログラムが格納されており、ＣＰＵ２０１は、該プログラムに基づいて、各部の制御処理のための必要な演算処理を実行する。
【００４１】
本実施形態に係るプログラムは、上述したＣＰＵ２０１の各種制御を、ＣＰＵ２０１に実行させるためのプログラムである。このプログラムは、画像処理装置２０に内蔵された記憶装置（ストレージ装置２１０、ＲＯＭ２０２、フラッシュメモリ等）に予め格納しておくことができる。また、当該プログラムは、ＣＤ、ＤＶＤ、ブルーレイディスク等の光ディスク、メモリカードなどのリムーバブル記録媒体３に格納されて、画像処理装置２０に提供されてもよいし、或いは、ＬＡＮ、インターネット等のネットワーク５を介して画像処理装置２０にダウンロードされてもよい
【００４２】
入力装置２０８は、例えば、マウス、キーボード、タッチパネル、ボタン、スイッチ、レバー等の操作手段と、入力信号を生成してＣＰＵ２０１に出力する入力制御回路などから構成されている。出力装置２０９は、例えば、ＣＲＴ（Ｃａｔｈｏｄｅ  Ｒａｙ  Ｔｕｂｅ）ディスプレイ装置、液晶ディスプレイ（ＬＣＤ）装置等の表示装置と、スピーカ等の音声出力装置などで構成される。なお、入力装置２０８及び出力装置２０９を設置してなくてもよい。
【００４３】
ストレージ装置２１０は、各種のデータを格納するための記憶装置であり、例えば、ＨＤＤ（Ｈａｒｄ  Ｄｉｓｋ  Ｄｒｉｖｅ）などの外付け型若しくは内蔵型のディスクドライブで構成される。このストレージ装置２１０は、記憶媒体であるハードディスクを駆動し、ＣＰＵ２０１が実行するプログラムや各種データを格納する。ドライブ２１１は、記憶媒体用リーダライタであり、画像処理装置２０に内蔵、或いは外付けされる。このドライブ２１１は、画像処理装置２０にローディングされた磁気ディスク、光ディスク、光磁気ディスク、または半導体メモリ等のリムーバブル記憶媒体３に対して、各種データを書き込み／読み出しする。
【００４４】
接続ポート２１２は、外部周辺機器を接続するためのポートであり、例えば、ＵＳＢ、ＩＥＥＥ１３９４等の接続端子を有する。接続ポート２１２は、インタフェース２０７、および外部バス２０６、ブリッジ２０５、ホストバス２０４等を介してＣＰＵ２０１等に接続されている。通信装置２１３は、例えば、ネットワーク５に接続するための通信デバイス等で構成された通信インタフェースである。この通信装置２１３は、カメラ１０等の外部装置との間で、ネットワーク５を介して、各種データを送受信する。
【００４５】
次に、図６を参照して、本実施形態に係る画像処理装置２０の機能構成について説明する。図６は、本実施形態に係る画像処理装置２０の機能構成を示すブロック図である。
【００４６】
図６に示すように、画像処理装置２０は、記憶部１００と、特徴点抽出部１０２と、対応点探索部１０４と、直線エッジ検出部１０６と、通常モーフィング処理部１０８と、歪み判定部１１０と、ビューモーフィング処理部１１２と、表示部１１４とを備える。図６に示す各機能部は、上記ＣＰＵがプログラムを実行することにより実現されるが、該当機能を実行する専用のハードウェアとして構成することも可能である。以下、各機能部について説明する。
【００４７】
記憶部１００は、上述したカメラ１０により相異なる視点から撮像された２枚の原画像Ａ、Ｂを記憶する。また、記憶部００は、後述の通常モーフィング処理部１０８により生成された中間画像Ｃ１（カラー画像）、中間画像Ｃ３（２値画像）や、後述のビューモーフィング処理部１１２により生成された中間画像Ｃ２を記憶する。
【００４８】
特徴点抽出部１０２は、図１に示したように、一方の原画像Ａにおけるオブジェクト１の特徴点ＸＡを抽出する。また、対応点探索部１０４は、他方の原画像Ｂにおいて、原画像Ａの特徴点ＸＡに対応する特徴点である対応点ＸＢを探索する。原画像Ａの特徴点ＸＡと原画像Ｂの対応点ＸＢは、同一のオブジェクト１の同一のポイントを表している。特徴点抽出部１０２と対応点探索部１０４は、原画像Ａと原画像Ｂから複数組の特徴点ＸＡと対応点ＸＢを検出する。
【００４９】
直線エッジ検出部１０６は、原画像Ａ又は原画像Ｂの少なくとも一方に含まれるオブジェクト１の直線エッジを検出する。以下では、例えば、原画像Ａ内のオブジェクト１の直線エッジを検出する例について説明するが、原画像Ｂ内のオブジェクト１の直線エッジを検出しても勿論よい。直線エッジは、撮像された原画像Ａ中のオブジェクト１の輪郭（即ち、エッジ）のうち、直線部分のエッジである。撮像された原画像Ａ内のオブジェクト１の輪郭は、直線部分や曲線部分等を含んでいる。直線エッジ検出部１０６は、まず、記憶部１００から読み出した原画像Ａを２値化し、次いで、その２値画像に対して膨張及び収縮処理を行うことでノイズを除し、さらに、２値画像からハフ変換（Ｈｏｕｇｈ  Ｔｒａｎｓｆｏｒｍａｔｉｏｎ）により直線エッジを検出する。このように検出された直線エッジは、後述する通常モーフィング処理により生成された中間画像Ｃ３内の対応エッジの歪みを検出するために用いられる。なお、かかる直線エッジ検出処理の詳細は、後述する（図８参照）。
【００５０】
通常モーフィング処理部１０８は、本発明の第１のモーフィング処理部の一例であり、原画像Ａ、Ｂに対して通常モーフィング処理を行い、仮想視点ＰＣから見える中間画像Ｃ１を生成する。通常モーフィング処理部１０８は、上記原画像Ａの特徴点ＸＡと原画像Ｂの対応点ＸＢを用いて、原画像Ａ、Ｂ内の対応画素領域の形状と輝度値を線形補間することによって、中間画像Ｃ１（カラー）を生成する。また、通常モーフィング処理部１０８は、原画像Ａ、Ｂを２値化し、この２値化した原画像Ａ、Ｂに対して通常モーフィング処理を行うことで、２値化された中間画像Ｃ３（白黒）を生成する。
【００５１】
このように、通常モーフィング処理部１０８は、原画像Ａ、Ｂを２値化せずに、通常モーフィング処理を行うことで、通常の中間画像Ｃ１（カラー）を生成することもできし、２値化された中間画像Ｃ３（白黒）を生成することもできる。通常モーフィング処理部１０８は、生成した中間画像Ｃ１、Ｃ３を記憶部１００に記録する。なお、かかる通常モーフィング処理の詳細は、後述する（図１２、図１５参照）。
【００５２】
歪み判定部１１０は、通常モーフィング処理部１０８により生成された、２値化された中間画像Ｃ３内のオブジェクト１の対応エッジの歪みを検出する。この対応エッジは、当該中間画像Ｃ３において、上記直線エッジ検出部１０６により検出された原画像Ａ内の直線エッジに対応するエッジである。歪み判定部１１０は、上記原画像Ａ内の直線エッジの画素位置に基づいて、その直線エッジに対応する中間画像Ｃ３内の対応エッジの画素位置を特定する。そして、歪み判定部１１０は、その中間画像Ｃ３内の対応エッジと、当該エッジの両端を結ぶ線とによって囲まれる画像領域の面積（例えば画素数）が、所定の判断基準定数により定まる閾値以上であるか否かを判定する。歪み判定部１１０は、当該面積が閾値上である場合には、当該中間画像Ｃ３内のエッジに歪みがあると判定し、一方、当該面積が閾値未満である場合には、当該中間画像Ｃ３内のエッジに歪みがないと判定する。なお、かかる歪み検出処理の詳細は、後述する（図１６参照）。
【００５３】
ビューモーフィング処理部１１２は、本発明の第２のモーフィング処理部の一例である。上記歪み判定部１１０により中間画像Ｃ３内のエッジに歪みがあると判定された場合に、ビューモーフィング処理部１１２は、原画像Ａ、Ｂに対してビューモーフィング処理を行い、仮想視点ＰＣから見える中間画像Ｃ２（カラー画像）を生成する。詳細には、まず、ビューモーフィング処理部１１２は、原画像Ａ、Ｂの視点情報に基づいて、原画像Ａ、Ｂに対して平行化処理を行う。次いで、ビューモーフィング処理部１１２は、上記原画像Ａの特徴点ＸＡと原画像Ｂの対応点ＸＢを用いて、平行化された原画像Ａ、Ｂ内の対応画素領域の形状と輝度値を線形補間することによって、仮想視点ＰＣから見える中間画像Ｃ２’を生成する。その後、ビューモーフィング処理部１１２は、原画像Ａ、Ｂの視点情報に基づいて、中間画像Ｃ２’を平行化処理前の元の空間に逆射影して、中間画像Ｃ２を生成する。そして、ビューモーフィング処理部１１２は、生成した中間画像Ｃ２を記憶部１００に記録する。なお、かかるビューモーフィング処理の詳細は、後述する（図１８参照）。
【００５４】
表示部１１４は、実写画像である原画像Ａ、Ｂと、仮想画像である中間画像Ｃ１又はＣ２を表示する。この表示部１１４が、視点の移動方向に沿って、原画像Ａ、中間画像Ｃ１又はＣ２、原画像Ｂを順次表示することで、オブジェクト１が一方の原画像Ａの姿形から他方の原画像Ｂの姿形へと自然に変化をしていく様子を表示画面上で表現できる。
【００５５】
［３．画像処理方法］
次に、図７を参照して、本実施形態に係る画像処理装置２０による画像処理方法の全体フローについて説明する。図７は、本実施形態に係る画像処理方法を示すフローチャートである。
【００５６】
図７に示すように、画像処理装置２０は、まず、相異なる２つの視点ＰＡ、ＰＢで撮像された２枚の原画像Ａ、Ｂのうち、原画像Ａの特徴点ＸＡを抽出する特徴点抽出処理を行い（Ｓ１００）、次いで、原画像Ｂにおいて特徴点ＸＡの対応点ＸＢを探索する対応点探索処理を行う（Ｓ２００）。
【００５７】
さらに、画像処理装置２０は、原画像Ａ又はＢ内のオブジェクト１の直線エッジを検出する直線エッジ検出処理を行う（Ｓ３００）。なお、この直線エッジ検出処理（Ｓ３００）は、後述する歪み検出処理（Ｓ６００）より前の段階であれば、特徴点抽出処理（Ｓ１００）より前や、通常モーフィング処理（Ｓ４００又はＳ５００）の後に行われてもよい。
【００５８】
その後、画像処理装置２０は、カラー画像である原画像Ａ、Ｂに対して１回目の通常モーフィング処理を行い、２つの視点ＰＡ、ＰＢの間の仮想視点ＰＣから見える中間画像Ｃ１（カラー画像）を生成する（Ｓ４００）。さらに、画像処理装置２０は、原画像Ａ、Ｂを２値化した白黒画像に対して２回目の通常モーフィング処理を行い、当該仮想視点ＰＣから見える白黒の中間画像Ｃ３（２値画像）を生成する（Ｓ５００）。この２値化された白黒の中間画像Ｃ３は、次のＳ６００において通常モーフィング処理により生じた歪みを検出するための歪み検出用画像として機能する。
【００５９】
次いで、画像処理装置２０は、Ｓ５００で生成された白黒の中間画像Ｃ３内のオブジェクト１のエッジのうち、Ｓ３００で検出された直線エッジに対応するエッジ（対応エッジ）に歪みがあるか否かを検出する（Ｓ６００）。即ち、中間画像Ｃ３内の対応エッジが直線エッジであるか、歪んだ曲線エッジであるかが検出される。中間画像Ｃ３内の対応エッジが直線でなければ、中間画像Ｃ１及びＣ３のオブジェクト１の画像が歪んでいると判定できる。
【００６０】
この歪み検出処理（Ｓ６００）の結果、当該中間画像Ｃ３内の対応エッジが歪んでいる場合には、画像処理装置２０は、カラー画像である原画像Ａ、Ｂに対してビューモーフィング処理を行い、上記仮想視点ＰＣから見えるカラーの中間画像Ｃ２を生成する（Ｓ７００）。このように、通常モーフィング処理（Ｓ４００）により生成された中間画像Ｃ１及びＣ３が歪んでいる場合には、画像処理装置２０は、さらにビューモーフィング処理（Ｓ７００）を実行して、歪みのない中間画像Ｃ２を得て、当該中間画像Ｃ２を記憶部１００に記録する。
【００６１】
一方、Ｓ６００で上記中間画像Ｃ３内の対応エッジが歪んでいない場合には、画像処理装置２０は、ビューモーフィング処理（Ｓ７００）を行わずに、処理を終了する。このように、通常モーフィング処理（Ｓ５００）により生成された中間画像Ｃ３（２値画像）の対応エッジが歪んでいない場合には、画像処理装置２０は、通常モーフィング処理（Ｓ４００）により生成された中間画像Ｃ１（カラー画像）を記憶部１００に記録する。
【００６２】
以上のように、本実施形態に係る画像処理方法は、通常モーフィング処理（Ｓ４００）で歪みのない中間画像Ｃ１を生成できる場合には、ビューモーフィング処理（Ｓ７００）を実行しない。一方、通常モーフィング処理（Ｓ４００）で得た中間画像Ｃ１が歪んでいる場合にのみ、ビューモーフィング処理（Ｓ７００）を実行する。従って、全ての場合にビューモーフィング処理を行うのではなく、歪みのない中間画像Ｃを得るために必要な場合にのみビューモーフィング処理を実行する。よって、通常モーフィング処理又はビューモーフィング処理のいずれかによって、歪みのない中間画像Ｃを確実に生成できるとともに、不必要なビューモーフィング処理（Ｓ７００）を行わなくて済むので、計算コストを抑制できる。
【００６３】
以上、図７を参照して本実施形態に係る画像処理方法について概略について説明した。以下に、上記図７の各処理Ｓ１００〜Ｓ７００についてそれぞれ詳述する。
【００６４】
［３．１．特徴点抽出処理及び対応点探索処理］
まず、上記図７の特徴点抽出処理（Ｓ１００）及び対応点探索処理（Ｓ２００）について詳述する。
【００６５】
画像処理装置２０は、相異なる２つの視点ＰＡ、ＰＢで撮像された２枚の原画像Ａ、Ｂを記憶部１００から読み出す。次いで、画像処理装置２０は、図１に示したように、原画像Ａ、Ｂのうち、一方の原画像Ａからオブジェクト１の複数の特徴点を抽出し（Ｓ１００）、他方の原画像Ｂにおいて、当該原画像Ａの複数の特徴点ＸＡにそれぞれ対応する複数の対応点ＸＢを探索する（Ｓ２００）。
【００６６】
例えば、画像処理装置２０は、視点ＰＡで撮像された原画像Ａから、Ｈａｒｒｉｓオペレータなどのコーナー検出アルゴリズムによって、オブジェクト１の特徴点ＸＡを抽出する。そして、画像処理装置２０は、例えば、ＫＬＴ−Ｔｒａｃｋｅｒなどの特徴点追跡アルゴリズムを用いて、原画像Ｂ内の特徴点を追跡することによって、原画像Ａの特徴点ＸＡに対応する原画像Ｂの対応点ＸＢを求める（図１参照）。これにより、原画像Ａ、Ｂに対して相互に対応する特徴点ＸＡ、ＸＢを設定して、原画像Ａにおける特徴点ＸＡの座標（ｘ１、ｙ１）と、原画像Ｂにおける対応点ＸＢの座標（ｘ２、ｙ２）とを求めることができる。
【００６７】
なお、上記のような特徴点ＸＡと対応点ＸＢを求めるためには、２枚の原画像Ａ、Ｂは同一のオブジェクト１の一部を重複して含んでいる必要がある。また、ビューモーフィング処理（Ｓ７００）において、２つの視点ＰＡ、ＰＢ間の相対位置関係を求めるためには、８組以上の特徴点ＸＡと対応点ＸＢを求める必要がある。
【００６８】
［３．２．直線エッジ検出処理］
次に、図８〜図１１を参照して、上記図７の直線エッジ検出処理（Ｓ３００）について詳述する。図８は、図７の直線エッジ検出処理（Ｓ３００）を示すフローチャートである。
【００６９】
図８に示すように、直線エッジ検出処理（Ｓ３００）では、原画像Ａ又は原画像Ｂのいずれか一方の原画像から、ハフ変換を用いて、その原画像内に含まれるオブジェクト１の直線エッジを検出する。なお、以下では、直線検出処理の対象として原画像Ａを用いる例を説明するが、原画像Ｂを用いることも可能である。
【００７０】
まず、画像処理装置２０は、ラプラシアンフィルタ３０２（図９参照）などのエッジ強調フィルタを用いて、原画像Ａ内のオブジェクト１の境界線などのエッジを強調する（Ｓ３０２）。このエッジ強調処理では、例えば、原画像Ａの画素値から、原画像Ａに対してラプラシアンフフィルタ３０２をかけた出力画像の画素値を減算することで、画像の変化点を膨らませる。このようなエッジ強調処理（Ｓ３０２）により、原画像Ａのエッジを強調した鮮明な画像を得ることができる。
【００７１】
次いで、画像処理装置２０は、Ｓ３０２でエッジが強調された原画像Ａを２値化して、白黒の２値画像を得る（Ｓ３０４）。この２値画像は、原画像Ａ中のオブジェクト１を白い領域で表した白黒の画像である（図１０参照。）。
【００７２】
さらに、画像処理装置２０は、図１０に示すように、Ｓ３０４で２値化された原画像Ａに対して膨張処理及び収縮処理を行い、２値化された原画像Ａからノイズを除去する（Ｓ３０６）。
【００７３】
詳細には、画像処理装置２０は、まず、２値化された原画像Ａに対して膨張処理を行い、白画素を膨張させた画像Ａ１を生成する。この膨張処理では、２値化された原画像Ａ内のある画素の４近傍に１つでも白い画素があれば、その画素を白にする。かかる膨張処理により、２値画像Ａ内の孤立した白いノイズが膨張し、途切れた直線が修復されるとともに、黒いノイズが除去された画像Ａ１を生成できる。
【００７４】
次いで、画像処理装置２０は、膨張処理後の画像Ａ１に対して収縮処理を行い、白い画素を収縮させた画像Ａ２を生成する。この収縮処理では、画像Ａ１内のある画素の４近傍に１つでも黒い画素があれば、その画素を黒にする。かかる収縮処理により、画像Ａ１内の孤立した白いノイズが除去され、オブジェクト１の図形部分は１画素分収縮して、画像Ａ２を生成できる。
【００７５】
その後、画像処理装置２０は、図１１に示すように、Ｓ３０６でノイズが除去された画像Ａ２から、例えばハフ変換により直線３０４を検出することで、当該画像Ａ２内のオブジェクト１のエッジのうちの直線エッジを検出する（Ｓ３０８）。このハフ変換を行うための入力パラメータ（例えば、直線本数、エッジ閾値、辺幅、角度、距離）などは、実験から求めた最適値を用いる。
【００７６】
ハフ変換は、画像から直線を検出する方法として公知である。このハフ変換では、元の画像の直交座標上の点（ｘ，ｙ）を角度θと距離ρの極座標二次元空間に変換し、角度θと距離ρごとに、その個数をメモリ配列上に加算していく。そして、当該個数が最大になった、角度θと距離ρ組み合わせを、元の直角座標に戻したものが、元の画像における最も直線らしい点の集まりとなる。
【００７７】
図１１の例では、画像Ａ２内には４個のオブジェクト１ａ〜ｄが含まれており、このオブジェクト１ａ〜ｄの境界線（輪郭）を成すエッジの中から、直線３０４ａ〜ｆで表される直線エッジが検出されている。例えば、円柱形状のオブジェクト１ｄのエッジ（輪郭）は、上下の曲線エッジと、左右の直線エッジから構成されるが、これらのエッジの中から、ハフ変換により検出された直線３０４ｅ、３０４ｆが表す直線エッジが検出される。
【００７８】
以上のように、直線エッジ検出処理（Ｓ３００）では、一方の原画像Ａから、ハフ変換を用いて、その原画像Ａ内に含まれるオブジェクト１の直線エッジが検出される。この直線エッジは、後述の歪み検出処理（Ｓ５００）で用いられる。
【００７９】
［３．３．通常モーフィング処理（カラー画像）］
次に、図１２〜図１４を参照して、上記図７のカラー画像用の通常モーフィング処理（Ｓ４００）について詳述する。図１２は、図７の通常モーフィング処理（Ｓ４００）を示すフローチャートである。
【００８０】
図１２に示すように、通常モーフィング処理（Ｓ４００）では、上記特徴点抽出処理（Ｓ１００）及び対応点探索処理（Ｓ２００）で求めた原画像Ａの特徴点ＸＡと原画像Ｂの対応点ＸＢを用いて、原画像Ａ、Ｂに対して通常モーフィング処理を行う。これにより、仮想視点ＰＣからオブジェクト１を見たときの中間画像Ｃ１（カラー画像）が生成される。
【００８１】
まず、画像処理装置２０は、ドロネー三角分割を用いて、原画像Ａと原画像Ｂ内にそれぞれ三角メッシュ（ドロネー三角網）を生成する（Ｓ４０２）。図１３に示すように、原画像Ａにおいては、上記特徴点抽出処理（Ｓ１００）で得られた複数の特徴点ＸＡ１、ＸＡ２、ＸＡ３・・・を結ぶように三角メッシュが張られる。原画像Ｂにおいても、上記対応点探索処理（Ｓ２００）で得られた複数の対応点ＸＢ１、ＸＢ２、ＸＢ３・・・を結ぶように三角メッシュが張られる。原画像Ａの三角メッシュと原画像Ｂの三角メッシュとは対応しており、オブジェクト１の同一領域を表す。
【００８２】
次いで、画像処理装置２０は、原画像Ａと原画像Ｂの間で、各メッシュ内の画素を対応付ける（Ｓ４０４）。詳細には、図１４に示すように、各原画像Ａ、Ｂの各メッシュについて、そのメッシュの第１頂点ＸＡ１、ＸＢ１に対する、当該メッシュの内部にある全画素の相対位置が、下記式（１）、（２）のようにベクトルで表記される。
【００８３】
【数１】
2010282295.tif 000003
【００８４】
このとき、各原画像Ａ、Ｂにおけるメッシュはアフィン変換されているので、式（１）及び（２）のベクトルのパラメータｓ、ｔは、２枚の原画像Ａ、Ｂにおいて共通値となる。このパラメータｓ、ｔを用いたベクトル表記により、原画像Ａ、Ｂ間で各メッシュ内の各画素が対応付けられる。なお、アフィン変換は、元の図形で直線上にある点は変換後も直線上に並び、かつ、元の平行線は変換後も平行になるなどといった幾何学的性質を保つような変換方式である。
【００８５】
その後、画像処理装置２０は、上記Ｓ４０４で対応付けられた原画像Ａと原画像Ｂの対応画素間で、ＲＧＢの輝度値を線形加算することにより、仮想視点ＰＣから見える中間画像Ｃ１を生成する（Ｓ４０６）。例えば、図１３に示した原画像Ａ内の三角メッシュ（ＸＡ１、ＸＡ２、ＸＡ３）と、それに対応する原画像Ｂ内の三角メッシュ（ＸＢ１、ＸＢ２、ＸＢ３）との間で、対応画素の輝度値（ＲＧＢ）をそれぞれ線形加算して、中間画像Ｃ１の当該メッシュに対応する領域の画素の輝度値（ＲＧＢ）が決定される。このとき、線形加算される輝度値のブレンド比を調整することによって、任意の輝度値の中間画像Ｃ１を生成できる。
【００８６】
以上のように、カラー画像用の通常モーフィング処理（Ｓ４００）では、２枚の原画像Ａ、Ｂに対してドロネー三角網によりメッシュを生成し、対応するメッシュ間で輝度値を線形補間することで、所望の仮想視点ＰＣから見える中間画像Ｃ１のカラー画像を生成する。
【００８７】
［３．４．通常モーフィング処理（２値画像）］
次に、図１５を参照して、上記図７の２値画像用の通常モーフィング処理（Ｓ５００）について詳述する。図１５は、図７の通常モーフィング処理（Ｓ５００）を示すフローチャートである。
【００８８】
図１５に示すように、２値画像用の通常モーフィング処理（Ｓ５００）では、まず、画像処理装置２０は、原画像Ａ、Ｂを２値化して、原画像Ａの２値画像と原画像Ｂの２値画像を得る（Ｓ５０１）。その後、画像処理装置２０は、上述した図１２のカラー画像用の通常モーフィング処理（Ｓ４００）と同様に、２値化された原画像Ａ、Ｂに対して通常モーフィング処理を行う。即ち、画像処理装置２０は、２値化された原画像Ａ、Ｂ内にドロネー三角網を用いて三角メッシュを生成し（Ｓ５０２）、当該原画像Ａ、Ｂの各メッシュ間で全ての画像を対応付け（Ｓ５０４）、対応付けられた各画素の輝度値を線形加算する（Ｓ５０６）。
このように２値化された原画像Ａ、Ｂに対して通常モーフィング処理を行うことで、仮想視点ＰＣからオブジェクト１を見たときの中間画像Ｃ２（２値画像）が生成される。かかる中間画像Ｃ３の２値画像は、次の歪み検出処理（Ｓ６００）における歪みの検出対象の画像となる。
【００８９】
［３．５．歪み検出処理］
次に、図１６を参照して、上記図７の歪み検出処理（Ｓ６００）について詳述する。図１６は、図７の歪み検出処理（Ｓ６００）を示すフローチャートである。
【００９０】
図１６に示すように、歪み検出処理（Ｓ６００）では、Ｓ５００で生成された中間画像Ｃ３（２値画像）内のオブジェクト１の対応エッジ（即ち、Ｓ３００で検出された直線エッジに対応する中間画像Ｃ１内のエッジ）に歪みがあるか否かが検出される。
【００９１】
Ｓ５００での通常モーフィング処理が正常に行われていれば、当該中間画像Ｃ１内の対応エッジは、直線エッジであるはずである。しかし、原画像Ａ、Ｂを撮像したときの視点ＰＡ、ＰＢとオブジェクト１との成す角度θ（図１参照）が大きい場合などには、通常モーフィング処理（Ｓ４００）で生成された中間画像Ｃ１には歪みが生じることがある。そこで、本実施形態では、通常モーフィング処理（Ｓ５００）により、中間画像Ｃ３の２値画像を生成し、この中間画像Ｃ３を歪み検出用の画像として用いて、当該中間画像Ｃ３内の対応エッジの歪みが、所定の閾値以上であるか否かを検出する。
【００９２】
詳細には、まず、画像処理装置２０は、Ｓ５００で生成された中間画像Ｃ３（２値画像）内のオブジェクト１のエッジの中から、Ｓ３００で検出された原画像Ａ内の直線エッジに対応するエッジ（対応エッジ）を検出する（Ｓ６０２）。例えば、図１７に示すように、画像処理装置２０は、中間画像Ｃ３において、Ｓ３００で検出された原画像Ａ内の直線エッジ３１０に対応する対応エッジ３１２を検出する。上記通常モーフィング処理（Ｓ５００）において原画像Ａ、Ｂの各画素を線形補間したときのそれぞれの画素の位置情報を利用すれば、中間画像Ｃ３における原画像Ａの直線エッジ３１０に対応する対応エッジ３１２の位置を求めることができる。そこで、画像処理装置２０は、上記通常モーフィング処理（Ｓ５００）時に得た画素の位置情報に基づいて、２値化された中間画像Ｃ３における対応エッジ３１２を特定する。
【００９３】
次いで、画像処理装置２０は、図１７に示すように、Ｓ６０２で検出した対応エッジ３１２と当該対応エッジの両端を結ぶ線分Ｄ−Ｅとで囲まれる白い画像領域３１４の面積Ｓ（画素数）を求め、この画像領域３１４の面積Ｓが、所定の閾値以上であるか否かを判定する（Ｓ６０４）。
【００９４】
例えば図１７に示したように、中間画像Ｃ３における対応エッジ３１２が、原画像Ａにおける直線エッジ３１０と比べて歪んでいる場合、直線エッジ３１０（線分Ｄ−Ｅ）と対応エッジ３１２とによって囲まれた、半楕円状の白い画像領域３１４が生じる。この白い画像領域３１４の面積Ｓが大きいほど、中間画像Ｃ３における対応エッジ３１２が歪んでいることになる。
【００９５】
そこで、画像処理装置２０は、下記式（３）、（４）に示すように、当該画像領域３１４の面積Ｓと、所定の判断基準定数αにより定まる閾値（＝α・Ｘ・Ｙ）とを比較し、その比較結果に応じて、対応エッジ３１２の歪みの有無を判断する。
【００９６】
白い画像領域３１４の面積Ｓ≧α・Ｘ・Ｙ  ：対応エッジ３１２は歪み有り    （３）
白い画像領域３１４の面積Ｓ＜α・Ｘ・Ｙ  ：対応エッジ３１２は歪み無し    （４）
α  ：  判断基準定数  （０＜α＜１）
【００９７】
ここで、上記白い画像領域３１４の面積Ｓ、高さＹ及び幅Ｘの値は、当該画像領域３１４の画素数を用いて定めることができる。また、閾値（＝α・Ｘ・Ｙ）は、画像領域３１４の最大高さＹと最大幅Ｘの積に、判断基準定数αを乗算した値である。判断基準定数αは、０より大で、１未満の固定値であり、例えば、α＝０．５である。かかる閾値（＝α・Ｘ・Ｙ）を用いることで、最大高さＹと最大幅Ｘで定まる矩形領域中に占める画像領域３１４の割合を閾値として、対応エッジ３１２の歪みの有無を判定できる。このとき、判断基準定数αの値を調節することで、対応エッジ３１２の歪みの検出精度を制御できる。例えば、αを大きくして１に近づければ、歪みの検出精度が低くなり、αを小さくして０に近づければ、歪みの検出精度が高くなる。
【００９８】
上記Ｓ６０４にて、式（３）、（４）を用いた判定の結果、画像領域３１４の面積Ｓ（画像領域３１４に含まれる画素数）が所定の閾値（＝α・Ｘ・Ｙ）以上であれば、画像処理装置２０は、中間画像Ｃ３の対応エッジ３１２が歪んでいる判定する（Ｓ６０６）。この場合、通常モーフィング処理（Ｓ４００）により生成された中間画像Ｃ１に大きな歪みがあることになるので、画像処理装置２０は、ビューモーフィング処理（Ｓ７００）を実行する。例えば、視点ＰＡ、ＰＢ間で複数の中間画像Ｃを生成するときには、通常モーフィング処理により生成された全ての中間画像Ｃ３のうち、少なくとも１枚の中間画像Ｃ３の対応エッジ１３２が歪んでいる場合、歪みのない中間画像Ｃ２を生成するために、ビューモーフィング処理（Ｓ７００）を実行するモードに遷移する。
【００９９】
一方、当該面積Ｓが所定の閾値（＝α・Ｘ・Ｙ）未満であれば、画像処理装置２０は、中間画像Ｃ３の対応エッジ３１２が歪んでいないと判定する（Ｓ６０８）。この場合、通常モーフィング処理（Ｓ４００）により生成された中間画像Ｃ１に歪みがない、或いは、中間画像Ｃの歪みが小さいことになるので、画像処理装置２０は、ビューモーフィング処理（Ｓ７００）を実行することなく、処理を終了する。例えば、視点ＰＡ、ＰＢ間で複数の中間画像Ｃを生成するときには、通常モーフィング処理により生成された全ての中間画像Ｃ３の対応エッジ１３２が歪んでいない場合、ビューモーフィング処理（Ｓ７００）を実行する必要がないので、通常モーフィング処理（Ｓ４００）により生成された中間画像Ｃ１を結果画像として出力する。
【０１００】
［３．６．ビューモーフィング処理］
次に、図１８を参照して、上記図７のビューモーフィング処理（Ｓ７００）について詳述する。図１８は、図７のビューモーフィング処理（Ｓ７００）を示すフローチャートである。
【０１０１】
図１８に示すように、ビューモーフィング処理（Ｓ７００）では、まず、画像処理装置２０は、上記Ｓ１００及びＳ２００で求めた原画像Ａの特徴点ＸＡ及び原画像Ｂの対応点ＸＢを用いて、図２に示した２つの視点ＰＡ、ＰＢ間でのカメラ１０の相対的な位置関係（カメラ幾何）を求める（Ｓ７０２〜Ｓ７０６）。次いで、画像処理装置２０は、図３に示したように、当該カメラ１０の相対的な位置関係に基づいて、視点ＰＡで撮像された原画像Ａと視点ＰＢで撮像された原画像Ｂとが平行になるように、２つの原画像Ａ、Ｂを同一の仮想平面に射影変換する平行化処理を行う（Ｓ７０８〜Ｓ７１０）。その後、画像処理装置２０は、図４に示したように、平行化された原画像Ａ’、Ｂ’に対して通常モーフィング処理を行って中間画像Ｃ２’を生成し（Ｓ７１２）、さらに、その中間画像Ｃ２’中の４点を用いて、当該中間画像Ｃ２’を、平行化前の元の空間に逆射影することによって、仮想視点ＰＣから本来見えるべき中間画像Ｃ２を生成する（Ｓ７１４〜Ｓ７１６）。以下に、図１８のビューモーフィング処理（Ｓ７００）について詳述する。
【０１０２】
図１８に示すように、まず、画像処理装置２０は、エピポーラ線３２０（図１９参照）を求めるための基礎行列Ｆを推定する（Ｓ７０２）。基礎行列Ｆは、２つの視点ＰＡ、ＰＢ間でのカメラ１０の相対的な位置及び姿勢を表す情報を含む行列であり、例えば８組以上の特徴点ＸＡ及び対応点ＸＢから求められる。図１９に示すように、原画像Ａの特徴点ＸＡに対応する原画像Ｂの対応点ＸＢは、原画像Ｂのエピポーラ線３２０Ｂ上に存在する。また、各原画像Ａ、Ｂにおける複数のエピポーラ線３２０Ａ、３２０Ｂは、１つのエピポール３２２Ａ、３２２Ｂを通る。
【０１０３】
以下に基礎行列Ｆの推定手法について説明する。基礎行列Ｆは下記の式（５）を満たす。
【０１０４】
【数２】
2010282295.tif 000004
・・・（５）
【０１０５】
なお、上記式（５）中のパラメータは次の通りである。
ｘ  ：視点ＰＡのカメラ座標系における特徴点ＸＡの座標
ｘ’：視点ＰＢのカメラ座標系における対応点ＸＢの座標
ｍ  ：視点ＰＡのカメラの画像座標系における特徴点ＸＡの座標
ｍ’：視点ＰＢのカメラの画像座標系における対応点ＸＢの座標
Ａ  ：視点ＰＡのカメラの内部パラメータ
Ａ’：視点ＰＢのカメラの内部パラメータ
Ｅ  ：基本行列
Ｆ  ：基礎行列
ｔ  ：視点ＰＡから視点ＰＢまでのベクトル
【０１０６】
基礎行列Ｆを推定する場合、例えば、基礎行列Ｆのランクは２（平行移動３、回転３）であり、スケールは任意であるので、基礎行列Ｆの全体の自由度は７である。従って、８組以上の特徴点ＸＡと対応点ＸＢが得られれば、線形解法により基礎行列Ｆを求めることができる。
【０１０７】
しかし、このように求めた基礎行列Ｆは、ランクが２であるという条件を一般的に満たさない。そこで、線形解法で求めた基礎行列Ｆに最も近い、ランクが２である行列Ｆ’を最終的な基礎行列とする。下記式（６）のように、基礎行列Ｆを特異値分解する。
【０１０８】
【数３】
2010282295.tif 000005
・・・（６）
Σ      ：特異値の対角行列（σ１＞σ２＞σ３）
Ｕ，Ｖ  ：直交行列
【０１０９】
ここで、基礎行列のランクを２に設定するために、σ３＝０として、下記式（７）で、行列Ｆ’を計算する。そして、この行列Ｆ’を最終的な基礎行列とする。
【０１１０】
【数４】
2010282295.tif 000006
・・・（７）
Σ’    ：特異値の対角行列（σ１＞σ２＞σ３）
Ｕ，Ｖ  ：直交行列
【０１１１】
また、基礎行列Ｆの推定では、ロバスト推定（Ｒｏｂｕｓｔ  Ｅｓｔｉｍａｔｉｏｎ）を利用できる。ＲＡＮＳＡＣ（Ｒａｎｄｏｍ  Ｓａｍｐｌｉｎｇ  Ｃｏｎｓｅｎｓｕｓ）を用いたロバスト推定は、以下の手順（１）〜（５）で行われる。このＲＡＮＳＣは、特徴点の一部に極端な外れ値がある場合に有効である。
【０１１２】
（１）ランダムサンプリングによって、８組以上の特徴点ＸＡ、ＸＢを取得する。
（２）サンプリングされた８組以上の特徴点ＸＡ、ＸＢから基礎行列を推定する。
（３）求めた基礎号列を用いて全ての特徴点ＸＡ、ＸＢの誤差を求め、誤差が閾値以下の特徴点ＸＡ、ＸＢの数をその基礎行列の評価値とする。
（４）上記（１）〜（３）を十分な回数繰り返し、評価値が最大となる基礎行列を求める。
（５）評価値が最大となる基礎行列に対する誤差が閾値以上となる特徴点ＸＡ、ＸＢを外れ値と判定し、それらを除外して基礎行列Ｆを決定する。
【０１１３】
また、ＬＭｅｄｓ（Ｌｅａｓｔ  Ｍｅｄｉａｎ  ｏｆ  Ｓｑｕａｒｅｓ）を用いたロバスト推定は、以下の手順（１）〜（５）で行われる。このＬＭｅｄｓは、特徴点の誤差範囲が不明である場合に有効である。
【０１１４】
（１）ランダムサンプリングによって、８組以上の特徴点ＸＡ、ＸＢを取得する。
（２）サンプリングされた８組以上の特徴点ＸＡ、ＸＢから基礎行列を推定する。
（３）求めた基礎号列を用いて全ての特徴点ＸＡ、ＸＢの誤差を求め、誤差の中央値をその基礎行列の評価値とする。
（４）上記（１）〜（３）を十分な回数繰り返し、評価値が最大となる基礎行列を求める。
（５）評価値が最大となる基礎行列に対する誤差が閾値以上となる特徴点ＸＡ、ＸＢを外れ値と判定し、それらを除外して基礎行列Ｆを決定する。
【０１１５】
以上、Ｓ７０２において基礎行列Ｆを推定する方法について例示した。
【０１１６】
次いで、図１８に戻り、画像処理装置２０は、Ｓ７０２で推定した基礎行列Ｆの固有値及び固有ベクトルに基づいて、原画像Ａ、Ｂのエピポール３２２を求め（Ｓ７０６）、さらに、エピポーラ線３２０を求める（Ｓ７０６）。
【０１１７】
さらに、画像処理装置２０は、上記Ｓ７０６、Ｓ７０８で求めたエピポール３２２及びエピポーラ線３２０に基づいて、Ｐｒｅｗａｒｐ行列を推定する（Ｓ７０８）。次式（８）はＰｒｅｗａｒｐ行列を表す。
【０１１８】
【数５】
2010282295.tif 000007
【０１１９】
また、上記式（８）のＰｒｅｗａｒｐ行列は、以下の式（９）〜（１３）に示す計算式により求められる。
【０１２０】
【数６】
2010282295.tif 000008
【０１２１】
【数７】
2010282295.tif 000009
【０１２２】
【数８】
2010282295.tif 000010
【０１２３】
【数９】
2010282295.tif 000011
【０１２４】
【数１０】
2010282295.tif 000012
Ｔ：原画像Ａ、Ｂのエピポーラ線３２０Ａ、３２０Ｂの高さを合わせるための行列
【０１２５】
次いで、画像処理装置２０は、Ｓ７０８で求めたＰｒｅｗａｒｐ行列を用いて、図２及び図３に示したように、２つの原画像Ａ、Ｂを平行化（Ｐｒｅｗａｒｐ）処理する（Ｓ７１０）。これにより、２つの原画像Ａ、Ｂのエピポーラ線３０２Ａ、３２０Ｂが相互に平行になる。
【０１２６】
その後、画像処理装置２０は、図４に示したように、平行化された原画像Ａ’、Ｂ’に対して通常モーフィング処理を行って中間画像Ｃ２’を生成する（Ｓ７１４）。次いで、画像処理装置２０は、例えば中間画像Ｃ２’中の４点を用いて、射影変換行列Ｈ３（Ｐｏｓｔｗａｒｐ行列）を推定する（Ｓ７１４）。さらに、画像処理装置２０は、図４に示したように、射影変換行列Ｈ３を用いて、中間画像Ｃ２’を、平行化前の元の空間における仮想視点ＰＣから見える画像に逆射影することによって、仮想視点ＰＣから見える中間画像Ｃ２を生成する（Ｓ７１６）。
【０１２７】
以上、本実施形態に係るビューモーフィング処理（Ｓ７００）について説明した。ビューモーフィング処理では、カメラ幾何を考慮して、原画像Ａ、Ｂの平行化処理を伴うモーフィングを行うために、上記のような行列演算や特異値分解、ロバスト推定などの計算処理を行う。このため、計算コストが高い反面、２つの視点ＰＡ、ＰＢ間でのカメラ１０の相対的な位置関係にかかわらず、歪みのない中間画像Ｃ２を適切に生成できるという利点がある。
【０１２８】
［４．まとめ］
以上、本実施形態に係る画像処理装置２０による画像処理方法について説明した。上記のように、カメラ幾何を考慮したビューモーフィング処理（Ｓ７００）では、歪みのない中間画像Ｃ２が得られるものの、例えば、ロバスト推定や特異値分解などの計算コストが大きな処理が必要となる。
【０１２９】
そこで、本実施形態に係る画像処理装置２０は、原画像Ａ中の直線エッジ３１０を検出し（Ｓ３００）、通常モーフィング処理（Ｓ５００）により生成された中間画像Ｃ３（２値画像）における直線エッジ３１０に対応する対応エッジ３１２の歪みを検出する（Ｓ６００）。この結果、対応エッジ３１２に歪みがある場合にのみ、画像処理装置２０は、さらにビューモーフィング処理（Ｓ７００）を実行して、歪みのない中間画像Ｃ２を生成する。一方、対応エッジ３１２に歪みがない場合には、画像処理装置２０は、ビューモーフィング処理（Ｓ７００）を実行することなく、通常モーフィング処理（Ｓ４００）で生成された中間画像Ｃ１を出力画像とする。
【０１３０】
このように本実施形態では、２値化された中間画像Ｃ３中の対応エッジ３１２の歪みの有無に応じて、適宜通常モーフィング処理（Ｓ４００）とビューモーフィング処理（Ｓ７００）を切り替える。これにより、全ての入力画像（原画像Ａ、Ｂ）に対して、ビューモーフィング処理（Ｓ７００）を行うのではなく、通常モーフィング処理（Ｓ４００）でも中間画像Ｃ１に歪みが生じない場合は、通常モーフィング処理（Ｓ４００）のみを行う。従って、２つの視点ＰＡ、ＰＢ間のカメラ１０の相対位置関係にかかわらず、当該視点ＰＡ、ＰＢの原画像Ａ、Ｂから、歪みのない自然な中間画像Ｃを生成することができるとともに、計算コストが高いビューモーフィング処理（Ｓ７００）を行う回数を最小限に抑え、全体としての計算コストを抑制できる。特に、処理能力が低いプロセッサが搭載された電子機器（例えば、デジタルカメラなどの携帯機器）にモーフィング技術を実装する場合に、本実施形態に係る手法は有効である。
また、
【０１３１】
＜第２の実施形態＞
次に、図２０を参照して、本発明の第２の実施形態に係る画像処理装置２０による画像処理方法について説明する。図２０は、第２の実施形態に係る画像処理方法を示すフローチャートである。なお、第２の実施形態は、第１の実施形態に係る画像処理方法（図７参照。）と比べて、通常モーフィング処理（カラー画像）を実行するタイミングが相違し、その他の機能構成は第１の実施形態と実質的に同一であるのでその詳細説明は省略する。
【０１３２】
図２０に示すように、第２の実施形態に係る画像処理方法は、まず、原画像Ａ、Ｂに対して特徴点抽出処理（Ｓ１００）及び対応点探索処理（Ｓ２００）を行った後に、原画像Ａに対して直線エッジ検出処理（Ｓ３００）を行う。次いで、２値化された原画像Ａ、Ｂに対して通常モーフィング処理を行って、中間画像Ｃ３（２値画像）を生成する（Ｓ５００）。
【０１３３】
その後、中間画像Ｃ３内の対応エッジ３１２に歪みがあるか否かを検出する（Ｓ６００）。この結果、対応エッジ３１２に歪みがある場合には、原画像Ａ、Ｂに対してビューモーフィング処理（Ｓ７００）を実行して、中間画像Ｃ２（カラー画像）を生成する。一方、対応エッジ３１２に歪みがない場合には、原画像Ａ、Ｂに対して通常モーフィング処理（Ｓ８００）を実行して、中間画像Ｃ１（カラー画像）を生成する。この図２０の通常モーフィング処理（Ｓ８００）は、第１の実施形態に係る通常モーフィング処理（Ｓ４００）と同様である。
【０１３４】
以上のように第２の実施形態では、まず、通常モーフィング処理（Ｓ５００）により生成した中間画像Ｃ３（２値画像）における対応エッジ３１２の歪みを検出し、歪みの有無に応じて、ビューモーフィング処理（Ｓ７００）と通常モーフィング処理（Ｓ８００）を切り替えて実行する。これにより、第２の実施形態は、第１の実施形態よりもさらに計算コストを低減できる。
【０１３５】
つまり、図７に示した第１の実施形態では、カラー画像用の通常モーフィング処理（Ｓ４００）と２値画像用の通常モーフィング処理（Ｓ５００）を行ってから、歪み検出処理（Ｓ６００）を行っていた。このフローでは、もし歪み検出処理（Ｓ６００）で中間画像Ｃ３に歪みが検出された場合には、ビューモーフィング処理（Ｓ７００）を行うので、既に実行済みの通常モーフィング処理（Ｓ５００）が無駄になってしまう。
【０１３６】
これに対し、図２０に示す第２の実施形態では、カラー画像用の通常モーフィング処理を行うことなく、２値画像用の通常モーフィング処理（Ｓ５００）と歪み検出処理（Ｓ６００）を行い、中間画像Ｃ３に歪みがない場合に初めて、カラー画像用の通常モーフィング処理（Ｓ８００）を行う。一方、中間画像Ｃ３に歪みがある場合には、ビューモーフィング処理（Ｓ７００）のみを行って、カラー画像用の通常モーフィング処理（Ｓ８００）を行わない。よって、第２の実施形態は、中間画像Ｃ３に歪みがある場合に、カラー画像用の通常モーフィング処理（Ｓ８００）を無駄に実行しなくても済むので、第１の実施形態と比べて、通常モーフィング処理（Ｓ８００）に要する計算コストを低減できる。
【０１３７】
以上、添付図面を参照しながら本発明の好適な実施形態について詳細に説明したが、本発明はかかる例に限定されない。本発明の属する技術の分野における通常の知識を有する者であれば、特許請求の範囲に記載された技術的思想の範疇内において、各種の変更例または修正例に想到し得ることは明らかであり、これらについても、当然に本発明の技術的範囲に属するものと了解される。
【符号の説明】
【０１３８】
１    オブジェクト
１０    カメラ
１１、１２  光軸
１３    基線
２０    画像処理装置
１００    記憶部
１０２    特徴点抽出部
１０４    対応点探索部
１０６    直線エッジ検出部
１０８    通常モーフィング処理部
１１０    歪み判定部
１１２    ビューモーフィング処理部
１１４    表示部
３０４    直線
３１０    直線エッジ
３１２    対応エッジ
３１４    画像領域
３２０    エピポーラ線
３２２    エピポール
Ａ、Ｂ  原画像
Ｃ１、Ｃ２、Ｃ３    中間画像
ＰＡ、ＰＢ    視点
Ｐｃ    仮想視点
ＸＡ    特徴点
ＸＢ    対応点
【図１】
2010282295.tif 000013
【図２】
2010282295.tif 000014
【図３】
2010282295.tif 000015
【図４】
2010282295.tif 000016
【図５】
2010282295.tif 000017
【図６】
2010282295.tif 000018
【図７】
2010282295.tif 000019
【図８】
2010282295.tif 000020
【図９】
2010282295.tif 000021
【図１０】
2010282295.tif 000022
【図１１】
2010282295.tif 000023
【図１２】
2010282295.tif 000024
【図１３】
2010282295.tif 000025
【図１４】
2010282295.tif 000026
【図１５】
2010282295.tif 000027
【図１６】
2010282295.tif 000028
【図１７】
2010282295.tif 000029
【図１８】
2010282295.tif 000030
【図１９】
2010282295.tif 000031
【図２０】
2010282295.tif 000032