(57)【要約】【課題】本発明は、カメラによる撮影画像を高精度に平行化することができる画像変換プログラム、装置及び方法を提供する。【解決手段】撮影画像には、被写体に付与された識別コードが写っている。撮影画像を平行化する画像変換プログラムは、複数の撮影画像について任意の代表画像と各従属画像との間の特徴点の点対応を計算する点対応計算手段と、点対応毎に、代表画像と各従属画像との間の平面射影変換行列を計算する平面射影変換行列計算手段と、各平面射影変換行列を用いて平行化パラメータを推定し、各平行化パラメータを用いて代表画像を俯瞰画像へ変換した複数の俯瞰画像候補を出力する俯瞰画像候補計算手段と、複数の俯瞰画像候補の中から、識別コードの画像的な読み取りに成功した俯瞰画像を、平行化された俯瞰画像として出力するコード読取判定手段として機能させる。【選択図】図２
2015233212.tif 000002
【特許請求の範囲】
【請求項１】
撮影画像を平行化するようにコンピュータを機能させる画像変換プログラムにおいて、
前記撮影画像には、被写体に付与された識別コードが写っており、
複数の撮影画像について任意の代表画像と各従属画像との間の特徴点の点対応を計算する点対応計算手段と、
点対応毎に、代表画像と各従属画像との間の平面射影変換行列を計算する平面射影変換行列計算手段と、
各平面射影変換行列を用いて平行化パラメータを推定し、各平行化パラメータを用いて代表画像を俯瞰画像へ変換した複数の俯瞰画像候補を出力する俯瞰画像候補計算手段と、
複数の俯瞰画像候補の中から、識別コードの画像的な読み取りに成功した俯瞰画像を、平行化された俯瞰画像として出力するコード読取判定手段と
してコンピュータを機能させることを特徴とする画像変換プログラム。
【請求項２】
前記俯瞰画像候補計算手段は、平行化パラメータ空間について局所最小解と判定された複数の平行化パラメータを推定する
ようにコンピュータを機能させることを特徴とする請求項１に記載の画像変換プログラム。
【請求項３】
前記俯瞰画像候補計算手段は、平行化パラメータ空間の中で一定距離以下に存在する複数の平行化パラメータが推定された場合、いずれか１つの平行パラメータのみを選択する
ようにコンピュータを機能させることを特徴とする請求項１又は２に記載の画像変換プログラム。
【請求項４】
前記俯瞰画像候補計算手段は、俯瞰画像候補同士の間で類似度を算出し、当該類似度が所定閾値以上となる俯瞰画像候補のみを選択する
ようにコンピュータを機能させることを特徴とする請求項１から３のいずれか１項に記載の画像変換プログラム。
【請求項５】
前記識別コードは、バーコード、ＱＲ(Quick Response)コード、ＯＣＲ(Optical Character Recognition)用文字又は線分のような幾何特徴画像である
ようにコンピュータを機能させることを特徴とする請求項１から４のいずれか１項に記載の画像変換プログラム。
【請求項６】
前記コード読取判定手段は、識別コードの画像的な読み取りが成功した俯瞰画像候補の中で、その信頼値が最も高い俯瞰画像を出力する
ようにコンピュータを機能させることを特徴とする請求項１から５のいずれか１項に記載の画像変換プログラム。
【請求項７】
前記コード読取判定手段は、識別コードの画像的な読み取りが成功したその識別データをアプリケーションへ出力する
ようにコンピュータを機能させることを特徴とする請求項１から６のいずれか１項に記載の画像変換プログラム。
【請求項８】
撮影画像を平行化する画像変換装置において、
前記撮影画像には、被写体に付与された識別コードが写っており、
複数の撮影画像について任意の代表画像と各従属画像との間の特徴点の点対応を計算する点対応計算手段と、
点対応毎に、代表画像と各従属画像との間の平面射影変換行列を計算する平面射影変換行列計算手段と、
各平面射影変換行列を用いて平行化パラメータを推定し、各平行化パラメータを用いて代表画像を俯瞰画像へ変換した複数の俯瞰画像候補を出力する俯瞰画像候補計算手段と、
複数の俯瞰画像候補の中から、識別コードの画像的な読み取りに成功した俯瞰画像を、平行化された俯瞰画像として出力するコード読取判定手段と
を有することを特徴とする画像変換装置。
【請求項９】
ユーザ操作の情報機器を用いて、撮影画像を平行化する画像変換方法において、
前記撮影画像には、被写体に付与された識別コードが写っており、
複数の撮影画像について任意の代表画像と各従属画像との間の特徴点の点対応を計算する第１のステップと、
点対応毎に、代表画像と各従属画像との間の平面射影変換行列を計算する第２のステップと、
各平面射影変換行列を用いて平行化パラメータを推定し、各平行化パラメータを用いて代表画像を俯瞰画像へ変換した複数の俯瞰画像候補を出力する第３のステップと、
複数の俯瞰画像候補の中から、識別コードの画像的な読み取りに成功した俯瞰画像を、平行化された俯瞰画像として出力する第４のステップと
を有することを特徴とする情報機器の画像変換方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、撮影画像を平行化する技術に関する。
【背景技術】
【０００２】
「撮影画像の平行化」とは、平面に対して斜めの角度から撮影された「撮影画像（カメラ画像）」を、垂直上方から見た「俯瞰画像」へ変換する技術をいう。これは、３次元復元技術の一種であって、撮影画像から被写体の２次元平面の幾何情報（平行線や直交線）を復元するものである。この技術によれば、俯瞰画像についてのみ保持される特定の幾何情報も簡易に検出することができる。また、俯瞰画像の生成と同時に、被写体に対する撮影姿勢も取得することができ、ＣＧ(Computer Graphics)を現実空間に重ね合わせて表示するＡＲ(Augmented Reality)システムに応用することもできる。
【０００３】
従来、カメラ画像と俯瞰画像との点対応を用いて、撮影画像を平行化する技術がある（例えば特許文献１参照）。この技術によれば、具体的には、被写体上に存在する既知の幾何形状とカメラ画像内形状との対応を用いて、最少４組の点対応から俯瞰画像へ変換する平面射影変換行列を計算する。例えば、正方形のマーカを被写体上に事前に設置することによって、正方形の４頂点に関して、俯瞰画像上の座標とカメラ画像上のピクセル座標との間で対応付けて簡易に平行化を実現する。
【０００４】
また、被写体上から検出された平行線を用いて、撮影画像を平行化する技術もある（例えば特許文献２参照）。この技術によれば、具体的には、平面上に存在する最少２組の平行線を検出し、この平行線を用いて、平面図上の無限遠直線に相当するカメラ画像中の消失線の位置を計算する。カメラ画像中の消失線とカメラの内部パラメータとから、被写体の法線方向を復元し、俯瞰画像を作成する。
【０００５】
前述した特許文献１及び２に記載の技術によれば、撮影画像（被写体）上に、特定の幾何形状や平行線が存在するものに限定されるという課題があった。
【０００６】
これに対し、多視点で撮影された各カメラ画像間の平面射影変換行列を用いて、撮影画像を平行化する技術もある（例えば非特許文献１、２、３参照）。この技術によれば、カメラ画像を複数枚用いるという点で、前述した特許文献１及び２に記載の技術とは大きく異なる。
【０００７】
図１は、従来技術における画像変換プログラムの機能構成図である。
【０００８】
非特許文献１に記載の技術によれば、具体的には、撮影画像の平行化パラメータと、各カメラ画像間の平面射影変換行列とに関して、コスト関数を予め定義している。その上で、カメラから入力された複数枚の撮影画像から、局所特徴量に基づく点対応を計算する（図１の点対応計算部に対応）。次に、その点対応から、平面射影変換行列を計算する（図１の平面射影変換行列計算部に対応）。そして、各平面射影変換行列を入力としてそれを最小化することにより、平行化パラメータを推定する。
【０００９】
この技術によれば、平面に関する事前情報を一切利用しないために、被写体上の幾何情報や平行線が存在しない場合であっても適用できる。例えば、被写体を斜め方向から撮影して得られるカメラ画像については、平面上で平行の関係にある２本の直線が平行ではなくなるため、平行線の検出が困難となるが、この技術によれば、このような場合であっても、撮影画像を平行化することができる。
【００１０】
平行化計算では、最適解を含む複数の平行化パラメータの解が得られる。平行化パラメータは、入力画像の平面射影変換に対応しており、最適解に基づく変換により正面方向から撮影された俯瞰画像が得られる。
【００１１】
また、非特許文献２に記載の技術によれば、各俯瞰画像候補について計算されるコスト値を比較し、最小のコスト値を有するものを最終的に得られる俯瞰画像として選択する（図１の俯瞰画像計算部に対応）。更に、非特許文献３に記載の技術によれば、最小のコスト値を有する俯瞰画像を出力する際の判定基準として、最小のコスト値に対する２番目に小さなコスト値の比率を使用する。
【先行技術文献】
【特許文献】
【００１２】
【特許文献１】特開２００６−１４６７６０号公報
【特許文献２】特許第４６１７９９３号公報
【非特許文献】
【００１３】
【非特許文献１】A. Ruiz, P. E. L. de Teruel, and L. Fernandez、Practical planar metric rectification. In Proc. BMVC 2006, 2006、[online]、［平成２６年６月３日検索］、インターネット＜URL: http://www.bmva.org/bmvc/2006/papers/188.pdf＞
【非特許文献２】C. Pirchheim and G. Reitmayr, “Homography-based planar mapping and tracking for mobile phones,” in Proceedings of the 10th IEEE and ACM International Symposium on Mixed and Augmented Reality (ISMAR ’11), 2011, pp. 27.36、[online]、［平成２６年６月３日検索］、インターネット＜URL:http://www.researchgate.net/publication/221221458_Homography-based_planar_mapping_and_tracking_for_mobile_phones＞
【非特許文献３】巻渕有哉，加藤晴久，柳原広昌，“マーカーレスARのための複数平面を利用したカメラ姿勢推定手法の検討，” 情報処理学会研究報告. [オーディオビジュアル複合情報処理] 2014-AVM-84(4), 1-6, 2014-02-14、[online]、［平成２６年６月３日検索］、インターネット＜URL:https://ipsj.ixsq.nii.ac.jp/ej/?action=pages_view_main&active_action=repository_view_main_item_detail&item_id=98561&item_no=1&page_id=13&block_id=8＞
【非特許文献４】「ホモグラフィの計算」、[online]、［平成２６年６月３日検索］、インターネット＜URL:http://tessy.org/wiki/index.php?%A5%DB%A5%E2%A5%B0%A5%E9%A5%D5%A5%A3%A4%CE%B7%D7%BB%BB＞
【非特許文献５】「活字文書ＯＣＲライブラリ」、[online]、［平成２６年６月３日検索］、インターネット＜URL:http://mediadrive.jp/products/library/katsuji_library/windows/index.html＞
【非特許文献６】「FAX OCR/スキャナー OCR「TeleForm」を構成する、高性能な4つのアプリケーション」、[online]、［平成２６年６月３日検索］、インターネット＜URL:http://www.hammock.jp/ocr/kinou/verifier.html＞
【発明の概要】
【発明が解決しようとする課題】
【００１４】
非特許文献１、２及び３に記載の技術によれば、平行化の精度がカメラ画像の枚数やカメラ画像間の点対応計算の精度に大きく依存し、誤った俯瞰画像候補が得られる場合がある。特に、非特許文献２及び３に記載の技術は、正確な俯瞰画像を判定するためにコスト値の比較では不十分であり、高精度の俯瞰画像が得られないとい課題がある。このような従来技術によれば、平行化パラメータ間の比較により最適解の判定をしており、誤った平行化パラメータが最適解として判定される可能性があった。
【００１５】
そこで、本発明は、カメラによる撮影画像を高精度に平行化することができる画像変換プログラム、装置及び方法を提供することを目的とする。
【課題を解決するための手段】
【００１６】
本発明によれば、撮影画像を平行化するようにコンピュータを機能させる画像変換プログラムにおいて、
撮影画像には、被写体に付与された識別コードが写っており、
複数の撮影画像について任意の代表画像と各従属画像との間の特徴点の点対応を計算する点対応計算手段と、
点対応毎に、代表画像と各従属画像との間の平面射影変換行列を計算する平面射影変換行列計算手段と、
各平面射影変換行列を用いて平行化パラメータを推定し、各平行化パラメータを用いて代表画像を俯瞰画像へ変換した複数の俯瞰画像候補を出力する俯瞰画像候補計算手段と、
複数の俯瞰画像候補の中から、識別コードの画像的な読み取りに成功した俯瞰画像を、平行化された俯瞰画像として出力するコード読取判定手段と
してコンピュータを機能させることを特徴とする。
【００１７】
本発明の画像変換プログラムにおける他の実施形態によれば、
俯瞰画像候補計算手段は、平行化パラメータ空間について局所最小解と判定された複数の平行化パラメータを推定する
ようにコンピュータを機能させることも好ましい。
【００１８】
本発明の画像変換プログラムにおける他の実施形態によれば、
俯瞰画像候補計算手段は、平行化パラメータ空間の中で一定距離以下に存在する複数の平行化パラメータが推定された場合、いずれか１つの平行パラメータのみを選択する
ようにコンピュータを機能させることも好ましい。
【００１９】
本発明の画像変換プログラムにおける他の実施形態によれば、
俯瞰画像候補計算手段は、俯瞰画像候補同士の間で類似度を算出し、当該類似度が所定閾値以上となる俯瞰画像候補のみを選択する
ようにコンピュータを機能させることも好ましい。
【００２０】
本発明の画像変換プログラムにおける他の実施形態によれば、
識別コードは、バーコード、ＱＲ(Quick Response)（登録商標）コード、ＯＣＲ(Optical Character Recognition)用文字又は線分のような幾何特徴画像である
ようにコンピュータを機能させることも好ましい。
【００２１】
本発明の画像変換プログラムにおける他の実施形態によれば、
コード読取判定手段は、識別コードの画像的な読み取りが成功した俯瞰画像候補の中で、その信頼値が最も高い俯瞰画像を出力する
ようにコンピュータを機能させることも好ましい。尚、信頼値は、コード読取判定手段が出力する読取り結果の確からしさを示す数値である。
【００２２】
本発明の画像変換プログラムにおける他の実施形態によれば、
コード読取判定手段は、識別コードの画像的な読み取りが成功したその識別データをアプリケーションへ出力する
ようにコンピュータを機能させることも好ましい。
【００２３】
本発明によれば、撮影画像を平行化する画像変換装置において、
撮影画像には、被写体に付与された識別コードが写っており、
複数の撮影画像について任意の代表画像と各従属画像との間の特徴点の点対応を計算する点対応計算手段と、
点対応毎に、代表画像と各従属画像との間の平面射影変換行列を計算する平面射影変換行列計算手段と、
各平面射影変換行列を用いて平行化パラメータを推定し、各平行化パラメータを用いて代表画像を俯瞰画像へ変換した複数の俯瞰画像候補を出力する俯瞰画像候補計算手段と、
複数の俯瞰画像候補の中から、識別コードの画像的な読み取りに成功した俯瞰画像を、平行化された俯瞰画像として出力するコード読取判定手段と
を有することを特徴とする。
【００２４】
本発明によれば、ユーザ操作の情報機器を用いて、撮影画像を平行化する画像変換方法において、
撮影画像には、被写体に付与された識別コードが写っており、
複数の撮影画像について任意の代表画像と各従属画像との間の特徴点の点対応を計算する第１のステップと、
点対応毎に、代表画像と各従属画像との間の平面射影変換行列を計算する第２のステップと、
各平面射影変換行列を用いて平行化パラメータを推定し、各平行化パラメータを用いて代表画像を俯瞰画像へ変換した複数の俯瞰画像候補を出力する第３のステップと、
複数の俯瞰画像候補の中から、識別コードの画像的な読み取りに成功した俯瞰画像を、平行化された俯瞰画像として出力する第４のステップと
を有することを特徴とする。
【発明の効果】
【００２５】
本発明の画像変換プログラム、装置及び方法によれば、カメラによる撮影画像を高精度に平行化することができる。
【図面の簡単な説明】
【００２６】
【図１】従来技術における画像変換プログラムの機能構成図である。
【図２】本発明における画像変換プログラムの機能構成図である。
【図３】バーコードが付与された被写体に対する斜め方向からの撮影画像である。
【図４】カメラを移動させながら撮影した複数枚の撮影画像である。
【図５】Homography行列に基づくinlier及びoutlierを表す画像対応図である。
【図６】離散化されたコスト値を白黒の濃淡で表すコスト値行列である。
【図７】各平行化パラメータに対応して表された３つの俯瞰画像候補である。
【図８】識別コードを読み取った識別データに対するアプリケーションの画面表示図である。
【発明を実施するための形態】
【００２７】
以下、本発明の実施の形態について、図面を用いて詳細に説明する。
【００２８】
図２は、本発明における画像変換プログラムの機能構成図である。
【００２９】
本発明における画像変換プログラムは、撮影画像を平行化するようにコンピュータを機能させるものであって、例えばスマートフォンやタブレットのような端末にインストールされて実行される。このような端末１は一般的に、周辺状況を撮影するカメラモジュール（Ｗｅｂカメラ）１０１と、ディスプレイ１０２とを有する。カメラモジュール１０１は、例えば連写や動画によって被写体を撮影した複数枚の画像を、画像変換プログラムへ出力する。尚、カメラモジュール１０１について、焦点距離や光軸のずれ、歪みパラメータ等の内部パラメータは、事前のキャリブレーションによって既知であるとする。
【００３０】
複数枚の画像は、１台のカメラで撮影されたものに限られず、複数の異なるカメラで異なる視点から撮影されたものであってもよい。また、それら複数枚の画像は、ユーザの所望の指示タイミングで撮影されたものであってもよい。これら撮影画像は、逐次的にバッファリングされるが、直前に入力された数枚（例えば５枚程度）のみに限定することによって使用メモリ量を節約することができる。
【００３１】
ディスプレイ１０２は、情報機器に組み込まれたものに限られず、外部に接続されたテレビや、パーソナルコンピュータ用ディプレイ、又はヘッドマウントディスプレイであってもよい。そのようなディスプレイには、平行化された俯瞰画像や、識別コードの識別データを表示することができる。
【００３２】
図３は、バーコードが付与された被写体に対する斜め方向からの撮影画像である。
図４は、カメラを移動させながら撮影した複数枚の撮影画像である。
【００３３】
本発明によれば、被写体に、視覚認識可能な「識別コード」が付加されていることを要する。そのため、撮影画像には、被写体に付与された識別コードが写り込むこととなる。識別コードとしては、例えばバーコード（１次元コード）、ＱＲコード（２次元コード）、ＯＣＲ用文字又は線分のような幾何特徴画像である。本発明によれば、このような識別コードは、その識別データの読み取りを主目的としたものではなく、撮影画像の平行化を主目的としたものである。勿論、識別コードの識別データの読み取りの用途に適用するものであってもよい。
【００３４】
画像変換プログラムは、点対応計算部１１と、平面射影変換行列計算部１２と、俯瞰画像候補計算部１３と、コード読取判定部１４とを有する。これら機能構成部は、装置に搭載されたコンピュータを機能させるプログラムを実行することによって実現される。尚、これら機能構成部は、画像変換装置の内部構造として理解できると共に、その処理の流れは、情報機器の画像変換方法としても理解できる。
【００３５】
［点対応計算部１１］
点対応計算部１１は、被写体（識別コードを含む）を撮影した複数の撮影画像それぞれから局所特徴量を抽出し、任意の代表画像の特徴点ｐと各従属画像の特徴点ｐ'との間の点対応Ｐ＝{(p, p')}を計算する。
【００３６】
点対応計算部１１は、ここでは最初に、複数枚の撮影画像の中から、１枚の代表画像を選択し、その他を「従属画像」とする。例えば図４によれば、最後に入力された撮影画像を「代表画像」として選択しているが、これに限定されるものではない。代表画像の選択は、様々な基準の下で決定されるものであってもよい。
【００３７】
局所特徴点の抽出アルゴリズムとしては、例えばＳＩＦＴ(Scale-Invariant Feature Transform)やＳＵＲＦ(Speeded Up Robust Features)、ＯＲＢ(Oriented FAST and Rotated BRIEF)が用いられる。これらの局所特徴点は、以下の要素によって記述される。
座標ｐ＝(x,y)、方向θ、局所特徴ベクトルf
尚、点対応を検出する撮影画像間では、その特徴ベクトルについて同じ次元数である。
【００３８】
例えば、ＳＩＦＴの場合、１枚の画像からは１２８次元の特徴点集合が抽出される。ＳＩＦＴとは、スケールスペースを用いて特徴的な局所領域を解析し、そのスケール変化及び回転に不変となる特徴ベクトルを記述する技術である。一方で、ＳＵＲＦの場合、ＳＩＦＴよりも高速処理が可能であって、１枚の画像から６４次元の特徴点集合が抽出される。また、ＯＲＢは、バイナリコードによる特徴記述としてＢＲＩＥＦ(Binary Robust Independent Elementary Features)を用いて、１つのコンテンツから２５６ビットのバイナリ特徴ベクトルの集合を抽出する。特に、ＯＲＢによれば、ＳＩＦＴやＳＵＲＦと比較して、同等以上の精度を保持すると共に、数百倍の高速化を実現することができる。
【００３９】
次に、点対応計算部１１は、代表画像の特徴点集合と従属画像の特徴点集合とをマッチングし、局所特徴点を点対応させる。代表画像の特徴点ｐに対して、各従属画像の特徴点ｐ'を対応付ける。２つの特徴点ｐ'とｐとの間の距離が短いほど、類似度が高い。
【００４０】
また、点対応計算部１１は、点対応計算の精度や処理速度を向上させるために、以下の方法を用いることも好ましい。
（１）局所特徴点間の距離に基づいて点対応をソートし、距離が所定閾値以下の点対応のみを用いる。
（２）局所特徴点間の距離に基づいて点対応をソートし、距離が１番目に近いものと２番目に近いものを探索し、それらの距離の比（２番目との距離に対する１番目との距離）が所定閾値以下のものを用いる。
（３）その他、計算コストに優れるバイナリ特徴量や、ＳＳＤ(Sum of Squared Difference)、正規化相互相関（ＮＣＣ）等も用いることもできる。
【００４１】
そして、点対応計算部１１は、代表画像と従属画像各々との間における特徴点の点対応を、平面射影変換行列計算部１２へ出力する。
【００４２】
［平面射影変換行列計算部１２］
平面射影変換行列計算部１２は、点対応毎に、代表画像と各従属画像との間の平面射影変換行列を計算する。
【００４３】
平面射影変換行列計算部１２は、具体的は、点対応Ｐ＝{(p, p')}集合から、例えばＲＡＮＳＡＣ(RAndom SAmple Consensus)のようなロバスト推定アルゴリズムを用いて、従属画像を代表画像へ変換する平面射影変換行列を算出する。これによって、誤った点対応を除去することができる。変換行列は、好ましくは「Homography行列」であって、最低４組の点対応が必要である。４組全ての点対応が、inlierでなければ正解のHomography行列が得られない。
【００４４】
図５は、Homography行列に基づくinlier及びoutlierを表す画像対応図である。
【００４５】
算出されたHomography行列を用いて従属画像の特徴点集合を射影し、代表画像の特徴点とのユークリッド距離が所定閾値以下の対応組を正(inlier)として判定し、それ以外を否(outlier)として判定する。正(inlier)と判定された対応組数が所定閾値以上である場合、当該代表画像が検出されたと判定し、そのHomography行列を採用する。逆に、正(inlier)と判定された対応組数が所定閾値よりも少ない場合、未検出と判定し、そのHomography行列を除去する。
【００４６】
平面射影変換行列であるHomography行列Ｈは、以下のように表される（例えば非特許文献４参照）。これは、従属画像の特徴点ｐ'＝(ｘ1,ｙ1)と、代表画像の特徴点ｐ＝(ｘ2,ｙ2)との関係を表す。
【数１】
2015233212.tif 000003
【００４７】
Homography行列の算出には、代表画像の特徴点集合と従属画像の特徴点集合とが用いられる。Homography行列Ｈの未知パラメータ数は、８個（h0〜h7、h8=1）であり、一組の対応点は２個の制約式を与える。従って、この行列Ｈは、４組以上の対応点があれば、最小二乗法によって算出することができる。このようなカメラ姿勢を推定する技術は、ＡＲシステムでは一般的なものである。
【００４８】
そして、Homography行列Ｈを用いて、各撮影画像特徴点を射影した際に、以下のように判定する。
（１）目標画像の特徴点に対して所定閾値以下の近くに射影されれば、inlierと判定する。
（２）逆に、所定閾値よりも遠くに射影されれば、outlierと判定する。図５によれば、outlierは、破線で表されている。
この処理を複数回実行した後、inlierの数が所定閾値以上となったHomography行列Ｈのみを採用する。
【００４９】
そして、以下のような関係式で、平面射影変換行列Ｈjが表される。
Ｉi  (i=1,2,3…,N)：N枚の撮影座標
ｍi  (i=1,2,3…,N)：撮影座標Ｉiのピクセル座標系
Ｉ1                ：代表画像
Ｋ                ：カメラの内部パラメータ
ｘi                ：Ｋを用いて正規化されたピクセル座標系
関係式            ：ｘi〜Ｋ-1ｍi
（ｍi及びｘiは、それぞれの同次座標表現）
〜：スケール不定
そして、関係式ｘj〜Ｈjｘ1（j＝2,3…,N)を満たす平面射影変換行列Ｈjを算出する。
【００５０】
このような処理を、代表画像と各従属画像とについて繰り返す。従属画像に映る代表画像として検出される毎に、その平面射影変換行列Ｈが出力される。
【００５１】
［俯瞰画像候補計算部１３］
俯瞰画像候補計算部１３は、各平面射影変換行列を用いて平行化パラメータを推定し、各平行化パラメータを用いて代表画像を俯瞰画像へ変換した複数の俯瞰画像候補を出力する。
【００５２】
Ｉ0：被写体の俯瞰画像
ｍ0：俯瞰画像Ｉ0のピクセル座標系
ｘ0：俯瞰画像Ｉ0の正規化ピクセル座標系
そして、関係式ｘ1〜Ｃｘ0を満たす平行化行列Ｃを定義する。
また、平行化行列Ｃの逆行列Ｃ-1によって、代表画像Ｉ1を俯瞰画像Ｉ0に変換する。
【００５３】
平行化行列Ｃは、２軸の回転行列によって構成され、以下のように表される。
Ｃ（φ1,φ2）＝ＲZ（φ1）ＲZ（φ2）
（φ1,φ2）：各軸の回転量を表す平行化パラメータ
Ｈjについて、コスト関数を以下のように定義する。
ｅj（φ1,φ2）＝（ｈ12／ｈ11）2＋（ｈ22／ｈ11−１）2  where (ＣTＨjT)(ＨjTＣT)
＝｛ｈuv｝
【００５４】
平行化パラメータ（φ1,φ2）は、入力された全ての平面射影変換行列について計算されたコスト値の総和を最小にするものとして、探索される。
argminφ1,φ2（Ｅ（φ1,φ2））＝Σj=2Nｅj（φ1,φ2）
平行化パラメータΦ＝（φ1,φ2）の解の範囲：［(-π/2,π/2)、(-π/2,π/2)］
【００５５】
このパラメータ空間について、大域的な最適解を探索する。
【００５６】
（Ｓ１３１）最初に、一定間隔（例えば10°）毎に、上式に従ってコスト値をサンプリングする。その結果、各要素にコスト値を持つコスト値行列が得られる。
【００５７】
図６は、離散化されたコスト値を白黒の濃淡で表すコスト値行列である。黒は、Ｅ＝０値を表す。
【００５８】
（Ｓ１３２）次に、俯瞰画像候補計算部１３は、平行化パラメータ空間について局所最小解と判定された複数の平行化パラメータを推定する。各要素の値を、周囲の８つの隣接要素と比較することによって「局所最小解」を検出する。計算コストを削減するため、上下左右の４つの隣接要素と比較してもよい。局所最小解の各パラメータについて、それを初期値として、最適化手法によってコスト値をリファインする。例えば、滑降シンプレックス法を用いることができる。図６によれば、３つのリファインされた局所最小解Φ１、Φ２及びΦ３が表されている。
【００５９】
（Ｓ１３３）そして、俯瞰画像候補計算部１３は、複数の局所最小解それぞれについて、各平行化パラメータを用いて次式によって、代表画像を俯瞰画像に変換し、複数の俯瞰画像候補を出力する。
ｍ0〜（ＫＣ（φ1,φ2）Ｋ-1）-1ｍ1
本発明の特徴は、俯瞰画像候補計算部１３が、複数の俯瞰画像候補を出力することにある。
【００６０】
例えば非特許文献１〜３に記載の技術（図１参照）によれば、俯瞰画像候補計算部は、１つの局所最小解を導出しようとする。しかしながら、平行化の精度が、撮影画像の枚数や撮影画像間の点対応計算の精度に大きく依存し、誤った俯瞰画像候補が得られる場合がある。これは、誤った平行化パラメータが最適解として判定される可能性があったことによる。そこで、本発明の俯瞰画像候補計算部１３は、算出された複数の局所最小解それぞれについて、俯瞰画像を候補として出力する。
【００６１】
尚、本発明の俯瞰画像候補計算部１３は、必ずしも全ての平行化パラメータに対応する俯瞰画像候補を出力する必要もない。例えば、以下のように選択するものであってもよい。
（選択１）俯瞰画像候補計算部１３は、平行化パラメータ空間の中で一定距離以下に存在する複数の平行化パラメータが推定された場合、いずれか１つの平行パラメータのみを選択する。平行化パラメータは２次元であるため、平行化パラメータ間の距離をユークリッド距離によって定めてもよい。
（選択２）俯瞰画像候補計算部１３は、俯瞰画像候補同士の間で類似度を算出し、当該類似度が所定閾値以上となる俯瞰画像候補のみを選択する。尚、類似度としては、例えばＳＳＤ(Sum of Squared Difference)や正規化相互相関（ＮＣＣ）も用いてもよい。
【００６２】
［コード読取判定部１４］
コード読取判定部１４は、複数の俯瞰画像候補の中から、識別コードの画像的な読み取りに成功した俯瞰画像を、平行化された俯瞰画像として出力する。即ち、コード読取判定部１４は、コードリーダ（バーコードリーダ、ＱＲコードリーダ等）の機能を備えている。
【００６３】
図７は、各平行化パラメータに対応して表された３つの俯瞰画像候補である。
【００６４】
コード読取判定部１４は、複数の俯瞰画像候補それぞれについて、識別コードに対する「読み取りの成功／失敗」（及び信頼値）を判定する。コード読取判定部１４は、複数の俯瞰画像候補の中で、「読み取り成功」となった俯瞰画像を出力する。また、「読み取り成功」であって、且つ、最も信頼値が高い俯瞰画像を出力することも好ましい。「信頼値」とは、コードリーダから出力される、認識結果（読み取ったコードデータ）の確からしさをいう（例えば非特許文献５又は６参照）。例えば、図７の例によれば、Φ１が俯瞰画像として出力される。
【００６５】
図８は、識別コードを読み取った識別データに対するアプリケーションの画面表示図である。
【００６６】
図８によれば、コード読取判定部１４によって出力された俯瞰画像が、端末１のディスプレイ１０２に表示されている。また、コード読取判定部１４によって、識別コードの画像的な読み取りが成功したその識別データが、アプリケーションによって表示されている。その識別データが、例えばＵＲＬ(Uniform Resource Locator)である場合、ユーザのタップによってそのＵＲＬへアクセスすることもできる。
【００６７】
以上、詳細に説明したように、本発明の画像変換プログラム、装置及び方法によれば、カメラによる撮影画像を高精度に平行化することができる。
【００６８】
前述した本発明の種々の実施形態について、本発明の技術思想及び見地の範囲の種々の変更、修正及び省略は、当業者によれば容易に行うことができる。前述の説明はあくまで例であって、何ら制約しようとするものではない。本発明は、特許請求の範囲及びその均等物として限定するものにのみ制約される。
【符号の説明】
【００６９】
１  端末
１０１  カメラ
１０２  ディスプレイ
１１  点対応計算部
１２  平面射影変換行列計算部
１３  俯瞰画像候補計算部
１４  コード読取判定部
【図１】
2015233212.tif 000004
【図２】
2015233212.tif 000005
【図５】
2015233212.tif 000006
【図３】
2015233212.tif 000007
【図４】
2015233212.tif 000008
【図６】
2015233212.tif 000009
【図７】
2015233212.tif 000010
【図８】
2015233212.tif 000011