色ヒストグラムに基づき画像領域を記述する方法およびシステム
【課題】色ヒストグラムに基づき画像領域を記述する方法とシステムを提供する。
【解決手段】色ヒストグラムに基づいて画像領域を記述する方法は次のステップを有する。量子化において特定色範囲と特定色範囲の外の色とを異なる方法で処理して、画像領域を量子化色領域に量子化する色量子化ステップ。量子化色領域に従い一つ以上の色ヒストグラムを計算する色ヒストグラム計算ステップ。一つ以上の色ヒストグラムを使用してユニークベクトルを生成するヒストグラムアセンブルステップ。
【解決手段】色ヒストグラムに基づいて画像領域を記述する方法は次のステップを有する。量子化において特定色範囲と特定色範囲の外の色とを異なる方法で処理して、画像領域を量子化色領域に量子化する色量子化ステップ。量子化色領域に従い一つ以上の色ヒストグラムを計算する色ヒストグラム計算ステップ。一つ以上の色ヒストグラムを使用してユニークベクトルを生成するヒストグラムアセンブルステップ。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は画像処理に関する。詳細には、色ヒストグラムに基づき画像領域を記述する方法およびシステム、一つ以上の画像からのオブジェクトを登録する方法およびシステム、並びに、その登録に基づき画像からオブジェクトを検出する方法およびシステムに関する。
【背景技術】
【0002】
画像記述技術は、コンテンツベース画像検出またはコンテンツベース画像検索の基本である。コンピュータにより自動抽出される画像の視覚的特徴は、人間が知覚する画像コンテンツと劇的に異なり、コンピュータが一つの画像と他の画像を区別するために処理および使用可能な特徴を画像から抽出するために、画像記述技術が必要とされる。
【0003】
従来、色、テクスチャおよび形状など、伝統的な低レベルの視覚的特徴が画像記述に使用されている。しかし、本発明は、主として、色情報に基づく画像記述にフォーカスする。
【0004】
色情報に基づく画像記述は、画像記述が画像の索引付けおよび検索の基本に使用されるディジタル画像ライブラリのような多くのアプリケーションに有用である。
【0005】
実用的かつ効果的な画像記述のために、画像から特徴(色情報)を抽出した結果は、(1)異なる画像の区別に充分、(2)特定の種類の画像変換に対して不変、(3)ノイズに反応しない、(4)計算が容易、であるべきである。
【0006】
しかし、色の特徴は、大抵、光源およびカメラの受光素子のような多くの要因によって乱されるため、色情報に基づく画像記述は稀にオブジェクト検出に適用される。例えば、米国特許第6,850,639号明細書に開示された画像の特徴を色情報として使用する画像記述方法において、色の特徴は、照明およびカメラのパラメータ設定(ホワイトバランス、焦点距離など)によって乱される。異なる照明または異なるカメラ設定で撮影された画像の同一オブジェクトは互いに区別されないだろう。
【0007】
従って、照明およびカメラ設定などに大きく影響されず、色情報に基づき画像領域を正確に記述することができる技術が必要になる。照明およびカメラ設定などの影響が少ない本発明の画像記述技術に基づけば、当然、高い検出精度が得られる。
【発明の概要】
【0008】
上記の従来技術に存在する技術的課題を考慮して、色ヒストグラムに基づき画像領域を記述する新しい方法およびシステムが提供される。それらは、上記の技術的課題を解決するだけではなく、オブジェクトの状態(posture)に対するロバスト性、色収差に対するロバスト性、および、回転不変性のような他の望ましい技術的効果をもたらす。
【0009】
色情報に基づく画像記述技術に従う画像検出において、高い検出精度に加え、オブジェクトの状態、色収差および回転不変性に対する充分なロバスト性を有することが望まれる。つまり、記述される画像領域のオブジェクトの状態、照明およびカメラ設定、並びに、画像領域の回転に関係なく、高い検出精度を保証することが望ましい。
【0010】
本発明の発明者は、色特徴が、大抵、光源およびカメラの受光素子など、多くの要因によって乱される理由が、白色、黒色、グレイ色が特別に処理されないことにあることを発見した。色情報に基づく現在の画像記述技術において、これらの色の情報は、黒色、グレイ色、グレイ色以外の色の中に隠される。まさに、これらの色の情報が光源およびカメラのパラメータ設定(ホワイトバランス、焦点距離など)に大きく影響される。
【0011】
この新発見に基づき、本発明は、画像領域の記述において、黒色、グレイ色および白色と、それら以外の色とを異なる方法で処理することを提案する。
【0012】
本発明の一つの面によると、色ヒストグラムに基づいて画像領域を記述する方法が提供される。その方法は、量子化において特定色範囲と特定色範囲の外の色とを異なる方法で処理して、画像領域を量子化色領域に量子化する色量子化ステップ、量子化色領域に従い一つ以上の色ヒストグラムを計算する色ヒストグラム計算ステップ、および、一つ以上の色ヒストグラムを使用してユニークベクトル(unique vector)を生成するヒストグラムアセンブルステップを備える。
【0013】
本発明の別の面によると、色ヒストグラムに基づいて画像領域を記述するシステムが提供される。そのシステムは、量子化において特定色範囲と特定色範囲の外の色とを異なる方法で処理して、画像領域を量子化色領域に量子化する色量子化部、量子化色領域に従い一つ以上の色ヒストグラムを計算する色ヒストグラム計算部、および、一つ以上の色ヒストグラムを使用してユニークベクトルを生成するヒストグラムアセンブル部を備える。
【0014】
本発明の別の面によると、一つ以上の画像からのオブジェクトを登録する方法が提供される。その方法は、一つ以上の画像上で登録すべき一つ以上のオブジェクト領域を指定し、一つ以上のオブジェクト領域それぞれについて、量子化において特定色範囲と特定色範囲の外の色とを異なる方法で処理して、オブジェクト領域を量子化色領域に量子化し、量子化色領域に従い一つ以上の色ヒストグラムを計算し、一つ以上の色ヒストグラムを使用してユニークベクトルを生成し、複数のベクトルが生成された場合、複数のベクトルから最終特徴ベクトルを計算し、オブジェクトについて最終特徴ベクトルを登録する。
【0015】
本発明の別の面によると、一つ以上の画像からのオブジェクトを登録するシステムが提供される。そのシステムは、一つ以上の画像上で、登録すべき一つ以上のオブジェクト領域を指定するための手段、一つ以上のオブジェクト領域それぞれについて、量子化において特定色範囲と特定色範囲の外の色とを異なる方法で処理して、オブジェクト領域を量子化色領域に量子化し、量子化色領域に従い一つ以上の色ヒストグラムを計算し、一つ以上の色ヒストグラムを使用してユニークベクトルを生成する手段、複数のベクトルが生成された場合、複数のベクトルから最終特徴ベクトルを計算する手段、および、オブジェクトについて最終特徴ベクトルを登録する手段を備える。
【0016】
本発明の別の面によると、上記の方法に従い登録されたオブジェクトの第一のベクトルに基づき、画像からオブジェクトを検出する方法が提供される。その方法は、画像から何らかの部分領域をクロップし、クロップされた部分領域それぞれについて、量子化において特定色範囲と特定色範囲の外の色とを異なる方法で処理して、部分領域を量子化色領域に量子化し、量子化色領域に従い一つ以上の色ヒストグラムを計算し、一つ以上の色ヒストグラムを使用して第二のベクトルを生成し、オブジェクトが部分領域に存在するかを判定するために第一のベクトルと第二のベクトルを比較する。
【0017】
本発明の別の面によると、オブジェクトを登録するシステムによって登録されたオブジェクトの第一のベクトルに基づき、画像からオブジェクトを検出するシステムが提供される。そのシステムは、画像から何らかの部分領域をクロップする手段、および、クロップされた部分領域それぞれについて、量子化において特定色範囲と特定色範囲の外の色とを異なる方法で処理して、部分領域を量子化色領域に量子化し、量子化色領域に従い一つ以上の色ヒストグラムを計算し、一つ以上の色ヒストグラムを使用して第二のベクトルを生成し、オブジェクトが部分領域に存在するかを判定するために、第一のベクトルと第二のベクトルを比較する手段を備える。
【0018】
本発明の方法およびシステムによれば、高い検出精度に加え、オブジェクトの状態、色収差および回転不変性に対する良好なロバスト性が得られる。検出精度、並びに、オブジェクトの状態、色収差および回転不変性に対するロバスト性の有用な効果を以下に詳細に説明する図17から図20に示す。
【0019】
本発明のさらなる特徴と利点は、図面を参照する以下の説明から明らかになるだろう。
【図面の簡単な説明】
【0020】
明細書の一部に組み込まれ、明細書の一部を構成する添付図面は、本発明の実施例を図示し、説明とともに本発明の原理を説明するために利用される。
【図1】本発明にかかる色ヒストグラムに基づいて画像領域を記述する演算装置の構成を示すブロック図。
【図2】本発明の一実施例にかかる色ヒストグラムに基づき画像領域を記述するシステムの一般的な構成を示す機能ブロック図。
【図3】本発明の一実施例にかかる色ヒストグラムに基づいて画像領域を記述する方法を示すフローチャート。
【図4】本発明の一実施例にかかる図3のステップS100における色量子化処理を示すフローチャート。
【図5】特定色範囲が破線で示されるHSV色空間の逆転した錐体を概略的に示す図。
【図6】特定色範囲が破線で示されるHSL色空間の双錐体を概略的に示す図。
【図7】HSL色空間における特定色範囲の量子化の一例を示す図。
【図8】HSV色空間における、ある特定の一般色範囲の量子化の一例を示す図。
【図9】量子化色領域を分割して生成された環状ブロックの一例を示す図。
【図10】ヒストグラムのビンの順序を示す図。
【図11】色ヒストグラムビン平滑化の効果を示す図。
【図12】量子化色領域の対応する分割ブロックから計算された各ヒストグラムに対して最終色ヒストグラムを計算する方法を示すフローチャート。
【図13】量子化色領域の各分割ブロックからの色ヒストグラムを集めてユニークベクトルにする方法を示すフローチャート。
【図14】ブロックの重み付けの一例を示す図。
【図15】本発明にかかる一つ以上の画像からのオブジェクトを登録する方法を示すフローチャート。
【図16】図15の方法に従い登録されたオブジェクトの特徴ベクトルに基づき画像からオブジェクトを検出する方法を示すフローチャート。
【図17】本発明のオブジェクト検出方法に従い取得された検出結果の一例を示す図。
【図18】オブジェクトの状態に関係なく、オブジェクト(犬の顔)が正確に検出されることを示す図。
【図19】色収差に関係なく、オブジェクト(犬の顔)が正確に検出されることを示す図。
【図20】オブジェクトの回転に関係なく、オブジェクト(犬の顔)が正確に検出されることを示す図。
【発明を実施するための形態】
【0021】
以下、本発明の実施例を図面を参照して詳細に説明する。
【0022】
説明において、用語「画像領域」は画像から選択された部分を意味する。当然、画像全体を画像領域として選択可能である。その場合、用語「画像領域」は画像全体を表す。
【0023】
説明において、用語「特定色範囲」は、HSLまたはHSV色空間における色範囲(立体)を意味し、純粋な黒色、グレイ色、白色だけを示さず、人の視覚により黒色、グレイ色、白色として知覚される(perceptible)色を含む。説明を簡略化するために、説明において、HSLまたはHSV色空間における特定色範囲外の各色を「一般色( common color)」と呼ぶ。一般色は、HSLまたはHSV色空間における立体であり特定色範囲の外の「一般色範囲(立体)」に属する。
【0024】
図1は本発明にかかる色ヒストグラムに基づき画像領域を記述するシステムを実現する演算装置の構成を示すブロック図である。簡潔にするため、システムは単一のコンピュータ機器に組み込まれるとして表示される。しかし、単一のコンピュータ機器に組み込まれるか、ネットワークシステムとして複数のコンピュータ機器に組み込まれるかに関係なく、システムは有効である。
【0025】
図1に示すように、コンピュータ装置100は、色ヒストグラムに基づき画像領域を記述する処理を実現するために使用される。コンピュータ装置100は、CPU101、チップセット102、RAM103、ストレージ制御部104、表示制御器105、ハードディスクドライブ(HDD)106、CD-ROMドライブ107、ディスプレイ108を備える。コンピュータ装置100は、CPU101とチップセット102の間に接続された信号線111、チップセット102とRAM103の間に接続された信号線112、チップセット102と種々の周辺装置の間に接続された周辺装置バス113を備える。さらに、ストレージ制御部104とHDD106の間に接続された信号線114、ストレージ制御部104とCD-ROMドライブ107の間に接続された信号線115、並びに、表示制御部105とディスプレイ108の間に接続された信号116を備える。
【0026】
クライアント120は、直接またはネットワーク130を介してコンピュータ装置100に接続される。クライアント120は画像領域記述タスクをコンピュータ装置100に送信し、コンピュータ装置100は画像領域を記述するための特徴ベクトルをクライアント120に返す。
【0027】
図2は色ヒストグラムに基づき画像領域を記述する、各モジュール部から構成されるシステムの一般的な構成を示すブロック図である。
【0028】
図2に示すように、色ヒストグラムに基づき画像領域を記述する画像領域記述システム200は次の構成を有する。色量子化部201は、量子化において特定色範囲と特定色範囲外の色を異なる方法で処理して画像領域を量子化色領域に量子化する。色ヒストグラム計算部203は、量子化色領域に従い一つ以上の色ヒストグラムを計算する。ヒストグラムアセンブル部205は、一つ以上の色ヒストグラムを使用してユニークベクトルを生成する。
【0029】
別の実施例において、画像領域記述システム200は、さらに、量子化色領域を複数の画像ブロックに分割するブロック分割部を有する。この場合、色ヒストグラム計算部203は複数の画像ブロックそれぞれの色ヒストグラムを計算し、ヒストグラムアセンブル部205は計算された色ヒストグラムを使用してユニークベクトルを生成する。
【0030】
別の実施例において、画像領域記述システム200は、さらに、画像領域を複数の画像ブロックに分割するブロック分割部を有する。この場合、色量子化部201は、複数の画像ブロックそれぞれに量子化を実行し、複数の画像ブロックを含む量子化色領域を形成する。色ヒストグラム計算部203は複数の画像ブロックそれぞれの色ヒストグラムを計算し、ヒストグラムアセンブル部205は計算された色ヒストグラムを使用してユニークベクトルを生成する。
【0031】
上記の色量子化部201、色ヒストグラム計算部203、ヒストグラムアセンブル部205、ブロック分割部は、以下に説明する処理を実現する好適なモジュール例で、ハードウェアまたはソフトウェアにより実現可能である。上記では、種々のステップを実現するモジュールを余すすところなく説明したわけではない。しかし、ある特定の処理を実行するステップがある場合、当該処理を実現するための対応する機能モジュールまたはユニットが存在する。
【0032】
図3は本発明の一実施例にかかる色ヒストグラムに基づき画像領域を記述する方法を示すフローチャートである。その方法は次のステップを有する。色量子化ステップ(S100)は、量子化において特定色範囲と特定色範囲外の色を異なる方法で処理して画像領域を量子化色領域に量子化する。色ヒストグラム計算ステップ(S300)は、量子化色領域に従い色ヒストグラムを計算する。ヒストグラムアセンブルステップ(S400)は、色ヒストグラムを使用してユニークベクトルを生成する。
【0033】
ステップS100において、ユーザにより選択された、または、コンピュータシステムにより自動的に選択された画像領域が入力される。例えば、入力画像領域は、30×30画素の領域である。つまり、画像領域は30行かつ30列の画素を有する。画像領域の大きさは、40×60画素または100×100画素などの任意の大きさであり、30×30画素という大きさは一例に過ぎない。入力画像領域は、量子化色領域に量子化される。量子化処理において、特定色範囲と特定色範囲外の色は異なる方法で処理される。とくに、人の視覚により黒色、グレイ色、白色として知覚される色を含む特定色範囲がHSVまたはHSL色空間から抽出される。抽出された特定色範囲および特定色範囲外の色に対する異なる量子化に基づき、入力画像領域は量子化色領域に量子化される。
【0034】
図4は本発明の一実施例にかかる図3のステップS100における色量子化処理を示すフローチャートである。
【0035】
まず、ステップS110において、画像領域の画素のRGB色空間の色がHSVまたはHSL色空間に変換される。
【0036】
HSLおよびHSVは、RGB色モデルにおける点の、最も一般的な二つの円柱座標表現であり、RGBモデルのデカルト表現よりも視覚に適合するようにRGBの幾何学的配置を再構成し、低い演算複雑度を有する。
【0037】
HSLは色相、彩度および明度を意味し、しばしばHSIと呼ばれる(Iは強度)。HSVは色相、彩度および値を意味し、しばしばHSBと呼ばれる(Bは輝度)。あいにく、これらの定義は標準化されていないが、HSIとHSBは、HSLとHSVと同義であると通常解釈される。これらのモデルの定義は周知であり、次の出版物にみられる。Gonzalez Rafael C.、Richard Eugene Woods、Prentice Hall「Digital Image Processing」407-413頁、ISBN 013168728X、2007年。「The HSB/HLS Color Model - Color Models - Technical Guides」Adobe(登録商標)。Tom Jewett「Colors: HSB」http://www.tomjewett.com/colors/hsb.html、2009年6月29日検索。Ben Willmore「Adobe(登録商標)Photoshop(登録商標)CS2: studio techniques」Adobe(登録商標)Press、280頁、ISBN 0321321898、2005年。
【0038】
以下の説明において、HSLおよびHSVを例として使用するが、本発明はHSIおよびHSBモデルにも同様に適用可能である。
【0039】
HSLおよびHSVはともに、ボトムの黒色からトップの白色までの中心軸の範囲の間に無彩色(neutral colors)がある(色立体と呼ばれる)円柱内の、黒色から白色の間の点として色を記述すると考えることができる。中心の縦軸回りの角度が「色相」に相当し、当該軸からの距離が「彩度」に相当し、当該軸に沿う距離が「明度」「値」または「輝度」に相当する。
【0040】
目的において二つの表現は類似するが、アプローチが若干異なる。ともに数学的円柱であるが、HSV(色相、彩度、値)は概念上、黒色点がボトムにあり、完全純色(fully-saturated color)がトップの円の周りにある、逆転した色錐体と考えられる(図5参照)。HSL(色相、彩度、明度)は概念上、白色がトップに、黒色がボトムにあり、完全純色が水平断面のエッジの周りにあり、その中心に中間のグレイ色がある、双錐体(double-cone)または球体を表す(図6を参照)。図5はHSV色空間の逆転した錐体を概略的に示す図である。図6はHSL色空間の双錐体を概略的に示す図である。なお、HSLおよびHSVにおける「色相」は同一の属性を示すが、「彩度」の定義は劇的に異なる。
【0041】
HSLおよびHSVはデバイス依存RGBモデルの単純な変換である。そのため、(h, s, l)または(h, s, v)のトリプレットにより定義される物理的な色は、デバイスまたは特定のRGB空間の赤、緑、青の三原色、および、これらの三原色の量を表すために使用されるガンマ補正に依存する。従って、ユニークなRGBデバイスは、それに付随するユニークなHSLおよびHSV空間を有するから、(h, s, l)または(h, s, v)のトリプレットはsRGBのような特定のRGB色空間に結び付けられる場合に明確になる。
【0042】
両モデルは、Alvy Ray Smithにより1978年に最初に公式に記述されたが、三次元において色を記述する概念は18世紀に遡る。例えば、これらのモデルは、次の刊行物に公式に記載されている。Alvy Ray Smith「Color Gamut Transform Pairs」Computer Graphics 12 (3): 12、doi:10.1145/965139.807361、1978年8月。Kuehni、Rolf G.「The early development of the Munsell system」Color Research and Application 27 (1): 20-27、doi:10.1002/col.10002、2002年2月。
【0043】
ステップS110において、r, g, b∈[0, 1]は、RGB色空間における色の赤、緑および青の座標とする。maxはr、g、bのうち最大のものとし、minはr、g、bのうち最小のものとする。
【0044】
HSLまたはHSV空間の何れの場合も色相角h∈[0°, 360°]は式(1)に従って計算される。
…(1)
【0045】
HSL空間の場合、彩度s∈[0, 1]および明度l∈[0, 1]は式(2)および(3)に従って計算される。
…(2)
…(3)
【0046】
一般に、h値は0°から360°の間に位置するように正規化され、max=min(つまりグレイ色)の場合にh=0°が使用されるが、彩度s=0の位置において色相は幾何学的に無意味である。同様に、l=0またはl=1(つまり黒色または白色)の場合にs値として0を選択することは任意である。
【0047】
HSLおよびHSVは同じ色相定義を有するが、他の成分は異なる。HSV色空間のs値およびv値(v∈[0, 1])は式(4)および式(5)に従って定義される。
…(4)
…(5)
【0048】
例えば、RGB色空間の赤色、緑色、青色の座標(r, g, b)はそれぞれ(1, 0, 0)、(0, 1, 0)、(0, 0, 1)である。式(1)から式(3)によれば、赤色、緑色、青色の変換後のHSL座標(h, s, l)はそれぞれ
(0°, 1, 1/2)、(120°, 1, 1/2)、(240°, 1, 1/2)である。式(1)、式(4)、式(5)によれば、赤色、緑色、青色の変換後のHSV座標(h, s, v)はそれぞれ(0°, 1, 1)、(120°, 1, 1)、(240°, 1, 1)である。変換を説明するために原色を例として使用した。RGB色空間の他の色は、同様に、HSLまたはHSV空間に変換される。ステップS110の後、画像領域のすべての画素の色はHSLまたはHSV空間に変換されている。
【0049】
ステップS120において、HSVまたはHSL色空間から特定色範囲(立体)が抽出される。
【0050】
上述したように、RGBモデル表現よりも視覚的に適合させる試みにおいて、HSVまたはHSL色モデルはRGBの幾何学的配置を再構成する。従って、ステップS110で実行された変換の後、人の視覚によって同色と知覚される色がHSVまたはHSL色空間において集められる。例えば、種々の赤色は色相面の0°周辺に配置され、緑色は120°周辺に配置され、青色は240°周辺に配置される。さらに、黒色と人の視覚によって黒色と知覚される色は、錐体の下側の頂点部周辺に配置される。白色と人の視覚によって白色と知覚される色は、HSL色空間の錐体の上側の頂点部周辺に配置され、HSV色空間の上面の中央周辺に配置される。さらに、人の視覚によってグレイ色と知覚される色は、HSLまたはHSV色空間の錐体の中心軸上または中心軸周辺に分散される。
【0051】
本発明において、抽出される特定色範囲は、人の視覚により黒色、グレイ色、白色として知覚される色を含む。このように、特定色範囲に属する色情報が抽出され、特定色範囲に属する色情報は一般色(特定色範囲外の色)に属する色情報から分離される。図5は本発明の一実施例に従うHSV色空間における特定色範囲を示す。特定色範囲は、破線により示される立体である。図6は本発明の一実施例に従うHSL色空間における特定色範囲を示す。特定色範囲は、破線により示される立体である。図5において、HSV色空間全体は逆転した錐体である。図6において、HSL色空間全体は双錐体である。
【0052】
HSV色空間において、物理的な色が(h, s, v)により定義される場合、特定色範囲の立体は式(6)により定義される。
…(6)
ここで、btは黒閾値を意味し(つまり、当該閾値を下回る値をもつ色は黒色と見做す)、bt値として0.15の使用が推奨される。
gwtはグレイ白閾値を意味し(つまり、当該閾値を下回る彩度をもつ色は白色またはグレイ色と見做す)、gwt値として0.15の使用が推奨される。
【0053】
推奨値は0.15であるが、bt値とgwt値として0.1または0.2などの他の値も適用可能である。
【0054】
図5において、式(6)の「v<bt」部分は逆転した錐体の破線で示される頂点部(以下、黒立体と呼ぶ)を表す。式(6)の「s<gwt かつ v≧bt」の部分は逆転した錐体の中央に破線で示される錐台(turncated cone)(以下、グレイ白立体と呼ぶ)を表す。HSV色空間の場合、特定色範囲は黒立体とグレイ白立体の総和に等しい。
【0055】
HSL色空間において、物理的な色が(h, s, l)により定義される場合、特定色範囲の立体は式(7)により定義される。
…(7)
ここで、btは黒閾値を意味し(つまり、当該閾値を下回る明度をもつ色は黒色と見做す)、bt値として0.15の使用が推奨される。
gtはグレイ閾値を意味し(つまり、当該閾値を下回る彩度をもつ色はグレイ色と見做す)、gt値として0.15の使用が推奨される。
wtは白閾値を意味し(つまり、当該閾値を上回る明度をもつ色は白色と見做す)、wt値として0.85の使用が推奨される。
【0056】
同様に、bt値、gt値、wt値として他の値を使用することができる。
【0057】
図6において、式(7)の「l<bt」部分は双錐体の破線で示される下側の頂点部(以下、黒立体と呼ぶ)を表す。式(7)の「s<gt かつ l≧bt かつ l≦wt」部分は、双錐体の中央の破線により示される、底面が一致する二つの錐台(以下、グレイ立体と呼ぶ)を表す。式(7)の「l>wt」部分は双円錐の破線で示される上側の頂点部(以下、白立体と呼ぶ)を表す。HSL色空間の場合、特定色範囲は黒立体、グレイ立体および白立体の総和に等しい。
【0058】
ステップS120の後、特定色範囲を表す立体は、図5および図6に破線で示す立体部分のように定義され、抽出される。
【0059】
ステップS130において、HSVまたはHSL色空間の残り部分(特定色範囲以外)は、色相面に従い複数の一般色範囲に分割される。
【0060】
本発明では、HSVまたはHSL色空間において、特定色範囲以外の色の種類は色相面により記述される。色相値の範囲は[0°, 360°]である。N個の一般色範囲(特定色範囲以外)が必要な場合、HSVまたはHSL色空間の残り部分は式(8)に従って分割される。
…(8)
ここで、i=0, 1, …, N-1であり、Nは1より大きい整数。
【0061】
このステップにおける分割は、後述する図11に示すように、HSVまたはHSL色空間の残り部分(中央の特定色範囲以外)を実際に切り分ける。図11の場合、N=C-1である。つまり、HSVまたはHSL色空間の残り部分はC-1個の一般色範囲に分割される。
【0062】
ステップS140において、特定色範囲および一般色範囲を含む全色範囲が量子化される。量子化において、特定色範囲と特定色範囲外の色(一般色範囲)とは異なる方法で処理される。とくに、特定色範囲は値v(または明度)面に従い量子化され、一般色範囲は値v(または明度)面および彩度面に従い量子化される。
【0063】
まず、特定色範囲の量子化を詳細に説明する。
【0064】
HSL色空間において、物理的な色が(h, s, l)により定義される場合、特定色ColorSは式(9)に従い量子化される。
…(9)
【0065】
式(9)によれば、特定色範囲は明度面に従い分割される。量子化において、特定色範囲の黒立体は、それぞれが明度軸に沿う厚さLBを有するB個の部分に分割される。特定色範囲のグレイ立体は、それぞれが明度軸に沿う厚さLGを有するG個の部分に分割される。特定色範囲の白立体は、それぞれが明度軸に沿う厚さLWを有するW個の部分に分割される。
【0066】
図7はHSL色空間における特定色範囲の量子化の一例を示す図である。図7においてB=W=1およびG=4であるが、これは説明のための一例に過ぎず、0より大きい整数をB、WおよびGとして使用することができる。HSV色空間における特定色範囲の量子化は図7と同様である。
【0067】
同様に、HSV色空間において、物理的な色が(h, s, v)により定義される場合、特定色ColorSは式(10)に従い量子化される。
…(10)
【0068】
式(10)によれば、特定色範囲は明度面に従い分割される。量子化において、特定色範囲の黒立体は、それぞれが明度軸に沿う厚さVBを有するB個の部分に分割される。特定色範囲のグレイ白立体は、それぞれが明度軸に沿う厚さVGWを有するV個の部分に分割される。同様に、0より大きい整数をBおよびVとして使用することができる。
【0069】
式(9)および(10)において、Nbは黒立体から分割された部分のシリアル番号を表す。Ngはグレイ立体から分割された部分のシリアル番号を表す。Nwは白立体から分割された部分のシリアル番号を表す。Ngwはグレイ白立体から分割された部分のシリアル番号を表す。従って、取得されたColorS(量子化の結果)は、色が属す分割部分のシリアル番号を表す。
【0070】
量子化の後、特定色範囲内の色(h, s, l)または(h, s, v)は、色が属す分割部分のシリアル番号に量子化されている。
【0071】
次に、一般色範囲の量子化を詳細に説明する。
【0072】
特定色範囲外の色(一般色)がHSVまたはHSL色空間において定義される場合、一般色ColorCは式(11)に従い量子化される。
…(11)
【0073】
式(11)によれば、一般色範囲は値v(明度)面および彩度面に従い分割される。ここで、ステップS130において取得されたN個の一般色範囲がそれぞれ量子化される。
【0074】
式(11)において、一般色範囲は、それぞれが半径方向に沿う厚さSCを有する、彩度面に従うS個の部分に分割される。同時に、HSV色空間の場合、一般色範囲は、それぞれが明度軸に沿う厚さVCを有する、値v面に従うV個の部分にも分割される。HSL色空間の場合、一般色範囲は、それぞれが明度軸に沿う厚さLCを有する、明度面に従うL個の部分にも分割される。値S、LおよびVとして0より大きい整数を使用することができる。
【0075】
図8はHSV色空間における、ある一般色範囲の量子化例を示す図である。図8においてS=3およびV=4であるが、これは説明のための一例に過ぎず、0より大きい整数をSおよびVとして使用することができる。HSL色空間における一般色範囲の量子化は図8と同様である。
【0076】
式(11)において、Nsは彩度面に従い分割された分割部分のシリアル番号を表し(図8の左側部分を参照)、Ns=0, 1, …, S-1である。Nvは明度面に従い分割された分割部分のシリアル番号を表し(図8の右側部分を参照)、Nv=0, 1, …, V-1である。Nlは明度面に従い分割された分割部分のシリアル番号を表し、Nl=0, 1, …, L-1である。
【0077】
従って、取得されたColorC(量子化の結果)は、一般色が属す分割部分のシリアル番号を表す。
【0078】
量子化後、ある特定の一般色範囲の色(h, s, l)または(h, s, v)は、当該色が属す分割部分のシリアル番号に量子化されている。上記の量子化処理は、ステップS130で取得された一般色範囲それぞれに対して実行される。
【0079】
抽出された特定色範囲および特定色範囲外の色の異なる量子化後、入力画像領域は量子化色領域に量子化される。
【0080】
上記実施例において、画像領域全体が量子化色領域に量子化され、この量子化色領域はステップS300の入力として直接使用することができる。
【0081】
別の実施例においては、ステップS300を実行する前に、ブロック分割ステップS200を実行することができる。ステップS200はオプションである。ステップS200において、ステップS100で取得された量子化色領域は複数の画像ブロックに分割される。
【0082】
実際、分割ブロックは、格子状、放射状、環状などの多くの方法で配置可能である。格子状の方法は、量子化色領域を網目(grids)のブロックに分割する。放射状の方法は、量子化色領域を扇形(sectors)のブロックに分割する。本発明において、回転不変性を有する環状の方法が推奨される。
【0083】
環状の方法を採用する場合、まず、量子化色領域の中心をユーザが設定するかコンピュータシステムが自動設定する。その後、設定された中心を中心点として複数のブロックが設定される。複数のブロックは、環状ブロックを形成するように、異なる半径または辺の長さを有す。
【0084】
図9は量子化色領域を分割して生成された環状ブロックの一例を示す図である。図9において、環状ブロックは円、楕円、正方形または矩形の形状を有す。各環状ブロックは内側の半径と外側の半径を有する。最も内側のブロック(図9のブロックB0)は環状ではなくソリッドな形状である必要があり、最も内側のブロック(図9のブロックB0)の内側の半径は零である。各ブロックの面積は、完全に等しい必要はないが、同じであることが好ましい。環状ブロックの内側の半径と外側の半径の間の差分である環の幅は小さ過ぎてはならない。好ましくは、環の幅は三画素より大きい(条件1)。一実施例において、分割ブロックは重畳しない。図9のような別の実施例において、複数の画像ブロックの幾つかは、ブロックB1とB2のように重畳してもよい。重畳率(重畳部の環の幅/当該ブロックの環の幅)は零でもよく(これは、隣接する二つのブロックの間に重畳部がないことを意味する)、好ましくは、0.5以下である(条件2)。ブロックの数は、上記の条件1と2に依存し、好ましくは、4または5である。
【0085】
別の実施例において、ブロック分割ステップはステップS100の前に実行可能で、その場合、画像領域は複数の画像ブロックに分割される。この場合、色量子化ステップS100において、複数の画像ブロックを含む量子化色領域が形成するために、量子化が複数の画像ブロックそれぞれに実行される。色ヒストグラム計算ステップS300において、色ヒストグラムが複数の画像ブロックそれぞれについて計算され、ヒストグラムアセンブルステップS400において、ユニークベクトルが計算された色ヒストグラムを使用して生成される。ここで実行されるブロック分割は、図9に示す形状と同様の形状でもよい。
【0086】
ステップS300において、色ヒストグラムが量子化色領域に従い計算される。これは、特定色範囲および一般色範囲を含む各色範囲の画素数を単にカウントすることにより実行可能である。
【0087】
このステップにおいて、ヒストグラムは、カラー画像領域の画素の異なる量子化値に従い計算される。カラー画像領域の各画素には、ステップS140で計算され、上述したシリアル番号である量子化値と呼ばれる特定の値がある。
【0088】
ヒストグラムにおいて、各ビンの値は、ある特定の量子化値の画素数を意味する。ヒストグラムのビンの順序を図10に示す。
【0089】
図10において、Color 1からColor C-1は一般色である。ヒストグラムにおける色の全種類はC種類あり、C種類は、一つの特定色範囲とC-1個の一般色範囲を含むC個の色範囲に対応する。Uは一般色範囲それぞれの量子化値の数であり、Vは特定色範囲の量子化値の数である。一般に、特定色範囲は各一般色範囲より重要である。そのため、VはU以上である。
【0090】
ステップS300の後、画像領域について色ヒストグラムが計算されていて、色ヒストグラムはステップS400の入力として使用可能である。
【0091】
別の実施例においては、ステップS300で色ヒストグラムが計算された後、色収差の影響をさらに低減するために、オプションの色ヒストグラムビン平滑化ステップを実行する。
【0092】
色ヒストグラムビン平滑化ステップにおいて、一般色範囲(特定色範囲以外)からのヒストグラムビンが平滑化される。一般色範囲(特定色範囲以外)は、HSLまたはHSV色空間の何れの場合も、色相角h∈[0°, 360°]により定義される。色ヒストグラムビン平滑化は、隣接するビン(色範囲)が互いに影響するように試みる。図11は色ヒストグラムビン平滑化の効果を示す図である。
【0093】
図11に示すように、色ヒストグラムビン平滑化は式(12)に従い実行される。
…(12)
ここで、wは重み値、
jは一般色範囲それぞれの量子化値、
iは一般色範囲のシリアル番号、
i=1, 2, …, C-1、
i=1の場合はColori-1, j=ColorC-1, j。
【0094】
量子化色領域が上述した複数のブロックに分割される実施例において、図12に示す処理を、各ブロックの色ヒストグラムを計算するために実行することができる。図12は量子化色領域の対応する分割ブロックから計算された各ヒストグラムの最終色ヒストグラムを計算する方法を示すフローチャートである。
【0095】
方法は次のステップを含む。量子化色領域の各画像ブロックのヒストグラムを計算するステップ(S310)。特定色範囲以外の全一般色範囲からのヒストグラムビンを平滑化するステップ(S320)。各画像ブロックのヒストグラムを正規化して最終色ヒストグラムにするステップ(S330)。
【0096】
ステップS310の計算は、ヒストグラムをブロックごとに計算する点を除き、上記ステップS300と同様である。ステップS320の平滑化は、色ヒストグラムビン平滑化をブロックごとに実行する点を除き、上記色ヒストグラムビン平滑化ステップと同様である。
【0097】
ステップS330において、各ブロックのヒストグラムは最終色ヒストグラムに正規化される。何故ならば、各分割ブロックの面積が異なることもあり、ブロックを分割する場合に当該処理ステップが必要である。
【0098】
正規化は式(13)に従い実行される。
…(13)
ここで、hiは各ヒストグラムのビンの数、
iは色の種類のシリアル番号。
【0099】
ブロックを分割する場合、上記ステップS300は、ステップS310からS330に置き換えられる。
【0100】
ステップS300の後、一つの色ヒストグラム(通常の場合)、または、複数の色ヒストグラム(ブロックを分割する場合)が生成されている。
【0101】
ステップS400において、ユニークベクトルがステップS300で生成された色ヒストグラムを使用して生成される。
【0102】
量子化色領域をブロックに分割しない場合、色ヒストグラムがステップS400に入力される。この場合、ユニークベクトルVが生成される。ベクトルV={N, M1, …, MC-1}である。ここで、ベクトルにおけるNはN要素を表し、M1からMC-1はそれぞれM要素を表す。これらの要素の値は、図10のヒストグラムにおける画素のカウント値に対応する。
【0103】
これで、入力画像領域の特徴ベクトルが取得され、画像領域の記述に使用される。
【0104】
他方、量子化色領域をブロックに分割する場合、複数の色ヒストグラム(その数がブロック数に等しい)がステップS400に入力される。この場合、ステップS400は、図13に示す方法に置き換えられる。図13は、量子化色領域の各分割ブロックからの色ヒストグラムを集めてユニークベクトルにする方法を示すフローチャートである。この方法は次のステップを含む。異なる画像ブロックからの色ヒストグラムに異なる重みを設定するステップ(S410)。複数の画像ブロックの重み付けされた色ヒストグラムを集めてユニークベクトルにするステップ(S420)。ユニークベクトルを正規化するステップ(S430)。
【0105】
ステップS410において、入力された色ヒストグラムそれぞれに重みが設定される。人の視覚によれば、視界(vision)の中心近傍に位置する物(things)がより重要である。そのため、中心近傍のブロックからの色ヒストグラムに大きい重み値を付加する。図14はブロックの重み付け例を示す図である。図14に示すように、濃い色ほど大きな重みが付加される。
【0106】
ステップS420において、重み付けされた色ヒストグラムが集められてユニークベクトルとされる。
【0107】
例えば、ユニークベクトルはB={w1B1, w2B2, …, wNBN}である。ここで、Nはブロック数、B1は一番目のブロックの特徴ベクトルを意味し、BNはN番目のブロックの特徴ベクトルを意味する。w1からwNはそれぞれB1からBNの重みである。B1からBNはそれぞれ、上述したベクトルVの形態を有す。
【0108】
ステップS430において、ユニークベクトルBが最終特徴ベクトルB'に正規化される。正規化は式(14)に従い実行される。
…(14)
ここで、Biは各ブロックの特徴ベクトル、
wiは各ブロックの重み、
Nは分割ブロックの数。
【0109】
従って、最終ベクトルはB'={B'1, B'22, …, B'N}である。これで、入力画像領域の特徴ベクトルが取得され、画像領域の記述に使用される。
【0110】
なお、量子化色領域をブロックに分割する場合、取得される特徴ベクトルは、量子化色領域をブロックに分割しない場合に取得される特徴ベクトルよりも長い。長いベクトルは画像領域をより正確に記述することができるが、より高い計算の複雑さを伴う。
【0111】
本発明に従う色ヒストグラムに基づき画像領域を記述する方法は、オブジェクト検出、オブジェクト追跡および画像クエリに適用可能である。
【0112】
図15は本発明に従う一つ以上の画像からのオブジェクトを登録する方法500を示すフローチャートである。この方法は次のステップを含む。一つ以上の画像上で登録すべき一つ以上のオブジェクト領域を指定するためのステップ(S510)。一つ以上のオブジェクト領域それぞれについて、オブジェクト領域を量子化色領域に量子化するステップ(S520)。ステップS520では、量子化において特定色範囲と特定色範囲の外の色を異なる方法で処理し、量子化色領域に従い色ヒストグラムを計算し、色ヒストグラムを使用してユニークベクトルを生成する。複数のベクトルが生成された場合、複数のベクトルから最終特徴ベクトルを計算するステップ(S530)。オブジェクトについて最終特徴ベクトルを登録するステップ(S540)。
【0113】
ステップS510において、一つ以上の画像上で登録すべき一つ以上のオブジェクト領域が指定される。オブジェクト領域を指定する際、ユーザは、一つ以上の画像上で登録すべきオブジェクト領域を指定する。方法は一つまたは少数のオブジェクト領域を使用するだけではオブジェクトと背景を区別することができないから、パフォーマンス向上のために、オブジェクト領域は背景を含まないことが好ましい。つまり、ユーザは、有効なオブジェクトサンプルを提供すべきである。オブジェクト領域は、大幅に変化しない、異なる特定の色を有する複数の領域を含むべきである。
【0114】
なお、本発明の画像記述方法に基づくと、一つのサンプル画像を提供するだけで、オブジェクトの登録が達成可能である。オブジェクトを検出するために、当該オブジェクトに関係する多数のサンプル画像を登録して検出器のトレーニングと学習を行う必要がある従来技術の他の画像記述方法と比較すると、本発明の画像登録は遥かに単純である。
【0115】
ステップS520において、指定された各オブジェクト領域は、上述した実施例の何れか一つに従う画像記述方法を使用して、特徴ベクトルとして記述される。一実施例において、回転不変性の向上のために、指定されたオブジェクト領域は環状ブロックに分割される(図9の第一のブロック分割を参照)。
【0116】
ステップS510で複数のオブジェクト領域が指定された場合、ステップS530において、同数のオブジェクト別特徴ベクトルが生成される。複数のベクトルが生成されると、最終特徴ベクトルが複数のベクトルから計算される。一つの特徴ベクトルのみが生成されると、特徴ベクトルが最終特徴ベクトルとして直接使用される。統計および機械学習の多くの方法が、このステップにおいて使用可能であり、平均計算アルゴリズム(means calculation algorithm)が容易な方法として推奨される。
【0117】
オブジェクト別特徴ベクトルの集合(x1, x2, …, xn)が与えられた場合、平均値(means)は式(15)に従い計算される。
…(15)
ここで、
は最終オブジェクト別特徴ベクトル。
【0118】
ステップS540において、オブジェクトの最終特徴ベクトルが登録される。例えば、最終特徴ベクトルは格納手段に格納される。
【0119】
ステップS540の後、画像登録は終了する。ユーザにより指定されたオブジェクト領域は、特徴ベクトルによって特徴付けされる。特徴ベクトルは、キーワードと同様、他の画像内のオブジェクトの検出に使用される。
【0120】
図16は図15の方法に従い登録されたオブジェクトの特徴ベクトル(以下、第一のベクトルと呼ぶ)に基づき、画像からオブジェクトを検出する方法600を示すフローチャートである。この方法は次のステップを含む。画像から何らかの部分領域をクロップするステップ(S610)。各部分領域について、部分領域を量子化色領域に量子化するステップ(S620)。ステップS620では、量子化において特定色範囲と特定色範囲外の色を異なる方法で処理し、量子化色領域に従い色ヒストグラムを計算し、色ヒストグラムを使用して第二のベクトルを生成する。
【0121】
オブジェクトが部分領域に存在するかを判定するために、第一のベクトルと第二のベクトルを比較するステップ(S630)。
【0122】
ステップS610において、多くの部分領域が検出対象画像からクロップされる。部分領域は次のようにクロップされる。登録されたサンプルオブジェクト領域と同じ大きさを有する探索ウィンドウを利用する。検出対象画像を横切るように探索ウィンドウを徐々にシフトし、各シフトの前に探索ウィンドウに含まれる画素を抽出して部分領域を作成する。検出対象画像の周りを通して(thorugh around)探索ウィンドウをシフトした後、探索ウィンドウの大きさを維持したまま検出対象画像をリサイズ(縮小)する。所定の制限に達するまで、リサイズ(縮小)とシフト処理動作を繰り返す。
【0123】
これは、検出対象画像をトラバースする方法の一例に過ぎない。当業者は、他のトラバース方法を容易に心に描く(envisage)ことができる。例えば、別の実施例において、検出対象画像はリサイズされずに、探索ウィンドウがリサイズされ、そして、探索ウィンドウ内の部分領域が登録されたサンプルオブジェクト領域の大きさにリサイズされる。
【0124】
ステップS620において、各部分領域は、上述した実施例の何れか一つの画像記述方法を使用して、特徴ベクトルとして記述される。このステップの全パラメータは、ステップS520においてオブジェクト別特徴ベクトルを生成するパラメータと同じ必要がある。
【0125】
ステップS630において、オブジェクトが部分領域に存在するかを判定するため、部分領域の特徴ベクトルと(オブジェクトの)登録された特徴ベクトルが比較される。このステップにおいて、相関、カイ二乗、バタチャリヤ(Bhattacharyya)、交差など、ベクトル比較に関する多くの方法が使用可能である。ここでは、カイ二乗アルゴリズムが単純な計算方法として推奨される。
【0126】
例えば、ユーザが登録したオブジェクト領域の特徴ベクトルH1と、現在の部分領域の特徴ベクトルH2の二つの特徴ベクトルH1、H2が与えられた場合、H1とH2の間の距離は式(16)により表される。
…(16)
ここで、H(i)は特徴ベクトルHのi番目の次元の値、
d(H1, H2)<THの場合、部分領域がユーザが登録したオブジェクトを含むことを意味する、
d(H1, H2)≧THの場合、部分領域がユーザが登録したオブジェクトを含まないことを意味する、
THは特徴ベクトルの次元の量(quantity)と精度に依存する経験値。
【0127】
図17は本発明のオブジェクト検出方法に従い取得された検出結果の一例を示す図である。図17の左部分は、ステップS510でユーザが指定したサンプルオブジェクト領域の一例を示す。サンプルオブジェクト領域は他の画像において検出されたオブジェクトであり、このオブジェクト領域の特徴ベクトルが登録(格納)されている。図17の右部分は、左部分の入力サンプルオブジェクト領域に対応する、オブジェクト検出方法600の検出結果を示す。図17の右部分において、登録されたオブジェクトを含む画像の部分領域の異なるサイズが矩形フレームによって示される。
【0128】
オブジェクト検出方法600の実性能により、本発明者は次のデータを取得した。登録されたオブジェクトを検出するために、画像(1280×720画素)の総数344,300領域が入力され、図17の右部分に示すように、774領域がオブジェクト(犬の顔)を含むと判定された。図17から、検出精度が高く、検出された各部分領域(矩形フレーム)が犬の顔を含むことがわかる。
【0129】
別の精度の評価方法において、オブジェクト(犬の顔)を有する画像の1,100領域が入力され、正検出率(つまり領域が犬の顔を含む)は94.77%である。オブジェクト(犬の顔)を有さない画像の30,000ランダム領域が入力され、正検出率(つまり領域が犬の顔を含まない)は99.99%である。
【0130】
オブジェクト検出方法600の別の利点は高速であることである。画像(1280×720画素)の各フレームについて0.37秒以内に検出を完了することができる。
【0131】
本発明の画像領域記述方法とオブジェクト検出方法を使用すると、オブジェクトの状態(posture)について高いロバスト性が得られる。一つのサンプルオブジェクト画像領域のみを必要とするオブジェクト検出方法600を使用して、犬の顔の多くの異なる状態を検出することができる。図18はオブジェクトの状態に関係なく、オブジェクト(犬の顔)が正確に検出されることを示す図である。
【0132】
本発明の画像領域記述方法とオブジェクト検出方法を使用すると、色収差について高いロバスト性が得られる。光源とカメラの受光素子に起因する色収差は、本発明の画像領域記述方法に僅かに影響するだけである。図19は色収差に関係なく、オブジェクト(犬の顔)が正確に検出されることを示す図である。
【0133】
本発明の画像領域記述方法とオブジェクト検出方法を使用すると、検出結果はオブジェクトの回転に影響されず、つまり、回転不変性が得られる。画像領域記述方法に環状ブロック分割方法を使用すると、オブジェクトの回転は本発明のオブジェクト検出に影響しない。図20はオブジェクトの回転に関係なく、オブジェクト(犬の顔)が正確に検出されることを示す図である。
【0134】
この説明においては、静止画像を例に説明した。しかし、言うまでもなく、ビデオは多数の画像のフレームから形成されるから、本発明は、ビデオにも同様に適用可能である。つまり、本発明の画像領域記述とオブジェクト検出は動画像(ビデオ)に適用可能である。
【0135】
この説明において、すべての閾値の値は、例に過ぎず、本発明の範囲を制限するものではない。
【0136】
本発明の方法とシステムは、多くの方法で実現することができる。例えば、本発明の方法とシステムは、ソフトウェア、ハードウェア、ファームウェア、または、それらの何らかの組み合わせで実現することができる。方法のステップの上述した順番は、例示であることを意図するに過ぎず、特に記述しない限り、本発明の方法のステップは説明した順番に限定されるものではない。さらに、幾つかの実施例において、本発明に従う方法を実現する機械が読み取り可能な命令を含む、記録媒体に記録されたプログラムとして、本発明は実現される。従って、本発明は、本発明に従う方法を実現するプログラムを格納した記録媒体を含む。
【0137】
本発明の幾つかの特定の実施例を例とともに詳細に説明したが、当業者は、上記の例が、例示であることを意図するに過ぎず、本発明の範囲を限定することを意図しないことを理解すべきである。さらに、当業者は、上記の実施例が本発明の趣旨の範囲から逸脱せずに変更可能であることを理解すべきである。本発明の範囲は、添付する特許請求の範囲によってのみ定義される。
【技術分野】
【0001】
本発明は画像処理に関する。詳細には、色ヒストグラムに基づき画像領域を記述する方法およびシステム、一つ以上の画像からのオブジェクトを登録する方法およびシステム、並びに、その登録に基づき画像からオブジェクトを検出する方法およびシステムに関する。
【背景技術】
【0002】
画像記述技術は、コンテンツベース画像検出またはコンテンツベース画像検索の基本である。コンピュータにより自動抽出される画像の視覚的特徴は、人間が知覚する画像コンテンツと劇的に異なり、コンピュータが一つの画像と他の画像を区別するために処理および使用可能な特徴を画像から抽出するために、画像記述技術が必要とされる。
【0003】
従来、色、テクスチャおよび形状など、伝統的な低レベルの視覚的特徴が画像記述に使用されている。しかし、本発明は、主として、色情報に基づく画像記述にフォーカスする。
【0004】
色情報に基づく画像記述は、画像記述が画像の索引付けおよび検索の基本に使用されるディジタル画像ライブラリのような多くのアプリケーションに有用である。
【0005】
実用的かつ効果的な画像記述のために、画像から特徴(色情報)を抽出した結果は、(1)異なる画像の区別に充分、(2)特定の種類の画像変換に対して不変、(3)ノイズに反応しない、(4)計算が容易、であるべきである。
【0006】
しかし、色の特徴は、大抵、光源およびカメラの受光素子のような多くの要因によって乱されるため、色情報に基づく画像記述は稀にオブジェクト検出に適用される。例えば、米国特許第6,850,639号明細書に開示された画像の特徴を色情報として使用する画像記述方法において、色の特徴は、照明およびカメラのパラメータ設定(ホワイトバランス、焦点距離など)によって乱される。異なる照明または異なるカメラ設定で撮影された画像の同一オブジェクトは互いに区別されないだろう。
【0007】
従って、照明およびカメラ設定などに大きく影響されず、色情報に基づき画像領域を正確に記述することができる技術が必要になる。照明およびカメラ設定などの影響が少ない本発明の画像記述技術に基づけば、当然、高い検出精度が得られる。
【発明の概要】
【0008】
上記の従来技術に存在する技術的課題を考慮して、色ヒストグラムに基づき画像領域を記述する新しい方法およびシステムが提供される。それらは、上記の技術的課題を解決するだけではなく、オブジェクトの状態(posture)に対するロバスト性、色収差に対するロバスト性、および、回転不変性のような他の望ましい技術的効果をもたらす。
【0009】
色情報に基づく画像記述技術に従う画像検出において、高い検出精度に加え、オブジェクトの状態、色収差および回転不変性に対する充分なロバスト性を有することが望まれる。つまり、記述される画像領域のオブジェクトの状態、照明およびカメラ設定、並びに、画像領域の回転に関係なく、高い検出精度を保証することが望ましい。
【0010】
本発明の発明者は、色特徴が、大抵、光源およびカメラの受光素子など、多くの要因によって乱される理由が、白色、黒色、グレイ色が特別に処理されないことにあることを発見した。色情報に基づく現在の画像記述技術において、これらの色の情報は、黒色、グレイ色、グレイ色以外の色の中に隠される。まさに、これらの色の情報が光源およびカメラのパラメータ設定(ホワイトバランス、焦点距離など)に大きく影響される。
【0011】
この新発見に基づき、本発明は、画像領域の記述において、黒色、グレイ色および白色と、それら以外の色とを異なる方法で処理することを提案する。
【0012】
本発明の一つの面によると、色ヒストグラムに基づいて画像領域を記述する方法が提供される。その方法は、量子化において特定色範囲と特定色範囲の外の色とを異なる方法で処理して、画像領域を量子化色領域に量子化する色量子化ステップ、量子化色領域に従い一つ以上の色ヒストグラムを計算する色ヒストグラム計算ステップ、および、一つ以上の色ヒストグラムを使用してユニークベクトル(unique vector)を生成するヒストグラムアセンブルステップを備える。
【0013】
本発明の別の面によると、色ヒストグラムに基づいて画像領域を記述するシステムが提供される。そのシステムは、量子化において特定色範囲と特定色範囲の外の色とを異なる方法で処理して、画像領域を量子化色領域に量子化する色量子化部、量子化色領域に従い一つ以上の色ヒストグラムを計算する色ヒストグラム計算部、および、一つ以上の色ヒストグラムを使用してユニークベクトルを生成するヒストグラムアセンブル部を備える。
【0014】
本発明の別の面によると、一つ以上の画像からのオブジェクトを登録する方法が提供される。その方法は、一つ以上の画像上で登録すべき一つ以上のオブジェクト領域を指定し、一つ以上のオブジェクト領域それぞれについて、量子化において特定色範囲と特定色範囲の外の色とを異なる方法で処理して、オブジェクト領域を量子化色領域に量子化し、量子化色領域に従い一つ以上の色ヒストグラムを計算し、一つ以上の色ヒストグラムを使用してユニークベクトルを生成し、複数のベクトルが生成された場合、複数のベクトルから最終特徴ベクトルを計算し、オブジェクトについて最終特徴ベクトルを登録する。
【0015】
本発明の別の面によると、一つ以上の画像からのオブジェクトを登録するシステムが提供される。そのシステムは、一つ以上の画像上で、登録すべき一つ以上のオブジェクト領域を指定するための手段、一つ以上のオブジェクト領域それぞれについて、量子化において特定色範囲と特定色範囲の外の色とを異なる方法で処理して、オブジェクト領域を量子化色領域に量子化し、量子化色領域に従い一つ以上の色ヒストグラムを計算し、一つ以上の色ヒストグラムを使用してユニークベクトルを生成する手段、複数のベクトルが生成された場合、複数のベクトルから最終特徴ベクトルを計算する手段、および、オブジェクトについて最終特徴ベクトルを登録する手段を備える。
【0016】
本発明の別の面によると、上記の方法に従い登録されたオブジェクトの第一のベクトルに基づき、画像からオブジェクトを検出する方法が提供される。その方法は、画像から何らかの部分領域をクロップし、クロップされた部分領域それぞれについて、量子化において特定色範囲と特定色範囲の外の色とを異なる方法で処理して、部分領域を量子化色領域に量子化し、量子化色領域に従い一つ以上の色ヒストグラムを計算し、一つ以上の色ヒストグラムを使用して第二のベクトルを生成し、オブジェクトが部分領域に存在するかを判定するために第一のベクトルと第二のベクトルを比較する。
【0017】
本発明の別の面によると、オブジェクトを登録するシステムによって登録されたオブジェクトの第一のベクトルに基づき、画像からオブジェクトを検出するシステムが提供される。そのシステムは、画像から何らかの部分領域をクロップする手段、および、クロップされた部分領域それぞれについて、量子化において特定色範囲と特定色範囲の外の色とを異なる方法で処理して、部分領域を量子化色領域に量子化し、量子化色領域に従い一つ以上の色ヒストグラムを計算し、一つ以上の色ヒストグラムを使用して第二のベクトルを生成し、オブジェクトが部分領域に存在するかを判定するために、第一のベクトルと第二のベクトルを比較する手段を備える。
【0018】
本発明の方法およびシステムによれば、高い検出精度に加え、オブジェクトの状態、色収差および回転不変性に対する良好なロバスト性が得られる。検出精度、並びに、オブジェクトの状態、色収差および回転不変性に対するロバスト性の有用な効果を以下に詳細に説明する図17から図20に示す。
【0019】
本発明のさらなる特徴と利点は、図面を参照する以下の説明から明らかになるだろう。
【図面の簡単な説明】
【0020】
明細書の一部に組み込まれ、明細書の一部を構成する添付図面は、本発明の実施例を図示し、説明とともに本発明の原理を説明するために利用される。
【図1】本発明にかかる色ヒストグラムに基づいて画像領域を記述する演算装置の構成を示すブロック図。
【図2】本発明の一実施例にかかる色ヒストグラムに基づき画像領域を記述するシステムの一般的な構成を示す機能ブロック図。
【図3】本発明の一実施例にかかる色ヒストグラムに基づいて画像領域を記述する方法を示すフローチャート。
【図4】本発明の一実施例にかかる図3のステップS100における色量子化処理を示すフローチャート。
【図5】特定色範囲が破線で示されるHSV色空間の逆転した錐体を概略的に示す図。
【図6】特定色範囲が破線で示されるHSL色空間の双錐体を概略的に示す図。
【図7】HSL色空間における特定色範囲の量子化の一例を示す図。
【図8】HSV色空間における、ある特定の一般色範囲の量子化の一例を示す図。
【図9】量子化色領域を分割して生成された環状ブロックの一例を示す図。
【図10】ヒストグラムのビンの順序を示す図。
【図11】色ヒストグラムビン平滑化の効果を示す図。
【図12】量子化色領域の対応する分割ブロックから計算された各ヒストグラムに対して最終色ヒストグラムを計算する方法を示すフローチャート。
【図13】量子化色領域の各分割ブロックからの色ヒストグラムを集めてユニークベクトルにする方法を示すフローチャート。
【図14】ブロックの重み付けの一例を示す図。
【図15】本発明にかかる一つ以上の画像からのオブジェクトを登録する方法を示すフローチャート。
【図16】図15の方法に従い登録されたオブジェクトの特徴ベクトルに基づき画像からオブジェクトを検出する方法を示すフローチャート。
【図17】本発明のオブジェクト検出方法に従い取得された検出結果の一例を示す図。
【図18】オブジェクトの状態に関係なく、オブジェクト(犬の顔)が正確に検出されることを示す図。
【図19】色収差に関係なく、オブジェクト(犬の顔)が正確に検出されることを示す図。
【図20】オブジェクトの回転に関係なく、オブジェクト(犬の顔)が正確に検出されることを示す図。
【発明を実施するための形態】
【0021】
以下、本発明の実施例を図面を参照して詳細に説明する。
【0022】
説明において、用語「画像領域」は画像から選択された部分を意味する。当然、画像全体を画像領域として選択可能である。その場合、用語「画像領域」は画像全体を表す。
【0023】
説明において、用語「特定色範囲」は、HSLまたはHSV色空間における色範囲(立体)を意味し、純粋な黒色、グレイ色、白色だけを示さず、人の視覚により黒色、グレイ色、白色として知覚される(perceptible)色を含む。説明を簡略化するために、説明において、HSLまたはHSV色空間における特定色範囲外の各色を「一般色( common color)」と呼ぶ。一般色は、HSLまたはHSV色空間における立体であり特定色範囲の外の「一般色範囲(立体)」に属する。
【0024】
図1は本発明にかかる色ヒストグラムに基づき画像領域を記述するシステムを実現する演算装置の構成を示すブロック図である。簡潔にするため、システムは単一のコンピュータ機器に組み込まれるとして表示される。しかし、単一のコンピュータ機器に組み込まれるか、ネットワークシステムとして複数のコンピュータ機器に組み込まれるかに関係なく、システムは有効である。
【0025】
図1に示すように、コンピュータ装置100は、色ヒストグラムに基づき画像領域を記述する処理を実現するために使用される。コンピュータ装置100は、CPU101、チップセット102、RAM103、ストレージ制御部104、表示制御器105、ハードディスクドライブ(HDD)106、CD-ROMドライブ107、ディスプレイ108を備える。コンピュータ装置100は、CPU101とチップセット102の間に接続された信号線111、チップセット102とRAM103の間に接続された信号線112、チップセット102と種々の周辺装置の間に接続された周辺装置バス113を備える。さらに、ストレージ制御部104とHDD106の間に接続された信号線114、ストレージ制御部104とCD-ROMドライブ107の間に接続された信号線115、並びに、表示制御部105とディスプレイ108の間に接続された信号116を備える。
【0026】
クライアント120は、直接またはネットワーク130を介してコンピュータ装置100に接続される。クライアント120は画像領域記述タスクをコンピュータ装置100に送信し、コンピュータ装置100は画像領域を記述するための特徴ベクトルをクライアント120に返す。
【0027】
図2は色ヒストグラムに基づき画像領域を記述する、各モジュール部から構成されるシステムの一般的な構成を示すブロック図である。
【0028】
図2に示すように、色ヒストグラムに基づき画像領域を記述する画像領域記述システム200は次の構成を有する。色量子化部201は、量子化において特定色範囲と特定色範囲外の色を異なる方法で処理して画像領域を量子化色領域に量子化する。色ヒストグラム計算部203は、量子化色領域に従い一つ以上の色ヒストグラムを計算する。ヒストグラムアセンブル部205は、一つ以上の色ヒストグラムを使用してユニークベクトルを生成する。
【0029】
別の実施例において、画像領域記述システム200は、さらに、量子化色領域を複数の画像ブロックに分割するブロック分割部を有する。この場合、色ヒストグラム計算部203は複数の画像ブロックそれぞれの色ヒストグラムを計算し、ヒストグラムアセンブル部205は計算された色ヒストグラムを使用してユニークベクトルを生成する。
【0030】
別の実施例において、画像領域記述システム200は、さらに、画像領域を複数の画像ブロックに分割するブロック分割部を有する。この場合、色量子化部201は、複数の画像ブロックそれぞれに量子化を実行し、複数の画像ブロックを含む量子化色領域を形成する。色ヒストグラム計算部203は複数の画像ブロックそれぞれの色ヒストグラムを計算し、ヒストグラムアセンブル部205は計算された色ヒストグラムを使用してユニークベクトルを生成する。
【0031】
上記の色量子化部201、色ヒストグラム計算部203、ヒストグラムアセンブル部205、ブロック分割部は、以下に説明する処理を実現する好適なモジュール例で、ハードウェアまたはソフトウェアにより実現可能である。上記では、種々のステップを実現するモジュールを余すすところなく説明したわけではない。しかし、ある特定の処理を実行するステップがある場合、当該処理を実現するための対応する機能モジュールまたはユニットが存在する。
【0032】
図3は本発明の一実施例にかかる色ヒストグラムに基づき画像領域を記述する方法を示すフローチャートである。その方法は次のステップを有する。色量子化ステップ(S100)は、量子化において特定色範囲と特定色範囲外の色を異なる方法で処理して画像領域を量子化色領域に量子化する。色ヒストグラム計算ステップ(S300)は、量子化色領域に従い色ヒストグラムを計算する。ヒストグラムアセンブルステップ(S400)は、色ヒストグラムを使用してユニークベクトルを生成する。
【0033】
ステップS100において、ユーザにより選択された、または、コンピュータシステムにより自動的に選択された画像領域が入力される。例えば、入力画像領域は、30×30画素の領域である。つまり、画像領域は30行かつ30列の画素を有する。画像領域の大きさは、40×60画素または100×100画素などの任意の大きさであり、30×30画素という大きさは一例に過ぎない。入力画像領域は、量子化色領域に量子化される。量子化処理において、特定色範囲と特定色範囲外の色は異なる方法で処理される。とくに、人の視覚により黒色、グレイ色、白色として知覚される色を含む特定色範囲がHSVまたはHSL色空間から抽出される。抽出された特定色範囲および特定色範囲外の色に対する異なる量子化に基づき、入力画像領域は量子化色領域に量子化される。
【0034】
図4は本発明の一実施例にかかる図3のステップS100における色量子化処理を示すフローチャートである。
【0035】
まず、ステップS110において、画像領域の画素のRGB色空間の色がHSVまたはHSL色空間に変換される。
【0036】
HSLおよびHSVは、RGB色モデルにおける点の、最も一般的な二つの円柱座標表現であり、RGBモデルのデカルト表現よりも視覚に適合するようにRGBの幾何学的配置を再構成し、低い演算複雑度を有する。
【0037】
HSLは色相、彩度および明度を意味し、しばしばHSIと呼ばれる(Iは強度)。HSVは色相、彩度および値を意味し、しばしばHSBと呼ばれる(Bは輝度)。あいにく、これらの定義は標準化されていないが、HSIとHSBは、HSLとHSVと同義であると通常解釈される。これらのモデルの定義は周知であり、次の出版物にみられる。Gonzalez Rafael C.、Richard Eugene Woods、Prentice Hall「Digital Image Processing」407-413頁、ISBN 013168728X、2007年。「The HSB/HLS Color Model - Color Models - Technical Guides」Adobe(登録商標)。Tom Jewett「Colors: HSB」http://www.tomjewett.com/colors/hsb.html、2009年6月29日検索。Ben Willmore「Adobe(登録商標)Photoshop(登録商標)CS2: studio techniques」Adobe(登録商標)Press、280頁、ISBN 0321321898、2005年。
【0038】
以下の説明において、HSLおよびHSVを例として使用するが、本発明はHSIおよびHSBモデルにも同様に適用可能である。
【0039】
HSLおよびHSVはともに、ボトムの黒色からトップの白色までの中心軸の範囲の間に無彩色(neutral colors)がある(色立体と呼ばれる)円柱内の、黒色から白色の間の点として色を記述すると考えることができる。中心の縦軸回りの角度が「色相」に相当し、当該軸からの距離が「彩度」に相当し、当該軸に沿う距離が「明度」「値」または「輝度」に相当する。
【0040】
目的において二つの表現は類似するが、アプローチが若干異なる。ともに数学的円柱であるが、HSV(色相、彩度、値)は概念上、黒色点がボトムにあり、完全純色(fully-saturated color)がトップの円の周りにある、逆転した色錐体と考えられる(図5参照)。HSL(色相、彩度、明度)は概念上、白色がトップに、黒色がボトムにあり、完全純色が水平断面のエッジの周りにあり、その中心に中間のグレイ色がある、双錐体(double-cone)または球体を表す(図6を参照)。図5はHSV色空間の逆転した錐体を概略的に示す図である。図6はHSL色空間の双錐体を概略的に示す図である。なお、HSLおよびHSVにおける「色相」は同一の属性を示すが、「彩度」の定義は劇的に異なる。
【0041】
HSLおよびHSVはデバイス依存RGBモデルの単純な変換である。そのため、(h, s, l)または(h, s, v)のトリプレットにより定義される物理的な色は、デバイスまたは特定のRGB空間の赤、緑、青の三原色、および、これらの三原色の量を表すために使用されるガンマ補正に依存する。従って、ユニークなRGBデバイスは、それに付随するユニークなHSLおよびHSV空間を有するから、(h, s, l)または(h, s, v)のトリプレットはsRGBのような特定のRGB色空間に結び付けられる場合に明確になる。
【0042】
両モデルは、Alvy Ray Smithにより1978年に最初に公式に記述されたが、三次元において色を記述する概念は18世紀に遡る。例えば、これらのモデルは、次の刊行物に公式に記載されている。Alvy Ray Smith「Color Gamut Transform Pairs」Computer Graphics 12 (3): 12、doi:10.1145/965139.807361、1978年8月。Kuehni、Rolf G.「The early development of the Munsell system」Color Research and Application 27 (1): 20-27、doi:10.1002/col.10002、2002年2月。
【0043】
ステップS110において、r, g, b∈[0, 1]は、RGB色空間における色の赤、緑および青の座標とする。maxはr、g、bのうち最大のものとし、minはr、g、bのうち最小のものとする。
【0044】
HSLまたはHSV空間の何れの場合も色相角h∈[0°, 360°]は式(1)に従って計算される。
…(1)
【0045】
HSL空間の場合、彩度s∈[0, 1]および明度l∈[0, 1]は式(2)および(3)に従って計算される。
…(2)
…(3)
【0046】
一般に、h値は0°から360°の間に位置するように正規化され、max=min(つまりグレイ色)の場合にh=0°が使用されるが、彩度s=0の位置において色相は幾何学的に無意味である。同様に、l=0またはl=1(つまり黒色または白色)の場合にs値として0を選択することは任意である。
【0047】
HSLおよびHSVは同じ色相定義を有するが、他の成分は異なる。HSV色空間のs値およびv値(v∈[0, 1])は式(4)および式(5)に従って定義される。
…(4)
…(5)
【0048】
例えば、RGB色空間の赤色、緑色、青色の座標(r, g, b)はそれぞれ(1, 0, 0)、(0, 1, 0)、(0, 0, 1)である。式(1)から式(3)によれば、赤色、緑色、青色の変換後のHSL座標(h, s, l)はそれぞれ
(0°, 1, 1/2)、(120°, 1, 1/2)、(240°, 1, 1/2)である。式(1)、式(4)、式(5)によれば、赤色、緑色、青色の変換後のHSV座標(h, s, v)はそれぞれ(0°, 1, 1)、(120°, 1, 1)、(240°, 1, 1)である。変換を説明するために原色を例として使用した。RGB色空間の他の色は、同様に、HSLまたはHSV空間に変換される。ステップS110の後、画像領域のすべての画素の色はHSLまたはHSV空間に変換されている。
【0049】
ステップS120において、HSVまたはHSL色空間から特定色範囲(立体)が抽出される。
【0050】
上述したように、RGBモデル表現よりも視覚的に適合させる試みにおいて、HSVまたはHSL色モデルはRGBの幾何学的配置を再構成する。従って、ステップS110で実行された変換の後、人の視覚によって同色と知覚される色がHSVまたはHSL色空間において集められる。例えば、種々の赤色は色相面の0°周辺に配置され、緑色は120°周辺に配置され、青色は240°周辺に配置される。さらに、黒色と人の視覚によって黒色と知覚される色は、錐体の下側の頂点部周辺に配置される。白色と人の視覚によって白色と知覚される色は、HSL色空間の錐体の上側の頂点部周辺に配置され、HSV色空間の上面の中央周辺に配置される。さらに、人の視覚によってグレイ色と知覚される色は、HSLまたはHSV色空間の錐体の中心軸上または中心軸周辺に分散される。
【0051】
本発明において、抽出される特定色範囲は、人の視覚により黒色、グレイ色、白色として知覚される色を含む。このように、特定色範囲に属する色情報が抽出され、特定色範囲に属する色情報は一般色(特定色範囲外の色)に属する色情報から分離される。図5は本発明の一実施例に従うHSV色空間における特定色範囲を示す。特定色範囲は、破線により示される立体である。図6は本発明の一実施例に従うHSL色空間における特定色範囲を示す。特定色範囲は、破線により示される立体である。図5において、HSV色空間全体は逆転した錐体である。図6において、HSL色空間全体は双錐体である。
【0052】
HSV色空間において、物理的な色が(h, s, v)により定義される場合、特定色範囲の立体は式(6)により定義される。
…(6)
ここで、btは黒閾値を意味し(つまり、当該閾値を下回る値をもつ色は黒色と見做す)、bt値として0.15の使用が推奨される。
gwtはグレイ白閾値を意味し(つまり、当該閾値を下回る彩度をもつ色は白色またはグレイ色と見做す)、gwt値として0.15の使用が推奨される。
【0053】
推奨値は0.15であるが、bt値とgwt値として0.1または0.2などの他の値も適用可能である。
【0054】
図5において、式(6)の「v<bt」部分は逆転した錐体の破線で示される頂点部(以下、黒立体と呼ぶ)を表す。式(6)の「s<gwt かつ v≧bt」の部分は逆転した錐体の中央に破線で示される錐台(turncated cone)(以下、グレイ白立体と呼ぶ)を表す。HSV色空間の場合、特定色範囲は黒立体とグレイ白立体の総和に等しい。
【0055】
HSL色空間において、物理的な色が(h, s, l)により定義される場合、特定色範囲の立体は式(7)により定義される。
…(7)
ここで、btは黒閾値を意味し(つまり、当該閾値を下回る明度をもつ色は黒色と見做す)、bt値として0.15の使用が推奨される。
gtはグレイ閾値を意味し(つまり、当該閾値を下回る彩度をもつ色はグレイ色と見做す)、gt値として0.15の使用が推奨される。
wtは白閾値を意味し(つまり、当該閾値を上回る明度をもつ色は白色と見做す)、wt値として0.85の使用が推奨される。
【0056】
同様に、bt値、gt値、wt値として他の値を使用することができる。
【0057】
図6において、式(7)の「l<bt」部分は双錐体の破線で示される下側の頂点部(以下、黒立体と呼ぶ)を表す。式(7)の「s<gt かつ l≧bt かつ l≦wt」部分は、双錐体の中央の破線により示される、底面が一致する二つの錐台(以下、グレイ立体と呼ぶ)を表す。式(7)の「l>wt」部分は双円錐の破線で示される上側の頂点部(以下、白立体と呼ぶ)を表す。HSL色空間の場合、特定色範囲は黒立体、グレイ立体および白立体の総和に等しい。
【0058】
ステップS120の後、特定色範囲を表す立体は、図5および図6に破線で示す立体部分のように定義され、抽出される。
【0059】
ステップS130において、HSVまたはHSL色空間の残り部分(特定色範囲以外)は、色相面に従い複数の一般色範囲に分割される。
【0060】
本発明では、HSVまたはHSL色空間において、特定色範囲以外の色の種類は色相面により記述される。色相値の範囲は[0°, 360°]である。N個の一般色範囲(特定色範囲以外)が必要な場合、HSVまたはHSL色空間の残り部分は式(8)に従って分割される。
…(8)
ここで、i=0, 1, …, N-1であり、Nは1より大きい整数。
【0061】
このステップにおける分割は、後述する図11に示すように、HSVまたはHSL色空間の残り部分(中央の特定色範囲以外)を実際に切り分ける。図11の場合、N=C-1である。つまり、HSVまたはHSL色空間の残り部分はC-1個の一般色範囲に分割される。
【0062】
ステップS140において、特定色範囲および一般色範囲を含む全色範囲が量子化される。量子化において、特定色範囲と特定色範囲外の色(一般色範囲)とは異なる方法で処理される。とくに、特定色範囲は値v(または明度)面に従い量子化され、一般色範囲は値v(または明度)面および彩度面に従い量子化される。
【0063】
まず、特定色範囲の量子化を詳細に説明する。
【0064】
HSL色空間において、物理的な色が(h, s, l)により定義される場合、特定色ColorSは式(9)に従い量子化される。
…(9)
【0065】
式(9)によれば、特定色範囲は明度面に従い分割される。量子化において、特定色範囲の黒立体は、それぞれが明度軸に沿う厚さLBを有するB個の部分に分割される。特定色範囲のグレイ立体は、それぞれが明度軸に沿う厚さLGを有するG個の部分に分割される。特定色範囲の白立体は、それぞれが明度軸に沿う厚さLWを有するW個の部分に分割される。
【0066】
図7はHSL色空間における特定色範囲の量子化の一例を示す図である。図7においてB=W=1およびG=4であるが、これは説明のための一例に過ぎず、0より大きい整数をB、WおよびGとして使用することができる。HSV色空間における特定色範囲の量子化は図7と同様である。
【0067】
同様に、HSV色空間において、物理的な色が(h, s, v)により定義される場合、特定色ColorSは式(10)に従い量子化される。
…(10)
【0068】
式(10)によれば、特定色範囲は明度面に従い分割される。量子化において、特定色範囲の黒立体は、それぞれが明度軸に沿う厚さVBを有するB個の部分に分割される。特定色範囲のグレイ白立体は、それぞれが明度軸に沿う厚さVGWを有するV個の部分に分割される。同様に、0より大きい整数をBおよびVとして使用することができる。
【0069】
式(9)および(10)において、Nbは黒立体から分割された部分のシリアル番号を表す。Ngはグレイ立体から分割された部分のシリアル番号を表す。Nwは白立体から分割された部分のシリアル番号を表す。Ngwはグレイ白立体から分割された部分のシリアル番号を表す。従って、取得されたColorS(量子化の結果)は、色が属す分割部分のシリアル番号を表す。
【0070】
量子化の後、特定色範囲内の色(h, s, l)または(h, s, v)は、色が属す分割部分のシリアル番号に量子化されている。
【0071】
次に、一般色範囲の量子化を詳細に説明する。
【0072】
特定色範囲外の色(一般色)がHSVまたはHSL色空間において定義される場合、一般色ColorCは式(11)に従い量子化される。
…(11)
【0073】
式(11)によれば、一般色範囲は値v(明度)面および彩度面に従い分割される。ここで、ステップS130において取得されたN個の一般色範囲がそれぞれ量子化される。
【0074】
式(11)において、一般色範囲は、それぞれが半径方向に沿う厚さSCを有する、彩度面に従うS個の部分に分割される。同時に、HSV色空間の場合、一般色範囲は、それぞれが明度軸に沿う厚さVCを有する、値v面に従うV個の部分にも分割される。HSL色空間の場合、一般色範囲は、それぞれが明度軸に沿う厚さLCを有する、明度面に従うL個の部分にも分割される。値S、LおよびVとして0より大きい整数を使用することができる。
【0075】
図8はHSV色空間における、ある一般色範囲の量子化例を示す図である。図8においてS=3およびV=4であるが、これは説明のための一例に過ぎず、0より大きい整数をSおよびVとして使用することができる。HSL色空間における一般色範囲の量子化は図8と同様である。
【0076】
式(11)において、Nsは彩度面に従い分割された分割部分のシリアル番号を表し(図8の左側部分を参照)、Ns=0, 1, …, S-1である。Nvは明度面に従い分割された分割部分のシリアル番号を表し(図8の右側部分を参照)、Nv=0, 1, …, V-1である。Nlは明度面に従い分割された分割部分のシリアル番号を表し、Nl=0, 1, …, L-1である。
【0077】
従って、取得されたColorC(量子化の結果)は、一般色が属す分割部分のシリアル番号を表す。
【0078】
量子化後、ある特定の一般色範囲の色(h, s, l)または(h, s, v)は、当該色が属す分割部分のシリアル番号に量子化されている。上記の量子化処理は、ステップS130で取得された一般色範囲それぞれに対して実行される。
【0079】
抽出された特定色範囲および特定色範囲外の色の異なる量子化後、入力画像領域は量子化色領域に量子化される。
【0080】
上記実施例において、画像領域全体が量子化色領域に量子化され、この量子化色領域はステップS300の入力として直接使用することができる。
【0081】
別の実施例においては、ステップS300を実行する前に、ブロック分割ステップS200を実行することができる。ステップS200はオプションである。ステップS200において、ステップS100で取得された量子化色領域は複数の画像ブロックに分割される。
【0082】
実際、分割ブロックは、格子状、放射状、環状などの多くの方法で配置可能である。格子状の方法は、量子化色領域を網目(grids)のブロックに分割する。放射状の方法は、量子化色領域を扇形(sectors)のブロックに分割する。本発明において、回転不変性を有する環状の方法が推奨される。
【0083】
環状の方法を採用する場合、まず、量子化色領域の中心をユーザが設定するかコンピュータシステムが自動設定する。その後、設定された中心を中心点として複数のブロックが設定される。複数のブロックは、環状ブロックを形成するように、異なる半径または辺の長さを有す。
【0084】
図9は量子化色領域を分割して生成された環状ブロックの一例を示す図である。図9において、環状ブロックは円、楕円、正方形または矩形の形状を有す。各環状ブロックは内側の半径と外側の半径を有する。最も内側のブロック(図9のブロックB0)は環状ではなくソリッドな形状である必要があり、最も内側のブロック(図9のブロックB0)の内側の半径は零である。各ブロックの面積は、完全に等しい必要はないが、同じであることが好ましい。環状ブロックの内側の半径と外側の半径の間の差分である環の幅は小さ過ぎてはならない。好ましくは、環の幅は三画素より大きい(条件1)。一実施例において、分割ブロックは重畳しない。図9のような別の実施例において、複数の画像ブロックの幾つかは、ブロックB1とB2のように重畳してもよい。重畳率(重畳部の環の幅/当該ブロックの環の幅)は零でもよく(これは、隣接する二つのブロックの間に重畳部がないことを意味する)、好ましくは、0.5以下である(条件2)。ブロックの数は、上記の条件1と2に依存し、好ましくは、4または5である。
【0085】
別の実施例において、ブロック分割ステップはステップS100の前に実行可能で、その場合、画像領域は複数の画像ブロックに分割される。この場合、色量子化ステップS100において、複数の画像ブロックを含む量子化色領域が形成するために、量子化が複数の画像ブロックそれぞれに実行される。色ヒストグラム計算ステップS300において、色ヒストグラムが複数の画像ブロックそれぞれについて計算され、ヒストグラムアセンブルステップS400において、ユニークベクトルが計算された色ヒストグラムを使用して生成される。ここで実行されるブロック分割は、図9に示す形状と同様の形状でもよい。
【0086】
ステップS300において、色ヒストグラムが量子化色領域に従い計算される。これは、特定色範囲および一般色範囲を含む各色範囲の画素数を単にカウントすることにより実行可能である。
【0087】
このステップにおいて、ヒストグラムは、カラー画像領域の画素の異なる量子化値に従い計算される。カラー画像領域の各画素には、ステップS140で計算され、上述したシリアル番号である量子化値と呼ばれる特定の値がある。
【0088】
ヒストグラムにおいて、各ビンの値は、ある特定の量子化値の画素数を意味する。ヒストグラムのビンの順序を図10に示す。
【0089】
図10において、Color 1からColor C-1は一般色である。ヒストグラムにおける色の全種類はC種類あり、C種類は、一つの特定色範囲とC-1個の一般色範囲を含むC個の色範囲に対応する。Uは一般色範囲それぞれの量子化値の数であり、Vは特定色範囲の量子化値の数である。一般に、特定色範囲は各一般色範囲より重要である。そのため、VはU以上である。
【0090】
ステップS300の後、画像領域について色ヒストグラムが計算されていて、色ヒストグラムはステップS400の入力として使用可能である。
【0091】
別の実施例においては、ステップS300で色ヒストグラムが計算された後、色収差の影響をさらに低減するために、オプションの色ヒストグラムビン平滑化ステップを実行する。
【0092】
色ヒストグラムビン平滑化ステップにおいて、一般色範囲(特定色範囲以外)からのヒストグラムビンが平滑化される。一般色範囲(特定色範囲以外)は、HSLまたはHSV色空間の何れの場合も、色相角h∈[0°, 360°]により定義される。色ヒストグラムビン平滑化は、隣接するビン(色範囲)が互いに影響するように試みる。図11は色ヒストグラムビン平滑化の効果を示す図である。
【0093】
図11に示すように、色ヒストグラムビン平滑化は式(12)に従い実行される。
…(12)
ここで、wは重み値、
jは一般色範囲それぞれの量子化値、
iは一般色範囲のシリアル番号、
i=1, 2, …, C-1、
i=1の場合はColori-1, j=ColorC-1, j。
【0094】
量子化色領域が上述した複数のブロックに分割される実施例において、図12に示す処理を、各ブロックの色ヒストグラムを計算するために実行することができる。図12は量子化色領域の対応する分割ブロックから計算された各ヒストグラムの最終色ヒストグラムを計算する方法を示すフローチャートである。
【0095】
方法は次のステップを含む。量子化色領域の各画像ブロックのヒストグラムを計算するステップ(S310)。特定色範囲以外の全一般色範囲からのヒストグラムビンを平滑化するステップ(S320)。各画像ブロックのヒストグラムを正規化して最終色ヒストグラムにするステップ(S330)。
【0096】
ステップS310の計算は、ヒストグラムをブロックごとに計算する点を除き、上記ステップS300と同様である。ステップS320の平滑化は、色ヒストグラムビン平滑化をブロックごとに実行する点を除き、上記色ヒストグラムビン平滑化ステップと同様である。
【0097】
ステップS330において、各ブロックのヒストグラムは最終色ヒストグラムに正規化される。何故ならば、各分割ブロックの面積が異なることもあり、ブロックを分割する場合に当該処理ステップが必要である。
【0098】
正規化は式(13)に従い実行される。
…(13)
ここで、hiは各ヒストグラムのビンの数、
iは色の種類のシリアル番号。
【0099】
ブロックを分割する場合、上記ステップS300は、ステップS310からS330に置き換えられる。
【0100】
ステップS300の後、一つの色ヒストグラム(通常の場合)、または、複数の色ヒストグラム(ブロックを分割する場合)が生成されている。
【0101】
ステップS400において、ユニークベクトルがステップS300で生成された色ヒストグラムを使用して生成される。
【0102】
量子化色領域をブロックに分割しない場合、色ヒストグラムがステップS400に入力される。この場合、ユニークベクトルVが生成される。ベクトルV={N, M1, …, MC-1}である。ここで、ベクトルにおけるNはN要素を表し、M1からMC-1はそれぞれM要素を表す。これらの要素の値は、図10のヒストグラムにおける画素のカウント値に対応する。
【0103】
これで、入力画像領域の特徴ベクトルが取得され、画像領域の記述に使用される。
【0104】
他方、量子化色領域をブロックに分割する場合、複数の色ヒストグラム(その数がブロック数に等しい)がステップS400に入力される。この場合、ステップS400は、図13に示す方法に置き換えられる。図13は、量子化色領域の各分割ブロックからの色ヒストグラムを集めてユニークベクトルにする方法を示すフローチャートである。この方法は次のステップを含む。異なる画像ブロックからの色ヒストグラムに異なる重みを設定するステップ(S410)。複数の画像ブロックの重み付けされた色ヒストグラムを集めてユニークベクトルにするステップ(S420)。ユニークベクトルを正規化するステップ(S430)。
【0105】
ステップS410において、入力された色ヒストグラムそれぞれに重みが設定される。人の視覚によれば、視界(vision)の中心近傍に位置する物(things)がより重要である。そのため、中心近傍のブロックからの色ヒストグラムに大きい重み値を付加する。図14はブロックの重み付け例を示す図である。図14に示すように、濃い色ほど大きな重みが付加される。
【0106】
ステップS420において、重み付けされた色ヒストグラムが集められてユニークベクトルとされる。
【0107】
例えば、ユニークベクトルはB={w1B1, w2B2, …, wNBN}である。ここで、Nはブロック数、B1は一番目のブロックの特徴ベクトルを意味し、BNはN番目のブロックの特徴ベクトルを意味する。w1からwNはそれぞれB1からBNの重みである。B1からBNはそれぞれ、上述したベクトルVの形態を有す。
【0108】
ステップS430において、ユニークベクトルBが最終特徴ベクトルB'に正規化される。正規化は式(14)に従い実行される。
…(14)
ここで、Biは各ブロックの特徴ベクトル、
wiは各ブロックの重み、
Nは分割ブロックの数。
【0109】
従って、最終ベクトルはB'={B'1, B'22, …, B'N}である。これで、入力画像領域の特徴ベクトルが取得され、画像領域の記述に使用される。
【0110】
なお、量子化色領域をブロックに分割する場合、取得される特徴ベクトルは、量子化色領域をブロックに分割しない場合に取得される特徴ベクトルよりも長い。長いベクトルは画像領域をより正確に記述することができるが、より高い計算の複雑さを伴う。
【0111】
本発明に従う色ヒストグラムに基づき画像領域を記述する方法は、オブジェクト検出、オブジェクト追跡および画像クエリに適用可能である。
【0112】
図15は本発明に従う一つ以上の画像からのオブジェクトを登録する方法500を示すフローチャートである。この方法は次のステップを含む。一つ以上の画像上で登録すべき一つ以上のオブジェクト領域を指定するためのステップ(S510)。一つ以上のオブジェクト領域それぞれについて、オブジェクト領域を量子化色領域に量子化するステップ(S520)。ステップS520では、量子化において特定色範囲と特定色範囲の外の色を異なる方法で処理し、量子化色領域に従い色ヒストグラムを計算し、色ヒストグラムを使用してユニークベクトルを生成する。複数のベクトルが生成された場合、複数のベクトルから最終特徴ベクトルを計算するステップ(S530)。オブジェクトについて最終特徴ベクトルを登録するステップ(S540)。
【0113】
ステップS510において、一つ以上の画像上で登録すべき一つ以上のオブジェクト領域が指定される。オブジェクト領域を指定する際、ユーザは、一つ以上の画像上で登録すべきオブジェクト領域を指定する。方法は一つまたは少数のオブジェクト領域を使用するだけではオブジェクトと背景を区別することができないから、パフォーマンス向上のために、オブジェクト領域は背景を含まないことが好ましい。つまり、ユーザは、有効なオブジェクトサンプルを提供すべきである。オブジェクト領域は、大幅に変化しない、異なる特定の色を有する複数の領域を含むべきである。
【0114】
なお、本発明の画像記述方法に基づくと、一つのサンプル画像を提供するだけで、オブジェクトの登録が達成可能である。オブジェクトを検出するために、当該オブジェクトに関係する多数のサンプル画像を登録して検出器のトレーニングと学習を行う必要がある従来技術の他の画像記述方法と比較すると、本発明の画像登録は遥かに単純である。
【0115】
ステップS520において、指定された各オブジェクト領域は、上述した実施例の何れか一つに従う画像記述方法を使用して、特徴ベクトルとして記述される。一実施例において、回転不変性の向上のために、指定されたオブジェクト領域は環状ブロックに分割される(図9の第一のブロック分割を参照)。
【0116】
ステップS510で複数のオブジェクト領域が指定された場合、ステップS530において、同数のオブジェクト別特徴ベクトルが生成される。複数のベクトルが生成されると、最終特徴ベクトルが複数のベクトルから計算される。一つの特徴ベクトルのみが生成されると、特徴ベクトルが最終特徴ベクトルとして直接使用される。統計および機械学習の多くの方法が、このステップにおいて使用可能であり、平均計算アルゴリズム(means calculation algorithm)が容易な方法として推奨される。
【0117】
オブジェクト別特徴ベクトルの集合(x1, x2, …, xn)が与えられた場合、平均値(means)は式(15)に従い計算される。
…(15)
ここで、
は最終オブジェクト別特徴ベクトル。
【0118】
ステップS540において、オブジェクトの最終特徴ベクトルが登録される。例えば、最終特徴ベクトルは格納手段に格納される。
【0119】
ステップS540の後、画像登録は終了する。ユーザにより指定されたオブジェクト領域は、特徴ベクトルによって特徴付けされる。特徴ベクトルは、キーワードと同様、他の画像内のオブジェクトの検出に使用される。
【0120】
図16は図15の方法に従い登録されたオブジェクトの特徴ベクトル(以下、第一のベクトルと呼ぶ)に基づき、画像からオブジェクトを検出する方法600を示すフローチャートである。この方法は次のステップを含む。画像から何らかの部分領域をクロップするステップ(S610)。各部分領域について、部分領域を量子化色領域に量子化するステップ(S620)。ステップS620では、量子化において特定色範囲と特定色範囲外の色を異なる方法で処理し、量子化色領域に従い色ヒストグラムを計算し、色ヒストグラムを使用して第二のベクトルを生成する。
【0121】
オブジェクトが部分領域に存在するかを判定するために、第一のベクトルと第二のベクトルを比較するステップ(S630)。
【0122】
ステップS610において、多くの部分領域が検出対象画像からクロップされる。部分領域は次のようにクロップされる。登録されたサンプルオブジェクト領域と同じ大きさを有する探索ウィンドウを利用する。検出対象画像を横切るように探索ウィンドウを徐々にシフトし、各シフトの前に探索ウィンドウに含まれる画素を抽出して部分領域を作成する。検出対象画像の周りを通して(thorugh around)探索ウィンドウをシフトした後、探索ウィンドウの大きさを維持したまま検出対象画像をリサイズ(縮小)する。所定の制限に達するまで、リサイズ(縮小)とシフト処理動作を繰り返す。
【0123】
これは、検出対象画像をトラバースする方法の一例に過ぎない。当業者は、他のトラバース方法を容易に心に描く(envisage)ことができる。例えば、別の実施例において、検出対象画像はリサイズされずに、探索ウィンドウがリサイズされ、そして、探索ウィンドウ内の部分領域が登録されたサンプルオブジェクト領域の大きさにリサイズされる。
【0124】
ステップS620において、各部分領域は、上述した実施例の何れか一つの画像記述方法を使用して、特徴ベクトルとして記述される。このステップの全パラメータは、ステップS520においてオブジェクト別特徴ベクトルを生成するパラメータと同じ必要がある。
【0125】
ステップS630において、オブジェクトが部分領域に存在するかを判定するため、部分領域の特徴ベクトルと(オブジェクトの)登録された特徴ベクトルが比較される。このステップにおいて、相関、カイ二乗、バタチャリヤ(Bhattacharyya)、交差など、ベクトル比較に関する多くの方法が使用可能である。ここでは、カイ二乗アルゴリズムが単純な計算方法として推奨される。
【0126】
例えば、ユーザが登録したオブジェクト領域の特徴ベクトルH1と、現在の部分領域の特徴ベクトルH2の二つの特徴ベクトルH1、H2が与えられた場合、H1とH2の間の距離は式(16)により表される。
…(16)
ここで、H(i)は特徴ベクトルHのi番目の次元の値、
d(H1, H2)<THの場合、部分領域がユーザが登録したオブジェクトを含むことを意味する、
d(H1, H2)≧THの場合、部分領域がユーザが登録したオブジェクトを含まないことを意味する、
THは特徴ベクトルの次元の量(quantity)と精度に依存する経験値。
【0127】
図17は本発明のオブジェクト検出方法に従い取得された検出結果の一例を示す図である。図17の左部分は、ステップS510でユーザが指定したサンプルオブジェクト領域の一例を示す。サンプルオブジェクト領域は他の画像において検出されたオブジェクトであり、このオブジェクト領域の特徴ベクトルが登録(格納)されている。図17の右部分は、左部分の入力サンプルオブジェクト領域に対応する、オブジェクト検出方法600の検出結果を示す。図17の右部分において、登録されたオブジェクトを含む画像の部分領域の異なるサイズが矩形フレームによって示される。
【0128】
オブジェクト検出方法600の実性能により、本発明者は次のデータを取得した。登録されたオブジェクトを検出するために、画像(1280×720画素)の総数344,300領域が入力され、図17の右部分に示すように、774領域がオブジェクト(犬の顔)を含むと判定された。図17から、検出精度が高く、検出された各部分領域(矩形フレーム)が犬の顔を含むことがわかる。
【0129】
別の精度の評価方法において、オブジェクト(犬の顔)を有する画像の1,100領域が入力され、正検出率(つまり領域が犬の顔を含む)は94.77%である。オブジェクト(犬の顔)を有さない画像の30,000ランダム領域が入力され、正検出率(つまり領域が犬の顔を含まない)は99.99%である。
【0130】
オブジェクト検出方法600の別の利点は高速であることである。画像(1280×720画素)の各フレームについて0.37秒以内に検出を完了することができる。
【0131】
本発明の画像領域記述方法とオブジェクト検出方法を使用すると、オブジェクトの状態(posture)について高いロバスト性が得られる。一つのサンプルオブジェクト画像領域のみを必要とするオブジェクト検出方法600を使用して、犬の顔の多くの異なる状態を検出することができる。図18はオブジェクトの状態に関係なく、オブジェクト(犬の顔)が正確に検出されることを示す図である。
【0132】
本発明の画像領域記述方法とオブジェクト検出方法を使用すると、色収差について高いロバスト性が得られる。光源とカメラの受光素子に起因する色収差は、本発明の画像領域記述方法に僅かに影響するだけである。図19は色収差に関係なく、オブジェクト(犬の顔)が正確に検出されることを示す図である。
【0133】
本発明の画像領域記述方法とオブジェクト検出方法を使用すると、検出結果はオブジェクトの回転に影響されず、つまり、回転不変性が得られる。画像領域記述方法に環状ブロック分割方法を使用すると、オブジェクトの回転は本発明のオブジェクト検出に影響しない。図20はオブジェクトの回転に関係なく、オブジェクト(犬の顔)が正確に検出されることを示す図である。
【0134】
この説明においては、静止画像を例に説明した。しかし、言うまでもなく、ビデオは多数の画像のフレームから形成されるから、本発明は、ビデオにも同様に適用可能である。つまり、本発明の画像領域記述とオブジェクト検出は動画像(ビデオ)に適用可能である。
【0135】
この説明において、すべての閾値の値は、例に過ぎず、本発明の範囲を制限するものではない。
【0136】
本発明の方法とシステムは、多くの方法で実現することができる。例えば、本発明の方法とシステムは、ソフトウェア、ハードウェア、ファームウェア、または、それらの何らかの組み合わせで実現することができる。方法のステップの上述した順番は、例示であることを意図するに過ぎず、特に記述しない限り、本発明の方法のステップは説明した順番に限定されるものではない。さらに、幾つかの実施例において、本発明に従う方法を実現する機械が読み取り可能な命令を含む、記録媒体に記録されたプログラムとして、本発明は実現される。従って、本発明は、本発明に従う方法を実現するプログラムを格納した記録媒体を含む。
【0137】
本発明の幾つかの特定の実施例を例とともに詳細に説明したが、当業者は、上記の例が、例示であることを意図するに過ぎず、本発明の範囲を限定することを意図しないことを理解すべきである。さらに、当業者は、上記の実施例が本発明の趣旨の範囲から逸脱せずに変更可能であることを理解すべきである。本発明の範囲は、添付する特許請求の範囲によってのみ定義される。
【特許請求の範囲】
【請求項1】
色ヒストグラムに基づき画像領域を記述する方法であって、
量子化において特定色範囲と前記特定色範囲の外の色とを異なる方法で処理して、前記画像領域を量子化色領域に量子化する色量子化ステップと、
前記量子化色領域に従い一つ以上の色ヒストグラムを計算する色ヒストグラム計算ステップと、
前記一つ以上の色ヒストグラムを使用してユニークベクトルを生成するヒストグラムアセンブルステップとを有する方法。
【請求項2】
前記色量子化ステップは、
前記画像領域をHSVまたはHSL色空間に変換するステップと、
前記HSVまたはHSL色空間から、人の視覚により黒色、グレイ色、白色として知覚される色を含む前記特定色範囲を抽出するステップと、
前記HSVまたはHSL色空間の残りの部分を複数の第二の色範囲に分割するステップと、
前記特定色範囲および前記複数の第二の色範囲を量子化するステップとを有する請求項1に記載された方法。
【請求項3】
さらに、前記量子化色領域を複数の画像ブロックに分割するブロック分割ステップを有し、
前記色ヒストグラム計算ステップにおいて、前記複数の画像ブロックそれぞれについて色ヒストグラムが計算され、
前記ヒストグラムアセンブルステップにおいて、前記計算された色ヒストグラムを使用して前記ユニークベクトルが生成される請求項2に記載された方法。
【請求項4】
さらに、前記画像領域を複数の画像ブロックに分割するブロック分割ステップを有し、
前記色量子化ステップにおいて、複数の画像ブロックを含む量子化色領域を形成するために、前記複数の画像ブロックそれぞれが前記量子化され、
前記色ヒストグラム計算ステップにおいて、前記複数の画像ブロックそれぞれについて色ヒストグラムが計算され、
前記ヒストグラムアセンブルステップにおいて、前記計算された色ヒストグラムを使用して前記ユニークベクトルが生成される請求項2に記載された方法。
【請求項5】
前記複数の画像ブロックの幾つかは重畳する請求項3または請求項4に記載された方法。
【請求項6】
前記複数の画像ブロックは、環状であり、同じ中心点と異なる半径を有する請求項3または請求項4に記載された方法。
【請求項7】
前記複数の画像ブロックは格子状または放射状である請求項3または請求項4に記載された方法。
【請求項8】
前記色ヒストグラム計算ステップは、
前記量子化色領域についてヒストグラムを計算し、
前記特定色範囲以外の前記第二の色範囲すべてのヒストグラムのビンを平滑化する請求項2に記載された方法。
【請求項9】
前記色ヒストグラム計算ステップは、
前記量子化色領域の各画像ブロックについてヒストグラムを計算し、
前記特定色範囲以外の前記第二の色範囲すべてのヒストグラムのビンを平滑化し、
前記画像ブロックそれぞれの前記ヒストグラムを正規化して最終色ヒストグラムとする請求項3または請求項4に記載された方法。
【請求項10】
前記ヒストグラムアセンブルステップは、
異なる画像ブロックの色ヒストグラムについて異なる重みを設定し、
前記複数の画像ブロックの重み付けした色ヒストグラムを集めてユニークベクトルとし、
前記ユニークベクトルを正規化する請求項3または請求項4に記載された方法。
【請求項11】
一つ以上の画像からのオブジェクトを登録する方法であって、
前記一つ以上の画像上で、登録すべき一つ以上のオブジェクト領域を指定し、
前記一つ以上のオブジェクト領域それぞれについて、量子化において特定色範囲と前記特定色範囲の外の色とを異なる方法で処理して、前記オブジェクト領域を量子化色領域に量子化し、前記量子化色領域に従い一つ以上の色ヒストグラムを計算し、前記一つ以上の色ヒストグラムを使用してユニークベクトルを生成し、
複数のベクトルが生成された場合、前記複数のベクトルから最終特徴ベクトルを計算し、
前記オブジェクトについて前記最終特徴ベクトルを登録する方法。
【請求項12】
請求項11の方法により登録されたオブジェクトの第一のベクトルに基づき、画像からオブジェクトを検出する方法であって、
前記画像から部分領域をクロップし、
前記クロップされた部分領域それぞれについて、量子化において特定色範囲と前記特定色範囲の外の色を異なる方法で処理して、前記部分領域を量子化色領域に量子化し、前記量子化色領域に従い一つ以上の色ヒストグラムを計算し、前記一つ以上の色ヒストグラムを使用して第二のベクトルを生成し、前記オブジェクトが前記部分領域に存在するかを判定するために、前記第一のベクトルと前記第二のベクトルを比較する方法。
【請求項13】
色ヒストグラムに基づき画像領域を記述するシステムであって、
量子化において特定色範囲と前記特定色範囲の外の色とを異なる方法で処理して、前記画像領域を量子化色領域に量子化する色量子化手段と、
前記量子化色領域に従い一つ以上の色ヒストグラムを計算する色ヒストグラム計算手段と、
前記一つ以上の色ヒストグラムを使用してユニークベクトルを生成するヒストグラムアセンブル手段とを有するシステム。
【請求項14】
前記色量子化手段は、
前記画像領域をHSVまたはHSL色空間に変換する手段と、
前記HSVまたはHSL色空間から、人の視覚により黒色、グレイ色、白色として知覚される色を含む前記特定色範囲を抽出する手段と、
前記HSVまたはHSL色空間の残りの部分を複数の第二の色範囲に分割する手段と、
前記特定色範囲および前記複数の第二の色範囲を量子化する手段とを有する請求項13に記載されたシステム。
【請求項15】
さらに、前記量子化色領域を複数の画像ブロックに分割するブロック分割手段を有し、
前記色ヒストグラム計算手段は、前記複数の画像ブロックそれぞれについて色ヒストグラムを計算し、
前記ヒストグラムアセンブル手段は、前記計算された色ヒストグラムを使用して前記ユニークベクトルを生成する請求項14に記載されたシステム。
【請求項16】
さらに、前記画像領域を複数の画像ブロックに分割するブロック分割手段を有し、
前記色量子化手段は、複数の画像ブロックを含む量子化色領域を形成するために、前記複数の画像ブロックそれぞれを前記量子化し、
前記色ヒストグラム計算手段は、前記複数の画像ブロックそれぞれについて色ヒストグラムを計算し、
前記ヒストグラムアセンブル手段は、前記計算された色ヒストグラムを使用して前記ユニークベクトルを生成する請求項14に記載されたシステム。
【請求項17】
前記複数の画像ブロックの幾つかは重畳する請求項15または請求項16に記載されたシステム。
【請求項18】
前記複数の画像ブロックは、環状であり、同じ中心点と異なる半径を有する請求項15または請求項16に記載されたシステム。
【請求項19】
前記複数の画像ブロックは格子状または放射状である請求項15または請求項16に記載されたシステム。
【請求項20】
前記色ヒストグラム計算手段は、
前記量子化色領域についてヒストグラムを計算する手段と、
前記特定色範囲以外の前記第二の色範囲すべてのヒストグラムのビンを平滑化する手段とを有する請求項14に記載されたシステム。
【請求項21】
前記色ヒストグラム計算手段は、
前記量子化色領域の各画像ブロックについてヒストグラムを計算する手段と、
前記特定色範囲以外の前記第二の色範囲すべてのヒストグラムのビンを平滑化する手段と、
前記画像ブロックそれぞれの前記ヒストグラムを正規化して最終色ヒストグラムとする手段とを有する請求項15または請求項16に記載されたシステム。
【請求項22】
前記ヒストグラムアセンブル手段は、
異なる画像ブロックの色ヒストグラムについて異なる重みを設定する手段と、
前記複数の画像ブロックの重み付けした色ヒストグラムを集めてユニークベクトルとする手段と、
前記ユニークベクトルを正規化する手段とを有する請求項15または請求項16に記載されたシステム。
【請求項23】
一つ以上の画像からのオブジェクトを登録するシステムであって、
前記一つ以上の画像上で、登録すべき一つ以上のオブジェクト領域を指定するための手段と、
前記一つ以上のオブジェクト領域それぞれについて、量子化において特定色範囲と前記特定色範囲の外の色を異なる方法で処理して、前記オブジェクト領域を量子化色領域に量子化し、前記量子化色領域に従い一つ以上の色ヒストグラムを計算し、前記一つ以上の色ヒストグラムを使用してユニークベクトルを生成する手段と、
複数のベクトルが生成された場合、前記複数のベクトルから最終特徴ベクトルを計算する手段と、
前記オブジェクトについて前記最終特徴ベクトルを登録する手段とを有するシステム。
【請求項24】
請求項23のシステムにより登録されたオブジェクトの第一のベクトルに基づき、画像からオブジェクトを検出するシステムであって、
前記画像から部分領域をクロップする手段と、
前記クロップされた部分領域それぞれについて、量子化において特定色範囲と前記特定色範囲の外の色とを異なる方法で処理して、前記部分領域を量子化色領域に量子化し、前記量子化色領域に従い一つ以上の色ヒストグラムを計算し、前記一つ以上の色ヒストグラムを使用して第二のベクトルを生成し、前記オブジェクトが前記部分領域に存在するかを判定するために、前記第一のベクトルと前記第二のベクトルとを比較する手段とを有するシステム。
【請求項1】
色ヒストグラムに基づき画像領域を記述する方法であって、
量子化において特定色範囲と前記特定色範囲の外の色とを異なる方法で処理して、前記画像領域を量子化色領域に量子化する色量子化ステップと、
前記量子化色領域に従い一つ以上の色ヒストグラムを計算する色ヒストグラム計算ステップと、
前記一つ以上の色ヒストグラムを使用してユニークベクトルを生成するヒストグラムアセンブルステップとを有する方法。
【請求項2】
前記色量子化ステップは、
前記画像領域をHSVまたはHSL色空間に変換するステップと、
前記HSVまたはHSL色空間から、人の視覚により黒色、グレイ色、白色として知覚される色を含む前記特定色範囲を抽出するステップと、
前記HSVまたはHSL色空間の残りの部分を複数の第二の色範囲に分割するステップと、
前記特定色範囲および前記複数の第二の色範囲を量子化するステップとを有する請求項1に記載された方法。
【請求項3】
さらに、前記量子化色領域を複数の画像ブロックに分割するブロック分割ステップを有し、
前記色ヒストグラム計算ステップにおいて、前記複数の画像ブロックそれぞれについて色ヒストグラムが計算され、
前記ヒストグラムアセンブルステップにおいて、前記計算された色ヒストグラムを使用して前記ユニークベクトルが生成される請求項2に記載された方法。
【請求項4】
さらに、前記画像領域を複数の画像ブロックに分割するブロック分割ステップを有し、
前記色量子化ステップにおいて、複数の画像ブロックを含む量子化色領域を形成するために、前記複数の画像ブロックそれぞれが前記量子化され、
前記色ヒストグラム計算ステップにおいて、前記複数の画像ブロックそれぞれについて色ヒストグラムが計算され、
前記ヒストグラムアセンブルステップにおいて、前記計算された色ヒストグラムを使用して前記ユニークベクトルが生成される請求項2に記載された方法。
【請求項5】
前記複数の画像ブロックの幾つかは重畳する請求項3または請求項4に記載された方法。
【請求項6】
前記複数の画像ブロックは、環状であり、同じ中心点と異なる半径を有する請求項3または請求項4に記載された方法。
【請求項7】
前記複数の画像ブロックは格子状または放射状である請求項3または請求項4に記載された方法。
【請求項8】
前記色ヒストグラム計算ステップは、
前記量子化色領域についてヒストグラムを計算し、
前記特定色範囲以外の前記第二の色範囲すべてのヒストグラムのビンを平滑化する請求項2に記載された方法。
【請求項9】
前記色ヒストグラム計算ステップは、
前記量子化色領域の各画像ブロックについてヒストグラムを計算し、
前記特定色範囲以外の前記第二の色範囲すべてのヒストグラムのビンを平滑化し、
前記画像ブロックそれぞれの前記ヒストグラムを正規化して最終色ヒストグラムとする請求項3または請求項4に記載された方法。
【請求項10】
前記ヒストグラムアセンブルステップは、
異なる画像ブロックの色ヒストグラムについて異なる重みを設定し、
前記複数の画像ブロックの重み付けした色ヒストグラムを集めてユニークベクトルとし、
前記ユニークベクトルを正規化する請求項3または請求項4に記載された方法。
【請求項11】
一つ以上の画像からのオブジェクトを登録する方法であって、
前記一つ以上の画像上で、登録すべき一つ以上のオブジェクト領域を指定し、
前記一つ以上のオブジェクト領域それぞれについて、量子化において特定色範囲と前記特定色範囲の外の色とを異なる方法で処理して、前記オブジェクト領域を量子化色領域に量子化し、前記量子化色領域に従い一つ以上の色ヒストグラムを計算し、前記一つ以上の色ヒストグラムを使用してユニークベクトルを生成し、
複数のベクトルが生成された場合、前記複数のベクトルから最終特徴ベクトルを計算し、
前記オブジェクトについて前記最終特徴ベクトルを登録する方法。
【請求項12】
請求項11の方法により登録されたオブジェクトの第一のベクトルに基づき、画像からオブジェクトを検出する方法であって、
前記画像から部分領域をクロップし、
前記クロップされた部分領域それぞれについて、量子化において特定色範囲と前記特定色範囲の外の色を異なる方法で処理して、前記部分領域を量子化色領域に量子化し、前記量子化色領域に従い一つ以上の色ヒストグラムを計算し、前記一つ以上の色ヒストグラムを使用して第二のベクトルを生成し、前記オブジェクトが前記部分領域に存在するかを判定するために、前記第一のベクトルと前記第二のベクトルを比較する方法。
【請求項13】
色ヒストグラムに基づき画像領域を記述するシステムであって、
量子化において特定色範囲と前記特定色範囲の外の色とを異なる方法で処理して、前記画像領域を量子化色領域に量子化する色量子化手段と、
前記量子化色領域に従い一つ以上の色ヒストグラムを計算する色ヒストグラム計算手段と、
前記一つ以上の色ヒストグラムを使用してユニークベクトルを生成するヒストグラムアセンブル手段とを有するシステム。
【請求項14】
前記色量子化手段は、
前記画像領域をHSVまたはHSL色空間に変換する手段と、
前記HSVまたはHSL色空間から、人の視覚により黒色、グレイ色、白色として知覚される色を含む前記特定色範囲を抽出する手段と、
前記HSVまたはHSL色空間の残りの部分を複数の第二の色範囲に分割する手段と、
前記特定色範囲および前記複数の第二の色範囲を量子化する手段とを有する請求項13に記載されたシステム。
【請求項15】
さらに、前記量子化色領域を複数の画像ブロックに分割するブロック分割手段を有し、
前記色ヒストグラム計算手段は、前記複数の画像ブロックそれぞれについて色ヒストグラムを計算し、
前記ヒストグラムアセンブル手段は、前記計算された色ヒストグラムを使用して前記ユニークベクトルを生成する請求項14に記載されたシステム。
【請求項16】
さらに、前記画像領域を複数の画像ブロックに分割するブロック分割手段を有し、
前記色量子化手段は、複数の画像ブロックを含む量子化色領域を形成するために、前記複数の画像ブロックそれぞれを前記量子化し、
前記色ヒストグラム計算手段は、前記複数の画像ブロックそれぞれについて色ヒストグラムを計算し、
前記ヒストグラムアセンブル手段は、前記計算された色ヒストグラムを使用して前記ユニークベクトルを生成する請求項14に記載されたシステム。
【請求項17】
前記複数の画像ブロックの幾つかは重畳する請求項15または請求項16に記載されたシステム。
【請求項18】
前記複数の画像ブロックは、環状であり、同じ中心点と異なる半径を有する請求項15または請求項16に記載されたシステム。
【請求項19】
前記複数の画像ブロックは格子状または放射状である請求項15または請求項16に記載されたシステム。
【請求項20】
前記色ヒストグラム計算手段は、
前記量子化色領域についてヒストグラムを計算する手段と、
前記特定色範囲以外の前記第二の色範囲すべてのヒストグラムのビンを平滑化する手段とを有する請求項14に記載されたシステム。
【請求項21】
前記色ヒストグラム計算手段は、
前記量子化色領域の各画像ブロックについてヒストグラムを計算する手段と、
前記特定色範囲以外の前記第二の色範囲すべてのヒストグラムのビンを平滑化する手段と、
前記画像ブロックそれぞれの前記ヒストグラムを正規化して最終色ヒストグラムとする手段とを有する請求項15または請求項16に記載されたシステム。
【請求項22】
前記ヒストグラムアセンブル手段は、
異なる画像ブロックの色ヒストグラムについて異なる重みを設定する手段と、
前記複数の画像ブロックの重み付けした色ヒストグラムを集めてユニークベクトルとする手段と、
前記ユニークベクトルを正規化する手段とを有する請求項15または請求項16に記載されたシステム。
【請求項23】
一つ以上の画像からのオブジェクトを登録するシステムであって、
前記一つ以上の画像上で、登録すべき一つ以上のオブジェクト領域を指定するための手段と、
前記一つ以上のオブジェクト領域それぞれについて、量子化において特定色範囲と前記特定色範囲の外の色を異なる方法で処理して、前記オブジェクト領域を量子化色領域に量子化し、前記量子化色領域に従い一つ以上の色ヒストグラムを計算し、前記一つ以上の色ヒストグラムを使用してユニークベクトルを生成する手段と、
複数のベクトルが生成された場合、前記複数のベクトルから最終特徴ベクトルを計算する手段と、
前記オブジェクトについて前記最終特徴ベクトルを登録する手段とを有するシステム。
【請求項24】
請求項23のシステムにより登録されたオブジェクトの第一のベクトルに基づき、画像からオブジェクトを検出するシステムであって、
前記画像から部分領域をクロップする手段と、
前記クロップされた部分領域それぞれについて、量子化において特定色範囲と前記特定色範囲の外の色とを異なる方法で処理して、前記部分領域を量子化色領域に量子化し、前記量子化色領域に従い一つ以上の色ヒストグラムを計算し、前記一つ以上の色ヒストグラムを使用して第二のベクトルを生成し、前記オブジェクトが前記部分領域に存在するかを判定するために、前記第一のベクトルと前記第二のベクトルとを比較する手段とを有するシステム。
【図1】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【図15】
【図16】
【図17】
【図18】
【図19】
【図20】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【図15】
【図16】
【図17】
【図18】
【図19】
【図20】
【公開番号】特開2013−101615(P2013−101615A)
【公開日】平成25年5月23日(2013.5.23)
【国際特許分類】
【外国語出願】
【出願番号】特願2012−245613(P2012−245613)
【出願日】平成24年11月7日(2012.11.7)
【出願人】(000001007)キヤノン株式会社 (59,756)
【Fターム(参考)】
【公開日】平成25年5月23日(2013.5.23)
【国際特許分類】
【出願番号】特願2012−245613(P2012−245613)
【出願日】平成24年11月7日(2012.11.7)
【出願人】(000001007)キヤノン株式会社 (59,756)
【Fターム(参考)】
[ Back to top ]