(57)【要約】【課題】消失点の推定精度を向上すること。【解決手段】入力された画像に含まれる直線を検出し、直線の中から、略垂直の直線である垂直方向直線を検出し、画像に含まれる直線のうち垂直方向直線ではない直線である非垂直方向直線と、垂直方向直線との組合せのうち、その端点同士の距離が閾値よりも短い組合せを組合せ候補として検出し、組合せ候補の中から、垂直方向直線と非垂直方向直線とが類似している組合せ候補を消失線組合せとして選択し、選択された複数の消失線組合せにおける、複数の非垂直方向直線に基づいて消失点の位置を推定する。【選択図】図１
2013080389.tif 000002
【特許請求の範囲】
【請求項１】
コンピュータが、
入力された画像に含まれる直線を検出する直線検出ステップと、
前記直線の中から、略垂直の直線である垂直方向直線を検出する垂直方向直線検出ステップと、
前記画像に含まれる直線のうち前記垂直方向直線ではない直線である非垂直方向直線と、前記垂直方向直線との組合せのうち、その端点同士の距離が閾値よりも短い組合せを組合せ候補として検出する組合せ候補検出ステップと、
前記組合せ候補の中から、前記垂直方向直線と前記非垂直方向直線とが類似している組合せ候補を消失線組合せとして選択する消失線組合せ選択ステップと、
選択された複数の消失線組合せにおける、複数の前記非垂直方向直線に基づいて消失点の位置を推定する位置推定ステップと、
を有する消失点推定方法。
【請求項２】
前記組合せ候補検出ステップは、前記コンピュータが、
入力された画像における消失点のおおよその位置を推定するシーン推定ステップと、
前記おおよその位置に基づいて、入力された画像における消失点の方向に伸びる直線の特徴を判定し、前記特徴を有する前記非垂直方向直線を選択する非垂直方向直線選択ステップと、
選択された前記非垂直方向直線と、前記垂直方向直線との組合せのうち、その端点同士の距離が閾値よりも短い組合せを組合せ候補として検出する候補検出ステップと、
を有する、請求項１に記載の消失点推定方法。
【請求項３】
入力された画像に含まれる直線を検出する直線検出部と、
前記直線の中から、略垂直の直線である垂直方向直線を検出する垂直方向直線検出部と、
前記画像に含まれる直線のうち前記垂直方向直線ではない直線である非垂直方向直線と、前記垂直方向直線との組合せのうち、その端点同士の距離が閾値よりも短い組合せを組合せ候補として検出する組合せ候補検出部と、
前記組合せ候補の中から、前記垂直方向直線と前記非垂直方向直線とが類似している組合せ候補を消失線組合せとして選択する消失線組合せ選択部と、
選択された複数の消失線組合せにおける、複数の前記非垂直方向直線に基づいて消失点の位置を推定する位置推定部と、
を備える消失点推定装置。
【請求項４】
前記組合せ候補検出部は、
入力された画像における消失点のおおよその位置を推定するシーン推定部と、
前記おおよその位置に基づいて、入力された画像における消失点の方向に伸びる直線の特徴を判定し、前記特徴を有する前記非垂直方向直線を選択する非垂直方向直線選択部と、
選択された前記非垂直方向直線と、前記垂直方向直線との組合せのうち、その端点同士の距離が閾値よりも短い組合せを組合せ候補として検出する候補検出部と、
を備える、請求項３に記載の消失点推定装置。
【請求項５】
コンピュータに対し請求項１又は請求項２に記載の各ステップを実行させるためのコンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像の消失点を推定する技術に関する。
【背景技術】
【０００２】
近年、消失点に基づいて、奥行き情報が与えられていない画像から奥行き情報を推定する技術が提案されている。例えば、非特許文献１に記載の技術では、消失点の位置に基づいて三次元情報が復元される。そのため、画像の消失点の位置を推定する技術が要求されている。
【先行技術文献】
【非特許文献】
【０００３】
【非特許文献１】池田  直樹、他２名、“１枚の画像からの３次元復元の統計的最適化”、情報処理学会研究報告、ＣＶＩＭ，２００４年１１月１１−１２日、ｐｐ．１１７−１２４
【発明の概要】
【発明が解決しようとする課題】
【０００４】
一般的に画像中には消失点を形成する直線（例えば天井や壁などの縁）以外にも様々な直線が存在する。そのため、消失点を形成する直線以外の直線に基づいて消失点の推定を行うと、誤った消失点が得られてしまうおそれがあった。
【０００５】
上記事情に鑑み、本発明は、画像の消失点の推定精度を向上させる技術の提供を目的としている。
【課題を解決するための手段】
【０００６】
本発明の一態様は、コンピュータが、入力された画像に含まれる直線を検出する直線検出ステップと、前記直線の中から、略垂直の直線である垂直方向直線を検出する垂直方向直線検出ステップと、前記画像に含まれる直線のうち前記垂直方向直線ではない直線である非垂直方向直線と、前記垂直方向直線との組合せのうち、その端点同士の距離が閾値よりも短い組合せを組合せ候補として検出する組合せ候補検出ステップと、前記組合せ候補の中から、前記垂直方向直線と前記非垂直方向直線とが類似している組合せ候補を消失線組合せとして選択する消失線組合せ選択ステップと、選択された複数の消失線組合せにおける、複数の前記非垂直方向直線に基づいて消失点の位置を推定する位置推定ステップと、を有する消失点推定方法である。
【０００７】
本発明の一態様は、上記の消失点推定方法であって、前記組合せ候補検出ステップは、前記コンピュータが、入力された画像における消失点のおおよその位置を推定するシーン推定ステップと、前記おおよその位置に基づいて、入力された画像における消失点の方向に伸びる直線の特徴を判定し、前記特徴を有する前記非垂直方向直線を選択する非垂直方向直線選択ステップと、選択された前記非垂直方向直線と、前記垂直方向直線との組合せのうち、その端点同士の距離が閾値よりも短い組合せを組合せ候補として検出する候補検出ステップと、を有する。
【０００８】
本発明の一態様は、入力された画像に含まれる直線を検出する直線検出部と、前記直線の中から、略垂直の直線である垂直方向直線を検出する垂直方向直線検出部と、前記画像に含まれる直線のうち前記垂直方向直線ではない直線である非垂直方向直線と、前記垂直方向直線との組合せのうち、その端点同士の距離が閾値よりも短い組合せを組合せ候補として検出する組合せ候補検出部と、前記組合せ候補の中から、前記垂直方向直線と前記非垂直方向直線とが類似している組合せ候補を消失線組合せとして選択する消失線組合せ選択部と、選択された複数の消失線組合せにおける、複数の前記非垂直方向直線に基づいて消失点の位置を推定する位置推定部と、を備える消失点推定装置である。
【０００９】
本発明の一態様は、上記の消失点推定装置であって、前記組合せ候補検出部は、入力された画像における消失点のおおよその位置を推定するシーン推定部と、前記おおよその位置に基づいて、入力された画像における消失点の方向に伸びる直線の特徴を判定し、前記特徴を有する前記非垂直方向直線を選択する非垂直方向直線選択部と、選択された前記非垂直方向直線と、前記垂直方向直線との組合せのうち、その端点同士の距離が閾値よりも短い組合せを組合せ候補として検出する候補検出部と、を備える。
【００１０】
本発明の一態様は、コンピュータに対し上述した各ステップを実行させるためのコンピュータプログラムである。
【発明の効果】
【００１１】
本発明により、画像の消失点の推定精度の向上が可能となる。
【図面の簡単な説明】
【００１２】
【図１】消失点推定装置の第一実施形態の機能構成を表す概略ブロック図である。
【図２】直線検出部の処理の概略を示す図である。
【図３】垂直方向直線検出部の処理結果を示す画像の具体例である。
【図４】第二実施形態における組合せ候補検出部の機能構成を示す概略ブロック図である。
【図５】シーン分類の概略を示す図である。
【図６】シーン分類の概略を示す図である。
【図７】シーン推定部の推定処理の概略を示す図である。
【図８】フィードバック処理の具体例を示す図である。
【発明を実施するための形態】
【００１３】
［概要］
消失点推定装置は、画像を解析することによって、画像の消失点の位置を推定する。具体的な処理は以下の通りである。まず、消失点推定装置は、画像に含まれる直線のうち、垂直に近い方向に伸びる直線（以下、「垂直方向直線」という。）を検出する。次に、消失点推定装置は、画像に含まれる直線のうち、垂直方向直線ではない直線（以下、「非垂直方向直線」という。）と、垂直方向直線との組合せのうち、その端点同士の距離が閾値よりも短い組合せ（以下、「組合せ候補」という。）を検出する。消失点推定装置は、組合せ候補の中から、それらの直線の類似性に基づいて、所定の条件を満たす組合せ候補を消失線組合せとして選択する。そして、消失点推定装置は、選択された複数の消失線組合せにおける、複数の非垂直方向直線に基づいて消失点の位置を推定する。
【００１４】
［第一実施形態］
次に、消失点推定装置の詳細について説明する。
図１は、消失点推定装置の第一実施形態の機能構成を表す概略ブロック図である。消失点推定装置１００は、バスで接続されたＣＰＵ（Central Processing Unit）やメモリや補助記憶装置などを備え、消失点推定プログラムを実行する。消失点推定装置１００は、このプログラムを実行することによって、画像入力部１０１、直線検出部１０２、垂直方向直線検出部１０３、組合せ候補検出部１０４、消失線組合せ選択部１０５、位置推定部１０６、出力部１０７を備える装置として機能する。なお、消失点推定装置１００の各機能の全て又は一部は、ＡＳＩＣ（Application Specific Integrated Circuit）やＰＬＤ（Programmable Logic Device）やＦＰＧＡ（Field Programmable Gate Array）等のハードウェアを用いて実現されても良い。消失点推定プログラムは、コンピュータ読み取り可能な記録媒体に記録されても良い。コンピュータ読み取り可能な記録媒体とは、例えばフレキシブルディスク、光磁気ディスク、ＲＯＭ、ＣＤ−ＲＯＭ等の可搬媒体、コンピュータシステムに内蔵されるハードディスク等の記憶装置である。消失点推定プログラムは、電気通信回線を介して通信されても良い。
【００１５】
画像入力部１０１は、消失点推定装置１００に対して入力される画像のデータを受け付ける。画像入力部１０１は、例えばＣＤ−ＲＯＭやＵＳＢメモリ（Universal Serial Bus Memory）等の記録媒体に記録された画像のデータを読み出しても良い。また、画像入力部１０１は、スチルカメラやビデオカメラによって撮像された画像を、カメラから受信しても良い。また、消失点推定装置１００がスチルカメラやビデオカメラに内蔵されている場合は、画像入力部１０１は撮像された画像又は撮像前の画像をバスから受信しても良い。また、画像入力部１０１は、ネットワークを介して他の情報処理装置から画像のデータを受信しても良い。画像入力部１０１は、画像のデータの入力を受けることが可能な構成であれば、さらに異なる態様で構成されても良い。画像入力部１０１によって入力が受け付けられた画像を、「入力画像」という。
【００１６】
直線検出部１０２は、入力画像から直線を検出する。垂直方向直線検出部１０３は、直線検出部１０２によって検出された複数の直線の中から、垂直に近い方向に伸びる直線を検出する。組合せ候補検出部１０４は、非垂直方向直線と垂直方向直線との組合せのうち、その端点同士の距離が閾値よりも短い組合せを組合せ候補として検出する。消失線組合せ選択部１０５は、組合せ候補の中から、垂直方向直線と非垂直方向直線とが類似している組合せ候補を消失線組合せとして選択する。位置推定部１０６は、選択された複数の消失線組合せにおける、複数の非垂直方向直線に基づいて、消失点の位置を推定する。出力部１０７は、位置推定部１０６による推定結果を出力する。
【００１７】
次に、直線検出部１０２の処理について詳細に説明する。図２は、直線検出部１０２の処理の概略を示す図である。図２Ａは入力画像の具体例であり、図２Ｂは直線検出結果を示す画像の具体例である。直線検出部１０２は、入力画像からエッジを抽出し、一繋がりのエッジを一本の直線として検出する。エッジの抽出は、例えばＣａｎｎｙエッジ検出器を用いて行われても良いし、Ｈｏｕｇｈ変換を用いて行われても良いし、他の方法によって行われても良い。Ｃａｎｎｙエッジ検出器には、例えば以下の文献に開示される技術が適用されても良い。Canny, J., A Computational Approach To Edge Detection, IEEE Trans. Pattern Analysis and Machine Intelligence, 8:679-714, 1986。
【００１８】
次に、垂直方向直線検出部１０３の処理について詳細に説明する。垂直方向直線検出部１０３は、直線検出部１０２によって検出された直線毎にその角度を算出する。例えば、垂直方向直線検出部１０３は、画像の横軸をｘ軸、縦軸をｙ軸としたときの各直線とｘ軸との角度を算出する。そして、垂直方向直線検出部１０３は、算出された角度と９０度との差が角度閾値（例えば２０度）以下の直線を、垂直方向直線として検出する。角度閾値は、予め垂直方向直線検出部１０３に記憶されている値である。図３は、垂直方向直線検出部１０３の処理結果を示す画像の具体例である。このような処理によって、垂直方向直線検出部１０３は、垂直に近い直線を、床と天井、あるいは地面と空を結ぶ直線として抽出する。
【００１９】
次に、組合せ候補検出部１０４の処理について詳細に説明する。組合せ候補検出部１０４は、垂直方向直線検出部１０３によって検出された垂直方向直線と、非垂直方向直線との組合せ毎に、最も近い端点同士の距離を算出する。そして、組合せ候補検出部１０４は、算出された距離が端点距離閾値（例えば３ピクセル）以下となる組合せを、組合せ候補として検出する。端点距離閾値は、予め組合せ候補検出部１０４に記憶されている値である。
【００２０】
次に、消失線組合せ選択部１０５の処理について詳細に説明する。消失線組合せ選択部１０５は、組合せ候補毎に、同一の物体によって生じた直線（エッジ部分）であるか否か判定する。同一の物体によって生じた垂直方向直線と非垂直方向直線の組合せにおける非垂直方向直線は、画面内の矩形の縁によって生じた直線の組合せである可能性が高い。そのため、上述した非垂直方向直線は、画面の消失点を構成する直線（消失線）である可能性が一般的に高いと言える。したがって、消失線組合せ選択部１０５が、組合せ候補の中から、同一の物体によって生じた直線の組合せである組合せ候補を選択することによって、消失線を精度良く抽出することが可能となる。
【００２１】
消失線組合せ選択部１０５の処理について、図２の具体例を用いて説明する。例えば、画像中に壁面２０１（図２Ａ）が存在する場合には、この壁面２０１の縁には直線が生じる。具体的には、壁面２０１の繋ぎ目には垂直方向直線２０１ａが生じ、壁面２０１と天井との境目には非垂直方向直線２０１ｂが生じる。これらの二つの直線は、同一の物体（壁面２０１）によって生じた直線である。そのため、これらの二つの直線におけるそれぞれの画素値（例えば入力画像におけるＲＧＢ値など）やエッジ強度などは類似する。したがって、消失線組合せ選択部１０５は、画素値やエッジ強度の類比を比較することによって、組合せ候補の中から同一の物体によって生じた直線の組合せを選択することができる。
【００２２】
以下、消失線組合せ選択部１０５のより詳細な処理の具体例について説明する。消失線組合せ選択部１０５は、例えばバタチャリヤ距離（Bhattacharyya Distance）を算出することによって消失線組合せを選択しても良い。バタチャリヤ距離は、二つの分布間の距離を表す。より詳細には、バタチャリヤ距離とは、二つの分布をそれぞれ独立の事象と見なした場合に、この二つの事象が同時に生じる確率（同時確率）に対する自己情報量として定義される距離である。
【００２３】
具体的な処理は以下の通りである。消失線組合せ選択部１０５は、組合せ候補毎に、垂直方向直線と非垂直方向直線との画素値のヒストグラムを生成する。垂直方向直線のヒストグラムをｈｉｓｔａとし、非垂直方向直線のヒストグラムをｈｉｓｔｂと表す。この場合、両者のバタチャリヤ距離は、以下の式１及び式２で表される。
【００２４】
【数１】
2013080389.tif 000003
【数２】
2013080389.tif 000004
【００２５】
消失線組合せ選択部１０５は、算出されたバタチャリヤ距離がバタチャリヤ閾値よりも小さい組合せ候補を、消失線組合せとして選択する。バタチャリヤ閾値は、予め消失線組合せ選択部１０５に記憶されている値である。
【００２６】
次に、位置推定部１０６の処理について詳細に説明する。位置推定部１０６は、複数の消失線組合せに含まれる複数の非垂直方向直線に基づいて、消失点の位置を推定する。以下に、位置推定部１０６の処理についていくつかのパターンを説明する。
位置推定部１０６は、消失線組合せの中から二つの消失線組合せを選択し、それらの非垂直方向直線の交点を消失点として算出しても良い。
【００２７】
位置推定部１０６は、消失線組合せの中から３以上の消失線組合せを選択し、選択された複数の垂直線方向直線同士の交点の重心や平均を消失点として算出しても良い。
位置推定部１０６は、消失線組合せの中から二つの消失線組合せを選択し、その交点を求める。次に、位置推定部１０６は、その交点を通過する非垂直方向直線を、消失線組合せの中から検出し、その数をその交点の得票数とする。位置推定部１０６は、全ての交点について得票数を取得し、得票数の一番多い交点を消失点として算出しても良い。
位置推定部１０６は、非垂直方向直線の長さを信頼度とみなし、最も信頼度が高い非垂直方向直線と二番目に信頼度が高い非垂直方向直線との交点を消失点として算出しても良い。
【００２８】
消失点推定装置１００は、入力画像に含まれる直線のうち、消失点を形成すると推定される非垂直方向直線のみを用いて交点を算出し、算出結果を消失点であると推定する。そのため、消失点の推定精度を向上させることが可能となる。
より具体的には以下の通りである。建物の壁等には、長方形や正方形の窓やドアやポスターのように、矩形を形成する直線が数多く存在することが一般的である。そこで、消失点推定装置１００は、矩形を形成している可能性の高い直線の組合せ（消失線組合せ）を検出する。矩形を形成している可能性を表す指標は、例えば直線同士の端点の距離や、直線上の画素値などに基づいて算出される。そして、消失点推定装置１００は、選択された消失線組合せに含まれる非垂直方向直線に基づいて消失点を算出する。このような処理により、消失点を形成する直線を非垂直方向直線として精度良く選択することが可能となる。そのため、選択した非垂直方向直線に基づいて消失点の位置を推定することにより、消失点の推定精度を高めることが可能となる。したがって、消失点を形成する直線以外の直線の多い一枚の入力画像からであっても、消失点を精度良く推定することが可能となる。また、これによって、擬似的に立体画像を生成することはもちろん、奥行き推定値を用いて画像のセグメンテーションを行い、所望の領域を抽出することも可能となる。
【００２９】
＜変形例＞
消失線組合せ選択部１０５は、以下の式３に基づいてコストＣを算出し、コストＣがコスト閾値以下である組合せ候補を消失線組合せとして選択しても良い。コスト閾値は、予め消失線組合せ選択部１０５に記憶されている値である。
【数３】
2013080389.tif 000005
【００３０】
式３において、α及びβは、それぞれ任意の係数である。Ｄｅ（ｘ１，ｘ２）は、垂直方向直線ｘ１の端点と非垂直方向直線ｘ２の端点との距離のうち最小の値である。ｘ１の長さは、垂直方向直線の長さを表す。Ｄｂ（ｘ１，ｘ２）は、垂直方向直線ｘ１と非垂直方向直線ｘ２とのバタチャリヤ距離を表す。
【００３１】
［第二実施形値］
次に、消失点推定装置の第二実施形態について説明する。消失点推定装置の第二実施形態は、組合せ候補検出部の構成が第一実施形態の組合せ候補検出部１０４と異なり、他の構成は第一実施形態と同様である。そのため、以下の説明では、組合せ候補検出部についてのみ説明する。
【００３２】
図４は、第二実施形態における組合せ候補検出部１０４ａの機能構成を示す概略ブロック図である。組合せ候補検出部１０４ａは、シーン推定部４０１、非垂直方向直線選択部４０２、候補検出部４０３を備える。
シーン推定部４０１は、入力画像における消失点のおおよその位置を推定する。例えば、シーン推定部４０１は、消失点の位置が、画像内の左側又は画像外の左側、画像内の中央付近、画像内の右側又は画像外の右側、のいずれであるのかについて推定する。非垂直方向直線選択部４０２は、シーン推定部４０１によって推定された消失点の位置に応じて、入力画像内の非垂直方向直線の中から消失点を形成する可能性の高い非垂直方向直線（以下、「候補非垂直方向直線」という。）を選択する。候補検出部４０３は、候補非垂直方向直線と垂直方向直線との組合せのうち、その端点同士の距離が閾値よりも短い組合せを組合せ候補として検出する。
【００３３】
次に、シーン推定部４０１の処理について詳細に説明する。シーン推定部４０１には、複数のシーン分類と、各シーン分類における入力画像の特徴量と、各シーン分類における消失点の位置との対応付けが予め記憶されている。シーン推定部４０１は、入力画像の特徴量を算出し、予め記憶している特徴量と比較することによって、複数のシーン分類の中から一つのシーン分類を選択する。図５及び図６は、シーン分類の具体例を示す図である。図５に示されるように、建物の内部は一般的に左右の壁面Ａ，Ｃと、奥側の面Ｄと、天井面Ｂと床面Ｅとで構成される。
【００３４】
図５の視点ＶＡから矢印方向に撮影すると、図６Ａのように壁面Ａが右方向に向けて小さくなるように撮影される。すなわち、図６Ａの画像では、向かって左側の地面に垂直な壁面Ａと天井面Ｂで構成されているシーンが撮影されている。この場合、消失点は右方向（画像内の右側又は画像外の右側）に存在し、消失点へ向かう直線は右肩下がりの直線が多くなる。
【００３５】
図５の視点ＶＢから矢印方向に撮影すると、図６Ｂのように壁面Ａ、天井面Ｂ、右壁面Ｃなどが中心に向けて小さくなるように撮影される。図６Ｂの画像では、左右の地面に垂直な壁面Ａ及び壁面Ｃと天井面Ｂとで構成されているシーンが撮影されている。この場合、消失点は画像中央付近に存在し、消失点へ向かう直線は中心に向けた直線（言い換えれば、中心からの放射線）が多くなる。
【００３６】
図５の視点ＶＣから矢印方向に撮影すると、図６Ｃのように壁面Ｃが左方向に向けて小さくなるように撮影される。図６Ｃの画像では、向かって右側の地面に垂直な壁面Ｃと天井面Ｂで構成されているシーンが撮影されている。この場合、消失点は左方向（画像内の左側又は画像外の左側）に存在し、消失点へ向かう直線は左肩下がりの直線が多くなる。
シーン推定部４０１は、入力画像がいずれのシーン分類に属するか推定する。
なお、シーン分類として３種のシーンを説明したが、シーン分類は上述したものに限定される必要は無い。
【００３７】
図７は、シーン推定部４０１の推定処理の概略を示す図である。次に、図７を用いてシーン推定部４０１の推定処理の具体例について説明する。以下に説明する具体例では、シーン推定部４０１は教師付学習に基づいてシーン分類を推定する。ただし、以下に説明する代表微分値の組合せは、シーン構成を表現できる特徴量の一例にすぎず、他の値がシーン構成を表現できる特徴量として用いられても良い。
【００３８】
まず、前処理について説明する。シーン毎に複数枚の学習用画像が用意される。次に、学習用画像毎に複数の解像度の画像が作成される。次に、各画像が縦４横４の１６等分に分割される。以下の説明では、１６等分によって生じた１６個の画像を「部分画像」という。図７Ａは、１６等分にされた画像の具体例を示す図である。
【００３９】
次に、各部分画像について、各方向のエッジ成分を抽出した微分画像を作成する。図７Ｂの例では、縦方向（ｙ軸方向）のエッジ、横方向（ｘ軸方向）のエッジ、ｘ軸から４５度反時計回りに回転したエッジ、ｘ軸から４５度時計回りに回転したエッジ、の４種類の方向のエッジ成分を抽出した微分画像が生成される。この処理により、各部分画像について、方向毎に４種類の微分画像が生成される。
【００４０】
次に、各微分画像の代表微分値を算出する。代表微分値は各微分画像内の微分値の統計値（合計値や平均値や最頻値など）である。より具体的には、微分画像を二値化し、画素値が１（エッジ強度が強いことを示す値）の画素の数を代表微分値して用いても良い。また、微分画像を２５６階調の画像とし、各画素の値の合計値を代表微分値として用いても良い。また、微分画像を２５６階調の画像とし、画素値の平均値を代表微分値として用いても良い。
この時点で、一つの画像に対し、１６枚の部分画像が生成され、各部分画像について４枚の微分画像が生成され、微分画像毎に一つの代表微分値が算出されている。したがって、一つの画像に対し、１６×４＝６４個の代表微分値が算出されている。この代表微分値の数字の並びが、その画像の特徴量として用いられる。以上の処理が各解像度の画像毎に行われ、それぞれの特徴量が算出される。
【００４１】
次に、上述のようにして算出した各解像度の各学習用画像の特徴量に基づいて、シーン分類を推定するための識別器が作成される。図７Ｃは、識別器のモデルを表す図である。図７Ｄは、識別器による識別結果のパターンを表す図である。特徴量と、その特徴量が示すシーン分類とを教師データとして、ニューラルネットワークで学習させる。ニューラルネットワークとしては、例えば以下の文献に開示される技術が適用されても良い。コンピュータビジョン最先端ガイド２，  八木康史・齋藤英雄編，アドコム・メディア株式会社，2010年6月発行，p.96-98。また、識別器はニューラルネットワークに限定される必要は無く、例えばＳＶＭなど、他の識別器が用いられても良い。ＳＶＭとしては、例えば以下の文献に開示される技術が適用されても良い。コンピュータビジョン最先端ガイド２，  八木康史・齋藤英雄編，アドコム・メディア株式会社，2010年6月発行，p.108-113。
以上の処理が前処理である。
【００４２】
次に、シーン推定部４０１の処理について説明する。シーン推定部４０１は、以上のようにして前処理によって予め作成された識別器を用いて、シーン分類を行う。具体的には以下の通りである。シーン推定部４０１は、識別器を作成する処理（前処理）と同様にして、入力画像について特徴量を算出する。そして、シーン推定部４０１は、算出された特徴量と、予め設定された識別器と、に基づいて、入力画像のシーンを分類する。そして、シーン推定部４０１は、分類結果に基づいて、入力画像において消失点の存在する位置を推定する。
【００４３】
次に、非垂直方向直線選択部４０２の処理について詳細に説明する。非垂直方向直線選択部４０２は、シーン推定部４０１によって推定された消失点の位置に基づいて、消失点の方向に伸びる直線（消失線）が有する特徴を判定する。そして、判定した特徴を有する非垂直方向直線を、入力画像に含まれる非垂直方向直線の中から候補非垂直方向直線として選択する。
【００４４】
例えば、画像の右側に消失点がある場合（図６Ａの場合）、非垂直方向直線選択部４０２は、選択対象となる非垂直方向直線の特徴として、右肩下がりであると判定する。そして、入力画像に含まれる非垂直方向直線の中から右肩下がりの非垂直方向直線を選択する。例えば、右方向にｘ軸が伸び、上方向にｙ軸が伸びる座標系を想定した場合、非垂直方向直線選択部４０２はｙ＝ｆ（ｘ）の傾きが負である非垂直方向直線を選択する。
【００４５】
例えば、画像の中央に消失点がある場合（図６Ｂの場合）、非垂直方向直線選択部４０２は、選択対象となる非垂直方向直線の特徴として、画像の中心に向けて下がる直線であると判定する。そして、入力画像に含まれる非垂直方向直線の中から、画像の中心に向けて下がる非垂直方向直線を選択する。例えば、右方向にｘ軸が伸び、上方向にｙ軸が伸びる座標系を想定した場合、非垂直方向直線選択部４０２は、画面左側に位置する直線についてはｙ＝ｆ（ｘ）の傾きが負である非垂直方向直線を選択する。一方、非垂直方向直線選択部４０２は、画面右側に位置する直線については傾きが正である非垂直方向直線を選択する。
【００４６】
例えば、画像の左側に消失点がある場合（図６Ｃの場合）、非垂直方向直線選択部４０２は、選択対象となる非垂直方向直線の特徴として、左肩下がりであると判定する。そして、入力画像に含まれる非垂直方向直線の中から左肩下がりの非垂直方向直線を選択する。例えば、右方向にｘ軸が伸び、上方向にｙ軸が伸びる座標系を想定した場合、非垂直方向直線選択部４０２はｙ＝ｆ（ｘ）の傾きが正である非垂直方向直線を選択する。
【００４７】
次に、候補検出部４０３の処理について詳細に説明する。候補検出部４０３は、非垂直方向直線選択部４０２によって選択された候補非垂直方向直線と、垂直方向直線検出部１０３によって選択された垂直方向直線と、の組合せ毎に、最も近い端点同士の距離を算出する。そして、候補検出部４０３は、算出された距離が端点距離閾値（例えば３ピクセル）以下となる組合せを、組合せ候補として検出する。端点距離閾値は、予め候補検出部４０３に記憶されている値である。
【００４８】
このように構成された第二実施形態では、シーンの推定結果に応じて、非垂直方向直線が選択される。そのため、消失点を構成する消失線をより精度良く選択することが可能となる。その結果として、消失点の推定精度を向上させることが可能となる。
【００４９】
＜変形例＞
第二実施形態の消失点推定装置は、フィードバック処理を行うように構成されても良い。フィードバック処理では、位置推定部１０６によって算出された消失点の位置に基づいて、シーン推定部４０１は推定結果を修正する。具体的には、シーン推定部４０１は、位置推定部１０６によって算出された交点の位置が、シーンの推定結果に応じた消失点の位置と一致するか否か判定する。
【００５０】
図８は、フィードバック処理の具体例を示す図である。図８のシーンでは、消失点が、点８０１と、点８０２として二つ存在する。シーン推定部４０１によって、消失点が一つしか存在しないシーン分類であると推定されていた場合、シーン推定部４０１はフィードバック処理により図８のように消失点が二つ存在するシーン分類に推定結果を修正する。非垂直方向直線選択部４０２は、修正後の推定結果に基づいて、非垂直方向直線を選択する。その後、この選択結果に基づいて、消失点推定装置は消失点を推定する。
【００５１】
以上、この発明の実施形態について図面を参照して詳述してきたが、具体的な構成はこの実施形態に限られるものではなく、この発明の要旨を逸脱しない範囲の設計等も含まれる。
【符号の説明】
【００５２】
１００…消失点推定装置，  １０１…画像入力部，  １０２…直線検出部，  １０３…垂直方向直線検出部，  １０４…組合せ候補検出部，  １０５…消失線組合せ選択部，  １０６…位置推定部，  １０７…出力部，  ４０１…シーン推定部，  ４０２…非垂直方向直線選択部，  ４０３…候補検出部
【図１】
2013080389.tif 000006
【図４】
2013080389.tif 000007
【図５】
2013080389.tif 000008
【図８】
2013080389.tif 000009
【図２】
2013080389.tif 000010
【図３】
2013080389.tif 000011
【図６】
2013080389.tif 000012
【図７】
2013080389.tif 000013