特徴マッチング方法及び商品認識システム
【課題】簡素なシステムで高速化が可能な特徴マッチング方法を提供すること。
【解決手段】2次元又は3次元画像データ内の対象を認識する特徴マッチング方法においては、画像内で所定の属性が極値となる特徴を検出し(10)、上記検出した特徴からエッジ及び線の輪郭に沿って存在する特徴を除外する(12)。そして、上記残りの特徴を平面に割り当て、上記割り当てた特徴から局所情報を用いて一部の特徴を選択し、上記選択した特徴を対象に特徴マッチングを行う(14)。上記特徴の検出、上記特徴の除外、上記残りの特徴の割当て、上記一部の特徴の選択、及び上記特徴マッチングの実施のうち少なくとも一つを、上記一つの2次元又は3次元画像データから作成したスケールが異なる複数の画像データに対して行う。
【解決手段】2次元又は3次元画像データ内の対象を認識する特徴マッチング方法においては、画像内で所定の属性が極値となる特徴を検出し(10)、上記検出した特徴からエッジ及び線の輪郭に沿って存在する特徴を除外する(12)。そして、上記残りの特徴を平面に割り当て、上記割り当てた特徴から局所情報を用いて一部の特徴を選択し、上記選択した特徴を対象に特徴マッチングを行う(14)。上記特徴の検出、上記特徴の除外、上記残りの特徴の割当て、上記一部の特徴の選択、及び上記特徴マッチングの実施のうち少なくとも一つを、上記一つの2次元又は3次元画像データから作成したスケールが異なる複数の画像データに対して行う。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、2次元又は3次元画像データ内の対象を認識する特徴マッチング方法及びそれを用いた商品認識システムに関する。
【背景技術】
【0002】
特許文献1は、1つの対象領域に対して、複数の処理(バウンディングボックスの生成、幾何正規化、ウェーブレット分解、カラーキューブ分解、形状分解、低解像度のグレースケール画像の生成)を行うことで、対象を認識する手法を開示している。
【先行技術文献】
【特許文献】
【0003】
【特許文献1】米国特許第7,016,532号明細書
【発明の概要】
【発明が解決しようとする課題】
【0004】
上記特許文献1に開示された手法は、線、端面、領域などのラージスケール(large-scale)の特徴に関しては、安定した特徴マッチングを行うことができない。また、並列処理を行ったとしても、全ての対象領域に対して複数の処理を行うことによる処理速度の低下は避けられない。
【0005】
本発明は、上記の点に鑑みてなされたもので、簡素なシステムで高速化が可能な特徴マッチング方法及びそれを用いた商品認識システムを提供することを目的とする。
【課題を解決するための手段】
【0006】
本発明の一態様による特徴マッチング方法は、
一つの2次元又は3次元画像データ内で所定の属性が極値(Local Maximum and/or Minimum)となる特徴(features)を検出し(10)、
上記検出した特徴からエッジ及び線の輪郭に沿って存在する特徴を除外し(12)、
上記残りの特徴を平面に割り当て(14)、
上記割り当てた特徴から局所情報(local information)を用いて一部の特徴を選択し(14)、
上記選択した特徴を対象に特徴マッチングを行う(14)、
2次元又は3次元画像データ内の対象を認識する特徴マッチング方法であって、
上記一つの2次元又は3次元画像データからスケールが異なる複数の画像データを作成し、
上記作成された異なる複数の画像データに対して、上記特徴の検出、上記特徴の除外、上記残りの特徴の割当て、上記一部の特徴の選択、及び上記特徴マッチングの実施のうち少なくとも一つが行われる、
ことを特徴とする。
また、本発明の一態様による商品認識システムは、
予め登録された複数の商品の特徴を記録するように構成された特徴記憶部(134)と、
商品を撮影するよう構成された画像入力部(130)と、
上記画像入力部で商品を撮影して得られた画像から特徴を抽出し、上記抽出した特徴を上記特徴記憶部に記録されている特徴と比較対照することにより、上記画像入力部で撮影した商品を自動認識するよう構成された自動認識部(132)と、
上記自動認識部の認識結果を利用して、精算処理を行う精算部(132)と、
を具備し、
上記自動認識部は、上記本発明の一態様による特徴マッチング方法を用いることを特徴とする。
【発明の効果】
【0007】
本発明によれば、簡素なシステムで高速化が可能な特徴マッチング方法及びそれを用いた商品認識システムを提供することができる。
【図面の簡単な説明】
【0008】
【図1】本発明の第1実施形態に係る特徴マッチング方法のブロック図である。
【図2A】オリジナル画像を示す図である。
【図2B】特徴を抽出するために使用された一連のマルチスケール画像を示す図である。
【図2C】マルチスケール特徴検出(multi-scale feature detection)によって抽出された特徴を示す図である。
【図3A】オリジナル画像の特徴と該オリジナル画像を20画素分平行移動した画像の特徴とのマッチングを示す図である。
【図3B】オリジナル画像の特徴と該オリジナル画像を0.7倍した画像の特徴とのマッチングを示す図である。
【図3C】オリジナル画像の特徴と該オリジナル画像を30度回転した画像の特徴とのマッチングを示す図である。
【図3D】オリジナル画像の特徴と該オリジナル画像をアフィン3D変形に相当するように0.4の剪断(shearing)を行った画像の特徴とのマッチングを示す図である。
【図4】データセットからの最終的なマッチング結果を示す図である。
【図5】本発明の第2実施形態に係る特徴マッチング方法における高速マッチングサーチ手法のブロック図である。
【図6】総当り(Brute-Force)マッチング法を説明するための図である。
【図7】全数検索(exhaustive search)を用いた2つの多次元セットのマッチングサーチの例を示す図である。
【図8】大量の特徴点(feature points)に対する全数検索を用いたマッチングサーチに要した時間の実験統計結果を示す図である。
【図9A】特徴空間(feature space)全体を幾つかのサブ空間(subspace)に階層的に分解する手順を示す図である。
【図9B】階層的に分解されたサブ空間を示す図である。
【図10】スモールデータベースに対する総当たりマッチング法及び高速マッチング法の比較実験の統計結果を示す図である。
【図11】ラージデータベースに対する総当たりマッチング法及び高速マッチング法の比較実験の統計結果を示す図である。
【図12】第1アプリケーションとしての情報検索システムの構成を示す図である。
【図13】第1アプリケーションとしての情報検索システムの動作フローチャートを示す図である。
【図14】第1アプリケーションとしての情報検索システムの変形例の構成を示す図である。
【図15】第2アプリケーションとしての情報検索システムの構成を示す図である。
【図16】第2アプリケーションとしての情報検索システムの変形例を説明するための図である。
【図17】第2アプリケーションとしての情報検索システムの更に別の変形例の構成を示す図である。
【図18】図17の構成を適用した携帯電話機の動作フローチャートを示す図である。
【図19】第3アプリケーションとしての情報検索システムの構成を示す図である。
【図20】第4アプリケーションとしての商品認識システムの構成を示す図である。
【図21】予めデータベースに登録される特徴を説明するための図である。
【図22】第4アプリケーションとしての商品認識システムにおける商品精算のフローチャートを示す図である。
【図23】特徴の抽出、認識処理のフローチャートを示す図である。
【図24】カメラからの画像の特徴と予め登録している参照画像の特徴との比較対象を説明するための図である。
【図25】第5アプリケーションとしての検索システムの概略構成を示す図である。
【図26】第5アプリケーションとしての検索システムのブロック構成図である。
【図27】第5アプリケーションとしての検索システムの動作フローチャートを示す図である。
【図28】DBとのマッチング処理の詳細フローチャートを示す図である。
【図29】画像候補を1点だけ表示する場合のデジタルカメラの表示部の表示画面を示す図である。
【図30】9点の画像候補を表示する場合の表示画面を示す図である。
【図31】特徴データベースの作成方法を説明するためのフローチャートを示す図である。
【図32】特徴データベースの作成方法の別の例を説明するためのフローチャートを示す図である。
【図33】特徴データベースの作成方法の更に別の例を説明するためのフローチャートを示す図である。
【図34】特徴データベースの作成方法の他の例を説明するためのフローチャートを示す図である。
【図35】看板として駅の駅名表示板を撮影した場合の動作概念を説明するための図である。
【図36】地図上に写真を表示した例を示す図である。
【図37】地図上に写真を表示した別の例を示す図である。
【図38】写真が多い場合の地図上への写真の表示例を示す図である。
【図39】写真が多い場合の地図上への写真の別の表示例を示す図である。
【図40】第6アプリケーションとしての検索システムのブロック構成図である。
【図41】第6アプリケーションとしての検索システムの動作フローチャートを示す図である。
【図42】プリントアウトの撮影処理の詳細フローチャートを示す図である。
【図43】特徴データベースの作成方法を説明するためのフローチャートを示す図である。
【図44】第7アプリケーションとしての検索システムの適用されたカメラ付携帯電話機のブロック構成図である。
【図45】第8アプリケーションとしての検索システムの動作フローチャートを示す図である。
【図46】第9アプリケーションとしての検索システムで用いられる概要特徴を説明するための図である。
【図47】第9アプリケーションとしての検索システムで用いられる詳細特徴を説明するための図である。
【図48】原画像データと概要テンプレート及び詳細テンプレートとの位置関係を説明するための図である。
【図49】第9アプリケーションとしての検索システムの動作フローチャートを示す図である。
【図50】画像データの中央部に注目した詳細テンプレートを説明するための図である。
【図51】画像内に数箇所分散配置した詳細テンプレートを説明するための図である。
【図52】注目領域を原画像データ撮影時の合焦位置においた詳細テンプレートを説明するための図である。
【図53】概要テンプレートと同じ領域に対して作成した詳細テンプレートを説明するための図である。
【図54】第10アプリケーションとしての検索システムの動作フローチャートを示す図である。
【図55】第11アプリケーションとしての検索システムの構成を示す図である。
【図56】認識要素同定(identify)処理を示すフローチャートである。
【発明を実施するための形態】
【0009】
以下、図面を参照して、本発明の特徴マッチング方法を説明する。
[第1実施形態]
本発明の第1実施形態に係る特徴マッチング方法は、PBR(Point Based Recognition)とも称され、図1に示すように、特徴検出(Feature Detection)10、特徴選択(Feature Adoption)12、及び特徴認識(Feature Recognition)14の3つの部分からなる。なお、特徴は空間的、時間的に分散している。例えば、本方法の認識対象が画像の場合には、2次元的な広がりの中での特徴マッチング(Feature Matching)である。時間的な広がりを考慮すれば、動画の認識が行える。
【0010】
特徴検出10では、入力されたオブジェクトデータ、例えば画像から、スケールと配置に左右されない空間的に安定した特徴を検出する。特徴選択12は、特徴検出10で検出された特徴からロバストな認識を行うためのロバストで安定した部分を選択する。特徴認識14は、特徴選択12で抽出された特徴と付加的な制限とを用い、予め分析されてデータベース16に蓄積されているオブジェクトを、位置づけ(locate)、インデックス付け(index)、及び認識を行う(recognize)。
【0011】
以下、それら特徴検出10、特徴選択12、及び特徴認識14のそれぞれについて、詳細に説明する。
【0012】
まず、特徴検出10について説明する。
ロバストな認識ができるかどうかは、選ばれた特徴とマッチングのための手法の両方に依存する。良い特徴は、マッチングをより良くそしてロバストに行える。従って、最適な特徴の選択とマッチング方法を合わせる事で信頼性と安定性を増す事ができる。一般に、線、端面、領域などのラージスケール(large-scale)の特徴は、マッチング演算のためにより広範囲な情報を与えるため、その分マッチングは容易である。しかしながら、ラージスケールの特徴はまた、視点、幾何学的配置、照明の変化によって、大きな画像歪みを生じる傾向がある。それ故、マッチングのためにはそれらの歪みを補うために大きな制約条件と仮定が必要である。残念ながら、これらの制約条件をモデル化するのに必要な数式が一般的には未知なので、ラージスケールの特徴はしばしば近似的に画像の幾何学配置のみから復元(recover)される。
【0013】
画像認識のために、像空間における正確な2次元的な一致を復元する必要がある。点といったスモールスケール(Small Scale)の特徴は、対応する測定結果が少なくても、画素単位の精度を見込めるという優位性を持っている。さらに、点の特徴(point feature)は、(線、面などの)ラージスケールな特徴よりも、識別力、遮蔽時(特徴量の一部が隠された時)における強さ、アフィン変換における充分な不変性、の点で優位である。特徴点の不利な点は、しばしばまばらに点在する点群と測定結果だけしか使えず、局所情報しかないためにマッチングさせることが難しい場合があるという点である。しかしながらまた一方で、多くの特徴点が確実に検出されるならば、他の特徴の場合には必要となる制約や様々な条件によって生じる測定品質劣化も起こる事なしに、多くの画像の一致点を復元する事ができる。実際に、ラージスケールの特徴を用いた色々な手法による測定や、最も信頼出来る測定結果が現れる状態を示す完全なアフィン・フィールドの状態は、しばしば近傍の点(near feature points)の間で見られる。これらの要因を考慮して、我々は認識に使用する特徴として点(=特徴点)を使用する事を選んだ。
【0014】
一般的に特徴検出というものの持つ課題は小さくは無い。画像認識やマッチングの為に、たとえ現実世界の構造とまったく物理的に一致しない場合でも、検出された特徴はそれらがその認識方法の中で優れた信頼性と安定性を示す必要がある。言い換えると、特徴検出方法は、様々なアフィン条件の下でも識別可能で信頼性が高く再現性のある特徴を、出来る限り多く検出可能とするべきである。そうする事により、特徴量の多くが遮蔽によって使用出来なくなったとしても、更に画像マッチングとパラメータ復元を行う場合に充分な特徴量を確保できる事になる。
【0015】
本実施形態における特徴検出10では、リッチテクスチャ領域(rich-texture regions)を伴った特徴点(point feature)を検出する方法を用いる。この方法では、3つのフィルタが使用される。最初に、局所極大(Local Maximum)を持つ点を抽出する為に高域通過フィルタが使用される。Rは中心がPである3×3のウィンドウ、F(P)はそのポイントにおいて適用した高域通過フィルタFの出力値とする。
【0016】
もし、
F(P)=max{P>Pi:R}>Threshold (1)
ならば、点Pは特徴候補となり、次に続くチェックのためにキープされる。なお、このフィルタは、局所極小(Local Minimum)を抽出するものであっても良い。
【0017】
2番目のフィルタは示唆的特徴フィルタ(distinctive feature filter)である。知られているように、エッジや線の輪郭に沿って存在する点はマッチングの為には安定していない。それは所謂、合っているように見えてしまう効果(matching arbitrary effect)が働くためであり、マッチングの信頼性の為にはそれらのポイントを外さなければならない。また、画像の共分散行列(covariance matrix)は小領域の画像の構造を表す良い指標であるというという事が知られている。共分散行列と画像構造の関係をまとめると、小さな固有値(eigen value)は領域内が比較的一様な強度である事を表している。大小ひと組の固有値は高いテクスチャパターンを表し、大きな固有値が二つある場合には線形な特徴、白黒が点在するテクスチャまたはその他のパターンを表している。従って、これらの特性を用いて線形な特徴点(feature points)を取り除くフィルタを設計する事が出来る。
【0018】
Mを、以下のような画像導関数から算出された2×2の行列とし、
【0019】
【数1】
また、λ1とλ2をMの固有値であるとすると、線形なエッジの度合い(measure)は、
R=det(M)−k(trace(M))2 (3)
である。但し、det(M)=λ1λ2であり、trace(M)=λ1+λ2である。
【0020】
それで、もしエッジの度合いが
R(P)>Threshold (4)
ならば、点Pは線形なエッジ点として扱われ、特徴候補(リスト)から外される。
【0021】
3番目のフィルタは、検出された点を繰り返しサブピクセル精度にリファインする内挿フィルタ(interpolation filter)である。アフィン平面が、局所的な点(local points)を連続的な平面に再構築する為にまず用いられる。その結果、最適解が収束しサブピクセル精度に到達するまで、このフィルタは繰り返しその点を再配列した平面の上に絞り込んでいく。
【0022】
本実施形態の新規な面は、マルチ解像度(multi-resolution)手法を採用し、複数の解像度の画像、各々から特徴を抽出することによって、スケール不変性を向上させていることである。
【0023】
アフィン変換のスケール不変性を実現する為に、特徴検出処理の中でマルチ解像度手法が採用されている。これは、処理スピード向上を主目的とする従来のピラミッドの使用法とは異なるものである。言い換えれば、粗い検索からより細かい検索へ、即ち、効果的なアフィンスケール不変性を達成するために、異なるスケールにわたって有用な特徴を見つける事を目的としているので、ピラミッドのそれぞれのレベルの特徴を独立に処理する。
【0024】
図2A乃至図2Cは、このアプローチ方法が雑然とした場面(cluttered scene)に適用された結果を示している。図2Aは原画像を、図2Bは特徴を抽出するために使用された一連のマルチスケール画像を、そして図2Cは抽出された特徴を、それぞれ示している。
【0025】
次に、特徴選択12について説明する。
上記特徴検出10においていったん検出されれば、その検出された特徴はロバストな認識の為のロバスト且つ安定した特徴として採用されなければならない。上述の如く、特徴点(point features)を使用する事における弱点は、初期の段階では、しばしば、まばらな点集合と単なる局所情報が利用できるだけなのでマッチングが難しいということである。適した特徴選択の方法を用いる事は、視点、幾何学的配置、照明などの変化を考慮すると大変重要である。
【0026】
そのアプローチにおいて、本実施形態における特徴選択12では、アフィン領域と呼ぶ局所的な情報を用いた個々の特徴点(feature point)を選択(adopt)する。3つの制約条件が局所領域を決めるために用いられる。言い換えれば、3つの制限は、強度(intensity)、倍率(scale)、方向(orientation)である。強度の制約とは、その領域内の画素から計算された画像勾配値(image gradient value)G(x,y)であり、そしてそれは特徴のテクスチャの度合いを表している。
【0027】
【数2】
二つの画像のマッチングにおいて、ベースラインが小さい場合には、線形誤差が小さいため強度による特徴選択で画像のマッチングは十分行える。シンプルな相関によるマッチングを使う事ができる。さらに、もしマッチした画像が大きな画像歪みを持っている場合には、アフィン変換による変形マッチングはその歪み補正に有効である。
【0028】
しかしながら、大きな画像ベースライン(対応した画像が拡大縮小を含む幾何学的な変形や2D&3D回転を持つ)の状況下では、単純な強度選択だけでは充分ではない。単純な強度相関は拡大縮小・回転不変ではない事は良く知られている。このような場合、マッチする対応点を選択する為に、ロバスト且つ安定な利点をもつ特徴として考えられる全ての制約条件を熟考するべきである。倍率と局所的な方向の制約は、選択とマッチング処理の中に組み込まれている。まずはじめに、方向的に連続した空間が量子化され、離散的になる。
【0029】
【数3】
それらの、量子化された方向成分が、その幾何学的配置空間を構成する。画像を分解したモデルを使う事で、特徴の全ての局所的な方向成分を離散的な基底空間(the discrete base space)に対して割り当てることが出来る。このようにすることで、それらの局所的な方向成分をコンパクトな数式で表す事ができる。全ての考えうる性質(qualities)(強度、倍率、方向)に対して当てはまる表現式(consistent)を形成するために、強度と倍率の値が用いられて特徴マッチングの為のあらゆる局所的な方向成分の重み付けがなされる。さらにその上、量子化効果(誤差)を低減する為に、ガウシャンによる平滑化関数(Gaussian smoothing processing)が使われ、重み付けが強調される。
【0030】
以下の式(8)で示すような形で、特徴の周辺領域から正規化した方向の特徴を持つようにしていることが本実施形態の新規な面である。
【0031】
Rはスケールピラミッドを作るためのガウシアンフィルタによって定義される重み付けの範囲である。範囲内のすべての点P(xi,yi)において、その量子化された方向成分は式(8)で表される。
【0032】
【数4】
ここで、G(xi,yi)は上記式(5)によって算出される勾配であり、Weight(xi,yi)は、処理された点(x,y)に中心がある以下の式(9)のようなガウシャン重み関数である。
【0033】
Weight(xi,yi)=exp(−((xi−x)2+(yi−y)2)/σ2) (9)
上述の選択方法は、画像の拡大縮小や面外での回転を取り扱う際に有効である。しかし、それは面内の方向成分(in plane orientation)に対して過敏である。このずれを補正する為に、アフィン領域は重み付けの計算の中で、同一の方向に正規化される。さらに回転方向の量子化誤差をキャンセルする為に、重−線形補間(bi-linear interpolation)とガウシャン平滑化処理(Gaussian smoothing processing)が処理ウィンドウの中で適用される。同様に、照明条件の変化に対するロバスト性を強める為に、入力画像は正規化される。
【0034】
特徴選択12の出力となるのは、各々の合致点と関連した領域(全ての制約が組み込まれ、アフィン変換で表され、照明不変性を達成する)を表す簡潔なベクトル表現(compact vector representation)である。
【0035】
図3A乃至図3Dに、本アプローチにおいて異なるアフィン変換を行ったシーンに適用した結果を示す。図3Aはオリジナル画像を20画素分平行移動したシーン、図3Bはオリジナル画像を0.7倍したシーン、図3Cはオリジナル画像を30度回転したシーン、図3Dはオリジナル画像をアフィン3D変形に相当するように0.4の剪断(shearing)を行ったシーン、に適用した結果をそれぞれ示している。
【0036】
次に、特徴認識14について説明する。
上記特徴検出10で検出され、上記特徴選択12で選択された特徴は、幾何学的不変性(geometry invariance)について良い特性を示している。マッチング処理は、選択された特徴に基づいて行なわれる。マッチング類似性の判定にはSSD(Sum of Square Difference)を用いる。すなわち、マッチング画像の各々の特徴Pに関する類似度(P)が計算され、そして、SSDサーチは最も類似性の高い最適合致点を発見する。もし、
Similarity(P)={P,Pi}>Threshold (10)
の関係があれば、Piは点Pと一致している。
【0037】
RANSAC(Random Sample Consensus)を利用したペアの評価手法を、画像認識の信頼性評価手法として利用していること、特に、マッチングした点が少ないときに、本手法で算出するアフィン変換行列から、認識時の姿勢を算出し、この姿勢に基づいて認識の信頼性を評価できることは効果的である。
【0038】
実験結果は、上記複数の制約条件を満たす特徴部分が画像マッチングの良い特性を備えている事を示している。しかしながら、非常に雑然としたシーンでは、特に背景にある特徴量の為に、ミスマッチング(outliersと呼ぶ)が生じる場合がある。それらのミスマッチングを除去する目的で、基本的な幾何学的制約条件を満たすペアを探すためにRANSACに基づくアプローチが使われている。マッチした画像特徴が同じ対象物の場合には、二次元変換で(平面射影変換(homography)として)関係が表されることが知られている。計算の高速化の為に、特徴認識14では、2次元アフィン変換による制約を使用して平面射影変換を近似してミスマッチングの除去を行う。パラメータの変化を推定するためには3点あればよい。まず、RANSAC遂次代入は、最初の変換行列Minitを推定する為に、任意抽出された3特徴点を用いる。
【0039】
【数5】
推定された変換行列は、次に、マッチングする全ての特徴を用いて繰り返し絞り込まれていく。このミスマッチングはこれらのマッチング点が大きなマッチングずれを有する事を示している。
【0040】
【数6】
ここで、xitは推定されたアフィン変換式によってxiからxisに向かってアフィン変形された点を表す。すなわち、
【0041】
【数7】
その特徴マッチングの最終アウトプットはミスマッチングかどうかの判定と推定された2次元パラメータ変換(アフィンパラメータ)が添付されたマッチング点のリストである。
【0042】
図4は、予め分析されデータベース16に蓄積されたオブジェクトデータセットからの、本特徴認識14で得られた最終的なマッチング結果の例を示している。
【0043】
[第2実施形態]
本実施形態では、上記特徴認識14において、更なる高速化を図る高速マッチングサーチ手法を説明する。
【0044】
この高速マッチングサーチ手法は、dBTree(Data Base Tree)と呼ぶ。効果的な画像マッチングサーチ技術であるdBTreeは、上記第1実施形態で説明したようなPBR特徴点(feature points)が抽出されている多次元のデータベース16からマッチングする対を高速に復元できる。技術的には、この課題はNPデータクエリー問題である。言い換えると、N次元のデータベース上にある点とクエリーポイントqが与えられた時、qとデータベースの点間の最もマッチするもの(最近傍)を見つける事が課題となっている。本実施形態による高速マッチングサーチ手法は、効果的なデータ表現、マッチング、多次元の特徴空間のindexingを行うためのPBRの特徴の階層的な表現を形作る木構造のマッチングアプローチである。
【0045】
技術的には、dBTreeマッチングは、図5に示すように、dBTree構築(dBTree Construction)18、dBTree検索(dBTree Search)20、及びインデックスマッチング(Match Indexing)22から構成される。dBTree構築18では、高速な特徴検索、クエリーを実現するために、上記第1実施形態のようにして入力されたオブジェクトデータから得られたPBR特徴より、PBR特徴空間上の階層的なデータ表現(以下、dBTree表現)を作る。作られたdBTree表現はデータベース16に登録される。データベース16には、こうして多数のオブジェクトデータに対するdBTree表現が登録される。dBTree検索20では、入力されたオブジェクトデータから上記第1実施形態のようにして得られたPBR特徴の最近傍点を、上記データベース16に構成されたdBTree空間の上で検索する。インデックスマッチング22では、発見された最近傍(Nearest Neighbors; NNs)と更なるPBRの制限条件とから、マッチングペアを抽出、修正する。
【0046】
本実施形態におけるdBTreeアプローチの詳細を説明する前に、マッチングサーチの課題について説明しておく。
【0047】
マッチングサーチのゴールは、多次元のデータベースにおいてあり得るマッチングの高速復元である。本実施形態では、PBR特徴マッチングといった固有のケースに注目しているけれども、本dBTree検索構造は一般のどのようなデータ検索アプリケーションにも適用できる。
【0048】
二つの点群P={pi,i=1,2,…,N}とQ={qj,j=1,2,…,M}が与えられ、piとqiがk次元ベクトルの場合に、ゴールはPとQ二つの点群の間で全ての可能なマッチングを見つける事である。言いかえれば、Matches={pi<=>qj}が確実な類似性を持っているという事である。
【0049】
PBR特徴点は特徴マッチングにおいては良い不変特性を持っているので、不変量特徴のユークリッド距離が類似性マッチングに使用されている。言いかえれば、各々の特徴pi、類似度(pi)はマッチした特徴qjに対して算出される。そして、マッチングサーチは、最短のユークリッド距離を持つ最良合致点を見つけ出す。
【0050】
明らかに、マッチング性能と速度はN、Mといった2つの点群の特徴点数に依存している。
【0051】
二つのデータセットの点を合致させる時に、まず思い浮かぶのは恐らく“総当り(Brute-Force)方式による”労力のかかるサーチ方法だろう。図6に示した如く、総当りアプローチはセットPの全ての点を取っていき、そして、セットQの各々の点に対してその類似度を演算する。明らかに精緻な(exhaustive)検索のマッチングスピードはポイントセットの特徴の点数に直線的に比例し、トータルO(N×M)のアルゴリズム演算(ユークリッド距離演算)に帰着する。例として、547点と547点の二つの典型的なPBR特徴セットのマッチングの為に、総当りマッチングは1.7GHzのPCで3.79秒かかった。図7に、全数検索(exhaustive search)を用いた2つの多次元データセット(2955点×5729点)のマッチングの例を示す。結果的に169.89秒かかると推定できる。
【0052】
図8は、大量の特徴点(feature points)(入力画像特徴数Nとデータベース特徴数Mのトータルの特徴数N×M)に対して、(50超の実験画像の)総当り検索のマッチングに要した時間の実験統計結果を示している。
【0053】
以下、本実施形態におけるdBTreeアプローチの詳細を説明する。
まず、dBTree構築18について説明する。
【0054】
dBTreeマッチングのコアとなるデータ構造は、効果的な階層表現(超関数を特徴付ける)を形作るツリー構造である。行をスキャンしていく特徴の表現(言いかえれば、全ての特徴が表型構造(grid structure)の中に表されている)が総当り検索を使用しているのとは違って、dBTreeマッチングでは、全空間をツリーノードによって幾つかのサブスペースに分けて階層化した平衡二分木(Balanced-binary tree)でk次元のデータを表現する。このツリーのルートノードは全部のマッチング空間を表し、その枝ノードは下位空間に異なるキャラクターの特徴を持つ矩形のサブ空間を表す。サブ空間はオリジナルスペースと比べると比較的小さいため、入力特徴の数も少ないので、ツリー表現ではどんな入力特徴でもその位置によらず高速にアクセスできる。入力特徴を含んでいるサブスペースを見つけるまで階層をダウンさせる事によって、マッチングする点のサブスペースの中での同定(identify)を少数のノードをスキャンするだけで行える。
【0055】
図9A及び図9Bは、dBTreeデータ構造を形成するために、特徴空間24全体を幾つかのサブ空間26の中に階層的に分解(decomposing)する手順を示している。まず、定義済みの分割方法に従って、入力点群を分割(セグメント化)する。ここでは中央値(メディアン)フィルタリングが使われているので、同数の点が分割した両方のサブ空間26に入る。ツリーの各々のノードは、1つのパラメータ次元の値により定義されており、サブ空間26の上下方向、左右方向のサブ空間26に点が分割され、親ノードの点のそれぞれ半分が入る。これらの子ノードは、別のパラメータ次元により同数の二組に再び分割される。このプロセスはそれぞれの葉に含まれる点の数がlog(N)レベルに達するまで繰り返される。
【0056】
次に、dBTree検索20について説明する。
(最近傍のサブ空間26をサーチし、その中でもっとも近いノードを探す為の)ツリーの中でクエリーの点を検索する為には二つのステップがある。まず、その木はクエリーポイントを含んだサブ空間26を見つける為に、横断的にサーチされる。サブ空間26の多くは比較的小さいので、素早く、単にlog(N)回の比較演算によりサブ空間26を見つける事が出来、そしてその空間がマッチングする点を含む確率は高い。いったんサブ空間26が見つけられたら、サブ空間26内の全てのノードのノードレベルの検索が行われ、マッチングポイントの同定が行われる。このプロセスは、クエリーの点に対して最も近いノードが見つかるまで繰り返される。
【0057】
上記検索方法による実験では、次元数の少ないデータセットのマッチングにおいては速度向上が確認できた。しかしながら驚くべきことに、大規模なデータセットに対してはまったく効果がみられず、総当り検索アプローチよりもさえ遅い。その理由には二つの側面がある。まず、古典的なツリー検索の効率は、もしクエリーポイントまでの距離が極端に遠いならば、たくさんの木の枝を刈り取る(無視できる)場合があるという事実に基づいており、そしてこの事で不必要な検索時間を大幅に削減する事ができている。これは、次元数の少ないデータセットに対してはよく起こるが、次元数が多くなると、中央の枝に隣接して存在する調べるべき枝が多くなりすぎる。枝を取り除き、ベストな検索パスを探すためには多くの計算が実行される事になり、その為ツリー型における労力を要するサーチとなってしまっている。第二に、サブ空間26の中でノードレベルの横断サーチにより、全ての下位ノード(どのくらいの下位ノードがあるかによるが)を調べる事になりこれも労力がかかる。多次元のデータセットでは各々のサブ空間26には、労力のかかる横断サーチが必要なノードが多く含まれすぎている。
【0058】
本実施形態では、これらの課題を解決し、多次元データセットにおいても効率的なマッチングを実現するために、二つの戦略(方法)を用いている。まず、ツリー・プルーニング・フィルタ(枝刈りフィルタ)が調査の必要な枝を切り落とす(減らす)のに使用される。ある数の近傍の枝の調査(即ち、探索ステップ)が終わったところで、探索は強制終了させられる。距離フィルタもこの目的で使う事ができるが、広範囲に及ぶ実験からは探索ステップフィルタの方が正しいマッチングペアを探す事と、計算コストを勘案するとよりよいパフォーマンスを示している。近似値による検索結果を見ることになるが、実験結果からは、近似によるミスマッチングの増加は2%以下である。
【0059】
二つ目の戦略(方法)は、ノード距離フィルタを導入する事による改善である。実世界における多くの場合のマッチングの制約条件に基づけば、正しいマッチングは点在している。そこで、全ての特徴ノードをサーチする代わりにサーチする範囲に距離の閾値を設ける。ノードサーチは円周パターンで行われ、ターゲットに近いノードが最初にサーチされる。検索限界に達するとすぐに、検索は強制的に止められ、そしてその時の最近傍(複数)が出力される。
【0060】
次に、インデックスマッチング22について説明する。
最近傍が検出されると、次のステップでその最近傍(複数)が正しいマッチングかどうかが判定される。それが前述のPBRマッチングと同様に、正しいマッチングを選択するために、マッチングの閾値を設けている。例えば、1番目の最近傍までのと2番目の最近傍との類似度の差(1番目の最近傍までの距離/2番目の最近傍までの距離)が前もって定めた閾値以下であれば、その点は正しいマッチングであると判定される。
【0061】
図10及び図11に(50を超えるテスト画像での)総当りとdBTreeマッチング法の比較実験の統計結果を示す。
【0062】
なお、1番目と2番目の最近傍の類似度の差は、その点の類似度の同一性判定における正確性を表現するパラメータとなる。また、画像内のマッチング点の数そのものも、画像としての同一性判定における正確性を表現するパラメータとなる。さらに、上記式(13)で表現される画像内のマッチング点のアフィン変換における差分の総和(残差)も、画像としての同一性判定における正確性を表現するパラメータとなる。これらの一部を利用してもよいし、それぞれを変数とする変換式を定義し、これをマッチングにおける同一性判定の正確性としてもよい。
【0063】
そして、該正確性の値を利用することにより、マッチングした結果として複数の画像を一定の序列で出力することも可能となる。例えば、マッチング点の数を正確性として利用し、その数の降順でマッチング結果を表示することにより、より信頼できる画像から順に出力することになる。
【0064】
以下、上記第1及び第2実施形態で説明したような特徴マッチング方法を利用したアプリケーションについて説明する。
【0065】
[第1アプリケーション]
図12は、第1アプリケーションとしての情報検索システムの構成を示す図である。
【0066】
この情報検索システムは、情報呈示装置100と、記憶部102と、データセットサーバ104と、情報サーバ106とからなる。上記情報呈示装置100は、プラットフォームハードウェアに構成される。上記記憶部102は、上記プラットフォーム内に設けられる。上記データセットサーバ104及び上記情報サーバ106は、上記プラットフォームハードウェアがアクセス可能なサイトに構成される。
【0067】
ここで、上記情報呈示装置100は、撮影部108と、認識及び識別部110と、情報指定部112と、呈示画像生成部114と、画像表示装置116とから構成される。上記認識及び識別部110,情報指定部112,及び呈示画像生成部114は、プラットフォームハードウェア内に設置された情報呈示装置のアプリケーションソフトウェアにより実現される。
【0068】
なお、上記の撮影部108及び画像表示装置116は、プラットフォームハードウェアが物理的な構成として備えていたり、外部に接続されるものの場合もある。従って、上記の認識及び識別部110、情報指定部112及び呈示画像生成部114を情報呈示装置と称しても構わない。しかしながら、本アプリケーションでは、画像の撮影から最終的な画像の呈示までを行う装置としてとらえて、それら撮影部108、認識及び識別部110、情報指定部112、呈示画像生成部114、及び画像表示装置116を合わせて情報呈示装置と称する。
【0069】
ここで、上記撮影部108は、所定の撮影範囲を有するカメラ等である。上記認識及び識別部110は、上記撮影部108により撮影された画像から、上記撮影範囲内の個々の対象物を認識し識別するものである。上記情報指定部112は、上記認識及び識別部110によって識別された個々の対象物の情報に応じて、情報サーバ106より所定の情報(表示コンテンツ)を取得する。そして、上記情報指定部112は、上記所定の情報を関連情報として指定する。上記呈示画像生成部114は、上記情報指定部112により指定された関連情報を上記撮影部108により撮影された画像と関連させた呈示画像を生成する。そして、上記画像表示装置116は、上記呈示画像生成部114で生成された呈示画像を表示する液晶等のディスプレイである。
【0070】
また、該プラットフォーム内の記憶部102には、図示しない通信部或いは記憶媒体を介して、データセットサーバ104よりデータセット118が保存されている。但しこのデータセット118の導入(ダウンロード又はメディア交換)及び保存は、情報呈示装置100の起動前後を問わず可能である。
【0071】
このような構成において、情報呈示装置100は、図13に示すように、まず、撮影部108によって画像を取得する(ステップS100)。次に、上記ステップS100にて取得した画像に対して、認識及び識別部110が、所定の対象物を抽出する(ステップS102)。続いて、認識及び識別部110が、上記ステップS102にて抽出した対象物の像(例えば四角形の枠内の画像)について上記プラットフォーム内記憶部102から読み出したデータセット118内の特徴を基に比較及び識別を行う。このようにして、認識及び識別部110が、一致する対象物像を検出する。そして、認識及び識別部110が、一致する対象物像を検出した場合には(ステップS104)、それを次ステップである情報指定部112において再度データセット118の対応するデータから取得すべき情報の在処及び/または取得方法を読み出して実行する(ステップS106)。一般的には、プラットフォームから通信等でネットワーク上などの外部に存在する情報サーバ106にアクセスし、情報を取得する。そして、呈示画像生成部114は、上記情報指定部112にて取得した情報(図示しない)をプラットフォーム内或いは外部にある画像表示装置116に表示可能なように加工して呈示画像を生成する。呈示画像生成部114から、この生成した呈示画像を画像表示装置116に送出することで、該画像表示装置116で情報を表示する(ステップS108)。ここで、場合によっては、撮影部108で取得した原画像上に上記で取得した情報を重畳させた呈示画像を生成して画像表示装置116に送出させることも有益な情報呈示である。従って、どのような手法で呈示を行うかは利用者により選択可能とする。
【0072】
また、図14に示すように、認識及び識別部110と情報指定部112との間に、位置及び姿勢(orientation)算出部120を設けるようにしても良い。上記呈示画像生成部114は、上記情報指定部112により指定された関連情報を、上記撮影部108により撮影された画像に対して、上記位置及び姿勢算出部120で算出された位置及び姿勢で重畳表示するような呈示画像を生成する。
【0073】
なお、図12及び図14では図示されていないが、プラットフォームの記憶容量が大きい場合には、以下のようなことも可能である。すなわち、データセットサーバ104よりデータセット118を導入する際に、情報サーバ106とデータセットサーバ104とを通信させ、導入するデータセットサーバ104に対応する情報(表示コンテンツ)をプラットフォーム内記憶部102に予め導入即ち保存する。このようにすれば、情報呈示装置100の動作効率を高めることができる。
【0074】
ここで、本第1アプリケーションを、カメラ付き携帯電話機をプラットフォームとした場合について説明する。携帯電話機は、基本的には個人で使用する機器である。近年そのほとんどの機種には、アプリケーションソフトウェアを携帯電話機でアクセス可能なインターネットサイト(以下、携帯サイトと略記)上から導入可能(いわゆるダウンロードによるインストール可能)である。本情報呈示装置100も基本的にはそういった機種の携帯電話機を前提にしている。つまり、携帯電話機の記憶部102に本情報呈示装置100のアプリケーションソフトウェアをインストールする。またデータセット118は、特定の携帯サイト(図示しない)に繋がるデータセットサーバ104から通信を介して適宜当該携帯電話機の記憶部102に保存する。
【0075】
特に、携帯電話機での本情報呈示装置100の利用範囲としては、例えば以下のような利用方法が挙げられる。すなわち、雑誌または新聞等に存在する写真を対象物に予め指定しておき、それに関するデータセットを用意しておく。利用者は上記出版物の紙面から携帯電話機で対象物を撮影し、その対象物に関連した情報を携帯サイトから読み出す。こういった場合、あらゆる出版物の写真やアイコン、イラスト等を全てを特徴として保持することは不可能である。従って、特定の使用範囲等に限定して特徴を提供することが現実的である。即ち、ある特定の雑誌の「○月号に掲載された写真を対象物として参照するためのデータセット」といった纏め方で利用者に供給すればよい。このようにすれば、利用者側も利用しやすく、また上述のように一つのデータセットに参照画像を100〜数100程度であれば携帯電話機の記憶部102に充分収まり且つ認識及び識別処理時間も数秒以内で済む。また、本情報呈示装置100に利用される印刷物側の写真・イラスト等には特段の仕掛けや処理が不要である。
【0076】
以上のような第1アプリケーションによれば、利用者にとってはその利用しようとする範囲のデータを複数一括して情報呈示装置100に導入することが容易にでき、また、データセットの供給側も準備しやすく、また商業的に提供しやすいサービスを実現できるようになる。
【0077】
また、位置及び姿勢を算出する機能も備えた場合には、情報サーバ106から取得された情報を原画像上に、適切な位置及び姿勢をもって表示可能となる。すなわち、利用者の情報取得効果をより高めることに繋がる。
【0078】
[第2アプリケーション]
次に、第2アプリケーションを説明する。
図15は、第2アプリケーションとしての情報検索システムの構成を示す図である。この情報検索システムの基本的な構成及び動作は、前述の第1アプリケーションと同様である。情報呈示装置100において特徴をセット単位で取り扱うことができることは、上述の通り利用者の利便性を増し、且つデータセットの供給を現実的にするものである。
【0079】
しかしながら、情報呈示装置100が広く普及し、またデータセットも極めて多種多様に多くの事業者から供給される状況になった時には、以下のようにすることが望ましい。すなわち、情報呈示装置100の利用者において利用度の高いもの(以下、これを基本データ122と称する。)は、データセット118として別体で供給せずに、どんなデータセット118を選択していても利用可能なようにしておくことが望ましい。例えば、データセット118自体の索引情報に紐付く対象物や最も頻繁に利用される対象物等については、データセット118からそれらを除外し、情報呈示装置100のアプリケーションソフトウェア内にそれら数点の特徴のみを常駐させることが有効である。言い換えると、本第2アプリケーションにおいては、データセット118は、利用者の利用目的や対応させる出版物または対象物に応じてセットを組み、アプリケーションソフトウェアとは別体で供給する。しかしながら、特に利用頻度が大きいか必要性の高い対象物についての特徴等は、基本データ122としてアプリケーションソフトウェア自体に常駐或いは保有させる。
【0080】
ここで再度、携帯電話機がプラットフォームである場合を例に説明する。例えば、通常のデータセット118を所定の携帯サイトから通信を介してダウンロードする事が最も実用的である。しかしながら、この際、データセット118の索引サイト(携帯サイト上のページ)上で案内及び検索が可能なことが携帯電話機利用者に便利である。そのサイト自体へアクセスする場合も、それ専用の対象物を本情報呈示装置100に撮影させ、閲覧ソフトウェアに上記サイトへのURLを渡すことでアクセス可能とする為に、特にデータセット118の準備を必要としない。すなわち、アプリケーションソフトウェア内に当該対象物に対応する特徴を基本データ122として存在させる。この場合、特定のイラストやロゴ等を対象物としても良いし、どこでも入手できるような無地の4角形などを対象物として設定しておく。
【0081】
あるいは、基本データ122をアプリケーションソフトウェア自体に常駐或いは保有させる代わりに、図16に示すように、供給されるデータセット118において、何れのデータセット118にも必ず基本データ122となる同一のデータファイル(図では特徴「A」)が少なくとも一組は内包されるようにしても良い。
【0082】
即ち、前述の通り、情報呈示装置100において実際に動作させる場合には、利用者が任意のデータセット118を導入する。ここで、何れのデータセット118にも前出の基本データ122が少なくとも1種は含まれており、利用頻度が大きいか必要性の高い対象物については必ず対応できる。例えば、図16に示すように、データセット118が多数(データセット(1)〜(n))用意されており、その中で1組或いは複数組のデータセット118をプラットフォーム内記憶部102に導入及び保存した場合を考える。この場合、どのデータセット118を選択したとしても必ず1種又は複数種の基本データ122は含まれている。したがって、利用者は特段の配慮をせずに基本的な対象物を撮影し、基本的な動作をさせることができる。繰り返しになるが、基本的な動作とは「データセットの索引ページへのアクセス」であったり「該情報呈示装置100供給者へのサポート窓口へのアクセス」或いは所定地域内に於ける「天気情報サイトへのアクセス」、その他利用者の多くが望む動作である。つまり、基本的な動作とは、利用者による使用頻度の高い動作であると定義する。
【0083】
また、図17に示すように、当該情報呈示装置100を起動させる際にデータセットサーバ104に接続して、必ず基本データ122をダウンロードし、他のデータセット118に取り込む或いは同時に参照可能とするようにしても良い。
【0084】
この構成は、データセット118は別体で供給、特にネットワーク経由でデータセットサーバ104よりダウンロードされる形態の場合に有効な基本データ122の導入方法を提供するものである。即ち、図17に示す構成により、データセット118をネットワークを介して本情報呈示装置100に供給する場合、データセット118を利用者が選択してデータセットサーバ104よりダウンロードする際に、データセット118に加え、自動的に基本データ122についても同時にダウンロードすることができる。また、図17に示す構成により、既に本情報呈示装置100の存するプラットフォームの記憶部102に基本データ122が保存されている場合には、その基本データ122の更新を図ることができる。
【0085】
これにより利用者は、特段の配慮をせずとも常に基本データ122を情報呈示装置100で利用可能となる。
【0086】
例えば、近年、カメラ付き携帯電話機においてアプリケーションソフトを利用できるものが一般的に普及している。これをプラットフォームに本情報呈示装置100の撮影部108及び画像表示装置116を除く機能を有するアプリケーションソフトウェアをインストールしてある場合を考える。この場合、図18に示すように、該アプリケーションソフトウェアを使用するに当たり、データセット118を携帯電話機の通信を介して所定のデータセットダウンロードサイトを閲覧する(ステップS110)。次に、データセットサーバ104より初期的にダウンロードを行う(ステップS112)。それに引き続き、データセットサーバ104からは、基本データ122の更新の必要性を判定する(ステップS114)。
【0087】
すなわち、該携帯電話機内に基本データ122が存在しない場合には、必要と判定する。また、該携帯電話機内の記憶部102に既に基本データ122が存在しても、その基本データ122のバージョンが、該データセットサーバ104が提供しようとする基本データ122のバージョンよりも古い場合には、更新が必要性と判定する。
【0088】
続いて、基本データ122についても上記のデータセット118と同様にダウンロードを行う(ステップS116)。そして、そのダウンロードした基本データ122を該携帯電話機内の記憶部102に保存する(ステップS118)。また、上記ダウンロードしたデータセット118を該携帯電話機内の記憶部102に保存する(ステップS120)。
【0089】
このように、該携帯電話機内の記憶部102に既に基本データ122が存在した場合は、バージョン比較により、更新の必要性を判定の上、基本データ122のダウンロード及び保存を行う。
【0090】
以上のように、データセット118の必要性はある程度利用者の必要に応じたデータセット118に限り該携帯電話機に保存することで、対象物の識別処理速度の確保と利用者の必要性に不便を掛けないことを両立させる。
【0091】
本情報呈示装置100の利用範囲としては新聞または雑誌などの出版物上の写真・イラストなどの意匠を対象物としてそれらに関係する、或いは起因する情報への携帯電話機よりのアクセスやそれらの情報をカメラで取得した像上に重畳表示する事による情報呈示の高度化がある。更に、印刷物に限らず物体や町中にある看板等も対象物として特徴に登録することも可能である。この場合、それらを携帯電話機から対象物として認識することで付加情報或いは最新情報の取得を行うことが可能である。
【0092】
更に携帯電話機を用いた利用形態として、CDやDVDといったパッケージを持った商品においては、そのジャケットデザインが様々であるため、それを対象物として利用することが可能である。例えば、店頭、或いは別途レコード会社等から当該ジャケット群に関するデータセットを利用者に配信することにより、CD及び/またはDVDショップ或いはレンタル店等において、各ジャケットを対象物として携帯電話機で認識できるようになる。このため、例えば、当該対象物にURLを関連づけておき、このURLにおいて、当該対象物に紐付く情報として例えば楽曲のさわり部分の音声配信等を携帯電話機に配信できる。また、この紐付く情報として、ジャケット面に応じたアノテーション(ジャケット写真の個別注釈)も適切に加えることが可能である。
【0093】
即ち、携帯電話機を用いた利用形態として、CDやDVDといったパッケージを持った商品のジャケットデザインを対象物として利用する場合には、以下のようにすれば良い。まず、(1)音楽を固定した記録媒体又はその包装の外観イメージの少なくとも一部を対象物データとして携帯電話機に予め配信する。そして、(2)当該対象物によって導かれたアドレスにアクセスした上記携帯電話機に対して、上記固定された音楽に関連した所定の音楽情報(音声データや注釈情報)を配信する。
【0094】
このようにすれば、レコード会社側のプロモーションとしても有効であるし、また、店側としても試聴等の準備の手間が省ける等のメリットが生ずる。
【0095】
なお、上述した各アプリケーションで説明した、認識及び識別部、情報指定部、呈示画像生成部、位置及び姿勢算出部は、いずれも情報呈示装置が内蔵するCPU及び当該CPU上で動作するプログラムで実現するものとして記載した。しかし、例えば専用回路を設けるなど、他の態様でも実現可能なものである。
【0096】
また、プラットフォーム内記憶部の実現態様としては、外付けのデータパック、着脱自在の記憶媒体(例えば、フラッシュメモリ)などがあるが、これに限定されない。
【0097】
また、本第2アプリケーションにおいても、上記第1アプリケーションと同様に位置及び姿勢算出部120を備え、算出した位置及び姿勢に基づいて関連情報を呈示するようにしても良い。
【0098】
また、図12、図14乃至図17に破線で示すように、データセットサーバ104及び/又は情報サーバ106の代わりに、交換可能な記憶メディア124を使用するものであっても良い。この場合プラットフォーム記憶部102へのデータセット118や基本データ122の導入とは、その記憶メディア124から内部メモリへのデータの展開を意味する。
【0099】
[第3アプリケーション]
例えば、図12に示した第1アプリケーションとしての情報検索システムの構成は、図19に示すように変形することができる。すなわち、第1アプリケーションにおいて上記情報呈示装置100内に設けていた上記認識及び識別部110、及び上記記憶部102内に設けていた上記データセット118を、図19に示すようにサーバ側へ設けても勿論よい。なお、このような構成の情報検索システムとする場合には、上記記憶部102内に設けていた上記記憶メディア124は必要性を欠くので設けない。
【0100】
[第4アプリケーション]
次に、第4アプリケーションを説明する。
図20は、第4アプリケーションとしての商品認識システムの構成を示す図である。
【0101】
この商品認証システムは、バーコードが取り付けられている商品の認識用のリーダであるバーコードスキャナ126と、商品の重量を量る重量秤128と、に加えて、商品を撮影するためのカメラ130を備えている。現金を収納するコントロール部/現金収納箱132は、認識用の商品特徴を登録したデータベース134により商品の認識を行い、認識した商品の種別、単価、合計価格をモニタ136に表示する。なお、カメラ130の視野138は、重量秤128の範囲と一致している。
【0102】
このような商品認識システムにおいて、システム提供者は、予め認識が必要となる対象物の画像を撮影し、そこから抽出された特徴をデータベース134に登録しておく。例えば、スーパーマーケットでの使用においては、トマト、林檎、ピーマンといった野菜類をそれぞれ撮影し、図21に示すように、特徴140を抽出し、それぞれに対応した認識IDや名称などの識別指標を添付してデータベース134に格納する。また、必要に応じて、各対象物の平均重量、平均サイズといった補助情報についてもデータベース134に格納しておく。
【0103】
図22は、本第4アプリケーションとしての商品認識システムにおける商品精算のフローチャートを示す図である。
【0104】
商品の購入者は、対象物である商品を持ってレジに設置されたカメラ130の視野138内に置くことで、当該商品の撮影を行う(ステップS122)。その商品撮影データは、カメラ130からコントロール部/現金収納箱132に転送され(ステップS124)、該コントロール部/現金収納箱132において、特徴の抽出と、データベース134を参照した商品の認識が行われる(ステップS126)。
【0105】
そして、商品が認識されたならば、コントロール部/現金収納箱132は、データベース134より当該認識商品の設定価格を呼び出して(ステップS128)、価格をモニタ136に表示して、精算を行う(ステップS130)。
【0106】
購入者がトマト、ピーマンの二種類の購入を行う場合、まずカメラ130でトマトを撮影することで、コントロール部/現金収納箱132は、その撮影データ中の特徴を抽出しデータベース134との照合が行われる。そして、照合後に対象物である商品が一つに特定された場合には、その価格、従量制ならば重さに応じた係数をデータベース134から読み出して、価格をモニタ136に出力する。次に、ピーマンについても同様に、対象商品の同定、価格の出力が行われる。そして最終的に、商品の合計価格を演算してモニタ136に出すことで精算が行われる。
【0107】
なお、照合後に類似度(similarity)の閾値を越えた対象候補が複数出た場合には、(1)モニタ136に候補を表示し選ばせる、(2)再度対象物の撮影を行う、といった方法を採り、対象物の確定(establish)を行う。
【0108】
なお、上記ではカメラ130による撮影は一商品ずつ行われる例を示したが、複数種類の対象商品を一度に撮影し、照合を行うことも可能である。
【0109】
また、購入者が自らこれらの処理を行えば、自動レジが実現できる。
図23は、上記ステップS126での特徴の抽出、認識処理のフローチャートを示す図である。
【0110】
即ち、カメラ130から入力された画像(商品撮影データ)の中から複数の特徴を抽出し(ステップS132)、また、データベース134から予め登録してある対象物の特徴を比較データとして読み出す(ステップS134)。そして、図24に示すように、上記カメラ130からの画像142の特徴と予め登録している参照画像144の特徴との比較対象を行い(ステップS136)、対象物の同定を判断する(ステップS138)。ここで、同一でないと判断された場合には(ステップS140)、データベース134から次の予め登録している対象物の特徴を比較データとして読み出して(ステップS142)、上記ステップS136に戻る。
【0111】
これに対して、同一であると判断されたならば(ステップS140)、現在比較中の対象物と入力画像内の商品とが同一であると判定する(ステップS144)。
【0112】
以上のように、第4アプリケーションとしての商品認識システムでは、商品にバーコードやRFタグなどの認識指標を取り付けることなく、商品の認識が可能となる。特に、工業製品のように印刷等で簡単に認識指標を取り付けられるものと異なり、認識指標の取付けに大変に手間がかかる野菜等の農産物、肉、魚等の商品を自動認識できるので、特に有効である。
【0113】
また、そのような認識指標を取り付けにくい対象物としては、鉱物なども挙げられ、その自動分別等のような工業的な用途にも適用できる。
【0114】
[第5アプリケーション]
次に、第5アプリケーションを説明する。
図25は、第5アプリケーションとしての検索システムの構成を示す図である。同図に示すように、この検索システムは、デジタルカメラ146と、ストレージ148と、プリンタ150とから構成される。ここで、ストレージ148は、複数の画像データを格納するもので、プリンタ150は、そのストレージ148に格納された画像データをプリントアウトする。
【0115】
例えば、ストレージ148は、デジタルカメラ146に内蔵乃至は脱着可能なメモリであって、プリンタ150は、デジタルカメラ146からのプリントアウト指示に従って、そのストレージ148であるメモリ内の画像データをプリントアウトする。あるいは、ストレージ148は、デジタルカメラ146に接続端子,ケーブル,あるいは無線/有線ネットワークを介して接続される、もしくは、デジタルカメラ146から取り外されたメモリを装着して、画像データを転送可能なデバイスであっても良い。その場合には、プリンタ150は、ストレージ148に接続または一体的に構成され、デジタルカメラ146からのプリントアウト指示に従ってプリントアウトを実行するようなものであっても良い。
【0116】
なお、ストレージ148は、特徴量によって画像データが検索可能に構成されたデータベースの機能も備える。即ち、ストレージ148は、原画像のデジタルデータより作成された特徴群を格納した特徴データベースを構成している。
【0117】
このような構成の検索システムは、以下のように動作する。
(1) まず、デジタルカメラ146は、プリンタ150によって一旦プリントアウトされた検索元プリントアウト152の画像を含む被写体を撮影する。そして、得られた撮影画像データから、その検索元プリントアウト152の画像に対応する領域を抽出し、その抽出した領域の特徴を抽出する。
【0118】
(2) そして、デジタルカメラ146は、その抽出した特徴によってストレージ148に格納された特徴群とマッチング処理を実行する。
【0119】
(3) その結果、デジタルカメラ146は、マッチした特徴に対応する画像データを、上記検索元プリントアウト152の原画像データであるとして、ストレージ148から読み出す。
【0120】
(4) これにより、デジタルカメラ146は、その読み出した原画像データを、再び、プリンタ150でプリントアウトすることができる。
【0121】
なお、検索元プリントアウト152としては、1枚単位で出力されたプリントアウト以外に、複数の縮小画像をまとめて出力したインデックスプリントを使うことも可能である。これは、インデックスプリントから必要なものを選択して、焼き増しする方がコスト面や利便性が良いためである。
【0122】
また、検索元プリントアウト152については、システム内のストレージ148に構成した特徴データベースに原画像データがある画像であれば、システム外(図示せず)のプリンタでプリントアウトしたものであっても構わない。
【0123】
以下、本第5アプリケーションとしての検索システムを、図26に示すブロック構成図及び図27に示す動作フローチャートを参照して、詳細に説明する。なお、デジタルカメラ146は、通常の撮影モードとは別に、撮影済みデータの検索モードを有し、図27の動作フローチャートは、その検索モードに設定されている場合の処理を示している。
【0124】
即ち、ユーザは、上記検索モードに設定した後、再度プリントアウトすることを望む検索元プリントアウト152を、テーブル上或いは壁面等に貼付した状態で、デジタルカメラ146の撮影部154により、撮影する(ステップS146)。
【0125】
次に、特徴抽出部156によって、特徴を抽出する処理を行う(ステップS148)。なお、特徴は、画像データ内の特徴点を使うものであっても良いし、所定のルールに従った画像データ内の分割エリア、つまり予め定められた格子により割り付けられた小領域の相対濃度などを使うものでも構わないし、分割エリア毎のフーリエ変換値などに基づいたものでも構わない。なお、上記特徴点が保持する情報には、点の配置情報が含まれていることが望ましい。
【0126】
次に、マッチング部158により、上記特徴抽出部156で抽出した特徴を、ストレージ148に構成した撮影済み画像データの特徴データベース(特徴テンプレート)と比較し、その類似度の高いものを順に抽出するDBとのマッチング処理を実行する(ステップS150)。
【0127】
即ち、このDBとのマッチング処理は、図28に示すように、まず、各撮影済み画像データの特徴との類似度を算出し(ステップS152)、類似度に基づいてソートする(ステップS154)。そして、その類似度に従って原画像候補を選出する(ステップS156)。なお、この選出は、閾値を設定しても良いし、類似度の高い順に上位のものを指定しても良い。何れにしても、類似度の最上位のものを1点選出する方法と、類似度の高いものから複数点を選出する方法の2種の方法がある。
【0128】
その後、表示部160に、上記選出された原画像候補の画像データをストレージ148から読み出して、抽出すべき画像候補として表示し(ステップS158)、ユーザによる選択を受け付ける(ステップS160)。
【0129】
図29は、画像候補を1点だけ表示する場合の表示部160の表示画面を示している。この表示画面では、画像候補162の表示の横に、他の画像候補の表示を指示する際に操作すべきボタンを表す『前』及び『次』アイコン164と、当該画像候補162を所望の画像データとして指示する際に操作すべきボタンを表す『決定』アイコン166とが配置される。『前』及び『次』アイコン164は、デジタルカメラ146が通常備える所謂十字キーの左キー及び右キーであることを表し、『決定』アイコン166はその十字ボタンの真ん中に配置されるエンターキーであることを表す。
【0130】
ここで、『前』又は『次』アイコン164に相当する十字キーが操作された場合には(ステップS162)、上記ステップS158に戻って、画像候補162を更新表示する。これに対して、『決定』アイコン166に相当するエンターキーが操作された場合には(ステップS162)、マッチング部158は、ストレージ148に格納されている当該画像候補162に対応する原画像データを、接続されたプリンタ150に送り、再度プリントアウトする(ステップS164)。また、プリンタ150に有線/無線で直接接続されていない場合には、ストレージ148に格納されている当該画像候補162に対応する原画像データに、フラグを追記する等の所定のマーキングを行う処理を実行することで、該ストレージ148にアクセス可能なプリンタ150でプリントアウトすることを可能とする。
【0131】
なお、上記ステップS158の画像候補の表示において、複数の候補を同時に表示するようにしても構わない。この場合、通常デジタルカメラ146に設置されている表示部160は当然数インチの小型のものであるため、4点或いは9点程度の表示が使い易い。図30は、9点の画像候補162を表示するようにした例を示している。この場合、『前』又は『次』アイコン164に相当する十字キーの左キー又は右キーの操作に応じて、選択画像を示す太枠168が移動される。なお、特に図示はしていないが、十字キーの上キー及び下キーの操作に応じて、9点の画像候補162の表示を前及び次の9点の画像候補の表示に変更する、所謂ページ切り替え表示を行うようにしても良い。
【0132】
なお、上記ステップS150において用いられる比較対象としてのストレージ148に構成した撮影済み画像データの特徴データベースについては、予め、ストレージ148中の原画像データを元に作成しておく必要がある。また、このストレージ148は、デジタルカメラ146に付属するメモリであっても良いし、図26に破線で示すような通信部170を介してアクセス可能なデータベースであっても良い。
【0133】
この特徴データベースの作成には、各種の方法が考えられる。
例えば、原画像撮影時にその撮影画像データをデジタルカメラ146のメモリ領域に保存する際に、特徴算出とそのデータベース登録を行う方法である。即ち、図31に示すように、デジタルカメラ146にて撮影を行い(ステップS166)、その撮影画像データをデジタルカメラ146のメモリ領域に保存する(ステップS168)。そして、その保存した撮影画像データから特徴を算出して(ステップS170)上記撮影画像データに関連付けて保存する(ステップS172)。従って、ストレージ148がデジタルカメラ146の内蔵するメモリであれば、データベースが構築されることになる。また、ストレージ148がデジタルカメラ146と別体の場合には、デジタルカメラ146のメモリ領域に保存された撮影画像データと特徴が共にストレージ148に転送され、データベースが構築されることになる。
【0134】
また、ストレージ148に蓄積された原画像データをプリンタ150でプリントアウトする際に、そのプリントアウト指示と同時に特徴抽出処理を行い、データベースに蓄積することもプロセス的に効率が良い方法である。即ち、図32に示すように、ストレージ148に蓄積された原画像データをプリントアウトする際、通常、ユーザ指示により、プリントアウトする原画像データが選択され(ステップS174)、また、プリント条件が設定されて(ステップS176)、プリントが実行される(ステップS178)。通常はここでプリント処理は終了であるが、本例では、更に続けて、その選択された原画像データから特徴を算出して(ステップS180)、その作成した特徴をその原画像データに関連付けて保存する(ステップS182)。なお、特徴作成の際に、プリント条件を反映させることで、検索元プリントアウト152と特徴とのマッチング精度を向上させることができる。このような方法によれば、マッチング処理が実施されるかもしれない原画像データについてのみしか特徴を作成しないので、不必要な特徴の作成時間及び保存容量を省略することができる。
【0135】
また、勿論、バッチ処理で行っても構わない。即ち、図33に示すように、ユーザからの一括特徴作成実行指示があったとき(ステップS184)、ストレージ148内の特徴未作成原画像データを選別して(ステップS186)、それら選別した特徴未作成原画像データに対して一括特徴作成処理を実行する(ステップS188)。この一括特徴作成処理は、個々の特徴未作成原画像データから特徴を抽出して特徴を作成し(ステップS190)、それら作成した特徴を対応する原画像データに関連付けてストレージ148に保存するものである(ステップS192)。
【0136】
さらには、ユーザの指示入力によって、個別に処理しても良い。即ち、図34に示すように、ユーザが、ストレージ148内の原画像データの一つを選択し(ステップS194)、その選択した原画像データについて特徴の作成の指示を行うことで(ステップS196)、その選択された原画像データから特徴を抽出して(ステップS198)、特徴を上記選択された原画像データに関連付けてストレージ148に保存する(ステップS200)。プリントアウトしたい写真をマークすることが特徴作成の指示であってもよい。
【0137】
これまで、プリントアウトしてしまった画像データを再プリントしようとするとき、画像データの付帯情報(ファイル名、撮影日時、等)を参考にユーザが検索する事が多かった。本アプリケーションとしての検索システムによれば、デジタルカメラ146にて所望の検索元プリントアウト152の画像を撮影するだけで、原画像のファイル(画像データ)にアクセスすることが可能となり、直感的且つユーザの使い勝手の良い検索方法を提供することが可能である。
【0138】
加えて、原画像データそのもののみならず、類似の画像構成の画像データを検索することも可能であり、副次的ながら新規な用途を提供できる。即ち、街頭の看板やポスター等をこの所謂検索モードで撮影し、デジタルカメラ146に付属するメモリや通信を介してアクセス可能なデータベース等のストレージ148に存在する画像データ及びその特徴の中から類似或いは同一の画像データを容易に検索可能となる。
【0139】
また、図35に示すように、例えば看板として駅の駅名表示板を撮影したならば、その画像データの中からその駅名を認識することで、撮影者の位置認識が可能となる。そこで、その認識した位置周辺つまり駅周辺の地図情報、その位置に関連する画像情報、同じく文字情報、などの関連情報を、デジタルカメラ146に付属するメモリや通信を介してアクセス可能なデータベース等のストレージ148に存在する関連情報の中から検索して提供することができる。なお、駅名の認識方法としては、文字認識、パターン認識、類似した画像の検索による認識推定などがあり、マッチング部158の機能として実施可能である。
【0140】
また、例えば東京タワーを撮影し、デジタルカメラ146に付属するメモリや通信を介してアクセス可能なデータベース等のストレージ148内の画像を検索することにより、東京タワーはもとより、世界各地のタワー状の建造物の写真を検索抽出することができる。そして、更には、その検索抽出した写真の付帯情報としての位置情報に基づき、各タワーの場所を知らしめたり、図36や図37に示すように地図上の該当の場所に写真を重ねて表示することも可能である。この場合、地図及び写真が関連情報である。
【0141】
なお、地図上に写真を重ねて表示する場合に、地図の縮尺、写真の大きさ、その場所に関連した写真の枚数などの要因により、多くの画像が重なって見にくくなることがある。その場合には、図38に示すように地図縮尺に応じて写真の表示サイズを変えたり、枚数が多い場合には図39に示すように枚数に比例した表示サイズでの写真の表示を行う代わりに代表的な写真1枚だけを表示する、といった工夫を行う。また、単に重なりあう、集まりすぎていることによって見にくくなる集合を代表する写真1枚だけを表示してもよい。この代表写真は、該集合内で最も類似度が高いものや、最も多く閲覧されているもの等、様々な観点で選択できる。
【0142】
なお、上記ステップS148乃至S162の処理は、デジタルカメラ146内で実施するものとして説明したが、デジタルカメラ146と別体でストレージ148を存在させる場合には、そのような処理をソフトウェアとしてストレージ148にて起動させる、或いはデジタルカメラ146とストレージ148とに分割した形で起動させることで実際に動作させることも可能である。
【0143】
[第6アプリケーション]
次に、図25を参照して、第6アプリケーションとしての検索システムの概略を説明する。
【0144】
即ち、本検索システムは、デジタルカメラ146と、ストレージ148と、プリンタ150と、パーソナルコンピュータ(PC)172とから構成される。ここで、ストレージ148は、PC172に内蔵乃至は通信を介してPCによってアクセス可能な記憶装置である。また、PC172は、デジタルカメラ146に無線/有線接続される、もしくは、デジタルカメラ146から取り外されたメモリを装着して、デジタルカメラ146のメモリに保存された画像データを読み出し可能に構成されている。
【0145】
このような構成の検索システムは、以下のように動作する。
(1) まず、デジタルカメラ146は、プリンタ150によって一旦プリントアウトされた検索元プリントアウト152の画像を含む被写体を撮影する。
【0146】
(5) PC172は、得られた撮影画像データから、その検索元プリントアウト152の画像に対応する領域を抽出し、その抽出した領域の特徴を抽出する。
【0147】
(6) そして、PC172は、その抽出した特徴によってストレージ148に格納された特徴とマッチング処理を実行する。
【0148】
(7) その結果、PC172は、マッチした特徴に対応する画像データを、ストレージ148から上記検索元プリントアウト152の原画像データであるとして読み出す。
【0149】
(8) これにより、PC172は、その読み出した原画像データを、再び、プリンタ150でプリントアウトすることができる。
【0150】
以下、本第6アプリケーションとしての検索システムを、図40に示すブロック構成図及び図41に示す動作フローチャートを参照して、詳細に説明する。なお、これらの図において、上記第5アプリケーションと対応するものについては、同一の参照番号を付してある。
【0151】
即ち、本アプリケーションは、デジタルカメラ146で撮影された画像データをそのユーザが特定するPC172に内蔵又は接続されたストレージ148に蓄積し、且つ図41にPC側として示す処理がアプリケーションソフトウェアとしてPC172にて動作する場合である。なお、PC172とデジタルカメラ146を有線或いは無線で接続し、通信状態を確立した状態で、本アプリケーションソフトウェアを立ち上げるものである。これは、デジタルカメラ146に設定された“検索モード”等といったスイッチを入れる操作によって機能が起動される状態でも構わない。
【0152】
このように本アプリケーションソフトウェアが動作したところで、デジタルカメラ146側にて、プリントアウトの撮影処理が実行される(ステップS146)。即ち、図42に示すように、ユーザが、再度プリントアウトすることを望む検索元プリントアウト152をテーブル上或いは壁面等に貼付した状態で、デジタルカメラ146の撮影部154により、少なくとも上記検索元プリントアウト152の欠けが無いように撮影する(ステップS202)。これにより、得られた撮影画像データがデジタルカメラ146内のメモリである記憶部174に保存される。そして、その保存された撮影画像データが、有線或いは無線で、接続されたPC172に転送される(ステップS204)。
【0153】
すると、PC172においては、アプリケーションソフトウェアにより実現される特徴抽出部176は、上記送信されてきた撮影画像データ中から特徴を抽出する処理を行う(ステップS148)。なお、上記特徴量抽出処理は、デジタルカメラ146側で行うようにしても良い。そのようにすれば、デジタルカメラ146からPC172への通信量を少なくすることができる。
【0154】
その後、アプリケーションソフトウェアにより実現されるマッチング部178により、上記抽出した特徴を、ストレージ148に構成した撮影済み画像データの特徴データベースと比較し、その類似度の高いものを順に抽出するDBとのマッチング処理を実行する(ステップS150)。即ち、算出された特徴を元にPC172側のマッチング部178にて、ストレージ148の画像データそれぞれに同梱される(或いは包括的にデータベース化された)特徴と比較し、最も近いものを選び出す。設定により、最も近い複数の特徴候補を選出する事も使い勝手において有効である。この特徴には、その特徴を算出した原画像データの指定情報が含まれており、それに従い候補画像を呼び出す。
【0155】
その後、上記選出された原画像候補(或いは候補画像)の画像データをストレージ148から読み出して、該PC172のディスプレイである表示部180に抽出すべき画像候補として表示し(ステップS158)、ユーザによる選択を受け付ける。このとき、上記選出された原画像候補(或いは候補画像)の画像データをそのままか、適宜圧縮した状態で、PC172よりデジタルカメラ146に転送し、デジタルカメラ146の表示部160上に表示するようにしても構わない(ステップS206)。
【0156】
そして、マウス等の操作による選択に応じて、ストレージ148に格納されている当該画像候補に対応する原画像データを、接続されたプリンタ150に送り、再度プリントアウトする(ステップS164)。即ち、上記表示された原画像候補をユーザの判断により決定し、印刷プロセスに渡すことにより当初の目的であるプリントアウト済み画像の再印刷がユーザにとっては簡単に行えるものである。なおこのとき、単純に印刷するばかりではなく、候補画像として複数選択した中でユーザ判断によっては、「狙いの元画像とは異なるが、類似の画像を集めた」ことになり、類似の画像データを一括検索する機能の実現にも繋がっている。
【0157】
なお、本アプリケーションにおいては、特徴データベースの作成は、デジタルカメラ146からPC172を介したストレージ148への撮影画像データの転送時に行うようにしても良い。即ち、図43に示すように、デジタルカメラ146からPC172への撮影画像データの転送を開始し(ステップS208)、PC172により、その転送されてきた撮影画像データをストレージ148に保存すると共に(ステップS210)、その撮影画像データから特徴を作成する(ステップS212)。そして、その作成した特徴をストレージ148に上記撮影画像データに関連付けて保存する(ステップS214)。
【0158】
以上のように、本第6アプリケーションにおいても、上記第5アプリケーションと同様、デジタルカメラ146にて所望の検索元プリントアウト152の画像を撮影するだけで、原画像のファイル(画像データ)にアクセスすることが可能となり、直感的且つユーザの使い勝手の良い検索方法を提供することが可能である。
【0159】
加えて、原画像データそのもののみならず、類似の画像構成の画像データを検索することも可能であり、副次的ながら新規な用途を提供できる。即ち、街頭の看板やポスター等をこの所謂検索モードで撮影し、デジタルカメラ146に付属するメモリや図40に破線で示すような通信部182を介してアクセス可能な外部データベース等のストレージ148に存在する画像データ及びその特徴の中から類似或いは同一の画像データを容易に検索可能となる。更には、そのデータに紐付くインターネットサイトをPC172やデジタルカメラ等のディスプレイで表示したり、特定のアプリケーション(音声・動画(movies)等)を作動させることなどが可能となる。
【0160】
なお、上記説明では、デジタルカメラ146を用いたが、本アプリケーションはそれに限定されるものではなく、スキャナであっても構わない。
【0161】
また、実際にプリントアウトした検索元プリントアウト152をデジタルカメラ146で撮影しているが、例えば検索元プリントアウト152を撮影した画像を表示しているディスプレイをデジタルカメラ146で撮影しても同様に実施可能である。
【0162】
[第7アプリケーション]
次に、第7アプリケーションとしての検索システムを説明する。本アプリケーションは、図44に示すようなカメラ186付の携帯電話機184のアプリケーションソフトウェア188に適用した例である。
【0163】
即ち、携帯電話機のアプリケーションソフトウェアは現在ほとんどの携帯電話機にて利用可能となっており、且つその画像データは内部メモリ或いは外部メモリカード等に数多くを蓄積可能である。更に、特定の携帯サイト(携帯電話機向けインターネットサイト)においては、ユーザを特定した画像ファイルなどの蓄積サービスも行われている。このような状況は極めて多大な画像データを蓄積し、自己の活動記録や業務など多彩に利用できる反面、携帯電話機という比較的ユーザインタフェースに自由度がないハードウェアにとっては所望の画像データの検索は面倒であった。実際には画像データのタイトルや日時等によるテキストのリストからの検索が中心であり、画像データが多数となった場合は極めて面倒で、またテキストを打ち込む場合も複数の単語や長い名称等の入力は不自由であると言わざるを得ない。
【0164】
本検索システムの導入に依れば、カメラ付携帯電話機のアプリケーションとして動作させることにより「画像入力機能」を立ち上げ、所望の「関心領域を切り出し」、「特徴の算出」を行う。この特徴(データ)は携帯回線を介して対応するサーバに送られる。この対応するサーバは、上記のカメラと一対一対応するものであっても良いし、一対多のカメラに対応するものであっても構わない。上記のサーバに送られた特徴は、サーバに搭載されている「マッチング機能」により、サーバの要求するデータベースから読み込まれた特徴と実際にマッチング処理を行い、類似性の高い画像データを抽出する。この抽出された画像データをサーバから上記発信元の携帯電話機に返送し、携帯電話機から特定しないプリンタにより該画像データを出力する事が出来る。しかし、ここでサーバが抽出した画像データに対し、更にその画像データに関連する様々な情報が付加されている場合は、「その情報を携帯電話機に返送する」、と言った機能の拡張が可能であるし、抽出した画像データに高い圧縮をかけて携帯電話機に返送し、ユーザが所望の画像データであると確認の上、携帯電話機のメモリ領域に格納、あるいは携帯電話機のディスプレイ190上に表示するだけであっても利用価値があることは言うまでも無い。
【0165】
[第8アプリケーション]
次に、第8アプリケーションとしての検索システムを説明する。
【0166】
本アプリケーションは、その構成として、通信機能を備えたデジタルカメラ146と、通信により接続されたサーバとにより構成され、画像検索のための機能がデジタルカメラ146とサーバとに分割設置されたものである。通信機能を備えたデジタルカメラ146は、撮影機能付通信装置として機能し、カメラ付携帯電話機が含まれることは勿論である。
【0167】
この場合、前述の第5アプリケーションと同様に、デジタルカメラ146には撮影機能とその画像データから特徴を算出する機能を有する。上記第5乃至第7アプリケーションの場合、比較参照する特徴(或いは特徴データベース)は元々ユーザ或いは当該のデジタルカメラ146にて撮影及び印刷された画像を基にして作られたものである。これは、当初の目的が、既に撮影された画像データが印刷されたプリントアウトを撮影して検索するためである。これに対して、本アプリケーションはこの目的を拡張し、一般に街頭の看板、ポスターや印刷物、出版物の画像を基に算出された特徴も、サーバに配されたストレージ148に構成されたデータベースに取り込まれている点が大きく異なる。
【0168】
プリントアウトに限らず、データベース上にある画像からの抽出が行えることはいうまでもない。
【0169】
また、撮影した画像から抽出した特徴をデータベースに追加することもできる。
【0170】
登録の際には、画像に関連した位置情報を手動、GPSなどのセンサ、前出の文字認識などで認識して登録する。こうすることで、次に同様な場所で画像の撮影する時にデータベースを検索することにより、類似した画像を抽出することでその撮影画像に付加すべき位置情報を抽出することが可能となる。
【0171】
図45は、本アプリケーションとしての検索システムの動作フローチャートを示す図である。なお、同図において、上記第5アプリケーションと対応するものについては、同一の参照番号を付してある。
【0172】
即ち、本アプリケーションにおいては、例えばデジタルカメラ146にて街頭に存在する商品広告などのポスターを撮影する(ステップS146)。すると、その撮影画像データからデジタルカメラ146にて、特徴抽出処理が実行される(ステップS148)。そして、その抽出された特徴は、デジタルカメラ146に内蔵又付属された通信部170により所定のサーバに送られる。
【0173】
サーバにおいては、そのサーバがアクセス可能なストレージ148に構成された特徴データベースを参照して、上記デジタルカメラ146から送られた特徴を比較し(ステップS150)、類似な特徴を持つ類似画像候補を抽出する(ステップS216)。これら抽出された類似画像候補の画像データは、必要により、所定の圧縮処理が施されて通信量を少なくした上で、上記デジタルカメラ146に送信され、デジタルカメラ146の表示部160で簡易表示されることができる(ステップS218)。これにより、上記第5アプリケーションと同様、ユーザの選択が可能である。
【0174】
そして、上記抽出され(更に選択され)た画像候補の画像データがデジタルカメラ146に送信出力される、或いは、上記抽出され(更に選択され)た画像候補の特徴に紐付いている特定情報に基づいて次の段階の動作を行う(ステップS220)。この次の動作とは、上記の商品広告であれば、その商品の解説や通信販売サイトヘの接続であっても良いし、そのサイト画面を画像データとしてデジタルカメラ146に返送しても良い。また、街頭の看板を撮影した場合は、看板の周辺情報も特徴として取り込んだり、通信時の無線基地局所在地のデータも比較したりすることにより、場所や住所の特定を情報としてユーザに呈示することも可能となる。
【0175】
[第9アプリケーション]
次に、第9アプリケーションとしての検索システムを説明する。
【0176】
本アプリケーションは、撮影した検索元プリントアウト152の画像を基にして、第1の特徴を使ったマッチングによりストレージ148から複数の画像データを検索し、その検索した結果の複数の画像データから、上記第1の特徴より狭い、もしくは同じ領域で且つ解像度の高い第2の特徴を使って、特徴マッチングにより単一又は複数の画像データを検索するものである。
【0177】
本アプリケーションとしての検索システムは、前述した第5アプリケーションと同様の構成であるが、特に、本アプリケーションにおいては、ストレージ148に、第1の特徴としての概要特徴を登録した全体特徴データベースと、第2の特徴としての詳細特徴を登録した詳細特徴データベースとが構成されている。
【0178】
ここで、概要特徴は、図46に示すように、画像データの全体(100%)のほとんど(例えば約90%)を含む領域を比較的粗い解像度で特徴を抽出することで得られたものである。また、詳細特徴は、図47に示すように、画像データの中央領域部分(例えば中央約25%)を含む領域を、上記概要特徴の解像度に比べて高い解像度で特徴を抽出することで得られたものである。なお、原画像データと上記概要特徴及び詳細特徴との位置関係は、図48に示すようになる。
【0179】
図49は、本アプリケーションとしての検索システムの動作フローチャートである。なお、同図において、上記第5アプリケーションと対応するものについては、同一の参照番号を付してある。
【0180】
即ち、本アプリケーションでは、まず、上記第5アプリケーションと同様に、検索モードに設定したデジタルカメラ146の撮影部154により、再度プリントアウトすることを望む検索元プリントアウト152をテーブル上或いは壁面等に貼付した状態で、少なくとも上記検索元プリントアウト152の欠けが無いように撮影する(ステップS146)。
【0181】
そして次に、特徴抽出部156によって、撮影部154で撮影された画像データ全体から特徴を抽出する全体特徴抽出処理を行い(ステップS222)、その抽出した全体特徴を、マッチング部158により、ストレージ148に構成した上記概要特徴を登録した全体特徴データベースと比較し、その類似度の高いものを順に抽出する全体特徴DBとのマッチング処理を実行する(ステップS224)。
【0182】
その後、上記特徴抽出部156にて、上記得られた関心領域全体の画像データから、更に詳細検索対象領域、この例では上記関心領域の中央領域部の画像データを詳細検索対象画像データとして抽出する(ステップS226)。そして、特徴抽出部156によって、上記抽出した詳細検索対象画像データから特徴を抽出する詳細特徴抽出処理を行う(ステップS228)。次に、マッチング部158により、その抽出した詳細特徴データを、ストレージ148に構成した上記詳細特徴を登録した詳細特徴データベースと比較し、その類似度の高いものを順に抽出する詳細特徴DBとのマッチング処理を実行する(ステップS230)。但しこの場合、詳細特徴データベースに登録された全ての詳細特徴との特徴マッチングを行うのではなく、上記ステップS224の全体特徴DBとのマッチング処理で抽出された複数の画像データに対応する詳細特徴についてのみ特徴マッチングが実行される。従って、解像度が高いため処理時間を要する詳細特徴との特徴マッチング処理は、必要最低限で済むことになる。なお、上記ステップS224の全体特徴DBとのマッチング処理での抽出する基準としては、類似度に閾値を設ける方法や上位500個分固定的に選択する等といった方法で行う。
【0183】
而して、この詳細特徴DBとのマッチング処理にて類似度の高い画像データが原画像候補として抽出されたならば、表示部160に、それらを抽出すべき画像候補として表示し(ステップS158)、ユーザによる選択を受け付けて、ユーザ所望の画像が決定されたならば(ステップS162)、マッチング部158は、ストレージ148に格納されている当該画像候補に対応する原画像データを、接続されたプリンタ150に送り、再度プリントアウトする(ステップS164)。
【0184】
このような本アプリケーションによれば、原画像データの検索結果の質(満足度)向上と、妥当な検索時間の両立ができる。
【0185】
また、撮影者の注目領域を考慮した検索結果を得ることができる。即ち、通常、撮影者は主要被写体を画像領域中央に捕らえて撮影するので、図50に示すように、画像データの中央部に注目した詳細特徴を使用することで、良好な検索結果を得ることができる。従って、プリントアウトした写真である検索元プリントアウト152から、その原画像データを検索抽出し、焼き増しを容易に行うシステムにおいて、そのプリント写真の検索において効果が高い。
【0186】
さらに、キーワード分類などが難しい原画像母集団に対する検索において、高速に細部の違いを判別する手段としての効果が高い。即ち、大規模な母集団に対する、段階的な検索結果絞り込みが可能となる。
【0187】
なお、本アプリケーションにおいても、予め、一つの原画像データについて、概要特徴と詳細特徴とを作成してデータベースに登録しておく必要があり、その登録は、上記第5アプリケーションで説明したようにして行えば良い。但し、必ずしも同時に両特徴を作成する必要は無く、例えば、詳細特徴は、2次検索を実行する段階で必要になったときに作成する方法でも良い。
【0188】
また、詳細特徴は、図47や図50に示したように、画像データの中央部に注目したものに限定するものではない。
【0189】
例えば、図51に示すように、画像内に数箇所、詳細特徴を設定しても良い。このように詳細特徴を分散配置することで、プリント撮影条件による失敗を回避できる。即ち、位置や数を動的に変化させて絞り込みが行える。
【0190】
また、図52に示すように、注目領域を原画像撮影時の合焦位置においた詳細特徴としても良い。このような詳細特徴では、撮影者の意図を反映した結果が見込める。
【0191】
さらに、図53に示すように、詳細特徴を概要特徴と同じ領域について作成しデータベースに登録しておき、実際の詳細特徴との特徴マッチング時には、その内の一部の領域、つまり図50乃至図52に示すような領域を参照領域192として使用し、他の領域を非参照領域194とするようにしても良い。
【0192】
なお、本アプリケーションは、上記第5アプリケーションに対応させて説明したが、上記第6乃至第8アプリケーションについても同様に適用可能なことはもちろんである。
【0193】
[第10アプリケーション]
次に、第10アプリケーションとしての検索システムを説明する。
【0194】
本アプリケーションは、通信機能を備えたデジタルカメラ146を使う例であり、予め登録した画像を撮影する事により、その画像を認識し、認識結果に応じて所定の動作(例えば音声出力や所定のプログラムの起動、或いは所定のURLの表示)をさせる場合に適用するものである。通信機能を備えたデジタルカメラ146は、撮影機能付通信装置として機能し、カメラ付携帯電話機が含まれることは勿論である。
【0195】
画像を認識する場合、参照するデータベース(いわゆる辞書データ)として画像データは登録するが、画像をそのまま比較するのではなく、画像の特徴を比較するのが効率が良く実際的である為、画像から抽出した特徴データベースを使う。またこのデータベースは内蔵でも通信を介したサーバ上に存在するものでも構わない。
【0196】
本アプリケーションでは、画像の特徴点の配置関係をベクトル量の組み合わせとして算出し、その多数組を特徴として定義する。そのとき、この特徴は特徴点の現れる数によってその精度が異なり、原画像データの精細度が高ければ特徴点が数多く検出可能であるため、同じ原画像データに対し、なるべく高精細な条件で特徴を算出する。このとき、同じ画像素材に対して精細度を低下させた画像データを基に特徴を算出すると、特徴点が比較的少なくなるため特徴自体は小さい容量となる。容量が小さいことはマッチング精度には劣るものの、マッチング速度が高速であることや、通信速度が速い等のメリットがある。
【0197】
本アプリケーションにおいてはここに着眼し、画像データを参照データ(特徴)として登録する際、一つの画像素材の登録に際し異なる複数の精細度から特徴を算出し、それぞれの精細度に個別化したデータベースを構成する。そのそれぞれのデータベースには、それぞれに対応するマッチングサーバが接続し、並列動作可能な配置とする。即ち、図54に示すように、1次特徴のマッチングサーバ及び1次情報DB196−1、2次特徴量のマッチングサーバ及び2次情報DB196−2、…、n次特徴量のマッチングサーバ及びn次情報DB196−nを準備する。なお、2次特徴量のマッチングサーバ及び2次情報DB196−2乃至n次特徴量のマッチングサーバ及びn次情報DB196−nは、1次特徴量のマッチングサーバ及び1次情報DB196−1よりも高精細な特徴量又は特別なカテゴリのデータベースである。
【0198】
このようなマッチング処理系を準備した上で、図54に示すように、通信機能を備えたデジタルカメラ146から、既に登録されている意匠(対象物)を撮影し(ステップS232)、上記デジタルカメラ146に内蔵されるアプリケーションソフトウェアにより特徴点の配置関係から特徴を算出する(ステップS148)。そして、その特徴を通信を介して各マッチングサーバに送信することで、各DBとのマッチング処理が行われる(ステップS150)。このマッチング処理によって、マッチする結果が得られたならば、その結果に紐付く動作情報(例えばURLのリンク等)が取得され(ステップS234)、その動作情報がデジタルカメラ146に送信されて、例えば3Dオブジェクト取得と表示といった指定動作が遂行される(ステップS236)。なお、デジタルカメラ146は撮影した画像全体、もしくはその一部をマッチングサーバへ送信し、ステップS148をマッチングサーバ上で実行させてもよいことは勿論である。
【0199】
なお、このときのカメラ解像度が200万画素級であったとすれば、通信を介してマッチングサーバにて検索する場合も200万画素級の解像度の特徴データベースからのデータでマッチングを行えば誤認識率が少ない。しかしながら、同時に動作する低解像度(例えばVGAクラスの解像度)の特徴データベースでのマッチングは高速に応答するため、先にデジタルカメラ146に結果が送付される。このようにマッチングサーバを解像度別に並列配置する事は速度的、認識精度的に有利である。なお、後追いの高解像度マッチングサーバからの回答が既に先に出ている低解像度マッチングサーバと異なる場合があり、そのような場合には、まず早いほうの結果に基づく表示が行われ、その後に、後追いの結果に基づく表示に更新される。例えば、紙幣などを認識しようとすると、低解像度マッチングでの回答が『100$札』と言ったレベルであっても、高解像度マッチングにおいては『100$札でナンバーがHD85866756A』と言った回答のように、より精細度が高いことによる詳しい或いは正しい結果が得られる。また、低解像度の結果では複数の候補が得られ、高解像度の結果が到着するに従って、結果の候補が絞り込まれていく表示も効果的である。
【0200】
また、上述した通り高解像度マッチングサーバにおいては特徴自体の容量が大きく、XGAクラスの特徴量は40kB程度に肥大するが、予め低解像度マッチングによりおよそ10kB程度までに小さくなる。また、2次以降のマッチングサーバ及びデータベースにおいては、より低解像データベースとの差分のみを保持すれば、より小さいデータベース構成を実現し、それは認識処理の高速化につながる。なお、特徴に特徴(エリア割付を行い、各々の濃度値を比較する方式)での抽出を進めた場合、一般的に10kB以下であり、適宜両方式を組み合わせた多次元特徴も認識精度の向上に有効であることを確認している。
【0201】
このように、撮影画像面の一部又は全面の解像度を多段階化し、実質上のマッチング階層化を実現することは、単純に複数のマッチングサーバをクラスター的に分散処理する場合に比べて認識速度、認識精度の両面で効果がある。
【0202】
特に、予めデータベース登録した画像が極めて多数(1000以上)の場合に効果がある方式であり、また、類似性の高い画像がその中に含まれている場合にも効果を有する。
【0203】
[第11アプリケーション]
次に、第11アプリケーションとしての検索システムを説明する。
【0204】
本第11アプリケーションとしての検索システムは、図55に示すように、カメラ186付の携帯電話機184と、検索部と、から構成されるものである。上記カメラ186付の携帯電話機184は、画像を入力するカメラ186と検索結果の画像を出力するディスプレイ190とを含む。上記検索部は、上記カメラ186で入力した画像を基にして、階層管理された特徴を用いて、データベースから画像を検索する。なおここで、上記検索部は、カメラ186付の携帯電話機184のアプリケーションソフトウェア188と、上記カメラ186付の携帯電話機184と通信可能なサーバ198に構成されたマッチング処理部200とによって実現される。
【0205】
上記サーバ198は、更に、複数の特徴が登録され、それらを階層管理する特徴管理データベース(DB)202を有している。この特徴管理DB202に登録されるテンプレートは、デスクトップパブリッシング(DTP)210で紙面208に配置した対象画像206から、特徴作成部204によって作成されたものである。
【0206】
即ち、本アプリケーションとしての検索システムでは、予め、DTP210によって、紙面208に対象画像206を印刷すると共に、特徴作成部204でその対象画像206の特徴を作成する。そして、その作成した特徴をサーバ198の特徴管理DB202に登録しておく。なお、登録する対象画像206が多数あれば、そのような特徴の作成と登録を繰り返す。
【0207】
そして、検索を望むユーザが、紙面208から携帯電話機184のカメラ186を使って対象画像206を取り込むと、アプリケーションソフトウェア188は、その入力画像から画像の特徴抽出を行う。そして、アプリケーションソフトウェア188は、抽出した特徴をサーバ198のマッチング処理部200に送る。そして、該マッチング処理部200は特徴管理DB202に登録されている特徴とマッチングを行う。マッチング結果が取得されたならば、マッチング処理部200は、該マッチング結果情報をカメラ186付の携帯電話機184のアプリケーションソフトウェア188に送る。アプリケーションソフトウェア188はディスプレイ190に上記結果情報を表示する。
【0208】
このように、本第11アプリケーションにおいては、入力画像の中から複数の特徴を抽出し、それら特徴から成る特徴群を、予め登録してある対象物ごとの特徴群と比較対照する(マッチング処理する)ことにより、同一の対象物の同定を行う。
【0209】
ここでいう画像の中の特徴とは、他の画素との差異が一定レベル以上あるものを指し、例えば明暗のコントラスト、色、周囲の画素の分布、微分成分値、及び特徴同士の配置等を挙げることができる。本第11アプリケーションにおいては、上記特徴を抽出した後、対象物毎に登録しておく。そして、実際の同定時においては、入力画像の中をサーチして特徴を抽出し、予め登録されているデータとの比較を行う。
【0210】
以下、図56を参照して、本第11アプリケーションにおけるマッチング処理部200での同定処理の動作制御の流れを説明する。まず、予め登録してある対象物Z(例えば対象画像206)の認識要素の特徴を、特徴点群が記録されている特徴管理DB202から読み出す(ステップS238)。続いて、上記特徴を、特徴の比較を行うマッチング処理部200へ入力する(ステップS240)。そして、上記マッチング処理部200にて、上記特徴と、入力された対象物の特徴との比較対照を行う(ステップS242)。その後、上記対象物Zと、入力された対象物との同一性を判断する(ステップS244)。そして、一致する特徴の個数が所定の値(ここではX個とする)以上であるか否かを判断する(ステップS246)。このステップS246をNOに分岐する場合は、上記ステップS242へ戻る。一方、上記ステップS246をYESに分岐する場合は、現在比較中の対象物Zの認識要素と、入力された対象物とが同一であると判定する(ステップS248)。
【0211】
その後、全ての認識要素についての比較を終了したか否かを判断する(ステップS250)。このステップS250をNOに分岐する場合は、次の認識要素の特徴群における、特徴を、上記マッチング処理部200へ比較データとして入力し(ステップS252)、上記ステップS242へ戻る。
【0212】
ところで、上記ステップS250をYESに分岐する場合は、一致する特徴の個数が所定の値(ここではY個とする)以上あるか否かを判断する(ステップS254)。ここで、このステップS254をYESに分岐する場合には、入力された対象物と、対象物Zとは一致すると判定し、その旨をディスプレイ190に表示してユーザに知らせる(ステップS256)。他方、上記ステップS254をNOに分岐する場合は、入力された対象物と、対象物Zとは一致しないと判定する(ステップS258)。
【0213】
なお、実際の同定時においては、類似している度合いを示す数値(特徴同士の各成分の差異)が、予め設定した閾値を越えた場合に、当該特徴を類似特徴と判定する。そして、更に複数の特徴が一致した対象物を、入力画像の対象物と同一であると判定する。この際、入力画像の中の特徴と、予め登録されている特徴群とを、以下のように比較する。
【0214】
第1に、対象物の中を複数の要素に分割して登録しておく。これにより、対象物同士の比較対照時に、複数の要素(例えば3個)を認識しないと当該対象物を認識したとしない、との判定ロジックで認識させる。
【0215】
第2に、対象物の認識に際し、似ている対象物が画像内に写っている場合に、例えば、対象物OBJ1(特徴;A,B,C)を自社のロゴマークとしているS社と、対象物OBJ2(特徴;E,F,G)を自社のロゴマークとしているM社とを想定する。ここで、S社とM社とは競合している会社であるとする。このような場合には、当然、両者のロゴマークの混同は極力避けなければならない。このような事情に鑑みて、本第11アプリケーションにおいては、特徴AとEとが同一画面内から同時に検出された場合には、どちらの対象物共、認識をしない。すなわち、認識判定を厳しくする。
【0216】
第3に、従来は、特徴の数を認識した場合であっても、認識結果をユーザに伝達する文章表現が同一である点である。この為、例えば一部の特徴のみ認識できた場合、つまり入力画像と比較画像との一致度合いが不確定性を含む一致度合いである場合に、その旨をユーザに伝達することができない。一方、本第11アプリケーションにおいては、認識要素数が少ない場合には、結果の表示方法(表現方法)を変え、不確定性を含む表現にする。
【0217】
上記のそれぞれの工夫により、それぞれ以下の効果が得られる。
第1に、対象物の一部だけが一致することによる誤認識を起こす確率を低く抑えることができる。
【0218】
第2に、対象物の誤認識を特に避けたい場合の判定基準を厳しくすることができる。
【0219】
第3に、対象物の同一性判定の正確性が所定の値よりも低い場合にも、ユーザに対して注意を喚起した上で、ユーザに一致判定結果を知らせることができる。
【0220】
ところで、対象物の中の特徴が分割して登録されている対象物OBJ1(特徴;A,B,C)及びOBJ2(特徴;E,F,G)の場合には、以下のような判定ロジックによる認識を行う。
【0221】
第1に、“A and B and C”でないと対象物OBJ1の認識成功としない。
【0222】
すなわち、認識要素である特徴A,B,Cからなる対象物OBJ1の認識をする場合に、A,B,Cいずれか1つまたは2つの特徴の認識の状態では対象物OBJ1の認識が成功したという形にはしない。
【0223】
またこの変形例として、特徴A,B,Cに評価点としての重み付けを行う。例えば、それぞれ1.0、0.5、0.3と重み付けする。ここで、合計評価点が1.5を超えたときに認証するとすれば、特徴A及びBが認識要素として見つかった場合には合計評価点が1.5となるので対象物OBJ1を認識する。一方、特徴B及びCが見つかった場合には対象物OBJ1は認識しない。
【0224】
これら認識要素の評価点については、認識要素の特徴と共に管理することが可能である。
【0225】
また、論理式として、各要素の優先度を変える事も可能であり、“A and B and C”以外にも、例えば“A and (B or C)”や、“A or (B and C)”といった組み合わせが可能である。これらの例は、認識成功とする為には、いずれも特徴Aが必須要素である例である。
【0226】
なお、上記の評価点及び論理式の例は、組み合わせて用いることが可能である。すなわち、論理式の優先度と各要素の重み付けとを組み合わせて用いることができる。
【0227】
第2に、“E and A”が抽出された場合には決して、対象物OBJ1も対象物OBJ2も共に認識したとしない。
【0228】
例えば対象物OBJ1をロゴとして用いているS社と、対象物OBJ2をロゴとしているM社とが競合関係であって、両者の混同を極力避けたい場合、S社のロゴである対象物OBJ1とM社のロゴである対象物OBJ2とが同一画面内に写っている場合には、どちらのロゴも認識したとしない。この場合には、ユーザに対して、認識できない理由は、対象画像が検出されていないからではなく、(A,B,C)及び(E,F,G)の両方から認識要素が検出されているからであるという旨の表示を行う。
【0229】
このように、本第11アプリケーションでは、互いに競合関係にある会社等のロゴの同定に関しては、例えばS社のロゴである対象物OBJ1のみか又はM社のロゴである対象物OBJ2のみか、どちらか一方だけが撮影した画像内にある状態になったときにのみ、当該ロゴの認識をするようにする。具体的には、(A,B,C)のうちのいずれかのみ、または(E,F,G)のうちのいずれかのみを、一画像内で検出した場合にのみ、対象物OBJ1または対象物OBJ2の認識を行う。換言すれば、(A,B,C)のうちのいずれかと、(E,F,G)のうちのいずれかとが一画像内で検出された場合、対象物OBJ1も対象物OBJ2も共に認識をしない。
【0230】
第3に、“A and B”など一部だけが抽出された場合には結果の提示方法を変える(不確定性を含む表現に守る)
例えば、対象物OBJ1の認識に関して、認識要素の特徴A,B,Cの全てが認識できた場合には『対象物OBJ1が認識されました』との強い表現にて認識結果をユーザに提示する。また、認識要素の特徴A及び特徴B、特徴B及び特徴C、或いは特徴A及び特徴C等、2つの認識要素を認識できた場合には、例えば『対象物OBJ1だと思われます』とのやや確信を弱めた表現にて、認識結果をユーザに提示する。更に認識できた認識要素が1つだった場合には、『対象物OBJ1が認識された可能性があります』というように、不確定性を含んだ表現にて認識結果をユーザに提示する。
【0231】
なお、本第11アプリケーションの変形例として、上述した重み付けの評価点を用いた場合に、その合計評価点に基づく認識結果を、ユーザへ提示する際の表現方法における上記のような工夫も考えられる。また、ユーザへ認識結果を提示する際の上記のような表現方法の工夫は、様々な場面において適用可能なのは勿論である。例えば、所望の認識要素単体の認識においても適用が可能である。また、例えば認識要素内における一致特徴の数、抽出特徴と登録済み特徴との一致度合いによって、ユーザへ認識結果を提示する際の上記のような表現方法を適用することができる。
【0232】
なお、本第11アプリケーションにおいては、上記特徴作成部204はサーバ198上で動作していても勿論よい。また、上記紙面208は表示面を意味し、必ずしも紙であることに限定されない。例えば、金属、プラスチック等の別の素材であってもよいし、液晶モニタやプラズマテレビなどのような映像表示装置であってもよい。勿論、それらに表示される情報は、人間にとっての可視光領域で表示されるものへ対応しているのは当然のことである。しかしながら、カメラ186へ入力可能な情報であれば、人間にとって不可視な情報であっても勿論良い。また、画像として取得可能なもの全てが対象であるので、例えば、X線画像やサーモグラフィといった画像であってもよい。
【0233】
なお、図55において、上記カメラ186から入力される対象画像を含む画像は、カメラ186付の携帯電話機184からサーバ198における上記マッチング処理部200へ送信される。このとき、上記カメラ186が取得した画像をそのまま画像データとして送信することは勿論のこと、画像を縮小して送信しても勿論良い。また、当該画像から、マッチングで用いる特徴を抽出し、これを送信しても勿論良い。さらには、上記画像と上記特徴との両方を送信するとしても勿論良い。つまり、当該画像から導き出すことが可能な態様のデータであれば、どういった態様のデータを送信しても構わない。
【符号の説明】
【0234】
10…特徴検出、 12…特徴選択、 14…特徴認識、 16,134…データベース、 18…dBTree構築、 20…dBTree検索、 22…インデックスマッチング、 24…特徴空間、 26…サブ空間、 100…情報呈示装置、 102…記憶部、 104…データセットサーバ、 106…情報サーバ、 108,154…撮影部、 110…認識及び識別部、 112…情報指定部、 114…呈示画像生成部、 116…画像表示装置、 118…データセット、 120…位置及び姿勢算出部、 122…基本データ、 124…記憶メディア、 126…バーコードスキャナ、 128…重量秤、 130,186…カメラ、 132…コントロール部/現金収納箱、 136…モニタ、 138…視野、 140…特徴、 142…画像、 144…参照画像、 146…デジタルカメラ、 148…ストレージ、 150…プリンタ、 152…検索元プリントアウト、 156,176…特徴抽出部、 158,178…マッチング部、 160,180…表示部、 162…画像候補、 164…『前』及び『次』アイコン、 166…『決定』アイコン、 168…太枠、 170,182…通信部、 172…パーソナルコンピュータ(PC)、 174…記憶部、 184…携帯電話機、 188…アプリケーションソフトウェア、 190…ディスプレイ、 192…参照領域、 194…非参照領域、 196−1…1次特徴のマッチングサーバ及び1次情報DB、 196−2…2次特徴のマッチングサーバ及び2次情報DB、 196−n…n次特徴のマッチングサーバ及びn次情報DB、 198…サーバ、 200…マッチング処理部、 202…特徴管理データベース(DB)、 204…特徴作成部、 206…対象画像、 208…紙面、 210…デスクトップパブリッシング(DTP)。
【技術分野】
【0001】
本発明は、2次元又は3次元画像データ内の対象を認識する特徴マッチング方法及びそれを用いた商品認識システムに関する。
【背景技術】
【0002】
特許文献1は、1つの対象領域に対して、複数の処理(バウンディングボックスの生成、幾何正規化、ウェーブレット分解、カラーキューブ分解、形状分解、低解像度のグレースケール画像の生成)を行うことで、対象を認識する手法を開示している。
【先行技術文献】
【特許文献】
【0003】
【特許文献1】米国特許第7,016,532号明細書
【発明の概要】
【発明が解決しようとする課題】
【0004】
上記特許文献1に開示された手法は、線、端面、領域などのラージスケール(large-scale)の特徴に関しては、安定した特徴マッチングを行うことができない。また、並列処理を行ったとしても、全ての対象領域に対して複数の処理を行うことによる処理速度の低下は避けられない。
【0005】
本発明は、上記の点に鑑みてなされたもので、簡素なシステムで高速化が可能な特徴マッチング方法及びそれを用いた商品認識システムを提供することを目的とする。
【課題を解決するための手段】
【0006】
本発明の一態様による特徴マッチング方法は、
一つの2次元又は3次元画像データ内で所定の属性が極値(Local Maximum and/or Minimum)となる特徴(features)を検出し(10)、
上記検出した特徴からエッジ及び線の輪郭に沿って存在する特徴を除外し(12)、
上記残りの特徴を平面に割り当て(14)、
上記割り当てた特徴から局所情報(local information)を用いて一部の特徴を選択し(14)、
上記選択した特徴を対象に特徴マッチングを行う(14)、
2次元又は3次元画像データ内の対象を認識する特徴マッチング方法であって、
上記一つの2次元又は3次元画像データからスケールが異なる複数の画像データを作成し、
上記作成された異なる複数の画像データに対して、上記特徴の検出、上記特徴の除外、上記残りの特徴の割当て、上記一部の特徴の選択、及び上記特徴マッチングの実施のうち少なくとも一つが行われる、
ことを特徴とする。
また、本発明の一態様による商品認識システムは、
予め登録された複数の商品の特徴を記録するように構成された特徴記憶部(134)と、
商品を撮影するよう構成された画像入力部(130)と、
上記画像入力部で商品を撮影して得られた画像から特徴を抽出し、上記抽出した特徴を上記特徴記憶部に記録されている特徴と比較対照することにより、上記画像入力部で撮影した商品を自動認識するよう構成された自動認識部(132)と、
上記自動認識部の認識結果を利用して、精算処理を行う精算部(132)と、
を具備し、
上記自動認識部は、上記本発明の一態様による特徴マッチング方法を用いることを特徴とする。
【発明の効果】
【0007】
本発明によれば、簡素なシステムで高速化が可能な特徴マッチング方法及びそれを用いた商品認識システムを提供することができる。
【図面の簡単な説明】
【0008】
【図1】本発明の第1実施形態に係る特徴マッチング方法のブロック図である。
【図2A】オリジナル画像を示す図である。
【図2B】特徴を抽出するために使用された一連のマルチスケール画像を示す図である。
【図2C】マルチスケール特徴検出(multi-scale feature detection)によって抽出された特徴を示す図である。
【図3A】オリジナル画像の特徴と該オリジナル画像を20画素分平行移動した画像の特徴とのマッチングを示す図である。
【図3B】オリジナル画像の特徴と該オリジナル画像を0.7倍した画像の特徴とのマッチングを示す図である。
【図3C】オリジナル画像の特徴と該オリジナル画像を30度回転した画像の特徴とのマッチングを示す図である。
【図3D】オリジナル画像の特徴と該オリジナル画像をアフィン3D変形に相当するように0.4の剪断(shearing)を行った画像の特徴とのマッチングを示す図である。
【図4】データセットからの最終的なマッチング結果を示す図である。
【図5】本発明の第2実施形態に係る特徴マッチング方法における高速マッチングサーチ手法のブロック図である。
【図6】総当り(Brute-Force)マッチング法を説明するための図である。
【図7】全数検索(exhaustive search)を用いた2つの多次元セットのマッチングサーチの例を示す図である。
【図8】大量の特徴点(feature points)に対する全数検索を用いたマッチングサーチに要した時間の実験統計結果を示す図である。
【図9A】特徴空間(feature space)全体を幾つかのサブ空間(subspace)に階層的に分解する手順を示す図である。
【図9B】階層的に分解されたサブ空間を示す図である。
【図10】スモールデータベースに対する総当たりマッチング法及び高速マッチング法の比較実験の統計結果を示す図である。
【図11】ラージデータベースに対する総当たりマッチング法及び高速マッチング法の比較実験の統計結果を示す図である。
【図12】第1アプリケーションとしての情報検索システムの構成を示す図である。
【図13】第1アプリケーションとしての情報検索システムの動作フローチャートを示す図である。
【図14】第1アプリケーションとしての情報検索システムの変形例の構成を示す図である。
【図15】第2アプリケーションとしての情報検索システムの構成を示す図である。
【図16】第2アプリケーションとしての情報検索システムの変形例を説明するための図である。
【図17】第2アプリケーションとしての情報検索システムの更に別の変形例の構成を示す図である。
【図18】図17の構成を適用した携帯電話機の動作フローチャートを示す図である。
【図19】第3アプリケーションとしての情報検索システムの構成を示す図である。
【図20】第4アプリケーションとしての商品認識システムの構成を示す図である。
【図21】予めデータベースに登録される特徴を説明するための図である。
【図22】第4アプリケーションとしての商品認識システムにおける商品精算のフローチャートを示す図である。
【図23】特徴の抽出、認識処理のフローチャートを示す図である。
【図24】カメラからの画像の特徴と予め登録している参照画像の特徴との比較対象を説明するための図である。
【図25】第5アプリケーションとしての検索システムの概略構成を示す図である。
【図26】第5アプリケーションとしての検索システムのブロック構成図である。
【図27】第5アプリケーションとしての検索システムの動作フローチャートを示す図である。
【図28】DBとのマッチング処理の詳細フローチャートを示す図である。
【図29】画像候補を1点だけ表示する場合のデジタルカメラの表示部の表示画面を示す図である。
【図30】9点の画像候補を表示する場合の表示画面を示す図である。
【図31】特徴データベースの作成方法を説明するためのフローチャートを示す図である。
【図32】特徴データベースの作成方法の別の例を説明するためのフローチャートを示す図である。
【図33】特徴データベースの作成方法の更に別の例を説明するためのフローチャートを示す図である。
【図34】特徴データベースの作成方法の他の例を説明するためのフローチャートを示す図である。
【図35】看板として駅の駅名表示板を撮影した場合の動作概念を説明するための図である。
【図36】地図上に写真を表示した例を示す図である。
【図37】地図上に写真を表示した別の例を示す図である。
【図38】写真が多い場合の地図上への写真の表示例を示す図である。
【図39】写真が多い場合の地図上への写真の別の表示例を示す図である。
【図40】第6アプリケーションとしての検索システムのブロック構成図である。
【図41】第6アプリケーションとしての検索システムの動作フローチャートを示す図である。
【図42】プリントアウトの撮影処理の詳細フローチャートを示す図である。
【図43】特徴データベースの作成方法を説明するためのフローチャートを示す図である。
【図44】第7アプリケーションとしての検索システムの適用されたカメラ付携帯電話機のブロック構成図である。
【図45】第8アプリケーションとしての検索システムの動作フローチャートを示す図である。
【図46】第9アプリケーションとしての検索システムで用いられる概要特徴を説明するための図である。
【図47】第9アプリケーションとしての検索システムで用いられる詳細特徴を説明するための図である。
【図48】原画像データと概要テンプレート及び詳細テンプレートとの位置関係を説明するための図である。
【図49】第9アプリケーションとしての検索システムの動作フローチャートを示す図である。
【図50】画像データの中央部に注目した詳細テンプレートを説明するための図である。
【図51】画像内に数箇所分散配置した詳細テンプレートを説明するための図である。
【図52】注目領域を原画像データ撮影時の合焦位置においた詳細テンプレートを説明するための図である。
【図53】概要テンプレートと同じ領域に対して作成した詳細テンプレートを説明するための図である。
【図54】第10アプリケーションとしての検索システムの動作フローチャートを示す図である。
【図55】第11アプリケーションとしての検索システムの構成を示す図である。
【図56】認識要素同定(identify)処理を示すフローチャートである。
【発明を実施するための形態】
【0009】
以下、図面を参照して、本発明の特徴マッチング方法を説明する。
[第1実施形態]
本発明の第1実施形態に係る特徴マッチング方法は、PBR(Point Based Recognition)とも称され、図1に示すように、特徴検出(Feature Detection)10、特徴選択(Feature Adoption)12、及び特徴認識(Feature Recognition)14の3つの部分からなる。なお、特徴は空間的、時間的に分散している。例えば、本方法の認識対象が画像の場合には、2次元的な広がりの中での特徴マッチング(Feature Matching)である。時間的な広がりを考慮すれば、動画の認識が行える。
【0010】
特徴検出10では、入力されたオブジェクトデータ、例えば画像から、スケールと配置に左右されない空間的に安定した特徴を検出する。特徴選択12は、特徴検出10で検出された特徴からロバストな認識を行うためのロバストで安定した部分を選択する。特徴認識14は、特徴選択12で抽出された特徴と付加的な制限とを用い、予め分析されてデータベース16に蓄積されているオブジェクトを、位置づけ(locate)、インデックス付け(index)、及び認識を行う(recognize)。
【0011】
以下、それら特徴検出10、特徴選択12、及び特徴認識14のそれぞれについて、詳細に説明する。
【0012】
まず、特徴検出10について説明する。
ロバストな認識ができるかどうかは、選ばれた特徴とマッチングのための手法の両方に依存する。良い特徴は、マッチングをより良くそしてロバストに行える。従って、最適な特徴の選択とマッチング方法を合わせる事で信頼性と安定性を増す事ができる。一般に、線、端面、領域などのラージスケール(large-scale)の特徴は、マッチング演算のためにより広範囲な情報を与えるため、その分マッチングは容易である。しかしながら、ラージスケールの特徴はまた、視点、幾何学的配置、照明の変化によって、大きな画像歪みを生じる傾向がある。それ故、マッチングのためにはそれらの歪みを補うために大きな制約条件と仮定が必要である。残念ながら、これらの制約条件をモデル化するのに必要な数式が一般的には未知なので、ラージスケールの特徴はしばしば近似的に画像の幾何学配置のみから復元(recover)される。
【0013】
画像認識のために、像空間における正確な2次元的な一致を復元する必要がある。点といったスモールスケール(Small Scale)の特徴は、対応する測定結果が少なくても、画素単位の精度を見込めるという優位性を持っている。さらに、点の特徴(point feature)は、(線、面などの)ラージスケールな特徴よりも、識別力、遮蔽時(特徴量の一部が隠された時)における強さ、アフィン変換における充分な不変性、の点で優位である。特徴点の不利な点は、しばしばまばらに点在する点群と測定結果だけしか使えず、局所情報しかないためにマッチングさせることが難しい場合があるという点である。しかしながらまた一方で、多くの特徴点が確実に検出されるならば、他の特徴の場合には必要となる制約や様々な条件によって生じる測定品質劣化も起こる事なしに、多くの画像の一致点を復元する事ができる。実際に、ラージスケールの特徴を用いた色々な手法による測定や、最も信頼出来る測定結果が現れる状態を示す完全なアフィン・フィールドの状態は、しばしば近傍の点(near feature points)の間で見られる。これらの要因を考慮して、我々は認識に使用する特徴として点(=特徴点)を使用する事を選んだ。
【0014】
一般的に特徴検出というものの持つ課題は小さくは無い。画像認識やマッチングの為に、たとえ現実世界の構造とまったく物理的に一致しない場合でも、検出された特徴はそれらがその認識方法の中で優れた信頼性と安定性を示す必要がある。言い換えると、特徴検出方法は、様々なアフィン条件の下でも識別可能で信頼性が高く再現性のある特徴を、出来る限り多く検出可能とするべきである。そうする事により、特徴量の多くが遮蔽によって使用出来なくなったとしても、更に画像マッチングとパラメータ復元を行う場合に充分な特徴量を確保できる事になる。
【0015】
本実施形態における特徴検出10では、リッチテクスチャ領域(rich-texture regions)を伴った特徴点(point feature)を検出する方法を用いる。この方法では、3つのフィルタが使用される。最初に、局所極大(Local Maximum)を持つ点を抽出する為に高域通過フィルタが使用される。Rは中心がPである3×3のウィンドウ、F(P)はそのポイントにおいて適用した高域通過フィルタFの出力値とする。
【0016】
もし、
F(P)=max{P>Pi:R}>Threshold (1)
ならば、点Pは特徴候補となり、次に続くチェックのためにキープされる。なお、このフィルタは、局所極小(Local Minimum)を抽出するものであっても良い。
【0017】
2番目のフィルタは示唆的特徴フィルタ(distinctive feature filter)である。知られているように、エッジや線の輪郭に沿って存在する点はマッチングの為には安定していない。それは所謂、合っているように見えてしまう効果(matching arbitrary effect)が働くためであり、マッチングの信頼性の為にはそれらのポイントを外さなければならない。また、画像の共分散行列(covariance matrix)は小領域の画像の構造を表す良い指標であるというという事が知られている。共分散行列と画像構造の関係をまとめると、小さな固有値(eigen value)は領域内が比較的一様な強度である事を表している。大小ひと組の固有値は高いテクスチャパターンを表し、大きな固有値が二つある場合には線形な特徴、白黒が点在するテクスチャまたはその他のパターンを表している。従って、これらの特性を用いて線形な特徴点(feature points)を取り除くフィルタを設計する事が出来る。
【0018】
Mを、以下のような画像導関数から算出された2×2の行列とし、
【0019】
【数1】
また、λ1とλ2をMの固有値であるとすると、線形なエッジの度合い(measure)は、
R=det(M)−k(trace(M))2 (3)
である。但し、det(M)=λ1λ2であり、trace(M)=λ1+λ2である。
【0020】
それで、もしエッジの度合いが
R(P)>Threshold (4)
ならば、点Pは線形なエッジ点として扱われ、特徴候補(リスト)から外される。
【0021】
3番目のフィルタは、検出された点を繰り返しサブピクセル精度にリファインする内挿フィルタ(interpolation filter)である。アフィン平面が、局所的な点(local points)を連続的な平面に再構築する為にまず用いられる。その結果、最適解が収束しサブピクセル精度に到達するまで、このフィルタは繰り返しその点を再配列した平面の上に絞り込んでいく。
【0022】
本実施形態の新規な面は、マルチ解像度(multi-resolution)手法を採用し、複数の解像度の画像、各々から特徴を抽出することによって、スケール不変性を向上させていることである。
【0023】
アフィン変換のスケール不変性を実現する為に、特徴検出処理の中でマルチ解像度手法が採用されている。これは、処理スピード向上を主目的とする従来のピラミッドの使用法とは異なるものである。言い換えれば、粗い検索からより細かい検索へ、即ち、効果的なアフィンスケール不変性を達成するために、異なるスケールにわたって有用な特徴を見つける事を目的としているので、ピラミッドのそれぞれのレベルの特徴を独立に処理する。
【0024】
図2A乃至図2Cは、このアプローチ方法が雑然とした場面(cluttered scene)に適用された結果を示している。図2Aは原画像を、図2Bは特徴を抽出するために使用された一連のマルチスケール画像を、そして図2Cは抽出された特徴を、それぞれ示している。
【0025】
次に、特徴選択12について説明する。
上記特徴検出10においていったん検出されれば、その検出された特徴はロバストな認識の為のロバスト且つ安定した特徴として採用されなければならない。上述の如く、特徴点(point features)を使用する事における弱点は、初期の段階では、しばしば、まばらな点集合と単なる局所情報が利用できるだけなのでマッチングが難しいということである。適した特徴選択の方法を用いる事は、視点、幾何学的配置、照明などの変化を考慮すると大変重要である。
【0026】
そのアプローチにおいて、本実施形態における特徴選択12では、アフィン領域と呼ぶ局所的な情報を用いた個々の特徴点(feature point)を選択(adopt)する。3つの制約条件が局所領域を決めるために用いられる。言い換えれば、3つの制限は、強度(intensity)、倍率(scale)、方向(orientation)である。強度の制約とは、その領域内の画素から計算された画像勾配値(image gradient value)G(x,y)であり、そしてそれは特徴のテクスチャの度合いを表している。
【0027】
【数2】
二つの画像のマッチングにおいて、ベースラインが小さい場合には、線形誤差が小さいため強度による特徴選択で画像のマッチングは十分行える。シンプルな相関によるマッチングを使う事ができる。さらに、もしマッチした画像が大きな画像歪みを持っている場合には、アフィン変換による変形マッチングはその歪み補正に有効である。
【0028】
しかしながら、大きな画像ベースライン(対応した画像が拡大縮小を含む幾何学的な変形や2D&3D回転を持つ)の状況下では、単純な強度選択だけでは充分ではない。単純な強度相関は拡大縮小・回転不変ではない事は良く知られている。このような場合、マッチする対応点を選択する為に、ロバスト且つ安定な利点をもつ特徴として考えられる全ての制約条件を熟考するべきである。倍率と局所的な方向の制約は、選択とマッチング処理の中に組み込まれている。まずはじめに、方向的に連続した空間が量子化され、離散的になる。
【0029】
【数3】
それらの、量子化された方向成分が、その幾何学的配置空間を構成する。画像を分解したモデルを使う事で、特徴の全ての局所的な方向成分を離散的な基底空間(the discrete base space)に対して割り当てることが出来る。このようにすることで、それらの局所的な方向成分をコンパクトな数式で表す事ができる。全ての考えうる性質(qualities)(強度、倍率、方向)に対して当てはまる表現式(consistent)を形成するために、強度と倍率の値が用いられて特徴マッチングの為のあらゆる局所的な方向成分の重み付けがなされる。さらにその上、量子化効果(誤差)を低減する為に、ガウシャンによる平滑化関数(Gaussian smoothing processing)が使われ、重み付けが強調される。
【0030】
以下の式(8)で示すような形で、特徴の周辺領域から正規化した方向の特徴を持つようにしていることが本実施形態の新規な面である。
【0031】
Rはスケールピラミッドを作るためのガウシアンフィルタによって定義される重み付けの範囲である。範囲内のすべての点P(xi,yi)において、その量子化された方向成分は式(8)で表される。
【0032】
【数4】
ここで、G(xi,yi)は上記式(5)によって算出される勾配であり、Weight(xi,yi)は、処理された点(x,y)に中心がある以下の式(9)のようなガウシャン重み関数である。
【0033】
Weight(xi,yi)=exp(−((xi−x)2+(yi−y)2)/σ2) (9)
上述の選択方法は、画像の拡大縮小や面外での回転を取り扱う際に有効である。しかし、それは面内の方向成分(in plane orientation)に対して過敏である。このずれを補正する為に、アフィン領域は重み付けの計算の中で、同一の方向に正規化される。さらに回転方向の量子化誤差をキャンセルする為に、重−線形補間(bi-linear interpolation)とガウシャン平滑化処理(Gaussian smoothing processing)が処理ウィンドウの中で適用される。同様に、照明条件の変化に対するロバスト性を強める為に、入力画像は正規化される。
【0034】
特徴選択12の出力となるのは、各々の合致点と関連した領域(全ての制約が組み込まれ、アフィン変換で表され、照明不変性を達成する)を表す簡潔なベクトル表現(compact vector representation)である。
【0035】
図3A乃至図3Dに、本アプローチにおいて異なるアフィン変換を行ったシーンに適用した結果を示す。図3Aはオリジナル画像を20画素分平行移動したシーン、図3Bはオリジナル画像を0.7倍したシーン、図3Cはオリジナル画像を30度回転したシーン、図3Dはオリジナル画像をアフィン3D変形に相当するように0.4の剪断(shearing)を行ったシーン、に適用した結果をそれぞれ示している。
【0036】
次に、特徴認識14について説明する。
上記特徴検出10で検出され、上記特徴選択12で選択された特徴は、幾何学的不変性(geometry invariance)について良い特性を示している。マッチング処理は、選択された特徴に基づいて行なわれる。マッチング類似性の判定にはSSD(Sum of Square Difference)を用いる。すなわち、マッチング画像の各々の特徴Pに関する類似度(P)が計算され、そして、SSDサーチは最も類似性の高い最適合致点を発見する。もし、
Similarity(P)={P,Pi}>Threshold (10)
の関係があれば、Piは点Pと一致している。
【0037】
RANSAC(Random Sample Consensus)を利用したペアの評価手法を、画像認識の信頼性評価手法として利用していること、特に、マッチングした点が少ないときに、本手法で算出するアフィン変換行列から、認識時の姿勢を算出し、この姿勢に基づいて認識の信頼性を評価できることは効果的である。
【0038】
実験結果は、上記複数の制約条件を満たす特徴部分が画像マッチングの良い特性を備えている事を示している。しかしながら、非常に雑然としたシーンでは、特に背景にある特徴量の為に、ミスマッチング(outliersと呼ぶ)が生じる場合がある。それらのミスマッチングを除去する目的で、基本的な幾何学的制約条件を満たすペアを探すためにRANSACに基づくアプローチが使われている。マッチした画像特徴が同じ対象物の場合には、二次元変換で(平面射影変換(homography)として)関係が表されることが知られている。計算の高速化の為に、特徴認識14では、2次元アフィン変換による制約を使用して平面射影変換を近似してミスマッチングの除去を行う。パラメータの変化を推定するためには3点あればよい。まず、RANSAC遂次代入は、最初の変換行列Minitを推定する為に、任意抽出された3特徴点を用いる。
【0039】
【数5】
推定された変換行列は、次に、マッチングする全ての特徴を用いて繰り返し絞り込まれていく。このミスマッチングはこれらのマッチング点が大きなマッチングずれを有する事を示している。
【0040】
【数6】
ここで、xitは推定されたアフィン変換式によってxiからxisに向かってアフィン変形された点を表す。すなわち、
【0041】
【数7】
その特徴マッチングの最終アウトプットはミスマッチングかどうかの判定と推定された2次元パラメータ変換(アフィンパラメータ)が添付されたマッチング点のリストである。
【0042】
図4は、予め分析されデータベース16に蓄積されたオブジェクトデータセットからの、本特徴認識14で得られた最終的なマッチング結果の例を示している。
【0043】
[第2実施形態]
本実施形態では、上記特徴認識14において、更なる高速化を図る高速マッチングサーチ手法を説明する。
【0044】
この高速マッチングサーチ手法は、dBTree(Data Base Tree)と呼ぶ。効果的な画像マッチングサーチ技術であるdBTreeは、上記第1実施形態で説明したようなPBR特徴点(feature points)が抽出されている多次元のデータベース16からマッチングする対を高速に復元できる。技術的には、この課題はNPデータクエリー問題である。言い換えると、N次元のデータベース上にある点とクエリーポイントqが与えられた時、qとデータベースの点間の最もマッチするもの(最近傍)を見つける事が課題となっている。本実施形態による高速マッチングサーチ手法は、効果的なデータ表現、マッチング、多次元の特徴空間のindexingを行うためのPBRの特徴の階層的な表現を形作る木構造のマッチングアプローチである。
【0045】
技術的には、dBTreeマッチングは、図5に示すように、dBTree構築(dBTree Construction)18、dBTree検索(dBTree Search)20、及びインデックスマッチング(Match Indexing)22から構成される。dBTree構築18では、高速な特徴検索、クエリーを実現するために、上記第1実施形態のようにして入力されたオブジェクトデータから得られたPBR特徴より、PBR特徴空間上の階層的なデータ表現(以下、dBTree表現)を作る。作られたdBTree表現はデータベース16に登録される。データベース16には、こうして多数のオブジェクトデータに対するdBTree表現が登録される。dBTree検索20では、入力されたオブジェクトデータから上記第1実施形態のようにして得られたPBR特徴の最近傍点を、上記データベース16に構成されたdBTree空間の上で検索する。インデックスマッチング22では、発見された最近傍(Nearest Neighbors; NNs)と更なるPBRの制限条件とから、マッチングペアを抽出、修正する。
【0046】
本実施形態におけるdBTreeアプローチの詳細を説明する前に、マッチングサーチの課題について説明しておく。
【0047】
マッチングサーチのゴールは、多次元のデータベースにおいてあり得るマッチングの高速復元である。本実施形態では、PBR特徴マッチングといった固有のケースに注目しているけれども、本dBTree検索構造は一般のどのようなデータ検索アプリケーションにも適用できる。
【0048】
二つの点群P={pi,i=1,2,…,N}とQ={qj,j=1,2,…,M}が与えられ、piとqiがk次元ベクトルの場合に、ゴールはPとQ二つの点群の間で全ての可能なマッチングを見つける事である。言いかえれば、Matches={pi<=>qj}が確実な類似性を持っているという事である。
【0049】
PBR特徴点は特徴マッチングにおいては良い不変特性を持っているので、不変量特徴のユークリッド距離が類似性マッチングに使用されている。言いかえれば、各々の特徴pi、類似度(pi)はマッチした特徴qjに対して算出される。そして、マッチングサーチは、最短のユークリッド距離を持つ最良合致点を見つけ出す。
【0050】
明らかに、マッチング性能と速度はN、Mといった2つの点群の特徴点数に依存している。
【0051】
二つのデータセットの点を合致させる時に、まず思い浮かぶのは恐らく“総当り(Brute-Force)方式による”労力のかかるサーチ方法だろう。図6に示した如く、総当りアプローチはセットPの全ての点を取っていき、そして、セットQの各々の点に対してその類似度を演算する。明らかに精緻な(exhaustive)検索のマッチングスピードはポイントセットの特徴の点数に直線的に比例し、トータルO(N×M)のアルゴリズム演算(ユークリッド距離演算)に帰着する。例として、547点と547点の二つの典型的なPBR特徴セットのマッチングの為に、総当りマッチングは1.7GHzのPCで3.79秒かかった。図7に、全数検索(exhaustive search)を用いた2つの多次元データセット(2955点×5729点)のマッチングの例を示す。結果的に169.89秒かかると推定できる。
【0052】
図8は、大量の特徴点(feature points)(入力画像特徴数Nとデータベース特徴数Mのトータルの特徴数N×M)に対して、(50超の実験画像の)総当り検索のマッチングに要した時間の実験統計結果を示している。
【0053】
以下、本実施形態におけるdBTreeアプローチの詳細を説明する。
まず、dBTree構築18について説明する。
【0054】
dBTreeマッチングのコアとなるデータ構造は、効果的な階層表現(超関数を特徴付ける)を形作るツリー構造である。行をスキャンしていく特徴の表現(言いかえれば、全ての特徴が表型構造(grid structure)の中に表されている)が総当り検索を使用しているのとは違って、dBTreeマッチングでは、全空間をツリーノードによって幾つかのサブスペースに分けて階層化した平衡二分木(Balanced-binary tree)でk次元のデータを表現する。このツリーのルートノードは全部のマッチング空間を表し、その枝ノードは下位空間に異なるキャラクターの特徴を持つ矩形のサブ空間を表す。サブ空間はオリジナルスペースと比べると比較的小さいため、入力特徴の数も少ないので、ツリー表現ではどんな入力特徴でもその位置によらず高速にアクセスできる。入力特徴を含んでいるサブスペースを見つけるまで階層をダウンさせる事によって、マッチングする点のサブスペースの中での同定(identify)を少数のノードをスキャンするだけで行える。
【0055】
図9A及び図9Bは、dBTreeデータ構造を形成するために、特徴空間24全体を幾つかのサブ空間26の中に階層的に分解(decomposing)する手順を示している。まず、定義済みの分割方法に従って、入力点群を分割(セグメント化)する。ここでは中央値(メディアン)フィルタリングが使われているので、同数の点が分割した両方のサブ空間26に入る。ツリーの各々のノードは、1つのパラメータ次元の値により定義されており、サブ空間26の上下方向、左右方向のサブ空間26に点が分割され、親ノードの点のそれぞれ半分が入る。これらの子ノードは、別のパラメータ次元により同数の二組に再び分割される。このプロセスはそれぞれの葉に含まれる点の数がlog(N)レベルに達するまで繰り返される。
【0056】
次に、dBTree検索20について説明する。
(最近傍のサブ空間26をサーチし、その中でもっとも近いノードを探す為の)ツリーの中でクエリーの点を検索する為には二つのステップがある。まず、その木はクエリーポイントを含んだサブ空間26を見つける為に、横断的にサーチされる。サブ空間26の多くは比較的小さいので、素早く、単にlog(N)回の比較演算によりサブ空間26を見つける事が出来、そしてその空間がマッチングする点を含む確率は高い。いったんサブ空間26が見つけられたら、サブ空間26内の全てのノードのノードレベルの検索が行われ、マッチングポイントの同定が行われる。このプロセスは、クエリーの点に対して最も近いノードが見つかるまで繰り返される。
【0057】
上記検索方法による実験では、次元数の少ないデータセットのマッチングにおいては速度向上が確認できた。しかしながら驚くべきことに、大規模なデータセットに対してはまったく効果がみられず、総当り検索アプローチよりもさえ遅い。その理由には二つの側面がある。まず、古典的なツリー検索の効率は、もしクエリーポイントまでの距離が極端に遠いならば、たくさんの木の枝を刈り取る(無視できる)場合があるという事実に基づいており、そしてこの事で不必要な検索時間を大幅に削減する事ができている。これは、次元数の少ないデータセットに対してはよく起こるが、次元数が多くなると、中央の枝に隣接して存在する調べるべき枝が多くなりすぎる。枝を取り除き、ベストな検索パスを探すためには多くの計算が実行される事になり、その為ツリー型における労力を要するサーチとなってしまっている。第二に、サブ空間26の中でノードレベルの横断サーチにより、全ての下位ノード(どのくらいの下位ノードがあるかによるが)を調べる事になりこれも労力がかかる。多次元のデータセットでは各々のサブ空間26には、労力のかかる横断サーチが必要なノードが多く含まれすぎている。
【0058】
本実施形態では、これらの課題を解決し、多次元データセットにおいても効率的なマッチングを実現するために、二つの戦略(方法)を用いている。まず、ツリー・プルーニング・フィルタ(枝刈りフィルタ)が調査の必要な枝を切り落とす(減らす)のに使用される。ある数の近傍の枝の調査(即ち、探索ステップ)が終わったところで、探索は強制終了させられる。距離フィルタもこの目的で使う事ができるが、広範囲に及ぶ実験からは探索ステップフィルタの方が正しいマッチングペアを探す事と、計算コストを勘案するとよりよいパフォーマンスを示している。近似値による検索結果を見ることになるが、実験結果からは、近似によるミスマッチングの増加は2%以下である。
【0059】
二つ目の戦略(方法)は、ノード距離フィルタを導入する事による改善である。実世界における多くの場合のマッチングの制約条件に基づけば、正しいマッチングは点在している。そこで、全ての特徴ノードをサーチする代わりにサーチする範囲に距離の閾値を設ける。ノードサーチは円周パターンで行われ、ターゲットに近いノードが最初にサーチされる。検索限界に達するとすぐに、検索は強制的に止められ、そしてその時の最近傍(複数)が出力される。
【0060】
次に、インデックスマッチング22について説明する。
最近傍が検出されると、次のステップでその最近傍(複数)が正しいマッチングかどうかが判定される。それが前述のPBRマッチングと同様に、正しいマッチングを選択するために、マッチングの閾値を設けている。例えば、1番目の最近傍までのと2番目の最近傍との類似度の差(1番目の最近傍までの距離/2番目の最近傍までの距離)が前もって定めた閾値以下であれば、その点は正しいマッチングであると判定される。
【0061】
図10及び図11に(50を超えるテスト画像での)総当りとdBTreeマッチング法の比較実験の統計結果を示す。
【0062】
なお、1番目と2番目の最近傍の類似度の差は、その点の類似度の同一性判定における正確性を表現するパラメータとなる。また、画像内のマッチング点の数そのものも、画像としての同一性判定における正確性を表現するパラメータとなる。さらに、上記式(13)で表現される画像内のマッチング点のアフィン変換における差分の総和(残差)も、画像としての同一性判定における正確性を表現するパラメータとなる。これらの一部を利用してもよいし、それぞれを変数とする変換式を定義し、これをマッチングにおける同一性判定の正確性としてもよい。
【0063】
そして、該正確性の値を利用することにより、マッチングした結果として複数の画像を一定の序列で出力することも可能となる。例えば、マッチング点の数を正確性として利用し、その数の降順でマッチング結果を表示することにより、より信頼できる画像から順に出力することになる。
【0064】
以下、上記第1及び第2実施形態で説明したような特徴マッチング方法を利用したアプリケーションについて説明する。
【0065】
[第1アプリケーション]
図12は、第1アプリケーションとしての情報検索システムの構成を示す図である。
【0066】
この情報検索システムは、情報呈示装置100と、記憶部102と、データセットサーバ104と、情報サーバ106とからなる。上記情報呈示装置100は、プラットフォームハードウェアに構成される。上記記憶部102は、上記プラットフォーム内に設けられる。上記データセットサーバ104及び上記情報サーバ106は、上記プラットフォームハードウェアがアクセス可能なサイトに構成される。
【0067】
ここで、上記情報呈示装置100は、撮影部108と、認識及び識別部110と、情報指定部112と、呈示画像生成部114と、画像表示装置116とから構成される。上記認識及び識別部110,情報指定部112,及び呈示画像生成部114は、プラットフォームハードウェア内に設置された情報呈示装置のアプリケーションソフトウェアにより実現される。
【0068】
なお、上記の撮影部108及び画像表示装置116は、プラットフォームハードウェアが物理的な構成として備えていたり、外部に接続されるものの場合もある。従って、上記の認識及び識別部110、情報指定部112及び呈示画像生成部114を情報呈示装置と称しても構わない。しかしながら、本アプリケーションでは、画像の撮影から最終的な画像の呈示までを行う装置としてとらえて、それら撮影部108、認識及び識別部110、情報指定部112、呈示画像生成部114、及び画像表示装置116を合わせて情報呈示装置と称する。
【0069】
ここで、上記撮影部108は、所定の撮影範囲を有するカメラ等である。上記認識及び識別部110は、上記撮影部108により撮影された画像から、上記撮影範囲内の個々の対象物を認識し識別するものである。上記情報指定部112は、上記認識及び識別部110によって識別された個々の対象物の情報に応じて、情報サーバ106より所定の情報(表示コンテンツ)を取得する。そして、上記情報指定部112は、上記所定の情報を関連情報として指定する。上記呈示画像生成部114は、上記情報指定部112により指定された関連情報を上記撮影部108により撮影された画像と関連させた呈示画像を生成する。そして、上記画像表示装置116は、上記呈示画像生成部114で生成された呈示画像を表示する液晶等のディスプレイである。
【0070】
また、該プラットフォーム内の記憶部102には、図示しない通信部或いは記憶媒体を介して、データセットサーバ104よりデータセット118が保存されている。但しこのデータセット118の導入(ダウンロード又はメディア交換)及び保存は、情報呈示装置100の起動前後を問わず可能である。
【0071】
このような構成において、情報呈示装置100は、図13に示すように、まず、撮影部108によって画像を取得する(ステップS100)。次に、上記ステップS100にて取得した画像に対して、認識及び識別部110が、所定の対象物を抽出する(ステップS102)。続いて、認識及び識別部110が、上記ステップS102にて抽出した対象物の像(例えば四角形の枠内の画像)について上記プラットフォーム内記憶部102から読み出したデータセット118内の特徴を基に比較及び識別を行う。このようにして、認識及び識別部110が、一致する対象物像を検出する。そして、認識及び識別部110が、一致する対象物像を検出した場合には(ステップS104)、それを次ステップである情報指定部112において再度データセット118の対応するデータから取得すべき情報の在処及び/または取得方法を読み出して実行する(ステップS106)。一般的には、プラットフォームから通信等でネットワーク上などの外部に存在する情報サーバ106にアクセスし、情報を取得する。そして、呈示画像生成部114は、上記情報指定部112にて取得した情報(図示しない)をプラットフォーム内或いは外部にある画像表示装置116に表示可能なように加工して呈示画像を生成する。呈示画像生成部114から、この生成した呈示画像を画像表示装置116に送出することで、該画像表示装置116で情報を表示する(ステップS108)。ここで、場合によっては、撮影部108で取得した原画像上に上記で取得した情報を重畳させた呈示画像を生成して画像表示装置116に送出させることも有益な情報呈示である。従って、どのような手法で呈示を行うかは利用者により選択可能とする。
【0072】
また、図14に示すように、認識及び識別部110と情報指定部112との間に、位置及び姿勢(orientation)算出部120を設けるようにしても良い。上記呈示画像生成部114は、上記情報指定部112により指定された関連情報を、上記撮影部108により撮影された画像に対して、上記位置及び姿勢算出部120で算出された位置及び姿勢で重畳表示するような呈示画像を生成する。
【0073】
なお、図12及び図14では図示されていないが、プラットフォームの記憶容量が大きい場合には、以下のようなことも可能である。すなわち、データセットサーバ104よりデータセット118を導入する際に、情報サーバ106とデータセットサーバ104とを通信させ、導入するデータセットサーバ104に対応する情報(表示コンテンツ)をプラットフォーム内記憶部102に予め導入即ち保存する。このようにすれば、情報呈示装置100の動作効率を高めることができる。
【0074】
ここで、本第1アプリケーションを、カメラ付き携帯電話機をプラットフォームとした場合について説明する。携帯電話機は、基本的には個人で使用する機器である。近年そのほとんどの機種には、アプリケーションソフトウェアを携帯電話機でアクセス可能なインターネットサイト(以下、携帯サイトと略記)上から導入可能(いわゆるダウンロードによるインストール可能)である。本情報呈示装置100も基本的にはそういった機種の携帯電話機を前提にしている。つまり、携帯電話機の記憶部102に本情報呈示装置100のアプリケーションソフトウェアをインストールする。またデータセット118は、特定の携帯サイト(図示しない)に繋がるデータセットサーバ104から通信を介して適宜当該携帯電話機の記憶部102に保存する。
【0075】
特に、携帯電話機での本情報呈示装置100の利用範囲としては、例えば以下のような利用方法が挙げられる。すなわち、雑誌または新聞等に存在する写真を対象物に予め指定しておき、それに関するデータセットを用意しておく。利用者は上記出版物の紙面から携帯電話機で対象物を撮影し、その対象物に関連した情報を携帯サイトから読み出す。こういった場合、あらゆる出版物の写真やアイコン、イラスト等を全てを特徴として保持することは不可能である。従って、特定の使用範囲等に限定して特徴を提供することが現実的である。即ち、ある特定の雑誌の「○月号に掲載された写真を対象物として参照するためのデータセット」といった纏め方で利用者に供給すればよい。このようにすれば、利用者側も利用しやすく、また上述のように一つのデータセットに参照画像を100〜数100程度であれば携帯電話機の記憶部102に充分収まり且つ認識及び識別処理時間も数秒以内で済む。また、本情報呈示装置100に利用される印刷物側の写真・イラスト等には特段の仕掛けや処理が不要である。
【0076】
以上のような第1アプリケーションによれば、利用者にとってはその利用しようとする範囲のデータを複数一括して情報呈示装置100に導入することが容易にでき、また、データセットの供給側も準備しやすく、また商業的に提供しやすいサービスを実現できるようになる。
【0077】
また、位置及び姿勢を算出する機能も備えた場合には、情報サーバ106から取得された情報を原画像上に、適切な位置及び姿勢をもって表示可能となる。すなわち、利用者の情報取得効果をより高めることに繋がる。
【0078】
[第2アプリケーション]
次に、第2アプリケーションを説明する。
図15は、第2アプリケーションとしての情報検索システムの構成を示す図である。この情報検索システムの基本的な構成及び動作は、前述の第1アプリケーションと同様である。情報呈示装置100において特徴をセット単位で取り扱うことができることは、上述の通り利用者の利便性を増し、且つデータセットの供給を現実的にするものである。
【0079】
しかしながら、情報呈示装置100が広く普及し、またデータセットも極めて多種多様に多くの事業者から供給される状況になった時には、以下のようにすることが望ましい。すなわち、情報呈示装置100の利用者において利用度の高いもの(以下、これを基本データ122と称する。)は、データセット118として別体で供給せずに、どんなデータセット118を選択していても利用可能なようにしておくことが望ましい。例えば、データセット118自体の索引情報に紐付く対象物や最も頻繁に利用される対象物等については、データセット118からそれらを除外し、情報呈示装置100のアプリケーションソフトウェア内にそれら数点の特徴のみを常駐させることが有効である。言い換えると、本第2アプリケーションにおいては、データセット118は、利用者の利用目的や対応させる出版物または対象物に応じてセットを組み、アプリケーションソフトウェアとは別体で供給する。しかしながら、特に利用頻度が大きいか必要性の高い対象物についての特徴等は、基本データ122としてアプリケーションソフトウェア自体に常駐或いは保有させる。
【0080】
ここで再度、携帯電話機がプラットフォームである場合を例に説明する。例えば、通常のデータセット118を所定の携帯サイトから通信を介してダウンロードする事が最も実用的である。しかしながら、この際、データセット118の索引サイト(携帯サイト上のページ)上で案内及び検索が可能なことが携帯電話機利用者に便利である。そのサイト自体へアクセスする場合も、それ専用の対象物を本情報呈示装置100に撮影させ、閲覧ソフトウェアに上記サイトへのURLを渡すことでアクセス可能とする為に、特にデータセット118の準備を必要としない。すなわち、アプリケーションソフトウェア内に当該対象物に対応する特徴を基本データ122として存在させる。この場合、特定のイラストやロゴ等を対象物としても良いし、どこでも入手できるような無地の4角形などを対象物として設定しておく。
【0081】
あるいは、基本データ122をアプリケーションソフトウェア自体に常駐或いは保有させる代わりに、図16に示すように、供給されるデータセット118において、何れのデータセット118にも必ず基本データ122となる同一のデータファイル(図では特徴「A」)が少なくとも一組は内包されるようにしても良い。
【0082】
即ち、前述の通り、情報呈示装置100において実際に動作させる場合には、利用者が任意のデータセット118を導入する。ここで、何れのデータセット118にも前出の基本データ122が少なくとも1種は含まれており、利用頻度が大きいか必要性の高い対象物については必ず対応できる。例えば、図16に示すように、データセット118が多数(データセット(1)〜(n))用意されており、その中で1組或いは複数組のデータセット118をプラットフォーム内記憶部102に導入及び保存した場合を考える。この場合、どのデータセット118を選択したとしても必ず1種又は複数種の基本データ122は含まれている。したがって、利用者は特段の配慮をせずに基本的な対象物を撮影し、基本的な動作をさせることができる。繰り返しになるが、基本的な動作とは「データセットの索引ページへのアクセス」であったり「該情報呈示装置100供給者へのサポート窓口へのアクセス」或いは所定地域内に於ける「天気情報サイトへのアクセス」、その他利用者の多くが望む動作である。つまり、基本的な動作とは、利用者による使用頻度の高い動作であると定義する。
【0083】
また、図17に示すように、当該情報呈示装置100を起動させる際にデータセットサーバ104に接続して、必ず基本データ122をダウンロードし、他のデータセット118に取り込む或いは同時に参照可能とするようにしても良い。
【0084】
この構成は、データセット118は別体で供給、特にネットワーク経由でデータセットサーバ104よりダウンロードされる形態の場合に有効な基本データ122の導入方法を提供するものである。即ち、図17に示す構成により、データセット118をネットワークを介して本情報呈示装置100に供給する場合、データセット118を利用者が選択してデータセットサーバ104よりダウンロードする際に、データセット118に加え、自動的に基本データ122についても同時にダウンロードすることができる。また、図17に示す構成により、既に本情報呈示装置100の存するプラットフォームの記憶部102に基本データ122が保存されている場合には、その基本データ122の更新を図ることができる。
【0085】
これにより利用者は、特段の配慮をせずとも常に基本データ122を情報呈示装置100で利用可能となる。
【0086】
例えば、近年、カメラ付き携帯電話機においてアプリケーションソフトを利用できるものが一般的に普及している。これをプラットフォームに本情報呈示装置100の撮影部108及び画像表示装置116を除く機能を有するアプリケーションソフトウェアをインストールしてある場合を考える。この場合、図18に示すように、該アプリケーションソフトウェアを使用するに当たり、データセット118を携帯電話機の通信を介して所定のデータセットダウンロードサイトを閲覧する(ステップS110)。次に、データセットサーバ104より初期的にダウンロードを行う(ステップS112)。それに引き続き、データセットサーバ104からは、基本データ122の更新の必要性を判定する(ステップS114)。
【0087】
すなわち、該携帯電話機内に基本データ122が存在しない場合には、必要と判定する。また、該携帯電話機内の記憶部102に既に基本データ122が存在しても、その基本データ122のバージョンが、該データセットサーバ104が提供しようとする基本データ122のバージョンよりも古い場合には、更新が必要性と判定する。
【0088】
続いて、基本データ122についても上記のデータセット118と同様にダウンロードを行う(ステップS116)。そして、そのダウンロードした基本データ122を該携帯電話機内の記憶部102に保存する(ステップS118)。また、上記ダウンロードしたデータセット118を該携帯電話機内の記憶部102に保存する(ステップS120)。
【0089】
このように、該携帯電話機内の記憶部102に既に基本データ122が存在した場合は、バージョン比較により、更新の必要性を判定の上、基本データ122のダウンロード及び保存を行う。
【0090】
以上のように、データセット118の必要性はある程度利用者の必要に応じたデータセット118に限り該携帯電話機に保存することで、対象物の識別処理速度の確保と利用者の必要性に不便を掛けないことを両立させる。
【0091】
本情報呈示装置100の利用範囲としては新聞または雑誌などの出版物上の写真・イラストなどの意匠を対象物としてそれらに関係する、或いは起因する情報への携帯電話機よりのアクセスやそれらの情報をカメラで取得した像上に重畳表示する事による情報呈示の高度化がある。更に、印刷物に限らず物体や町中にある看板等も対象物として特徴に登録することも可能である。この場合、それらを携帯電話機から対象物として認識することで付加情報或いは最新情報の取得を行うことが可能である。
【0092】
更に携帯電話機を用いた利用形態として、CDやDVDといったパッケージを持った商品においては、そのジャケットデザインが様々であるため、それを対象物として利用することが可能である。例えば、店頭、或いは別途レコード会社等から当該ジャケット群に関するデータセットを利用者に配信することにより、CD及び/またはDVDショップ或いはレンタル店等において、各ジャケットを対象物として携帯電話機で認識できるようになる。このため、例えば、当該対象物にURLを関連づけておき、このURLにおいて、当該対象物に紐付く情報として例えば楽曲のさわり部分の音声配信等を携帯電話機に配信できる。また、この紐付く情報として、ジャケット面に応じたアノテーション(ジャケット写真の個別注釈)も適切に加えることが可能である。
【0093】
即ち、携帯電話機を用いた利用形態として、CDやDVDといったパッケージを持った商品のジャケットデザインを対象物として利用する場合には、以下のようにすれば良い。まず、(1)音楽を固定した記録媒体又はその包装の外観イメージの少なくとも一部を対象物データとして携帯電話機に予め配信する。そして、(2)当該対象物によって導かれたアドレスにアクセスした上記携帯電話機に対して、上記固定された音楽に関連した所定の音楽情報(音声データや注釈情報)を配信する。
【0094】
このようにすれば、レコード会社側のプロモーションとしても有効であるし、また、店側としても試聴等の準備の手間が省ける等のメリットが生ずる。
【0095】
なお、上述した各アプリケーションで説明した、認識及び識別部、情報指定部、呈示画像生成部、位置及び姿勢算出部は、いずれも情報呈示装置が内蔵するCPU及び当該CPU上で動作するプログラムで実現するものとして記載した。しかし、例えば専用回路を設けるなど、他の態様でも実現可能なものである。
【0096】
また、プラットフォーム内記憶部の実現態様としては、外付けのデータパック、着脱自在の記憶媒体(例えば、フラッシュメモリ)などがあるが、これに限定されない。
【0097】
また、本第2アプリケーションにおいても、上記第1アプリケーションと同様に位置及び姿勢算出部120を備え、算出した位置及び姿勢に基づいて関連情報を呈示するようにしても良い。
【0098】
また、図12、図14乃至図17に破線で示すように、データセットサーバ104及び/又は情報サーバ106の代わりに、交換可能な記憶メディア124を使用するものであっても良い。この場合プラットフォーム記憶部102へのデータセット118や基本データ122の導入とは、その記憶メディア124から内部メモリへのデータの展開を意味する。
【0099】
[第3アプリケーション]
例えば、図12に示した第1アプリケーションとしての情報検索システムの構成は、図19に示すように変形することができる。すなわち、第1アプリケーションにおいて上記情報呈示装置100内に設けていた上記認識及び識別部110、及び上記記憶部102内に設けていた上記データセット118を、図19に示すようにサーバ側へ設けても勿論よい。なお、このような構成の情報検索システムとする場合には、上記記憶部102内に設けていた上記記憶メディア124は必要性を欠くので設けない。
【0100】
[第4アプリケーション]
次に、第4アプリケーションを説明する。
図20は、第4アプリケーションとしての商品認識システムの構成を示す図である。
【0101】
この商品認証システムは、バーコードが取り付けられている商品の認識用のリーダであるバーコードスキャナ126と、商品の重量を量る重量秤128と、に加えて、商品を撮影するためのカメラ130を備えている。現金を収納するコントロール部/現金収納箱132は、認識用の商品特徴を登録したデータベース134により商品の認識を行い、認識した商品の種別、単価、合計価格をモニタ136に表示する。なお、カメラ130の視野138は、重量秤128の範囲と一致している。
【0102】
このような商品認識システムにおいて、システム提供者は、予め認識が必要となる対象物の画像を撮影し、そこから抽出された特徴をデータベース134に登録しておく。例えば、スーパーマーケットでの使用においては、トマト、林檎、ピーマンといった野菜類をそれぞれ撮影し、図21に示すように、特徴140を抽出し、それぞれに対応した認識IDや名称などの識別指標を添付してデータベース134に格納する。また、必要に応じて、各対象物の平均重量、平均サイズといった補助情報についてもデータベース134に格納しておく。
【0103】
図22は、本第4アプリケーションとしての商品認識システムにおける商品精算のフローチャートを示す図である。
【0104】
商品の購入者は、対象物である商品を持ってレジに設置されたカメラ130の視野138内に置くことで、当該商品の撮影を行う(ステップS122)。その商品撮影データは、カメラ130からコントロール部/現金収納箱132に転送され(ステップS124)、該コントロール部/現金収納箱132において、特徴の抽出と、データベース134を参照した商品の認識が行われる(ステップS126)。
【0105】
そして、商品が認識されたならば、コントロール部/現金収納箱132は、データベース134より当該認識商品の設定価格を呼び出して(ステップS128)、価格をモニタ136に表示して、精算を行う(ステップS130)。
【0106】
購入者がトマト、ピーマンの二種類の購入を行う場合、まずカメラ130でトマトを撮影することで、コントロール部/現金収納箱132は、その撮影データ中の特徴を抽出しデータベース134との照合が行われる。そして、照合後に対象物である商品が一つに特定された場合には、その価格、従量制ならば重さに応じた係数をデータベース134から読み出して、価格をモニタ136に出力する。次に、ピーマンについても同様に、対象商品の同定、価格の出力が行われる。そして最終的に、商品の合計価格を演算してモニタ136に出すことで精算が行われる。
【0107】
なお、照合後に類似度(similarity)の閾値を越えた対象候補が複数出た場合には、(1)モニタ136に候補を表示し選ばせる、(2)再度対象物の撮影を行う、といった方法を採り、対象物の確定(establish)を行う。
【0108】
なお、上記ではカメラ130による撮影は一商品ずつ行われる例を示したが、複数種類の対象商品を一度に撮影し、照合を行うことも可能である。
【0109】
また、購入者が自らこれらの処理を行えば、自動レジが実現できる。
図23は、上記ステップS126での特徴の抽出、認識処理のフローチャートを示す図である。
【0110】
即ち、カメラ130から入力された画像(商品撮影データ)の中から複数の特徴を抽出し(ステップS132)、また、データベース134から予め登録してある対象物の特徴を比較データとして読み出す(ステップS134)。そして、図24に示すように、上記カメラ130からの画像142の特徴と予め登録している参照画像144の特徴との比較対象を行い(ステップS136)、対象物の同定を判断する(ステップS138)。ここで、同一でないと判断された場合には(ステップS140)、データベース134から次の予め登録している対象物の特徴を比較データとして読み出して(ステップS142)、上記ステップS136に戻る。
【0111】
これに対して、同一であると判断されたならば(ステップS140)、現在比較中の対象物と入力画像内の商品とが同一であると判定する(ステップS144)。
【0112】
以上のように、第4アプリケーションとしての商品認識システムでは、商品にバーコードやRFタグなどの認識指標を取り付けることなく、商品の認識が可能となる。特に、工業製品のように印刷等で簡単に認識指標を取り付けられるものと異なり、認識指標の取付けに大変に手間がかかる野菜等の農産物、肉、魚等の商品を自動認識できるので、特に有効である。
【0113】
また、そのような認識指標を取り付けにくい対象物としては、鉱物なども挙げられ、その自動分別等のような工業的な用途にも適用できる。
【0114】
[第5アプリケーション]
次に、第5アプリケーションを説明する。
図25は、第5アプリケーションとしての検索システムの構成を示す図である。同図に示すように、この検索システムは、デジタルカメラ146と、ストレージ148と、プリンタ150とから構成される。ここで、ストレージ148は、複数の画像データを格納するもので、プリンタ150は、そのストレージ148に格納された画像データをプリントアウトする。
【0115】
例えば、ストレージ148は、デジタルカメラ146に内蔵乃至は脱着可能なメモリであって、プリンタ150は、デジタルカメラ146からのプリントアウト指示に従って、そのストレージ148であるメモリ内の画像データをプリントアウトする。あるいは、ストレージ148は、デジタルカメラ146に接続端子,ケーブル,あるいは無線/有線ネットワークを介して接続される、もしくは、デジタルカメラ146から取り外されたメモリを装着して、画像データを転送可能なデバイスであっても良い。その場合には、プリンタ150は、ストレージ148に接続または一体的に構成され、デジタルカメラ146からのプリントアウト指示に従ってプリントアウトを実行するようなものであっても良い。
【0116】
なお、ストレージ148は、特徴量によって画像データが検索可能に構成されたデータベースの機能も備える。即ち、ストレージ148は、原画像のデジタルデータより作成された特徴群を格納した特徴データベースを構成している。
【0117】
このような構成の検索システムは、以下のように動作する。
(1) まず、デジタルカメラ146は、プリンタ150によって一旦プリントアウトされた検索元プリントアウト152の画像を含む被写体を撮影する。そして、得られた撮影画像データから、その検索元プリントアウト152の画像に対応する領域を抽出し、その抽出した領域の特徴を抽出する。
【0118】
(2) そして、デジタルカメラ146は、その抽出した特徴によってストレージ148に格納された特徴群とマッチング処理を実行する。
【0119】
(3) その結果、デジタルカメラ146は、マッチした特徴に対応する画像データを、上記検索元プリントアウト152の原画像データであるとして、ストレージ148から読み出す。
【0120】
(4) これにより、デジタルカメラ146は、その読み出した原画像データを、再び、プリンタ150でプリントアウトすることができる。
【0121】
なお、検索元プリントアウト152としては、1枚単位で出力されたプリントアウト以外に、複数の縮小画像をまとめて出力したインデックスプリントを使うことも可能である。これは、インデックスプリントから必要なものを選択して、焼き増しする方がコスト面や利便性が良いためである。
【0122】
また、検索元プリントアウト152については、システム内のストレージ148に構成した特徴データベースに原画像データがある画像であれば、システム外(図示せず)のプリンタでプリントアウトしたものであっても構わない。
【0123】
以下、本第5アプリケーションとしての検索システムを、図26に示すブロック構成図及び図27に示す動作フローチャートを参照して、詳細に説明する。なお、デジタルカメラ146は、通常の撮影モードとは別に、撮影済みデータの検索モードを有し、図27の動作フローチャートは、その検索モードに設定されている場合の処理を示している。
【0124】
即ち、ユーザは、上記検索モードに設定した後、再度プリントアウトすることを望む検索元プリントアウト152を、テーブル上或いは壁面等に貼付した状態で、デジタルカメラ146の撮影部154により、撮影する(ステップS146)。
【0125】
次に、特徴抽出部156によって、特徴を抽出する処理を行う(ステップS148)。なお、特徴は、画像データ内の特徴点を使うものであっても良いし、所定のルールに従った画像データ内の分割エリア、つまり予め定められた格子により割り付けられた小領域の相対濃度などを使うものでも構わないし、分割エリア毎のフーリエ変換値などに基づいたものでも構わない。なお、上記特徴点が保持する情報には、点の配置情報が含まれていることが望ましい。
【0126】
次に、マッチング部158により、上記特徴抽出部156で抽出した特徴を、ストレージ148に構成した撮影済み画像データの特徴データベース(特徴テンプレート)と比較し、その類似度の高いものを順に抽出するDBとのマッチング処理を実行する(ステップS150)。
【0127】
即ち、このDBとのマッチング処理は、図28に示すように、まず、各撮影済み画像データの特徴との類似度を算出し(ステップS152)、類似度に基づいてソートする(ステップS154)。そして、その類似度に従って原画像候補を選出する(ステップS156)。なお、この選出は、閾値を設定しても良いし、類似度の高い順に上位のものを指定しても良い。何れにしても、類似度の最上位のものを1点選出する方法と、類似度の高いものから複数点を選出する方法の2種の方法がある。
【0128】
その後、表示部160に、上記選出された原画像候補の画像データをストレージ148から読み出して、抽出すべき画像候補として表示し(ステップS158)、ユーザによる選択を受け付ける(ステップS160)。
【0129】
図29は、画像候補を1点だけ表示する場合の表示部160の表示画面を示している。この表示画面では、画像候補162の表示の横に、他の画像候補の表示を指示する際に操作すべきボタンを表す『前』及び『次』アイコン164と、当該画像候補162を所望の画像データとして指示する際に操作すべきボタンを表す『決定』アイコン166とが配置される。『前』及び『次』アイコン164は、デジタルカメラ146が通常備える所謂十字キーの左キー及び右キーであることを表し、『決定』アイコン166はその十字ボタンの真ん中に配置されるエンターキーであることを表す。
【0130】
ここで、『前』又は『次』アイコン164に相当する十字キーが操作された場合には(ステップS162)、上記ステップS158に戻って、画像候補162を更新表示する。これに対して、『決定』アイコン166に相当するエンターキーが操作された場合には(ステップS162)、マッチング部158は、ストレージ148に格納されている当該画像候補162に対応する原画像データを、接続されたプリンタ150に送り、再度プリントアウトする(ステップS164)。また、プリンタ150に有線/無線で直接接続されていない場合には、ストレージ148に格納されている当該画像候補162に対応する原画像データに、フラグを追記する等の所定のマーキングを行う処理を実行することで、該ストレージ148にアクセス可能なプリンタ150でプリントアウトすることを可能とする。
【0131】
なお、上記ステップS158の画像候補の表示において、複数の候補を同時に表示するようにしても構わない。この場合、通常デジタルカメラ146に設置されている表示部160は当然数インチの小型のものであるため、4点或いは9点程度の表示が使い易い。図30は、9点の画像候補162を表示するようにした例を示している。この場合、『前』又は『次』アイコン164に相当する十字キーの左キー又は右キーの操作に応じて、選択画像を示す太枠168が移動される。なお、特に図示はしていないが、十字キーの上キー及び下キーの操作に応じて、9点の画像候補162の表示を前及び次の9点の画像候補の表示に変更する、所謂ページ切り替え表示を行うようにしても良い。
【0132】
なお、上記ステップS150において用いられる比較対象としてのストレージ148に構成した撮影済み画像データの特徴データベースについては、予め、ストレージ148中の原画像データを元に作成しておく必要がある。また、このストレージ148は、デジタルカメラ146に付属するメモリであっても良いし、図26に破線で示すような通信部170を介してアクセス可能なデータベースであっても良い。
【0133】
この特徴データベースの作成には、各種の方法が考えられる。
例えば、原画像撮影時にその撮影画像データをデジタルカメラ146のメモリ領域に保存する際に、特徴算出とそのデータベース登録を行う方法である。即ち、図31に示すように、デジタルカメラ146にて撮影を行い(ステップS166)、その撮影画像データをデジタルカメラ146のメモリ領域に保存する(ステップS168)。そして、その保存した撮影画像データから特徴を算出して(ステップS170)上記撮影画像データに関連付けて保存する(ステップS172)。従って、ストレージ148がデジタルカメラ146の内蔵するメモリであれば、データベースが構築されることになる。また、ストレージ148がデジタルカメラ146と別体の場合には、デジタルカメラ146のメモリ領域に保存された撮影画像データと特徴が共にストレージ148に転送され、データベースが構築されることになる。
【0134】
また、ストレージ148に蓄積された原画像データをプリンタ150でプリントアウトする際に、そのプリントアウト指示と同時に特徴抽出処理を行い、データベースに蓄積することもプロセス的に効率が良い方法である。即ち、図32に示すように、ストレージ148に蓄積された原画像データをプリントアウトする際、通常、ユーザ指示により、プリントアウトする原画像データが選択され(ステップS174)、また、プリント条件が設定されて(ステップS176)、プリントが実行される(ステップS178)。通常はここでプリント処理は終了であるが、本例では、更に続けて、その選択された原画像データから特徴を算出して(ステップS180)、その作成した特徴をその原画像データに関連付けて保存する(ステップS182)。なお、特徴作成の際に、プリント条件を反映させることで、検索元プリントアウト152と特徴とのマッチング精度を向上させることができる。このような方法によれば、マッチング処理が実施されるかもしれない原画像データについてのみしか特徴を作成しないので、不必要な特徴の作成時間及び保存容量を省略することができる。
【0135】
また、勿論、バッチ処理で行っても構わない。即ち、図33に示すように、ユーザからの一括特徴作成実行指示があったとき(ステップS184)、ストレージ148内の特徴未作成原画像データを選別して(ステップS186)、それら選別した特徴未作成原画像データに対して一括特徴作成処理を実行する(ステップS188)。この一括特徴作成処理は、個々の特徴未作成原画像データから特徴を抽出して特徴を作成し(ステップS190)、それら作成した特徴を対応する原画像データに関連付けてストレージ148に保存するものである(ステップS192)。
【0136】
さらには、ユーザの指示入力によって、個別に処理しても良い。即ち、図34に示すように、ユーザが、ストレージ148内の原画像データの一つを選択し(ステップS194)、その選択した原画像データについて特徴の作成の指示を行うことで(ステップS196)、その選択された原画像データから特徴を抽出して(ステップS198)、特徴を上記選択された原画像データに関連付けてストレージ148に保存する(ステップS200)。プリントアウトしたい写真をマークすることが特徴作成の指示であってもよい。
【0137】
これまで、プリントアウトしてしまった画像データを再プリントしようとするとき、画像データの付帯情報(ファイル名、撮影日時、等)を参考にユーザが検索する事が多かった。本アプリケーションとしての検索システムによれば、デジタルカメラ146にて所望の検索元プリントアウト152の画像を撮影するだけで、原画像のファイル(画像データ)にアクセスすることが可能となり、直感的且つユーザの使い勝手の良い検索方法を提供することが可能である。
【0138】
加えて、原画像データそのもののみならず、類似の画像構成の画像データを検索することも可能であり、副次的ながら新規な用途を提供できる。即ち、街頭の看板やポスター等をこの所謂検索モードで撮影し、デジタルカメラ146に付属するメモリや通信を介してアクセス可能なデータベース等のストレージ148に存在する画像データ及びその特徴の中から類似或いは同一の画像データを容易に検索可能となる。
【0139】
また、図35に示すように、例えば看板として駅の駅名表示板を撮影したならば、その画像データの中からその駅名を認識することで、撮影者の位置認識が可能となる。そこで、その認識した位置周辺つまり駅周辺の地図情報、その位置に関連する画像情報、同じく文字情報、などの関連情報を、デジタルカメラ146に付属するメモリや通信を介してアクセス可能なデータベース等のストレージ148に存在する関連情報の中から検索して提供することができる。なお、駅名の認識方法としては、文字認識、パターン認識、類似した画像の検索による認識推定などがあり、マッチング部158の機能として実施可能である。
【0140】
また、例えば東京タワーを撮影し、デジタルカメラ146に付属するメモリや通信を介してアクセス可能なデータベース等のストレージ148内の画像を検索することにより、東京タワーはもとより、世界各地のタワー状の建造物の写真を検索抽出することができる。そして、更には、その検索抽出した写真の付帯情報としての位置情報に基づき、各タワーの場所を知らしめたり、図36や図37に示すように地図上の該当の場所に写真を重ねて表示することも可能である。この場合、地図及び写真が関連情報である。
【0141】
なお、地図上に写真を重ねて表示する場合に、地図の縮尺、写真の大きさ、その場所に関連した写真の枚数などの要因により、多くの画像が重なって見にくくなることがある。その場合には、図38に示すように地図縮尺に応じて写真の表示サイズを変えたり、枚数が多い場合には図39に示すように枚数に比例した表示サイズでの写真の表示を行う代わりに代表的な写真1枚だけを表示する、といった工夫を行う。また、単に重なりあう、集まりすぎていることによって見にくくなる集合を代表する写真1枚だけを表示してもよい。この代表写真は、該集合内で最も類似度が高いものや、最も多く閲覧されているもの等、様々な観点で選択できる。
【0142】
なお、上記ステップS148乃至S162の処理は、デジタルカメラ146内で実施するものとして説明したが、デジタルカメラ146と別体でストレージ148を存在させる場合には、そのような処理をソフトウェアとしてストレージ148にて起動させる、或いはデジタルカメラ146とストレージ148とに分割した形で起動させることで実際に動作させることも可能である。
【0143】
[第6アプリケーション]
次に、図25を参照して、第6アプリケーションとしての検索システムの概略を説明する。
【0144】
即ち、本検索システムは、デジタルカメラ146と、ストレージ148と、プリンタ150と、パーソナルコンピュータ(PC)172とから構成される。ここで、ストレージ148は、PC172に内蔵乃至は通信を介してPCによってアクセス可能な記憶装置である。また、PC172は、デジタルカメラ146に無線/有線接続される、もしくは、デジタルカメラ146から取り外されたメモリを装着して、デジタルカメラ146のメモリに保存された画像データを読み出し可能に構成されている。
【0145】
このような構成の検索システムは、以下のように動作する。
(1) まず、デジタルカメラ146は、プリンタ150によって一旦プリントアウトされた検索元プリントアウト152の画像を含む被写体を撮影する。
【0146】
(5) PC172は、得られた撮影画像データから、その検索元プリントアウト152の画像に対応する領域を抽出し、その抽出した領域の特徴を抽出する。
【0147】
(6) そして、PC172は、その抽出した特徴によってストレージ148に格納された特徴とマッチング処理を実行する。
【0148】
(7) その結果、PC172は、マッチした特徴に対応する画像データを、ストレージ148から上記検索元プリントアウト152の原画像データであるとして読み出す。
【0149】
(8) これにより、PC172は、その読み出した原画像データを、再び、プリンタ150でプリントアウトすることができる。
【0150】
以下、本第6アプリケーションとしての検索システムを、図40に示すブロック構成図及び図41に示す動作フローチャートを参照して、詳細に説明する。なお、これらの図において、上記第5アプリケーションと対応するものについては、同一の参照番号を付してある。
【0151】
即ち、本アプリケーションは、デジタルカメラ146で撮影された画像データをそのユーザが特定するPC172に内蔵又は接続されたストレージ148に蓄積し、且つ図41にPC側として示す処理がアプリケーションソフトウェアとしてPC172にて動作する場合である。なお、PC172とデジタルカメラ146を有線或いは無線で接続し、通信状態を確立した状態で、本アプリケーションソフトウェアを立ち上げるものである。これは、デジタルカメラ146に設定された“検索モード”等といったスイッチを入れる操作によって機能が起動される状態でも構わない。
【0152】
このように本アプリケーションソフトウェアが動作したところで、デジタルカメラ146側にて、プリントアウトの撮影処理が実行される(ステップS146)。即ち、図42に示すように、ユーザが、再度プリントアウトすることを望む検索元プリントアウト152をテーブル上或いは壁面等に貼付した状態で、デジタルカメラ146の撮影部154により、少なくとも上記検索元プリントアウト152の欠けが無いように撮影する(ステップS202)。これにより、得られた撮影画像データがデジタルカメラ146内のメモリである記憶部174に保存される。そして、その保存された撮影画像データが、有線或いは無線で、接続されたPC172に転送される(ステップS204)。
【0153】
すると、PC172においては、アプリケーションソフトウェアにより実現される特徴抽出部176は、上記送信されてきた撮影画像データ中から特徴を抽出する処理を行う(ステップS148)。なお、上記特徴量抽出処理は、デジタルカメラ146側で行うようにしても良い。そのようにすれば、デジタルカメラ146からPC172への通信量を少なくすることができる。
【0154】
その後、アプリケーションソフトウェアにより実現されるマッチング部178により、上記抽出した特徴を、ストレージ148に構成した撮影済み画像データの特徴データベースと比較し、その類似度の高いものを順に抽出するDBとのマッチング処理を実行する(ステップS150)。即ち、算出された特徴を元にPC172側のマッチング部178にて、ストレージ148の画像データそれぞれに同梱される(或いは包括的にデータベース化された)特徴と比較し、最も近いものを選び出す。設定により、最も近い複数の特徴候補を選出する事も使い勝手において有効である。この特徴には、その特徴を算出した原画像データの指定情報が含まれており、それに従い候補画像を呼び出す。
【0155】
その後、上記選出された原画像候補(或いは候補画像)の画像データをストレージ148から読み出して、該PC172のディスプレイである表示部180に抽出すべき画像候補として表示し(ステップS158)、ユーザによる選択を受け付ける。このとき、上記選出された原画像候補(或いは候補画像)の画像データをそのままか、適宜圧縮した状態で、PC172よりデジタルカメラ146に転送し、デジタルカメラ146の表示部160上に表示するようにしても構わない(ステップS206)。
【0156】
そして、マウス等の操作による選択に応じて、ストレージ148に格納されている当該画像候補に対応する原画像データを、接続されたプリンタ150に送り、再度プリントアウトする(ステップS164)。即ち、上記表示された原画像候補をユーザの判断により決定し、印刷プロセスに渡すことにより当初の目的であるプリントアウト済み画像の再印刷がユーザにとっては簡単に行えるものである。なおこのとき、単純に印刷するばかりではなく、候補画像として複数選択した中でユーザ判断によっては、「狙いの元画像とは異なるが、類似の画像を集めた」ことになり、類似の画像データを一括検索する機能の実現にも繋がっている。
【0157】
なお、本アプリケーションにおいては、特徴データベースの作成は、デジタルカメラ146からPC172を介したストレージ148への撮影画像データの転送時に行うようにしても良い。即ち、図43に示すように、デジタルカメラ146からPC172への撮影画像データの転送を開始し(ステップS208)、PC172により、その転送されてきた撮影画像データをストレージ148に保存すると共に(ステップS210)、その撮影画像データから特徴を作成する(ステップS212)。そして、その作成した特徴をストレージ148に上記撮影画像データに関連付けて保存する(ステップS214)。
【0158】
以上のように、本第6アプリケーションにおいても、上記第5アプリケーションと同様、デジタルカメラ146にて所望の検索元プリントアウト152の画像を撮影するだけで、原画像のファイル(画像データ)にアクセスすることが可能となり、直感的且つユーザの使い勝手の良い検索方法を提供することが可能である。
【0159】
加えて、原画像データそのもののみならず、類似の画像構成の画像データを検索することも可能であり、副次的ながら新規な用途を提供できる。即ち、街頭の看板やポスター等をこの所謂検索モードで撮影し、デジタルカメラ146に付属するメモリや図40に破線で示すような通信部182を介してアクセス可能な外部データベース等のストレージ148に存在する画像データ及びその特徴の中から類似或いは同一の画像データを容易に検索可能となる。更には、そのデータに紐付くインターネットサイトをPC172やデジタルカメラ等のディスプレイで表示したり、特定のアプリケーション(音声・動画(movies)等)を作動させることなどが可能となる。
【0160】
なお、上記説明では、デジタルカメラ146を用いたが、本アプリケーションはそれに限定されるものではなく、スキャナであっても構わない。
【0161】
また、実際にプリントアウトした検索元プリントアウト152をデジタルカメラ146で撮影しているが、例えば検索元プリントアウト152を撮影した画像を表示しているディスプレイをデジタルカメラ146で撮影しても同様に実施可能である。
【0162】
[第7アプリケーション]
次に、第7アプリケーションとしての検索システムを説明する。本アプリケーションは、図44に示すようなカメラ186付の携帯電話機184のアプリケーションソフトウェア188に適用した例である。
【0163】
即ち、携帯電話機のアプリケーションソフトウェアは現在ほとんどの携帯電話機にて利用可能となっており、且つその画像データは内部メモリ或いは外部メモリカード等に数多くを蓄積可能である。更に、特定の携帯サイト(携帯電話機向けインターネットサイト)においては、ユーザを特定した画像ファイルなどの蓄積サービスも行われている。このような状況は極めて多大な画像データを蓄積し、自己の活動記録や業務など多彩に利用できる反面、携帯電話機という比較的ユーザインタフェースに自由度がないハードウェアにとっては所望の画像データの検索は面倒であった。実際には画像データのタイトルや日時等によるテキストのリストからの検索が中心であり、画像データが多数となった場合は極めて面倒で、またテキストを打ち込む場合も複数の単語や長い名称等の入力は不自由であると言わざるを得ない。
【0164】
本検索システムの導入に依れば、カメラ付携帯電話機のアプリケーションとして動作させることにより「画像入力機能」を立ち上げ、所望の「関心領域を切り出し」、「特徴の算出」を行う。この特徴(データ)は携帯回線を介して対応するサーバに送られる。この対応するサーバは、上記のカメラと一対一対応するものであっても良いし、一対多のカメラに対応するものであっても構わない。上記のサーバに送られた特徴は、サーバに搭載されている「マッチング機能」により、サーバの要求するデータベースから読み込まれた特徴と実際にマッチング処理を行い、類似性の高い画像データを抽出する。この抽出された画像データをサーバから上記発信元の携帯電話機に返送し、携帯電話機から特定しないプリンタにより該画像データを出力する事が出来る。しかし、ここでサーバが抽出した画像データに対し、更にその画像データに関連する様々な情報が付加されている場合は、「その情報を携帯電話機に返送する」、と言った機能の拡張が可能であるし、抽出した画像データに高い圧縮をかけて携帯電話機に返送し、ユーザが所望の画像データであると確認の上、携帯電話機のメモリ領域に格納、あるいは携帯電話機のディスプレイ190上に表示するだけであっても利用価値があることは言うまでも無い。
【0165】
[第8アプリケーション]
次に、第8アプリケーションとしての検索システムを説明する。
【0166】
本アプリケーションは、その構成として、通信機能を備えたデジタルカメラ146と、通信により接続されたサーバとにより構成され、画像検索のための機能がデジタルカメラ146とサーバとに分割設置されたものである。通信機能を備えたデジタルカメラ146は、撮影機能付通信装置として機能し、カメラ付携帯電話機が含まれることは勿論である。
【0167】
この場合、前述の第5アプリケーションと同様に、デジタルカメラ146には撮影機能とその画像データから特徴を算出する機能を有する。上記第5乃至第7アプリケーションの場合、比較参照する特徴(或いは特徴データベース)は元々ユーザ或いは当該のデジタルカメラ146にて撮影及び印刷された画像を基にして作られたものである。これは、当初の目的が、既に撮影された画像データが印刷されたプリントアウトを撮影して検索するためである。これに対して、本アプリケーションはこの目的を拡張し、一般に街頭の看板、ポスターや印刷物、出版物の画像を基に算出された特徴も、サーバに配されたストレージ148に構成されたデータベースに取り込まれている点が大きく異なる。
【0168】
プリントアウトに限らず、データベース上にある画像からの抽出が行えることはいうまでもない。
【0169】
また、撮影した画像から抽出した特徴をデータベースに追加することもできる。
【0170】
登録の際には、画像に関連した位置情報を手動、GPSなどのセンサ、前出の文字認識などで認識して登録する。こうすることで、次に同様な場所で画像の撮影する時にデータベースを検索することにより、類似した画像を抽出することでその撮影画像に付加すべき位置情報を抽出することが可能となる。
【0171】
図45は、本アプリケーションとしての検索システムの動作フローチャートを示す図である。なお、同図において、上記第5アプリケーションと対応するものについては、同一の参照番号を付してある。
【0172】
即ち、本アプリケーションにおいては、例えばデジタルカメラ146にて街頭に存在する商品広告などのポスターを撮影する(ステップS146)。すると、その撮影画像データからデジタルカメラ146にて、特徴抽出処理が実行される(ステップS148)。そして、その抽出された特徴は、デジタルカメラ146に内蔵又付属された通信部170により所定のサーバに送られる。
【0173】
サーバにおいては、そのサーバがアクセス可能なストレージ148に構成された特徴データベースを参照して、上記デジタルカメラ146から送られた特徴を比較し(ステップS150)、類似な特徴を持つ類似画像候補を抽出する(ステップS216)。これら抽出された類似画像候補の画像データは、必要により、所定の圧縮処理が施されて通信量を少なくした上で、上記デジタルカメラ146に送信され、デジタルカメラ146の表示部160で簡易表示されることができる(ステップS218)。これにより、上記第5アプリケーションと同様、ユーザの選択が可能である。
【0174】
そして、上記抽出され(更に選択され)た画像候補の画像データがデジタルカメラ146に送信出力される、或いは、上記抽出され(更に選択され)た画像候補の特徴に紐付いている特定情報に基づいて次の段階の動作を行う(ステップS220)。この次の動作とは、上記の商品広告であれば、その商品の解説や通信販売サイトヘの接続であっても良いし、そのサイト画面を画像データとしてデジタルカメラ146に返送しても良い。また、街頭の看板を撮影した場合は、看板の周辺情報も特徴として取り込んだり、通信時の無線基地局所在地のデータも比較したりすることにより、場所や住所の特定を情報としてユーザに呈示することも可能となる。
【0175】
[第9アプリケーション]
次に、第9アプリケーションとしての検索システムを説明する。
【0176】
本アプリケーションは、撮影した検索元プリントアウト152の画像を基にして、第1の特徴を使ったマッチングによりストレージ148から複数の画像データを検索し、その検索した結果の複数の画像データから、上記第1の特徴より狭い、もしくは同じ領域で且つ解像度の高い第2の特徴を使って、特徴マッチングにより単一又は複数の画像データを検索するものである。
【0177】
本アプリケーションとしての検索システムは、前述した第5アプリケーションと同様の構成であるが、特に、本アプリケーションにおいては、ストレージ148に、第1の特徴としての概要特徴を登録した全体特徴データベースと、第2の特徴としての詳細特徴を登録した詳細特徴データベースとが構成されている。
【0178】
ここで、概要特徴は、図46に示すように、画像データの全体(100%)のほとんど(例えば約90%)を含む領域を比較的粗い解像度で特徴を抽出することで得られたものである。また、詳細特徴は、図47に示すように、画像データの中央領域部分(例えば中央約25%)を含む領域を、上記概要特徴の解像度に比べて高い解像度で特徴を抽出することで得られたものである。なお、原画像データと上記概要特徴及び詳細特徴との位置関係は、図48に示すようになる。
【0179】
図49は、本アプリケーションとしての検索システムの動作フローチャートである。なお、同図において、上記第5アプリケーションと対応するものについては、同一の参照番号を付してある。
【0180】
即ち、本アプリケーションでは、まず、上記第5アプリケーションと同様に、検索モードに設定したデジタルカメラ146の撮影部154により、再度プリントアウトすることを望む検索元プリントアウト152をテーブル上或いは壁面等に貼付した状態で、少なくとも上記検索元プリントアウト152の欠けが無いように撮影する(ステップS146)。
【0181】
そして次に、特徴抽出部156によって、撮影部154で撮影された画像データ全体から特徴を抽出する全体特徴抽出処理を行い(ステップS222)、その抽出した全体特徴を、マッチング部158により、ストレージ148に構成した上記概要特徴を登録した全体特徴データベースと比較し、その類似度の高いものを順に抽出する全体特徴DBとのマッチング処理を実行する(ステップS224)。
【0182】
その後、上記特徴抽出部156にて、上記得られた関心領域全体の画像データから、更に詳細検索対象領域、この例では上記関心領域の中央領域部の画像データを詳細検索対象画像データとして抽出する(ステップS226)。そして、特徴抽出部156によって、上記抽出した詳細検索対象画像データから特徴を抽出する詳細特徴抽出処理を行う(ステップS228)。次に、マッチング部158により、その抽出した詳細特徴データを、ストレージ148に構成した上記詳細特徴を登録した詳細特徴データベースと比較し、その類似度の高いものを順に抽出する詳細特徴DBとのマッチング処理を実行する(ステップS230)。但しこの場合、詳細特徴データベースに登録された全ての詳細特徴との特徴マッチングを行うのではなく、上記ステップS224の全体特徴DBとのマッチング処理で抽出された複数の画像データに対応する詳細特徴についてのみ特徴マッチングが実行される。従って、解像度が高いため処理時間を要する詳細特徴との特徴マッチング処理は、必要最低限で済むことになる。なお、上記ステップS224の全体特徴DBとのマッチング処理での抽出する基準としては、類似度に閾値を設ける方法や上位500個分固定的に選択する等といった方法で行う。
【0183】
而して、この詳細特徴DBとのマッチング処理にて類似度の高い画像データが原画像候補として抽出されたならば、表示部160に、それらを抽出すべき画像候補として表示し(ステップS158)、ユーザによる選択を受け付けて、ユーザ所望の画像が決定されたならば(ステップS162)、マッチング部158は、ストレージ148に格納されている当該画像候補に対応する原画像データを、接続されたプリンタ150に送り、再度プリントアウトする(ステップS164)。
【0184】
このような本アプリケーションによれば、原画像データの検索結果の質(満足度)向上と、妥当な検索時間の両立ができる。
【0185】
また、撮影者の注目領域を考慮した検索結果を得ることができる。即ち、通常、撮影者は主要被写体を画像領域中央に捕らえて撮影するので、図50に示すように、画像データの中央部に注目した詳細特徴を使用することで、良好な検索結果を得ることができる。従って、プリントアウトした写真である検索元プリントアウト152から、その原画像データを検索抽出し、焼き増しを容易に行うシステムにおいて、そのプリント写真の検索において効果が高い。
【0186】
さらに、キーワード分類などが難しい原画像母集団に対する検索において、高速に細部の違いを判別する手段としての効果が高い。即ち、大規模な母集団に対する、段階的な検索結果絞り込みが可能となる。
【0187】
なお、本アプリケーションにおいても、予め、一つの原画像データについて、概要特徴と詳細特徴とを作成してデータベースに登録しておく必要があり、その登録は、上記第5アプリケーションで説明したようにして行えば良い。但し、必ずしも同時に両特徴を作成する必要は無く、例えば、詳細特徴は、2次検索を実行する段階で必要になったときに作成する方法でも良い。
【0188】
また、詳細特徴は、図47や図50に示したように、画像データの中央部に注目したものに限定するものではない。
【0189】
例えば、図51に示すように、画像内に数箇所、詳細特徴を設定しても良い。このように詳細特徴を分散配置することで、プリント撮影条件による失敗を回避できる。即ち、位置や数を動的に変化させて絞り込みが行える。
【0190】
また、図52に示すように、注目領域を原画像撮影時の合焦位置においた詳細特徴としても良い。このような詳細特徴では、撮影者の意図を反映した結果が見込める。
【0191】
さらに、図53に示すように、詳細特徴を概要特徴と同じ領域について作成しデータベースに登録しておき、実際の詳細特徴との特徴マッチング時には、その内の一部の領域、つまり図50乃至図52に示すような領域を参照領域192として使用し、他の領域を非参照領域194とするようにしても良い。
【0192】
なお、本アプリケーションは、上記第5アプリケーションに対応させて説明したが、上記第6乃至第8アプリケーションについても同様に適用可能なことはもちろんである。
【0193】
[第10アプリケーション]
次に、第10アプリケーションとしての検索システムを説明する。
【0194】
本アプリケーションは、通信機能を備えたデジタルカメラ146を使う例であり、予め登録した画像を撮影する事により、その画像を認識し、認識結果に応じて所定の動作(例えば音声出力や所定のプログラムの起動、或いは所定のURLの表示)をさせる場合に適用するものである。通信機能を備えたデジタルカメラ146は、撮影機能付通信装置として機能し、カメラ付携帯電話機が含まれることは勿論である。
【0195】
画像を認識する場合、参照するデータベース(いわゆる辞書データ)として画像データは登録するが、画像をそのまま比較するのではなく、画像の特徴を比較するのが効率が良く実際的である為、画像から抽出した特徴データベースを使う。またこのデータベースは内蔵でも通信を介したサーバ上に存在するものでも構わない。
【0196】
本アプリケーションでは、画像の特徴点の配置関係をベクトル量の組み合わせとして算出し、その多数組を特徴として定義する。そのとき、この特徴は特徴点の現れる数によってその精度が異なり、原画像データの精細度が高ければ特徴点が数多く検出可能であるため、同じ原画像データに対し、なるべく高精細な条件で特徴を算出する。このとき、同じ画像素材に対して精細度を低下させた画像データを基に特徴を算出すると、特徴点が比較的少なくなるため特徴自体は小さい容量となる。容量が小さいことはマッチング精度には劣るものの、マッチング速度が高速であることや、通信速度が速い等のメリットがある。
【0197】
本アプリケーションにおいてはここに着眼し、画像データを参照データ(特徴)として登録する際、一つの画像素材の登録に際し異なる複数の精細度から特徴を算出し、それぞれの精細度に個別化したデータベースを構成する。そのそれぞれのデータベースには、それぞれに対応するマッチングサーバが接続し、並列動作可能な配置とする。即ち、図54に示すように、1次特徴のマッチングサーバ及び1次情報DB196−1、2次特徴量のマッチングサーバ及び2次情報DB196−2、…、n次特徴量のマッチングサーバ及びn次情報DB196−nを準備する。なお、2次特徴量のマッチングサーバ及び2次情報DB196−2乃至n次特徴量のマッチングサーバ及びn次情報DB196−nは、1次特徴量のマッチングサーバ及び1次情報DB196−1よりも高精細な特徴量又は特別なカテゴリのデータベースである。
【0198】
このようなマッチング処理系を準備した上で、図54に示すように、通信機能を備えたデジタルカメラ146から、既に登録されている意匠(対象物)を撮影し(ステップS232)、上記デジタルカメラ146に内蔵されるアプリケーションソフトウェアにより特徴点の配置関係から特徴を算出する(ステップS148)。そして、その特徴を通信を介して各マッチングサーバに送信することで、各DBとのマッチング処理が行われる(ステップS150)。このマッチング処理によって、マッチする結果が得られたならば、その結果に紐付く動作情報(例えばURLのリンク等)が取得され(ステップS234)、その動作情報がデジタルカメラ146に送信されて、例えば3Dオブジェクト取得と表示といった指定動作が遂行される(ステップS236)。なお、デジタルカメラ146は撮影した画像全体、もしくはその一部をマッチングサーバへ送信し、ステップS148をマッチングサーバ上で実行させてもよいことは勿論である。
【0199】
なお、このときのカメラ解像度が200万画素級であったとすれば、通信を介してマッチングサーバにて検索する場合も200万画素級の解像度の特徴データベースからのデータでマッチングを行えば誤認識率が少ない。しかしながら、同時に動作する低解像度(例えばVGAクラスの解像度)の特徴データベースでのマッチングは高速に応答するため、先にデジタルカメラ146に結果が送付される。このようにマッチングサーバを解像度別に並列配置する事は速度的、認識精度的に有利である。なお、後追いの高解像度マッチングサーバからの回答が既に先に出ている低解像度マッチングサーバと異なる場合があり、そのような場合には、まず早いほうの結果に基づく表示が行われ、その後に、後追いの結果に基づく表示に更新される。例えば、紙幣などを認識しようとすると、低解像度マッチングでの回答が『100$札』と言ったレベルであっても、高解像度マッチングにおいては『100$札でナンバーがHD85866756A』と言った回答のように、より精細度が高いことによる詳しい或いは正しい結果が得られる。また、低解像度の結果では複数の候補が得られ、高解像度の結果が到着するに従って、結果の候補が絞り込まれていく表示も効果的である。
【0200】
また、上述した通り高解像度マッチングサーバにおいては特徴自体の容量が大きく、XGAクラスの特徴量は40kB程度に肥大するが、予め低解像度マッチングによりおよそ10kB程度までに小さくなる。また、2次以降のマッチングサーバ及びデータベースにおいては、より低解像データベースとの差分のみを保持すれば、より小さいデータベース構成を実現し、それは認識処理の高速化につながる。なお、特徴に特徴(エリア割付を行い、各々の濃度値を比較する方式)での抽出を進めた場合、一般的に10kB以下であり、適宜両方式を組み合わせた多次元特徴も認識精度の向上に有効であることを確認している。
【0201】
このように、撮影画像面の一部又は全面の解像度を多段階化し、実質上のマッチング階層化を実現することは、単純に複数のマッチングサーバをクラスター的に分散処理する場合に比べて認識速度、認識精度の両面で効果がある。
【0202】
特に、予めデータベース登録した画像が極めて多数(1000以上)の場合に効果がある方式であり、また、類似性の高い画像がその中に含まれている場合にも効果を有する。
【0203】
[第11アプリケーション]
次に、第11アプリケーションとしての検索システムを説明する。
【0204】
本第11アプリケーションとしての検索システムは、図55に示すように、カメラ186付の携帯電話機184と、検索部と、から構成されるものである。上記カメラ186付の携帯電話機184は、画像を入力するカメラ186と検索結果の画像を出力するディスプレイ190とを含む。上記検索部は、上記カメラ186で入力した画像を基にして、階層管理された特徴を用いて、データベースから画像を検索する。なおここで、上記検索部は、カメラ186付の携帯電話機184のアプリケーションソフトウェア188と、上記カメラ186付の携帯電話機184と通信可能なサーバ198に構成されたマッチング処理部200とによって実現される。
【0205】
上記サーバ198は、更に、複数の特徴が登録され、それらを階層管理する特徴管理データベース(DB)202を有している。この特徴管理DB202に登録されるテンプレートは、デスクトップパブリッシング(DTP)210で紙面208に配置した対象画像206から、特徴作成部204によって作成されたものである。
【0206】
即ち、本アプリケーションとしての検索システムでは、予め、DTP210によって、紙面208に対象画像206を印刷すると共に、特徴作成部204でその対象画像206の特徴を作成する。そして、その作成した特徴をサーバ198の特徴管理DB202に登録しておく。なお、登録する対象画像206が多数あれば、そのような特徴の作成と登録を繰り返す。
【0207】
そして、検索を望むユーザが、紙面208から携帯電話機184のカメラ186を使って対象画像206を取り込むと、アプリケーションソフトウェア188は、その入力画像から画像の特徴抽出を行う。そして、アプリケーションソフトウェア188は、抽出した特徴をサーバ198のマッチング処理部200に送る。そして、該マッチング処理部200は特徴管理DB202に登録されている特徴とマッチングを行う。マッチング結果が取得されたならば、マッチング処理部200は、該マッチング結果情報をカメラ186付の携帯電話機184のアプリケーションソフトウェア188に送る。アプリケーションソフトウェア188はディスプレイ190に上記結果情報を表示する。
【0208】
このように、本第11アプリケーションにおいては、入力画像の中から複数の特徴を抽出し、それら特徴から成る特徴群を、予め登録してある対象物ごとの特徴群と比較対照する(マッチング処理する)ことにより、同一の対象物の同定を行う。
【0209】
ここでいう画像の中の特徴とは、他の画素との差異が一定レベル以上あるものを指し、例えば明暗のコントラスト、色、周囲の画素の分布、微分成分値、及び特徴同士の配置等を挙げることができる。本第11アプリケーションにおいては、上記特徴を抽出した後、対象物毎に登録しておく。そして、実際の同定時においては、入力画像の中をサーチして特徴を抽出し、予め登録されているデータとの比較を行う。
【0210】
以下、図56を参照して、本第11アプリケーションにおけるマッチング処理部200での同定処理の動作制御の流れを説明する。まず、予め登録してある対象物Z(例えば対象画像206)の認識要素の特徴を、特徴点群が記録されている特徴管理DB202から読み出す(ステップS238)。続いて、上記特徴を、特徴の比較を行うマッチング処理部200へ入力する(ステップS240)。そして、上記マッチング処理部200にて、上記特徴と、入力された対象物の特徴との比較対照を行う(ステップS242)。その後、上記対象物Zと、入力された対象物との同一性を判断する(ステップS244)。そして、一致する特徴の個数が所定の値(ここではX個とする)以上であるか否かを判断する(ステップS246)。このステップS246をNOに分岐する場合は、上記ステップS242へ戻る。一方、上記ステップS246をYESに分岐する場合は、現在比較中の対象物Zの認識要素と、入力された対象物とが同一であると判定する(ステップS248)。
【0211】
その後、全ての認識要素についての比較を終了したか否かを判断する(ステップS250)。このステップS250をNOに分岐する場合は、次の認識要素の特徴群における、特徴を、上記マッチング処理部200へ比較データとして入力し(ステップS252)、上記ステップS242へ戻る。
【0212】
ところで、上記ステップS250をYESに分岐する場合は、一致する特徴の個数が所定の値(ここではY個とする)以上あるか否かを判断する(ステップS254)。ここで、このステップS254をYESに分岐する場合には、入力された対象物と、対象物Zとは一致すると判定し、その旨をディスプレイ190に表示してユーザに知らせる(ステップS256)。他方、上記ステップS254をNOに分岐する場合は、入力された対象物と、対象物Zとは一致しないと判定する(ステップS258)。
【0213】
なお、実際の同定時においては、類似している度合いを示す数値(特徴同士の各成分の差異)が、予め設定した閾値を越えた場合に、当該特徴を類似特徴と判定する。そして、更に複数の特徴が一致した対象物を、入力画像の対象物と同一であると判定する。この際、入力画像の中の特徴と、予め登録されている特徴群とを、以下のように比較する。
【0214】
第1に、対象物の中を複数の要素に分割して登録しておく。これにより、対象物同士の比較対照時に、複数の要素(例えば3個)を認識しないと当該対象物を認識したとしない、との判定ロジックで認識させる。
【0215】
第2に、対象物の認識に際し、似ている対象物が画像内に写っている場合に、例えば、対象物OBJ1(特徴;A,B,C)を自社のロゴマークとしているS社と、対象物OBJ2(特徴;E,F,G)を自社のロゴマークとしているM社とを想定する。ここで、S社とM社とは競合している会社であるとする。このような場合には、当然、両者のロゴマークの混同は極力避けなければならない。このような事情に鑑みて、本第11アプリケーションにおいては、特徴AとEとが同一画面内から同時に検出された場合には、どちらの対象物共、認識をしない。すなわち、認識判定を厳しくする。
【0216】
第3に、従来は、特徴の数を認識した場合であっても、認識結果をユーザに伝達する文章表現が同一である点である。この為、例えば一部の特徴のみ認識できた場合、つまり入力画像と比較画像との一致度合いが不確定性を含む一致度合いである場合に、その旨をユーザに伝達することができない。一方、本第11アプリケーションにおいては、認識要素数が少ない場合には、結果の表示方法(表現方法)を変え、不確定性を含む表現にする。
【0217】
上記のそれぞれの工夫により、それぞれ以下の効果が得られる。
第1に、対象物の一部だけが一致することによる誤認識を起こす確率を低く抑えることができる。
【0218】
第2に、対象物の誤認識を特に避けたい場合の判定基準を厳しくすることができる。
【0219】
第3に、対象物の同一性判定の正確性が所定の値よりも低い場合にも、ユーザに対して注意を喚起した上で、ユーザに一致判定結果を知らせることができる。
【0220】
ところで、対象物の中の特徴が分割して登録されている対象物OBJ1(特徴;A,B,C)及びOBJ2(特徴;E,F,G)の場合には、以下のような判定ロジックによる認識を行う。
【0221】
第1に、“A and B and C”でないと対象物OBJ1の認識成功としない。
【0222】
すなわち、認識要素である特徴A,B,Cからなる対象物OBJ1の認識をする場合に、A,B,Cいずれか1つまたは2つの特徴の認識の状態では対象物OBJ1の認識が成功したという形にはしない。
【0223】
またこの変形例として、特徴A,B,Cに評価点としての重み付けを行う。例えば、それぞれ1.0、0.5、0.3と重み付けする。ここで、合計評価点が1.5を超えたときに認証するとすれば、特徴A及びBが認識要素として見つかった場合には合計評価点が1.5となるので対象物OBJ1を認識する。一方、特徴B及びCが見つかった場合には対象物OBJ1は認識しない。
【0224】
これら認識要素の評価点については、認識要素の特徴と共に管理することが可能である。
【0225】
また、論理式として、各要素の優先度を変える事も可能であり、“A and B and C”以外にも、例えば“A and (B or C)”や、“A or (B and C)”といった組み合わせが可能である。これらの例は、認識成功とする為には、いずれも特徴Aが必須要素である例である。
【0226】
なお、上記の評価点及び論理式の例は、組み合わせて用いることが可能である。すなわち、論理式の優先度と各要素の重み付けとを組み合わせて用いることができる。
【0227】
第2に、“E and A”が抽出された場合には決して、対象物OBJ1も対象物OBJ2も共に認識したとしない。
【0228】
例えば対象物OBJ1をロゴとして用いているS社と、対象物OBJ2をロゴとしているM社とが競合関係であって、両者の混同を極力避けたい場合、S社のロゴである対象物OBJ1とM社のロゴである対象物OBJ2とが同一画面内に写っている場合には、どちらのロゴも認識したとしない。この場合には、ユーザに対して、認識できない理由は、対象画像が検出されていないからではなく、(A,B,C)及び(E,F,G)の両方から認識要素が検出されているからであるという旨の表示を行う。
【0229】
このように、本第11アプリケーションでは、互いに競合関係にある会社等のロゴの同定に関しては、例えばS社のロゴである対象物OBJ1のみか又はM社のロゴである対象物OBJ2のみか、どちらか一方だけが撮影した画像内にある状態になったときにのみ、当該ロゴの認識をするようにする。具体的には、(A,B,C)のうちのいずれかのみ、または(E,F,G)のうちのいずれかのみを、一画像内で検出した場合にのみ、対象物OBJ1または対象物OBJ2の認識を行う。換言すれば、(A,B,C)のうちのいずれかと、(E,F,G)のうちのいずれかとが一画像内で検出された場合、対象物OBJ1も対象物OBJ2も共に認識をしない。
【0230】
第3に、“A and B”など一部だけが抽出された場合には結果の提示方法を変える(不確定性を含む表現に守る)
例えば、対象物OBJ1の認識に関して、認識要素の特徴A,B,Cの全てが認識できた場合には『対象物OBJ1が認識されました』との強い表現にて認識結果をユーザに提示する。また、認識要素の特徴A及び特徴B、特徴B及び特徴C、或いは特徴A及び特徴C等、2つの認識要素を認識できた場合には、例えば『対象物OBJ1だと思われます』とのやや確信を弱めた表現にて、認識結果をユーザに提示する。更に認識できた認識要素が1つだった場合には、『対象物OBJ1が認識された可能性があります』というように、不確定性を含んだ表現にて認識結果をユーザに提示する。
【0231】
なお、本第11アプリケーションの変形例として、上述した重み付けの評価点を用いた場合に、その合計評価点に基づく認識結果を、ユーザへ提示する際の表現方法における上記のような工夫も考えられる。また、ユーザへ認識結果を提示する際の上記のような表現方法の工夫は、様々な場面において適用可能なのは勿論である。例えば、所望の認識要素単体の認識においても適用が可能である。また、例えば認識要素内における一致特徴の数、抽出特徴と登録済み特徴との一致度合いによって、ユーザへ認識結果を提示する際の上記のような表現方法を適用することができる。
【0232】
なお、本第11アプリケーションにおいては、上記特徴作成部204はサーバ198上で動作していても勿論よい。また、上記紙面208は表示面を意味し、必ずしも紙であることに限定されない。例えば、金属、プラスチック等の別の素材であってもよいし、液晶モニタやプラズマテレビなどのような映像表示装置であってもよい。勿論、それらに表示される情報は、人間にとっての可視光領域で表示されるものへ対応しているのは当然のことである。しかしながら、カメラ186へ入力可能な情報であれば、人間にとって不可視な情報であっても勿論良い。また、画像として取得可能なもの全てが対象であるので、例えば、X線画像やサーモグラフィといった画像であってもよい。
【0233】
なお、図55において、上記カメラ186から入力される対象画像を含む画像は、カメラ186付の携帯電話機184からサーバ198における上記マッチング処理部200へ送信される。このとき、上記カメラ186が取得した画像をそのまま画像データとして送信することは勿論のこと、画像を縮小して送信しても勿論良い。また、当該画像から、マッチングで用いる特徴を抽出し、これを送信しても勿論良い。さらには、上記画像と上記特徴との両方を送信するとしても勿論良い。つまり、当該画像から導き出すことが可能な態様のデータであれば、どういった態様のデータを送信しても構わない。
【符号の説明】
【0234】
10…特徴検出、 12…特徴選択、 14…特徴認識、 16,134…データベース、 18…dBTree構築、 20…dBTree検索、 22…インデックスマッチング、 24…特徴空間、 26…サブ空間、 100…情報呈示装置、 102…記憶部、 104…データセットサーバ、 106…情報サーバ、 108,154…撮影部、 110…認識及び識別部、 112…情報指定部、 114…呈示画像生成部、 116…画像表示装置、 118…データセット、 120…位置及び姿勢算出部、 122…基本データ、 124…記憶メディア、 126…バーコードスキャナ、 128…重量秤、 130,186…カメラ、 132…コントロール部/現金収納箱、 136…モニタ、 138…視野、 140…特徴、 142…画像、 144…参照画像、 146…デジタルカメラ、 148…ストレージ、 150…プリンタ、 152…検索元プリントアウト、 156,176…特徴抽出部、 158,178…マッチング部、 160,180…表示部、 162…画像候補、 164…『前』及び『次』アイコン、 166…『決定』アイコン、 168…太枠、 170,182…通信部、 172…パーソナルコンピュータ(PC)、 174…記憶部、 184…携帯電話機、 188…アプリケーションソフトウェア、 190…ディスプレイ、 192…参照領域、 194…非参照領域、 196−1…1次特徴のマッチングサーバ及び1次情報DB、 196−2…2次特徴のマッチングサーバ及び2次情報DB、 196−n…n次特徴のマッチングサーバ及びn次情報DB、 198…サーバ、 200…マッチング処理部、 202…特徴管理データベース(DB)、 204…特徴作成部、 206…対象画像、 208…紙面、 210…デスクトップパブリッシング(DTP)。
【特許請求の範囲】
【請求項1】
一つの2次元又は3次元画像データ内で所定の属性が極値(Local Maximum and/or Minimum)となる特徴(features)を検出し(10)、
上記検出した特徴からエッジ及び線の輪郭に沿って存在する特徴を除外し(12)、
上記残りの特徴を平面に割り当て(14)、
上記割り当てた特徴から局所情報(local information)を用いて一部の特徴を選択し(14)、
上記選択した特徴を対象に特徴マッチングを行う(14)、
2次元又は3次元画像データ内の対象を認識する特徴マッチング方法であって、
上記一つの2次元又は3次元画像データからスケールが異なる複数の画像データを作成し、
上記作成された異なる複数の画像データに対して、上記特徴の検出、上記特徴の除外、上記残りの特徴の割当て、上記一部の特徴の選択、及び上記特徴マッチングの実施のうち少なくとも一つが行われる、
ことを特徴とする特徴マッチング方法。
【請求項2】
上記一部の特徴の選択は、特徴のテクスチャの度合い(texture-ness)による制約(constraint)を用いることを特徴とする請求項1に記載の特徴マッチング方法。
【請求項3】
上記一部の特徴の選択は、さらに、方向成分(orientation)による制約を用いることを特徴とする請求項2に記載の特徴マッチング方法。
【請求項4】
上記一部の特徴の選択は、さらに、倍率(scale)による制約を用いることを特徴とする請求項3に記載の特徴マッチング方法。
【請求項5】
上記特徴マッチングの実施は、RANSAC手法を用いることを特徴とする請求項1に記載の特徴マッチング方法。
【請求項6】
上記特徴マッチングの実施は、dBTree手法(18、20、22)を用いることを特徴とする請求項1に記載の特徴マッチング方法。
【請求項7】
さらに、
上記特徴マッチングの実施の正確性を算出し(22)、
上記算出した正確性に基づいて、複数の認識結果を出力する(22)、
ことを特徴とする請求項1に記載の特徴マッチング方法。
【請求項8】
上記特徴マッチングの実施は、論理式で表現されたデータベースに登録された複数の画像データの組み合わせ条件に基づいて、上記2次元又は3次元画像データのマッチングを行う(S242)ことを特徴とする請求項1に記載の特徴マッチング方法。
【請求項9】
上記特徴の検出は、上記2次元又は3次元画像データのポイントに高域通過フィルタを適用し、該高域通過フィルタの出力値を閾値と比較することによって行うことを特徴とする請求項1に記載の特徴マッチング方法。
【請求項10】
予め登録された複数の商品の特徴を記録するように構成された特徴記憶部(134)と、
商品を撮影するよう構成された画像入力部(130)と、
上記画像入力部で商品を撮影して得られた画像から特徴を抽出し、上記抽出した特徴を上記特徴記憶部に記録されている特徴と比較対照することにより、上記画像入力部で撮影した商品を自動認識するよう構成された自動認識部(132)と、
上記自動認識部の認識結果を利用して、精算処理を行う精算部(132)と、
を具備し、
上記自動認識部は、請求項1に記載の特徴マッチング方法を用いることを特徴とする商品認識システム。
【請求項11】
上記予め登録された複数の商品の、重量及びサイズ少なくとも一方をそれぞれ含む特定情報を記録するように構成された特定情報記憶部(134)を有し、
上記自動認識部は、上記商品の認識精度を高めるために、上記特定情報記憶部に記録された特定情報を用いる、
ことを特徴とする請求項10に記載の商品認識システム。
【請求項1】
一つの2次元又は3次元画像データ内で所定の属性が極値(Local Maximum and/or Minimum)となる特徴(features)を検出し(10)、
上記検出した特徴からエッジ及び線の輪郭に沿って存在する特徴を除外し(12)、
上記残りの特徴を平面に割り当て(14)、
上記割り当てた特徴から局所情報(local information)を用いて一部の特徴を選択し(14)、
上記選択した特徴を対象に特徴マッチングを行う(14)、
2次元又は3次元画像データ内の対象を認識する特徴マッチング方法であって、
上記一つの2次元又は3次元画像データからスケールが異なる複数の画像データを作成し、
上記作成された異なる複数の画像データに対して、上記特徴の検出、上記特徴の除外、上記残りの特徴の割当て、上記一部の特徴の選択、及び上記特徴マッチングの実施のうち少なくとも一つが行われる、
ことを特徴とする特徴マッチング方法。
【請求項2】
上記一部の特徴の選択は、特徴のテクスチャの度合い(texture-ness)による制約(constraint)を用いることを特徴とする請求項1に記載の特徴マッチング方法。
【請求項3】
上記一部の特徴の選択は、さらに、方向成分(orientation)による制約を用いることを特徴とする請求項2に記載の特徴マッチング方法。
【請求項4】
上記一部の特徴の選択は、さらに、倍率(scale)による制約を用いることを特徴とする請求項3に記載の特徴マッチング方法。
【請求項5】
上記特徴マッチングの実施は、RANSAC手法を用いることを特徴とする請求項1に記載の特徴マッチング方法。
【請求項6】
上記特徴マッチングの実施は、dBTree手法(18、20、22)を用いることを特徴とする請求項1に記載の特徴マッチング方法。
【請求項7】
さらに、
上記特徴マッチングの実施の正確性を算出し(22)、
上記算出した正確性に基づいて、複数の認識結果を出力する(22)、
ことを特徴とする請求項1に記載の特徴マッチング方法。
【請求項8】
上記特徴マッチングの実施は、論理式で表現されたデータベースに登録された複数の画像データの組み合わせ条件に基づいて、上記2次元又は3次元画像データのマッチングを行う(S242)ことを特徴とする請求項1に記載の特徴マッチング方法。
【請求項9】
上記特徴の検出は、上記2次元又は3次元画像データのポイントに高域通過フィルタを適用し、該高域通過フィルタの出力値を閾値と比較することによって行うことを特徴とする請求項1に記載の特徴マッチング方法。
【請求項10】
予め登録された複数の商品の特徴を記録するように構成された特徴記憶部(134)と、
商品を撮影するよう構成された画像入力部(130)と、
上記画像入力部で商品を撮影して得られた画像から特徴を抽出し、上記抽出した特徴を上記特徴記憶部に記録されている特徴と比較対照することにより、上記画像入力部で撮影した商品を自動認識するよう構成された自動認識部(132)と、
上記自動認識部の認識結果を利用して、精算処理を行う精算部(132)と、
を具備し、
上記自動認識部は、請求項1に記載の特徴マッチング方法を用いることを特徴とする商品認識システム。
【請求項11】
上記予め登録された複数の商品の、重量及びサイズ少なくとも一方をそれぞれ含む特定情報を記録するように構成された特定情報記憶部(134)を有し、
上記自動認識部は、上記商品の認識精度を高めるために、上記特定情報記憶部に記録された特定情報を用いる、
ことを特徴とする請求項10に記載の商品認識システム。
【図1】
【図2A】
【図2B】
【図2C】
【図3A】
【図3B】
【図3C】
【図3D】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9A】
【図9B】
【図10】
【図11】
【図12】
【図13】
【図14】
【図15】
【図16】
【図17】
【図18】
【図19】
【図20】
【図21】
【図22】
【図23】
【図24】
【図25】
【図26】
【図27】
【図28】
【図29】
【図30】
【図31】
【図32】
【図33】
【図34】
【図35】
【図36】
【図37】
【図38】
【図39】
【図40】
【図41】
【図42】
【図43】
【図44】
【図45】
【図46】
【図47】
【図48】
【図49】
【図50】
【図51】
【図52】
【図53】
【図54】
【図55】
【図56】
【図2A】
【図2B】
【図2C】
【図3A】
【図3B】
【図3C】
【図3D】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9A】
【図9B】
【図10】
【図11】
【図12】
【図13】
【図14】
【図15】
【図16】
【図17】
【図18】
【図19】
【図20】
【図21】
【図22】
【図23】
【図24】
【図25】
【図26】
【図27】
【図28】
【図29】
【図30】
【図31】
【図32】
【図33】
【図34】
【図35】
【図36】
【図37】
【図38】
【図39】
【図40】
【図41】
【図42】
【図43】
【図44】
【図45】
【図46】
【図47】
【図48】
【図49】
【図50】
【図51】
【図52】
【図53】
【図54】
【図55】
【図56】
【公開番号】特開2013−109773(P2013−109773A)
【公開日】平成25年6月6日(2013.6.6)
【国際特許分類】
【出願番号】特願2013−553(P2013−553)
【出願日】平成25年1月7日(2013.1.7)
【分割の表示】特願2009−549056(P2009−549056)の分割
【原出願日】平成19年2月13日(2007.2.13)
【出願人】(000000376)オリンパス株式会社 (11,466)
【Fターム(参考)】
【公開日】平成25年6月6日(2013.6.6)
【国際特許分類】
【出願日】平成25年1月7日(2013.1.7)
【分割の表示】特願2009−549056(P2009−549056)の分割
【原出願日】平成19年2月13日(2007.2.13)
【出願人】(000000376)オリンパス株式会社 (11,466)
【Fターム(参考)】
[ Back to top ]