(57)【要約】【課題】大量の学習画像を必要とせず、目標画像だけで任意のオブジェクトを抽出するオブジェクト領域抽出装置及びプログラムを提供する。【解決手段】オブジェクト領域抽出装置は、オブジェクトを含む画像を前記オブジェクトよりも小さなサブ領域に分割する画像分割部１２と、前記画像の全ての画素を、前記画像分割部１２により分割された前記サブ領域の境界である画素と境界でない画素とに分類する画素分類部１３と、前記画素分類部１３により前記サブ領域の境界であると分類された画素が前記オブジェクトの境界であるか否かを判定する境界判定部１５と、前記サブ領域のうち隣接する２つのサブ領域の全ての組合せについて、該隣接する２つのサブ領域の境界上の画素のうち前記境界判定部１５により前記オブジェクトの境界であると判定された画素の割合が所定値以下の場合には、該隣接する２つのサブ領域を統合する領域統合部１６と、を備えている。【選択図】図１
2010067252.tif 000002
【特許請求の範囲】
【請求項１】
オブジェクトを含む画像を前記オブジェクトよりも小さなサブ領域に分割する画像分割手段と、
前記画像の全ての画素を、前記画像分割手段により分割された前記サブ領域の境界である画素と境界でない画素とに分類する画素分類手段と、
前記画素分類手段により前記サブ領域の境界であると分類された画素が前記オブジェクトの境界であるか否かを判定する境界判定手段と、
前記サブ領域のうち隣接する２つのサブ領域の全ての組合せについて、該隣接する２つのサブ領域の境界上の画素のうち前記境界判定手段により前記オブジェクトの境界であると判定された画素の割合が所定値以下の場合には、該隣接する２つのサブ領域を統合する領域統合手段と、
を備えたオブジェクト領域抽出装置。
【請求項２】
前記境界判定手段は、前記画素分類手段により前記サブ領域の境界でないと分類された画素の特徴を用いて、判定対象の画素が前記オブジェクトの境界であるか否かを判定する請求項１記載のオブジェクト領域抽出装置。
【請求項３】
前記境界判定手段による判定処理と、前記領域統合手段によるサブ領域の統合処理とを所定回数繰り返す請求項１又は請求項２記載のオブジェクト領域抽出装置。
【請求項４】
前記画素分類手段により前記サブ領域の境界でない画素に分類された画素を該画素の特徴に基づいて複数のグループに分類する非境界画素分類手段と、
前記領域統合手段によりサブ領域が統合された結果に基づいて、前記領域統合手段によるサブ領域の統合を繰り返して行うか否かを判定する繰り返し処理判定手段と、を更に備え、
前記境界判定手段は、前記非境界画素分類手段により分類された各々のグループに属する画素の特徴と、前記画素分類手段により前記サブ領域の境界であると分類された画素の特徴とを比較することにより、前記サブ領域の境界であると分類された画素が前記オブジェクトの境界であるか否かを判定し、
前記繰り返し処理判定手段によりサブ領域の統合を繰り返して行うように判定されたときには、前記画素分類手段、前記非境界画素分類手段、前記境界判定手段及び前記領域統合手段による所定の処理を繰り返して行う請求項１記載のオブジェクト領域抽出装置。
【請求項５】
前記繰り返し処理判定手段は、前記サブ領域を統合する度合いを示すパラメータに基づいて前記領域統合手段によるサブ領域の統合を繰り返して行うか否かの判定を、前記パラメータを前記統合する度合いの低いものから順番に用いて行う請求項４記載のオブジェクト領域抽出装置。
【請求項６】
コンピュータを、
オブジェクトを含む画像を前記オブジェクトよりも小さなサブ領域に分割する画像分割手段、
前記画像の全ての画素を、前記画像分割手段により分割された前記サブ領域の境界である画素と境界でない画素とに分類する画素分類手段、
前記画素分類手段により前記サブ領域の境界であると分類された画素が前記オブジェクトの境界であるか否かを判定する境界判定手段、及び
前記サブ領域のうち隣接する２つのサブ領域の全ての組合せについて、該隣接する２つのサブ領域の境界上の画素のうち前記境界判定手段により前記オブジェクトの境界であると判定された画素の割合が所定値以下の場合には、該隣接する２つのサブ領域を統合する領域統合手段、
として機能させるためのオブジェクト領域抽出プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、オブジェクト領域抽出装置及びオブジェクト領域抽出プログラムに関する。
【背景技術】
【０００２】
画像の中からオブジェクト（人、動物、人工物など）を抽出する技術は画像処理の根幹をなすものであり、昔から多くの研究開発が行われている。近年、顔検出や人検出などが実用化されてきているが、これらは特定のオブジェクトを抽出する技術であり、同じアルゴリズムを用いて他のオブジェクトを抽出することができない。言い換えると、画像の中の任意のオブジェクトを抽出する目的では使用不可能である。特定のオブジェクトを抽出するためには、事前知識（色、形状、口や目などの部品、動きなど）を既知のものとして抽出装置に取り込む必要があり、この事前知識はオブジェクトによって異なる。よって、任意のオブジェクトを抽出するためには、顔検出などと同様の手法で、画像の中に存在するすべてのオブジェクトに対する分類器・判別器を作成する必要があり、現実的ではない。
【０００３】
この画像の中からオブジェクトを抽出するという目標を達成するため、従来、輪郭抽出技術や領域分割技術の研究・開発が活発に行われている。例えば、事前知識を与えることなしにボトムアップ的にオブジェクトを抽出する技術（KMeans法、階層クラスタリング法、グラフカット法、MeansShift法、WaterShed法など）が一般的に広まっているが、任意の画像に対して任意のオブジェクトを抽出する技術は未だ存在しない。これは、オブジェクトに対する事前知識がうまく取り込まれていないのが原因の一つと考えられる。
【０００４】
また、一方でオブジェクトごとに事前知識を取り込むのではなく、単にオブジェクト間の境界のみに着目し、その境界の様子を正解画像から学習する手法が最近提案されている（例えば、非特許文献１、非特許文献２参照）。これらの手法では、学習画像が大量に必要となる。また、オブジェクトが正しく分割されている正解画像が同時に必要であり、正解画像を得るためには人手による領域分割が避けがたい。
【非特許文献１】P.Dollar, Z.Tu, and S.Belongie, “Supervised Learning of Edge and Object Boundaries.”, CVPR, 2007
【非特許文献２】D.Martin, C.Fowlkes, and J.malik, “Learning to Detect Natural Image Boundaries Using Local Brightness, Colar and Texture Cues.” PAMI, 2004
【発明の開示】
【発明が解決しようとする課題】
【０００５】
本発明は、大量の学習画像を必要とせず、複雑な画像であってもオブジェクトを含む画像だけで任意のオブジェクトを精度よく抽出するオブジェクト領域抽出装置及びオブジェクト領域抽出プログラムを提供することを目的とする。
【課題を解決するための手段】
【０００６】
上記目的を達成するために、請求項１記載のオブジェクト領域抽出装置は、オブジェクトを含む画像を前記オブジェクトよりも小さなサブ領域に分割する画像分割手段と、前記画像の全ての画素を、前記画像分割手段により分割された前記サブ領域の境界である画素と境界でない画素とに分類する画素分類手段と、前記画素分類手段により前記サブ領域の境界であると分類された画素が前記オブジェクトの境界であるか否かを判定する境界判定手段と、前記サブ領域のうち隣接する２つのサブ領域の全ての組合せについて、該隣接する２つのサブ領域の境界上の画素のうち前記境界判定手段により前記オブジェクトの境界であると判定された画素の割合が所定値以下の場合には、該隣接する２つのサブ領域を統合する領域統合手段と、を備えている。
【０００７】
請求項２記載のオブジェクト領域抽出装置は、請求項１記載のオブジェクト領域抽出装置において、前記境界判定手段は、前記画素分類手段により前記サブ領域の境界でないと分類された画素の特徴を用いて、判定対象の画素が前記オブジェクトの境界であるか否かを判定する。
【０００８】
請求項３記載のオブジェクト領域抽出装置は、請求項１又は請求項２記載のオブジェクト領域抽出装置において、前記境界判定手段による判定処理と、前記領域統合手段によるサブ領域の統合処理とを所定回数繰り返す。
【０００９】
請求項４記載のオブジェクト領域抽出装置は、請求項１記載のオブジェクト領域抽出装置において、前記画素分類手段により前記サブ領域の境界でない画素に分類された画素を該画素の特徴に基づいて複数のグループに分類する非境界画素分類手段と、前記領域統合手段によりサブ領域が統合された結果に基づいて、前記領域統合手段によるサブ領域の統合を繰り返して行うか否かを判定する繰り返し処理判定手段と、を更に備え、前記境界判定手段は、前記非境界画素分類手段により分類された各々のグループに属する画素の特徴と、前記画素分類手段により前記サブ領域の境界であると分類された画素の特徴とを比較することにより、前記サブ領域の境界であると分類された画素が前記オブジェクトの境界であるか否かを判定し、前記繰り返し処理判定手段によりサブ領域の統合を繰り返して行うように判定されたときには、前記画素分類手段、前記非境界画素分類手段、前記境界判定手段及び前記領域統合手段による所定の処理を繰り返して行う。
【００１０】
請求項５記載のオブジェクト領域抽出装置は、請求項４記載のオブジェクト領域抽出装置において、前記繰り返し処理判定手段は、前記サブ領域を統合する度合いを示すパラメータに基づいて前記領域統合手段によるサブ領域の統合を繰り返して行うか否かの判定を、前記パラメータを前記統合する度合いの低いものから順番に用いて行う。
【００１１】
請求項６記載のオブジェクト領域抽出プログラムは、コンピュータを、オブジェクトを含む画像を前記オブジェクトよりも小さなサブ領域に分割する画像分割手段、前記画像の全ての画素を、前記画像分割手段により分割された前記サブ領域の境界である画素と境界でない画素とに分類する画素分類手段、前記画素分類手段により前記サブ領域の境界であると分類された画素が前記オブジェクトの境界であるか否かを判定する境界判定手段、及び前記サブ領域のうち隣接する２つのサブ領域の全ての組合せについて、該隣接する２つのサブ領域の境界上の画素のうち前記境界判定手段により前記オブジェクトの境界であると判定された画素の割合が所定値以下の場合には、該隣接する２つのサブ領域を統合する領域統合手段、として機能させる。
【発明の効果】
【００１２】
請求項１記載の発明によれば、本構成を有さない場合に比べ、画像内に存在する任意のオブジェクト領域を抽出できる、という効果が得られる。
【００１３】
請求項２記載の発明によれば、本構成を有さない場合に比べ、大量の学習画像を必要とせず、対象画像のみの学習により、オブジェクト領域を抽出できる、という効果が得られる。
【００１４】
請求項３記載の発明によれば、本構成を有さない場合に比べ、オブジェクト領域の抽出の精度が向上する、という効果が得られる。
【００１５】
請求項４記載の発明によれば、本構成を有さない場合に比べ、大量の学習画像を必要とせず、対象画像が複雑であっても対象画像のみの学習により、オブジェクト領域を抽出できる、という効果が得られる。
【００１６】
請求項５記載の発明によれば、本構成を有さない場合に比べ、より正確に領域を統合し、オブジェクト領域の抽出の精度が向上する、という効果が得られる。
【００１７】
請求項６記載の発明によれば、本構成を有さない場合に比べ、画像内に存在する任意のオブジェクト領域を抽出できる、という効果が得られる。
【発明を実施するための最良の形態】
【００１８】
以下、本発明の実施の形態について図面を参照しながら詳細に説明する。なお、本発明は、以下の実施の形態に限定されるものではなく、特許請求の範囲に記載された範囲内で設計上の変更をされたものにも適用可能である。
【００１９】
〔第１の実施の形態〕
以下、図面を参照して本発明の第１の実施の形態を説明する。図１は、本実施の形態に係るオブジェクト領域抽出装置の構成を示すブロック図である。
【００２０】
図１に示すように、オブジェクト領域抽出装置は、画像入力部１１と、画像分割部１２と、画素分類部１３と、オブジェクト抽出部１４と、境界判定部１５と、領域統合部１６と、を備えている。
【００２１】
画像入力部１１は、オブジェクト抽出対象となる画像を取り込む。画像入力部１１は、カメラ等の装置を伴って構成してもよい。
【００２２】
画像分割部１２は、画像入力部１１により入力された画像を、抽出対象であるオブジェクトよりも小さなサブ領域（クラスタ）が生成されるように領域分割する。領域分割の方法は、公知の如何なる方法を用いてもよい。ただし、サブ領域を生成する際にオブジェクトの境界をほぼ１００％含む程度に十分な数の領域数が存在することが望ましい。
【００２３】
画素分類部１３は、画像分割部１２による領域分割の結果からノイズを除去した後に、画像中のすべての画素を境界である画素と非境界である画素とに分類する。
【００２４】
オブジェクト抽出部１４は、境界判定部１５と領域統合部１６とを含み、境界判定部１５及び領域統合部１６の実行を制御する。
【００２５】
境界判定部１５は、画素分類部１３により非境界と判定された画素に対する特徴ベクトルにより構成された分類器により、画像分割部１２により分割されたクラスタの境界部が抽出対象であるオブジェクトの境界（真の境界）であるか否かを判定する。
【００２６】
領域統合部１６は境界判定部１５により真の境界でないと判定された境界で接しているクラスタを統合する。
【００２７】
次に、本実施の形態に係るオブジェクト領域抽出装置の作用の流れを、図２に示すフローチャートに沿って説明する。
【００２８】
ステップ１００では、画像入力部１１が、オブジェクトを抽出したい対象画像を入力する。本実施の形態では対象画像として静止画像を扱うが、動画像や３Ｄ画像に拡張しても実施可能である。また、入力する対象画像は外部記憶装置に蓄えられたものでも、デジタルカメラやスキャナなどの画像出力装置を介したものでもよい。
【００２９】
ステップ１０２では、画像分割部１２が、画像入力部１１により入力された対象画像を、抽出したいオブジェクトより小さなクラスタに分割するクラスタリングを実行する。このクラスタリングを行うには分割する領域の数をできるだけ増やせばよいが、領域の数を増やし過ぎると過分割という問題が生じ、後の処理に影響を及ぼす。例えば、図地分離が可能な画像（背景を含む画像に動物や人など図を形成するオブジェクトが映っている画像）の場合、そのオブジェクトの約１／１０くらいの平均サイズとなるような領域分割を行えばよい。ただし、風景画など図地分離が困難な画像はこの限りではなく、できるだけ大きな領域数、例えば上限を１０００などに設定し、その上限値となるように領域分割を実施する。画像を指定された領域数で分割するアルゴリズムは数多く提案されており、公知の如何なるアルゴリズムを使用してもよいが、生成された領域内部に含まれる画素の特徴が互いに類似しており、異なる領域に属する画素はできる限り異なる特徴を持つようなアルゴリズムを採用すべきである。性能、スピードなどを考慮するとKMeans法、グラフ分割を応用したもの（例えば、Normalized Cut（Shi & Malik, PAMI, 2000）やＦＨ法（Felzenswalb & Huttenlocher, IJCV, 2004）などが好適である。本実施の形態では、前記の各手法の中からNormalized Cutを用いて領域分割を行うこととするが、上記の他の手法を用いてもよい。念のため、Normalized Cutアルゴリズムについて、以下に説明する。
【００３０】
Normalized Cutアルゴリズムは、画素をノード、画素間のつながりをリンクとし、画素間の類似度をそのリンクの強度と定義した場合に、そのグラフを所定の数に分割する手法である。ピクセルpiとピクセルpjのリンク強度wijをｉ行ｊ列成分に持つ正方対称行列をＷ（その大きさは画像サイズ）とし、各列成分を対角成分に加算し、非対角成分を０とした対角行列をＤとするとき、一般化固有値問題である式（１）
（Ｄ−Ｗ）ｙ＝λＤｙ      ・・・（１）
において、２番目に小さい固有値及びそれに対する固有ベクトルを計算することに帰着できる。行列Ｗのサイズが大きいため、そのままでは固有値計算に膨大な時間を要するが、画素間が離れているときにリンク強度を０とすることによって、行列のスパース性を仮定すれば、行列計算の速度を上げることが可能となる。
【００３１】
また、本手法は正確な固有ベクトルを求める必要がないので、Lanczos法等を用いることにより、さらに高速化することも可能である。実際の動作としては、２cutを繰り返すことによりNormalized Cutを実現する。
【００３２】
図３は、対象画像をNormalized Cutを用いてクラスタリングした例を示す図である。図３（ａ）は対象とする画像例を、図３（ｂ）は画像分割部１２によるクラスタリングの結果を示す。また、図４（ｂ）は、対象画像を人手によりオブジェクトを分割した結果を示すものであり、図３（ｂ）で示した画像分割部１２の出力する領域の境界は、図４（ｂ）が示す人手で作成した境界を殆ど含むことを示している。よって、画像分割部１２で作成した領域を統合することにより、理想的な領域分割結果（即ち、人手による分割結果）に近づけることが可能である。
【００３３】
ステップ１０４では、画素分類部１３が、画像分割部１２によるクラスタリングの結果からノイズを取り除く処理（前処理）を行う。具体的には、作成されたクラスタ内に属する画素数が非常に少ない場合、そのクラスタを隣接クラスタに併合させる処理を行う。例えば、特定画素の近傍８点の画素が属するクラスタＩＤを見て、最も多いクラスタＩＤにその画素のクラスタＩＤを変更する。
【００３４】
ステップ１０６では、画素分類部１３が、対象画像においてクラスタの境界となっている画素と境界となっていない画素とに分類する。クラスタリングの結果は各画素について与えられるので、境界は画素の中間に存在すべきであるが、本実施の形態では図５に示すように、ある画素２０において、その右隣の画素２１又は直下の画素２２が異なるクラスタに割り当てられる場合、その画素２０が境界であると定める。結果として、境界を０．５画素分だけ左上にずらすこととなる。
【００３５】
ステップ１０８では、画素分類部１３が、クラスタ境界となっていない各々の画素（図３（ｂ）の３０）に相当する特徴ベクトル群Ａを算出する。ある画素に対する特徴量はどのようなものでもよいが、例えば、図６に示すように、画素とその近傍８点との特徴の差（色次元なら３次元（l*a*b*）×８の２４次元の特徴ベクトル）などとしてもよい。また、色次元に加えてSobelフィルタなどエッジ情報に基づいた情報量を加えるなどしてもよい。なお、このような特徴ベクトルを算出する際には、近傍点の数やエッジフィルタのフィルタサイズは大きい方が学習の安定度の面で都合がよい。しかし、非境界部の特徴ベクトルを算出する際には、図７に示すように小さなサイズのフィルタ３１の場合はフィルタがクラスタ内に収まるが、大きなサイズのフィルタ３２の場合は隣接するクラスタにかかってしまう。このようにフィルタサイズが大きすぎると正確な非境界部に関する特徴量を表現できない場合が生じるので、このような特徴ベクトルは学習データから除外することにより、分類性を高めることも可能である。
【００３６】
ステップ１１０では、境界判定部１５が、画素分類部１３により境界となっていると分類された画素について、その画素がオブジェクト間の真の境界か偽の境界かを判定する。判定のための学習要素としては、学習用の画像を用いるのではなく、画像入力部１１により入力した対象画像の中の境界でないと判定された画素の特徴を用いる。具体的には、非境界領域の画素の特徴空間がある部分空間を形成するとき、境界領域に含まれる画素のうち、その部分空間に含まれる画素を偽の境界領域と判定し、そうでない画素を真の境界と判定する。
【００３７】
分類器を構成する際に複数のグループに属する学習データを取り扱う場合には、ＳＶＭやAdaboostなど各種分類器が利用可能であるが、本実施の形態のように、偽りの境界に属するグループのみの学習データの場合、これらを分類器として利用することはできない。学習データが１クラスである分類器としてＳＶＤＤ（Support Vector Domain Description）などの手法が提案されているが、ここではＳＶＭ（Support Vector Machine）を発展させたＯＣＳＶＭ（One-Class Support Vector Machine：B.Scholkopf, J.Platt, JS.Taylor, AJ.Smola, and R.Williamson, Neural Corporation, 2001）を用いる。ＯＣＳＶＭは、入力データを高次の特徴空間に非線形写像し（例えば、ガウシアンカーネル）、その特徴空間上で判別関数を求める手法であり、1クラス分の学習データのみを使用するので、教師なし学習の一種であると考えられる。
【００３８】
図８は、ＯＣＳＶＭによる真の境界か否かの判定処理の流れを示すフローチャートである。
【００３９】
ステップ２０２では、境界判定部１５が、特徴ベクトル群ＡからＯＣＳＶＭを生成し、各種パラメータを定めて判別関数を生成する。境界判定部１５は、非線形写像された特徴ベクトル群Ａを、その特徴空間上で、原点から最大のマージンになるような超平面で分割する。ＯＣＳＶＭにおいては、入力ベクトル（画像分割部１２において分割された境界に位置する画素に対する特徴ベクトル）ｚに対する判別関数は式（２）のように書くことができる。
【００４０】
【数１】
2010067252.tif 000003
【００４１】
ここでｘは学習特徴ベクトルであり、Ｋ（ｘ，ｙ）はカーネル関数、αは式（３）を満たすラグランジュ乗数である（ν∈(0,1)）。また、ｗは変数であり、ｎは特徴ベクトルの数である。
【００４２】
【数２】
2010067252.tif 000004
【００４３】
ステップ２０４では、境界判定部１５が、クラスタの境界に相当する画素の特徴ベクトル群Ｂを生成する。
【００４４】
ステップ２０６では、境界判定部１５が、特徴ベクトルＢを上述の判別関数に入力し、クラスタの境界が真の境界であるか否かを判定する。この判定は、以下の様に行われる。
【００４５】
判別関数の入力ｚが非境界領域の画素で構成される特徴空間内のベクトルである場合、その出力は殆ど正の値を返す。従って、図３（ｂ）の境界上の画素に対する特徴ベクトル群Ｂの特徴ベクトルを入力値として式（２）の判別関数が正の値を返す場合は、その特徴ベクトルは学習データによって構成される空間内に含まれる、即ち、偽の境界だと考えることができる。また、非正値を返す場合は、部分空間から遠い、即ち、真の境界とみなすことができる。
【００４６】
本実施の形態では、画像分割部１２が対象画像を多めのクラスタに分割している。このようにクラスタを多めに作成した場合、境界のうちある画素はオブジェクトとオブジェクトを分離する真の境界であり、その他の境界はクラスタリング数が大きすぎるために発生した偽の境界である。即ち、クラスタ境界は真の境界を含み、クラスタ境界でない画素は真の境界ではないといえる。よって、クラスタ境界でない領域の特徴を学習して、そのグループに近い特徴を持てば真の境界ではなく、そのグループに近い特徴を持たなければ真の境界である、という図式が成り立つ。従って、図３（ｂ）に示すクラスタ境界でない領域３０の局所特徴に近い特徴量を持つ画素は真の境界ではないとする上述の判定方法が可能となる。
【００４７】
図９は、画像分割部１２、画素分類部１３及び境界判定部１５の出力例を示す図である。図９（ａ）は画像分割部１２の出力結果を、図９（ｂ）は画素分類部１３による前処理後の出力結果を、図９（ｃ）は境界判定部１５の出力結果を示す。図９（ｃ）で実線で示された画素が真の境界であると判定された画素を表現する。
【００４８】
なお、本実施の形態では、前処理（図２のステップ１０４）の後、非境界であると判定された画素すべてを分類器の学習データとして利用することもできるが、８近傍を見て境界を含まない画素のみに制限してもよい。また、本実施に形態では、近傍８点との特徴値の差を用いて特徴ベクトルを構成したが、近傍数を増やしてもよい（例えば、１５点、２４点など）。その場合、近傍に境界を含まない画素数は減少するので、学習データは減少する。
【００４９】
図２のフローチャートに戻って、ステップ１１２では、領域統合部１６が、境界判定部１５の判定結果に基づいてクラスタの統合を行う。図１０は、クラスタの統合方法を示す図である。同図に示すように隣接する２つのクラスタ（Ｐ１とＰ２）を取り出し、その境界上の画素に注目する。隣接するとは、２つのクラスタの境界に位置する画素のうち共通な画素が１画素以上存在することである。
【００５０】
図１１は、クラスタの統合処理の流れを示すフローチャートである。ここで、｜Ｐｉ｜でクラスタＰｉの境界に存在する画素数、｜Ｐｉ∧Ｐｊ｜でクラスタＰｉとクラスタＰｊに共通する境界上に存在する画素数を表すとし、その共通部の画素に対する特徴ベクトルのうち、境界判定部１５で真の境界と判定された画素の個数をｍijとする。また、画像分割部１２により分割されたクラスタ数をｎｋとする。
【００５１】
ステップ３００では、領域統合部１６が、クラスタＩＤを示すｉ，ｊをそれぞれ“１”と“２”に初期化する。
【００５２】
ステップ３０２では、領域統合部１６が、ＰｉとＰｊが隣接するか否かを判定し、隣接するときはステップ３０４に進み、隣接しないときはステップ３０６に進む。
【００５３】
ステップ３０４では、領域統合部１６が、Ｓ＝ｍij／｜Ｐｉ∧Ｐｊ｜を計算し、バッファ（不図示）に蓄える。
【００５４】
ステップ３０６では、領域統合部１６が、ｉ＋１がｊより小さいときはステップ３０８に進み、ｉ＋１がｊより小さいか否かを判定し、ｉ＋１がｊ以上のときはステップ３１０に進む。
【００５５】
ステップ３０８では、領域統合部１６が、ｉを“１”加算した後、ステップ３０２に進み、ステップ３０２以降の処理を繰り返す。
【００５６】
ステップ３１０では、領域統合部１６が、ｊがｎｋより小さいか否かを判定し、ｊがｎｋより小さいときｈｓステップ３１２に進み、ｊがｎｋ以上のときはステップ３１４に進む。
【００５７】
ステップ３１２では、領域統合部１６が、ｊを“１”加算し、ｉを“１”に設定した後、ステップ３０２進み、ステップ３０２以降の処理を繰り返す。
【００５８】
ステップ３１４では、領域統合部１６が、前述のバッファに蓄えられたＳを昇順でソートし、最小値をｓとする。なお、バッファが空のときには、ｓを十分に大きな値とする。
【００５９】
ステップ３１６では、領域統合部１６が、ステップ３１４で設定したｓが予め定めた閾値ｂより大きいか否かを判定し、ｓがｂより大きいときにはステップ３１８に進み、ｓがｂ以下のときには、クラスタの統合処理を終了する。
【００６０】
ステップ３１８では、ｍij／｜Ｐｉ∧Ｐｊ｜が閾値ｂ以下であり、ＰｉとＰｊに共通の境界は偽りと判定されるので、領域統合部１６はＰｉとＰｊを統合する。また、領域統合部１６は、クラスタの統合により消失したクラスタＩＤに応じてクラスタＩＤをふり直し、バッファのデータを更新する。
【００６１】
３２０では、ｎｋを“１”減算した後、ステップ３１４に進み、ステップ３１４以降の処理を繰り返す。
【００６２】
このようにして、領域統合部１６は、すべての隣接しあうクラスタの組について、共通の境界が偽りの境界である場合に、２つのクラスタを統合する。
【００６３】
また、別の方法として、共通部｜Ｐｉ∧Ｐｊ｜が｜Ｐｉ｜及び｜Ｐｊ｜よりも小さい場合、例えばｍｉｎ（｜Ｐｉ∧Ｐｊ｜／｜Ｐｉ｜，｜Ｐｉ∧Ｐｊ｜／｜Ｐｊ｜）がある閾値ｂ２以下の場合、統合処理を実施しないという制約条件を加えたりしてもよい。更に、接する２領域の特徴の差（例えば、領域に属する画素の特徴量の平均の差）がある閾値ｂ３以上の場合、統合処理を実施しないという制約条件を加えることも可能である。
【００６４】
ステップ１１４では、オブジェクト抽出部１４が、境界判定部１５と領域統合部１６の処理が所定回数行われたか否かを判定し、所定回数行われた場合には処理を終了し、所定回数行われていない場合にはステップ１０６に戻り、ステップ１０６からステップ１１２の処理を繰り返す。この繰り返し処理を実施するたびに非境界領域に相当する画素数は増加する。これに伴って学習データも増加し、また、特徴ベクトルを作成する際に、より次元の大きなベクトルを作成することができる。
【００６５】
図１２は、処理を終了したときの出力例を示す。このようにして作成されたクラスタリング結果は、対象画像をオブジェクトごとに分類することに等しい。
【００６６】
なお、本実施の形態は、上述の実施の形態に限定されるものではない。例えば、クラスタ統合の手法としては、本実施の形態のみならず、隣接するクラスタの画像特徴に基づいてその類似度を計算し、その値を基準としてクラスタを統合する手法と組み合わせて使うこともできる。具体的には、評価式を（ｑ／ｐ）／Ｄ（Ｒ１，Ｒ２）などとして、この値が閾値θ’よりも小さければ統合するという処理を繰り返す。Ｄ（Ｒ１，Ｒ２）は隣接クラスタＲ１とＲ２の類似度を表す関数であり、値が大きいほど類似度が高いことを意味するものである。一例として、式（４）が考えられる。
【００６７】
【数３】
2010067252.tif 000005
【００６８】
ここで、ｄＲはクラスタＲの特徴ベクトルであり、例えばクラスタＲに属する画素の平均的な特徴値である。σは定数項とする。平均的な特徴が同じ場合は類似度は１となり、特徴が遠ざかるに連れて類似度は０に近づく。
【００６９】
また、図１３は本実施の形態の変化形のブロック図を示す。このように、分類器を１つの特徴量のみで構成せずに、複数の特徴量（例えば、色とテクスチャ）を組み合わせて構成してもよい。その際は、領域統合部１６において、複数の特徴次元による分類器の結果（例えば、和や積）を統合して、真の境界を確定する処理を行う。
【００７０】
〔第２の実施の形態〕
次に、本発明の第２の実施の形態について説明する。なお、第１の実施の形態と同一の部位には同一の符号を付し、主に第１の実施の形態と異なる部分について説明する。
【００７１】
図１４は、第２の実施の形態に係るオブジェクト領域抽出装置の構成を示すブロック図である。図１の第１の実施の形態のブロック図と異なり、非境界画素分類部１８と、繰り返し処理判定部１９と、を更に備えている。
【００７２】
非境界画素分類部１８は、画素分類部１３により非境界と判定された画素に対する特徴ベクトルを複数の分類器に分類する。また、境界判定部１５は、非境界画素分類部１８により分類された複数の分類器により、画像分割部１２により分割されたクラスタの境界部が抽出対象であるオブジェクトの境界（真の境界）であるか否かを判定する。
【００７３】
繰り返し処理判定部１９は、領域統合部１６によるクラスタの統合処理を更に繰り返して実施するか否かを判定する。
【００７４】
次に、本実施の形態に係るオブジェクト領域抽出装置の作用の流れを、図１５に示すフローチャートに沿って説明する。図２の第１の実施の形態のフローチャートとはステップ４００、ステップ４０２及びステップ４０４が異なる。ステップ１００の画像入力からステップ１０８の非境界の画素の特徴ベクトルの作成までは、第１の実施の形態と同様に行い、ステップ４００に進む。
【００７５】
ステップ４００では、非境界画素分類部１８が、画素分類部１３により作成されたクラスタ境界となっていない各々の画素に相当する特徴ベクトル群を複数の特徴ベクトル群に分類する。分類方法は公知の如何なる方法を用いてもよいが、本実施の形態では前述のＯＣＳＶＭを使用する。ＯＣＳＶＭを使用した場合、図１６（ａ）に示すように１種類の特徴ベクトル群４０（非境界を示す特徴空間）を教師データとし、特徴空間全体をこれら教師データに近いグループに属するのか（つまり偽りの境界）、逆に教師データに遠いグループに属するのか（つまり真の境界）で２つに分類する。ＯＣＳＶＭでは、これら教師データに遠いグループは特徴空間の原点付近の点となる。従って、分類基準４１より原点に近い側が真の境界、分類基準４１より原点から遠い側が偽りの境界となる。特徴空間はカーネル法などにより、多次元空間に写像するのが常である。
【００７６】
このように偽りの境界部に相当する特徴グループが１種類しか存在しない場合、この空間は画像の煩雑さが増加すれば非常に複雑な空間となってしまう。例えば、図１７（ａ）に示すような空を飛ぶ鳥のような画像（つまり図と地が明確な画像）の場合、このような特徴空間に入ってくる特徴ベクトルは空を示す領域に対する画素と鳥を示す領域に対する特徴の高々２種類の特徴であり、形成される特徴空間は比較的単純である。
【００７７】
しかしながら、図１７（ｂ）に見られるような図地分離が困難な画像が対象の場合、このような特徴空間に入ってくる特徴ベクトルは複数種類であり、その結果、形成される特徴空間は非常に複雑なものになる。これを回避するために本実施の形態では、図１６（ｂ）で示すように非境界に対応する特徴ベクトルを複数の集合（特徴ベクトル群４２、４３、４４）に分割し、各々のサブ空間を１つの特徴空間として独立に分類器を作成する。
【００７８】
このようなサブ空間の分類方法として幾つかの手法が考えられるが、本実施の形態ではKMeans法を使用する。即ち、特徴ベクトルをｆｋ＝（ｆｋ１，ｆｋ２，ｆｋ３，・・・，ｆｋｄ）とし（ｋは非境界部と判定された画素のＩＤ、ｄは特徴次元数）、その個数をｎ、サブ空間の個数をκとする。サブ空間Ｇｉの特徴ベクトルをｇｉとする（ｇｉはそのサブ領域に属する特徴ベクトルの重心ベクトル）。このとき、特徴ベクトルｆｋが属するべきサブ領域Ｇｊは、式（５）のように書くことができる。
【００７９】
【数４】
2010067252.tif 000006
【００８０】
サブ空間の個数としては、事前に設定（例えば１０個程度で固定）しておくか、事前に決めた評価関数（分割数κの個数を評価）の値が基準以下となるような最大のκを設定するなどの方法がある。κを動的に変更するための評価関数の一例として、κを大きくしていき、その度に特徴ベクトルとそれが属するサブ空間の特徴ベクトルとの距離差の総和などが考えられる（κを大きくするに伴い、この値は小さくなる）。また、このように空間をサブ空間に分割するのはカーネル関数を適用する前でも後でもよいが、前の方が自然である。
【００８１】
ステップ４０２では、境界判定部１５が、画素分類部１３により境界となっていると分類された画素について、その画素がオブジェクト間の真の境界か偽の境界かを判定する。ＯＣＳＶＭにおいて、入力ベクトルｚに対する判別関数は前述の式（２）及び式（３）で表される。判別関数は、入力ベクトルｚが偽りの境界領域に属する画素に対する特徴ベクトルである場合は“１”を、そうでない場合、即ち真の境界領域に対する特徴ベクトルである場合は“０”を出力値として返す。本実施の形態では、境界判定部１５は、このような分類器を非境界画素分類部１８で生成したサブ空間の数（つまりκ）だけ備える。
【００８２】
κ個の分類器を使った境界の真偽の判定処理の流れを、図１８に示すフローチャートに沿って説明する。
【００８３】
ステップ５００では、境界判定部１５が、サブ領域Ｇｉに属する学習データを元にして、各分類器ごとにＯＣＳＶＭに必要とされるパラメータを算出する。必要なパラメータは、ガウシアンカーネルを使う場合には、前述の式（２）及び式（３）のνとＫ（ｘ，ｙ）である。
【００８４】
ステップ５０２では、境界判定部１５が、サブ領域Ｇｉごとに判別関数ｆｉ(Ｚｋ)を構成し、画素単位で出力ベクトルａｋ＝（ａｋ１，ａｋ２，…，ａｋｋ）を得る。ここで、ｋは入力ベクトルのＩＤであり、ａｋiはｆｉ(Ｚｋ)の出力値で“０”または“１”の値をとる。
【００８５】
ステップ５０４では、境界判定部１５が、判別関数の出力ベクトルａｋの要素がすべて“０”か否かを判定し、要素がすべて“０”のときはステップ５０６に進み、その他のときにはステップ５０８に進む。
【００８６】
ステップ５０６では、出力ベクトルａｋの要素がすべて“０”の場合であり、境界判定部１５はＩＤがｋの画素は偽りの境界であると判定する。
【００８７】
ステップ５０８では、出力ベクトルａｋの要素に１つでも“０”以外のものがある場合であり、境界判定部１５はＩＤがｋの画素は真の境界であると判定する。
【００８８】
境界判定部１５は、以上の処理を各サブ領域Ｇｉ（ｉ＝１〜κ）について平行して実施する。
【００８９】
なお、本実施の形態では、出力ベクトルａｋの要素に１つでも“０”以外のものがある場合には当該画素は真の境界と判定するが、出力ベクトルａｋの要素のうち“０”以外のものが所定の割合以上の場合に真の境界と判定し、所定の割合未満の場合に偽りの境界と判定してもよい。
【００９０】
図１５のフローチャートに戻って、領域統合部１６が、境界判定部１５の判定結果に基づいてクラスタの統合を行った後、ステップ４０４に進む。
【００９１】
ステップ４０４では、繰り返し処理判定部１９が、領域統合部１６によるクラスタの統合処理を更に繰り返して実施するか否かを判定する。ここで、領域統合部１６により統合された後の総クラスタ数をｎｋ(k=1,2,…)とする。添え字ｋは統合処理の実施回数を意味する。更にクラスタの統合を行うか否かを判断する方法として、統合の前後でクラスタ数が変化しなくなるか、その変化の割合が閾値以下の場合（つまり、ｎｋ／ｎ(k-1)が閾値以上）に、分類器のパラメータを統合能力がより強くなるように変化させて更なる統合を行い、パラメータ値がある値に達した場合に統合処理を終了する方法が考えられる。
【００９２】
ＯＣＳＶＭを使った場合、そのパラメータ（σ、ν）と統合能力との関係は以下の通りとなる。σの値を固定したときのＯＣＳＶＭの巡回回数と統合後のクラスタ数は、巡回回数が十分に大きければ（１００００程度）、計算結果は収束し、νの値が小さい方が統合能力が強い。また、σを変化させた場合は、巡回回数が十分に大きければ（１００００程度）、σが小さい方が統合能力が強い。まとめると、ＯＣＳＶＭにより構成される分類器Ｃ（σ，ν）は２つのパラメータから成り、σが小さい方が、またνが小さい方が統合能力が強い。複数の分類器を使用して画像の領域統合を実施する場合、統合に際し発生する統合ミス（境界判定の誤差）の影響を小さくするために、分類器は統合能力が低い分類器から順に使用することが望ましい。統合能力が低い分類器ほど、学習データの不足による統合ミスが殆どないと考えられるからである。統合能力の強弱を不等号で表現すると、Ｃ（σ１，ν１）＜Ｃ（σ２，ν２）（ただし、σ１＞σ２，ν１＞ν２）となる。
【００９３】
本実施の形態では、σは固定し、νと上述の閾値ｂのパラメータを変更する。具体的には、νを４種類（ν＝0.1,0.2,0.4,0.8）に、閾値ｂを２種類（ｂ＝0.1,0.2）に変化させた場合の例を示す。当然ながら閾値ｂの値が大きい方が統合能力は強く、分類器Ｃ（σ,ν,ｂ）において、Ｃ（σ，ν１,ｂ１）＜Ｃ（σ，ν２,ｂ２）（ただし、ν１＞ν２，ｂ１＜ｂ２）が成立する。一方で、ν１＞ν２かつｂ１＞ｂ２のとき、２つの分類器Ｃ（σ，ν１,ｂ１）とＣ（σ，ν２,ｂ２）の統合能力の強弱は自明ではなく、対象画像および統合前のクラスタ数に依存する。そのため、本実施の形態では便宜上、Ｃ（σ,0.8,0.1）、Ｃ（σ,0.8,0.2）、Ｃ（σ,0.4,0.1）、…、Ｃ（σ,0.1,0.2）というように、基本的には統合能力が弱い分類器から順に、νを優先的に変化させるという手法を採る。
【００９４】
図１９は、繰り返し処理判定部による更にクラスタ統合を行うか否かの判定の流れを示すフローチャートである。繰り返し処理判定部１９は、領域統合部１６によるｋ回目の統合処理で分類器Ｃ（σ,ν,ｂ）を使用して生成されたｎｋ個のクラスタについて更に統合処理を行うか否かを判定する。
【００９５】
ステップ６０２では、繰り返し処理判定部１９は、ｋ回目の統合処理後のクラスタ数と前回（ｋ−１回目）の統合処理後のクラスタ数との変化の割合（ｎｋ／ｎ(ｋ−１)）を算出して予め定めたｃと比較し、ｃ以上のときにはステップ６０４に進み、ｃより小さいときにはステップ６０８に進む。ここで、ｃは閾値であり、本実施の形態では、例えば“0.9”に設定する。
【００９６】
ステップ６０４では、繰り返し処理判定部１９は、ｂが“0.1”か否かを判定し、ｂが“0.1”のときはステップ６１０に進み、ｂが“0.1”でないときはステップ６０６に進む。
【００９７】
ステップ６０６では、繰り返し処理判定部１９は、νが“0.1”か否かを判定し、νが“0.1”でないときはステップ６１２に進み、νが“0.1”のときは上述のνとｂの全ての組合せを実行し終えたので統合処理を終了する。
【００９８】
ステップ６０８では、同じパラメータの分類器で再び統合処理を行うため、画素分類部１３による処理から繰り返して行う。
【００９９】
ステップ６１０では、ｂを“0.2”に設定した分類器で更に統合処理を行うため、画素分類部１３による処理から繰り返して行う。
【０１００】
ステップ６１２では、νを２で除し、ｂを“0.1”に設定した分類器で更に統合処理を行うため、画素分類部１３による処理から繰り返して行う。
【０１０１】
図２０は、このようにして分類器のパラメータを変動させながら実施する様子を示す模式図である。同図に示すように、１つの分類器についてパラメータの組合せを変動することにより、８種類の分類器として実施することとなる。
【０１０２】
図２１は、本実施の形態の実施結果の例を示す図である。図２１（ａ）は画像分割部１２による初期クラスタリングの結果を、図２１（ｂ）〜（ｏ）は領域統合部１６により領域統合を繰り返して行う際の各工程における統合結果を示す。また、図２２は、図２１（ａ）〜（ｏ）の各図に対するパラメータの値およびクラスタ数の変動を示す図である。図２１の（ｄ）〜（ｆ）では、分類器のパラメータは変化していないが、統合処理によりクラスタ数が減少するために、分類器に入力される学習データの数が増加し、そのために同じパラメータの分類を使用しても更なる統合処理が期待できる。これらの図に示されるように、統合処理を繰り返して行うことにより、偽りの境界が消去されてクラスタ数が減少し、実際のオブジェクトの境界が抽出されていく。
【図面の簡単な説明】
【０１０３】
【図１】第１の実施の形態に係るオブジェクト領域抽出装置の構成を示すブロック図である。
【図２】第１の実施の形態に係るオブジェクト領域抽出装置の作用の流れを示すフローチャートである。
【図３】対象画像とそのクラスタリング例を示す図である。
【図４】対象画像を人手によってオブジェクトを分割した例を示す図である。
【図５】クラスタ境界の画素の決定方法を示す図である。
【図６】色を用いた場合の特徴ベクトルの作成方法を示す図である。
【図７】特徴ベクトル作成のためのフィルタが境界領域にかかる例を示す図である。
【図８】真の境界か否かの判定処理の流れを示すフローチャートである。
【図９】画像分割部、画素分類部及び境界判定部の出力例を示す図である。
【図１０】クラスタの統合方法を示す図である。
【図１１】クラスタの統合処理の流れを示すフローチャートである。
【図１２】処理の終了時の出力例を示す図である。
【図１３】第１の実施の形態の変化形のブロック図である。
【図１４】第２の実施の形態に係るオブジェクト領域抽出装置の構成を示すブロック図である。
【図１５】第２の実施の形態に係るオブジェクト領域抽出装置の作用の流れを示すフローチャートである。
【図１６】学習に用いる特徴ベクトルを示す図である。
【図１７】画像の煩雑さを比較する図である。
【図１８】κ個の分類器を使った境界の真偽の判定処理の流れを示すフローチャートである。
【図１９】繰り返し処理判定部の判定処理の流れを示すフローチャートである。
【図２０】分類器のパラメータを変動させながら実施する様子を示す模式図である。
【図２１】第２の実施の形態に係るオブジェクト領域抽出装置の実施結果を示す図である。
【図２２】図２１の各図に対するパラメータおよびクラスタ数の変動の様子を示す図である。
【符号の説明】
【０１０４】
１１    画像入力部
１２    画像分割部
１３    画素分類部
１４    オブジェクト抽出部
１５    境界判定部
１６    領域統合部
１８    非境界画素分類部
１９    繰り返し処理判定部
【図１】
2010067252.tif 000007
【図２】
2010067252.tif 000008
【図５】
2010067252.tif 000009
【図６】
2010067252.tif 000010
【図８】
2010067252.tif 000011
【図１０】
2010067252.tif 000012
【図１１】
2010067252.tif 000013
【図１３】
2010067252.tif 000014
【図１４】
2010067252.tif 000015
【図１５】
2010067252.tif 000016
【図１６】
2010067252.tif 000017
【図１８】
2010067252.tif 000018
【図１９】
2010067252.tif 000019
【図２０】
2010067252.tif 000020
【図２２】
2010067252.tif 000021
【図３】
2010067252.tif 000022
【図４】
2010067252.tif 000023
【図７】
2010067252.tif 000024
【図９】
2010067252.tif 000025
【図１２】
2010067252.tif 000026
【図１７】
2010067252.tif 000027
【図２１】
2010067252.tif 000028