特開2015-233212(P2015-233212A)IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ KDDI株式会社の特許一覧

特開2015-233212撮影画像を平行化する画像変換プログラム、装置及び方法
<>
  • 特開2015233212-撮影画像を平行化する画像変換プログラム、装置及び方法 図000004
  • 特開2015233212-撮影画像を平行化する画像変換プログラム、装置及び方法 図000005
  • 特開2015233212-撮影画像を平行化する画像変換プログラム、装置及び方法 図000006
  • 特開2015233212-撮影画像を平行化する画像変換プログラム、装置及び方法 図000007
  • 特開2015233212-撮影画像を平行化する画像変換プログラム、装置及び方法 図000008
  • 特開2015233212-撮影画像を平行化する画像変換プログラム、装置及び方法 図000009
  • 特開2015233212-撮影画像を平行化する画像変換プログラム、装置及び方法 図000010
  • 特開2015233212-撮影画像を平行化する画像変換プログラム、装置及び方法 図000011
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】特開2015-233212(P2015-233212A)
(43)【公開日】2015年12月24日
(54)【発明の名称】撮影画像を平行化する画像変換プログラム、装置及び方法
(51)【国際特許分類】
   H04N 5/232 20060101AFI20151201BHJP
【FI】
   H04N5/232 Z
