(57)【特許請求の範囲】
【請求項１】
第１の画像を入力する入力手段と、
像域分離処理により前記第１の画像から複数の部分領域を抽出し、該複数の部分領域のうち２つ以上の隣接する部分領域を組み合わせた領域の外接矩形を合成領域として作成する部分領域抽出手段と、
前記複数の部分領域から特徴量を抽出する特徴量抽出手段と、
前記第１の画像とは異なる第２の画像中の複数の部分領域のそれぞれから抽出した特徴量と、前記特徴量抽出手段が抽出したそれぞれの特徴量と、を比較する比較手段と、
前記第２の画像において、前記特徴量抽出手段が前記第１の画像から抽出した特徴量と類似する特徴量を有する複数の部分領域に外接する領域を類似領域とし、該類似領域内の画素値と、前記第１の画像内の前記合成領域内の画素値と、の類似度を算出する算出手段と
を備えることを特徴とする画像処理装置。
【請求項２】
前記特徴量抽出手段は、前記特徴量抽出手段が抽出した複数の部分領域のそれぞれから色特徴量を抽出することを特徴とする請求項１に記載の画像処理装置。
【請求項３】
前記算出手段は、前記第１の画像内の前記合成領域を、前記第２の画像中における前記類似領域と同じサイズになるようにリサイズし、該リサイズ済みの合成領域内の画素値と、前記第２の画像中における類似領域の画素値と、の差分を前記類似度として算出することを特徴とする請求項１又は２に記載の画像処理装置。
【請求項４】
前記第１の画像はロゴを含む画像であることを特徴とする請求項１乃至３のいずれか１項に記載の画像処理装置。
【請求項５】
画像処理装置が行う画像処理方法であって、
入力手段が、第１の画像を入力する入力工程と、
部分領域抽出手段が、像域分離処理により前記第１の画像から複数の部分領域を抽出し、該複数の部分領域のうち２つ以上の隣接する部分領域を組み合わせた領域の外接矩形を合成領域として作成する部分領域抽出工程と、
特徴量抽出手段が、前記複数の部分領域から特徴量を抽出する特徴量抽出工程と、
比較手段が、前記第１の画像とは異なる第２の画像中の複数の部分領域のそれぞれから抽出した特徴量と、前記特徴量抽出工程で抽出したそれぞれの特徴量と、を比較する比較工程と、
算出手段が、前記第２の画像において、前記特徴量抽出工程で前記第１の画像から抽出した特徴量と類似する特徴量を有する複数の部分領域に外接する領域を類似領域とし、該類似領域内の画素値と、前記第１の画像内の前記合成領域内の画素値と、の類似度を算出する算出工程と
を備えることを特徴とする画像処理方法。
【請求項６】
コンピュータを、請求項１乃至４の何れか１項に記載の画像処理装置が有する各手段として機能させるためのコンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、文字や記号等を含む画像を取り扱うための技術に関するものである。
【背景技術】
【０００２】
特許文献１に記載の発明は、ロゴの色の単一性に着目し、その領域を抽出する事を実現したものであり、ロゴの検索は行っていない。また、特許文献２に記載の発明では、画像オブジェクトによる類似画像検索を行っている。
【特許文献１】特開平３−１７４６５８号公報
【特許文献２】特開平１０−１７１８２６号公報
【発明の開示】
【発明が解決しようとする課題】
【０００３】
しかし係る従来技術は、あくまで画像特徴量による厳密でない検索を実現するものであり、ロゴを厳密に検索するものではない。単一のロゴマークの検索を詳細に行うためには、オブジェクト検索を行った後、単純テンプレートマッチングを行う必要がある。しかしながら、文字ロゴの様に領域がくっついたり（文字の領域が入り組むときに生ずる）離れたりする複数のオブジェクトから成るロゴを網羅するには至らない。
【０００４】
この様に、単一のオブジェクトとして切り出されるロゴ（例えば桐の家紋）などに関しては、オブジェクト単位の画像特徴量検索やテンプレートマッチングが行われてきた。しかし、1塊でないロゴ、端的に言うと文字ベースのロゴの場合には、文字ごとにオブジェクトが切り出され、文字と言ってもデザイン文字のためＯＣＲで認識されたり認識されずに画像扱いと成ったりするため、有効な検索の手法が無かった。
【０００５】
従って、単一のオブジェクトとして切り出されるロゴも、1塊でないロゴ、端的に言うと文字ベースのロゴの場合には文字ごとにオブジェクトが切り出されるロゴに対してもロバストなロゴ検索を行う技術の実現が課題である。
【０００６】
本発明は以上の問題に鑑みてなされたものであり、画像中におけるロゴに対するロバストな検索を可能にするための技術を提供することを目的とする。
【課題を解決するための手段】
【０００７】
本発明の目的を達成するために、例えば、本発明の画像処理装置は以下の構成を備える。
【０００８】
即ち、第１の画像を入力する入力手段と、
像域分離処理により前記第１の画像から複数の部分領域を抽出し、該複数の部分領域のうち２つ以上の隣接する部分領域を組み合わせた領域の外接矩形を合成領域として作成する部分領域抽出手段と、
前記複数の部分領域から特徴量を抽出する特徴量抽出手段と、
前記第１の画像とは異なる第２の画像中の複数の部分領域のそれぞれから抽出した特徴量と、前記特徴量抽出手段が抽出したそれぞれの特徴量と、を比較する比較手段と、
前記第２の画像において、前記特徴量抽出手段が前記第１の画像から抽出した特徴量と類似する特徴量を有する複数の部分領域に外接する領域を類似領域とし、該類似領域内の画素値と、前記第１の画像内の前記合成領域内の画素値と、の類似度を算出する算出手段と
を備えることを特徴とする。
【発明の効果】
【００１３】
本発明の構成により、画像中におけるロゴ等に対する適切な検索を可能にすることができる。
【発明を実施するための最良の形態】
【００１４】
以下添付図面を参照して、本発明を好適な実施形態に従って詳細に説明する。
【００１５】
［第１の実施形態］
図１は、本実施形態に係る画像処理装置に適用可能なコンピュータのハードウェア構成を示すブロック図である。同図において１０１はＣＰＵで、ＲＯＭ１０２やＲＡＭ１０３に格納されているプログラムやデータを用いて本コンピュータ全体の制御を行うと共に、コンピュータが行う後述の各処理を実行する。
【００１６】
１０２はＲＯＭで、本コンピュータの設定データや、ブートプログラムなどを格納する。
【００１７】
１０３はＲＡＭで、同図に１０３ａに示す各種のモジュールのプログラムや処理情報を一時的に記憶するためのエリアを有すると共に、ＣＰＵ１０１が後述の各処理を実行する際に用いるワークエリア（作業領域）を有する。なお、ＲＡＭ１０３にはこれ以外にも適宜提供可能なエリアが存在する。また、この各種のモジュールの動作については後述する。
【００１８】
１０４、１０５はそれぞれキーボード、マウスで、本コンピュータの操作者が操作することで、各種の指示をＣＰＵ１０１に対して入力することができる。
【００１９】
１０６は外部記憶装置で、ハードディスクに代表される大容量情報記憶装置であって、ここにはＯＳ（オペレーティングシステム）や、同図に示す如く、各種の情報が保存されている。これらはＣＰＵ１０１による制御に従って適宜ＲＡＭ１０３にロードされ、ＣＰＵ１０１による処理対象となる。なお、以下の説明で登場する各種テーブルについても外部記憶装置１０６内に作成され、そこで保存され、使用時にはＲＡＭ１０３にロードされる。
【００２０】
１０７は表示装置で、ＣＲＴや液晶画面などにより構成されており、ＣＰＵ１０１による処理結果を画像や文字などでもって表示することができる。
【００２１】
１０８はＮＩＣ（ネットワークインターフェースコントローラ）で、本コンピュータをＬＡＮやインターネットなどのネットワークに接続するためのものである。本コンピュータは、このＮＩＣ１０８を介してネットワーク上に接続されている各種装置とのデータ通信を行う。
【００２２】
１１０は画像入力装置であって、ディジタルカメラやスキャナ装置など、画像を本コンピュータに入力するための装置により構成されている。画像入力装置１１０によって入力された画像は、Ｉ／Ｆ（インターフェース）１０９、バス１１１を介して外部記憶装置１０６やＲＡＭ１０３に出力される。
【００２３】
１１１は上述の各部を繋ぐバスである。
【００２４】
次に、上記構成を有するコンピュータが行う処理について説明する。
【００２５】
＜ロゴ登録処理＞
図２は、画像入力装置１１０により本コンピュータに入力した画像中におけるロゴを外部記憶装置１０６に登録する為の処理のフローチャートである。なお、同図のフローチャートに従った処理をＣＰＵ１０１に実行させるためのプログラムやデータは、外部記憶装置１０６に保存されている。そしてこのプログラムやデータは、ＣＰＵ１０１による制御に従って適宜ＲＡＭ１０３にロードされる。そしてＣＰＵ１０１がこのプログラムやデータを用いて処理を実行することにより、本コンピュータは以下説明する各処理を実行する。
【００２６】
先ず、画像入力装置１１０により入力された画像データをＲＡＭ１０３に取得する（ステップＳ２０１）。なお、ＲＡＭ１０３への画像取得形態についてはその他にも考えられ、例えば、ＮＩＣ１０８を介して外部から取得するようにしても良いし、予め外部記憶装置１０６に保存されていた画像をＲＡＭ１０３に取得するようにしても良い。
【００２７】
次に、外部記憶装置１０６に保存されているインデックス管理情報を読み出し、読み出したインデックス管理情報に含まれている登録画像数、登録領域数をそれぞれ１つインクリメントしたものを画像ＩＤ、領域ＩＤとする（ステップＳ２０２）。図６は、インデックス管理情報の構成例を示す図で、同図に示す如く、インデックス管理情報は、現在外部記憶装置１０６に登録された画像に対して発行した画像ＩＤ、領域ＩＤにより構成されている。
【００２８】
図２に戻って次に、ステップＳ２０１で入力した画像に対するＩＤとしてステップＳ２０２で求めた画像ＩＤ、この画像の各画素のビット数、画像サイズ、外部記憶装置１０６への登録（格納）パスをセットにして、図７に示す構成を有するテーブルに登録する（ステップＳ２０３）。なお、各画素のビット数、画像サイズの取得については、画像データに添付されているヘッダを参照すればよい。図７は、このセット（画像管理情報）を登録するためのテーブルの構成例を示す図である。
【００２９】
図４，５はそれぞれ、ステップＳ２０１で取得した画像の例を示す図である。それぞれの図に示す如く、図４に示した画像、図５に示した画像がこの順に入力されると、順に画像ＩＤが１，２と割り当てられる。
【００３０】
次に、ＣＰＵ１０１は像域分離＋ＯＣＲモジュールのプログラムをＲＡＭ１０３にロードして実行し、ステップＳ２０１で入力した画像に対して像域分離処理、及びＯＣＲ処理を行う（ステップＳ２０４）。これにより、画像中におけるロゴを文字や記号毎に分割すると共に、分割したそれぞれの領域内における文字を認識する。なお、本ステップでは、ロゴを構成している各文字（若しくは記号）が１つずつＯＣＲ処理されるように、手動でロゴ中の各文字や記号の位置などを調整するようにしても良い。
【００３１】
ここで、像域分離処理について図３を用いて説明する。図３は、像域分離処理の対象となる画像の例を示す図である。同図右側に示した画像について像域分離処理を行うと、同図左側に示す如く、テキストやテーブルといったオブジェクト毎に領域分割を行うと共に、それぞれのオブジェクトが、文字、図画、写真、線、表等の何れの属性を有するものであるのかを判別する。
【００３２】
このような処理では先ず、入力画像を白黒に二値化し、輪郭線追跡を行って黒画素輪郭で囲まれる画素の塊を抽出する。面積の大きい黒画素の塊については、内部にある白画素に対しても輪郭線追跡を行って白画素の塊を抽出し、一定面積以上の白画素の塊の内部からは再帰的に黒画素の塊を抽出する。
【００３３】
このようにして得られた黒画素の塊を、大きさや形状で分類し、異なる属性を持つ領域へ分類していく。例えば、縦横比が１に近く、大きさが一定の範囲のものを文字相当の画素群とし、更に近接する文字が整列良くグループ化可能な部分を文字領域、扁平な画素群を線領域、一定の大きさ以上で且つ四角系の白画素群を整列よく内包する黒画素群の占める範囲を表領域、不定形の画素群が散在している領域を写真領域、それ以外の任意形状の画素群を図画領域、というように判別する。
【００３４】
部分領域抽出処理では、不定形の画素群が散在している写真領域で、且つその領域が矩形状のものを画像領域とし、領域を表現する座標とその領域の属性、即ち画像領域であるか文字領域であるかを抽出結果として出力する。
【００３５】
また、ＯＣＲ処理について簡単に説明すると、文字相当の画素群の細線情報のエッジ方向成分などの画像特徴を算出し、辞書においてこれと文字コードと対で記憶した画像特徴を比較する事により文字相当の画素群に対応する文字の認識を行う。
【００３６】
以上説明した像域分離＋ＯＣＲ処理については周知の技術であるので、これ以上の説明は省略する。
【００３７】
図２に戻って、次に、ステップＳ２０４で分割したそれぞれの領域において、隣接する領域（合成領域）の組み合わせ数を求め、これと、分割領域数との合計を変数Ｎｒに代入する（ステップＳ２０５）。例えば、画像中に「Ａｂｃｄｅ」の５文字がロゴとして記されている場合、ステップＳ２０４では、「Ａ」の領域（以下、領域Ａ）、「ｂ」の領域（以下、領域ｂ）、「ｃ」の領域（以下、領域ｃ）、「ｄ」の領域（以下、領域ｄ）、「ｅ」の領域（以下、領域ｅ）を得ることになる。そしてステップＳ２０５では、合成領域の組み合わせの数を求めるのであるが、合成領域の組み合わせは、「Ａｂ」、「Ａｂｃ」、「Ａｂｃｄ」、「ｂｃ」、「ｂｃｄ」、「ｂｃｄｅ」、「ｃｄ」、「ｃｄｅ」、「ｄｅ」の９つである。また、分割領域数はここでは「５」（領域Ａ〜領域ｅの５つ）であるので、Ｎｒには「１４」が代入されることになる。
【００３８】
次にステップＳ２０６では先ず、上記１４の領域（上記５つの分割領域＋上記９つの合成領域）を一列に並べた場合に、先頭に対してステップＳ２０２で発行した領域ＩＤを割り当て、後続の領域については１つずつ領域ＩＤをインクリメントしながら領域ＩＤを割り当てる。即ち、領域Ａ〜領域ｅ、「Ａｂ」の領域、「Ａｂｃ」の領域、「Ａｂｃｄ」の領域、「ｂｃ」の領域、「ｂｃｄ」の領域、「ｂｃｄｅ」の領域、「ｃｄ」の領域、「ｃｄｅ」の領域、「ｄｅ」の領域を一列に並べたとすると、領域ＡにはステップＳ２０２で発行した領域ＩＤを割り当て、領域ｂ〜「ｄｅ」の領域に対してはそれぞれ（ステップＳ２０２で発行した領域ＩＤ＋１）〜（領域ＡにはステップＳ２０２で発行した領域ＩＤ＋１３）を割り当てる。
【００３９】
そしてステップＳ２０６では次に、ステップＳ２０１で入力した画像に対してステップＳ２０２で発行した画像ＩＤ、それぞれの領域について割り当てた領域ＩＤ、それぞれの領域の外接矩形のこの画像における座標位置、それぞれの領域内の画像データ、それぞれの領域に対するＯＣＲ結果のセットを、オブジェクト情報として図８に示すテーブルに登録する。なお、合成領域に対するＯＣＲ結果についてはＮＵＬＬ（文字認識結果無し）とする。図８は、オブジェクト情報を登録するテーブルの構成例を示す図である。
【００４０】
ここで、図８のテーブルに示す如く、オブジェクト情報には上記要素の他に、それぞれの領域内の画像特徴量（最外接領域の画像特徴量）があるが、これについてはステップＳ２０７で求める。
【００４１】
ステップＳ２０７では、上記１４の領域のそれぞれについて、領域内の画像に対する画像特徴量抽出処理を行い、図８、９のテーブルに登録する。ここで、画像特徴量抽出処理には様々な処理が考えられるが、ここではその一例として、色特徴情報抽出処理について説明する。
【００４２】
色特徴情報抽出処理では図１１に示す如く、色空間を立体的に複数の部分空間（色ビン）に分割したものを用いてヒストグラムを算出する事になる。
【００４３】
まず、画像を複数の領域に分割し、複数の分割領域を得る。次に、それぞれの分割領域における色ヒストグラムを作成し、作成した色ヒストグラムにおける最頻色を持つ色ビンのＩＤを代表色とし、それぞれ領域の位置と対応付けた特徴を抽出する。
【００４４】
ここで、色特徴情報抽出処理について具体的な例を挙げ、より詳細に説明する。ここではその例として、図１０に示す如く、画像を９×９の分割領域に分割し、図１１に示す如く、ＲＧＢ色空間を３ｘ３ｘ３＝２７ビンへ均等階級化する場合について説明する（実際には６ｘ６ｘ６＝２１６程度の色ビンがある方が個好ましい）。
【００４５】
先ず、図１０に示す如く、画像を複数の分割領域に分割する。同図では９ｘ９＝８１の領域に分割したが、実際には１５ｘ１５＝２２５の数に分割することが好ましい。次に、注目分割領域について図１２に示す如く、各列について左から右側にスキャンし、各画素値を参照する。そして参照した画素値が示す色を図１１に示す色ビンに射影し、色ビンに対するヒストグラムを作成する（なお、図１２は、３×３の分割例で示している）。
【００４６】
そして、最も頻度の高い色ビンに対応する色ビンＩＤを注目分割領域の代表色と決定する。このような処理を全ての分割領域について行い、参照した分割領域順で色ビンＩＤを並べたものを色特徴情報とする。
【００４７】
また、ステップＳ２０７では更に、各領域の前後にどの領域が位置しているのかを記すために、図９に示すテーブルを作成する。図９は、各領域ＩＤで指定される領域の前後関係を記したテーブルの構成例を示す図である。即ち同図のテーブルには、それぞれの領域について、領域ＩＤ、前後に位置する領域のＩＤ（存在しない場合にはＮＵＬＬ）、領域座標位置、領域サイズ、ＯＣＲ結果、ＯＣＲゆう度（ＯＣＲ処理時に求まるものである）、領域内の画像の先に求めた特徴量、のセットを領域情報として登録する。
【００４８】
そして、最後に、上記インデックス管理情報を構成している登録画像数を１つインクリメントすると共に、登録領域数をＮｒだけインクリメントする。
【００４９】
＜ロゴ検索処理＞
次に、新たに画像入力装置１１０等によりＲＡＭ１０３に取得された画像中にロゴが含まれているのか否かを、上記登録処理により登録された情報を用いて検証する処理について、同処理のフローチャートを示す図１３を用いて説明する。なお、同図のフローチャートに従った処理をＣＰＵ１０１に実行させるためのプログラムやデータは外部記憶装置１０６に保存されている。そしてこのプログラムやデータはＣＰＵ１０１による制御に従って適宜ＲＡＭ１０３にロードされる。そしてＣＰＵ１０１がこのプログラムやデータを用いて処理を実行することにより、本コンピュータは以下説明する各処理を実行する。
【００５０】
先ず、ロゴを含んでいるか否かを検証する対象となる画像を被験画像としてＲＡＭ１０３に取得する（ステップＳ１３０１）。被験画像の取得形態については上記ステップＳ１２０１と同様に、画像入力装置１１０によって取得しても良いし、ＮＩＣ１０８、外部記憶装置１０６から取得するようにしても良い。
【００５１】
次に、取得した被験画像に対して、上記ステップＳ２０４と同様にして、像域分離＋ＯＣＲ処理を行う（ステップＳ１３０２）。その結果ＲＡＭ１０３には図１５に示すような情報が作成されることになる。
【００５２】
そして次に、像域分離処理の結果として得られる各領域の連続性の検証を行う（ステップＳ１３０３）。ここで、ステップＳ１３０３における検証処理について、図１４を用いて詳細に説明する。
【００５３】
図１４は、像域分離処理の結果、３つの領域（領域１，領域２，領域３）が得られた場合に、これらの領域の連続性の検証について説明する図である。
【００５４】
先ず、領域１，２に着目すると、領域１，２を水平方向に射影したときに重なり部分の長さを求める。同図では、領域１の鉛直方向の長さはＶ１、領域２の鉛直方向の長さはＶ２であり、水平方向に着目すると、領域２は領域１に包含されていることになるので、水平方向における領域１と領域２との重なり部分の長さはＶ２となる。そして次に、この重なり部分の長さＤＶ１２が、長さＶ１，Ｖ２のうち小さい方に対して占める割合を計算する。この場合、ＤＶ１２＝Ｖ２であり、且つＶ１＞Ｖ２であるので、Ｖ２／Ｖ２＝１を計算することになる。そして、この割合が所定の閾値以上の場合には、領域１，２は水平方向については連続していると判断する。
【００５５】
これは鉛直方向に対する連続性の検証についても同様で、領域１，３に着目すると、領域１，３を鉛直方向に射影したときに重なり部分の長さを求める。同図では、領域１の水平方向の長さはＨ１、領域３の水平方向の長さはＨ３であり、鉛直方向に着目すると、領域３は領域１に包含されていることになるので、鉛直方向における領域１と領域３との重なり部分の長さはＨ３となる。そして次に、この重なり部分の長さＤＨ１３が、長さＨ１，Ｈ３のうち小さい方に対して占める割合を計算する。この場合、ＤＨ１３＝Ｈ３であり、且つＨ１＞Ｈ３であるので、Ｈ３／Ｈ３＝１を計算することになる。そして、この割合が所定の閾値以上の場合には、領域１，３は鉛直方向については連続していると判断する。
【００５６】
以上のことを一般的に説明すると、領域１，２，３に対しての連続性の検証処理では、以下の計算を行うことになる。
【００５７】
Ｉｆ（Ｖ１＞Ｖ２）
ＣｏｎｔＶ＝ＤＶ１２／Ｖ２
Ｅｌｓｅ
ＣｏｎｔＶ＝ＤＶ１２／Ｖ１
Ｉｆ（Ｈ１＞Ｈ３）
ＣｏｎｔＨ＝ＤＨ１３／Ｈ３
Ｅｌｓｅ
ＣｏｎｔＨ＝ＤＨ１３／Ｈ１
そして、ＣｏｎｔＶが所定の閾値以上であれば、領域１と領域２とは水平方向に連続していると判断することができ、ＣｏｎｔＨが所定の閾値以上であれば、領域１と領域３とは鉛直方向に連続していると判断することができる。そしてこのような連続性が有る場合、領域１，２，３の領域ＩＤがそれぞれ１，２，３であるとすると、ステップＳ１３０３では、図１６に示す如く、各領域の前後関係をテーブルに登録する。図１６は、各領域の前後関係を記したテーブルの構成例を示す図で、例えば領域ＩＤ＝１の領域（領域１）に着目すると、領域１の前に存在する領域の領域ＩＤ、領域１の後に存在する領域の領域ＩＤ、領域１の座標位置、領域１のサイズ、領域１に対するＯＣＲ結果、ＯＣＲゆう度のセットが領域情報として図１６に示すテーブルに登録される。
【００５８】
図１３に戻って次に、これら各領域内の画像の画像特徴量を求め、図１６に示すテーブルにおいて対応する箇所に登録する（ステップＳ１３０４）。なお、ここで求める画像特徴量は、以下のステップにおいてステップＳ２０７において求めた特徴量と比較するために用いるので、ステップＳ２０７において求めたものと同じ種類のものを求める。
【００５９】
次に、図１６に示したテーブルに登録した領域のうち最初の領域（図１６では領域ＩＤ＝１の領域）を、以下の処理で用いる「比較基準」にセットする（ステップＳ１３０５）。次に、このテーブルに登録した全ての領域を比較基準にセットしたか否かを判断する（ステップＳ１３０６）。未だ比較基準にセットしていない領域がある場合には処理をステップＳ１３０７に進める。そして、外部記憶装置１０６に登録されている全ての画像の全ての領域の画像特徴量と、比較基準の画像特徴量との類似度を求める処理を処理を行い、比較基準の画像特徴量との類似度が最も高かった画像特徴量の画像ＩＤ、領域ＩＤを特定する（ステップＳ１３０７）。
【００６０】
類似度の計算については、例えば、色空間上での幾何距離を参考にして図１７に例示するような色ビンＩＤのペナルティのデータを予め作成し、外部記憶装置１０６に登録しておく。そして、このデータを用いて、比較基準の色ビンと、比較対照の画像特徴量の色ビンとのペナルティを計算する。
【００６１】
次に、比較基準のＯＣＲ結果と、外部記憶装置１０６に登録されている全ての画像の全ての領域のＯＣＲ結果（しかし、所定ゆう度以上を有するＯＣＲ結果）との比較を行い、比較基準のＯＣＲ結果と一致するＯＣＲ結果を有する領域の画像ＩＤ、領域ＩＤを特定する（ステップＳ１３０８）。
【００６２】
そして、比較基準の画像ＩＤと領域ＩＤ、ステップＳ１３０７で特定した画像ＩＤと領域ＩＤ、ステップＳ１３０８で特定した画像ＩＤと領域ＩＤをセットにしてＲＡＭ１０３に一時的に格納する（ステップＳ１３０９）。なお、ステップＳ１３０８による特定処理では、特定結果が「なし」である場合もある。その場合には、ステップＳ１３０８による特定結果を格納する領域には、例えばNULLを格納する。
【００６３】
そして次に、図１６のテーブルを参照し、未だ比較基準にセットしていない次の領域を比較基準にセットする。そして処理をステップＳ１３０６に戻し、以降の処理を繰り返す。これにより、画像特徴量の点で比較基準と類似している領域、ＯＣＲ結果の点で比較基準と一致している領域の２つの観点から、比較基準と類似する領域を網羅する事が可能となる。
【００６４】
一方、ステップＳ１３０６において、比較基準にセットしていない領域が存在しない場合、即ち、全ての領域について比較基準にセットした場合には処理をステップＳ１３１１に進める。そして、ステップＳ１３０７，Ｓ１３０８で特定したそれぞれの領域の並び順に基づいて、このそれぞれの領域のうち、被験画像上における各領域に対応する領域の候補を決定する処理を行う（ステップＳ１３１１）。本ステップにおける処理についてより詳細に説明すべく、図１８に示した具体例を用いる。
【００６５】
図１８に、被験画像中の領域と登録画像データの領域ＩＤの対応を示したデータ構造を示す。図において、被験画像領域ＩＤ＝１に対して登録領域ＩＤ＝４が、被験画像領域ＩＤ＝２に対して登録領域ＩＤ＝２とＩＤ＝３が、被験画像領域ＩＤ＝３に対して登録領域ＩＤ＝６が画像特徴量比較により類似していると仮定した場合の例である。
【００６６】
被験画像中の領域に類似する登録画像中の領域に対し、その前後に有るべき領域を図９のテーブルに含まれる領域リンク関係（前領域ＩＤ，後領域ＩＤ）を参照して照合する。
【００６７】
図９によれば、登録領域ＩＤ＝４の後に登録領域ＩＤ＝３は連続可能であり、登録領域ＩＤ＝３の後に続く登録領域は無いので、被験画像の領域ＩＤ＝１と領域ＩＤ＝２の組み合わせは、登録画像ＩＤ＝１に適合する可能性があると判断する。
【００６８】
他方、図９によれば登録領域ＩＤ＝４の後に登録領域ＩＤ＝２は連続不可能であり、且つ図９のテーブルによれば登録領域ＩＤ＝２は単独で登録画像には成りえない事から、被験画像の領域ＩＤ＝２に適合する可能性のある登録画像はない。他方、図９のテーブルによれば登録領域ＩＤ＝４の後に登録領域ＩＤ＝６は連続不可であるが、登録領域ＩＤ＝６は単独で登録画像２と成りえることから、被験画像の領域ＩＤ＝３は登録画像ＩＤ＝２に適合する可能性があると判断する。
【００６９】
以上の処理により、外部記憶装置１０６に登録されている各領域のうち、被験画像上における各領域に対応するものが決定する。ここで、外部記憶装置１０６に登録されている各領域はロゴを構成している各文字や記号であるので、上記処理によれば、被験画像上における各領域のうち、ロゴ部分候補（ロゴ部分の部分領域であるかもしれないし、ロゴ以外を含む部分であるかもしれないので、ここではロゴ部分と断定することはできず、候補部分となる）がどれであるのかを決定することができる。
【００７０】
図１３に戻って、次に、被験画像上において、ロゴ部分候補と決定された部分を包含する外接矩形を設定する（ステップＳ１３１２）。ロゴ候補部分は複数存在する場合がある。次に、設定した外接矩形のうち、アスペクト比ずれが大きいものについてはロゴ候補部分から外す（ステップＳ１３１３）。
【００７１】
そして、被験画像上におけるロゴ候補部分に設定した外接矩形のサイズと同じになるように、外部記憶装置１０６に登録されている各領域内の画像部分をリサイズする。外部記憶装置１０６に登録されている各領域に係る情報については、全ての画像について作成した図８に示すようなテーブルを参照すればよい。
【００７２】
そして、被験画像上におけるロゴ候補部分内の各画素と、外部記憶装置１０６に登録されている領域ｊ（ｊ＝１，，，Ｋ）内の画像部分（リサイズ済み）を構成している各画素とで位置的に対応するもの同士の画素値の差分の絶対値を求める処理を行う。そしてそれぞれ位置的に対応するもの同士で求めた絶対値の和を求め、これをＳｊとする。この処理を全てのｊ、及び被験画像上における全てのロゴ候補部分について行う。
【００７３】
全てのロゴ候補部分について、外部記憶装置１０６に登録されている全ての領域とのＳｊを求めると次に、Ｓｊが所定の閾値以下となるようなロゴ候補部分を特定し、特定したロゴ候補部分の座標位置を表示装置１０７上に表示する（ステップＳ１３１４）。なお、表示する情報はこれに限定するものではなく、Ｓｊが所定の閾値以下となるようなロゴ候補部分に係る情報であればよい。
【００７４】
以上の説明により、本実施形態によれば、単一のオブジェクトとして切り出されるロゴも、1塊でないロゴ、端的に言うと文字ベースのロゴの場合には文字ごとにオブジェクトが切り出されるロゴに対してもロバストなロゴ検索を行う事が可能となる。
【００７５】
［第２の実施形態］
本実施形態では、第１の実施形態とは異なるロゴ検索処理について説明する。本実施形態に係るロゴ検索処理は基本的には図１３に示したフローチャートに従った処理を行うのであるが、以下の点で異なる。
【００７６】
本実施形態では上記ステップＳ１３０３では図１４に示す如く、領域１と領域２とは水平方向に連続しており、領域１と領域３とは鉛直方向に連続していると判断したとする。更に、図１９上部に示す如く、外部記憶装置１０６に登録されている画像ＩＤ＝１の画像上の各領域（領域ＩＤ＝１〜５）に対しては、画像ＩＤ＝NULL、２，２，１，NULLの被験画像が対応しており、外部記憶装置１０６に登録されている画像ＩＤ＝２の画像上の領域（領域ＩＤ＝６）に対しては、画像ＩＤ＝３の被験画像が対応しているとする。
【００７７】
この場合、ＩＤ＝１の被験画像とＩＤ＝２の被験画像に夫々、領域ＩＤ＝４，３の領域が対応していることを読み取り、図９の登録画像領域の隣接情報から、領域ＩＤ＝４，３の領域の並びは、ＩＤ＝１の被験画像を構成するのに十分であることがわかるので、ＩＤ＝１の被験画像とＩＤ＝２の被験画像は、外部記憶装置１０６に登録されている画像ＩＤ＝１の画像に相当する候補であることがわかる。
【００７８】
また、領域ＩＤ＝１，３の領域は夫々、外部記憶装置１０６に登録されている領域ＩＤ＝４，６の領域が対応していることを読み取り、図９の登録画像領域の隣接情報から、外部記憶装置１０６に登録されている領域ＩＤ＝４，６の領域の並びはどの登録画像も構成していないが、領域ＩＤ＝６の領域は単独で外部記憶装置１０６に登録されている画像ＩＤ＝２の画像を構成するのに十分であることがわかるので、領域ＩＤ＝６の領域が外部記憶装置１０６に登録されている画像ＩＤ＝２の画像に相当する候補であることがわかる。
【００７９】
［その他の実施形態］
また、本発明の目的は、以下のようにすることによって達成されることはいうまでもない。即ち、前述した実施形態の機能を実現するソフトウェアのプログラムコードを記録した記録媒体（または記憶媒体）を、システムあるいは装置に供給する。そして、そのシステムあるいは装置のコンピュータ（またはＣＰＵやＭＰＵ）が記録媒体に格納されたプログラムコードを読み出し実行する。この場合、記録媒体から読み出されたプログラムコード自体が前述した実施形態の機能を実現することになり、そのプログラムコードを記録した記録媒体は本発明を構成することになる。
【００８０】
また、コンピュータが読み出したプログラムコードを実行することにより、そのプログラムコードの指示に基づき、コンピュータ上で稼働しているオペレーティングシステム（ＯＳ）などが実際の処理の一部または全部を行う。その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【００８１】
さらに、記録媒体から読み出されたプログラムコードが、コンピュータに挿入された機能拡張カードやコンピュータに接続された機能拡張ユニットに備わるメモリに書込まれたとする。その後、そのプログラムコードの指示に基づき、その機能拡張カードや機能拡張ユニットに備わるＣＰＵなどが実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【００８２】
本発明を上記記録媒体に適用する場合、その記録媒体には、先に説明したフローチャートに対応するプログラムコードが格納されることになる。
【図面の簡単な説明】
【００８３】
【図１】本発明の第１の実施形態に係る画像処理装置に適用可能なコンピュータのハードウェア構成を示すブロック図である。
【図２】画像入力装置１１０により本コンピュータに入力した画像中におけるロゴを外部記憶装置１０６に登録する為の処理のフローチャートである。
【図３】像域分離処理の対象となる画像の例を示す図である。
【図４】ステップＳ２０１で取得した画像の例を示す図である。
【図５】ステップＳ２０１で取得した画像の例を示す図である。
【図６】インデックス管理情報の構成例を示す図である。
【図７】セット（画像管理情報）を登録するためのテーブルの構成例を示す図である。
【図８】オブジェクト情報を登録するテーブルの構成例を示す図である。
【図９】各領域ＩＤで指定される領域の前後関係を記したテーブルの構成例を示す図である。
【図１０】画像を９×９の分割領域に分割した例を示す図である。
【図１１】色空間を立体的に複数の部分空間（色ビン）に分割した例を示す図である。
【図１２】分割矩形のスキャンの例を示す図である。
【図１３】新たに画像入力装置１１０等によりＲＡＭ１０３に取得された画像中にロゴが含まれているのか否かを、上記登録処理により登録された情報を用いて検証する処理のフローチャートである。
【図１４】像域分離処理の結果、３つの領域（領域１，領域２，領域３）が得られた場合に、これらの領域の連続性の検証について説明する図である。
【図１５】ステップＳ１０２における処理の結果作成される情報である。
【図１６】各領域の前後関係を記したテーブルの構成例を示す図である。
【図１７】ペナルティのデータの例を示す図である。
【図１８】ステップＳ１３１１における処理の詳細を説明する為に用いる図である。
【図１９】第２の実施形態における処理を説明する図である。
【図１】
0004757001.tif 000002
【図２】
0004757001.tif 000003
【図３】
0004757001.tif 000004
【図４】
0004757001.tif 000005
【図５】
0004757001.tif 000006
【図６】
0004757001.tif 000007
【図７】
0004757001.tif 000008
【図８】
0004757001.tif 000009
【図９】
0004757001.tif 000010
【図１０】
0004757001.tif 000011
【図１１】
0004757001.tif 000012
【図１２】
0004757001.tif 000013
【図１３】
0004757001.tif 000014
【図１４】
0004757001.tif 000015
【図１５】
0004757001.tif 000016
【図１６】
0004757001.tif 000017
【図１７】
0004757001.tif 000018
【図１８】
0004757001.tif 000019
【図１９】
0004757001.tif 000020