JP6271937B2 - 画像処理方法及び装置、プログラム - Google Patents

画像処理方法及び装置、プログラム Download PDF

Info

Publication number
JP6271937B2
JP6271937B2 JP2013212291A JP2013212291A JP6271937B2 JP 6271937 B2 JP6271937 B2 JP 6271937B2 JP 2013212291 A JP2013212291 A JP 2013212291A JP 2013212291 A JP2013212291 A JP 2013212291A JP 6271937 B2 JP6271937 B2 JP 6271937B2
Authority
JP
Japan
Prior art keywords
distance
calculation
data
partial
representative
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.)
Active
Application number
JP2013212291A
Other languages
English (en)
Other versions
JP2015075963A5 (ja
JP2015075963A (ja
Inventor
ソクイ チン
ソクイ チン
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 JP2013212291A priority Critical patent/JP6271937B2/ja
Priority to US14/508,928 priority patent/US9275466B2/en
Publication of JP2015075963A publication Critical patent/JP2015075963A/ja
Publication of JP2015075963A5 publication Critical patent/JP2015075963A5/ja
Application granted granted Critical
Publication of JP6271937B2 publication Critical patent/JP6271937B2/ja
Active 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/136Segmentation; Edge detection involving thresholding
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/10Segmentation; Edge detection
    • G06T7/11Region-based segmentation

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Image Analysis (AREA)

Description

本発明は、画像の領域分割に関し、特に画像を属性に基づいて領域分割する画像処理方法及び装置、プログラムに関するものである。
画像を色やテクスチャ、座標など属性が同じになるように複数の領域に分割する技術として領域分割手法が用いられる。分割された領域は、分割領域単位で符号化処理、画像処理、画像認識が行えるため、様々な画像処理装置において新しい応用の実現が可能になる。近年、組み込みシステムで画像処理を行うことが多くなったため、組み込みシステム向けの高速化した領域分割手法が注目されている。
従来、画像の領域分割に関して様々な手法が提案されている。画素をクラスタリングすることによって画像を領域に分ける手法としては特許文献1と非特許文献1、2、3などがあげられる。
特許文献1はクラスタリングの高速化のアルゴリズムである。この手法では、最初に処理対象画素を近傍画素の属するクラスタの代表データと比較し、色空間上の距離が近ければ近傍画素の属するクラスタに帰属させる。
非特許文献1は従来の「K−Meansクラスタリング」のためのハードウェアを用い、画像内容に基づいた写真検索システムを実装する手法である。距離計算の高速化を並列度の高いハードウェアで実現する。
非特許文献2は「SLIC」というクラスタリングの高速化のアルゴリズムを用い、スーパーピクセルという小領域を生成する手法である。最近傍代表データの探索範囲が限定されたため、計算量が従来の「K−Meansクラスタリング」より少ない。
非特許文献3は非特許文献2の「SLIC」というアルゴリズムを改良し、GPU実装をする手法である。最近傍代表データの探索範囲を3×3に限定し、高速化を図っている。
特許第5127738号公報
Tse−Wei Chen, et al., "Photo Retrieval based on Spatial Layout with Hardware Acceleration for Mobile Devices," IEEE Transactions on Mobile Computing, vol. 10, no. 11. pp. 1646−1660, Nov. 2011. 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. C. Y. Ren and I. Reid., "gSLIC: a real−time implementation of SLIC superpixel segmentation," Technical Report University of Oxford, Department of Engineering, 2011.
クラスタリングは画像認識及び機械学習における不可欠な技術である。先に述べたように、クラスタリングアルゴリズムは画像の領域分割においてよく使用されている技術である。クラスタリングを行う時、各クラスタの代表データを求め、画素(以下、入力データと表記)を代表データに割り当てることがある。この場合、入力データと複数の代表候補データの距離を計算して最近傍代表データを探索する必要がある。
組み込みシステムにクラスタリングを実装する場合、入力データと代表候補データの距離計算に必要な計算量により、ハードウェアの並列度や回路規模が変わる。回路規模の削減のため、クラスタリングのアルゴリズムの軽量化、又は計算量の削減に関する様々な対策が望まれる。
特許文献1は注目入力データと近傍入力データの属するクラスタを比較し、閾値で計算を打ち切る。非特許文献1は高速化を並列度の高いハードウェアで実現しており、非特許文献2と非特許文献3はアルゴリズムを高速化させる。しかし、上述した先行技術を利用しても、高解像度の画像データに対して高速にクラスタリングを処理する為には、距離計算の計算量が多いという課題がある。
上記課題を解決するために、本発明によれば、画像処理方法に、画像中の注目画素に対し、複数の参照画素の各々との部分距離を計算する第1の計算工程と、前記注目画素に対し、前記複数の参照画素の各々との間で、前記部分距離に基づく総合距離を順次計算する第2の計算工程と、前記第2の計算工程による順次計算において、それまでに計算された総合距離の中から最短の総合距離を判別する判別工程と、前記最短の総合距離に対応する参照画素に基づいて前記注目画素を分類する分類工程とを備え、前記第2の計算工程による順次計算において、計算対象となる参照画素に対する前記部分距離が前記最短の総合距離以上であれば、当該参照画素に対する総合距離の計算を省略することを特徴とする。
本発明によれば、画像のクラスタリングのための計算量が低減でき、処理が高速化できるという効果がある。
第1の実施形態におけるクラスタリングに関するフローチャートである。 第1の実施形態における最近傍代表データの探索範囲の説明図である。 第1の実施形態における代表候補データの距離計算と順番の関係の説明図である。 第1の実施形態におけるデータ処理装置の構成を示すブロック図である。 第2の実施形態における代表候補データの距離計算の順位の説明図である。 第2の実施形態における代表候補データの距離計算と順番の関係の説明図である。 第3の実施形態におけるクラスタリングに関するフローチャートである。 第3の実施形態における代表候補データの距離計算と順番の関係の説明図である。 第4の実施形態におけるクラスタリングに関するフローチャートである。 第4の実施形態における代表候補データの距離計算と順番の関係の説明図である。 他の実施形態における最近傍代表データの探索範囲の説明図である。 他の実施形態における代表候補データの距離計算の順位の説明図である。 他の実施形態における代表候補データの距離計算の順位の説明図である。 他の実施形態における代表候補データの距離計算の順位の説明図である。
以下、添付図面を参照しながら本発明の実施形態を詳細に説明する。
<第1の実施形態>
<領域分割のためのクラスタリング>
図1に本発明のフローチャートを示す。クラスタリングを開始し、画像中の注目部分画像となる第i番目の入力データに対して、式(1)のように五次元のベクトルXを作成する。
Figure 0006271937
i,1,Xi,2は座標空間の二次元特徴量であり、画像の縦方向と横方向の座標値を意味する。Xi,3,Xi,4,Xi,5は色空間の三次元特徴量である。
ステップS101では、代表データを初期化して生成する。具体的には、図2に示した画像201を座標空間上のブロックに分割し、各ブロック203の中に参照部分画像となる1個の代表データ205を配置する。全ての代表データをインデックス化し、ブロックの処理順又は位置順にインデックス値を割り当てることにより、アクセス順番を制御できるようにする。画像201の左側の数字と下側の数字は代表データの縦方向のインデックスと横方向のインデックスであり、網点パターンのブロック204の中の代表データ205の縦方向のインデックスと横方向のインデックスは7と8である。選択した入力データの座標空間と色空間の特徴量のベクトルをその代表データのベクトルとする。第j番目の代表データ205に対して、代表データのベクトルCを式(2)に示す。
Figure 0006271937
i,1,Ci,2は座標空間の二次元特徴量であり、画像の縦方向と横方向の座標値を意味する。Ci,3,Ci,4,Ci,5は色空間の三次元特徴量である。
ステップS102では、最大繰り返し回数を設定し、繰り返し計算のループを開始する。
ステップS103では、入力データのループを開始する。画像の中の入力データXの順番iを制御し、ステップS104からステップS113までの繰り返しで全ての入力データをクラスタリングする。
ステップS104では、最短総合距離の初期化と探索範囲の判定をする。具体的には、最短総合距離を後述する総合距離の最大値に指定し、入力データの座標位置によって代表候補データの探索範囲を判定する。入力データの代表候補データとは、該当入力データを割り当てる(帰属させる)候補となるクラスタの代表データである。
探索範囲202の幅と高さがそれぞれブロック5個の代表データの例について説明する。注目入力データ206が入っているブロックを中心に、最近傍代表データの探索範囲を設定する。この場合、探索範囲は5×5個の座標近傍の代表データである。探索範囲の代表データは縦方向インデックスが5から9までであり、縦方向インデックスが6から10までである。注目入力データ206を含め、ブロック204の範囲に入っている全ての入力データの探索範囲202は同じである。なお、入力データの位置と探索範囲の代表候補データの関係は最初に固定され、繰り返し処理によって代表データの位置が変わっても、代表データのインデックスは変わらない。
ステップS105は、最近傍代表データの探索であり、ステップS106−S112を包括する。その詳細は後程説明する。入力データの最近傍代表データとは、該当入力データとの総合距離が最短な代表データ。即ち、距離空間上一番近い代表データである。
ステップS113では、ステップS105による最近傍代表データの探索結果に基づいて、入力データを上述した最近傍代表データの属するクラスタに帰属させる。すなわち、入力データに最近傍代表データと同一の分類を付与する。
ステップS114では、全ての入力データを処理したかどうかを判定する。成立する場合は、ステップS115に進み、入力データループを終了する。成立しない場合はステップS103に戻り、次の入力データの処理を開始する。
ステップS115では、各代表データに対して、帰属させた入力データのベクトルの平均ベクトルを計算する。その平均ベクトルを該当代表データの新しいベクトルCとし、代表データを更新する。
ステップS116では、最大繰り返し回数を超えるかどうか、又はクラスタリングの結果が収束したかどうかを判定する。最大繰り返し回数を超えるか収束した場合は、繰り返し計算を終了し、そうでない場合はステップS103に戻り、次の繰り返し計算を開始する。クラスタリングを終了すると、結果を出力する。
<色空間上の距離と座標空間上の距離とを独立に扱う距離計算>
ステップS105の詳細であるステップS106−S112を説明する。上述した探索範囲202の中の全ての代表候補データとの距離の計算を開始する。
ステップ106では、代表候補データのループを開始する。代表候補データCの順番jを制御し、色空間上の距離と座標空間上の距離とを独立に扱い、全ての代表候補データを探索する。
ステップS107では、座標空間で第i番目の入力データと第j番目の代表候補データのユークリッド距離D(第一の部分距離)を式(3)で算出する第1の計算を行う。
Figure 0006271937
ステップS108では、上述した第一の部分距離が最短の総合距離以上かどうかを判定する。最短の総合距離以上の場合は、ステップS109−S111を省略し、ステップS112に進む。最短の総合距離未満の場合は、ステップS109に進む。
ステップS109では、色空間で第i番目の入力データと第j番目の代表候補データのユークリッド距離D(第二の部分距離)を式(4)で算出する。
Figure 0006271937
上述のように距離Dと距離Dを順次計算し、第一の部分距離と第二の部分距離の線形結合である距離D(総合距離)を式(5)で計算する第2の計算を行う。
Figure 0006271937
Wは第一の部分距離の重みである。ステップS110では、上述した総合距離が最短総合距離以上かどうかを判定する。最短の総合距離以上の場合は、ステップS111を省略し、ステップS112に進む。最短の総合距離未満の場合は、ステップS111に進む。
ステップS111では、最短総合距離を新たに算出した総合距離で更新し、最近傍代表データのベクトルをCに変える。
ステップS112では、全ての代表候補データとの比較が終了したかどうかを判定する。比較が終了した場合は、代表データの探索を終了し、比較が終了していない場合はステップS106に戻り、次の代表候補データとの距離計算を開始する。
<最近傍代表データの探索の例>
図3に、本実施形態における最近傍代表データの探索の例を示す。網点パターン301は計算済み距離を意味し、斜線パターン302は未計算の座標空間上の距離(第一の部分距離)を意味する。黒塗パターン303は最短総合距離を意味し、白塗パターン304は未計算の色空間上の距離(第二の部分距離)を意味する。
探索範囲305−310は幅と高さがそれぞれ5個の代表データの例である。プロット311−316は代表候補データの距離計算の順番と総合距離の関係図である。
探索範囲305とプロット311は探索が始まる前の状態である。探索範囲306の上から1行目の5個の代表候補データの探索が終わった時点の状態をプロット312に示す。1番目から5番目までの5個の代表候補データと入力データの総合距離を計算し、最短総合距離が3番目の代表候補データとの距離となっている。
探索範囲307の上から2行目の5個の代表候補データの探索が終わった時点の状態をプロット313に示す。6番目から10番目までの5個の代表候補データと入力データの総合距離を計算し、最短総合距離が7番目の代表候補データとの距離となっている。
探索範囲308の上から3行目の5個の代表候補データの探索が終わった時点の状態をプロット314に示す。11番目から13番目までの3個の代表候補データと入力データの総合距離を計算し、最短総合距離が12番目の代表候補データとの距離となっている。14番目と15番目の代表候補データと入力データの第一の部分距離が最短総合距離を超えるので、第二の部分距離を計算する必要がない。
探索範囲309の上から4行目の5個の代表候補データの探索が終わった時点の状態をプロット315に示す。この5個の代表候補データと入力データは第一の部分距離が最短総合距離を超えるので、第二の部分距離を計算する必要がない。最短総合距離は依然として12番目の代表候補データとの距離であり、更新される必要がない。
探索範囲310の上から5行目の5個の代表候補データの探索が終わった時点の状態をプロット316に示す。この5個の代表候補データと入力データは第一の部分距離が最短総合距離を超えるので、第二の部分距離を計算する必要がない。最短総合距離は依然として12番目の代表候補データとの距離であり、更新される必要がない。全ての探索を終了し、最近傍代表データが12番目の代表候補データであり、最短総合距離はその代表データとの距離である。
以上説明したように、色空間上の距離と座標空間上の距離を独立に扱うことにより、不要な計算を省くことができるので、処理が高速化する。
<データ処理装置の構成例>
図4は、本発明による画像処理方法を実現可能なデータ処理装置の一構成例を示すブロック図である。
データ保存部402は、画像データを保持する部分であり、通常はハードディスク、フレキシブルディスク、CD−ROM、CD−RやDVD等で構成される。あるいは、メモリーカード、CFカード、スマートメディア、SDカード、メモリスティック、xDピクチャーカード、USBメモリ等で構成してもよい。データ保存部402には画像データの他にも、プログラムやその他のデータを保存することも可能である。あるいは、後述するRAM407の一部をデータ保存部402として用いるのであっても良い。またあるいは、後述する通信部403により接続した先の機器の記憶装置を、通信部403を介して利用するというように仮想的に構成するのであっても良い。
表示部404は、画像処理前、画像処理後の画像を表示、あるいはGUI等の画像を表示する装置で、一般的にはCRTや液晶ディスプレイなどが用いられる。あるいは、ケーブル等で接続された装置外部のディスプレイ装置であっても構わない。
入力部401は、ユーザーからの指示や、データを入力する装置で、キーボードやポインティング装置を含む。なお、ポインティング装置としては、マウス、トラックボール、トラックパッド、タブレット等が挙げられる。あるいは、本データ処理装置を例えば公知のデジタルカメラ装置やプリンタなどの機器に適用する場合には、ボタンやダイヤル等で構成されるのであっても良い。また、キーボードをソフトウェアで構成(ソフトウェアキーボード)し、ボタンやダイヤル、あるいは先に挙げたポインティングデバイスを操作して文字を入力するように構成するのであっても良い。
また、あるいは公知のタッチスクリーン装置のように、表示部404と入力部401が同一装置であっても良い。その場合、タッチスクリーンによる入力を入力部401の入力として扱う。
CPU405は本実施形態に係る主要な処理(ステップS101−S116)を実行すると共に本装置全体の動作を制御する。ROM406とRAM407は、その処理に必要なプログラム、データ、作業領域などをCPU405に提供する。後述する処理に必要なプログラムがデータ保存部402に格納されている場合や、ROM406に格納されている場合には、一旦RAM407に読み込まれてから実行される。またあるいは通信部403を経由して装置がプログラムを受信する場合には、一旦データ保存部402に記録した後にRAM407に読み込まれるか、直接通信部403からRAM407に直接読み込まれてから実行される。
CPU405で、RAM407に書き込まれた画像データを読み出して本発明に係るクラスタリングを実行し、その処理結果を再びRAM407に書き込む。クラスタリングの結果に基づき、画像認識をCPU405で行う。CPU405により処理された画像認識の結果は、RAM407に保存されるか、通信部403を介して外部装置に送信される。
なお、図4においては、CPUが1つ(CPU405)だけである構成だが、これを複数設けるような構成にしても良い。
通信部403は、機器間の通信を行うためのI/Fである。これは例えば、公知のローカルエリアネットワーク、USB、IEEE1284、IEEE1394、電話回線などの有線による通信方式であっても良い。あるいは赤外線(IrDA)、IEEE802.11a、IEEE802.11b、IEEE802.11g、IEEE802.11n、Bluetooth(登録商標)、UWB(Ultra wide Band)等の無線通信方式であっても良い。
なお、図4では入力部401、データ保存部402、表示部404が全て1つの装置内に含まれるような図を示しているが、あるいはこれらの部分が公知の通信方式による通信路で接続されており、全体としてこのような構成となっているのであっても構わない。
システム構成については、上記以外にも様々な構成要素が存在するが、本発明の主眼ではないのでその説明は省略する。
<本実施形態の変型>
上記実施形態では、入力データの特徴量が式(1)で表されるXi,1,Xi,2という一枚の画像の座標空間の二次元特徴量について説明した。しかしながら、入力データの特徴量は、一枚の画像の座標空間の二次元特徴量に限定される訳でなく、座標空間と複数枚の画像を処理する時の時系列空間の任意の次元の特徴量でも良い。
入力データの特徴量は式(1)で表されるXi,3,Xi,4,Xi,5という色空間の三次元特徴量について説明したが、色空間に限定される訳でなく、テクスチャ空間やテクスチャと色の複合空間の特徴量であっても良い。また、特徴量は三次元に限定される訳でなく、任意の次元の特徴量であっても良い。
探索範囲202は幅と高さがそれぞれ5個の代表データの例について説明したが、探索範囲の幅は5個の代表データに限定される訳でなく、任意の探索範囲であっても良い。
式(3)と式(4)は座標空間と色等特徴空間でのユークリッド距離について説明したが、ユークリッド距離に限定される訳でなく、任意の距離尺度であっても良い。
<第2の実施形態>
第2の実施形態では、第1の実施形態と異なる部分のみを説明する。
第1の実施形態では最近傍代表データの探索を行う時に、代表候補データの距離計算の順番を考慮していなかったが、第2の実施形態では代表候補データとの距離計算の順番に順位を付ける。代表候補データの距離計算の順番の順位は、各ブロックの中心の座標と探索範囲の中心の座標のマックス距離順に付けた。各代表候補データは、マックス距離が小さければ小さいほど計算対象となる順位が高い。
マックス距離Dは式(6)で計算する。
Figure 0006271937
i,1,Si,2は、第i番目の探索範囲の中心Sの座標空間の二次元特徴量であり、Bj,1,Bj,2は第j番目ブロックの中心Bの座標空間の二次元特徴量である。なお、代表データCとの距離計算の順番の順位をブロックBによって決定する。ブロックの中心Bは代表データCと違い、繰り返し計算によって座標が変わることがない。
図5に示した代表候補データの距離計算の順番の順位501は探索範囲202に対応する。ブロックの中の数字は探索時の代表候補データの距離計算の順番の順位を意味する。数字が小さければ小さいほど順位が高い。順位が1の代表候補データから探索を開始し、次は順位が2の代表候補データの何れから探索する。全ての順位が2の代表候補データの探索を終えると、順位が3の代表候補データの何れから探索する。
本実施形態は、実施形態1とステップS106−S112における距離計算の順番が異なる。
<スパイラルな最近傍代表データの探索の例>
図6に、本実施形態における最近傍代表データの探索の例を示す。網点パターン601は計算済み距離を意味し、斜線パターン602は未計算の座標空間上の距離(第一の部分距離)を意味する。黒塗パターン603は最短総合距離を意味し、白塗パターン604は未計算の色空間上の距離(第二の部分距離)を意味する。
探索範囲605−607は幅と高さがそれぞれ5個の代表データの例である。プロット608−610は代表候補データの距離計算の順番と総合距離の関係図である。
探索範囲605とプロット608は探索が始まる前の状態である。順位501が1となる1個代表候補データを探索した後、順位501が2となる8個の代表候補データを探索する。探索範囲606で探索した代表データに線を引き、代表候補データの探索が終わった時点の状態をプロット609に示す。1番目から4番目までの4個の代表候補データと入力データの総合距離を計算し、最短総合距離が4番目の代表候補データとの距離となっている。5番目から9番目までの代表候補データと入力データの第一の部分距離が最短総合距離を超えるので、第二の部分距離を計算する必要がない。
順位501が3となる残りの16個の代表候補データを探索する。探索範囲607で探索した代表データに線を引き、代表候補データの探索が終わった時点の状態をプロット610に示す。この16個の代表候補データと入力データは第一の部分距離が最短総合距離を超えるので、第二の部分距離を計算する必要がない。最短総合距離は依然として4番目の代表候補データとの距離であり、更新される必要がない。
以上の説明のように、代表候補データの距離計算の順番に順位を付けることにより、スパイラルな最近傍代表データの探索が行われる。図4と比べて早く最近傍代表データを見つけることができるので、第二の部分距離の計算回数が減り、処理が高速化する。
<第3の実施形態>
第3の実施形態では、第1の実施形態と異なる部分のみを説明する。
図7に第3の実施形態におけるフローチャートを示す。ステップS701では、ステップS107で算出した第一の部分距離が最短総合距離以上かどうかを判定する。最短総合距離以上である場合は、ステップS109−S111を省略し、ステップS702に進む。最短総合距離未満の場合は、ステップS109に進む。
ステップS702では、ステップS701で算出した第一の部分距離が閾値を越えるかどうかを判定する。閾値を越える場合は、これ以降、残りの代表データを対象とする処理を省略し、最近傍代表データの探索を終了する。閾値以下の場合はステップS112に進む。
<スパイラルな最近傍代表データの探索で距離計算を打ち切る例>
図8に本実施形態における代表データの探索の例を示す。網点パターン801は計算済み距離を意味し、斜線パターン802は未計算の座標空間上の距離(第一の部分距離)を意味する。黒塗パター803は最短総合距離を意味し、白塗パターン804は未計算の色空間上の距離(第二の部分距離)を意味する。
探索範囲805−806は幅と高さがそれぞれ5個の代表データの例である。プロット807−808は代表候補データの距離計算の順番と総合距離の関係図である。
探索範囲805とプロット807は探索が始まる前の状態である。順位501が1となる1個の代表候補データを探索した後、順位501が2となる4個の代表候補データを探索する。探索範囲806で探索した代表データに線を引き、代表候補データの探索が終わった時点の状態をプロット808に示す。1番目から4番目までの4個の代表候補データと入力データの総合距離を計算し、最短総合距離が4番目の代表候補データとの距離となっている。ここで、5番目の代表候補データと入力データとの第一の部分距離が最短総合距離以上であり、閾値を超えたとすると、第二の部分距離を計算する必要がない。さらに残りの20個の代表候補データを探索する必要もない。
以上の説明のように、第一の部分距離が十分大きい時、閾値で距離計算を打ち切ることにより、処理が高速化する。
なお、ステップS702の閾値は固定値に限定される訳でなく、動的に変更しても良い。動的な変更の例として、最短総合距離と比率している閾値Tを式7で算出する。
Figure 0006271937
は第i番目の入力データのベクトルであり、Cは第m番目の代表候補データのベクトルである。Fは予め定められた最短総合距離に対する重みである。
<第4の実施形態>
第4の実施形態では、第1の実施形態と異なる部分のみを説明する。
図9に第4の実施形態におけるフローチャートを示す。ステップS901では、最短総合距離をS109で算出した総合距離に更新し、最近傍代表データのベクトルをCに変える。
ステップS902では、更新した最短総合距離が閾値以下かどうかを判定する。閾値を超える場合はステップS112に進む。閾値以下である場合は、最近傍候補データの探索を終了する。
<スパイラルな最近傍候補データの探索で距離計算を打ち切る例>
図10に本実施形態における最近傍候補データの探索の例を示す。網点パターン1001は計算済み距離を意味し、斜線パターン1002は未計算の座標空間上の距離(第一の部分距離)を意味する。黒塗パター1003は最短総合距離を意味し、白塗パターン1004は未計算の色空間上の距離(第二の部分距離)を意味する。
探索範囲1005−1006は幅と高さがそれぞれ5個の代表データの例である。プロット1007−1008は代表候補データの距離計算の順番と総合距離の関係図である。
探索範囲1005とプロット1007は探索が始まる前の状態である。順位501が1となる1個の代表候補データを探索した後、順位501が2となる3個の代表候補データを探索する。探索範囲1006で探索した代表データに線を引き、代表候補データの探索が終わった時点の状態をプロット1008に示す。1番目から4番目までの4個の代表候補データと入力データの総合距離を計算し、4番目の代表候補データとの距離が最短総合距離となっている。ここで最短総合距離が閾値以下であるとすると、残りの21個の代表候補データを探索する必要がない。
以上の説明のように、総合距離が十分小さい時、閾値で距離計算を打ち切ることにより、処理が高速化する。
なお、ステップS902の閾値は固定値に限定される訳でなく、動的に変更しても良い。また、代表候補データの距離計算の順番は第2の実施形態で説明した順位を付けても良い。
<他の実施形態>
<探索範囲の幅と高さがそれぞれ偶数個の代表データの実施形態1>
実施形態1では、探索範囲の幅と高さがそれぞれ奇数個の代表データである例について説明したが、奇数個の代表データに限定される訳でなく、探索範囲の幅と高さがそれぞれ偶数個の代表データの場合にも同様に適用可能である。
探索範囲の幅と高さがそれぞれ偶数個の代表データの実施形態を図11に示した。実施形態1で説明したように、図11に示した画像1101を座標空間上のブロックに分割し、各ブロック1103の中に1個の代表データ1105を配置する。全ての代表データをインデックス化し、ブロックの処理順又は位置順にインデックス値を割り当てることにより、アクセス順番を制御できるようにする。画像1101の左側の数字と下側の数字は代表データの縦方向のインデックスと横方向のインデックスである。選択した入力データの座標空間と色空間の特徴量のベクトルをその代表データのベクトルとする。
注目入力データ1106に一番近いブロックの角を中心に、代表候補データの探索範囲1102を設定する。探索範囲の代表データは縦方向インデックスが3から10までであり、縦方向インデックスが5から12までである。注目入力データ1106を含め、矩形1104の範囲に入っている全ての入力データに対して、探索範囲1102が同じである。
探索範囲1102は幅と高さがそれぞれ8個の代表データの例について説明したが、探索範囲の幅は8個の代表データに限定される訳でなく、任意の探索範囲であっても良い。
<探索範囲の幅と高さがそれぞれ偶数個の代表データの実施形態2−4>
実施形態2−4では、探索範囲の幅と高さがそれぞれ奇数個の代表データである例について説明したが、奇数個の代表データに限定される訳でなく、探索範囲の幅と高さがそれぞれ偶数個の代表データの場合にも同様に適用可能である。
図12に示した代表候補データの距離計算の順番の順位1201は探索範囲1102に対応する。ブロックの中の数字は探索時の代表候補データの順位を意味する。数字が小さければ小さいほど順位が高い。順位が1の代表候補データから探索を開始し、次は順位が2の代表候補データの何れから探索する。全ての順位が2の代表候補データの探索を終えると、順位が3の代表候補データの何れから探索する。全ての順位が3の代表候補データの探索を終えると、順位が4の代表候補データの何れから探索する。
探索範囲1102は幅と高さがそれぞれ8個の代表データの例について説明したが、探索範囲の幅は8個の代表データに限定される訳でなく、任意の探索範囲であっても良い。
<マンハッタン距離順による距離計算の順番の順位の実施形態2−4>
実施形態2−4では、マックス距離順による距離計算の順番の順位付けの例について説明したが、マックス距離順に限定される訳でなく、マンハッタン距離順に距離計算の順番の順位付けも同様に適用可能である。
図13に代表候補データの距離計算の順番の順位を示す。順位1301は探索範囲の幅と高さがそれぞれ奇数個の代表データの例であり、順位1302は探索範囲の幅と高さがそれぞれ偶数個の代表データの例である。代表候補データの距離計算の順番の順位は、各ブロックの座標中心と探索範囲の座標中心のマンハッタン距離順に付けた。マンハッタン距離が小さければ小さいほど順位が高い。
マンハッタン距離Dは式(8)で計算する。
Figure 0006271937
i,1,Si,2は第i番目の探索範囲の中心Sの座標空間の二次元特徴量であり、Bj,1,Bj,2は第j番目ブロックの中心Bの座標空間の二次元特徴量である。なお、代表データCとの距離計算の順番の順位をブロックBによって決定する。ブロックの中心Bは代表データCと違い、繰り返し計算によって座標が変わることがない。
探索範囲1301と1302は幅と高さがそれぞれ9個の代表データと8個の代表データの例について説明したが、任意の探索範囲であっても良い。
<任意の距離順による距離計算の順番の順位の実施形態2−4>
上述した実施形態と実施形態2では、マックスとマックス距離順に距離計算の順番の順位付けの例について説明したが、マックスとマックス距離順に限定される訳でなく、ユークリッドの距離順による距離計算の順番の順位付けも同様に適用可能である。
図14に代表候補データの距離計算の順番の順位を示す。順位1401は探索範囲の幅と高さがそれぞれ奇数個の代表データの例であり、順位1402は探索範囲の幅と高さがそれぞれ偶数個の代表データの例である。代表候補データの距離計算の順番の順位は、各ブロックの座標中心と探索範囲の座標中心のユークリッド距離順に付けた。ユークリッド距離が小さければ小さいほど順位が高い。
ユークリッド距離Dは式(9)で計算する。
Figure 0006271937
i,1,Si,2は第i番目の探索範囲の中心Sの座標空間の二次元特徴量であり、Bj,1,Bj,2は第j番目ブロックの中心Bの座標空間の二次元特徴量である。なお、代表データCとの距離計算の順番の順位をブロックBによって決定する。ブロックの中心Bは代表データCと違い、繰り返し計算によって座標が変わることがない。
探索範囲1401と1402は幅と高さがそれぞれ9個の代表データと8個の代表データの例について説明したが、任意の探索範囲であっても良い。
ユークリッド距離順による距離計算の順番の順位付けの例について説明したが、ユークリッド距離順に限定される訳でなく、任意の距離順による距離計算の順番の順位付けも同様に適用可能である。
<第一の部分距離が座標空間上の距離以外の実施形態1−4>
実施形態1−4では、第一の部分距離が座標空間上の距離の例について説明したが、座標空間に限定される訳でない。第一の部分距離は、座標空間上の距離以外の距離(色空間上の距離、テクスチャ空間上の距離、複数の画像の時系列空間上の距離等)であっても良い。
<第一の部分距離が一部の距離の実施形態1−4>
実施形態1−4では、第一の部分距離が座標空間上の距離の例について説明したが、座標空間に限定される訳でなく、第一の部分距離が一部の座標空間上の距離、又は一部の座標以外の距離であっても良い。
<任意の空間上のブロック分割の実施形態1−4>
実施形態1−4では、入力データを座標空間上のブロックに分割する例について説明したが、座標空間に限定される訳でなく、入力データを任意の距離空間上のブロックに分割しても良い。
以上説明した各実施形態によれば、組み込みシステムで実施する場合は、計算量が低減すると共に、代表データを格納するメモリへのアクセス帯域が低減する。特定用途向け集積回路を設計する場合は、クラスタリングの高速化と回路規模の縮小と消費電力の低減も可能になるという効果がある。
<その他の実施形態>
以上、実施形態を詳述したが、本発明は、例えば、システム、装置、方法、コンピュータ読み取り可能なプログラムもしくは記憶媒体等としての実施態様をとることが可能である。具体的には、複数の機器から構成されるシステムに適用しても良いし、また、一つの機器からなる装置に適用しても良い。
更に、本発明は、ソフトウェアのプログラムをシステム或いは装置に直接或いは遠隔から供給し、そのシステム或いは装置のコンピュータが該供給されたプログラムコードを読み出して実行することによって前述した実施形態の機能が達成される場合を含む。この場合、供給されるプログラムは実施形態で図に示したフローチャートに対応したコンピュータプログラムである。
また、コンピュータが、読み出したプログラムを実行することによって、前述した実施形態の機能が実現される他、そのプログラムの指示に基づき、コンピュータ上で稼動しているOSなどとの協働で実施形態の機能が実現されてもよい。この場合、OSなどが、実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される。

Claims (13)

  1. 画像中の注目画素に対し、複数の参照画素の各々との部分距離を計算する第1の計算工程と、
    前記注目画素に対し、前記複数の参照画素の各々との間で、前記部分距離に基づく総合距離を順次計算する第2の計算工程と、
    前記第2の計算工程による順次計算において、それまでに計算された総合距離の中から最短の総合距離を判別する判別工程と、
    前記最短の総合距離に対応する参照画素に基づいて前記注目画素を分類する分類工程とを備え、
    前記第2の計算工程による順次計算において、計算対象となる参照画素に対する前記部分距離が前記最短の総合距離以上であれば、当該参照画素に対する総合距離の計算を省略することを特徴とする画像処理方法。
  2. 前記第2の計算工程による順次計算において、計算対象となる参照部分画像に対する前記部分距離が閾値を越える場合、残りの参照部分画像に対する総合距離の計算を省略することを特徴とする請求項1に記載の画像処理方法。
  3. 前記閾値を最短の総合距離に基づいて設定することを特徴とする請求項2に記載の画像処理方法。
  4. 前記複数の参照画素を前記部分距離の短い順に順位を付け、前記第2の計算工程において、当該順位に従って前記総合距離を計算することを特徴とする請求項1乃至3のいずれか1項に記載の画像処理方法。
  5. 前記部分距離が座標空間上の距離を含むことを特徴とする請求項1乃至4のいずれか1項に記載の画像処理方法。
  6. 前記総合距離は、前記部分距離を含む複数の部分距離に基づくことを特徴とする請求項1乃至5のいずれか1項に記載の画像処理方法。
  7. 前記総合距離は、前記複数の部分距離の線形結合であることを特徴とする請求項6に記載の画像処理方法。
  8. 前記複数の部分距離が、座標空間上の距離と、複数の画像の時系列空間上の距離、色空間上の距離、テクスチャ空間上の距離の何れかを含むことを特徴する請求項1乃至7のいずれか1項に記載の画像処理方法。
  9. 前記画像が距離空間上の複数のブロックに分割され、各ブロックの中に1個の参照画素が配置されており、前記第1の計算工程では、各ブロックにインデックス値を割り当て、該インデックス値に基づいて前記部分距離を計算することを特徴する請求項1乃至8のいずれか1項に記載の画像処理方法。
  10. 前記第1の計算工程では、前記参照画素に対応するブロックの位置と前記注目画素を含むブロックの位置とに基づいて前記部分距離の計算の順番を決定することを特徴とする請求項9に記載の画像処理方法。
  11. 前記第2の計算工程による順次計算において、前記最短の総合距離が閾値以下となった場合、残りの参照画素に対する総合距離の計算を省略することを特徴とする請求項1乃至10のいずれか1項に記載の画像処理方法。
  12. 画像中の注目画素に対し、複数の参照画素の各々との部分距離を計算する第1の計算手段と、
    前記注目画素に対し、前記複数の参照画素の各々との間で、前記部分距離に基づく総合距離を順次計算する第2の計算手段と、
    前記第2の計算手段による順次計算において、それまでに計算された総合距離の中から最短の総合距離を判別する判別手段と、
    前記最短の総合距離に対応する参照画素に基づいて前記注目画素を分類する分類手段とを備え、
    前記第2の計算手段による順次計算において、計算対象となる参照画素に対する前記部分距離が前記最短の総合距離以上であれば、当該参照画素に対する総合距離の計算を省略することを特徴とする画像処理装置。
  13. 請求項1乃至11のいずれか1項に記載の画像処理方法をコンピュータに実行させることを特徴とするコンピュータ読み取り可能なプログラム。
JP2013212291A 2013-10-09 2013-10-09 画像処理方法及び装置、プログラム Active JP6271937B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2013212291A JP6271937B2 (ja) 2013-10-09 2013-10-09 画像処理方法及び装置、プログラム
US14/508,928 US9275466B2 (en) 2013-10-09 2014-10-07 Image processing method and image processing apparatus for segmenting image into regions

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2013212291A JP6271937B2 (ja) 2013-10-09 2013-10-09 画像処理方法及び装置、プログラム

Publications (3)

Publication Number Publication Date
JP2015075963A JP2015075963A (ja) 2015-04-20
JP2015075963A5 JP2015075963A5 (ja) 2016-11-24
JP6271937B2 true JP6271937B2 (ja) 2018-01-31

Family

ID=52777004

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2013212291A Active JP6271937B2 (ja) 2013-10-09 2013-10-09 画像処理方法及び装置、プログラム

Country Status (2)

Country Link
US (1) US9275466B2 (ja)
JP (1) JP6271937B2 (ja)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6463101B2 (ja) * 2014-12-01 2019-01-30 キヤノン株式会社 領域分割装置及び方法
JP6472279B2 (ja) * 2015-03-09 2019-02-20 キヤノン株式会社 画像処理装置及び画像処理方法
KR101671215B1 (ko) * 2015-05-27 2016-11-01 한국기술교육대학교 산학협력단 초기 후보군 제외방식을 이용한 고속 영상분할 방법
US10565712B2 (en) * 2016-06-21 2020-02-18 Canon Kabushiki Kaisha Image processing apparatus and method for controlling the same
CN106778753B (zh) * 2016-11-11 2021-02-05 安凯 一种数字图像单连通区域的涂色方法
JP2020170252A (ja) * 2019-04-01 2020-10-15 キヤノン株式会社 画像処理装置、情報処理方法及びプログラム
CN110110795B (zh) * 2019-05-10 2021-04-20 厦门美图之家科技有限公司 图像分类方法及装置

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5751450A (en) * 1996-05-22 1998-05-12 Medar, Inc. Method and system for measuring color difference
JP3624069B2 (ja) * 1997-02-19 2005-02-23 キヤノン株式会社 画像処理方法及び画像処理装置
JP3611006B2 (ja) * 1997-06-19 2005-01-19 富士ゼロックス株式会社 画像領域分割方法および画像領域分割装置
US8068700B2 (en) * 2007-05-28 2011-11-29 Sanyo Electric Co., Ltd. Image processing apparatus, image processing method, and electronic appliance
US8290255B2 (en) * 2009-02-06 2012-10-16 Canon Kabushiki Kaisha Image processing method, image processing apparatus, and program
JP5127738B2 (ja) 2009-02-06 2013-01-23 キヤノン株式会社 画像処理方法および画像処理装置およびプログラム

Also Published As

Publication number Publication date
US20150098652A1 (en) 2015-04-09
US9275466B2 (en) 2016-03-01
JP2015075963A (ja) 2015-04-20

Similar Documents

Publication Publication Date Title
JP6271937B2 (ja) 画像処理方法及び装置、プログラム
JP5340088B2 (ja) 情報処理方法及び装置
EP2216749B1 (en) Image classification device and image classification program
CN108959379B (zh) 一种基于视觉显著区域和手绘草图的服装图像检索方法
KR20110074453A (ko) 정보처리장치 및 정보처리방법
US10026148B2 (en) Image recognition method, image recognition device and image recognition program
US20210248729A1 (en) Superpixel merging
Wang et al. Adaptive nonlocal random walks for image superpixel segmentation
JP2000311246A (ja) 類似画像表示方法及び類似画像表示処理プログラムを格納した記録媒体
JP2021523440A (ja) オプティカルフロー計算方法及びコンピューティング機器
CN103995864B (zh) 一种图像检索方法和装置
JP5935501B2 (ja) プログラム、画像処理装置及び画像処理方法
CN107810520A (zh) 图像处理装置和方法
JP2011258036A (ja) 3次元形状検索装置、3次元形状検索方法、及びプログラム
CN106056575B (zh) 一种基于似物性推荐算法的图像匹配方法
JP2016045600A (ja) 画像処理装置および画像処理方法
JP5894492B2 (ja) 画像処理装置、画像検索装置及びプログラム
Melo et al. Hierarchical density-based clustering based on GPU accelerated data indexing strategy
JP2005208740A (ja) 部分画像検索装置及び部分画像検索プログラム
JP6546385B2 (ja) 画像処理装置及びその制御方法、プログラム
JP6573368B2 (ja) 画像処理装置、画像処理方法及びプログラム
JP6445738B2 (ja) 類似画像検索方法およびシステム
JP7118295B1 (ja) 画像処理装置、プログラム及び画像処理方法
CN113052242A (zh) 图像处理网络的训练方法及装置、图像处理方法及装置
Tasli et al. Super pixel extraction via convexity induced boundary adaptation

Legal Events

Date Code Title Description
A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20161007

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20161007

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20170818

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20170919

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20171116

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: 20171205

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20171228

R151 Written notification of patent or utility model registration

Ref document number: 6271937

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151