(57)【特許請求の範囲】
【請求項１】
画像中の複数の領域に対してそれぞれ代表データを設定する代表データ設定手段と、
前記代表データとの座標、及び、色及びテクスチャのうちの少なくとも何れかに係る距離に基づいて、前記画像中のそれぞれの画素を前記複数の領域の中の何れかの代表データと関連付けるとともに、前記関連付けられた画素の集合に基づいて前記それぞれの代表データを更新し、前記更新された代表データとの前記距離に基づいて、前記画像中のそれぞれの画素を前記何れかの更新された代表データと関連付ける関連付け手段と、
前記関連付け手段によって前記更新された代表データと関連付けされた画素の集合で構成された領域が座標空間上で連続している状態であるか否かを、前記領域に係る代表データから所定の範囲内の画素が関連付けされているパターンに基づいて判定する判定手段と、
前記判定手段によって連続していない状態と判定された場合に、前記連続していないと判定された領域に係る代表データを含む領域において座標空間上で連続している状態に補正する補正手段とを有することを特徴とする画像処理装置。
【請求項２】
前記判定手段は、前記領域に係る代表データから所定の範囲内の画素のうち、前記領域に係る代表データと関連付けされている画素の数に基づいて、座標空間上で連続している状態であるか否かを判定することを特徴とする請求項１に記載の画像処理装置。
【請求項３】
前記判定手段は、前記領域に係る代表データから所定の範囲内のすべての画素が前記領域に係る代表データと関連付けされている画素である場合に、座標空間上で連続している状態であると判定することを特徴とする請求項２に記載の画像処理装置。
【請求項４】
前記判定手段は、前記領域に係る代表データから所定の範囲内の画素における前記領域に係る代表データと関連付けされている画素の数が閾値以上である場合に、座標空間上で連続している状態であると判定することを特徴とする請求項２に記載の画像処理装置。
【請求項５】
前記判定手段は、予め学習された識別モデルを用いて座標空間上で連続している状態であるか否かを判定することを特徴とする請求項１に記載の画像処理装置。
【請求項６】
前記代表データから所定の範囲とは、前記代表データを中心とした矩形または円形の領域であることを特徴とする請求項１〜５の何れか１項に記載の画像処理装置。
【請求項７】
画像中の複数の領域に対してそれぞれ代表データを設定する代表データ設定工程と、
前記代表データとの座標、及び、色及びテクスチャのうちの少なくとも何れかに係る距離に基づいて、前記画像中のそれぞれの画素を前記複数の領域の中の何れかの代表データと関連付けるとともに、前記関連付けられた画素の集合に基づいて前記それぞれの代表データを更新し、前記更新された代表データとの前記距離に基づいて、前記画像中のそれぞれの画素を前記何れかの更新された代表データと関連付ける関連付け工程と、
前記関連付け工程において前記更新された代表データと関連付けされた画素の集合で構成された領域が座標空間上で連続している状態であるか否かを、前記領域に係る代表データから所定の範囲内の画素が関連付けされているパターンに基づいて判定する判定工程と、
前記判定工程において連続していない状態と判定された場合に、前記連続していないと判定された領域に係る代表データを含む領域において座標空間上で連続している状態に補正する補正工程とを有することを特徴とする画像処理方法。
【請求項８】
画像中の複数の領域に対してそれぞれ代表データを設定する代表データ設定工程と、
前記代表データとの座標、及び、色及びテクスチャのうちの少なくとも何れかに係る距離に基づいて、前記画像中のそれぞれの画素を前記複数の領域の中の何れかの代表データと関連付けるとともに、前記関連付けられた画素の集合に基づいて前記それぞれの代表データを更新し、前記更新された代表データとの前記距離に基づいて、前記画像中のそれぞれの画素を前記何れかの更新された代表データと関連付ける関連付け工程と、
前記関連付け工程において前記更新された代表データと関連付けされた画素の集合で構成された領域が座標空間上で連続している状態であるか否かを、前記領域に係る代表データから所定の範囲内の画素が関連付けされているパターンに基づいて判定する判定工程と、
前記判定工程において連続していない状態と判定された場合に、前記連続していないと判定された領域に係る代表データを含む領域において座標空間上で連続している状態に補正する補正工程とをコンピュータに実行させることを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、特に、画像を座標など属性が類似した複数の領域に分割するために用いて好適な画像処理装置、画像処理方法及びプログラムに関する。
【背景技術】
【０００２】
近年、画像を色やテクスチャ、座標など属性が類似した複数の領域に分割する技術が注目されている。このように分割された領域はスーパーピクセルと呼ばれ、分割された領域の単位で符号化処理や、画像処理、画像認識処理等を実行できるため、様々な画像処理装置におけて応用することができる。
【０００３】
従来、画像の領域分割に関して様々な手法が提案されている。特に、画素をクラスタリングすることによって画像を複数の領域に分割する手法が多く提案されている。これらの手法では、色やテクスチャ、座標を要素にもつデータをクラスタリングし、クラスタリングでは、各クラス（領域）の代表データを求め、入力データを最近傍代表データに割り当てる。ここで、最近傍代表データとは、入力データに対する複数の代表候補データの中で、入力データとの距離が最短の代表候補データのことである。
【０００４】
非特許文献１には、ＳＬＩＣ（Simple Linear Iterative Clustering）と呼ばれるクラスタリング手法を用いて複数の領域に分割する方法が提案されている。ＳＬＩＣは、Ｋ−ｍｅａｎｓクラスタリングの最近傍代表データの探索範囲を画像中の局所領域に限定した手法である。また、特許文献１には、領域の形状が線形状の小領域である場合に、その領域を隣接するクラスに統合する手法が提案されている。
【０００５】
また、非特許文献２に記載の手法では、入力データと代表候補データとの距離計算において、注目する入力データの近傍に異なるクラスの入力データが存在する程距離が大きくなる項を導入している。これにより、分割される形状が円形に近くなるようにクラスタリングしている。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特許第５３３５５８１号公報
【非特許文献】
【０００７】
【非特許文献１】Radhakrishna Achanta, et al., "SLIC Superpixels Compared to State-of-the-Art Superpixel Methods", IEEE Transactions on Pattern Analysis and Machine Intelligence, vol. 34, No. 11, pp. 2274-2282, Nov. 2012.
【非特許文献２】J. Wang, and X. Wang, "VCells: Simple and Efficient Superpixels Using Edge-Weighted Centroidal Voronoi Tessellations", IEEE Transactions on Pattern Analysis and Machine Intelligence, vol. 34, No. 6, pp. 1241-1247, Jun. 2012.
【非特許文献３】C. Cortes, and V. Vapnik, "Support-Vector Networks", Machine Learning, 20, pp.273-297, 1995.
【非特許文献４】Ｃ．Ｍ．ビショップ、「パターン認識と機械学習  上」、丸善出版、２０１２．
【発明の概要】
【発明が解決しようとする課題】
【０００８】
クラスタリングは画像の領域分割においてよく用いられる技術である。ただし、クラスタリングによる領域分割では、フラグメンテーションが発生することがある。フラグメンテーションとは、同一クラス内の画素が座標空間上で連続していない状態のことである。領域分割結果を応用する場合には、フラグメンテーションが発生しないことが好ましい。
【０００９】
非特許文献１に記載の方式では、フラグメンテーションを解消するために、まず、同じクラスに属する連続した画素の領域サイズを算出する。そして、領域サイズが閾値未満であれば近傍のクラスにその領域を統合し、領域サイズが閾値以上であれば新たなクラスを割り当てることによってすべてのフラグメンテーションを解消するとしている。しかしながら、同じクラスに属する連続した画素の領域を抽出するために、ある画素とその近傍の画素とのクラス情報を順次比較する必要があるため、処理量が大きいという課題がある。
【００１０】
また、特許文献１に記載の方式では、線形状の小領域となっているフラグメンテーションについては解消することができる。しかしながら、解消する対象となるフラグメンテーションの形状が限定されており、一定以上の大きさのフラグメンテーションを解消できないという課題がある。
【００１１】
さらに非特許文献２に記載の方式では、フラグメンテーションの発生を抑制することができるが、各入力データについて代表候補データとの距離計算時に、近傍の入力データが属するクラス情報を参照する必要がある。このため、処理量が大きいという課題がある。
【００１２】
本発明は前述の問題点に鑑み、属性が類似した複数の領域に画像を分割する際に、処理量を抑えてフラグメンテーションの発生を抑制できるようにすることを目的としている。
【課題を解決するための手段】
【００１３】
本発明に係る画像処理装置は、画像中の複数の領域に対してそれぞれ代表データを設定する代表データ設定手段と、前記代表データとの座標、及び、色及びテクスチャのうちの少なくとも何れかに係る距離に基づいて、前記画像中のそれぞれの画素を前記複数の領域の中の何れかの代表データと関連付けるとともに、前記関連付けられた画素の集合に基づいて前記それぞれの代表データを更新し、前記更新された代表データとの前記距離に基づいて、前記画像中のそれぞれの画素を前記何れかの更新された代表データと関連付ける関連付け手段と、前記関連付け手段によって前記更新された代表データと関連付けされた画素の集合で構成された領域が座標空間上で連続している状態であるか否かを、前記領域に係る代表データから所定の範囲内の画素が関連付けされているパターンに基づいて判定する判定手段と、前記判定手段によって連続していない状態と判定された場合に、前記連続していないと判定された領域に係る代表データを含む領域において座標空間上で連続している状態に補正する補正手段とを有することを特徴とする。
【発明の効果】
【００１４】
本発明によれば、属性が類似した複数の領域に画像を分割する際に、処理量を抑えてフラグメンテーションの発生を抑制することができる。
【図面の簡単な説明】
【００１５】
【図１】実施形態におけるクラスタリング処理の処理手順の一例を示すフローチャートである。
【図２】画像中のブロック及びその代表データを説明するための図である。
【図３】フラグメンテーションが発生している領域分割結果の一例を示す図である。
【図４】実施形態におけるデータ処理装置のハードウェア構成例を示すブロック図である。
【図５】フラグメンテーションが発生しているか否かを判定する手順を説明するための図である。
【発明を実施するための形態】
【００１６】
以下、本発明の好適な実施形態について、図面を参照しながら詳細に説明する。本実施形態では、本発明による画像領域分割方法を用いて画像を領域分割する例について説明する。
【００１７】
＜データ処理装置の構成例＞
図４は、本実施形態におけるクラスタリング方法を実現可能なデータ処理装置４００のハードウェア構成例を示すブロック図である。
図４において、データ保存部４０１は、画像データを保持する記憶媒体である。データ保存部４０１は、ハードディスク、フレキシブルディスク、ＣＤ−ＲＯＭ、ＣＤ−ＲやＤＶＤ、メモリーカード、ＣＦカード、スマートメディア、ＳＤカード、メモリスティック、ｘＤピクチャーカード、ＵＳＢメモリ等で構成される。また、データ保存部４０１には、画像データの他にも、プログラムやその他のデータを保存することも可能である。あるいは、後述するＲＡＭ４０６の一部をデータ保存部４０１として用いてもよい。さらに、後述する通信部４０２により接続した先の機器の記憶装置を、通信部４０２を介して利用するというように仮想的に構成するのであってもよい。
【００１８】
表示部４０３は、領域分割処理を行う前後の画像を表示したり、ＧＵＩ等の画像を表示したりする装置であり、一般的にはＣＲＴや液晶ディスプレイなどが用いられる。あるいは、ケーブル等で接続された外部のディスプレイ装置であっても構わない。
【００１９】
ＣＰＵ４０４は、本実施形態に係る主要な処理を実行すると共にデータ処理装置４００全体の動作を制御する。ＲＯＭ４０５及びＲＡＭ４０６は、その処理に必要なプログラム、データ、作業領域などをＣＰＵ４０４に提供する。後述する処理に必要なプログラムがデータ保存部４０１に格納されている場合や、ＲＯＭ４０５に格納されている場合には、ＲＡＭ４０６に一旦書き込まれてから後述する処理が実行される。また、通信部４０２を経由してデータ処理装置４００がプログラムを受信する場合には、データ保存部４０１に一旦記録した後にＲＡＭ４０６に書き込まれるか、通信部４０２からＲＡＭ４０６に直接書き込まれてから処理が実行される。
【００２０】
ＣＰＵ４０４は、ＲＡＭ４０６またはデータ保存部４０１に書き込まれた画像データを読み出して本実施形態に係る画像処理（クラスタリング処理）を実行する。代表データ等の処理途中のデータはＣＰＵ４０４によりＲＡＭ４０６に書き込まれ、必要な場合に読み出される。そして、クラスタリングの処理結果がＲＡＭ４０６に書き込まれる。また、ＣＰＵ４０４は、表示部４０３に画像を表示する制御を行ったり、通信部４０２を介して外部装置に画像データを送信する制御を行ったりする。
【００２１】
通信部４０２は、機器間の通信を行うためのＩ／Ｆである。Ｉ／Ｆとしては、例えば、公知のローカルエリアネットワーク、ＵＳＢ、ＩＥＥＥ１２８４、ＩＥＥＥ１３９４、電話回線などの有線による通信方式であってもよい。また、赤外線（ＩｒＤＡ）、ＩＥＥＥ８０２．１１ａ、ＩＥＥＥ８０２．１１ｂ、ＩＥＥＥ８０２．１１ｇ、ＩＥＥＥ８０２．１１ｎ、Ｂｌｕｅｔｏｏｔｈ（登録商標）、ＵＷＢ（Ｕｌｔｒａ  ｗｉｄｅ  Ｂａｎｄ）等の無線通信方式であってもよい。
【００２２】
なお、図４に示す例では、データ保存部４０１、表示部４０３が全て１つの装置内に含まれるような例を示しているが、これらの部分が公知の通信方式による通信路で接続されており、全体としてこのような構成となっているのであっても構わない。また、図４に示す例においては、ＣＰＵが１つだけの構成であるが、ＣＰＵを複数設けるような構成にしてもよい。システム構成については、上記以外にも様々な構成要素が存在してもよいが、本発明の主眼ではないのでその説明は省略する。
【００２３】
以下、図４に示したデータ処理装置４００が行う処理の概要について説明する。本実施形態では、クラスタリング結果に対して、各クラスの代表データの近傍にある入力データが属するクラスを参照する。そして、代表データと同じクラスに属する入力データの数に基づいてフラグメンテーションが発生しているかどうかを判定する。その結果、フラグメンテーションが発生している場合には解消処理を施す。
【００２４】
＜領域分割のためのクラスタリング＞
図１（ａ）は、本実施形態におけるクラスタリング処理の処理手順の一例を示すフローチャートである。なお、図１（ａ）に示す各ステップはＣＰＵ４０４の動作を示すものとする。
まず、クラスタリング対象のデータについて説明する。以下の式（１）は第ｉ番目の入力データを示す。入力データは画像中の画素と対応する５次元のベクトルであり、第ｉ番目の入力データとは、画像をラスタスキャンして第ｉ番目に読み出された画素に関する情報である。
Ｘi＝（ｘi,1，ｘi,2，ｘi,3，ｘi,4，ｘi,5）    ・・・（１）
【００２５】
式（１）中のｘi,1、ｘi,2は二次元の座標空間上の位置を表し、それぞれ画像の縦方向、横方向の座標値を意味する。また、ｘi,3、ｘi,4、ｘi,5は画素の色成分を表わす三次元の色特徴である。
【００２６】
まず、ステップＳ１０１においては、初期化した代表データを生成する。具体的には、代表データ設定処理として、例えば図２に示した画像２０１を座標空間上のブロックに分割し、各々のブロック２０３の中に１個の代表データ２０５を設定する。そして、ブロック２０３内の入力データをランダムに選択し、選択した入力データの座標と色特徴とを要素とするベクトルをその代表データのベクトルとする。以下の式（２）は第ｊ番目の代表データＣjを示す。ここで、ｊとは、図２に示すように配置した代表データにラスター順に割り当てたクラスインデックスである。
Ｃj＝（ｃj,1，ｃj,2，ｃj,3，ｃj,4，ｃj,5）      ・・・（２）
【００２７】
式（２）中のｃj,1、ｃj,2は二次元の座標空間上の位置を表し、それぞれ画像の縦方向、横方向の座標値を意味する。また、ｃj,3、ｃj,4、ｃj,5は画素の色成分を表わす三次元の色特徴である。
【００２８】
ステップＳ１０２において、最大繰り返し回数を設定し、ステップＳ１０３〜Ｓ１１１までの繰り返し計算のループを開始する。
ステップＳ１０３においては、入力データのループを開始する。画像の中の入力データＸiの順番ｉを制御し、ステップＳ１０４からステップＳ１０９までの処理を繰り返して全ての入力データをクラスタリングする。
【００２９】
まず、ステップＳ１０４においては、探索範囲を設定する。具体的には、入力データの座標位置によって代表候補データの探索範囲を設定する。ここで、入力データの代表候補データとは、該当する入力データを割り当てる（帰属させる）代表データの候補である。
【００３０】
ここで、探索範囲２０２の幅および高さがそれぞれ５個の代表データの例について説明する。まず、処理対象の入力データ（以下、注目入力データ）２０６が含まれるブロックを中心に、代表候補データの探索範囲を設定する。この場合、探索範囲は５×５個の座標近傍の代表データである。探索範囲２０２は、縦方向が５〜９までであり、横方向が６〜１０までである。図２に示す例の場合、１ラインあたりの代表データ数が１５個であるため、探索範囲２０２に含まれるインデックスは、６６〜７０、８１〜８５、９６〜１００、１１１〜１１５、１２６〜１３０である。したがって、注目入力データ２０６を含め、ブロック２０４の範囲に入っている全ての入力データの探索範囲２０２は同じである。なお、入力データの位置と探索範囲の代表候補データとの関係は最初に固定され、繰り返し処理によって代表データの位置が変わっても、代表データのインデックスは変わらないものとする。
【００３１】
ステップＳ１０５〜Ｓ１０７は、入力データの最近傍代表データを探索するステップである。ここで、最近傍代表データとは、入力データとの距離が最短な代表データ、即ち、距離空間上一番近い代表データである。各ステップにおける処理内容を説明する前に、本実施形態における入力データと代表候補データとの距離の計算方法について説明する。以下の式（３）は第ｉ番目の入力データと第ｊ番目の代表候補データとの間の距離Ｄ（Ｘi，Ｃj）を表す計算式である。
Ｄ（Ｘi，Ｃj）＝Ｗ×Ｄs（Ｘi，Ｃj）＋Ｄc（Ｘi，Ｃj）・・・（３）
【００３２】
式（３）中のＤsは座標空間上の距離を表し、Ｄcは色空間上の距離を表す。Ｗは座標空間上の距離に対する重みである。式（３）に示すように、入力データと代表候補データとの間の距離Ｄは、座標空間上の距離Ｄsと色空間上の距離Ｄcの線形結合により算出される。以下、このように複数の部分距離から算出される距離のことを総合距離と呼ぶ。以下の式（４）及び式（５）は、それぞれ座標空間上の距離Ｄs、色空間上の距離Ｄcを算出する計算式である。本実施形態では、距離としてユークリッド距離を使用するが、これに限る訳ではない。
【００３３】
【数１】
0006587407.tif 000002
【００３４】
ステップＳ１０５においては、代表候補データのループを開始する。代表候補データＣjの順番ｊを順次更新し、全ての代表候補データを探索する。そして、ステップＳ１０６において、式（３）に従って第ｉ番目の入力データと第ｊ番目の代表候補データとの間の総合距離を算出する。ステップＳ１０７においては、全ての代表候補データとの総合距離の算出が完了したかどうかを判定する。この判定の結果、全ての代表候補データとの総合距離を算出した場合は、ステップＳ１０８に進み、代表候補データのループを終了する。一方、まだ総合距離を算出していない代表候補データがある場合は、ステップＳ１０６に戻り、次の代表候補データとの総合距離を計算する。
【００３５】
続いてステップＳ１０８においては、ステップＳ１０５〜Ｓ１０７のループで算出された総合距離の中から距離が最短であった代表候補データ（最近傍代表データ）のクラスに入力データを帰属（関連付け）させる。そして、ステップＳ１０９において、全ての入力データを処理したかどうかを判定する。この判定の結果、全ての入力データを処理した場合は、ステップＳ１１０に進み、入力データのループを終了する。一方、まだ処理していない入力データがある場合はステップＳ１０４に戻り、次の入力データの処理を開始する。
【００３６】
ステップＳ１１０においては、各代表データに対して、帰属させた入力データのベクトルの平均ベクトルを計算する。そして、その平均ベクトルを該当代表データの新しいベクトルＣjとし、代表データを更新する。そして、ステップＳ１１１において、最大繰り返し回数を超えるかどうか、又はクラスタリングの結果が収束したかどうかを判定する。この判定の結果、何れかの条件が成立する場合は、繰り返し計算を終了する。一方、いずれの条件も成立しない場合はステップＳ１０３に戻り、次の繰り返し計算を開始する。ここで、クラスタリング結果とは、各入力データが属するクラスインデックスを示すものである。本実施形態では、入力データと同様に２次元の画像形式であるものとする。
【００３７】
次に、ステップＳ１１２において、クラスタリング結果を解析し、フラグメンテーションが発生したクラスに対してフラグメンテーション解消処理を施す。この処理の詳細については後述する。以上の処理が完了すると、ＣＰＵ４０４は、フラグメンテーション解消後のクラスタリング結果（領域分割結果）を表示部４０３などに出力する。
【００３８】
＜フラグメンテーション検出＆解消＞
ここで、ステップＳ１１２の詳細な処理手順について、図１（ｂ）を参照しながら説明する。図１（ｂ）のステップＳ１１３〜Ｓ１１６では、各クラスに対してフラグメンテーションが発生しているかどうかを判定し、フラグメンテーションが発生したクラスに対して解消処理を適用する。
【００３９】
ここで、フラグメンテーションとは、同一クラスに属する入力データが座標空間上で連続していない状態のことである。図３は、フラグメンテーションが発生したクラスタリング結果の例を説明するための図である。図３において、各々の領域は、代表データに帰属する入力データの集合によって構成され、図３における各領域は、その領域内のクラスインデックスが同一であることを示す。領域３０１〜３０３、領域３０４〜３０７、領域３０８〜３１５、領域３１６〜３１７はそれぞれ同じクラスに属するが、座標空間上で分離している。
【００４０】
ステップＳ１１３においては、代表データのループを開始する。代表データＣjの順番ｊを順次更新し、全ての代表データに対して以下のステップＳ１１４〜Ｓ１１５の処理を実行する。
【００４１】
まず、ステップＳ１１４においては、第ｊ番目のクラスに対してフラグメンテーションが発生しているかどうかを推定する。本実施形態では、代表データＣjの近傍に同じクラスに属さない入力データが存在する場合に、フラグメンテーションが発生したと判定する。判定処理の詳細を以下に説明する。
【００４２】
まず、第ｊ番目の代表データの座標位置（ｃj,1、ｃj,2）を読み込む。また、代表データと同じクラスに属する入力データの数をカウントするためのカウンタを０に初期化する。次に、クラスタリング結果から、代表データの座標位置（ｃj,1、ｃj,2）を中心とする所定の範囲内（本実施形態では３×３の領域内）の座標位置（ｃj,1＋αn,1、ｃj,2＋αn,2）におけるクラスインデックスを読み込む。ここで、αn,1＝｛−１，０，１｝、αn,2＝｛−１，０，１｝であり、αn,12＋αn,22≠０を満たすものとする。そして、読み込んだクラスインデックスの値がｊであった場合に前記カウンタをインクリメントする。なお、参照する座標位置がクラスタリング結果の領域外であった場合は、クラスインデックスの比較処理をスキップする。
【００４３】
以上の処理をすべてのαn,1、αn,2に対して実行した後、カウンタの値が３×３＝９であった場合は、フラグメンテーションは発生していないと判定する。一方、カウント値が９未満であった場合は、フラグメンテーションが発生したと判定する。つまり、代表データを中心とする３×３の領域内に１つでも代表データと異なるクラスに属する入力データが存在する場合にはフラグメンテーションが発生したと判定する。図５は、本実施形態におけるフラグメンテーションの有無の判定結果の例を示している。
【００４４】
以上のような手順でフラグメンテーションが発生していると判定された場合はステップＳ１１５に進み、フラグメンテーションが発生していないと判定された場合はステップＳ１１６に進む。
【００４５】
ステップＳ１１５においては、フラグメンテーションを解消する補正処理を行う。本実施形態では、フラグメンテーションが発生したと判定されたクラスの近傍の領域に対して非特許文献１に記載の手法を適用することによりフラグメンテーションを解消する。詳細について以下に説明する。
【００４６】
まず、クラスタリング結果に対して、第ｊ番目の代表データの座標位置（ｃj,1、ｃj,2）を中心とするＮ×Ｎサイズの領域を設定する。ここでＮの値は、Ｎ×Ｎサイズの領域内に第ｊ番目のクラスインデックスの入力データが十分に含まれるように設定する。本実施形態では、例えば図２に示した探索範囲２０２と同じサイズとなるようにＮの値を設定する。
【００４７】
そして、Ｎ×Ｎサイズの領域に対して次のように非特許文献１に記載の手法を適用してフラグメンテーションを解消する。まず、同じクラスインデックスが連続する領域サイズを算出する。そして、領域サイズが閾値未満である場合にはその領域内のクラスインデックスを近傍のクラスインデックスに変更する。一方、領域サイズが閾値以上である場合には新たなクラスインデックスを割り当てる。
【００４８】
ステップＳ１１６においては、全ての代表データについてステップＳ１１４〜Ｓ１１５の処理を実行したかどうかを判定する。この判定の結果、全ての代表データについて処理を実行した場合は処理を終了する。一方、まだ処理していない代表データが存在する場合はステップＳ１１４に戻り、次の代表データに対して処理を開始する。
【００４９】
以上説明したように本実施形態によれば、代表データの近傍に１つでも代表データと異なるクラスに属する入力データが存在する場合にフラグメンテーションが発生したと判定するようにした。そして、このような場合には、その近傍の領域に対してのみフラグメンテーション解消処理を実行するようにした。このようにフラグメンテーションの有無の判定処理は代表データの近傍の入力データのクラスを参照するのみであるため処理量を小さくすることができる。また、フラグメンテーション解消処理を実行する領域が限定されるため、画像全体にフラグメンテーション解消処理を施すよりも処理量が低減される。さらに、フラグメンテーションを解消する処理を行うことにより、出力結果として、フラグメンテーションの発生を抑制することができる。
【００５０】
（その他の実施形態）
前述した実施形態において、図１のステップＳ１１４においては、代表データの近傍として代表データを中心とする３×３サイズの領域を設定したが、これに限る訳ではない。例えば任意のサイズの矩形領域であってもよく、代表データを中心とする半径ｒ（ｒ≧１）の円形領域であってもよい。
【００５１】
また、図１のステップＳ１１４においては、代表データの近傍に代表データと異なるクラスインデックスの入力データが１つでも存在する場合にフラグメンテーションが発生していると判定したが、これに限る訳ではない。例えば代表データの近傍の入力データのうち、代表データと同じクラスインデックスの入力データの数をカウントする。そして、カウント値が閾値以上であった場合にフラグメンテーションが発生していないと判定し、カウント値が閾値未満であった場合にフラグメンテーションが発生したと判定してもよい。
【００５２】
また、代表データの近傍のクラスインデックスのうち、代表データと同じクラスインデックスではなく、代表データと異なるクラスインデックスの入力データの数をカウントしてもよい。さらには、クラスインデックスのパターンを予め指定し、代表データの近傍のクラスインデックスのパターン（関連付けされているパターン）が予め指定したパターンと類似する場合にフラグメンテーションが発生したと判定してもよい。
【００５３】
また、フラグメンテーションが発生している場合と発生していない場合との代表データの近傍のクラスインデックスのパターンを学習データとし、フラグメンテーションが発生しているかどうかを判定する２クラス識別モデルを予め学習してもよい。この場合、識別モデルとしては、例えば非特許文献３に記載のＳＶＭ（Ｓｕｐｐｏｒｔ  Ｖｅｃｔｏｒ  Ｍａｃｈｉｎｅ）を用いる。
【００５４】
前述した実施形態の図１のステップＳ１１４においては、フラグメンテーションが発生しているか否かの２値を決定したが、フラグメンテーションが発生している確率を算出してもよい。この場合、例えば、代表データの近傍のクラスインデックスのうち、代表データと同じクラスインデックスの数に応じて確率を算出する。または、代表データの近傍のクラスインデックスのパターンを学習データとして確率的識別モデルを学習する。このとき、確率的識別モデルとしては、例えば非特許文献４に記載のロジスティック回帰を使用する。
【００５５】
前述した実施形態の図１のステップＳ１１５においては、フラグメンテーション解消処理として非特許文献１の手法を適用するとしたが、これに限る訳ではない。例えばフラグメンテーションが発生したと判定されたクラスの代表データの周辺に新たな代表データを配置して再度クラスタリング処理を実行してもよい。このように代表データの数が増加することにより、フラグメンテーションが発生したクラスの各領域において異なる代表データに割り当てられ、フラグメンテーションが解消されるものと期待できる。
【００５６】
前述した実施形態においては、入力データの座標空間上の位置をｘi1，ｘi2の二次元で表したが、これに限る訳ではなく、任意の次元の座標であってもよい。また、入力データの色特徴をｘi3、ｘi4、ｘi5の三次元で表したが、色特徴に限る訳ではなく、テクスチャ特徴やテクスチャ特徴と色特徴とを複合した特徴量であってもよい。また、特徴量の次元は三次元に限定される訳でなく、任意の次元であってもよい。
【００５７】
また、前述の実施形態では、探索範囲２０２が幅及び高さがそれぞれ５個の代表データの例について説明したが、探索範囲の幅は５個の代表データに限定される訳でなく、任意の探索範囲であってもよい。
【００５８】
（その他の実施形態）
本発明は、上述の実施形態の１以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける１つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、１以上の機能を実現する回路（例えば、ＡＳＩＣ）によっても実現可能である。
【符号の説明】
【００５９】
４０１  データ保存部
４０４  ＣＰＵ
【図１】
0006587407.tif 000003
【図２】
0006587407.tif 000004
【図３】
0006587407.tif 000005
【図４】
0006587407.tif 000006
【図５】
0006587407.tif 000007