(57)【要約】【課題】画像ごとの色の違いに大きく影響されることなく、正確な画像の検索を可能にする。【解決手段】画像処理システムは、撮像して得られたカラー画像をＲＧＢ各版画像に分解し、さらにブロック領域に分割する。そして、ブロック領域ごとにフィルタをかけてエッジ方向を判定し、その結果を４つのグループに分類して二値コード化する。グループ別に用意された配列には、そのグループにエッジ方向が該当している箇所のブロック領域にフラグ１を立て、その他はフラグ０となる。このように、エッジ方向をグループ分けして二値コード化した結果を画像特徴量として抽出し、これを画像検索に使用する。【選択図】図９
2011028374.tif 000002
【特許請求の範囲】
【請求項１】
撮像して得られたカラー画像を原色別の版画像に分解し、これら版画像をそれぞれ複数のブロック領域に分割する前処理手段と、
分割された個々の前記ブロック領域について、その周辺に隣接する他の前記ブロック領域との平均明度の違いに基づき前記ブロック領域ごとのエッジ方向を判定する処理を前記版画像のそれぞれに対して行う判定処理手段と、
前記版画像のそれぞれに対して前記判定処理手段により判定された前記ブロック領域ごとのエッジ方向をコード化し、その結果を前記カラー画像の画像特徴量として抽出する抽出処理手段と
を備えた画像処理システム。
【請求項２】
請求項１に記載の画像処理システムにおいて、
前記抽出処理手段は、
エッジ方向を複数のグループに分類してみたとき、各グループ別に個々の前記ブロック領域について判定されたエッジ方向がそのグループに属するか否かを二値コードで表すことにより、前記版画像のそれぞれに対して前記グループごとに全ての前記ブロック領域についてのエッジ方向を二値コード化することを特徴とする画像処理システム。
【請求項３】
請求項１又は２に記載の画像処理システムにおいて、
予め比較対象となる複数の画像データをその画像特徴量とともに登録する画像データ登録手段と、
撮像して得られた前記カラー画像について、前記抽出処理手段により抽出された画像特徴量を前記画像データ登録手段に登録された個々の前記画像データについての画像特徴量と比較することにより、前記画像データ登録手段に登録された複数の前記画像データの中から前記カラー画像に対応するべき前記画像データを検索する検索処理手段と
をさらに備えた画像処理システム。
【請求項４】
撮像して得られたカラー画像を原色別の版画像に分解し、これら版画像をそれぞれ複数のブロック領域に分割する前処理工程と、
前記前処理工程で分割された個々の前記ブロック領域について、その周辺に隣接する他の前記ブロック領域との平均明度の違いに基づき前記ブロック領域ごとのエッジ方向を判定する処理を前記版画像のそれぞれに対して行う判定処理工程と、
前記版画像のそれぞれに対して前記判定処理工程で判定された前記ブロック領域ごとのエッジ方向をコード化し、その結果を前記カラー画像の画像特徴量として抽出する抽出処理工程と
を有する画像処理方法。
【請求項５】
請求項４に記載の画像処理方法において、
前記抽出処理工程では、
エッジ方向を複数のグループに分類してみたとき、各グループ別に個々の前記ブロック領域について判定されたエッジ方向がそのグループに属するか否かを二値コードで表すことにより、前記版画像のそれぞれに対して前記グループごとに全ての前記ブロック領域についてのエッジ方向を二値コード化することを特徴とする画像処理方法。
【請求項６】
請求項４又は５に記載の画像処理方法において、
予め複数の画像データがその画像特徴量とともに登録された画像データベースにアクセスし、この画像データベースに登録された個々の前記画像データについての画像特徴量と前記抽出処理工程を通じて抽出された画像特徴量とを比較することにより、前記画像データベースに登録された複数の前記画像データの中から前記カラー画像に対応するべき前記画像データを検索する検索処理工程と
をさらに有する画像処理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、例えば撮像素子を用いて撮像されたカラー画像に対して加工や演算等の処理を行う画像処理システム及び画像処理方法に関する。
【背景技術】
【０００２】
従来、データベースに登録された多数の画像の中から任意形状の画像を検索する先行技術として、検索元の画像とデータベース内にある検索先の画像について、それぞれのブロック毎の画像特徴量同士を比較し、それらの類似度から検索結果を出力する先行技術が知られている（例えば、特許文献１参照。）。この先行技術は特に、任意形状の画像に対して外接する矩形枠を作成し、その矩形枠内で画像をブロックに分割して画像特徴量を抽出するものである。そしてこの先行技術では、ブロック内でみた画像の形状を合わせて抽出し、ブロック内の形状情報と画像特徴量とを用いてデータベースから画像を検索することとしている。
【０００３】
上述した先行技術によれば、画像全体をブロックに分割し、ブロック毎の色やエッジ、テクスチャなどを画像特徴量として抽出するだけでなく、任意形状の画像に外接する矩形の範囲内で画像特徴量を抽出することができるため、背景領域部分を除外した高速な検索が可能になると考えられる。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００７−３４６１３号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
上述した先行技術は、検索元となる画像が任意形状であっても、データベースから検索対象をある程度絞り込んだ上で、高速に検索を行うことができる点で優位である。ただし、先行技術で扱う検索元の画像は、イメージスキャナ等の高精度なセンシングデバイス（コンタクトガラスと読取ヘッドを用いたもの）を使用し、良好かつ安定した撮像環境の下で得られた高品位画像である。このため先行技術には、その前提として、得られた画像の色やエッジ等をそのまま画像特徴量として使用しても、検索結果にはほとんど影響が現れないという特異な事情がある。
【０００６】
これに対し、携帯電話機等のモバイル機器を用いて撮像された画像は、その撮像時の環境が多種多様であるため、その結果、得られた画像には撮像環境の違いが色の違いとして大きく現れる。また、ユーザごとに使用する機器の個体差や機種の違いによる色の違いが大きく現れることも多く、たとえ異なるユーザが同じ対象物を撮像した場合であっても、撮像環境の違いや機種の違いによってそれぞれが撮像した画像間には無限に近い色の違いが現れる。このような状況にあっては、たとえ上述した先行技術の手法を適用しても、撮像された画像間の色の違いが画像特徴量に大きく影響し、そのままでは正確な画像検索が困難になるという問題がある。
【０００７】
そこで本発明は、画像ごとの色の違いに大きく影響されることなく、正確な画像の検索を可能にする技術の提供を課題としている。
【課題を解決するための手段】
【０００８】
上記の課題を解決するため、本発明は画像処理システム及び画像処理方法を提供する。本発明の画像処理システム及び画像処理方法では、先ず撮像して得られたカラー画像を原色別の版画像に分解し、これら版画像をそれぞれ複数のブロック領域に分割する前処理を実行する（前処理工程）。次に、分割された個々のブロック領域について、その周辺に隣接する他のブロック領域との平均明度の違いに基づきブロック領域ごとのエッジ方向を判定する処理を版画像のそれぞれに対して行う（判定処理工程）。そして、版画像のそれぞれに対して判定処理手段により判定されたブロック領域ごとのエッジ方向をコード化し、その結果をカラー画像の画像特徴量として抽出する（抽出処理工程）。
【０００９】
本発明の画像処理システム及び画像処理方法によれば、撮像されたカラー画像を原色別の版画像に分解した上で、さらに各版画像をブロック領域に分割し、それぞれのエッジ方向をコード化した結果を画像特徴量としている。このため、撮像により得られたカラー画像間に多種多様な色の違いが存在していても、その影響が画像特徴量に大きく影響することはない。すなわち、同じ対象物を異なるデバイスや撮像環境で撮像すると、得られたカラー画像間には色の違いが当然に現れるが、ブロック領域ごとのエッジ方向であれは、撮像環境やデバイスが違ったとしても、その傾向に極端な違いが生じることはない。したがって、エッジ方向をコード化した結果を画像特徴量とすれば、そこに色の違いが影響しないため、その後の正確な画像検索が可能になるという利点がある。
【００１０】
また本発明の画像処理システム及び画像処理方法では、撮像して得られた画像をブロック領域に分割した上でエッジ方向を判定し、その結果をコード化したものを画像特徴量としているため、１つ１つの画素から画像特徴量を抽出した場合と比較してデータ容量を少なく抑えることができる。
【００１１】
本発明において、画像特徴量の抽出を以下の態様で行うことがより好ましい。すなわち、ブロック領域ごとに判定したエッジ方向をさらに複数のグループに分類してみたとき、各グループ別に個々のブロック領域について判定されたエッジ方向がそのグループに属するか否かを二値コードで表すことにより、版画像のそれぞれに対してグループごとに全てのブロック領域についてのエッジ方向を二値コード化するものとする。
【００１２】
上記の態様であれば、エッジ方向の判定結果をさらにグループ別に集約できるため、それだけ情報量を少なくすることができる。また、エッジ方向をグループ別にみた場合、単純にそのグループに属するか否かを二値コードで表すことができるため、扱うデータ量が少ない上、デジタル処理に極めて好適である。したがって、簡素なコンピュータハードウェアによる処理にも容易に適用することができ、それだけ利用の幅を拡張することができる。
【００１３】
以上は画像特徴量の抽出までの処理であるが、さらに本発明の画像処理システム及び画像処理方法は、予め比較対象となる複数の画像データをその画像特徴量とともにデータベース等に登録しておくことにより、そこから画像の検索を容易に行うことができる。すなわち、本発明の画像処理システム及び画像処理方法では、撮像して得られたカラー画像について、そこから抽出された画像特徴量を、予め登録された個々の画像データについての画像特徴量と比較することにより、登録された複数の画像データの中からカラー画像に対応するべき画像データを検索することができる。
【００１４】
この場合、予め登録されている画像特徴量についても、その画像データ（登録されているオリジナルの画像）を複数のブロック領域に分割し、個々のブロック領域ごとのエッジ方向をコード化した状態で表されているものとする。これにより、オリジナルの画像と撮像された画像との色の違いに影響されることなく、ブロック領域ごとのエッジ方向の傾向性から抽出した画像特徴量を比較することで、より高精度な画像検索が可能となる。
【発明の効果】
【００１５】
本発明の画像処理システム及び画像処理方法は、多種多様な撮像環境下で得られた画像についても、その色の違いに影響されない画像特徴量を抽出することができる。また、当該画像特徴量を用いてオリジナル画像との比較を行い、正確に画像検索を行うことができる。
【図面の簡単な説明】
【００１６】
【図１】画像処理システムの構成を概略的に示した図である。
【図２】携帯情報端末及びサーバそれぞれの構成例を示すブロック図である。
【図３】携帯情報端末の端末制御部により実行される端末画像処理の一例を示すフローチャートである。
【図４】携帯情報端末を用いて行われる撮像の様子を示す斜視図である。
【図５】画像特徴量抽出処理の内容を詳細に示したフローチャートである。
【図６】ＲＧＢ各版画像エリア分割処理の流れを連続的に示すイメージ図である。
【図７】分割されたＲ版画像から９つのブロック領域を選択し、Ｐｒｅｗｉｔｔフィルタ処理を行った場合の一例を示す図である。
【図８】Ｐｒｅｗｉｔｔフィルタを用いたエッジ方向の判定結果を示す図である。
【図９】ブロック領域ごとのエッジ方向の判定結果とグループ別の配列の例を示した概念図である。
【図１０】画像検索処理の手順例を示すフローチャートである。
【発明を実施するための形態】
【００１７】
以下、本発明の画像処理システム及びこれを用いて行う画像処理方法の実施形態について説明する。
【００１８】
図１は、画像処理システムの構成を概略的に示した図である。この画像処理システムは、例えば個人ユーザが所持する携帯情報端末１をはじめ、移動体通信網の基地局１０１、ネットワーク１０２及びサーバコンピュータ１００から構成されている。なお画像処理システムはその実行する機能により、携帯情報端末１だけで構成される場合もあれば、携帯情報端末１とその他の要素（基地局１０１、ネットワーク１０２及びサーバコンピュータ１００）とで構成される場合もある。
【００１９】
携帯情報端末１は、例えばその表示画面上でＨＴＭＬデータに基づく表示を行う機能を有した携帯型の情報端末機器であり、ここでは携帯電話機が例に挙げられている。また携帯情報端末１はコンピュータとしての機能をも有しており、内蔵する記憶装置（メモリ）等に記憶されたアプリケーションプログラムを適宜読み出し、これを実行するシステムリソースを備えている。
【００２０】
本実施形態の画像処理システムは、携帯情報端末１にカメラ機能（撮像機能）が付属している場合を想定している。すなわち、携帯情報端末１には図示しないカメラモジュールが内蔵されており、このカメラモジュールは、例えばＣＣＤイメージセンサ等の撮像素子とレンズとを組み合わせて構成されている。なお携帯情報端末１は携帯電話機に限らず、通信機能とカメラ機能とを有した携帯型コンピュータやノート型のパーソナルコンピュータ等でもよい。またこれらの場合、カメラ機能は外部接続機器（ＵＳＢカメラ）を用いて実現してもよい。
【００２１】
基地局１０１は、携帯情報端末１との間で通信を行うためのアンテナを備えている。基地局１０１は例えばインターネット等のネットワーク１０２に接続されており、この状態で基地局１０１は、携帯情報端末１によりネットワーク１０２を通じて行われるデータ通信を中継する。
【００２２】
ネットワーク１０２には、サーバコンピュータ（以下「サーバ」と呼称する）１００が接続されている。サーバ１００は、基地局１０１及びネットワーク１０２を経由して、携帯情報端末１との間でデータ通信を行う機能を有するほか、コンピュータとして画像検索プログラムを実行するための機能を有する。またサーバ１００は画像データベース（図１には示されていない）を保有し、この画像データベース内に複数の画像データを予め登録している。サーバ１００は画像検索プログラムの実行に伴い、画像データベースにアクセスして画像検索を実行する。
【００２３】
図２は、携帯情報端末１及びサーバ１００それぞれの構成例を示すブロック図である。なお図２中、基地局１０１についてはその図示を省略している。
【００２４】
携帯情報端末１は、図示しないＣＰＵ（Ｃｅｎｔｏｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）やメモリ等のハードウェアリソースを有するほか、無線（ＲＦ）通信モジュールやＲＦアンテナ等をも内蔵している。携帯情報端末１は、これら内蔵するハードウェアリソースを用いてアプリケーションプログラムを実行するとともに、その実行に伴い無線通信モジュールを用いてインターネット１０２に接続することができる。
【００２５】
またサーバ１００は、図示しないＣＰＵ（Ｃｅｎｔｏｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）をはじめとして、メモリや周辺ＩＣ、ハードディスク等の各種のハードウェアリソースを備えている。サーバ１００は、そのハードウェアリソースを用いて画像検索プログラムを実行するほか、その実行に伴い図示しないネットワークインタフェースを通じてインターネット１０２に接続することができる。
【００２６】
また携帯情報端末１は端末制御部１０を有しており、この端末制御部１０は、例えば上記のＣＰＵを用いて実現されている。また端末制御部１０には、各種処理部として主に、撮像処理部１１、画像加工処理部１２、画像特徴量抽出処理部１３及びデータ送信処理部１４が組み込まれている。このうち撮像処理部１１は、上記のカメラモジュールを用いて撮像を行い、カラー画像を取得する処理を実行する。また画像加工処理部１２は、撮像されたカラー画像をさらに加工する処理を実行する。画像特徴量抽出処理部１３は、加工された画像から画像特徴量を抽出する処理を実行する。またデータ送信処理部１４は、上記の無線通信モジュールを用いて画像特徴量のデータを送信する。なお、各種処理部による処理については、さらに詳しく後述する。また各種処理部の構成は、例えばＣＰＵにより実行されるプログラムモジュールを用いて実現することができる。
【００２７】
その他に携帯情報端末１は、操作キー１７や画像表示部１８等を備えている。操作キー１７は、ユーザのプッシュ操作（押下）を受け付ける各種キーやボタン等のスイッチであり、画像表示部１８は、例えば携帯情報端末１に付属する液晶ディスプレイである。端末制御部１０は、携帯情報端末１のユーザが操作キー１７を操作すると、これに応じて各種処理部の機能を働かせる。また、各種処理部で行われる処理の過程又は結果に関する情報は、必要に応じて画像表示部１８に表示される。ユーザは画像表示部１８の表示を確認しながら操作キー１７を操作し、端末制御部１０を動作させることができる。
【００２８】
一方、サーバ１００はサーバ制御部２０を有しており、このサーバ制御部２０もまた、サーバ１００において上記のＣＰＵを用いて実現することができる。またサーバ１００は画像データベース３０を保有しており、この画像データベース３０は、例えば上記のハードディスクを用いて実現されている。なお画像データベース３０には、システムにおいてオリジナル（原画像）となる複数の画像データがその画像特徴量とともに予め登録（記録）されているものとする。
【００２９】
サーバ制御部２０には、各種処理部として検索用データ受信部２２、画像検索処理部２４及び検索結果送信部２６が組み込まれている。このうち検索用データ受信部２２は、携帯情報端末１から送信される画像特徴量のデータを受信する処理を実行する。また画像検索処理部２４は、受信した画像特徴量データに基づき、画像データベース３０内から対応（マッチ）する画像データを検索する処理を実行する。検索結果送信部２６は、検索で得られた結果（商品名、商品番号等）を携帯情報端末１に送信する処理を実行する。
【００３０】
次に、本実施形態の画像処理システムにより実行される画像処理の内容について説明する。また以下の説明により、本発明の画像処理方法を実行するための各工程の内容についても明らかとなる。
【００３１】
本実施形態の画像処理システムは主に、（１）撮像して得た画像（カラー画像）から画像特徴量を抽出する処理、（２）抽出した画像特徴量に基づいて画像検索（画像のマッチング）を行う処理の２つを実行することができる。なお、これら（１）と（２）の処理の間には、携帯情報端末１からネットワーク１０２を通じて画像特徴量データをサーバ１００に送信する送信処理が実行される。
【００３２】
先ず、上記（１）の撮像して得たカラー画像から画像特徴量を抽出する処理とともに、画像特徴量データを送信するまでの処理について説明する。ここまでの処理は、携帯情報端末１の各種処理部を用いて実行することができる。
【００３３】
〔携帯情報端末の処理〕
図３は、携帯情報端末１の端末制御部１０により実行される端末画像処理の一例を示すフローチャートである。この処理では、カラー画像の撮像からその加工、画像特徴量の抽出、そして画像特徴量データの送信までの処理が順に行われる。以下、手順例に沿って説明する。
【００３４】
〔撮像処理〕
ステップＳ１０：先ず端末制御部１０は、撮像処理を実行する。この処理では、端末制御部１０は上記の撮像処理部１１にて撮像アプリケーションを実行し、図示しないカメラモジュールを用いた撮像による画像の取得を行う。なお、具体的な撮像手法の例については、別の図面を参照しながら後述する。
【００３５】
〔画像サイズ加工処理〕
ステップＳ２０：次に端末制御部１０は、画像サイズ加工処理を実行する。この処理では、端末制御部１０は上記の画像加工処理部１２にて画像加工アプリケーションを実行し、撮像して得られたカラー画像のサイズを加工する。特に図示していないが、ここでは撮像して得られたカラー画像の必要領域を確定するため、画像サイズを例えば２２５×２２５ピクセルのサイズに加工するものとする。なお画像サイズの加工は、例えばカメラモジュールによる標準的な撮像サイズ（例えば２４０×３２０）をベースとして、その上下及び左右の画素を均等にトリミングし、画像サイズを２２５×２２５ピクセルにするものとする。
【００３６】
〔画像特徴量抽出処理〕
ステップＳ３０：また端末制御部１０は、画像特徴量抽出処理を実行する。この処理では、端末制御部１０は先の画像サイズ加工処理（ステップＳ２０）で加工した２２５×２２５ピクセルのカラー画像を例えばＲＧＢ（原色）各版の画像に分解し、さらに各版画像をブロック領域に分割する。さらに端末制御部１０は、分割したブロック領域をフィルタ処理してエッジ方向を判定するとともに、その判定結果に基づいて画像特徴量を抽出する。なお、具体的な抽出手法の例については、別の図面を参照しながら後述する。
【００３７】
〔データ送信処理〕
ステップＳ４０：そして端末制御部１０は、データ送信処理を実行する。この処理では、端末制御部１０は先の画像特徴量抽出処理（ステップＳ３０）で抽出した画像特徴量のデータを送信する。
【００３８】
〔撮像処理の例〕
図４は、携帯情報端末１を用いて行われる撮像の様子を示す斜視図である。上記の撮像処理（ステップＳ１０）の実行に伴い、端末制御部１０は撮像アプリケーションを起動する。これに伴い、携帯情報端末１の図示しないカメラモジュールがアクティブとなる。
【００３９】
本実施形態の画像処理システムは、携帯情報端末１のユーザが例えば紙媒体として頒布された冊子Ｂ（カタログ、パンフレット、雑誌等）の商品見本をカメラで撮像し、そのデータを送信することで通信販売による商品の注文を行う、という商取引に適用することができる。
【００４０】
ユーザに頒布された冊子Ｂの紙面には、通信販売の商品見本となるカラーのサンプル画像Ｉｍとともにその説明書き（商品番号、商品の詳細、販売価格等）が印刷されている。そしてユーザは、携帯情報端末１に付属するカメラモジュールの撮像領域内に紙面上のサンプル画像Ｉｍを位置付けた状態で撮像を行う。このとき撮像領域は、例えば携帯情報端末１の画面上にリアルタイムで表示される。サンプル画像Ｉｍが撮像領域内に位置付けられた状態で、ユーザが携帯情報端末１のシャッターボタンを押下すると、携帯情報端末１においてサンプル画像Ｉｍを撮像したカラー画像が取得される。このとき取得されたカラー画像は、例えば携帯情報端末１の図示しないメモリ（ＲＡＭ）に格納される。
【００４１】
〔画像特徴量抽出処理〕
次に図５は、上述した画像特徴量抽出処理の内容をさらに詳細に示したフローチャートである。以下、図５のフローチャートに沿って処理の内容を説明する。
【００４２】
ステップＳ１００：先ず端末制御部１０は、ＲＧＢ各版画像エリア分割処理を実行する。この処理において、端末制御部１０は上記のように画像加工処理部１２にて画像加工アプリケーションを起動し、２２５×２２５ピクセルサイズのカラー画像をＲＧＢ各版の原色別の画像に分解する。さらに端末制御部１０は、分解したＲＧＢ各版の画像をそれぞれ９×９ピクセルサイズのブロック領域に分割する。これにより、ＲＧＢ各版の画像について、それぞれ２５×２５のブロック領域が形成されることになる（前処理工程）。
【００４３】
図６は、上述したＲＧＢ各版画像エリア分割処理の流れを連続的に示すイメージ図である。
【００４４】
図６中（Ａ）：処理開始時において、上記のようにカラー画像は２２５×２２５ピクセルサイズに加工されている。
【００４５】
図６中（Ｂ）：次に端末制御部１０は、カラー画像をＲ（赤）版画像、Ｇ（緑）版画像及びＢ（青）版画像の３原色別に分解する。なお分解された各版画像は、元のカラー画像と同じ２２５×２２５ピクセルサイズを維持している。
【００４６】
図６中（Ｃ）：そして端末制御部１０は、ＲＧＢ各版画像をさらに２５×２５のブロック領域に分割する。これにより各ブロックは、９×９ピクセルサイズとなる。
【００４７】
以上のＲＧＢ各版画像エリア分割処理を経て、次に端末制御部１０はＲＧＢ各版別に画像特徴量データを作成する。以下、画像特徴量データの作成手順について詳しく説明する。
【００４８】
〔図５：画像特徴量抽出処理を参照〕
ステップＳ１０２：端末制御部１０は、次に抽出の対象となる版画像を選択する。なお、初回の抽出であれば例えばＲ版画像を選択するものとし、２回目の抽出ではＧ版画像、３回目の抽出ではＢ版画像をそれぞれ選択するものとする。
【００４９】
ステップＳ１０４：次に端末制御部１０は、先のＲＧＢ各版画像エリア分割処理（ステップＳ１００）で２５×２５（＝６２５ブロック）に分割したブロック領域ごとに画素平均値を算出する。画素平均値は、例えば各ブロック領域に含まれる全ての画素（９×９＝８１画素）の明度（輝度）の平均値として算出することができる。
【００５０】
〔エッジ方向の判定〕
ステップＳ１０５：端末制御部１０は、今回の注目エリアとなる次のブロック領域を指定する。初回であれば、版画像内の左上角のブロック領域が今回の注目エリアとなる。以下同様に、２回目であれば最上段の左から２つ目のブロック領域が今回の注目エリアとなり、３回目であれば最上段の左から３つ目のブロック領域となる。そして、２５回目では右上角のブロック領域が今回の注目エリアとなり、次の２６回目では２段目の左端に位置するブロック領域が今回の注目エリアとなる。
【００５１】
ステップＳ１０６：次に端末制御部１０は、今回の注目エリアに指定したブロック領域についてエッジ方向を判定する（判定処理工程）。具体的には、以下の手順を実行する。
【００５２】
（１）端末制御部１０は、今回の注目エリアに該当する１つのブロック領域とその周辺に隣接する他の８つのブロック領域を合わせて選択する。なお、注目エリアが画像の周縁に位置するブロック領域である場合、隣接する他のブロック領域は５つ（注目エリアが縁辺のブロック領域の場合）又は３つ（注目エリアが角のブロック領域の場合）となる。
【００５３】
（２）次に端末制御部１０は、選択したブロック領域（９つ、６つ、４つ）に対して例えばＰｒｅｗｉｔｔフィルタ（微分フィルタ）を用いた処理を行い、今回の注目エリアとなるブロック領域についてエッジ方向を判定する。
【００５４】
図７は、分割されたＲ版画像から９つのブロック領域を選択し、Ｐｒｅｗｉｔｔフィルタ処理を行った場合の一例を示す図である。なお図示していないが、Ｇ版画像及びＢ版画像についても同様にブロック領域を選択し、Ｐｒｅｗｉｔｔフィルタ処理が行われるものとする。
【００５５】
図７中（Ａ）：上記のようにＲ版画像は、２５×２５のブロック領域に分割されている。なお各ブロック領域は、９×９ピクセルサイズである。このように、本実施形態では個々のブロック領域を９×９ピクセルサイズに調整することで、例えば以下の利点が得られる。
【００５６】
（１）元のカラー画像に含まれるノイズの影響を抑えることができる。すなわち、９×９ピクセル程度のサイズを確保することで、ブロック領域内の全体でみた場合にノイズの影響を希釈することができる。
【００５７】
（２）撮像時の画像の細かな位置ずれに対応することができる。通常、撮像された画像がサーバ１００側の画像データベース３０に登録されているオリジナルの画像とピクセル単位で一致することはほとんどないため、この後の画像検索において９×９ピクセルサイズのブロック領域を最小の比較単位とすることにより、撮像時の画像の位置ずれをある程度まで吸収することができる。
【００５８】
（３）大まかな特徴を表すことができる。すなわち、９×９ピクセル程度のサイズを確保することで、ブロック領域内には画像としての大まかな特徴（色味、明るさ、エッジ方向等の特徴）が現れやすくなるため、その後の比較が容易である。
【００５９】
（４）検索スピードを考慮した場合、ブロック領域分割によりデータ容量を抑えることができる。すなわち、ＲＧＢ各版画像のサイズは２２５×２２５ピクセルサイズであるが、これを２５×２５のブロック領域に分割することで、演算処理に用いるデータ容量を削減することができる。これにより、後の画像検索時の処理速度を向上することができる。
【００６０】
図７中（Ｂ）：あるブロック領域を注目エリア（図中に「★」印を付す）に指定した場合、その周辺に隣接する他の８つのブロック領域が合わせて選択される。この時点で各ブロック領域には、それぞれの画素平均値が求められている。そして、選択された９つのブロック領域に対して上記のＰｒｅｗｉｔｔフィルタ処理を行い、注目エリアのエッジ方向を判定する。
【００６１】
図８は、Ｐｒｅｗｉｔｔフィルタを用いたエッジ方向の判定結果を示す図である。各ブロック領域について判定されるエッジ方向は、図８中（Ａ）〜（Ｈ）に示されるように、上方向（「方向０」とする）、左上方向（「方向１」とする）、左方向（「方向２」とする）、左下方向（「方向３」とする）、下方向（「方向４」とする）、右下方向（「方向５」とする）、右方向（「方向６」とする）又は右上方向（「方向７」とする）のいずれかとなる。
【００６２】
またＰｒｅｗｉｔｔフィルタを用いたエッジ方向の判定は、例えば図示しない３×３マトリクスのマスクパターンを８種類用いて行うことができる。なお、マスクパターンを用いたテンプレートマッチングによるエッジ方向の抽出手法には公知のものを適用できるため、ここではその詳細を省略する。
【００６３】
〔図５：画像特徴量抽出処理を参照〕
ステップＳ１０８：今回の注目エリアとなるブロック領域についてエッジ方向を判定すると、次に端末制御部１０は、判定結果が上記の「方向０」，「方向１」，「方向２」のいずれかに該当するか否かを判断する。これらいずれかに該当していれば（Ｙｅｓ）、端末制御部１０は次にステップＳ１１０を実行する。
【００６４】
ステップＳ１１０：この場合、端末制御部１０は今回の注目エリアを「Ａグループ」に属するものとし、そのブロック領域に対して「Ａグループの配列」にフラグ１を立てる処理を実行する。なお、今回の注目エリアが「Ａグループ」に属していない場合、「Ａグループの配列」においてそのブロック領域のフラグは０となる（以下も同様）。
【００６５】
ここで、本実施形態では８つのエッジ方向（「方向０」〜「方向７」）を４つのグループ（「Ａグループ」、「Ｂグループ」、「Ｃグループ」及び「Ｄグループ」）に分類しており、このうち「方向０」，「方向１」，「方向２」を「Ａグループ」とし、「方向２」，「方向３」，「方向４」を「Ｂグループ」、「方向４」，「方向５」，「方向６」を「Ｃグループ」、そして「方向６」，「方向７」，「方向０」を「Ｄグループ」としている。このように、８つのエッジ方向（「方向０」〜「方向７」）を４つのグループ（Ａ〜Ｄ）に分類した上で、Ａ〜Ｄグループのそれぞれに属するか否かでブロック毎のエッジ方向を二値化する（フラグの０又は１で表す）ことにより、全体としてデータ容量を削減しつつ、グループ別に集約した形で各エッジ方向（「方向０」〜「方向７」）の特徴を表すことができる。
【００６６】
先のステップＳ１０８を含め、以下のステップＳ１１２，Ｓ１１６，Ｓ１２０では、今回の注目エリアとなるブロック領域について判定されたエッジ方向が「Ａグループ」〜「Ｄグループ」のそれぞれに属するか否かを判断するものであり、属する場合はそのグループの配列にフラグ１が立つことになる。なお、「Ａグループ」〜「Ｄグループ」別の配列及びそのフラグについては別の図面を用いてさらに後述する。
【００６７】
上記のステップＳ１１０を実行するか、もしくは先のステップＳ１０８でいずれの方向にも該当しないと判断した場合（ステップＳ１０８：Ｎｏ）、端末制御部１０は次にステップＳ１１２を実行する。
【００６８】
ステップＳ１１２：次に端末制御部１０は、判定結果が上記の「方向２」，「方向３」，「方向４」のいずれかに該当するか否かを判断する。これらいずれかに該当していれば（Ｙｅｓ）、端末制御部１０は次にステップＳ１１４を実行する。
【００６９】
ステップＳ１１４：この場合、端末制御部１０は今回の注目エリアを「Ｂグループ」に属するものとし、そのブロック領域に対して「Ｂグループの配列」にフラグ１を立てる処理を実行する。
【００７０】
上記のステップＳ１１４を実行するか、もしくは先のステップＳ１１２でいずれの方向にも該当しないと判断した場合（ステップＳ１１２：Ｎｏ）、端末制御部１０は次にステップＳ１１６を実行する。
【００７１】
ステップＳ１１６：次に端末制御部１０は、判定結果が上記の「方向４」，「方向５」，「方向６」のいずれかに該当するか否かを判断する。これらいずれかに該当していれば（Ｙｅｓ）、端末制御部１０は次にステップＳ１１８を実行する。
【００７２】
ステップＳ１１８：この場合、端末制御部１０は今回の注目エリアを「Ｃグループ」に属するものとし、そのブロック領域に対して「Ｃグループの配列」にフラグ１を立てる処理を実行する。
【００７３】
上記のステップＳ１１８を実行するか、もしくは先のステップＳ１１６でいずれの方向にも該当しないと判断した場合（ステップＳ１１６：Ｎｏ）、端末制御部１０は次にステップＳ１２０を実行する。
【００７４】
ステップＳ１２０：次に端末制御部１０は、判定結果が上記の「方向６」，「方向７」，「方向０」のいずれかに該当するか否かを判断する。これらいずれかに該当していれば（Ｙｅｓ）、端末制御部１０は次にステップＳ１２２を実行する。
【００７５】
ステップＳ１２２：この場合、端末制御部１０は今回の注目エリアを「Ｄグループ」に属するものとし、そのブロック領域に対して「Ｄグループの配列」にフラグ１を立てる処理を実行する。
【００７６】
上記のステップＳ１２２を実行するか、もしくは先のステップＳ１２０でいずれの方向にも該当しないと判断した場合（ステップＳ１２０：Ｎｏ）、端末制御部１０は次にステップＳ１２３を実行する。
【００７７】
ステップＳ１２３：そして端末制御部１０は、全てのブロック領域についてステップＳ１０６〜ステップＳ１２０（場合によりステップＳ１２２）までの処理が完了したか否かを確認する。未だ完了していなければ（Ｎｏ）、端末制御部１０はステップＳ１０５に戻り、次の注目エリアとなるブロック領域を指定する。そして端末制御部１０は、次の注目エリアとなるブロック領域についてステップＳ１０６〜ステップＳ１２０（場合によりステップＳ１２２）までの処理を実行する。
【００７８】
図９は、ブロック領域ごとのエッジ方向の判定結果とグループ別の配列の例を示した概念図である。なお図９中、ブロック領域（２５×２５＝６２５ブロック）の全ては示されておらず、一部を「…」で表して省略している。
【００７９】
図９中（Ｏ）：ここでは個々のブロック領域について、エッジ方向の判定結果が「０」〜「７」の数値で示されている。なお「０」〜「７」の数値は、上記の「方向０」〜「方向７」を表している。
【００８０】
〔Ａグループの配列〕
図９中（Ａ）：ここでは個々のブロック領域について、「Ａグループの配列」にフラグ１を立てた箇所がグレー（網掛け）で示されている。すなわち、個々のブロック領域について、そのエッジ方向の判定結果が「方向０」，「方向１」，「方向２」のいずれかに該当する場合、そのブロック領域は「Ａグループ」に属することとなり、その位置にフラグ１が立てられる（図５中のステップＳ１１０）。なお、白抜きのブロック領域はフラグ０である（以下も同様）。
【００８１】
〔Ｂグループの配列〕
図９中（Ｂ）：次に、ここでは個々のブロック領域について、「Ｂグループの配列」にフラグ１を立てた箇所がグレー（網掛け）で示されている。個々のブロック領域について、そのエッジ方向の判定結果が「方向２」，「方向３」，「方向４」のいずれかに該当する場合、そのブロック領域は「Ｂグループ」に属することとなり、その位置にフラグ１が立てられる（図５中のステップＳ１１４）。
【００８２】
〔Ｃグループの配列〕
図９中（Ｃ）：同様に、ここでは個々のブロック領域について、「Ｃグループの配列」にフラグ１を立てた箇所がグレー（網掛け）で示されている。個々のブロック領域について、そのエッジ方向の判定結果が「方向４」，「方向５」，「方向６」のいずれかに該当する場合、そのブロック領域は「Ｃグループ」に属することとなり、その位置にフラグ１が立てられる（図５中のステップＳ１１８）。
【００８３】
〔Ｄグループの配列〕
図９中（Ｄ）：そして、ここでは個々のブロック領域について、「Ｄグループの配列」にフラグ１を立てた箇所がグレー（網掛け）で示されている。個々のブロック領域について、そのエッジ方向の判定結果が「方向６」，「方向７」，「方向０」のいずれかに該当する場合、そのブロック領域は「Ｄグループ」に属することとなり、その位置にフラグ１が立てられる（図５中のステップＳ１２２）。
【００８４】
以上のように、あるブロック領域についてエッジ方向の判定結果が「方向０」であれば、そのブロック領域には「Ａグループの配列」と「Ｄグループの配列」にそれぞれフラグ１が立つことになる。一方、あるブロック領域についてエッジ方向の判定結果が「方向１」であれば、そのブロック領域には「Ａグループの配列」だけにフラグ１が立つことになる。同様に、あるブロック領域についてエッジ方向の判定結果が「方向２」であれば、そのブロック領域には「Ａグループの配列」と「Ｂグループの配列」にそれぞれフラグ１が立つことになり、あるブロック領域についてエッジ方向の判定結果が「方向３」であれば、そのブロック領域には「Ｂグループの配列」だけにフラグ１が立つことになる。さらに、あるブロック領域についてエッジ方向の判定結果が「方向４」であれば、そのブロック領域には「Ｂグループの配列」と「Ｃグループの配列」にそれぞれフラグ１が立つことになり、あるブロック領域についてエッジ方向の判定結果が「方向５」であれば、そのブロック領域には「Ｃグループの配列」だけにフラグ１が立つことになる。そして、あるブロック領域についてエッジ方向の判定結果が「方向６」であれば、そのブロック領域には「Ｃグループの配列」と「Ｄグループの配列」にそれぞれフラグ１が立つことになり、あるブロック領域についてエッジ方向の判定結果が「方向７」であれば、そのブロック領域には「Ｄグループの配列」だけにフラグ１が立つことになる。
【００８５】
いずれの場合も、フラグ１を立てた箇所は二値コードの「１」で表され、フラグを立てない箇所は二値コードの「０」で表される。その結果、２５×２５の全てのブロック領域は、各グループ別に「０」又は「１」の二値コードで表されることになる。
【００８６】
例えば、図９中（Ａ）に示される例では、画像内のブロック領域を左上から右下までの並び順で二値コードをシリアルに表すと、「１，０，・・・，１，０，０，１，・・・，１，１，１，０，・・・，０，０，・・・・・・・，１，１，・・・，０，１，１，１，・・・，１，１，１，１，・・・，０，０」となる。なお、途中の「・・・」は省略した部分である。
【００８７】
このように、本実施形態では８つあるエッジ方向（「方向０」〜「方向７」）を４つのグループに分類し、個々のブロック領域が各グループに属するか否かを二値コード化して表すことにより、グループ別に表された二値のデータを画像特徴量として抽出することができる（抽出処理工程）。
【００８８】
〔図５：画層特徴量抽出処理を参照〕
ステップＳ１２４：端末制御部１０は、ここまでの処理がＲＧＢ各版画像の全てについて完了したか否かを確認する。未だ全版について完了していなければ（Ｎｏ）、端末制御部１０はステップＳ１０２に戻って次の版画像を選択し、ステップＳ１０４〜ステップＳ１２３までの手順を実行する。この後、全ての版画像について処理が完了すると（ステップＳ１２４：Ｙｅｓ）、端末制御部１０は次のステップＳ１２６に進む。
【００８９】
ステップＳ１２６：端末制御部１０は、画像特徴量データ格納処理を実行する。この処理では、端末制御部１０は先のステップＳ１０８〜ステップＳ１２０を通じてＲＧＢ各版画像別に得られた二値データの画像特徴量をメモリに格納する。具体的には、画像内のブロック領域を左上から右下までの並び順で、かつ、Ｒ版画像の「Ａグループ」→Ｇ版画像の「Ａグループ」→Ｂ版画像の「Ａグループ」→Ｒ版画像の「Ｂグループ」→Ｇ版画像の「Ｂグループ」→Ｂ版画像の「Ｂグループ」→Ｒ版画像の「Ｃグループ」→Ｇ版画像の「Ｃグループ」→Ｂ版画像の「Ｃグループ」→Ｒ版画像の「Ｄグループ」→Ｇ版画像の「Ｄグループ」→Ｂ版画像の「Ｄグループ」の順にそれぞれの二値コードをシリアルに並べて連結し、これらを画像特徴量データとして格納する。このように、二値コードをシリアルデータとして格納することにより、データの位置情報（ブロック領域の位置）も画像特徴量として使用することができる。
【００９０】
以上の手順を終えると、端末制御部１０は端末画像処理（図３）に復帰し、次にデータ送信処理（ステップＳ４０）を実行する。これにより、メモリに格納された画像特徴量のデータがネットワーク１０２を経由してサーバ１００に送信されることになる。
【００９１】
〔サーバ側での処理〕
次に、サーバ１００において実行される処理について説明する。すなわちサーバ制御部２０は、携帯情報端末１から送信された画像特徴量のデータに基づき、画像データベース３０から該当する画像データを検索する処理を実行する。
【００９２】
〔画像検索処理〕
図１０は、画像検索処理の手順例を示すフローチャートである。以下、画像検索処理の内容について、その手順に沿って説明する。
【００９３】
ステップＳ２００：サーバ制御部２０は、検索用画像特徴量を取得する。すなわちサーバ制御部２０は、上記の検索用データ受信部２２にて受信プログラムを実行し、携帯情報端末１から送信された画像特徴量のデータを受信すると、そのデータを検索用画像特徴量として取得する。
【００９４】
ステップＳ２０２：次にサーバ制御部２０は、画像データベース３０から比較対象画像特徴量を取得する。すなわちサーバ制御部２０は、上記の画像検索処理部２４にて検索プログラムを実行し、画像データベース３０にアクセスして今回の比較対象となる画像特徴量のデータを取得する。なお画像データベース３０には、予め全ての比較対象となるオリジナル画像について、それぞれの画像特徴量データが合わせて登録されている。このとき登録されているオリジナルの画像特徴量データは、上述した携帯情報端末１による画像特徴量の抽出手法と同じ手法によって求められたものである。
【００９５】
ステップＳ２０４：サーバ制御部２０は、今回の比較対象となる画像特徴量と検索用画像特徴量とをそのまま引き算（ＮＯＴ演算）する。
【００９６】
ステップＳ２０６：そしてサーバ制御部２０は、先のステップＳ２０４で引き算した結果の合計値（サム結果値）をバッファメモリにひとまず保存する。なお、画像特徴量が相互に近似しているほど、引き算した結果の合計値（画像距離値）は小さくなり、逆に画像特徴量が乖離していれば、それだけ引き算した結果の合計値（画像距離値）は大きくなる。
【００９７】
ステップＳ２０８：サーバ制御部２０は、全てのオリジナル画像について比較（引き算）を完了したか否かを確認する。未だ全てについて完了していなければ（Ｎｏ）、サーバ制御部２０はステップＳ２０２に戻って次の比較対象画像特徴量を取得し、先のステップＳ２０４，Ｓ２０６の演算を繰り返す。この後、画像データベース３０内の全てのオリジナル画像について比較を完了すると（Ｙｅｓ）、サーバ制御部２０は次のステップＳ２１０に進む。
【００９８】
ステップＳ２１０：サーバ制御部２０は、引き算の合計値が最小となったオリジナル画像を検索ヒット画像として特定する。このとき引き算の合計値が最小となったオリジナル画像は、上記のように検索対象の画像と最も画像特徴量が近似したものである。
【００９９】
ステップＳ２１２：そしてサーバ制御部２０は、検索ヒット画像として特定したオリジナル画像を検索結果として出力する。このときサーバ制御部２０は、検索結果送信部２６にて送信プログラムを実行し、ネットワーク１０２を通じて携帯情報端末１にオリジナルの画像データを送信する。またサーバ制御部２０は、冊子Ｂに記載された商品見本の購入ページに対応するＵＲＬを送信する。
【０１００】
この後、例えば携帯情報端末１の画像表示部１８に表示されたオリジナルの画像をユーザが確認し、自己が購入する予定の商品に間違いないことを確認すると、送信されたＵＲＬにアクセスして商品購入の手続を実行することができる。
【０１０１】
以上のように、本実施形態の画像処理システムによれば、画像特徴量のデータ容量を少なくすることができるため、携帯情報端末１に搭載されたシンプルなハードウェアリソースであっても、容易に画像特徴量を抽出することができる。特に、携帯情報端末１のようなデバイスは、機種ごとの違いや個体差、撮像環境（周囲の明るさや照明）の違いによって撮像されたカラー画像の色（ＲＧＢ値）に違いが現れやすいが、本実施形態ではＲＧＢ各版画像別にエッジ方向を判定し、その結果を二値化して画像特徴量を抽出しているため、色の違いに大きく影響されることなく、高精度に画像特徴量を抽出することができる。
【０１０２】
また、画像特徴量の抽出はエッジ方向の判定結果を二値コード化するだけであり、その演算量が少ないため、携帯情報端末１のようなシンプルなハードウェアリソースであっても、容易に演算処理することができる。
【０１０３】
また画像データベース３０には、例えば携帯情報端末１の機種ごとに色の違いを考慮して何通りもの画像特徴量を用意しておく必要がなく、単純にオリジナル画像とその画像特徴量を登録しておくだけでよい。これにより、画像データベース３０の必要容量を削減することができるとともに、事前のデータ登録作業を簡素化することができる。したがって、商品カタログ等を用いた通信販売に本実施形態の画像処理システムを適用すれば、それだけ事前の準備作業が容易であり、その作業効率を向上することができる。
【０１０４】
本発明は上述した一実施形態に制約されることなく、種々に変形して実施することができる。例えば、一実施形態では携帯情報端末１とサーバ１００を用いてシステムを構築しているが、１台のコンピュータを用いて画像処理システムを構築してもよい。また、ネットワーク１０２はインターネットのような公衆通信網に限らず、ローカルエリアネットワーク（ＬＡＮ）であってもよい。
【０１０５】
また、一実施形態では携帯情報端末１を例に挙げているが、カメラを用いた撮像や画像特徴量データを抽出するまでの処理は、例えばパーソナルコンピュータにＵＳＢカメラを接続した状態で実行することもできるし、逆にデジタルカメラのような撮像デバイスのリソースを用いて実行することもできる。
【０１０６】
さらに、エッジ方向を判定する手法には、一般的な微分フィルタを用いる他の手法（例えばＫｉｒｉｓｈフィルタ、Ｓｏｂｅｌフィルタ、Ｒｏｂｉｎｓｏｎフィルタ等）を適用することもできる。
【０１０７】
また一実施形態では、カラー画像をＲＧＢ各版画像に分解した上で画像処理を行っているが（図５中のステップＳ１００、図６）、本発明ではＲＧＢだけでなく、ＣＭＹＫの各版画像に分解して画像処理を行ってもよい。この場合も同様に、撮像時の環境によって現れる色の違いを解消し、画像特徴量を高精度に抽出することができる。ただし、一実施形態のようにＲＧＢ各版画像を用いた場合は最もデータ容量を削減することができるという利点があり、その点で一実施形態の手法は極めて優位である。
【符号の説明】
【０１０８】
１    携帯情報端末
１０    端末制御部
１１    撮像処理部
１２    画像加工処理部
１３    画像特徴量抽出処理部
１４    データ送信処理部
２０    サーバ制御部
２２    検索用データ受信部
２４    画像検索処理部
２６    検索結果送信部
３０    画像データベース
１００  サーバ
１０２  ネットワーク
【図２】
2011028374.tif 000003
【図３】
2011028374.tif 000004
【図５】
2011028374.tif 000005
【図９】
2011028374.tif 000006
【図１０】
2011028374.tif 000007
【図１】
2011028374.tif 000008
【図４】
2011028374.tif 000009
【図６】
2011028374.tif 000010
【図７】
2011028374.tif 000011
【図８】
2011028374.tif 000012