JP2011034410A - クラスタリング処理方法、クラスタリング処理装置、およびプログラム - Google Patents

クラスタリング処理方法、クラスタリング処理装置、およびプログラム Download PDF

Info

Publication number
JP2011034410A
JP2011034410A JP2009181016A JP2009181016A JP2011034410A JP 2011034410 A JP2011034410 A JP 2011034410A JP 2009181016 A JP2009181016 A JP 2009181016A JP 2009181016 A JP2009181016 A JP 2009181016A JP 2011034410 A JP2011034410 A JP 2011034410A
Authority
JP
Japan
Prior art keywords
hierarchy
cluster
belonging
clusters
sample
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2009181016A
Other languages
English (en)
Other versions
JP5377148B2 (ja
JP2011034410A5 (ja
Inventor
Koji Okawa
浩司 大川
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Canon Inc
Original Assignee
Canon Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Canon Inc filed Critical Canon Inc
Priority to JP2009181016A priority Critical patent/JP5377148B2/ja
Priority to US12/825,062 priority patent/US8218881B2/en
Publication of JP2011034410A publication Critical patent/JP2011034410A/ja
Publication of JP2011034410A5 publication Critical patent/JP2011034410A5/ja
Application granted granted Critical
Publication of JP5377148B2 publication Critical patent/JP5377148B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/10Segmentation; Edge detection
    • G06T7/11Region-based segmentation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/23Clustering techniques
    • G06F18/232Non-hierarchical techniques
    • G06F18/2321Non-hierarchical techniques using statistics or function optimisation, e.g. modelling of probability density functions
    • G06F18/23213Non-hierarchical techniques using statistics or function optimisation, e.g. modelling of probability density functions with fixed number of clusters, e.g. K-means clustering
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/762Arrangements for image or video recognition or understanding using pattern recognition or machine learning using clustering, e.g. of similar faces in social networks
    • G06V10/763Non-hierarchical techniques, e.g. based on statistics of modelling distributions
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V30/00Character recognition; Recognising digital ink; Document-oriented image-based pattern recognition
    • G06V30/10Character recognition
    • G06V30/16Image preprocessing
    • G06V30/162Quantising the image signal
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/10Image acquisition modality
    • G06T2207/10004Still image; Photographic image
    • G06T2207/10008Still image; Photographic image from scanner, fax or copier
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/30Subject of image; Context of image processing
    • G06T2207/30176Document
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V30/00Character recognition; Recognising digital ink; Document-oriented image-based pattern recognition
    • G06V30/10Character recognition

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • General Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • Evolutionary Computation (AREA)
  • Software Systems (AREA)
  • Multimedia (AREA)
  • Artificial Intelligence (AREA)
  • Probability & Statistics with Applications (AREA)
  • Medical Informatics (AREA)
  • Databases & Information Systems (AREA)
  • General Health & Medical Sciences (AREA)
  • Computing Systems (AREA)
  • Health & Medical Sciences (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Evolutionary Biology (AREA)
  • General Engineering & Computer Science (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Image Analysis (AREA)

Abstract

【課題】高速に領域分割を行うことのできるクラスタリング処理方法を提供する。
【解決手段】処理対象であるサンプルの特徴量を第1の階層に属する所定の閾値を超えない数のクラスタそれぞれの代表特徴量と比較した結果に基づいて、第1の階層に属するクラスタに帰属させるサンプル帰属工程と、第M−1の階層に属するクラスタを、第Mの階層に帰属させるか否かを判定する判定工程と、前記判定工程で前記第M−1の階層に属するクラスタを前記第Mの階層に帰属させると判定した場合、前記第M−1の階層に属するクラスタを、前記第Mの階層に帰属させるクラスタ帰属工程とを有し、前記サンプルを順番に処理対象として、全ての前記サンプルが最も上位の階層である第Kの階層に属するクラスタのいずれかに帰属するまで、前記サンプル帰属工程と前記判定工程と前記クラスタ帰属工程とを繰り返し実行する。
【選択図】図1

Description

本発明は、サンプル群を分割するためのクラスタリング処理方法、クラスタリング処理装置、およびプログラムに関する。
文書の電子化は、単に紙上の文書をスキャナ等によって読み取って画像データを得るにとどまらない。例えば、文書を構成する文字、図、写真、表等の性質の異なる領域に画像データを分離する。そして、文字領域は文字コード、図領域はベクトルデータ、背景領域や写真領域はビットマップデータ、表領域は構造データなど、目的に応じて各々最も適した形式にデータ化する処理が、文書の電子化処理で行われる。
ベクトルデータへの変換手法として、例えば特許文献1では、クラスタリング処理により領域分割を行い、各領域の輪郭を抽出し、抽出された輪郭をベクトルデータへ変換する。また、特許文献2では、画像を背景と前景に分離し、前景をベクトルデータに変換し、背景を背景専用の方法でデータ圧縮する画像処理方法が開示されている。また、特許文献3では、スキャナで読み取られた原稿に対してクラスタリング処理を行った後に残るノイズクラスタを除去する方法が開示されている。
ところで、画像をクラスタリング処理により領域分割する方法としてはNearest Neighborクラスタリング法が知られている。Nearest Neighborクラスタリング法は、処理対象の画素の特徴ベクトルと各クラスタの代表特徴ベクトルを比較して、特徴空間上で最も距離が近い特徴ベクトルを有するクラスタを探索する。距離が所定の閾値以下であれば該クラスタに処理対象の画素を帰属させる。そうでなければ新たなクラスタを定義して、該クラスタに処理対象の画素を帰属させる。なお、ここで特徴ベクトル(特徴量)の要素としては色情報(R、G、Bから成る画素値)が使われるのが一般的である。クラスタの代表特徴ベクトルとは、一般的にクラスタの重心が用いられる。即ち、クラスタに帰属する各画素の特徴ベクトル(色情報)の平均値である。
Nearest Neighborクラスタリング法では、画素毎に全てのクラスタの代表特徴ベクトルとの距離を算出しなければならない。これに対して、計算量を削減するため、例えば特許文献4のカラー画像処理装置が開示されている。従来技術では、処理対象の画素と隣接画素の特徴ベクトル(色情報)に基づいてクラスタリングを行う。次に、クラスタ同士の色情報及び幾何学情報に基づいてクラスタのグルーピングを行う。ここで、幾何学情報とは、実空間上におけるクラスタ間の距離を表す座標情報などである。
特開2007−158725号公報 特開2008−206073号公報 特開2006−344069号公報 特開平11−288465号公報
しかしながら、特許文献4の従来技術では処理対象の画素と隣接画素の特徴ベクトルの距離が離れている場合は、クラスタを新たに定義し、注目画素を該クラスタに帰属させるので、大量のクラスタが定義される。その為、グルーピングに要する処理時間が増大するという課題があった。
そこで、本発明は高速に領域分割を行うことのできるクラスタリング処理方法を提供する事を目的とする。
上記課題を解決するために、本発明のクラスタリング処理方法は、以下の構成を有する。サンプル群をサンプルそれぞれの特徴量に基づいて複数のクラスタに分割するクラスタリング処理方法であって、前記複数のクラスタはそれぞれ、M層(M=2,…,K)からなる複数の階層のいずれかに属し、前記クラスタリング処理方法は、処理対象である前記サンプルの特徴量を第1の階層に属する所定の閾値を超えない数のクラスタそれぞれの代表特徴量と比較した結果に基づいて、当該処理対象であるサンプルを前記第1の階層に属するクラスタに帰属させるサンプル帰属工程と、第M−1の階層に属するクラスタを、第Mの階層に帰属させるか否かを判定する判定工程と、前記判定工程で前記第M−1の階層に属するクラスタを前記第Mの階層に帰属させると判定した場合、前記第M−1の階層に属するクラスタを、前記第Mの階層に帰属させるクラスタ帰属工程とを有し、前記サンプルを順番に処理対象として、全ての前記サンプルが最も上位の階層である第Kの階層に属するクラスタのいずれかに帰属するまで、前記サンプル帰属工程と前記判定工程と前記クラスタ帰属工程とを繰り返し実行することを特徴とする。
本発明のクラスタリング処理方法では、クラスタの構造を階層化することにより、距離の計算を削減している。また、帰属確率の高いクラスタを、処理対象であるサンプルが分類され易い階層に配置することにより、従来よりも距離の計算回数を削減できるため、高速な領域分割が可能となる。
第一の実施形態に係るクラスタリング処理方法のフローチャートを示す図。 第一の実施形態に係る階層移動処理方法のフローチャートを示す図。 第二の実施形態に係る階層移動処理方法のフローチャートを示す図。 第三の実施形態に係るクラスタリング処理方法のフローチャートを示す図。 第三の実施形態に係る階層移動処理方法のフローチャートを示す図。 ベクトルデータ変換装置の構成を表すブロック図。 第一の実施形態に係るクラスタリング処理方法の距離計算回数を示す図。 第一の実施形態に係るクラスタリング処理方法の距離計算回数を示す図。 第一の実施形態に係るクラスタリング処理方法の精度を示す図。 第一の実施形態に係るクラスタリング処理方法の処理対象画像の例図。 第二の実施形態に係るクラスタリング処理方法の距離計算回数を示す例図。 第三の実施形態に係るクラスタリング処理方法の距離計算回数を示す例図。
<第一の実施形態>
本発明の第一の実施形態に係るクラスタリング処理方法と、それを用いたベクトルデータ変換装置の構成について、図6を参照して説明する。
図6はベクトルデータ変換装置の構成を表すブロック図の例である。図6において、原稿読み取り部600は、原稿を読み取り、具体的にはスキャナで光学的に読み取られた画像データをA/D変換して出力する。背景判定部601は、原稿読み取り部600から出力された画像データの各画素が前景であるか背景であるかを判定し、画素毎に背景であるか否かを示す背景フラグを生成し入力画像データに付加して出力する。背景を判定する方法については、特許文献2において公知である。また、例えばスキャナから光学的に読み取られた画像データの場合、紙の色を判別し、その色に基づいて背景画素を判定してもよい。
クラスタリング処理部602は本実施形態のクラスタリング処理方法を適用して画像データの領域分割を行う。クラスタリング処理部602へは、背景判定部601から出力された画像データが1画素ずつラスタスキャン順で入力される。クラスタリング処理部602は、領域分割(クラスタリング処理)後の画像データ(各クラスタ領域のデータ)を出力する。輪郭抽出部603は、クラスタリング処理部602によって分割された各領域(各クラスタ)の輪郭を抽出する。ベクトルデータ生成部604は、輪郭抽出部603によって抽出された輪郭を基にベクトルデータを生成する。ベクトルデータ生成部604は、前景画像データのみをベクトルデータへ変換する。背景生成部605は、背景判定部601から出力された背景フラグに基づいて、画像データのうち背景以外の画素を背景色で塗りつぶして出力する。背景圧縮部606は、背景生成部605から出力されたデータを圧縮する。背景圧縮部606が圧縮に用いる処理方式は例えばJPEG符号化方式があるが、本発明はこれに限定されず、その他の圧縮方式を用いても良い。データ結合部607は、ベクトルデータ生成部604から出力されたベクトルデータ及び背景圧縮部606から出力された圧縮データを結合し、結合したデータを出力する。
なお、本実施形態でのクラスタリング処理の対象となるサンプルとは、画像データにおける各画素を指し、サンプル群とは、画素の集合(すなわち、該画像データを構成する画素群)を指す。本実施形態において、画像データにおける画素をサンプルとして説明しているが、クラスタリング処理の一般的な用途を考慮すると、画素に限定するものではなく、サンプルはクラスタリング処理を適用できる対象(任意のデータの集合)に適用できることは言うまでも無い。
<クラスタリング処理>
以下、クラスタリング処理部602の処理を、図1に示すフローチャートを用いて詳細に説明する。また、本実施形態において、S103からS112の処理により、サンプル帰属工程を実現する。まず、第M(M=1,2,…,K−1,K)の階層に属するクラスタ群のクラスタ数を表す変数num_cluster[M]を全て0に初期化する(S101)。Kは、クラスタを何階層まで定義するかを示す定数である。なお、本実施形態のクラスタリング処理方法では、クラスタを第2の階層まで定義する(K=2)。すなわち、最も上位の階層である第Kの階層は、第2階層となる。次に、クラスタリング処理の対象画素(以下、処理対象画素と記す)の特徴ベクトルPcを取得する(S102)。本実施形態のクラスタリング処理方法では、RGB色空間を特徴空間とする。即ち、画素のRGB値が、その画素の要素(R値、G値、B値の3次元要素)である特徴ベクトル(特徴量)である。しかし、本発明のクラスタリング処理方法はこれに限定されるものではない。例えば、YUV色空間の画素値を特徴ベクトル(特徴量)として用いてもよい。
続いて、S103からS110の処理によって、第1の階層に属するクラスタを探索し、処理対象画素との距離が最も近いクラスタを取り出す。これにより、第1層クラスタ探索工程を実現する。まず、既に第1の階層に属するクラスタが定義されているか否かを判定する(S103)。すなわち、第1の階層に属するクラスタ数num_cluster[1]が0か否かを判定する。第1の階層に属するクラスタが定義されていないならば(S103でYES)、S114の処理へ進む。既にクラスタが定義されていれば(S103でNO)、S104の処理に進む。
S104では、着目する階層内に属する全クラスタをスキャンするためのループインデクスiと変数min_distance[1]の初期化を行う。min_distance[M]の初期値には、特徴空間で取りうる最大の距離よりも大きい値MAX_VALUEを設定する。min_distance[M]は、処理対象の画素(もしくはクラスタ)の特徴ベクトル(特徴量)と、第Mの階層に属する各クラスタの代表特徴ベクトル(代表特徴量)との距離のうち、最も小さい値を表す変数である。次に、第1の階層に属するクラスタC1iの代表特徴ベクトルP1iを取得する(S105)。次に、PcとP1iの距離D(Pc,P1i)を算出する(S106)。本実施形態のクラスタリング処理方法では、距離D(Pc,P1i)としてユークリッド距離を算出するが、本発明のクラスタリング処理方法はこれに限定されるものではなく、例えばマンハッタン距離を算出してもよい。次に、D(Pc,P1i)の値とmin_distance[1]の値を比較する(S107)。
min_distance[1]の値よりもD(Pc,P1i)の値が大きければ(S107でNO)、S109の処理に進む。D(Pc,P1i)の値がmin_distance[1]以下ならば(S107でYES)、min_distance[1]の値をD(Pc,P1i)に更新し、nn_clust[1]の値をクラスタ番号iに更新する(S108)。nn_clust[M]は、処理対象の画素(もしくはクラスタ)の特徴ベクトルとの距離が最も近い特徴ベクトルを持つ第Mの階層に属するクラスタの番号を表す変数である。次に、ループインデクスiを更新する(S109)。S110では、全ての、第1の階層に属するクラスタとの比較が終了したかを判定する。比較が終了していなければ(S110でNO)、S105の処理に戻る。全てのクラスタとの比較が終了していれば(S110でYES)、S111の処理に進む。
S111では、min_distance[1]の値と閾値T[1]の値を比較する。なお、閾値T[M]は、処理対象画素(もしくは処理対象クラスタ)を定義済みの第Mの階層に属するいずれかのクラスタに帰属させるか、もしくは第Mの階層に属するクラスタを新しく定義し、該クラスタに帰属させるかを判定するための判定基準となる所定の値である。例えば、処理対象画素を第一の階層に帰属させるためには、クラスタとの距離が第1の距離の閾値T[1]以下である必要がある。同様に第Mの階層に帰属させるためには、第Mの距離の閾値T[M]以下である必要がある。min_distance[1]がT[1]の閾値以下ならば(S111でYES)、処理対象画素を、特徴空間上で最も距離の近い、第1の階層に属するクラスタC1nn_clust[1]に帰属させ、代表特徴ベクトルを更新する(S112)。S112により、第1階層クラスタ帰属工程を実現する。このS112の処理の後、S115の処理へ進む。一方、min_distance[1]がT[1]よりも大きければ(S111でNO)、S113における第1の階層から第2の階層へのクラスタの階層移動処理に進む。クラスタの階層移動処理については、図2を用いて後述する。次に、処理対象画素の特徴ベクトルを代表特徴ベクトルとするクラスタを、第1の階層に新しく定義し、num_cluster[1]を更新する。更にクラスタの代表特徴ベクトルをPcとして定義する(S114)。これにより第1層クラスタ帰属工程を実現する。
S115では、全ての画素に対する処理が終了したかを判定する。終了していれば(S115でYES)、S116において階層移動処理を行った後、クラスタリング処理を終了する。そうでない場合は(S115でNO)、S102の処理に戻り、後続する画素を処理対象画素とする。
<階層移動処理>
S113およびS116の階層移動処理について、図2を用いて詳細に説明する。階層移動処理は、下位の層に属するクラスタを上位の層に移動し、上位の層に下位の層のクラスタを帰属させる処理である。クラスタを帰属させる際には、帰属可能なクラスタがすでに上位の層にあれば、そのクラスタに帰属させ、無ければ、新たにクラスタを定義してそのクラスタに帰属させる。なお、本実施形態において、階層移動処理によってクラスタ帰属工程を実現する。
まずS201において、全ての画素の処理が終わっているか、もしくはnum_cluster[1]が閾値Tc[1]以上か否かを判定する。閾値Tc[1]は、第1の階層に属するクラスタを第2の階層に移動するか否かを判定するための所定の値である。すなわち、閾値Tc[1]を用いて第1の階層に属するクラスタ数を制限している。なお、本実施形態におけるTc[1]の値は3とするが、本発明のクラスタリング処理方法における値はこれに限定されるものではない。Tc[1]の値は1や2、または4以上でもよいし、処理の中で必要に応じて変化させてもよい。例えば、num_cluster[2]の値の1/10や1/20などの値をTc[1]に設定してもよい。他にも、背景判定部601において解析したパターンに応じて設定してもよいし、第1の階層でクラスタが新しく定義される頻度に応じてTc[1]の値を設定してもよい。
num_cluster[1]の値がTc[1]より小さい、かつ全ての画素の処理が終わっていないならば(S201でNO)、第1の階層から第2の階層へのクラスタの階層移動処理を終了する。num_cluster[1]の値がTc[1]以上か、全ての画素の処理が終わっているならば(S201でYES)、S202の処理に進む。S202では、第1の階層に属する全てのクラスタをスキャンするためのループインデクスjを初期化する。次に、S203で第1の階層に属するクラスタC1j(以下、処理対象クラスタと記す)を第2の階層に移動するか否かを判定する。本実施形態では、ここでの判定は、全ての画素の処理が終わっているか、もしくは処理対象クラスタが第1の階層に属するクラスタの中で最も定義されてから時間が経過しているクラスタならば第2の階層に移動すると判定する。しかし本発明のクラスタリング処理方法はこの判定基準に限定されるものではなく、クラスタの数や処理の進行状況、もしくは、頻度などに基づいて判定しても良い。例えば、画素が帰属する確率の低いクラスタを移動すればよい。また、帰属するクラスタもしくは画素の出現頻度が低いクラスタを移動すると判定しても良い。また、帰属している画素数の少ないクラスタを他の階層に移動すると判定してもよいし、最後に画素が帰属されてからの経過時間に応じてクラスタを移動してもよい。また、一度の階層移動処理において複数のクラスタや全てのクラスタを移動してもよい。さらには、一定数以上の画素が帰属処理を適用されたらクラスタを移動させても良い。以上の判定条件に基づいて、該当する第1の階層に帰属する1つのクラスタを抽出する。S203でNOと判定されたならば、S216の処理に進む。S203でYESと判定されたならば、処理対象クラスタの代表特徴ベクトルP1jを取得し、num_cluster[1]の値を更新する(S204)。
続いて、S205からS212の処理によって、第2の階層に属するクラスタを探索し、処理対象クラスタとの距離が最も近いクラスタを取り出す。これにより、第M層クラスタ探索工程を実現する。まず、既に第2の階層に属するクラスタが定義されているか否かを判定する(S205)。第2の階層に属するクラスタが定義されていないならば(S205でYES)、S215の処理へ進み、第2の階層に属するクラスタを新たに定義する。既にクラスタが定義されていれば(S205でNO)、S206の処理に進む。
S206では、第2の階層に属する全てのクラスタをスキャンするためのループインデクスkと変数min_distance[2]の初期化を行う。min_distance[2]の初期値には前述したMAX_VALUEを設定する。次に、第2の階層に属するクラスタC2kの代表特徴ベクトルP2kを取得する(S207)。次に、P1jとP2kの距離D(P1j,P2k)を算出する(S208)。次に、D(P1j,P2k)の値とmin_distance[2]の値を比較する(S209)。
min_distance[2]の値よりもD(P1j,P2k)の値が大きければ(S209でNO)、S211の処理へ進み、ループインデクスkを更新する。D(P1j,P2k)がmin_distance[2]以下ならば(S209でYES)、min_distance[2]をD(P1j,P2k)に、nn_clust[2]をkに更新(S210)し、S211にてkを更新する。S212では、処理対象クラスタと、全ての第2の階層に属するクラスタとの比較が終了したかを判定する。比較が終了していなければ(S212でNO)、S207の処理に戻る。全ての第2の階層に属するクラスタとの比較が終了していれば(S212でYES)、S213へ進み、min_distance[2]の値と閾値T[2]の値を比較する。min_distance[2]がT[2]よりも大きければ(S213でNO)、処理対象クラスタの特徴ベクトルを代表特徴ベクトルとするクラスタを、第2の階層に新しく定義し、num_cluster[2]を更新する(S215)。min_distance[2]がT[2]以下ならば(S213でYES)、特徴空間上で最も距離の近い、第2の階層に属するクラスタC2nn_clust[2]に処理対象クラスタを帰属させ、代表特徴ベクトルを更新する(S214)。S214により第M層クラスタ帰属工程を実現する。次にS216へ進み、第1階層に属する全てのクラスタに対する処理が終了したかを判定する。終了していれば(S216でYES)、階層移動処理を終了する。そうでない場合は(S216でNO)、ループインデクスjを更新し(S217)、S203の処理に戻り後続するクラスタを処理対象クラスタとする。これにより、第1階層に属する全てのクラスタに対し、順番に処理を適用する。
<クラスタリング処理の結果>
図7(a)に示す画像を用いて本実施形態のクラスタリング処理方法の効果を説明する。図7(a)の画像は、縦17画素、横12画素、計17×12の204画素で構成される。図7(b)は、図7(a)の画像をクラスタリングした後の、各クラスタの情報を示したものである。図7(c)は従来のNearest Neighborクラスタリング法を適用した際の、画素毎の距離計算回数を示したものである。従来の方法では、処理対象画素の特徴ベクトルと、全ての定義済みクラスタの代表特徴ベクトルとの距離を比較する必要があるので、距離計算回数は、図7(c)より809回になる。
図7(d)は、図7(a)の画像に本実施形態のクラスタリング処理方法を適用した際の画素毎の距離計算回数を示すものである。今回の例では、条件を、クラスタを第2の階層まで定義し(K=2)、第1の階層に属するクラスタ数の上限を3に設定した(Tc[1]=3)。また、クラスタの階層移動処理の際に、定義されてから最も時間の経過しているクラスタを1つだけ移動する、としている。従来方法は、1画素毎の距離計算回数がクラスタ数に応じて増えている。一方今回の例では、第1の階層に属するクラスタ数の上限を3と限定しているため、階層移動処理が発生しない限り、1画素あたり3回以内の距離計算で帰属するクラスタが決まる。図7(d)を参照すると、1画素あたり3回の距離計算が行われる画素が多いのはそのためである。1画素あたりの距離計算回数が4回以上の画素は、クラスタの階層移動処理が行われた画素である。また、一番右下の画素の距離計算回数が12回と多くなっているのは、最後に第1の階層に属する全てのクラスタを第2の階層に移動しているためであり、距離計算回数は合計で、図7(d)より579回になる。また、図8(a)は、K=2、Tc[1]=1と設定し、図7(a)の画像に本実施形態のクラスタリング処理方法を適用した際の画素毎の距離計算回数を示したものである。図8(a)より、合計の距離計算回数は440回となる。
また、K=2、Tc[1]=3、クラスタの階層移動処理の際に全ての第1の階層に属するクラスタを第2の階層に移動すると設定して図7(a)の画像に本実施形態のクラスタリング処理方法を適用する。その際の画素毎の距離計算回数を図8(b)に示す。途中で一度、第1の階層に属するクラスタを全て(3クラスタ)を第2の階層に移動しているため、10回の距離計算が行われている画素がある。該画素に後続する画素は、第1の階層に属するクラスタ数が1クラスタの状態で処理が行われる。図8(b)より、合計の距離計算回数は567回となり、いずれの場合も従来手法に比べて距離計算回数を削減できたことがわかる。
また、本実施形態のクラスタリング処理方法においては、条件として第1の階層と第2の階層で、閾値T[1]と閾値T[2]の、値の異なる二つの閾値を用いている。T[1]をT[2]よりも小さく設定する事で、精度の高い高速なクラスタリングを可能にしている。
その具体例を、図9を用いて説明する。上述した特徴ベクトルはRGB値の三次元の例であったが、説明を簡単にするため、図9(a)では、画像の特徴ベクトルを一次元とし、5×3の各画素の数値は画素毎の特徴ベクトルの値を示している。また、クラスタの階層数は2(K=2)、第1の階層に属するクラスタ数の上限値は1(Tc[1]=1)として処理を行うとする。図9(b)は、最上列における左端の画素から画素901までの5画素分のクラスタリング処理が終了した状態を示している。まず、特徴ベクトル10の3画素からなるクラスタ902が第1の階層に定義される。4画素目の画素903が入力されると、新たにクラスタ904が定義され、クラスタ902は第1の階層から第2の階層に移動される。画素901は、この時点で第1の階層にある、クラスタ904に帰属される。
続いて、T[1]とT[2]の値を共に20に設定してクラスタリングを行った場合の、望ましくない結果を図9(c)に示す。画素905の特徴ベクトルとクラスタ904の特徴ベクトルとの距離は閾値T[1]以下(S111でYES)と判定され、画素905がクラスタ904に帰属される。そして、処理結果として、図9(c)のような結果になる。一方、T[1]の値をT[2]の値より小さく設定(例えば、T[1]=5,T[2]=20とする)してクラスタリングを行うと、結果は図9(d)のようになる。これは、画素905の特徴ベクトルとクラスタ904の特徴ベクトルとの距離は閾値T[1]より大きい(S107でNO)と判定される為である。従って、画素905入力時点でクラスタ902、904に続いて、第1の階層に更に新たなクラスタが定義される。その後、該クラスタは後の階層移動処理で最も距離の近いクラスタ902と統合される。すなわち、T[1]をT[2]より小さくする設定することで、精度の高いクラスタリングが可能になる。このことは、一般数に拡張し、より高い階層の閾値をより大きくするT[M−1]<T[M]として定義することを示している。
また、階層毎のクラスタ数の上限値Tc[M]の最適な値は、画像毎に異なってくる。例えば、Tc[M]の値を最適に設定するために、前処理で解析したパターンを元に設定するということが考えられる。例えば、ベクトルデータ変換装置(図6)の、背景判定部601において、図10のような、3色が繰り返されるパターンを有する処理対象画像を解析したとする。そうした場合は、第1の階層に属するクラスタの上限値Tc[1]を3と設定することで、高速に動作させる事ができる。
すでに述べたように、本発明において、閾値やクラスタの探索条件は処理対象の特性などに合わせて、様々に設定可能である。上述した条件や値に限定せず、実験的に処理対象に最適な値を導き、用いても良いことは言うまでも無い。
<第二の実施形態>
第二の実施形態のクラスタリング処理方法と、それを用いたベクトルデータ変換装置について説明する。図6は、前記ベクトルデータ変換装置の構成を示したものであり、本発明における第一の実施形態のクラスタリング処理方法で説明したものと同一である。
以下、クラスタリング処理部602の処理を詳細に説明する。本実施形態は、クラスタの階層を第Lの階層まで定義したものである(K=L)。本実施形態は、図1のS113及びS116の階層移動処理の内部以外は本発明の第一の実施形態で説明したものと同一であるため、階層移動処理のみを図3に示すフローチャートを用いて詳細に説明する。
図3は、第M−1の階層に属するクラスタを第Mの階層に移動する際のフローチャートを表している。まず、S301で第M−1の階層に属するクラスタ数num_cluster[M−1]と閾値Tc[M−1]の比較と、全ての画素の処理が終わったか否かの判定を行う。閾値Tc[M−1]は、第M−1の階層に属するクラスタを第Mの階層に移動するか否かを判定する値である。なお、本実施形態ではTc[M]の値を全て3とするが、本発明のクラスタリング処理方法はこれに限定されるものではない。Tc[M]の値は1や2、または4以上でもよいし、それぞれ異なった値に設定する、あるいは処理の中で必要に応じて変化させる等も可能である。例えば、num_cluster[M]の値の1/10、1/20の値をTc[M−1]に設定してもよい。他にも、背景判定部601において解析したパターンに応じて設定してもよいし、第M−1の階層でクラスタが新しく定義される頻度に応じてTc[M−1]の値を設定してもよい。
num_cluster[M−1]の値がTc[M−1]より小さい、かつ全ての画素の処理が終わっていないならば(S301でNO)、第M−1の階層から第Mの階層への階層移動処理を終了する。num_cluster[M−1]の値がTc[M−1]以上か、全ての画素の処理が終わっているならば(S301でYES)、S302の処理に進み、実際に階層の移動を行う。なお、本実施形態では、階層を移動する際に、第M−1の階層に属するクラスタ全てを第Mの階層に移動させている。しかし本発明のクラスタリング処理方法はこれに限定されるものではなく、例えば、画素(もしくはクラスタ)が帰属する確率の低い第M−1の階層に属するクラスタのみを、第Mの階層に移動させてもよい。例えば、第M−1の階層に属するクラスタの中で定義されてからの経過時間が長いクラスタを移動してもよいし、帰属している画素(もしくはクラスタ)数の少ないクラスタを移動すると判定してもよい。また、最後に画素(もしくはクラスタ)が帰属されてからの経過時間に応じてクラスタを移動してもよい。
S302では、第M−1の階層に属する全てのクラスタをスキャンするためのループインデクスjを初期化する。次に、処理対象クラスタC(M−1)jの代表特徴ベクトルP(M−1)jを取得し、num_cluster[M−1]の値を更新する(S303)。次に、既に第Mの階層に属するクラスタが定義されているか否かを判定する(S304)。第Mの階層に属するクラスタ数が定義されていないならば(S304でYES)、S316の処理へ進み、第Mの階層のクラスタを新たに定義する。既にクラスタが定義されていれば(S304でNO)、S305の処理に進む。
続いて、S305からS311の処理によって、第Mの階層に属するクラスタを探索し、第M−1層における処理対象クラスタとの距離が最も近いクラスタを取り出す。これにより、第M層クラスタ探索工程を実現する。S305では、第Mの階層に属する全てのクラスタをスキャンするためのループインデクスkと変数min_distance[M]の初期化を行う。min_distance[M]の初期値には第一の実施形態でも述べたMAX_VALUEを設定する。min_distance[M]は、処理対象画素(もしくはクラスタ)の特徴ベクトルと、第Mの階層に属する各クラスタの代表特徴ベクトルとの距離の内、最も小さい値を表す変数である。次に、第Mの階層に属するクラスタCMkの代表特徴ベクトルPMkを取得する(S306)。次に、P(M−1)jとPMkの距離D(P(M−1)j,PMk)を算出する(S307)。次に、D(P(M−1)j,PMk)の値とmin_distance[M]の値を比較する(S308)。
min_distance[M]の値よりもD(P(M−1)j,PMk)の値が大きければ(S309でNO)、S310へ進み、ループインデクスkを更新する。D(P(M−1)j,PMk)がmin_distance[M]以下ならば(S308でYES)、min_distance[M]をD(P(M−1)j,PMk)に、nn_clust[M]をkに更新する(S309)。次に、S310にてループインデクスkを更新する。S311では、処理対象クラスタと、全ての第Mの階層に属するクラスタとの比較が終了したか否かを判定する。比較が終了していなければ(S311でNO)、S306の処理に戻る。全ての第Mの階層に属するクラスタとの比較が終了していれば(S311でYES)、S312へ進み、min_distance[M]の値と閾値T[M]の値を比較する。閾値T[M]は、処理対象画素(もしくはクラスタ)を、定義済みの第Mの階層に属するクラスタに帰属させるか、もしくは第Mの階層に新しいクラスタを定義し、該クラスタに帰属させるかを判定するための基準となる値である。
min_distance[M]がT[M]以下ならば(S312でYES)、処理対象クラスタを、特徴空間上で最も距離の近い、第Mの階層に属するクラスタCMnn_clust[M]に帰属させ、代表特徴ベクトルを更新する(S313)。これにより第M層クラスタ帰属工程を実現する。なお、本実施形態においては、M=2であるため、第1層に属するクラスタを第2層に帰属させることとなる。次に、後述するS317の処理へ進む。min_distance[M]がT[M]よりも大きければ(S312でNO)、S314の処理に進む。S314では、第Mの階層が、定義した階層数Lより小さい、かつ全ての画素の処理が終わっていないかを判定する。MがLより小さい、かつ全ての画素の処理が終わっていないならば(S314でYES)、第Mの階層から第M+1の階層への階層移動処理を行う(S315)。これは、処理対象となる階層を代えて、S301からの処理を再帰的に行うこととなる。MがL以上または全ての画素の処理が終わっているならば(S314でNO)、S316の処理へ進む。S316では、処理対象クラスタの特徴ベクトルを代表特徴ベクトルとするクラスタを、第Mの階層に新しく定義し、num_cluster[M]を更新する。
S317では、第M−1階層に属する全てのクラスタに対する処理が終了したかを判定する。終了していれば(S317でYES)、S318の処理へ進む。第M−1階層に属する全てのクラスタに対する処理が終了していない場合は(S317でNO)、ループインデクスjを更新し(S320)、S303の処理に戻り後続するクラスタを処理対象クラスタとする。S318では、第Mの階層が、定義した階層数Lより小さいか否かを判定する。MがLより小さければ(S318でYES)、第Mの階層から第M+1の階層への階層移動処理を行う(S319)。MがL以上ならば(S318でNO)、第M−1の階層から第Mの階層へのクラスタの階層移動処理を終了する。
<クラスタリングの処理結果>
次に、図11に示す画像を用いて本実施形態のクラスタリング処理方法の効果を説明する。図11は、図7(a)の画像に本実施形態のクラスタリング処理方法を適用した際の画素毎の距離計算回数を示すものである。今回の例では、条件として、クラスタを第3の階層まで定義し(K=3)、クラスタ数の上限値TcをそれぞれTc[1]=1、Tc[2]=3に設定して処理している。また、クラスタの階層移動処理の際に、全ての第M−1の階層に属するクラスタを第Mの階層に移動する、としている。今回の例では、第2の階層のクラスタ数も制限されたため、第1の階層から第2の階層への階層移動処理が発生した際の距離計算回数が、図8(a)の時より更に削減されていることがわかる。その代わり、図8(a)の際には発生しなかった第2の階層から第3の階層への階層移動処理が新たに発生した画素は距離計算回数が増えている。しかし、合計の距離計算回数は、図11より404回となり、従来方法に比べて削減できていることがわかる。
また、下位の階層でクラスタ数の上限値Tcを大きく設定すると、距離計算回数の削減効果が低くなるため、Tcは、Tc[M−1]≦Tc[M]の関係を満たしていることが望ましい。
<第三の実施形態>
第三の実施形態のクラスタリング処理方法と、それを用いたベクトルデータ変換装置について説明する。図6は、前記ベクトルデータ変換装置の構成を示したものであり、本発明の第一の実施形態で説明したものと同一である。
以下、クラスタリング処理部602の処理を詳細に説明する。本実施形態は、第二の実施形態で説明したクラスタリング処理方法から、階層移動処理を行うタイミングと条件を変更したものである。なお、クラスタの階層は、第二の実施形態と同様Lまでとして定義している。
図4のフローチャートを用いて、本実施形態のクラスタリング処理部602を詳細に説明する。まず、第M(M=1,2,…,K−1,K)の階層に属するクラスタ数を表す変数num_cluster[M]と、第Mの階層で処理した画素(もしくはクラスタ)数を表す変数clust_count[M]を全て0に初期化する(S401)。clust_count[1]は処理した画素数を表し、それ以外のclust_count[M]は、第Mの階層で処理したクラスタ数を表す。次の、S402〜S403及びS405〜S412の処理に関しては、第一の実施形態のクラスタリング処理方法(図1)のS102〜S103及びS105〜S112の処理とそれぞれ同一であるため説明を省略する。S404では、第一の実施形態におけるクラスタリング処理方法のS104の処理に加えて、clust_count[1]の更新を行っている。
次に、S413で、処理対象画素の特徴ベクトルを代表特徴ベクトルとするクラスタを、第1の階層に新しく定義し、num_cluster[1]を更新した後に、後述する階層移動処理を行う(S414)。階層移動処理に関しては図5を用いて後述する。次に、S415では、全ての画素に対する処理が終了したかを判定する。終了していれば(S415でYES)、S416において階層移動処理を行った後、クラスタリング処理を終了する。そうでない場合は(S415でNO)、S402の処理に戻り、後続する画素を処理対象画素とする。
<階層移動処理>
図4におけるS414およびS416の階層移動処理について、図5を用いて詳細に説明する。まずS501において、実際にクラスタの階層を移動させるか否かを判定する。判定方法としては、全ての画素の処理が終わっているか、もしくはclust_count[M−1]が、Tcount[M−1]より大きいか否かで判定する。ここでのTcount[M−1]は、第M−1階層のクラスタを第M階層に移動するか否かを、処理した画素(もしくはクラスタ)数に応じて判定するための所定の閾値である。全ての画素の処理が終わっている、もしくはclust_count[M−1]の値がTcount[M−1]より大きければ(S501でYES)、ループインデクスjを初期化する(S502)。jは、第M−1の階層に属する全てのクラスタをスキャンするためのループインデクスである。全ての画素の処理が終わっていない、かつclust_count[M−1]の値がTcount[M−1]以下ならば(S501でNO)、クラスタの移動を行わずに階層移動処理を終了する。
S503では、処理対象クラスタC(M−1)jの代表特徴ベクトルP(M−1)jを取得し、num_cluster[M−1]とclust_count[M]の値をそれぞれ更新する(S503)。S504〜S513の処理は、本発明の第二の実施形態のクラスタリング処理方法(図3)のS304〜S313と同一なので説明を省略する。
S514では、処理対象クラスタの特徴ベクトルを代表特徴ベクトルとするクラスタを、第Mの階層に新しく定義し、num_cluster[M]を更新する。そして、定義したクラスタの代表特徴ベクトルをP(M−1)jとする。次に、Mが定義した階層数Lより小さい、かつ全ての画素の処理が終わっていないかを判定する(S515)。MがLより小さいかつ全ての画素の処理が終わっていないならば(S515でYES)、第Mの階層から第M+1の階層への階層移動処理を行う(S516)。これは、処理対象となる階層を代えて、S501からの処理を再帰的に行うこととなる。MがL以上、または全ての画素の処理が終わっているならば(S515でNO)、S517の処理へ進む。
S517では、第M−1の階層に属する全てのクラスタに対する処理が終了したかを判定する。具体的には、num_cluster[M−1]<1か否かを判定する。終了していれば(S517でYES)、S518の処理へ進む。第M−1の階層に属する全てのクラスタに対する処理が終了していない場合は(S517でNO)、ループインデクスjを更新し(S521)、S503の処理に戻り、後続するクラスタを処理対象クラスタとして処理を継続する。S518では、cluster_count[M−1]の値を0に更新する。次に、第Mの階層が、定義した階層数Lより小さいか否かを判定する(S519)。MがLより小さければ(S519でYES)、第Mの階層から第M+1の階層への階層移動処理を行う(S520)。これは、処理対象となる階層を代えて、S501からの処理を再帰的に行うこととなる。MがL以上ならば(S519でNO)、第M−1の階層から第Mの階層へのクラスタの階層移動処理を終了する。
<クラスタリング処理結果>
次に、図12に示す画像を用いて本実施形態のクラスタリング処理方法の効果を説明する。図12は、図7(a)の画像に本実施形態のクラスタリング処理方法を適用した際の画素毎の距離計算回数を示すものである。今回の例では条件として、クラスタを第2の階層まで定義し(K=2)、1ライン毎(12画素毎)に階層移動処理を行っている。また、クラスタの階層移動処理の際に、全ての第1の階層に属するクラスタを第2の階層に移動する、としている。本実施形態では、画像データの右端の画素処理時にクラスタの階層移動処理を行うため、右端の画素の距離計算回数が多くなっている。そして、左端の画素は毎回第1の階層に属するクラスタがリセットされた状態から処理が始まるため、距離計算回数は0である。合計の距離計算回数は、図12より544回となり、従来方法に比べて削減できていることがわかる。
なお、本実施形態においては、1ライン毎に画像データの右端の画素を処理する際にクラスタの階層移動処理を行っているが、これに限定するわけではなく、例えば、2ライン毎にクラスタの階層移動処理を適用しても良い。
<その他の実施形態>
また、本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェア(プログラム)を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ(またはCPUやMPU等)がプログラムを読み出して実行する処理である。

Claims (13)

  1. サンプル群をサンプルそれぞれの特徴量に基づいて複数のクラスタに分割するクラスタリング処理方法であって、
    前記複数のクラスタはそれぞれ、M層(M=2,…,K)からなる複数の階層のいずれかに属し、
    前記クラスタリング処理方法は、
    処理対象である前記サンプルの特徴量を第1の階層に属する所定の閾値を超えない数のクラスタそれぞれの代表特徴量と比較した結果に基づいて、当該処理対象であるサンプルを前記第1の階層に属するクラスタに帰属させるサンプル帰属工程と、
    第M−1の階層に属するクラスタを、第Mの階層に帰属させるか否かを判定する判定工程と、
    前記判定工程で前記第M−1の階層に属するクラスタを前記第Mの階層に帰属させると判定した場合、前記第M−1の階層に属するクラスタを、前記第Mの階層に帰属させるクラスタ帰属工程と
    を有し、
    前記サンプルを順番に処理対象として、全ての前記サンプルが最も上位の階層である第Kの階層に属するクラスタのいずれかに帰属するまで、前記サンプル帰属工程と前記判定工程と前記クラスタ帰属工程とを繰り返し実行することを特徴とするクラスタリング処理方法。
  2. 前記サンプル帰属工程は、
    当該処理対象のサンプルの特徴量との距離が最も近い代表特徴量を有するクラスタを、前記第1の階層に属する複数のクラスタの中から探索する第1層クラスタ探索工程と、
    前記第1層クラスタ探索工程にて探索したクラスタと前記処理対象のサンプルとの前記距離が第1の距離の閾値以下の場合は、当該クラスタへ当該サンプルを帰属させ、前記距離が前記第1の距離の閾値より大きい場合は前記第1の階層に新たに定義するクラスタへ当該サンプルを帰属させる第1層クラスタ帰属工程と
    を有することを特徴とする請求項1に記載のクラスタリング処理方法。
  3. 前記クラスタ帰属工程は、
    前記判定工程で前記第M−1の階層に属するクラスタを前記第Mの階層に帰属させると判定した場合、前記第M−1の階層に属する処理対象のクラスタの代表特徴量との距離が最も近い代表特徴量を有するクラスタを、前記第Mの階層に属する複数のクラスタの中から探索する第M層クラスタ探索工程と、
    前記第M層クラスタ探索工程にて探索したクラスタと前記処理対象のクラスタとの前記距離が第Mの距離の閾値以下の場合は、探索した当該第Mの階層に属するクラスタに前記処理対象のクラスタを帰属させ、第Mの距離の閾値より大きい場合は第Mの階層に新たに定義するクラスタへ前記処理対象のクラスタを帰属させる第M層クラスタ帰属工程と
    を有することを特徴とする請求項1または2に記載のクラスタリング処理方法。
  4. 前記判定工程において、前記第M−1の階層に属するクラスタが所定のクラスタ数の閾値を超えた場合に、前記第M−1の階層に属するクラスタを前記第Mの階層に帰属させると判定することを特徴とする請求項1乃至3のいずれか一項に記載のクラスタリング処理方法。
  5. 前記判定工程において、所定のサンプルの数に対して前記第1層クラスタ帰属工程を行った際に前記第1の階層に属するクラスタを第2の階層に帰属させると判定することを特徴とする請求項2または3に記載のクラスタリング処理方法。
  6. 前記判定工程は、前記第M−1の階層に属するクラスタ群に対して上位である前記第Mの階層への前記第M層クラスタ帰属工程を適用した際に、更に、前記第Mの階層に属するクラスタを前記第M+1の階層に帰属させるか否かを判定することを特徴とする請求項3に記載のクラスタリング処理方法。
  7. 前記判定工程において、前記サンプルが帰属される確率が低い第M−1の階層に属するクラスタを第Mの階層に帰属させると判定することを特徴とする請求項1乃至3のいずれか一項に記載のクラスタリング処理方法。
  8. 前記判定工程において、前記サンプルが帰属するクラスタとして出現頻度が低い第M−1の階層に属するクラスタを第Mの階層に帰属させると判定することを特徴とする請求項1乃至3のいずれか一項に記載のクラスタリング処理方法。
  9. 前記判定工程において、新たに定義されてからの経過時間に基づいて、前記第M−1の階層に属するクラスタを第Mの階層に帰属させると判定することを特徴とする請求項1乃至3のいずれか一項に記載のクラスタリング処理方法。
  10. 前記第Mの階層に属するクラスタに対する前記クラスタ数の閾値は、前記第M−1の階層に属するクラスタに対する前記クラスタ数の閾値よりも大きいことを特徴とする請求項4乃至9のいずれか一項に記載のクラスタリング処理方法。
  11. 第M−1の距離の閾値は、前記第Mの距離の閾値よりも小さいことを特徴とする請求項3乃至10のいずれか一項に記載のクラスタリング処理方法。
  12. サンプル群をサンプルそれぞれの特徴量に基づいて複数のクラスタに分割するクラスタリング処理装置であって、
    前記複数のクラスタはそれぞれ、M層(M=2,…,K)からなる複数の階層のいずれかに属し、
    前記クラスタリング処理装置は、
    処理対象である前記サンプルの特徴量を第1の階層に属する所定の閾値を超えない数のクラスタそれぞれの代表特徴量と比較した結果に基づいて、当該処理対象であるサンプルを前記第1の階層に属するクラスタに帰属させるサンプル帰属手段と、
    第M−1の階層に属するクラスタを、第Mの階層に帰属させるか否かを判定する判定手段と、
    前記判定手段で前記第M−1の階層に属するクラスタを前記第Mの階層に帰属させると判定した場合、前記第M−1の階層に属するクラスタを、前記第Mの階層に帰属させるクラスタ帰属手段と
    を有し、
    前記サンプルを順番に処理対象として、全ての前記サンプルが最も上位の階層である第Kの階層に属するクラスタのいずれかに帰属するまで、前記サンプル帰属手段と前記判定手段と前記クラスタ帰属手段とによる処理を繰り返し実行することを特徴とするクラスタリング処理装置。
  13. コンピュータを、
    処理対象であるサンプルの特徴量を、M層(M=2,…,K)からなる複数の階層のいずれかに属するクラスタのうち、第1の階層に属する所定の閾値を超えない数のクラスタそれぞれの代表特徴量と比較した結果に基づいて、当該処理対象であるサンプルを前記第1の階層に属するクラスタに帰属させるサンプル帰属手段、
    第M−1の階層に属するクラスタを、第Mの階層に帰属させるか否かを判定する判定手段、
    前記判定手段で前記第M−1の階層に属するクラスタを前記第Mの階層に帰属させると判定した場合、前記第M−1の階層に属するクラスタを、前記第Mの階層に帰属させるクラスタ帰属手段、
    として機能させ、
    前記サンプルを順番に処理対象として、全ての前記サンプルが最も上位の階層である第Kの階層に属するクラスタのいずれかに帰属するまで、前記サンプル帰属手段と前記判定手段と前記クラスタ帰属手段とによる処理を繰り返し実行させることを特徴とするプログラム。
JP2009181016A 2009-08-03 2009-08-03 クラスタリング処理方法、クラスタリング処理装置、およびプログラム Expired - Fee Related JP5377148B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2009181016A JP5377148B2 (ja) 2009-08-03 2009-08-03 クラスタリング処理方法、クラスタリング処理装置、およびプログラム
US12/825,062 US8218881B2 (en) 2009-08-03 2010-06-28 Clustering processing method, clustering processing apparatus, and non-transitory computer-readable medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2009181016A JP5377148B2 (ja) 2009-08-03 2009-08-03 クラスタリング処理方法、クラスタリング処理装置、およびプログラム

Publications (3)

Publication Number Publication Date
JP2011034410A true JP2011034410A (ja) 2011-02-17
JP2011034410A5 JP2011034410A5 (ja) 2012-09-13
JP5377148B2 JP5377148B2 (ja) 2013-12-25

Family

ID=43527084

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2009181016A Expired - Fee Related JP5377148B2 (ja) 2009-08-03 2009-08-03 クラスタリング処理方法、クラスタリング処理装置、およびプログラム

Country Status (2)

Country Link
US (1) US8218881B2 (ja)
JP (1) JP5377148B2 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2016038751A (ja) * 2014-08-07 2016-03-22 キヤノン株式会社 クラスタリング方法及びデータ処理装置

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5539066B2 (ja) * 2010-06-29 2014-07-02 キヤノン株式会社 クラスタリング処理装置、クラスタリング処理方法
CN104063518B (zh) * 2014-07-14 2017-06-09 南京弘数信息科技有限公司 一种针对大数据的分解组合聚类方法
JP6472279B2 (ja) * 2015-03-09 2019-02-20 キヤノン株式会社 画像処理装置及び画像処理方法
JP6708043B2 (ja) * 2016-07-28 2020-06-10 富士通株式会社 データ検索プログラム、データ検索方法およびデータ検索装置
CN110210476B (zh) * 2019-05-24 2021-04-09 北大方正集团有限公司 字符部件聚类方法、装置、设备及计算机可读存储介质

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH07160879A (ja) * 1993-12-07 1995-06-23 Toppan Printing Co Ltd 画像処理方法
JPH0934862A (ja) * 1995-07-19 1997-02-07 Hitachi Ltd パターン学習方法および装置
JPH11288465A (ja) * 1998-02-06 1999-10-19 Fujitsu Ltd カラー画像処理装置及びパターン抽出装置
JP2003173442A (ja) * 2001-12-06 2003-06-20 Nec Corp 多次元画像をセグメント化する方法およびコンピュータシステム
JP2006344069A (ja) * 2005-06-09 2006-12-21 Canon Inc 画像処理方法及び画像処理装置
JP2007158725A (ja) * 2005-12-05 2007-06-21 Canon Inc 画像処理装置及び画像処理方法並びにプログラム
JP2008206073A (ja) * 2007-02-22 2008-09-04 Canon Inc 画像処理装置、制御方法、プログラム、及び記憶媒体

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003256443A (ja) * 2002-03-05 2003-09-12 Fuji Xerox Co Ltd データ分類装置
US7164797B2 (en) * 2002-04-25 2007-01-16 Microsoft Corporation Clustering
US20060153460A1 (en) * 2005-01-10 2006-07-13 Samsung Electronics Co., Ltd. Method and apparatus for clustering digital photos based on situation and system and method for albuming using the same
US7623712B2 (en) * 2005-06-09 2009-11-24 Canon Kabushiki Kaisha Image processing method and apparatus

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH07160879A (ja) * 1993-12-07 1995-06-23 Toppan Printing Co Ltd 画像処理方法
JPH0934862A (ja) * 1995-07-19 1997-02-07 Hitachi Ltd パターン学習方法および装置
JPH11288465A (ja) * 1998-02-06 1999-10-19 Fujitsu Ltd カラー画像処理装置及びパターン抽出装置
JP2003173442A (ja) * 2001-12-06 2003-06-20 Nec Corp 多次元画像をセグメント化する方法およびコンピュータシステム
JP2006344069A (ja) * 2005-06-09 2006-12-21 Canon Inc 画像処理方法及び画像処理装置
JP2007158725A (ja) * 2005-12-05 2007-06-21 Canon Inc 画像処理装置及び画像処理方法並びにプログラム
JP2008206073A (ja) * 2007-02-22 2008-09-04 Canon Inc 画像処理装置、制御方法、プログラム、及び記憶媒体

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2016038751A (ja) * 2014-08-07 2016-03-22 キヤノン株式会社 クラスタリング方法及びデータ処理装置

Also Published As

Publication number Publication date
JP5377148B2 (ja) 2013-12-25
US8218881B2 (en) 2012-07-10
US20110026841A1 (en) 2011-02-03

Similar Documents

Publication Publication Date Title
JP5377148B2 (ja) クラスタリング処理方法、クラスタリング処理装置、およびプログラム
CN110866896B (zh) 基于k-means与水平集超像素分割的图像显著性目标检测方法
US8488190B2 (en) Image processing apparatus, image processing apparatus control method, and storage medium storing program
US8379990B2 (en) Object recognition apparatus, computer readable medium storing object recognition program, and image retrieval service providing method
JP5276541B2 (ja) 画像処理方法及び画像処理装置及びプログラム
US8290255B2 (en) Image processing method, image processing apparatus, and program
US8175407B2 (en) Image processing method, image processing apparatus, and program for clustering data
US11615515B2 (en) Superpixel merging
JP5539066B2 (ja) クラスタリング処理装置、クラスタリング処理方法
CN107533760A (zh) 一种图像分割方法和装置
Kumar et al. A hybrid cluster technique for improving the efficiency of colour image segmentation
JP4632830B2 (ja) 画像検索方法及び画像検索装置
JP5127738B2 (ja) 画像処理方法および画像処理装置およびプログラム
JP5127739B2 (ja) 画像処理方法および画像処理装置およびプログラム
JP3718967B2 (ja) 画像特徴量抽出装置および方法並びに画像特徴量抽出プログラムを記録した記録媒体
JP6546385B2 (ja) 画像処理装置及びその制御方法、プログラム
CN110766708A (zh) 基于轮廓相似度的图像比较方法
CN114693697A (zh) 图像处理方法、装置、设备及计算机可读存储介质
JP2002185782A (ja) 文字抽出装置、文字抽出方法および記録媒体
JP2011076575A (ja) 画像処理装置、画像処理方法及びプログラム
JP2001043388A (ja) 画像処理方法、画像処理装置及び記憶媒体
JP2005182201A (ja) 画像の対応点探索方法、対応点探索装置および対応点探索プログラム
CN111918137B (zh) 一种基于视频特征的推送方法、装置、存储介质及终端
JP2009122841A (ja) 画像一覧イメージ構築装置、記録媒体及び画像形成装置
JP2004258750A (ja) 画像の特徴ベクトルのクラスタリング方法および装置

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20120727

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20120727

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20130710

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20130726

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20130809

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20130826

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20130902

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20130924

R151 Written notification of patent or utility model registration

Ref document number: 5377148

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151

LAPS Cancellation because of no payment of annual fees