【審査請求】未請求
【請求項の数】9
【出願形態】OL
【全頁数】18
(21)【出願番号】特願2014-119126(P2014-119126)
(22)【出願日】2014年6月9日
(71)【出願人】
【識別番号】000208891
【氏名又は名称】KDDI株式会社
(74)【代理人】
【識別番号】100135068
【弁理士】
【氏名又は名称】早原 茂樹
(72)【発明者】
【氏名】巻渕 有哉
(72)【発明者】
【氏名】加藤 晴久
【テーマコード(参考)】
5C122
【Fターム(参考)】
5C122EA61
5C122FA01
5C122FH04
5C122FH06
5C122FH11
5C122HA88
5C122HB10
(57)【要約】
【課題】本発明は、カメラによる撮影画像を高精度に平行化することができる画像変換プログラム、装置及び方法を提供する。
【解決手段】撮影画像には、被写体に付与された識別コードが写っている。撮影画像を平行化する画像変換プログラムは、複数の撮影画像について任意の代表画像と各従属画像との間の特徴点の点対応を計算する点対応計算手段と、点対応毎に、代表画像と各従属画像との間の平面射影変換行列を計算する平面射影変換行列計算手段と、各平面射影変換行列を用いて平行化パラメータを推定し、各平行化パラメータを用いて代表画像を俯瞰画像へ変換した複数の俯瞰画像候補を出力する俯瞰画像候補計算手段と、複数の俯瞰画像候補の中から、識別コードの画像的な読み取りに成功した俯瞰画像を、平行化された俯瞰画像として出力するコード読取判定手段として機能させる。
【選択図】図2
【特許請求の範囲】
【請求項1】
撮影画像を平行化するようにコンピュータを機能させる画像変換プログラムにおいて、
前記撮影画像には、被写体に付与された識別コードが写っており、
複数の撮影画像について任意の代表画像と各従属画像との間の特徴点の点対応を計算する点対応計算手段と、
点対応毎に、代表画像と各従属画像との間の平面射影変換行列を計算する平面射影変換行列計算手段と、
各平面射影変換行列を用いて平行化パラメータを推定し、各平行化パラメータを用いて代表画像を俯瞰画像へ変換した複数の俯瞰画像候補を出力する俯瞰画像候補計算手段と、
複数の俯瞰画像候補の中から、識別コードの画像的な読み取りに成功した俯瞰画像を、平行化された俯瞰画像として出力するコード読取判定手段と
してコンピュータを機能させることを特徴とする画像変換プログラム。
【請求項2】
前記俯瞰画像候補計算手段は、平行化パラメータ空間について局所最小解と判定された複数の平行化パラメータを推定する
ようにコンピュータを機能させることを特徴とする請求項1に記載の画像変換プログラム。
【請求項3】
前記俯瞰画像候補計算手段は、平行化パラメータ空間の中で一定距離以下に存在する複数の平行化パラメータが推定された場合、いずれか1つの平行パラメータのみを選択する
ようにコンピュータを機能させることを特徴とする請求項1又は2に記載の画像変換プログラム。
【請求項4】
前記俯瞰画像候補計算手段は、俯瞰画像候補同士の間で類似度を算出し、当該類似度が所定閾値以上となる俯瞰画像候補のみを選択する
ようにコンピュータを機能させることを特徴とする請求項1から3のいずれか1項に記載の画像変換プログラム。
【請求項5】
前記識別コードは、バーコード、QR(Quick Response)コード、OCR(Optical Character Recognition)用文字又は線分のような幾何特徴画像である
ようにコンピュータを機能させることを特徴とする請求項1から4のいずれか1項に記載の画像変換プログラム。
【請求項6】
前記コード読取判定手段は、識別コードの画像的な読み取りが成功した俯瞰画像候補の中で、その信頼値が最も高い俯瞰画像を出力する
ようにコンピュータを機能させることを特徴とする請求項1から5のいずれか1項に記載の画像変換プログラム。
【請求項7】
前記コード読取判定手段は、識別コードの画像的な読み取りが成功したその識別データをアプリケーションへ出力する
ようにコンピュータを機能させることを特徴とする請求項1から6のいずれか1項に記載の画像変換プログラム。
【請求項8】
撮影画像を平行化する画像変換装置において、
前記撮影画像には、被写体に付与された識別コードが写っており、
複数の撮影画像について任意の代表画像と各従属画像との間の特徴点の点対応を計算する点対応計算手段と、
点対応毎に、代表画像と各従属画像との間の平面射影変換行列を計算する平面射影変換行列計算手段と、
各平面射影変換行列を用いて平行化パラメータを推定し、各平行化パラメータを用いて代表画像を俯瞰画像へ変換した複数の俯瞰画像候補を出力する俯瞰画像候補計算手段と、
複数の俯瞰画像候補の中から、識別コードの画像的な読み取りに成功した俯瞰画像を、平行化された俯瞰画像として出力するコード読取判定手段と
を有することを特徴とする画像変換装置。
【請求項9】
ユーザ操作の情報機器を用いて、撮影画像を平行化する画像変換方法において、
前記撮影画像には、被写体に付与された識別コードが写っており、
複数の撮影画像について任意の代表画像と各従属画像との間の特徴点の点対応を計算する第1のステップと、
点対応毎に、代表画像と各従属画像との間の平面射影変換行列を計算する第2のステップと、
各平面射影変換行列を用いて平行化パラメータを推定し、各平行化パラメータを用いて代表画像を俯瞰画像へ変換した複数の俯瞰画像候補を出力する第3のステップと、
複数の俯瞰画像候補の中から、識別コードの画像的な読み取りに成功した俯瞰画像を、平行化された俯瞰画像として出力する第4のステップと
を有することを特徴とする情報機器の画像変換方法。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、撮影画像を平行化する技術に関する。
【背景技術】
【0002】
「撮影画像の平行化」とは、平面に対して斜めの角度から撮影された「撮影画像(カメラ画像)」を、垂直上方から見た「俯瞰画像」へ変換する技術をいう。これは、3次元復元技術の一種であって、撮影画像から被写体の2次元平面の幾何情報(平行線や直交線)を復元するものである。この技術によれば、俯瞰画像についてのみ保持される特定の幾何情報も簡易に検出することができる。また、俯瞰画像の生成と同時に、被写体に対する撮影姿勢も取得することができ、CG(Computer Graphics)を現実空間に重ね合わせて表示するAR(Augmented Reality)システムに応用することもできる。
【0003】
従来、カメラ画像と俯瞰画像との点対応を用いて、撮影画像を平行化する技術がある(例えば特許文献1参照)。この技術によれば、具体的には、被写体上に存在する既知の幾何形状とカメラ画像内形状との対応を用いて、最少4組の点対応から俯瞰画像へ変換する平面射影変換行列を計算する。例えば、正方形のマーカを被写体上に事前に設置することによって、正方形の4頂点に関して、俯瞰画像上の座標とカメラ画像上のピクセル座標との間で対応付けて簡易に平行化を実現する。
【0004】
また、被写体上から検出された平行線を用いて、撮影画像を平行化する技術もある(例えば特許文献2参照)。この技術によれば、具体的には、平面上に存在する最少2組の平行線を検出し、この平行線を用いて、平面図上の無限遠直線に相当するカメラ画像中の消失線の位置を計算する。カメラ画像中の消失線とカメラの内部パラメータとから、被写体の法線方向を復元し、俯瞰画像を作成する。
【0005】
前述した特許文献1及び2に記載の技術によれば、撮影画像(被写体)上に、特定の幾何形状や平行線が存在するものに限定されるという課題があった。
【0006】
これに対し、多視点で撮影された各カメラ画像間の平面射影変換行列を用いて、撮影画像を平行化する技術もある(例えば非特許文献1、2、3参照)。この技術によれば、カメラ画像を複数枚用いるという点で、前述した特許文献1及び2に記載の技術とは大きく異なる。
【0007】
図1は、従来技術における画像変換プログラムの機能構成図である。
【0008】
非特許文献1に記載の技術によれば、具体的には、撮影画像の平行化パラメータと、各カメラ画像間の平面射影変換行列とに関して、コスト関数を予め定義している。その上で、カメラから入力された複数枚の撮影画像から、局所特徴量に基づく点対応を計算する(図1の点対応計算部に対応)。次に、その点対応から、平面射影変換行列を計算する(図1の平面射影変換行列計算部に対応)。そして、各平面射影変換行列を入力としてそれを最小化することにより、平行化パラメータを推定する。
【0009】
この技術によれば、平面に関する事前情報を一切利用しないために、被写体上の幾何情報や平行線が存在しない場合であっても適用できる。例えば、被写体を斜め方向から撮影して得られるカメラ画像については、平面上で平行の関係にある2本の直線が平行ではなくなるため、平行線の検出が困難となるが、この技術によれば、このような場合であっても、撮影画像を平行化することができる。
【0010】
平行化計算では、最適解を含む複数の平行化パラメータの解が得られる。平行化パラメータは、入力画像の平面射影変換に対応しており、最適解に基づく変換により正面方向から撮影された俯瞰画像が得られる。
【0011】
また、非特許文献2に記載の技術によれば、各俯瞰画像候補について計算されるコスト値を比較し、最小のコスト値を有するものを最終的に得られる俯瞰画像として選択する(図1の俯瞰画像計算部に対応)。更に、非特許文献3に記載の技術によれば、最小のコスト値を有する俯瞰画像を出力する際の判定基準として、最小のコスト値に対する2番目に小さなコスト値の比率を使用する。
【先行技術文献】
【特許文献】
【0012】
【特許文献1】特開2006−146760号公報
【特許文献2】特許第4617993号公報
【非特許文献】
【0013】
【非特許文献1】A. Ruiz, P. E. L. de Teruel, and L. Fernandez、Practical planar metric rectification. In Proc. BMVC 2006, 2006、[online]、[平成26年6月3日検索]、インターネット<URL: http://www.bmva.org/bmvc/2006/papers/188.pdf>
【非特許文献2】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]、[平成26年6月3日検索]、インターネット<URL:http://www.researchgate.net/publication/221221458_Homography-based_planar_mapping_and_tracking_for_mobile_phones>
【非特許文献3】巻渕有哉,加藤晴久,柳原広昌,“マーカーレスARのための複数平面を利用したカメラ姿勢推定手法の検討,” 情報処理学会研究報告. [オーディオビジュアル複合情報処理] 2014-AVM-84(4), 1-6, 2014-02-14、[online]、[平成26年6月3日検索]、インターネット<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>
【非特許文献4】「ホモグラフィの計算」、[online]、[平成26年6月3日検索]、インターネット<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>
【非特許文献5】「活字文書OCRライブラリ」、[online]、[平成26年6月3日検索]、インターネット<URL:http://mediadrive.jp/products/library/katsuji_library/windows/index.html>
【非特許文献6】「FAX OCR/スキャナー OCR「TeleForm」を構成する、高性能な4つのアプリケーション」、[online]、[平成26年6月3日検索]、インターネット<URL:http://www.hammock.jp/ocr/kinou/verifier.html>
【発明の概要】
【発明が解決しようとする課題】
【0014】
非特許文献1、2及び3に記載の技術によれば、平行化の精度がカメラ画像の枚数やカメラ画像間の点対応計算の精度に大きく依存し、誤った俯瞰画像候補が得られる場合がある。特に、非特許文献2及び3に記載の技術は、正確な俯瞰画像を判定するためにコスト値の比較では不十分であり、高精度の俯瞰画像が得られないとい課題がある。このような従来技術によれば、平行化パラメータ間の比較により最適解の判定をしており、誤った平行化パラメータが最適解として判定される可能性があった。
【0015】
そこで、本発明は、カメラによる撮影画像を高精度に平行化することができる画像変換プログラム、装置及び方法を提供することを目的とする。
【課題を解決するための手段】
【0016】
本発明によれば、撮影画像を平行化するようにコンピュータを機能させる画像変換プログラムにおいて、
撮影画像には、被写体に付与された識別コードが写っており、
複数の撮影画像について任意の代表画像と各従属画像との間の特徴点の点対応を計算する点対応計算手段と、
点対応毎に、代表画像と各従属画像との間の平面射影変換行列を計算する平面射影変換行列計算手段と、
各平面射影変換行列を用いて平行化パラメータを推定し、各平行化パラメータを用いて代表画像を俯瞰画像へ変換した複数の俯瞰画像候補を出力する俯瞰画像候補計算手段と、
複数の俯瞰画像候補の中から、識別コードの画像的な読み取りに成功した俯瞰画像を、平行化された俯瞰画像として出力するコード読取判定手段と
してコンピュータを機能させることを特徴とする。
【0017】
本発明の画像変換プログラムにおける他の実施形態によれば、
俯瞰画像候補計算手段は、平行化パラメータ空間について局所最小解と判定された複数の平行化パラメータを推定する
ようにコンピュータを機能させることも好ましい。
【0018】
本発明の画像変換プログラムにおける他の実施形態によれば、
俯瞰画像候補計算手段は、平行化パラメータ空間の中で一定距離以下に存在する複数の平行化パラメータが推定された場合、いずれか1つの平行パラメータのみを選択する
ようにコンピュータを機能させることも好ましい。
【0019】
本発明の画像変換プログラムにおける他の実施形態によれば、
俯瞰画像候補計算手段は、俯瞰画像候補同士の間で類似度を算出し、当該類似度が所定閾値以上となる俯瞰画像候補のみを選択する
ようにコンピュータを機能させることも好ましい。
【0020】
本発明の画像変換プログラムにおける他の実施形態によれば、
識別コードは、バーコード、QR(Quick Response)(登録商標)コード、OCR(Optical Character Recognition)用文字又は線分のような幾何特徴画像である
ようにコンピュータを機能させることも好ましい。
【0021】
本発明の画像変換プログラムにおける他の実施形態によれば、
コード読取判定手段は、識別コードの画像的な読み取りが成功した俯瞰画像候補の中で、その信頼値が最も高い俯瞰画像を出力する
ようにコンピュータを機能させることも好ましい。尚、信頼値は、コード読取判定手段が出力する読取り結果の確からしさを示す数値である。
【0022】
本発明の画像変換プログラムにおける他の実施形態によれば、
コード読取判定手段は、識別コードの画像的な読み取りが成功したその識別データをアプリケーションへ出力する
ようにコンピュータを機能させることも好ましい。
【0023】
本発明によれば、撮影画像を平行化する画像変換装置において、
撮影画像には、被写体に付与された識別コードが写っており、
複数の撮影画像について任意の代表画像と各従属画像との間の特徴点の点対応を計算する点対応計算手段と、
点対応毎に、代表画像と各従属画像との間の平面射影変換行列を計算する平面射影変換行列計算手段と、
各平面射影変換行列を用いて平行化パラメータを推定し、各平行化パラメータを用いて代表画像を俯瞰画像へ変換した複数の俯瞰画像候補を出力する俯瞰画像候補計算手段と、
複数の俯瞰画像候補の中から、識別コードの画像的な読み取りに成功した俯瞰画像を、平行化された俯瞰画像として出力するコード読取判定手段と
を有することを特徴とする。
【0024】
本発明によれば、ユーザ操作の情報機器を用いて、撮影画像を平行化する画像変換方法において、
撮影画像には、被写体に付与された識別コードが写っており、
複数の撮影画像について任意の代表画像と各従属画像との間の特徴点の点対応を計算する第1のステップと、
点対応毎に、代表画像と各従属画像との間の平面射影変換行列を計算する第2のステップと、
各平面射影変換行列を用いて平行化パラメータを推定し、各平行化パラメータを用いて代表画像を俯瞰画像へ変換した複数の俯瞰画像候補を出力する第3のステップと、
複数の俯瞰画像候補の中から、識別コードの画像的な読み取りに成功した俯瞰画像を、平行化された俯瞰画像として出力する第4のステップと
を有することを特徴とする。
【発明の効果】
【0025】
本発明の画像変換プログラム、装置及び方法によれば、カメラによる撮影画像を高精度に平行化することができる。
【図面の簡単な説明】
【0026】
図1】従来技術における画像変換プログラムの機能構成図である。
図2】本発明における画像変換プログラムの機能構成図である。
図3】バーコードが付与された被写体に対する斜め方向からの撮影画像である。
図4】カメラを移動させながら撮影した複数枚の撮影画像である。
図5】Homography行列に基づくinlier及びoutlierを表す画像対応図である。
図6】離散化されたコスト値を白黒の濃淡で表すコスト値行列である。
図7】各平行化パラメータに対応して表された3つの俯瞰画像候補である。
図8】識別コードを読み取った識別データに対するアプリケーションの画面表示図である。
【発明を実施するための形態】
【0027】
以下、本発明の実施の形態について、図面を用いて詳細に説明する。
【0028】
図2は、本発明における画像変換プログラムの機能構成図である。
【0029】
本発明における画像変換プログラムは、撮影画像を平行化するようにコンピュータを機能させるものであって、例えばスマートフォンやタブレットのような端末にインストールされて実行される。このような端末1は一般的に、周辺状況を撮影するカメラモジュール(Webカメラ)101と、ディスプレイ102とを有する。カメラモジュール101は、例えば連写や動画によって被写体を撮影した複数枚の画像を、画像変換プログラムへ出力する。尚、カメラモジュール101について、焦点距離や光軸のずれ、歪みパラメータ等の内部パラメータは、事前のキャリブレーションによって既知であるとする。
【0030】
複数枚の画像は、1台のカメラで撮影されたものに限られず、複数の異なるカメラで異なる視点から撮影されたものであってもよい。また、それら複数枚の画像は、ユーザの所望の指示タイミングで撮影されたものであってもよい。これら撮影画像は、逐次的にバッファリングされるが、直前に入力された数枚(例えば5枚程度)のみに限定することによって使用メモリ量を節約することができる。
【0031】
ディスプレイ102は、情報機器に組み込まれたものに限られず、外部に接続されたテレビや、パーソナルコンピュータ用ディプレイ、又はヘッドマウントディスプレイであってもよい。そのようなディスプレイには、平行化された俯瞰画像や、識別コードの識別データを表示することができる。
【0032】
図3は、バーコードが付与された被写体に対する斜め方向からの撮影画像である。
図4は、カメラを移動させながら撮影した複数枚の撮影画像である。
【0033】
本発明によれば、被写体に、視覚認識可能な「識別コード」が付加されていることを要する。そのため、撮影画像には、被写体に付与された識別コードが写り込むこととなる。識別コードとしては、例えばバーコード(1次元コード)、QRコード(2次元コード)、OCR用文字又は線分のような幾何特徴画像である。本発明によれば、このような識別コードは、その識別データの読み取りを主目的としたものではなく、撮影画像の平行化を主目的としたものである。勿論、識別コードの識別データの読み取りの用途に適用するものであってもよい。
【0034】
画像変換プログラムは、点対応計算部11と、平面射影変換行列計算部12と、俯瞰画像候補計算部13と、コード読取判定部14とを有する。これら機能構成部は、装置に搭載されたコンピュータを機能させるプログラムを実行することによって実現される。尚、これら機能構成部は、画像変換装置の内部構造として理解できると共に、その処理の流れは、情報機器の画像変換方法としても理解できる。
【0035】
[点対応計算部11]
点対応計算部11は、被写体(識別コードを含む)を撮影した複数の撮影画像それぞれから局所特徴量を抽出し、任意の代表画像の特徴点pと各従属画像の特徴点p'との間の点対応P={(p, p')}を計算する。
【0036】
点対応計算部11は、ここでは最初に、複数枚の撮影画像の中から、1枚の代表画像を選択し、その他を「従属画像」とする。例えば図4によれば、最後に入力された撮影画像を「代表画像」として選択しているが、これに限定されるものではない。代表画像の選択は、様々な基準の下で決定されるものであってもよい。
【0037】
局所特徴点の抽出アルゴリズムとしては、例えばSIFT(Scale-Invariant Feature Transform)やSURF(Speeded Up Robust Features)、ORB(Oriented FAST and Rotated BRIEF)が用いられる。これらの局所特徴点は、以下の要素によって記述される。
座標p=(x,y)、方向θ、局所特徴ベクトルf
尚、点対応を検出する撮影画像間では、その特徴ベクトルについて同じ次元数である。
【0038】
例えば、SIFTの場合、1枚の画像からは128次元の特徴点集合が抽出される。SIFTとは、スケールスペースを用いて特徴的な局所領域を解析し、そのスケール変化及び回転に不変となる特徴ベクトルを記述する技術である。一方で、SURFの場合、SIFTよりも高速処理が可能であって、1枚の画像から64次元の特徴点集合が抽出される。また、ORBは、バイナリコードによる特徴記述としてBRIEF(Binary Robust Independent Elementary Features)を用いて、1つのコンテンツから256ビットのバイナリ特徴ベクトルの集合を抽出する。特に、ORBによれば、SIFTやSURFと比較して、同等以上の精度を保持すると共に、数百倍の高速化を実現することができる。
【0039】
次に、点対応計算部11は、代表画像の特徴点集合と従属画像の特徴点集合とをマッチングし、局所特徴点を点対応させる。代表画像の特徴点pに対して、各従属画像の特徴点p'を対応付ける。2つの特徴点p'とpとの間の距離が短いほど、類似度が高い。
【0040】
また、点対応計算部11は、点対応計算の精度や処理速度を向上させるために、以下の方法を用いることも好ましい。
(1)局所特徴点間の距離に基づいて点対応をソートし、距離が所定閾値以下の点対応のみを用いる。
(2)局所特徴点間の距離に基づいて点対応をソートし、距離が1番目に近いものと2番目に近いものを探索し、それらの距離の比(2番目との距離に対する1番目との距離)が所定閾値以下のものを用いる。
(3)その他、計算コストに優れるバイナリ特徴量や、SSD(Sum of Squared Difference)、正規化相互相関(NCC)等も用いることもできる。
【0041】
そして、点対応計算部11は、代表画像と従属画像各々との間における特徴点の点対応を、平面射影変換行列計算部12へ出力する。
【0042】
[平面射影変換行列計算部12]
平面射影変換行列計算部12は、点対応毎に、代表画像と各従属画像との間の平面射影変換行列を計算する。
【0043】
平面射影変換行列計算部12は、具体的は、点対応P={(p, p')}集合から、例えばRANSAC(RAndom SAmple Consensus)のようなロバスト推定アルゴリズムを用いて、従属画像を代表画像へ変換する平面射影変換行列を算出する。これによって、誤った点対応を除去することができる。変換行列は、好ましくは「Homography行列」であって、最低4組の点対応が必要である。4組全ての点対応が、inlierでなければ正解のHomography行列が得られない。
【0044】
図5は、Homography行列に基づくinlier及びoutlierを表す画像対応図である。
【0045】
算出されたHomography行列を用いて従属画像の特徴点集合を射影し、代表画像の特徴点とのユークリッド距離が所定閾値以下の対応組を正(inlier)として判定し、それ以外を否(outlier)として判定する。正(inlier)と判定された対応組数が所定閾値以上である場合、当該代表画像が検出されたと判定し、そのHomography行列を採用する。逆に、正(inlier)と判定された対応組数が所定閾値よりも少ない場合、未検出と判定し、そのHomography行列を除去する。
【0046】
平面射影変換行列であるHomography行列Hは、以下のように表される(例えば非特許文献4参照)。これは、従属画像の特徴点p'=(x1,y1)と、代表画像の特徴点p=(x2,y2)との関係を表す。
【数1】
【0047】
Homography行列の算出には、代表画像の特徴点集合と従属画像の特徴点集合とが用いられる。Homography行列Hの未知パラメータ数は、8個(h0〜h7、h8=1)であり、一組の対応点は2個の制約式を与える。従って、この行列Hは、4組以上の対応点があれば、最小二乗法によって算出することができる。このようなカメラ姿勢を推定する技術は、ARシステムでは一般的なものである。
【0048】
そして、Homography行列Hを用いて、各撮影画像特徴点を射影した際に、以下のように判定する。
(1)目標画像の特徴点に対して所定閾値以下の近くに射影されれば、inlierと判定する。
(2)逆に、所定閾値よりも遠くに射影されれば、outlierと判定する。図5によれば、outlierは、破線で表されている。
この処理を複数回実行した後、inlierの数が所定閾値以上となったHomography行列Hのみを採用する。
【0049】
そして、以下のような関係式で、平面射影変換行列Hjが表される。
i (i=1,2,3…,N):N枚の撮影座標
i (i=1,2,3…,N):撮影座標Iiのピクセル座標系
1 :代表画像
K :カメラの内部パラメータ
i :Kを用いて正規化されたピクセル座標系
関係式 :xi〜K-1i
(mi及びxiは、それぞれの同次座標表現)
〜:スケール不定
そして、関係式xj〜Hj1(j=2,3…,N)を満たす平面射影変換行列Hjを算出する。
【0050】
このような処理を、代表画像と各従属画像とについて繰り返す。従属画像に映る代表画像として検出される毎に、その平面射影変換行列Hが出力される。
【0051】
[俯瞰画像候補計算部13]
俯瞰画像候補計算部13は、各平面射影変換行列を用いて平行化パラメータを推定し、各平行化パラメータを用いて代表画像を俯瞰画像へ変換した複数の俯瞰画像候補を出力する。
【0052】
0:被写体の俯瞰画像
0:俯瞰画像I0のピクセル座標系
0:俯瞰画像I0の正規化ピクセル座標系
そして、関係式x1〜Cx0を満たす平行化行列Cを定義する。
また、平行化行列Cの逆行列C-1によって、代表画像I1を俯瞰画像I0に変換する。
【0053】
平行化行列Cは、2軸の回転行列によって構成され、以下のように表される。
C(φ12)=RZ(φ1)RZ(φ2
(φ12):各軸の回転量を表す平行化パラメータ
jについて、コスト関数を以下のように定義する。
j(φ12)=(h12/h112+(h22/h11−1)2 where (CTjT)(HjTT)
={huv
【0054】
平行化パラメータ(φ12)は、入力された全ての平面射影変換行列について計算されたコスト値の総和を最小にするものとして、探索される。
argminφ1,φ2(E(φ12))=Σj=2Nj(φ12
平行化パラメータΦ=(φ12)の解の範囲:[(-π/2,π/2)、(-π/2,π/2)]
【0055】
このパラメータ空間について、大域的な最適解を探索する。
【0056】
(S131)最初に、一定間隔(例えば10°)毎に、上式に従ってコスト値をサンプリングする。その結果、各要素にコスト値を持つコスト値行列が得られる。
【0057】
図6は、離散化されたコスト値を白黒の濃淡で表すコスト値行列である。黒は、E=0値を表す。
【0058】
(S132)次に、俯瞰画像候補計算部13は、平行化パラメータ空間について局所最小解と判定された複数の平行化パラメータを推定する。各要素の値を、周囲の8つの隣接要素と比較することによって「局所最小解」を検出する。計算コストを削減するため、上下左右の4つの隣接要素と比較してもよい。局所最小解の各パラメータについて、それを初期値として、最適化手法によってコスト値をリファインする。例えば、滑降シンプレックス法を用いることができる。図6によれば、3つのリファインされた局所最小解Φ、Φ及びΦが表されている。
【0059】
(S133)そして、俯瞰画像候補計算部13は、複数の局所最小解それぞれについて、各平行化パラメータを用いて次式によって、代表画像を俯瞰画像に変換し、複数の俯瞰画像候補を出力する。
0〜(KC(φ12)K-1-11
本発明の特徴は、俯瞰画像候補計算部13が、複数の俯瞰画像候補を出力することにある。
【0060】
例えば非特許文献1〜3に記載の技術(図1参照)によれば、俯瞰画像候補計算部は、1つの局所最小解を導出しようとする。しかしながら、平行化の精度が、撮影画像の枚数や撮影画像間の点対応計算の精度に大きく依存し、誤った俯瞰画像候補が得られる場合がある。これは、誤った平行化パラメータが最適解として判定される可能性があったことによる。そこで、本発明の俯瞰画像候補計算部13は、算出された複数の局所最小解それぞれについて、俯瞰画像を候補として出力する。
【0061】
尚、本発明の俯瞰画像候補計算部13は、必ずしも全ての平行化パラメータに対応する俯瞰画像候補を出力する必要もない。例えば、以下のように選択するものであってもよい。
(選択1)俯瞰画像候補計算部13は、平行化パラメータ空間の中で一定距離以下に存在する複数の平行化パラメータが推定された場合、いずれか1つの平行パラメータのみを選択する。平行化パラメータは2次元であるため、平行化パラメータ間の距離をユークリッド距離によって定めてもよい。
(選択2)俯瞰画像候補計算部13は、俯瞰画像候補同士の間で類似度を算出し、当該類似度が所定閾値以上となる俯瞰画像候補のみを選択する。尚、類似度としては、例えばSSD(Sum of Squared Difference)や正規化相互相関(NCC)も用いてもよい。
【0062】
[コード読取判定部14]
コード読取判定部14は、複数の俯瞰画像候補の中から、識別コードの画像的な読み取りに成功した俯瞰画像を、平行化された俯瞰画像として出力する。即ち、コード読取判定部14は、コードリーダ(バーコードリーダ、QRコードリーダ等)の機能を備えている。
【0063】
図7は、各平行化パラメータに対応して表された3つの俯瞰画像候補である。
【0064】
コード読取判定部14は、複数の俯瞰画像候補それぞれについて、識別コードに対する「読み取りの成功/失敗」(及び信頼値)を判定する。コード読取判定部14は、複数の俯瞰画像候補の中で、「読み取り成功」となった俯瞰画像を出力する。また、「読み取り成功」であって、且つ、最も信頼値が高い俯瞰画像を出力することも好ましい。「信頼値」とは、コードリーダから出力される、認識結果(読み取ったコードデータ)の確からしさをいう(例えば非特許文献5又は6参照)。例えば、図7の例によれば、Φが俯瞰画像として出力される。
【0065】
図8は、識別コードを読み取った識別データに対するアプリケーションの画面表示図である。
【0066】
図8によれば、コード読取判定部14によって出力された俯瞰画像が、端末1のディスプレイ102に表示されている。また、コード読取判定部14によって、識別コードの画像的な読み取りが成功したその識別データが、アプリケーションによって表示されている。その識別データが、例えばURL(Uniform Resource Locator)である場合、ユーザのタップによってそのURLへアクセスすることもできる。
【0067】
以上、詳細に説明したように、本発明の画像変換プログラム、装置及び方法によれば、カメラによる撮影画像を高精度に平行化することができる。
【0068】
前述した本発明の種々の実施形態について、本発明の技術思想及び見地の範囲の種々の変更、修正及び省略は、当業者によれば容易に行うことができる。前述の説明はあくまで例であって、何ら制約しようとするものではない。本発明は、特許請求の範囲及びその均等物として限定するものにのみ制約される。
【符号の説明】
【0069】
1 端末
101 カメラ
102 ディスプレイ
11 点対応計算部
12 平面射影変換行列計算部
13 俯瞰画像候補計算部
14 コード読取判定部
図1
図2
図5
図3
図4
図6
図7
図8