(57)【要約】【課題】  ラベリング時に、高速な処理を可能とし、必要メモリ量を低減すること。【解決手段】  ラベル付け部１１４は、選定された現時点注目セル（現時点におけるラベリング対象セル）にラベル保持部１１５が保持しているラベルを付ける。このとき、ラベル付け部１１４は、先時点隣接注目セル（現時点以前にラベリング対象であったセルであって、現時点注目セルと隣接するセル）がある場合には、当該先時点隣接注目セルに付けられたラベル（先ラベル）と同じラベル番号を当該現時点注目セルに付ける。また、ラベル付け部１１４は、先ラベルが複数の場合に、該複数の先ラベルのうち所定の順序上で最も先立つラベルを現時点注目セルに付ける。更に、ラベル付け部１１４は、該最も先立つラベルを先時点隣接注目セルに付けなおす。【選択図】図１
2008097529.tif 000002
【特許請求の範囲】
【請求項１】
撮像装置が撮像した画像フレームを入力し、前記画像フレームを構成する要素毎にラベルを付ける画像処理装置であって、
所定の順序を有する複数のラベルを保持するラベル保持手段と、
前記撮像装置が撮像した画像フレームを入力する入力手段と、
前記入力手段が入力した画像フレーム内の各要素を順番に指定することにより、ラベル付けの対象となる注目要素を選定する注目要素選定手段と、
前記注目要素選定手段が選定した注目要素に前記ラベル保持手段が保持しているラベルを付けるラベル付け手段と、
を備え、
前記ラベル付け手段は、
前記注目要素選定手段が現時点における注目要素を選定する前に選定され、且つ前記現時点における注目要素と前記画像フレーム上で隣接する他の注目要素がある場合には、前記他の注目要素に付けられたラベルである先ラベルを前記現時点における注目要素に付け、
前記先ラベルが複数の場合には、前記現時点における注目要素に該複数の先ラベルのうち前記順序上で最も先立つラベルを付け、前記他の注目要素に該複数の先ラベルのうち前記順序上で最も先立つラベルを付けなおすことを特徴とする画像処理装置。
【請求項２】
前記ラベル付け手段が前記複数の先ラベルのうち前記順序上で最も先立つラベルを前記他の注目要素に付けなおす際に、該他の注目要素に既に付けられていたラベルを再利用ラベルとして保持する再利用ラベル保持手段を更に備え、
前記ラベル付け手段は、前記注目要素選定手段が選定した注目要素にラベルを付ける際に、前記再利用ラベル保持手段が保持している再利用ラベルを付けることを特徴とする請求項１記載の画像処理装置。
【請求項３】
前記画像フレームを構成する各要素は複数の画素からなり、
前記注目要素選定手段は、
一定の判断基準を超える画素を所定の個数以上有している要素をラベル付けの対象となる注目要素として選定することを特徴とする請求項１又は請求項２記載の画像処理装置。
【請求項４】
前記判断基準は、画素の輝度であることを特徴とする請求項３記載の画像処理装置。
【請求項５】
前記入力手段が入力した一つの画像フレームを複数の前記要素からなる複数のブロックに分けるブロック分け手段を更に備え、
前記注目要素選定手段は、ラベル付けの対象となる注目要素を選定する処理を前記複数のブロックにおいて並列的に行い、
前記ラベル付け手段は、前記注目要素選定手段が選定した注目要素にラベルを付ける処理を前記複数のブロックにおいて並列的に行うことを特徴とする請求項１〜４の何れか１項に記載の画像処理装置。
【請求項６】
同じラベルが付けられた一つ以上の要素の群における重心位置を算出する重心位置算出手段と、
任意のブロックにおける要素群の重心位置と、他のブロックにおける要素群の重心位置との間の距離を計算する距離計算手段と、
前記距離計算手段が計算した距離値が所定の閾値以下である場合に、前記任意のブロックにおける前記要素群と、前記他のブロックにおける前記要素群とに、同じラベルを付けなおす統合手段と、
を更に備えることを特徴とする請求項５記載の画像処理装置。
【請求項７】
撮像装置が撮像した画像フレームを入力し、前記画像フレームを構成する要素毎にラベルを付ける画像処理方法であって、
入力手段が、前記撮像装置が撮像した画像フレームを入力する入力ステップと、
注目要素選定手段が、前記入力手段が入力した画像フレーム内の各要素を順番に指定することにより、ラベル付けの対象となる注目要素を選定する注目要素選定ステップと、
ラベル付け手段が、前記注目要素選定手段が選定した注目要素に、所定の順序を有する複数のラベルを保持するラベル保持手段が保持しているラベルを付けるラベル付けステップと、
を備え、
前記ラベル付けステップにおいて、前記ラベル付け手段は、
前記注目要素選定手段が現時点における注目要素を選定する前に選定され、且つ前記現時点における注目要素と前記画像フレーム上で隣接する他の注目要素がある場合には、前記他の注目要素に付けられたラベルである先ラベルを前記現時点における注目要素に付け、
前記先ラベルが複数の場合には、前記現時点における注目要素に該複数の先ラベルのうち前記順序上で最も先立つラベルを付け、前記他の注目要素に該複数の先ラベルのうち前記順序上で最も先立つラベルを付けなおすことを特徴とする画像処理方法。
【請求項８】
前記ラベル付け手段が前記複数の先ラベルのうち前記順序上で最も先立つラベルを前記他の注目要素に付けなおす際に、該他の注目要素に既に付けられていたラベルが再利用ラベルとして再利用ラベル保持手段に保持され、
前記ラベル付けステップにおいては、前記ラベル付け手段が、前記注目要素選定手段が選定した注目要素にラベルを付ける際に、前記再利用ラベル保持手段に保持されている再利用ラベルを付けることを特徴とする請求項７記載の画像処理方法。
【請求項９】
前記画像フレームを構成する各要素は複数の画素からなり、
前記注目要素選定ステップにおいては、
一定の判断基準を超える画素を所定の個数以上有している要素がラベル付けの対象となる注目要素として選定されることを特徴とする請求項７又は請求項８記載の画像処理方法。
【請求項１０】
前記判断基準は、画素の輝度であることを特徴とする請求項９記載の画像処理方法。
【請求項１１】
ブロック分け手段が、前記入力手段が入力した一つの画像フレームを複数の前記要素からなる複数のブロックに分けるブロック分けステップを更に備え、
前記注目要素選定ステップにおいては、ラベル付けの対象となる注目要素を選定する処理が前記複数のブロックにおいて並列的に行われ、
前記ラベル付けステップにおいては、前記注目要素選定手段が選定した注目要素にラベルを付ける処理が前記複数のブロックにおいて並列的に行われることを特徴とする請求項７〜１０の何れか１項に記載の画像処理方法。
【請求項１２】
重心位置算出手段が、同じラベルが付けられた一つ以上の要素の群における重心位置を算出する重心位置算出ステップと、
距離計算手段が、任意のブロックにおける要素群の重心位置と、他のブロックにおける要素群の重心位置との間の距離を計算する距離計算ステップと、
統合手段が、前記距離計算手段が計算した距離値が所定の閾値以下である場合に、前記任意のブロックにおける前記要素群と、前記他のブロックにおける前記要素群とに、同じラベルを付けなおす統合ステップと、
を更に備えることを特徴とする請求項１１記載の画像処理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像処理装置および画像処理方法に関するものである。
【背景技術】
【０００２】
近年、例えば非特許文献１に記載されたような実時間高速ビジョンシステムが知られている。このような撮像装置においては、例えば１０００ＦＰＳといった高速での撮像、及び例えば１０２４×１０２４ピクセルといった高解像度での撮像が可能である。
【０００３】
このような撮像装置から取得した高速および高解像度の画像データに対して例えば画像認識等の処理を行うために、任意の基準によって選択され且つ互いに連結されている画素群に対して同じ番号（ラベル）を付けるという、いわゆるラベリングが一般的に行われている。
【非特許文献１】T.M. Bernard, B.Y. Zavidovique, F.J. Devos, “A programmable artificial retina”, IEEE J. Solid-StateCircuits, Vol.28, No.7, pp.789-797, 1993.
【発明の開示】
【発明が解決しようとする課題】
【０００４】
従来のラベリング手法においては、撮像装置から取得した１フレームの画像データに対して、２回の走査を行っている。すなわち、１回目の走査で仮ラベルを付けた後、２回目の走査で付けなおしを行い、真ラベル付きの画像データを得る。このことにより、正しいラベルが付けられた画像データを得られるが、２回の走査を行うために長い処理時間が必要とされる。更に、仮ラベル付きの画像データを２回目の走査時まで一時的に記憶しておかなければならず、そのためには大きなメモリ領域が必要とされる。これらのことは、画像データのサイズが大きければ大きいほど、深刻な問題となる。
【０００５】
また、従来のラベリング手法において、例えば使用可能なメモリ量の事情により、使えるラベル番号の数が一定個数に限定されている場合がある。このような場合に、例えばノイズに対してまでもラベルを付けてしまうと、必要なデータに付けられるべきラベルが足りなくなる可能性がある。このことは、例えば、いわゆるゴマ塩ノイズが多ければ多いほど、また実装されるハードウェアに備えられるメモリ量が少なければ少ないほど、深刻な問題となる。
【０００６】
そこで、本発明は上記に鑑みてなされたもので、撮像された画像データに対してラベリングを行う際に、高速な処理を可能とし、更に該処理で必要とされるメモリ量を低減することの可能な画像処理装置および画像処理方法を提供することを目的とする。
【課題を解決するための手段】
【０００７】
上記課題を解決するために、本発明の画像処理装置は、撮像装置が撮像した画像フレームを入力し、画像フレームを構成する要素毎にラベルを付ける画像処理装置であって、所定の順序を有する複数のラベルを保持するラベル保持手段と、撮像装置が撮像した画像フレームを入力する入力手段と、入力手段が入力した画像フレーム内の各要素を順番に指定することにより、ラベル付けの対象となる注目要素を選定する注目要素選定手段と、注目要素選定手段が選定した注目要素にラベル保持手段が保持しているラベルを付けるラベル付け手段と、を備え、ラベル付け手段は、注目要素選定手段が現時点における注目要素を選定する前に選定され、且つ現時点における注目要素と画像フレーム上で隣接する他の注目要素がある場合には、他の注目要素に付けられたラベルである先ラベルを現時点における注目要素に付け、先ラベルが複数の場合には、現時点における注目要素に該複数の先ラベルのうち順序上で最も先立つラベルを付け、他の注目要素に該複数の先ラベルのうち順序上で最も先立つラベルを付けなおす。
【０００８】
また、本発明の画像処理方法は、撮像装置が撮像した画像フレームを入力し、画像フレームを構成する要素毎にラベルを付ける画像処理方法であって、入力手段が、撮像装置が撮像した画像フレームを入力する入力ステップと、注目要素選定手段が、入力手段が入力した画像フレーム内の各要素を順番に指定することにより、ラベル付けの対象となる注目要素を選定する注目要素選定ステップと、ラベル付け手段が、注目要素選定手段が選定した注目要素に、所定の順序を有する複数のラベルを保持するラベル保持手段が保持しているラベルを付けるラベル付けステップと、を備え、ラベル付けステップにおいて、ラベル付け手段は、注目要素選定手段が現時点における注目要素を選定する前に選定され、且つ現時点における注目要素と画像フレーム上で隣接する他の注目要素がある場合には、他の注目要素に付けられたラベルである先ラベルを現時点における注目要素に付け、先ラベルが複数の場合には、現時点における注目要素に該複数の先ラベルのうち順序上で最も先立つラベルを付け、他の注目要素に該複数の先ラベルのうち順序上で最も先立つラベルを付けなおす。
【０００９】
このような本発明の画像処理装置および画像処理方法によれば、入力された画像フレーム内の一つ以上の画素からなる要素が現時点における注目要素（以下、「現時点注目要素」ともいう。）として選定されたときに、ラベル付け手段は、当該選定された現時点注目要素にラベル保持手段が保持しているラベルを付ける。このとき、ラベル付け手段は、現時点以前に選定され、且つ現時点注目要素と画像フレーム上で隣接する他の注目要素（以下、「先時点隣接注目要素」ともいう。）がある場合には、当該先時点隣接注目要素に付けられたラベル（先ラベル）と同じラベル番号を現時点注目要素に付ける。複数の注目要素が隣接していることは、当該複数の注目要素が同一の撮像対象物を表している場合が多いと想定され、上記隣接する先時点隣接注目要素と現時点注目要素とには同一のラベル番号が付けられる。
【００１０】
また、ラベル付け手段は、先ラベルが複数の場合に、該複数の先ラベルのうち所定の順序上で最も先立つラベルを現時点注目要素に付ける。更に、ラベル付け手段は、該最も先立つラベルを先時点隣接注目要素に付けなおす。先ラベルが複数の場合は、先時点隣接注目要素が複数有る場合である。このとき、当該複数の先時点隣接注目要素同士が互いに隣接していない場合には、当該複数の先時点隣接注目要素が現時点注目要素を介して隣接している（つながっている）にもかかわらず、現時点以前のラベリングにおいて当該複数の先時点隣接注目要素には互いに異なるラベル番号が付けられている。これに対して、ラベル付け手段は、当該最も先立つラベルを先時点隣接注目要素に付けなおすことにより、現時点注目要素を介してつながっているにもかかわらず互いに異なるラベル番号が付けられている複数の先時点隣接注目要素と、当該現時点注目要素とに、全て同じラベル番号を付けることができる。
【００１１】
以上のことにより、つながっている全ての注目要素に同じラベル番号を付けるために、画像フレームに対して例えば２回の走査を行う必要がなくなり、１回の走査だけでも正しいラベリングを行うことができる。したがって、ラベリングにかかる処理時間を短縮することができる。
【００１２】
また、画像フレームに対する１回目の走査でラベリングが完了されるため、例えば仮ラベル付きの画像データを２回目の走査時まで一時的に記憶しておく必要がなくなる。このため、ラベリングを完了するために必要なメモリ量を低減することができる。
【００１３】
また、画像処理装置は、ラベル付け手段が複数の先ラベルのうち順序上で最も先立つラベルを他の注目要素に付けなおす際に、該他の注目要素に既に付けられていたラベルを再利用ラベルとして保持する再利用ラベル保持手段を更に備え、ラベル付け手段は、注目要素選定手段が選定した注目要素にラベルを付ける際に、再利用ラベル保持手段が保持している再利用ラベルを付けることも好適である。
【００１４】
また、画像処理方法は、ラベル付け手段が複数の先ラベルのうち順序上で最も先立つラベルを他の注目要素に付けなおす際に、該他の注目要素に既に付けられていたラベルが再利用ラベルとして再利用ラベル保持手段に保持され、ラベル付けステップにおいては、ラベル付け手段が、注目要素選定手段が選定した注目要素にラベルを付ける際に、再利用ラベル保持手段に保持されている再利用ラベルを付けることも好適である。
【００１５】
この発明によれば、再利用ラベル保持手段が、ラベルの付けなおしの際に削除されるラベル（既に付けられていたラベル）を再利用ラベルとして保持する。そして、この再利用ラベルは、ラベル付け手段によるラベリングの際に再び使用される。このことにより、装置全体で使用可能なメモリ量（ラベル番号の限度量）を効果的に活用することが可能となる。
【００１６】
また、画像処理装置において、画像フレームを構成する各要素は複数の画素からなり、注目要素選定手段は、一定の判断基準を超える画素を所定の個数以上有している要素をラベル付けの対象となる注目要素として選定することも好適である。
【００１７】
また、画像処理方法において、画像フレームを構成する各要素は複数の画素からなり、注目要素選定ステップにおいては、一定の判断基準を超える画素を所定の個数以上有している要素がラベル付けの対象となる注目要素として選定されることも好適である。
【００１８】
この発明によれば、注目要素選定手段による処理は、複数の画素からなる「要素」を単位として行われる。このとき、注目要素選定手段は、一定の判断基準を超える画素を所定の個数以上有している要素を注目要素として選定する。一方、例えば僅かな個数のノイズが要素に含まれているときなど、一定の判断基準を超える画素であってもその数が所定の個数Ｘにいたっていない場合には、注目セルとして選定されない。このことにより、ノイズ画素に対する対応性（耐ノイズ性）を高めることができる。また、例えば注目要素として選定されない要素にはラベルを付けないようにすることができ、その結果、装置全体で使用可能なメモリ量（ラベル番号の限度量）を効果的に活用することが可能となる。
【００１９】
また、画像処理装置において、上記判断基準は、画素の輝度であっても良い。
【００２０】
また、画像処理方法において、上記判断基準は、画素の輝度であっても良い。
【００２１】
この発明によれば、上記判断基準として画素の輝度が用いられている。画素の輝度は、当該画素がノイズであるか否かを判断するのに好適な基準となるからである。
【００２２】
また、画像処理装置は、入力手段が入力した一つの画像フレームを複数の要素からなる複数のブロックに分けるブロック分け手段を更に備え、注目要素選定手段は、ラベル付けの対象となる注目要素を選定する処理を複数のブロックにおいて並列的に行い、ラベル付け手段は、注目要素選定手段が選定した注目要素にラベルを付ける処理を複数のブロックにおいて並列的に行うことも好適である。
【００２３】
また、画像処理方法は、ブロック分け手段が、入力手段が入力した一つの画像フレームを複数の要素からなる複数のブロックに分けるブロック分けステップを更に備え、注目要素選定ステップにおいては、ラベル付けの対象となる注目要素を選定する処理が複数のブロックにおいて並列的に行われ、ラベル付けステップにおいては、注目要素選定手段が選定した注目要素にラベルを付ける処理が複数のブロックにおいて並列的に行われることも好適である。
【００２４】
この発明によれば、ブロック分け手段が、一つの画像フレームを複数のブロックに分ける。このとき、一つのブロックは複数の上記要素からなる。そして、注目要素選定手段およびラベル付け手段により行われる各処理は、上記複数のブロック毎に並列的に行われる。このことにより、各処理にかかる時間を短縮することができ、リアルタイム処理を可能とする。
【００２５】
また、画像処理装置は、同じラベルが付けられた一つ以上の要素の群における重心位置を算出する重心位置算出手段と、任意のブロックにおける要素群の重心位置と、他のブロックにおける要素群の重心位置との間の距離を計算する距離計算手段と、距離計算手段が計算した距離値が所定の閾値以下である場合に、任意のブロックにおける要素群と、他のブロックにおける要素群とに、同じラベルを付けなおす統合手段と、を更に備えることも好適である。
【００２６】
また、画像処理方法は、重心位置算出手段が、同じラベルが付けられた一つ以上の要素の群における重心位置を算出する重心位置算出ステップと、距離計算手段が、任意のブロックにおける要素群の重心位置と、他のブロックにおける要素群の重心位置との間の距離を計算する距離計算ステップと、統合手段が、距離計算手段が計算した距離値が所定の閾値以下である場合に、任意のブロックにおける要素群と、他のブロックにおける要素群とに、同じラベルを付けなおす統合ステップと、を更に備えることも好適である。
【００２７】
この発明によれば、重心位置算出手段が、同じラベルが付けられた一つ以上の要素の群における重心位置を算出すると、距離計算手段が、任意のブロックにおける要素群の重心位置と、他のブロックにおける要素群の重心位置との間の距離を計算する。そして、上記距離値が所定の閾値以下である場合に、統合手段が、当該距離にかかる複数の要素群に同じラベルを付けなおす。
【００２８】
上述したように、注目要素選定手段およびラベル付け手段により行われる各処理がブロック毎に並列的に行われる場合には、例えば複数のブロックに跨って存在する撮像対象物の場合に、ブロック毎に異なるラベルが付けられる可能性がある。これに対して、本発明においては、統合手段が、同一の撮像対象物を表している（距離が所定の閾値以下である）にもかかわらず異なるラベルが付けられている要素群同士を同一のラベルに統合する（同じラベルを付けなおす）。このことにより、同一の撮像対象物を表している画像データには、同一のラベルを付けることができる。
【発明の効果】
【００２９】
本発明によれば、撮像された画像データに対してラベリングを行う際に、高速な処理を可能とし、更に該処理で必要とされるメモリ量を低減することができる。
【発明を実施するための最良の形態】
【００３０】
以下、添付図面を参照して本発明にかかる画像処理装置および画像処理方法の好適な実施形態を詳細に説明する。なお、図面の説明において同一の要素には同一の符号を付し、重複する説明を省略する。また、図面の寸法比率は、説明のものと必ずしも一致していない。
【００３１】
まず、本発明の一実施形態に係る画像処理システム１の全体構成について説明する。図１は、画像処理システム１の構成概要図である。図１に示すように、画像処理システム１は、ラベリング装置１００（画像処理装置）および撮像装置２００を備えている。画像処理システム１においては、撮像装置２００が撮像した画像データに対して、ラベリング装置１００がリアルタイムでラベリングを行う。以下、画像処理システム１の各構成要素について詳細に説明する。
【００３２】
撮像装置２００は、入射する光信号を電気信号に変換することで撮像対象物を撮像するものであり、本実施形態においては、高速かつ高解像度で動画を連続的に撮像可能なビデオカメラである。撮像装置２００は、２Ｎ×２Ｎ[ピクセル]の画素領域を有し、Ｙ[ＦＰＳ]でビデオ撮像を行い、１ピクセルあたりの諧調数はＭ[ｂｉｔ]である。以下、本実施形態においては、例えば、Ｎ＝１０と設定され、Ｙ＝１０００と設定され、Ｍ＝１０と設定されている。
【００３３】
撮像装置２００は、例えば黒い紙を背景にして動く複数の白いマーカを撮像対象物とする。図２は、撮像装置２００により撮像された一つの画像フレームをイメージした図である。１０２４×１０２４ピクセルの１フレームには、マーカ１〜３が撮像対象物として撮像されている。当該画像フレームにおいては、最左上のピクセルを基準点（０，０）とするｘｙ座標を用いて、各ピクセルを表すことができる。すなわち、最右上のピクセルはｘｙ座標上で（１０２３，０）に相当し、最左下のピクセルはｘｙ座標上で（０，１０２３）に相当し、最右下のピクセルはｘｙ座標上で（１０２３，１０２３）に相当する。このことは以下において同じである。撮像装置２００は、例えば周知のＴＭＤＳ（Transition Minimized Differential Signaling）シリアル通信により、撮像した画像データをフレーム単位でラベリング装置１００に出力する。
【００３４】
図１に戻り、ラベリング装置１００は、撮像装置２００より撮像された画像フレームを入力され、撮像対象物である各マーカに対応する部分にリアルタイムでラベルを付けるものである。ラベリング装置１００は、図１に示されたように、第１ラベリング部１１０及び第２ラベリング部１２０を備えている。
【００３５】
第１ラベリング部１１０は、ハードウェア上でラベリングを行うものであって、物理的には、例えば通常のＦＰＧＡ（Field Programmable Gate Array）ボード上に組み込まれることができる。このＦＰＧＡボードは、ＣＰＵ、メモリ、通信インタフェイス、表示インタフェイス等を備えた通常のコンピュータシステム内に設けられることができる。第１ラベリング部１１０は、機能的には、入力部１１１（入力手段）、ブロック分け部１１２（ブロック分け手段）、注目セル選定部１１３（注目要素選定手段）、ラベル付け部１１４（ラベル付け手段）、及びラベル保持部１１５（ラベル保持手段、再利用ラベル保持手段）を備えて構成される。以下、第１ラベリング部１１０の各構成要素について詳細に説明する。  
【００３６】
入力部１１１は、例えばＴＭＤＳシリアル通信により、撮像装置２００により撮像された画像フレーム（図２）を入力するものである。入力部１１１は、入力された画像フレームに対して、例えば固定パタンノイズの除去やシェーディング補正の処理を施した後に、当該画像フレームをブロック分け部１１２に出力する。
【００３７】
ブロック分け部１１２は、入力部１１１から画像フレームを入力され、当該一つの画像フレームを複数のブロックに分けるものである。図３は、ブロック分け部１１２のブロック分け動作を説明するための図である。図３に示すように、本実施形態において、ブロック分け部１１２は、１０２４×１０２４ピクセルの一つの画像フレームを、６４×１０２４ピクセルの１６個のブロックに分ける。このことにより、後述する以後の処理において、ブロック毎の並列処理が行われることができる。ブロック分け部１１２は、ブロック分けした画像フレームを注目セル選定部１１３に出力する。
【００３８】
図１に戻り、注目セル選定部１１３は、ブロック分け部１１２からブロック分けされた画像フレームを入力され、当該画像フレームを構成する各セルを順番に指定していくとともに、指定した当該セルがラベル付けの対象となる「注目セル」であるか、或いはラベル付けの対象とならない「背景セル」であるかを判断する（以下、「注目セル選定処理」ともいう。）ものである。注目セル選定部１１３は、上記注目セル選定処理を、ブロック分けされた１６個のそれぞれのブロック毎に並列的に行う。ここで、「セル（cell）」とは、画像フレームを構成する要素であって、複数の画素からなる集合をいう。本実施形態においては、１セルは、例えば、８×８ピクセルである。すなわち、一つのブロック（６４×１０２４ピクセル）は８×１２８セルからなり、一つの画像フレーム（１６×６４×１０２４ピクセル）は１６×８×１２８セルからなる。
【００３９】
以下、注目セル選定部１１３により行われる処理について具体的に説明する。注目セル選定部１１３は、まず、処理対象となるブロック（並列処理される１６個のブロックのうち一つのブロック）において、現時点で考慮対象となる一つのセル（以下、「現時点セル」ともいう。）を特定する（以下、「現時点セル特定処理」ともいう。）。図４は、注目セル選定部１１３による現時点セル特定処理を説明するための図である。図４に示すように、注目セル選定部１１３は、当該ブロックを構成する全てのセルに対して順番に現時点セルを特定していくために、例えば当該ブロックの最左上のセルから最右下のセルまで、同じ行における各セルにおいては右方向へ、且つ各行においては下方向へ進みながら順番に現時点セルを特定する。
【００４０】
次に、注目セル選定部１１３は、現時点セルにおいて、一定の判断基準を超える画素がいくつあるかをカウントする。本実施形態において、上記判断基準は、セルを構成している各画素の輝度値である。具体的に、注目セル選定部１１３は、一つのセル内の８×８ピクセルの画素のうち、輝度値の閾値であるＩ[ｃｄ／ｍ２]を越える輝度値を有する画素がいくつあるかをカウントする。
【００４１】
そして、注目セル選定部１１３は、現時点セル内において、Ｉ[ｃｄ／ｍ２]を越える輝度値を有する画素が所定の個数Ｘ個以上である場合に、当該現時点セルを「注目セル」として選定する。一方、注目セル選定部１１３は、現時点セル内において、Ｉ[ｃｄ／ｍ２]を越える輝度値を有する画素が所定の個数Ｘ個以上でない場合に、当該現時点セルを「背景セル」として選定する。本実施形態においては、黒い紙を背景にして動く白いマーカを撮像対象物としているため、画像データにおいて白いマーカの部分はその輝度値が高く、「注目セル」として選定されやすい。また、黒い紙の部分はその輝度値が低く、「背景セル」として選定されやすい。なお、本実施形態においては、例えば、Ｉ＝１２０として設定され、Ｘ＝１０として設定されている。
【００４２】
注目セル選定部１１３は、一つのセルに対して上記現時点セル特定処理および注目セル選定処理を終えると、当該現時点セルを特定する情報と、当該現時点セルが注目セルであるか或いは背景セルであるかを表す情報とをラベル付け部１１４に出力する。この出力処理は、ブロック分けされた１６個のそれぞれのブロック毎に並列的に行われる。
【００４３】
図１に戻り、ラベル付け部１１４は、注目セル選定部１１３より、現時点セルを特定する情報と、当該現時点セルが注目セルであるか否かを表す情報とを入力され、現時点セルが注目セルである場合に、ラベル保持部１１５が保持しているラベルを当該注目セルに付ける、つまりラベリングを行うものである。一方、ラベル付け部１１４は、現時点セルが背景セルである場合には、ラベリングを行わない。ラベル付け部１１４は、上記ラベリングをブロック分けされた１６個のそれぞれのブロック毎に並列的に行う。
【００４４】
ラベリングに用いられるラベルは、ラベル保持部１１５に保持されており、各ラベルは使用されるための所定の順序を有する。ラベル保持部１１５は、上記順序にしたがって複数のラベルを保持するものであって、メインキュー（ラベル保持手段）と再利用キュー（再利用ラベル保持手段）とを備える。メインキューは、優先的に使われるラベルを上記順序にしたがって保持しているものであり、再利用キューは、メインキューに保持されていたラベルが全て使われた後に使われるラベルを保持しているものである。
【００４５】
図５は、ラベル保持部１１５にラベルが保持されている様子を示す図である。図５（Ａ）および図５（Ｂ）はラベル保持部１１５のメインキューをイメージしており、ラベル保持部１１５のメインキューにはラベリング時に用いられるラベルが左から右の順番に格納されている。本実施形態においては、図５（Ａ）に示されるように、合計１０２４個のラベル番号が使用可能と設定されており、各ラベルは数字の大きさによりその順序が決められている。つまり、ラベル番号１はラベル番号２より順序上先立ち、図５（Ａ）のメインキューにおいてはラベル番号１はラベル番号２より左に格納されている。そして、各ラベルが使用される際にはメインキューの左から右に順番に使用され、例えば図５（Ａ）においてはラベル番号１の次にラベル番号２の順番で使用される。図５（Ｂ）は、ラベル番号１とラベル番号２とが順に使用された後に、メインキューに残されたラベル（以後使用可能なラベル）を示している。
【００４６】
以下、ラベル付け部１１４により行われるラベリングについて、図６〜９を更に参照しながら具体的に説明する。図６〜９は、処理対象となるブロック（並列処理される１６個のブロックのうち一つのブロック）を構成する８×１２８セルのうちで、４つのセル（セルａ、セルｂ、セルｃ、セルｄ）からなる一部分のみをイメージしている。また、各図においては、説明の便宜のために、各セルには符号（ａ、ｂ、ｃ、ｄ）を付しており、その符号は当該セルの左上に表示されている。また、上述したように、注目セル選定部１１３は、ブロックの最左上のセルから最右下のセルまで、同じ行における各セルにおいては右方向へ、且つ各行においては下方向へ進みながら順番に現時点セルを特定している。このため、図６〜９においては、セルａ、セルｂ、セルｃ、セルｄの順番で、各セルは現時点セルとして特定されたこととなる。以下、任意の時点における現時点セルより先に現時点セルとして特定されたセルを「先時点セル」ともいう。すなわち、例えばセルｄが現時点セルとして特定された時点では、セルａ、セルｂ、セルｃが先時点セルである。また、以下の説明においては、セルｄは、現時点セルであって且つ注目セルであることとする。
【００４７】
ラベル付け部１１４が注目セルｄにラベリングを行う方法は、当該注目セルｄに隣接する先時点セルに付けられたラベル（以下、「先ラベル」ともいう。）の様子によって、後述するケース１〜４にて説明される４つの方法に分けられる。以下の説明における「隣接」とは、説明の便宜のために、当該注目セルと一面が接することをいう。すなわち、注目セルｄにおいて、セルａは先時点セルではあるが、隣接していない。一方、注目セルｄにおいて、セルｂおよびセルｃは先時点セルであり且つ隣接している。以下、ラベル付け部１１４のラベリング方法をケース毎に説明する。
【００４８】
[ケース１]
ケース１における状況は、図６により示されている。すなわち、図６（Ａ）に示されているように、隣接する先時点セルであるセルｂとセルｃには、ラベルが付いていない。このことにより、現時点以前の時点において、セルｂとセルｃは背景セルであったことが分かる。この場合に、ラベル付け部１１４は、ラベル保持部１１５のメインキューに保持されたラベルのうち順序上最も先立つラベル番号を注目セルｄに付ける。例えば、図５（Ａ）においては、順序上最も先立つラベル番号は、メインキューの最も左側に格納されているラベル番号１である。図６（Ｂ）には、このことが図示されており、注目セルｄにはラベル番号１が付けられている。
【００４９】
[ケース２]
ケース２における状況は、図７により示されている。すなわち、図７（Ａ）に示されているように、隣接する先時点セルであるセルｂにはラベルが付いておらず、隣接する先時点セルであるセルｃにはラベル（先ラベル）が付いている。このことにより、現時点以前の時点において、セルｂは背景セルであって、セルｃは注目セルであったことが分かる。また、セルｃとセルｄとは隣接しているため、セルｃとセルｄとは同じ撮像対象物（マーカ）の異なる一部分にそれぞれ対応していることが分かる。この場合に、ラベル付け部１１４は、先ラベルと同じラベル番号を注目セルｄに付ける。図７（Ｂ）では、先ラベルであるセルｃのラベル番号１が注目セルｄに付けられている。
【００５０】
[ケース３]
ケース３における状況は、図８により示されている。すなわち、図８（Ａ）に示されているように、隣接する先時点セルであるセルｂにはラベル（先ラベル）が付いており、隣接する先時点セルであるセルｃにはラベルが付いていない。このことにより、現時点以前の時点において、セルｂは注目セルであって、セルｃは背景セルであったことが分かる。また、セルｂとセルｄとは隣接しているため、セルｂとセルｄとは同じ撮像対象物（マーカ）の異なる一部分にそれぞれ対応していることが分かる。この場合に、ラベル付け部１１４は、先ラベルと同じラベル番号を注目セルｄに付ける。図８（Ｂ）では、先ラベルであるセルｂのラベル番号１が注目セルｄに付けられている。
【００５１】
[ケース４]
ケース４における状況は、図９により示されている。すなわち、図９（Ａ）に示されているように、先時点セルであるセルｂとセルｃの両方に、ラベル（互いに異なる先ラベル）が付いている。このことにより、現時点以前の時点において、セルｂとセルｃは注目セルであったことが分かる。また、セルｂとセルｃとセルｄとは隣接しているため（セルｄを介してつながっているため）、セルｂとセルｃとセルｄとは同じ撮像対象物の異なる一部分にそれぞれ対応していることが予想される。この場合に、ラベル付け部１１４は、先ラベルのうちで順序上最も先立つものを注目セルｄに付ける。図９（Ｂ）にはこのことが示されており、先ラベルであるセルｃのラベル番号２ではなく、それより順序上先立つ先ラベルであるセルｂのラベル番号１が注目セルｄに付けられている。なお、図示はしないが、例えば、先時点セルであるセルｂとセルｃに同じラベル番号が付いている場合には、ラベル付け部１１４はその番号を注目セルｄに付ける。
【００５２】
この後、ラベル付け部１１４は、順序上最も先立つものではない先ラベルを、順序上最も先立つ先ラベルに付けなおす。すなわち、図９（Ｂ）の一例において、セルｃに付けられているラベル番号２を、それより順序上先立つ先ラベルであるセルｂのラベル番号１に付けなおす。図９（Ｃ）にはこのことが示されており、セルｃに付けられているラベル番号がラベル番号２からラベル番号１に変更されており、結果的には、セルｂとセルｃとセルｄとに同じラベルが付けられている。
【００５３】
ラベル番号が付けなおされることにより削除されたラベル番号は、ラベル保持部１１５の再利用キューに格納される。図５（Ｃ）は、図９の場合において削除されたラベル番号２がラベル保持部１１５の再利用キューに格納された様子を示す。ラベル保持部１１５の再利用キューに格納されたラベル番号は、ラベル保持部１１５のメインキューに格納されたラベル番号が全て使われた後に使われる。すなわち、図５の例において、ラベル付け部１１４は、メインキューに格納されたラベル番号のうちで順序上最後であるラベル番号１０２４を使用した後に、再利用キューにおいて順序上最先であるラベル番号２を再び使用する。
【００５４】
以上より、ラベル付け部１１４によるラベリング方法について説明した。このラベリングとともに、ラベル付け部１１４は、各ラベルにおける０次モーメント及び１次モーメントを計算する。本実施形態において、各モーメントは、例えば以下のように定義する。
【数１】
2008097529.tif 000003
【数２】
2008097529.tif 000004
【数３】
2008097529.tif 000005
ただし、ｍ０[Ｎ]はラベル番号Ｎの０次モーメントであり、ｍｘ１[Ｎ]はラベル番号Ｎのｘ軸に関しての１次モーメントであり、ｍｙ１[Ｎ]はラベル番号Ｎのｙ軸に関しての１次モーメントである。また、Ｋ（ｘ，ｙ，Ｎ）は、座標（ｘ，ｙ）のピクセルがラベル番号Ｎが貼られたセルに含まれる場合には「１」、含まれない場合には「０」となる関数である。
【００５５】
このようなモーメント計算処理は、各セルにラベリングを行うとともに行われる。すなわち、上記ケース１においては、ラベル番号１がラベリングのために初めて用いられており、ラベリング後、上記数式（１）〜（３）により、ラベル番号１の０次モーメントｍ０[１]、ラベル番号１のｘ軸に関しての１次モーメントｍｘ１[１]、ラベル番号１のｙ軸に関しての１次モーメントｍｙ１[１]がそれぞれ計算される。また、上記ケース２〜４においては、ラベル番号１が注目セルへのラベリングのために複数回にわたって用いられており、ラベル番号１が使用されるたびに、上記数式（１）〜（３）により、ｍ０[１]、ｍｘ１[１]、ｍｙ１[１]が更新される。また、ケース４においては、セルｃに付けられるラベルがラベル番号２からラベル番号１へと変更されており、この場合においては、ラベル番号１に対しては上記数式（１）〜（３）によりｍ０[１]、ｍｘ１[１]、ｍｙ１[１]が更新され、ラベル番号２に対しては既に求めていたｍ０[２]、ｍｘ１[２]、ｍｙ１[２]が削除される。そして、例えば後ほどラベル番号２が再利用される際には、ラベル番号２に対するｍ０[２]、ｍｘ１[２]、ｍｙ１[２]が改めて計算される。
【００５６】
ラベル付け部１１４は、以上の説明したようなラベリング及びモーメント計算処理を一つのブロック内の全てのセルに対して行う。また、上述したように、ラベル付け部１１４は、ブロック分けされた１６個のそれぞれのブロック毎に並列的にラベリング及びモーメント計算処理を行うため、一つのブロックでラベリング及びモーメント計算処理が終了すると、撮像装置２００から入力された一つの画像フレームの全体に対するラベリング及びモーメント計算処理が終了することとなる。
【００５７】
図１０は、例えば図２に示した画像フレームに対して、以上で説明したようなラベリングを行った場合のラベル付き画像フレームの一例を示す。図１０において、一つの画像フレームは１６個のブロックに分けられており、ラベリングはブロック毎に行われている。なお、図１０に関する詳細については後述する。ラベル付け部１１４は、図１０に示したようなラベル付き画像フレーム、及び当該ラベル付き画像フレームで使用された各ラベル番号におけるモーメント計算値を第２ラベリング部１２０に出力する。
【００５８】
図１に戻り、第２ラベリング部１２０は、第１ラベリング部１１０により行われたラベリングの結果に対して、ソフトウェア上で補正を行うものである。第１ラベリング部１１０により行われたラベリングの結果においては、例えば図１０におけるマーカ２の一例から分かるように、ブロック毎に異なる複数の画素データの集合（セル群２とセル群３）が一つの撮像対象物（マーカ２）を表す場合に、それぞれの画素データの集合にブロック毎に異なるラベル番号（ラベル番号２とラベル番号３）が付けられる。このことは、第１ラベリング部１１０はブロック毎に独立的にラベリングを行うことに起因する。第２ラベリング部１２０は、このことに対する補正をソフトウェア上で行う。
【００５９】
第２ラベリング部１２０は、図１に示されるように、物理的には、ＣＰＵ、メモリ、通信インタフェイス、表示インタフェイス等を備えた通常のコンピュータシステム内に設けられることができる。また、第２ラベリング部１２０と第１ラベリング部１１０との間は、例えばＰＣＩ（Peripheral Component Interconnect）バスにより接続されており、ラベル付き画像データ等の送受信が可能なように設けられている。第２ラベリング部１２０は、機能的には、入力部１２１、重心位置算出部１２２（重心位置算出手段）、距離計算部１２３（距離計算手段）、統合部１２４（統合手段）、及び出力部１２５を備えて構成される。以下、第２ラベリング部１２０の各構成要素について詳細に説明する。
【００６０】
入力部１２１は、第１ラベリング部１１０より、ラベル付き画像フレーム、及び当該ラベル付き画像フレームで使用された各ラベル番号におけるモーメント計算値を入力するものである。入力部１２１は、入力した当該ラベル付き画像フレームを統合部１２４に出力し、当該ラベル付き画像フレームで使用された各ラベル番号におけるモーメント計算値を重心位置算出部１２２に出力する。
【００６１】
重心位置算出部１２２は、入力部１２１より、各ラベル番号のモーメント計算値を入力され、ラベル番号毎の画像フレーム内での重心位置を算出するものである。すなわち、重心位置算出部１２２は、同じラベルが付けられたセル群に対して画像フレーム内での重心位置を算出する。具体的に、重心位置算出部１２２は、例えば下記の数式に基づいて、ラベル番号Ｎが付けられたセル群の重心位置（ｘ[Ｎ]，ｙ[Ｎ]）を算出する。
【数４】
2008097529.tif 000006
【数５】
2008097529.tif 000007
ただし、ｘ[Ｎ]はラベル番号Ｎが付けられたセル群の重心位置のｘ座標であり、ｙ[Ｎ]はラベル番号Ｎが付けられたセル群の重心位置のｙ座標である。
【００６２】
重心位置算出部１２２は、図１０に示されたような例において、ブロック１ではラベル番号１が付けられたセル群（マーカ１を表す画素データの集合、セル群１）における重心位置（ｘ[１]，ｙ[１]）を算出し、ブロック１０ではラベル番号２が付けられたセル群（マーカ２を表す画素データの集合、セル群２）における重心位置（ｘ[２]，ｙ[２]）を算出し、ブロック１１ではラベル番号３が付けられたセル群（マーカ２を表す画素データの集合、セル群３）における重心位置（ｘ[３]，ｙ[３]）を算出し、ブロック１６ではラベル番号４が付けられたセル群（マーカ３を表す画素データの集合、セル群４）における重心位置（ｘ[４]，ｙ[４]）を算出する。また、図１０においては、重心位置算出部１２２が算出した重心位置を、各マーカを表す円の中の点として示している。重心位置算出部１２２は、このようにして算出したそれぞれのセル群の重心位置を表す情報を距離計算部１２３に出力する。
【００６３】
距離計算部１２３は、重心位置算出部１２２より、各セル群における重心位置を表す情報を入力され、任意のブロックにおける或るセル群の重心位置と、他のブロックにおける或るセル群の重心位置との間の距離を計算するものである。具体的に、距離計算部１２３は、まず、二つのブロック間の境界（以下、「ブロック境界」ともいう。）から一定の範囲内に重心位置を有するセル群を特定し、該セル群を特定する情報および該セル群の重心位置を表す情報を当該ブロック境界毎に格納する。そして、距離計算部１２３は、任意のブロック境界に関連付けられて格納されたセル群が複数有る場合に、当該セル群の間の重心位置間の距離を求める。
【００６４】
具体的に、図１０に示した一例において、距離計算部１２３は、まず、それぞれのブロック境界（Ｂ１，Ｂ２，…，Ｂ９，Ｂ１０，Ｂ１１，…，Ｂ１５）から一定の範囲内に重心位置を有するセル群を特定する。本実施形態においては、上記一定の範囲が、例えば上下６４ピクセル（上下ブロック一つ分）と設定されている。この場合に、距離計算部１２３は、例えば、ブロック境界Ｂ１に対してセル群１を特定し、ブロック境界Ｂ１０に対してセル群２とセル群３とを特定し、ブロック境界Ｂ１５に対してセル群４を特定する。
【００６５】
次に、距離計算部１２３は、上記特定したそれぞれのセル群の重心位置を表す情報を当該ブロック境界毎に格納する。本実施形態においては、距離計算部１２３は、例えば２次元配列であるboundary[Ｂ][ｘｙ]を用意し、ブロック境界Ｂｉに関連付けて、ラベル番号Ｎが付けられたセル群の重心位置ｘｙＮを表す情報をboundary[Ｂｉ][ｘｙＮ]に格納する。なお、上記数式（４）、（５）に基づいて、重心位置ｘｙＮ＝（ｘ[Ｎ]，ｙ[Ｎ]）である。すなわち、図１０に示した一例において、距離計算部１２３は、例えば、ブロック境界Ｂ１に関連付けて、セル群１の重心位置（ｘ[１]，ｙ[１]）を表す情報をboundary[Ｂ１][ｘｙ１]に格納する。また、距離計算部１２３は、ブロック境界Ｂ１０に関連付けて、セル群２の重心位置（ｘ[２]，ｙ[２]）を表す情報をboundary[Ｂ１０][ｘｙ２]に格納し、セル群３の重心位置（ｘ[３]，ｙ[３]）を表す情報をboundary[Ｂ１０][ｘｙ３]に格納する。また、距離計算部１２３は、ブロック境界Ｂ１５に関連付けて、セル群４の重心位置（ｘ[４]，ｙ[４]）を表す情報をboundary[Ｂ１５][ｘｙ４]に格納する。
【００６６】
次に、距離計算部１２３は、任意のブロック境界に関連付けられて格納された情報が複数有る場合に、当該重心位置間の距離を計算する。すなわち、図１０に示した一例において、距離計算部１２３は、まず、２次元配列であるboundary[Ｂ][ｘｙ]の各行を走査し、複数の値が格納されている行を見つけ出す。図１０に示した一例では、Ｂ１０行において、セル群２の重心位置（ｘ[２]，ｙ[２]）と、セル群３の重心位置（ｘ[３]，ｙ[３]）とが格納されていることが見つけられる。次に、距離計算部１２３は、重心位置（ｘ[２]，ｙ[２]）と重心位置（ｘ[３]，ｙ[３]）との間の距離ｄを求める。なお、図１０において例示はしないが、距離計算部１２３は、同じブロック内に存在する複数のセル群間においては、重心位置間の距離を求める処理を行わない。次に、距離計算部１２３は、当該求めた距離ｄと、当該距離ｄに係る複数のセル群を特定する情報（セル群２を特定する情報およびセル群３を特定する情報）とを統合部１２４に出力する。
【００６７】
統合部１２４は、距離計算部１２３により上記求められた距離と、当該距離に係る複数のセル群を特定する情報とを入力される。また、統合部１２４は、入力部１２１より、図１０に示したようなラベル付き画像フレームを入力される。そして、統合部１２４は、距離計算部１２３により入力された当該距離が所定の閾値Ｄ以下である場合に、入力部１２１により入力された当該ラベル付き画像フレームにおいて、当該距離に係る複数のセル群に同じラベルを付けなおす。
【００６８】
すなわち、図１０に示した一例において、統合部１２４は、重心位置（ｘ[２]，ｙ[２]）と重心位置（ｘ[３]，ｙ[３]）との間の距離ｄが所定の閾値Ｄ以下の場合に、セル群２とセル群３とに付けられている互いに異なるラベル番号（ラベル番号２とラベル番号３）を例えばラベル番号２に統合する。つまり、セル群３にラベル番号２を付けなおす。このことにより、同じ撮像対象物（マーカ２）を表す画像データであるセル群２とセル群３とに、同じラベル番号が付けられることとなる。一方、統合部１２４は、距離ｄが所定の閾値Ｄ以下でない場合には、セル群２とセル群３とに付けられているラベル番号をそのままにする。この場合は、例えば、セル群２とセル群３とが互いに異なる撮像対象物を表している場合である。
【００６９】
統合部１２４は、以上のようにしてラベルを付けなおした画像フレームを出力部１２５（図１）に出力する。出力部１２５は、統合部１２４より入力された当該画像フレームを、例えば位置追跡装置等の他の装置（図示せず）に出力することができる。このことにより、例えば位置追跡装置等は画像フレームに付けられているラベルを例えば撮像対象物の各マーカの位置を認識して追跡するときに用いることができる。
【００７０】
続いて、画像処理システム１により行われる動作（画像処理方法）について、図１１等を参照しながら説明する。図１１は、画像処理システム１の全体の動作を示すシーケンス図である。
【００７１】
まず、撮像装置２００が、例えば複数の撮像対象物を撮像して（ステップＳ１０１）、当該撮像した画像データをフレーム単位で（上記図２を参照）ラベリング装置１００に出力する（ステップＳ１０２）。
【００７２】
次に、ラベリング装置１００の第１ラベリング部１１０の入力部１１１が、ステップＳ１０２にて撮像装置２００より出力された画像フレームを入力し、例えば固定パタンノイズの除去やシェーディング補正の処理を施す。その後、入力部１１１が当該画像フレームをブロック分け部１１２に出力する（ステップＳ１０３）。
【００７３】
次に、ブロック分け部１１２が、ステップＳ１０３にて入力部１１１より入力した当該一つの画像フレームを１６個の複数のブロックに分ける（上記図３を参照）。ブロック分け部１１２は、当該ブロック分けした画像フレームを注目セル選定部１１３に出力する（ステップＳ１０４）。
【００７４】
次に、注目セル選定部１１３が、ステップＳ１０４にてブロック分け部１１２によりブロック分けされた画像フレームを入力し、当該ブロック分けされた１６個のそれぞれのブロック毎に並列的に注目セル選定処理を行う（ステップＳ１０５）。
【００７５】
図１２は、ステップＳ１０５における注目セル選定処理を説明するためのフローチャートである。図１２に示すように、注目セル選定部１１３は、まず、処理対象となるブロック（並列処理される１６個のブロックのうち一つのブロック）において、一つの現時点セルを特定する。このとき、注目セル選定部１１３は、例えば図４を参照しながら上記説明した現時点セル特定方法を用いる（ステップＳ２０１）。
【００７６】
次に、注目セル選定部１１３は、ステップＳ２０１にて特定した現時点セル内の例えば８×８ピクセルの画素のうち、輝度値の閾値であるＩ[ｃｄ／ｍ２]を越える輝度値を有する画素がいくつあるかをカウントする（ステップＳ２０２）。
【００７７】
次に、注目セル選定部１１３は、ステップＳ２０２にてカウントした画素数が所定の閾値Ｘ個以上であるか否かを判断する（ステップＳ２０３）。上記画素数が所定の閾値Ｘ個以上である場合（ステップＳ２０３：ＹＥＳ）には、注目セル選定部１１３は、当該現時点セルを「注目セル」として選定する（ステップＳ２０４）。一方、上記画素数が所定の閾値Ｘ個以上でない場合（ステップＳ２０３：ＮＯ）には、注目セル選定部１１３は、当該現時点セルを「背景セル」として選定する（ステップＳ２０５）。
【００７８】
以上のように注目セル選定処理が終わると、注目セル選定部１１３は、当該現時点セルを特定する情報と、当該現時点セルが注目セルであるか或いは背景セルであるかを表す情報とをラベル付け部１１４に出力する（図１１のステップＳ１０５）。
【００７９】
次に、ラベル付け部１１４が、ステップＳ１０５にて注目セル選定部１１３より出力された現時点セルを特定する情報と、当該現時点セルが注目セルであるか否かを表す情報とを入力し、ブロック分けされた１６個のそれぞれのブロック毎に並列的にラベリングを行う（ステップＳ１０６）。
【００８０】
図１３は、ステップＳ１０６におけるラベリングの方法を説明するためのフローチャートである。図１３に示すように、ラベル付け部１１４は、まず、現時点セルが注目セルであるか否かを判断する（ステップＳ３０１）。
【００８１】
ステップＳ３０１にて、現時点セルが注目セルではなく背景セルである場合（ステップＳ３０１：ＮＯ）には、ラベル付け部１１４は、以後に説明するラベリングを行わずに、ステップＳ１０６における処理を終了する。
【００８２】
一方、ステップＳ３０１にて、現時点セルが注目セルである場合（ステップＳ３０１：ＹＥＳ）には、ラベル付け部１１４は、先ラベルがあるか否かを確認する（ステップＳ３０２）。
【００８３】
ステップＳ３０２にて、先ラベルが無い場合（ステップＳ３０２：ＮＯ）には、ラベル付け部１１４は、ラベル保持部１１５のメインキューに保持されたラベルのうち順序上最も先立つラベル番号を当該注目セルに付ける。また、例えば、ラベル保持部１１５のメインキューに保持されていた全てのラベルが既に使われている場合には、ラベル付け部１１４は、ラベル保持部１１５の再利用キューに保持されたラベルのうち順序上最も先立つラベル番号を当該注目セルに付ける。なお、以上の場合は、前述したケース１に相当する（ステップＳ３０３）。
【００８４】
ステップＳ３０２にて、先ラベルが有る場合（ステップＳ３０２：ＹＥＳ）には、ラベル付け部１１４は、当該先ラベルが複数有るか否かを判断する（ステップＳ３０４）。
【００８５】
ステップＳ３０４にて、先ラベルが一つのみである場合（ステップＳ３０４：ＮＯ）には、ラベル付け部１１４は、当該一つのみの先ラベルと同じラベル番号を当該注目セルに付ける。なお、この場合は、前述したケース２および３に相当する（ステップＳ３０５）。
【００８６】
ステップＳ３０４にて、先ラベルが複数有る場合（ステップＳ３０４：ＹＥＳ）には、ラベル付け部１１４は、当該先ラベルのうちで順序上最も先立つものを当該注目セルに付ける（ステップＳ３０６）。なお、図面にて例示はしないが、複数の先ラベルが全て同じである場合には、ラベル付け部１１４は、同じである当該先ラベルを当該注目セルに付ける。
【００８７】
次に、ラベル付け部１１４は、複数の先ラベルのうちで順序上最も先立つものではない先ラベルを、順序上最も先立つ先ラベルに付けなおす。ラベル番号が付けなおされることにより削除されたラベル番号は、ラベル保持部１１５の再利用キューに格納される（ステップＳ３０７）。なお、ステップＳ３０６およびステップＳ３０７における場合は、前述したケース４に相当する。
【００８８】
以上で説明したラベリングとともに、ラベル付け部１１４は、各ラベルにおける０次モーメント及び１次モーメントを前述した数式（１）〜（３）に基づいて計算あるいは更新する（図１１のステップＳ１０７）。
【００８９】
次に、処理対象となるブロック（並列処理される１６個のブロックのうち一つのブロック）の全てのセルにおいて、上記ステップＳ１０５〜ステップＳ１０７の処理が終了したか否かが判断される（ステップＳ１０８）。本実施形態においては、注目セル選定部１１３が例えば図４を参照しながら上記説明した現時点セル特定方法を用いて現時点セルを特定している。このため、例えば、処理対象ブロックの最右下のセルに対して上記ステップＳ１０５〜ステップＳ１０７の処理が終了した時点を、当該処理対象ブロック内の全てのセルに対して上記処理が終了した時点として判断することができる。
【００９０】
ステップＳ１０８にて、処理対象ブロックの全てのセルに対してステップＳ１０５〜ステップＳ１０７の処理が終了してはいない場合（ステップＳ１０８：ＮＯ）には、処理の流れはステップＳ１０５に移行する。
【００９１】
一方、ステップＳ１０８にて、処理対象となる一つのブロックの全てのセルに対してステップＳ１０５〜ステップＳ１０７の処理が終了した場合（ステップＳ１０８：ＹＥＳ）には、ステップＳ１０３にて入力した一つの画像フレーム全体に対してステップＳ１０５〜ステップＳ１０７の処理が終了したこととなる。そして、ラベル付け部１１４は、例えば図１０に示したようなラベル付き画像フレームと、当該ラベル付き画像フレームで使用された各ラベル番号におけるモーメント計算値とを、第２ラベリング部１２０に出力する（ステップＳ１０９）。
【００９２】
次に、第２ラベリング部１２０の入力部１２１が、ステップＳ１０９にかかる入力を受ける。入力部１２１は、当該入力したラベル付き画像フレームを統合部１２４に出力し、当該ラベル付き画像フレームで使用された各ラベル番号におけるモーメント計算値を重心位置算出部１２２に出力する（ステップＳ１１０）。
【００９３】
次に、重心位置算出部１２２が、ステップＳ１１０にて入力部１２１より入力されたモーメント計算値をもとに、例えば前述した数式（４）および（５）に基づいて、同じラベルが付けられたセル群毎（ラベル番号毎）の画像フレーム内での重心位置を算出する。重心位置算出部１２２は、算出したセル群毎の重心位置を表す情報を距離計算部１２３に出力する（ステップＳ１１１）。
【００９４】
次に、距離計算部１２３が、ステップＳ１１１にて重心位置算出部１２２より算出されたセル群毎の重心位置を表す情報を入力され、任意のブロック境界から一定の範囲内にある重心位置のうちで、任意のブロックにおける或るセル群の重心位置と、他のブロックにおける或るセル群の重心位置との間の距離を計算する。この距離計算処理は、前述したように、例えば２次元配列をベースにして行われることができる。次に、距離計算部１２３は、当該求めた距離と、当該距離に係る複数のセル群を特定する情報とを統合部１２４に出力する（ステップＳ１１２）。
【００９５】
次に、統合部１２４が、ステップＳ１１２にて距離計算部１２３により求められた距離と、当該距離に係る複数のセル群を特定する情報とを入力される。そして、統合部１２４は、ステップＳ１１２にて計算された当該距離が所定の閾値Ｄ以下である場合に、ステップＳ１１０にて入力部１２１により入力されたラベル付き画像フレームにおいて、当該距離に係る複数のセル群に同じラベルを付けなおす。そして、統合部１２４が、ラベルを付けなおした画像フレームを出力部１２５に出力する（ステップＳ１１３）。
【００９６】
最後に、出力部１２５が、ステップＳ１１３にて統合部１２４より入力した画像フレームを例えば位置追跡装置等の他の装置に出力する（ステップＳ１１４）。
【００９７】
続いて、本実施形態にかかる画像処理システム１の作用及び効果について説明する。本実施形態の画像処理システム１によれば、入力された画像フレーム内の任意のセルが現時点における注目セル（以下、「現時点注目セル」ともいう。）として選定されたときに、ラベル付け部１１４は、当該選定された現時点注目セルにラベル保持部１１５が保持しているラベルを付ける。このとき、ラベル付け部１１４は、当該現時点注目セルと画像フレーム上で隣接し、且つ現時点以前の時点において注目セルであった先時点セル（以下、「先時点隣接注目セル」ともいう。）がある場合には、当該先時点隣接注目セルに付けられたラベル（先ラベル）と同じラベル番号を当該現時点注目セルに付ける。複数の注目セルが隣接していることは、当該複数の注目セルが同一の撮像対象物を表している場合が多いと想定され、当該複数の注目セルには同一のラベル番号が付けられる。
【００９８】
また、ラベル付け部１１４は、先ラベルが複数の場合に、該複数の先ラベルのうち所定の順序上で最も先立つラベルを現時点注目セルに付ける。更に、ラベル付け部１１４は、該最も先立つラベルを先時点隣接注目セルに付けなおす。先ラベルが複数の場合は、先時点隣接注目セルが複数有る場合である。このとき、当該複数の先時点隣接注目セル同士が互いに隣接していない場合には、当該複数の先時点隣接注目セルが現時点注目セルを介して隣接している（つながっている）にもかかわらず、現時点以前のラベリングにおいて当該複数の先時点隣接注目セルには互いに異なるラベル番号が付けられている。これに対して、ラベル付け部１１４は、当該最も先立つラベルを先時点隣接注目セルに付けなおすことにより、現時点注目セルを介してつながっているにもかかわらず互いに異なるラベル番号が付けられている複数の先時点隣接注目セルと、当該現時点注目セルとに、全て同じラベル番号を付けることができる。
【００９９】
以上のことにより、つながっている全ての注目セルに同じラベル番号を付けるために、画像フレームに対して例えば２回の走査を行う必要がなくなり、１回の走査だけでも正しいラベリングを行うことができる。したがって、ラベリングにかかる処理時間を短縮することができる。
【０１００】
また、画像フレームに対する１回目の走査でラベリングが完了されるため、例えば仮ラベル付きの画像データを２回目の走査時まで一時的に記憶しておく必要がなくなる。このため、ラベリングを完了するために必要なメモリ量を低減することができる。
【０１０１】
また、本実施形態においては、ラベル保持部１１５の再利用キューに、ラベルの付けなおしの際に削除されるラベル（既に付けられていたラベル）が再利用ラベルとして保持される。そして、この再利用ラベルは、ラベル付け部１１４によるラベリングの際に再び使用される。このことにより、装置全体で使用可能なメモリ量（ラベル番号の限度量）を効果的に活用することが可能となる。
【０１０２】
また、本実施形態においては、注目セル選定部１１３による処理は、複数の画素からなるセルを単位として行われる。このとき、注目セル選定部１１３は、一定の判断基準を超える画素を所定の個数Ｘ以上有しているセルを注目セルとして選定する。一方、例えば僅かな個数のノイズがセルに含まれているときなど、一定の判断基準を超える画素であってもその数が所定の個数Ｘにいたっていない場合には、注目セルとして選定されない。このことにより、ノイズ画素に対する対応性（耐ノイズ性）を高めることができる。また、例えば注目セルとして選定されないセルにはラベルを付けないようにすることができ、その結果、装置全体で使用可能なメモリ量（ラベル番号の限度量）を効果的に活用することが可能となる。
【０１０３】
また、本実施形態においては、上記判断基準として画素の輝度が用いられている。画素の輝度は、当該画素がノイズであるか否かを判断するのに好適な基準となるからである。
【０１０４】
また、本実施形態においては、ブロック分け部１１２が、一つの画像フレームを複数のブロックに分ける。このとき、一つのブロックは複数のセルからなる。そして、注目セル選定部１１３およびラベル付け部１１４により行われる各処理は、上記複数のブロック毎に並列的に行われる。このことにより、各処理にかかる時間を短縮することができ、リアルタイム処理を可能とする。
【０１０５】
また、本実施形態においては、重心位置算出部１２２が、同じラベルが付けられた一つ以上のセルの群における重心位置を算出すると、距離計算部１２３が、任意のブロックにおけるセル群の重心位置と、他のブロックにおけるセル群の重心位置との間の距離を計算する。そして、上記距離が所定の閾値Ｄ以下である場合に、統合部１２４が、当該距離にかかる複数のセル群に同じラベルを付けなおす。
【０１０６】
本実施形態においては、注目セル選定部１１３およびラベル付け部１１４により行われる各処理は、上述したようにブロック毎に並列的に行われる。このため、例えば複数のブロックに跨って存在する撮像対象物の場合には、ブロック毎に異なるラベルが付けられる可能性がある。これに対して、本実施形態においては、統合部１２４が、同一の撮像対象物を表しているにもかかわらず異なるラベルが付けられているセル群同士を同一のラベルに統合する。このことにより、同一の撮像対象物を表している画像データには、同一のラベルを付けることができる。また、この統合処理は、画像データではなく、配列（例えば上述した２次元配列のboundary[Ｂ][ｘｙ]など）をベースにして行われることができるため、長い処理時間を必要としない。
【０１０７】
以上、本発明の好適な実施形態について説明したが、本発明は上記実施形態に限定されないことは言うまでもない。
【０１０８】
例えば、上記実施形態においては、「隣接」とは、任意のセルと一面が接すること（いわゆる４近傍型のラベリング）として説明したが、これに限られることなく、いわゆる８近傍型のラベリングにおいても、本発明の概念を適用することができる。
【０１０９】
また、上記実施形態においては、撮像対象物であるマーカの数として例えば３つを一例として説明したが、これよりもっと多くの撮像対象物に対しても本発明の概念を適用することができる。
【０１１０】
更に、例えば、上記実施形態においては、背景セルにはラベルを付けないこととしたが、これに限られることなく、背景セルには当該セルが背景セルであることを表すラベルを付けても良い。
【図面の簡単な説明】
【０１１１】
【図１】画像処理システムの構成概要図である。
【図２】撮像装置により撮像された一つの画像フレームをイメージした図である。
【図３】ブロック分け動作を説明するための図である。
【図４】現時点セル特定処理を説明するための図である。
【図５】ラベルが保持されている様子を示す図である。
【図６】ラベリング方法を説明するための図である。
【図７】ラベリング方法を説明するための図である。
【図８】ラベリング方法を説明するための図である。
【図９】ラベリング方法を説明するための図である。
【図１０】ラベル付き画像フレームの一例を示す図である。
【図１１】画像処理システムの全体の動作を示すシーケンス図である。
【図１２】注目セル選定処理を説明するためのフローチャートである。
【図１３】ラベリングの方法を説明するためのフローチャートである。
【符号の説明】
【０１１２】
１…画像処理システム、１００…ラベリング装置、１１０…第１ラベリング部、１１１…入力部、１１２…ブロック分け部、１１３…注目セル選定部、１１４…ラベル付け部、１１５…ラベル保持部、１２０…第２ラベリング部、１２１…入力部、１２２…重心位置算出部、１２３…距離計算部、１２４…統合部、１２５…出力部、２００…撮像装置。
【図１】
2008097529.tif 000008
【図２】
2008097529.tif 000009
【図３】
2008097529.tif 000010
【図４】
2008097529.tif 000011
【図５】
2008097529.tif 000012
【図６】
2008097529.tif 000013
【図７】
2008097529.tif 000014
【図８】
2008097529.tif 000015
【図９】
2008097529.tif 000016
【図１０】
2008097529.tif 000017
【図１１】
2008097529.tif 000018
【図１２】
2008097529.tif 000019
【図１３】
2008097529.tif 000020