JP2000285240A - 画像処理装置、画像処理方法及び画像処理プログラムを記録した記録媒体 - Google Patents

画像処理装置、画像処理方法及び画像処理プログラムを記録した記録媒体

Info

Publication number
JP2000285240A
JP2000285240A JP11092094A JP9209499A JP2000285240A JP 2000285240 A JP2000285240 A JP 2000285240A JP 11092094 A JP11092094 A JP 11092094A JP 9209499 A JP9209499 A JP 9209499A JP 2000285240 A JP2000285240 A JP 2000285240A
Authority
JP
Japan
Prior art keywords
pixel
index
labeling
image
investigation
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.)
Pending
Application number
JP11092094A
Other languages
English (en)
Inventor
Akira Murakawa
彰 村川
Keisuke Hashimoto
圭介 橋本
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.)
Minolta Co Ltd
Original Assignee
Minolta Co Ltd
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 Minolta Co Ltd filed Critical Minolta Co Ltd
Priority to JP11092094A priority Critical patent/JP2000285240A/ja
Priority to US09/538,735 priority patent/US6643400B1/en
Publication of JP2000285240A publication Critical patent/JP2000285240A/ja
Priority to US10/369,809 priority patent/US6731801B2/en
Pending legal-status Critical Current

Links

Landscapes

  • Image Processing (AREA)
  • Image Analysis (AREA)

Abstract

(57)【要約】 【課題】 画像の連結領域のラベリング処理を一度の走
査により行うことによりラベリング処理の高速化を実現
する画像処理装置、方法及び画像処理プログラムを記録
した記録媒体を提供する。 【解決手段】 画像を走査し、一の連結領域を構成する
一の画素(画素値が「1」の画素)を検出すると、その
一の画素の隣接画素が一の画素とともに一の連結領域を
構成するか否かを調査し、その隣接画素がその連結領域
を構成すれば、その隣接画素に隣接する画素についてさ
らに同様に連結領域を構成するか否かを調査する。以
降、一の連結領域を構成する画素が連続して検出される
限り、同様の調査を行うことにより、最終的に一の連結
領域すなわち一の連結領域を構成する全画素を検出す
る。その後、この検出された全画素を同一番号でラベリ
ングする。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、画像の連結領域を
ラベリングする画像処理技術に関する。
【0002】
【従来の技術】画像認識等の処理の前段の処理として、
二値画像において連続する同一画素値の画素により形成
される領域(以下「連結領域」という。)を検出し、こ
の連結領域に対しラベル番号を付与する処理であるラベ
リング処理がある。このラベリング処理の方法として従
来より種々の方法が考案されている。
【0003】図13は、従来の画像の連結領域のラベリ
ング処理の一つを説明した図である。図において、元の
画像20は3つの連結領域A、B、Cを含んでいる。こ
れらの連結領域A、B、Cは画素値が「1」の画素から
なる連続した領域である。画像の連結領域をラベリング
する際には、画像全体を走査し各画素の画素値を調べ、
連結領域を構成すると一応判断された画素について仮の
ラベル番号を付与する。このとき、仮のラベル番号は必
ずしも正確ではないため、後でラベル番号の付け替え
(リラベリング)を行う場合がある。そのため、リラベ
リングのための情報をテーブル51、53に格納する。
その後、再度、画像を走査し、テーブル51、53を用
いて仮のラベル番号を真のラベル番号に付けかえる。
【0004】具体的には、1回目の走査において、画像
20の走査中に画素値「1」の画素を検出すると、その
画素に隣接する画素において既にラベル番号が付与され
た画素があるか否かを調べ、ラベルが付与された隣接画
素があるときは、その隣接画素と同じラベル番号をその
検出した画素に付与する。ラベル番号が付与された隣接
画素が複数あるときは、所定の優先順位に基づいて優先
順位のより高い方向にある隣接画素と同じラベル番号を
付与する。ラベル番号が付与された隣接画素がないとき
は、検出した画素に新たなラベル番号を付与する。この
ように画像中を走査していき、画素値が「1」の画素に
対してラベル番号を付与していく。
【0005】以上のようにしてラベル番号が付与された
画像では、同じラベル番号が付与された画素が1つの連
結領域を形成する。ところが、連結領域の形状によって
は、1つの連結領域に対して複数のラベル番号が付与さ
れる場合がある。例えば、図13に示すように、画像2
0の連結領域Aは上記のようなラベル付けの結果、画像
20'において、ラベル番号2、3、4により3つの領
域としてラベリングされている。そこで、このラベル付
けの過程において、ラベル番号2、3、4が付された3
つの領域が同じ連結領域であることを示す情報を格納し
た連結テーブル51を作成する。さらに、ラベリング編
集を行い、ラベル番号2、3、4を2とし、それにより
空きが生ずるラベル番号3、4を、ラベル番号5、6が
付与されている領域に付けかえるための変換テーブル5
3を作成する。
【0006】その後、2回目の走査において、画像2
0'の各画素を走査し、変換テーブル53の情報を参照
してラベル番号を真のラベル番号に変換(リラベリン
グ)することにより最終的に画像20"のように各領域
が正しくラベリングされる。
【0007】
【発明が解決しようとする課題】しかしながら、上記の
方法では、画像全体を2回走査する必要があり、ラベリ
ング処理に時間がかかる。画像のサイズが増大するほど
この処理時間は増加する。
【0008】本発明は上記課題を解決すべくなされたも
のであり、その目的とするところは、画像の連結領域の
ラベリング処理の高速化を実現する画像処理装置、画像
処理方法及び画像処理プログラムを記録した記録媒体を
提供することにある。
【0009】
【課題を解決するための手段】上記課題を解決するため
に、本発明に係る画像処理装置は以下の構成を有する。
すなわち、画像処理装置は、画像の連結領域をラべリン
グする画像処理装置であって、画像の各画素が調査済み
であるか否かを示す調査済みフラグからなるフラグ手段
と、隣接画素が調査される場合のその中心の画素を特定
するためのインデックスを記憶する調査候補スタック手
段と、連結領域を構成する画素のインデックスを格納す
る連結領域記憶手段と、連結領域を構成する画素を検出
する連結領域検出手段と、連結領域記憶手段に格納され
ている画素のインデックスにより特定される画素をラべ
リングするラべリング手段とを備える。このとき、連結
領域検出手段は、画像を走査し、画像の各画素が連結領
域を構成する画素であるか否かを調査し、調査が終了し
た画素の調査済みフラグを設定する。連結領域検出手段
は、上記調査において一の連結領域を構成する画素を最
初に検出したときは、1)該検出した画素のインデック
スを調査候補スタック手段にプッシュするとともに連結
領域記憶手段に記憶させ、2)上記調査候補スタック手
段において少なくとも1つのインデックスが格納されて
いる間中、a)上記調査候補スタック手段からインデッ
クスをポップし、該ポップしたインデックスが示す画素
の隣接画素のうち上記調査済みフラグを参照し未調査で
あると判断した隣接画素について、該隣接画素が上記一
の連結領域を構成する画素か否かを調査し、b)該隣接
画素が上記一の連結領域を構成する画素であるときは該
隣接画素のインデックスを上記調査候補スタック手段に
プッシュするとともに上記連結領域記憶手段に記憶さ
せ、c)該隣接画素の調査終了を示す済みフラグを設定
することを繰り返す。
【0010】上記の画像処理装置において、ラベリング
手段は、画素をラベリングする際に、連結領域記憶手段
に格納されているインデックスが示す画素からなる領域
の大きさを算出し、その算出した領域の大きさが所定値
よりも大きいときに、または、所定値よりも小さいとき
に、それらの画素についてラベリングを行わないように
してもよい。
【0011】本発明に係る画像処理方法は、画像の連結
領域をラべリングする画像処理方法であって、画像を走
査し、画像の各画素が連結領域を構成する画素であるか
否かを調査し、調査が終了した画素について調査の終了
を示すフラグを設定する。その調査において一の連結領
域を構成する画素を最初に検出したときに、1)検出し
た画素を特定するためのインデックスを調査候補スタッ
ク手段にプッシュするとともに連結領域記憶手段に記憶
させ、2)上記調査候補スタック手段において少なくと
も1つのインデックスが格納されている間中、a)上記
調査候補スタック手段からインデックスをポップし、ポ
ップしたインデックスが示す画素の隣接画素のうち上記
フラグを参照し未調査であると判断した隣接画素につい
て、隣接画素が一の連結領域を構成する画素か否かを調
査し、b)その隣接画素が一の連結領域を構成する画素
であるときはその隣接画素のインデックスを調査候補ス
タック手段にプッシュするとともに連結領域記憶手段に
記憶させ、c)その隣接画素の調査終了を示すフラグを
設定することを繰り返す。その後、3)調査候補スタッ
ク手段に格納されているインデックスがなくなったとき
に、連結領域記憶手段に格納されているインデックスを
全て読み出し、読み出したインデックスが示す画素を同
一番号でラベリングする。
【0012】本発明に係る記録媒体は、画像の連結領域
をラべリングする画像処理プログラムを記録したコンピ
ュータ読み取り可能な記録媒体である。その画像処理プ
ログラムは、画像を走査し、画像の各画素が連結領域を
構成する画素であるか否かを調査し、調査が終了した画
素について調査の終了を示すフラグを設定する手順と、
調査において一の連結領域を構成する画素を最初に検出
したときに、1)検出した画素を特定するためのインデ
ックスを調査候補スタック手段にプッシュするとともに
連結領域記憶手段に記憶させる手順と、2)調査候補ス
タック手段において少なくとも1つのインデックスが格
納されている間中、a)調査候補スタック手段からイン
デックスをポップし、ポップしたインデックスが示す画
素の隣接画素のうちフラグを参照し未調査であると判断
した隣接画素について、隣接画素が一の連結領域を構成
する画素か否かを調査し、b)隣接画素が一の連結領域
を構成する画素であるときは隣接画素のインデックスを
調査候補スタック手段にプッシュするとともに連結領域
記憶手段に記憶させ、c)隣接画素の調査終了を示すフ
ラグを設定することを繰り返す手順と、3)調査候補ス
タック手段に格納されているインデックスがなくなった
ときに、連結領域記憶手段に格納されているインデック
スを全て読み出し、該読み出したインデックスが示す画
素を同一番号でラベリングする手順とをコンピュータに
実行させる。
【0013】
【発明の実施の形態】以下、添付の図面を用いて本発明
に係る画像処理装置の実施の形態を詳細に説明する。本
実施形態の画像処理装置は、二値画像において、画素値
が等しい画素が連続してなる領域を連結領域として検出
し、ラベリングするものである。以下、詳細を説明す
る。
【0014】(画像処理装置の構成)図1に本実施形態
の画像処理装置(以下、「システム」という。)の概略
構成図を示す。図1に示すように、システムは中央演算
処理(以下、「CPU」という。)を備え、システム全
体を制御する制御装置1を中心として構成される。CP
Uには例えばインテル社製のペンティアム等が用いられ
る。この制御装置1には、画像あるいは文字等の表示
や、操作のための表示等を行うディスプレイ2と、各種
入力、指示操作等を行うためのキーボード3およびマウ
ス4と、データ記録媒体であるフロッピー(登録商標)
ディスク装置5aおよびハードディスク装置6と、文字
や画像データ等を印刷するプリンタ7と、画像データを
取り込むためのスキャナ8と、CD−ROM9aに格納
されたデータを読み出すためのCD−ROM装置9b
と、音声出力のためのスピーカ10と、音声入力のため
のマイクロホン11とが接続される。
【0015】図2に本システムのブロック図を示す。C
PU201には、データバス220を介して、本システ
ムを制御するプログラムが格納されているROM203
と、CPU201が制御のために実行するプログラムや
データを一時的に格納するRAM204とが接続され
る。また、CPU201にデータバス220を介して接
続される回路には、画像あるいは文字等の表示のためデ
ィスプレイ2を制御する表示制御回路205と、キーボ
ード3からの入力を転送制御するキーボード制御回路2
06と、マウス4からの入力を転送制御するマウス制御
回路207と、フロッピーディスク装置5bを制御する
フロッピーディスク装置制御回路208と、ハードディ
スク装置6を制御するハードディスク装置制御回路20
9と、プリンタ7への出力を制御するプリンタ制御回路
210と、スキャナ8を制御するスキャナ制御回路21
1と、CD−ROM装置9bを制御するCD−ROM装
置制御回路212と、スピーカ10を制御するスピーカ
制御回路213と、マイクロホン11を制御するマイク
ロホン制御回路214とがある。さらに、CPU201
には、システムを動作させるために必要な基準クロック
を発生させるためのクロック202が接続され、また、
各種拡張ボードを接続するための拡張スロット215が
データバス220を介して接続される。なお、拡張スロ
ット215にSCSIIボードを接続し、このSCSI
Iボードを介してフロッピーディスク装置5b、ハード
ディスク装置6、スキャナ8またはCD−ROM装置9
b等を接続してもよい。
【0016】なお、上記システムにおいて、データ保管
媒体としてはフロッピーディスク5a、ハードディスク
装置6を用いているが、光磁気ディスク(MO)等の他
の情報記録媒体でもよい。また、画像データ入力装置と
してスキャナ8を用いているが、スチルビデオカメラや
デジタルカメラ等の他のデータ入力装置であってもよ
い。さらに、出力装置としてプリンタ7を用いている
が、デジタル複写機等の他の出力装置であってもよい。
また、本システムでは、データの管理システムを実現す
るプログラムをROM203に格納する。しかし、本プ
ログラムの一部または全部をフロッピーディスク5aや
ハードディスク装置6やCD−ROM9b等の情報記録
媒体に格納しておき、必要に応じて情報記録媒体よりプ
ログラムおよびデータをRAM204に読み出し、これ
を実行させてもよい。
【0017】(画像処理装置のメインルーチン)図3は
本システムにおいてCPU201が実行するプログラム
のメインルーチンを示すフローチャートである。なお、
本システム(CPU201)はユーザの操作に従い各処
理を順次実行していく。
【0018】本プログラムが起動されると、まず、以降
の各処理で必要なフラグ等のイニシャライズや、初期メ
ニュー画面の表示等を行う初期設定処理が行われる(S
1)。初期メニュー画面上では「連結領域のラベリン
グ」、「その他」等の処理を選択するための所定のアイ
コンが表示されており、ユーザがこのアイコンを選択す
ると、そのアイコンに応じた処理が実行される。次に、
初期メニュー画面上でユーザによりいずれかの処理が選
択されたか否かが判定される(S2)。ステップS2に
おいて「連結領域のラベリング」が選択されれば、入力
した画像中における連結領域をラベリングする処理を行
う連結領域のラベリング処理(S3)へ進み、その後、
ステップS2へ戻る。ステップS2において「その他」
が選択されれば、連結領域のラベリング以外の所定の処
理であるその他処理(S4)を行い、その後、ステップ
S2へ戻る。ステップS2において「終了」が選択され
れば、システムの動作を終了するための所定の後処理
(S5)を行い、本制御を終了する。ステップS2にお
いて何も選択されない場合は、ユーザによりいずれかの
処理が選択されるのを待つ。
【0019】その他処理(ステップS4)及び後処理
(ステップS5)については、一般的な情報処理システ
ムにおいて使用される処理と基本的に同様であるので、
ここでの説明は省略する。以下、連結領域のラベリング
処理(ステップS3)について説明する。
【0020】(連結領域のラベリング処理)本画像処理
装置は、「0」または「1」の値をとる画素から構成さ
れる二値画像において、画素値が「1」の画素からなる
連続領域を連結領域として検出し、ラベリングする。こ
のとき、画像処理装置は画像を走査することにより画像
中の連結領域を検出するが、その走査は図4に示すよう
に、まず、画像20の左上端から右方向(以下、「x方
向」という)に走査し、画像20の右端に到達すると、
画像の左端まで戻り、下方向(以下、「y方向」とい
う)に1ライン分シフトした位置からx方向へ走査して
いく。
【0021】画像処理装置は、図4に示すように画像2
0内に連結領域Dがあるとき、画像20を走査し、一の
連結領域Dを構成する一の画素a(画素値が「1」の画
素)を最初に検出すると、その画素aの隣接画素が画素
aとともに一の連結領域Dを構成するか否かを調査し、
その隣接画素がその連結領域Dを構成する画素であれ
ば、その隣接画素に隣接する画素について同様に連結領
域Dを構成する画素であるか否かを調査する。その隣接
画素の隣接画素において連結領域Dを構成する画素があ
れば、さらに、その隣接画素の隣接画素に隣接する画素
を同様に調査する。以降、同様にして連結領域Dを構成
する画素が連続して検出される限り、その画素に隣接す
る画素に対して同様の調査を行う。
【0022】すなわち、図5に示すように、連結領域D
を構成する画素として最初に画素aを検出すると、その
画素aの隣接画素の画素値が「1」であるか否かを調査
する。画素aの隣接画素のうち画素値が「1」である画
素bが見つかると、さらに、その画素bの隣接画素を調
査する。画素bの隣接画素のうち画素値が「1」である
画素cが見つかると、さらに、その画素cの隣接画素を
調査する。以降、同様に、画素値が「1」である画素が
連続して見つかる限り、調査を続行する。これのより、
最終的に一の連結領域Dすなわち一の連結領域Dを構成
する全画素を検出できる。その後、検出した全画素につ
いて同一番号でラベリングする。
【0023】このため、画像処理装置は調査状態フラグ
と、次調査候補スタックと、連結領域スタックとを有す
る。これらは例えば図6に示すようにRAM204上に
論理的に構成される。調査状態フラグ15は、画像20
の各画素に対応し、各画素について調査済みであるか否
かを示す調査済みフラグからなる。例えば、調査状態フ
ラグは一次元配列データで構成され、画素のインデック
スで指定される一の配列が一の調査済みフラグに対応す
る。ここで、インデックスは画像中の各画素を特定する
ための番号等の情報である。調査済みフラグは「1」
(ON)のときはその画素が調査済みであることを示
し、「0」(OFF)のときはその画素が未調査である
ことを示す。次調査候補スタック17は、その画素の隣
接画素が後に調査されることになる画素のインデックス
を格納するスタックである。連結領域スタック19は、
連結領域を構成する画素のインデックスを格納するスタ
ックである。また、両スタック17、19は後入れ先出
し機能を有する記憶手段であり、プッシュされることに
よりスタック17、19にデータが格納され、ポップさ
れることにより格納されているデータがスタック17、
19から取出される。なお、両スタック17、19には
画素のインデックスのかわりに画素を特定するための他
の情報を格納してもよい。また、両スタック17、19
は後入れ先出し機能を有しない記憶手段で構成すること
もできる。この場合は、データを記憶手段から読み出し
たときにそのデータを読み出したという情報を別途管理
する必要がある。
【0024】上記のような連結領域のラベリング処理
(ステップS3)を図7及び図8のフローチャートを用
いて説明する。
【0025】なお、以下の説明では、ラベリング処理を
行う画像として図9に示す画像21を用いている。画像
21は5画素×5画素のサイズであり、2つの連結領域
E、Fを有する。図9の(a)において画像21の各画
素に示された値はその画素値を示し、図9の(b)にお
いて画像21の各画素に割り当てられたカッコ内の数字
はその画素のインデックスを示す。この場合、インデッ
クスは画素の座標値(x、y)に基づき、画素のインデ
ックス=x+y×(画像のx方向サイズ)の式で求め
る。
【0026】図7のフローチャートを説明する。本処理
に入ると、最初に、二値画像21の画像データを入力す
る(S301)。すなわち、二値画像21の画像データ
をRAM204にロードする。次に、調査状態フラグ1
5を作成する(S302)。すなわち、調査状態フラグ
15の作業領域をRAM204上の所定領域に確保する
とともに、調査状態フラグ15を構成する調査済みフラ
グを「0」に初期化する。なお、調査状態フラグ15
は、各画素の画素値が複数ビットで構成されるときは、
その複数ビットのうちの1ビットを調査済みフラグとし
て割り当てることにより実現することもできる。
【0027】次に、次調査候補スタック17及び連結領
域スタック19を作成する(S303、S304)。す
なわち、次調査候補スタック17及び連結領域スタック
19の作業領域をRAM204上の所定領域に確保す
る。次に、変数SIZEX、SIZEY、LABELを
初期化する(S305)。具体的には、変数SIZEX
は画像21のx方向サイズ値(ここでは、5)に、変数
SIZEYは画像21のy方向サイズ値(ここでは、
5)に、変数LABELは1に設定する。変数LABE
Lは連結領域をラベリングする際のラベル番号を与え
る。次に、調査位置のy座標を与える変数yを0に初期
化し(S306)、さらに、調査位置のx座標を与える
変数xを0に初期化する(S307)。
【0028】位置(x,y)における画素について、そ
の画素が未調査で、かつ、ラベリングされているか(す
なわち、画素値が「1」であるか)否かを判断する(S
308)。画素が未調査か否かは調査状態フラグ15を
参照することにより判断でき、これにより重複調査を回
避し処理時間を短縮できる。なお、このステップでは、
画像内の独立した連結領域を構成する画素の1つを最初
に検出することを目的としている。以下このステップで
検出される画素を「連結領域の最初の画素」という。
【0029】画素が未調査でかつラベリングされている
とき、すなわち、連結領域の最初の画素が検出されたと
きは、その画素を含む連結領域を検出してラベリングす
る連結領域検出処理(S309)を行い、ステップS3
11に進む。この連結領域検出処理の詳細は後述する。
一方、画素が調査済みまたはラベリングされていないと
きは、調査した画素について調査済みフラグをONに設
定し(S310)、ステップS311に進む。
【0030】ステップS311において調査位置をx方
向にシフトさせるために変数xをインクリメントし、そ
の後、変数xと変数SIZEXとを比較することにより
調査位置が画像21の範囲外であるか否かを判定する
(S312)。判定した結果、調査位置が画像21の範
囲内であれば、ステップS308に戻り、x方向にシフ
トした新たな位置で上記と同様に連結領域の調査を行
う。一方、判定した結果、次の調査位置が画像21の範
囲外になるときは、調査位置をy方向にシフトさせるた
めに変数yをインクリメントし(S313)、その後、
変数yと変数SIZEYとを比較することにより調査位
置が画像21の範囲外であるか否かを判定する(S31
4)。調査位置が画像21の範囲内であれば、ステップ
S307に戻り、画像21の左端で前回よりも1ライン
下方の新たな位置で上記と同様に連結領域の調査を行
う。次の調査位置が画像21の範囲外になるときはリタ
ーンする。以上の処理を、画像21の全体を調査し、画
像に含まれる全ての連結領域を検出してラベリングする
まで繰り返す(S307〜S314)。
【0031】次に、図8のフローチャートを用いて上記
の連結領域検出処理(ステップS309)を説明する。
本処理では、連結領域の最初の画素の周辺にある画素に
ついて、それらの周辺画素が同一の連結領域を構成する
か否かの調査を行い連結領域を検出し、その領域をラベ
リングする。
【0032】具体的には、まず、連結領域の最初の画
素、すなわち、現在の座標位置(x,y)にある画素の
インデックスを次調査候補スタック17にプッシュし
(S401)、さらに連結領域スタック19にもプッシ
ュする(S402)。連結領域の最初の画素の調査済み
フラグをONにする(S403)。その後、次調査候補
スタック17からインデックスをポップする(S40
4)。ポップしたインデックスが示す画素に隣接する画
素Pi(i=0〜7)の座標をそれぞれ設定する(S4
05)。ここで、隣接画素Piは図10に示すように中
心の画素(画素a)の周囲の8画素において左下から左
回りに順にP0、P1、P2、…P7の画素を設定してい
る。隣接画素として中心画素の上下左右にある4画素を
設定してもよい。
【0033】次に、隣接画素Piを指定するための変数
iを0に初期化する(S406)。変数iが示す隣接画
素Piが、未調査画素でかつラベリングされている画素
か否かを判断する(S407)。画素が未調査でかつラ
ベリングされているときは、その画素Piのインデック
スを両スタック17、19にプッシュする(S40
8)。その後、画素Piの調査済みフラグをONにする
(S409)。画素が調査済みまたはラベリングされて
いないときは、これらのステップ(S408、S40
9)はスキップされる。その後、変数iをインクリメン
トし(S410)、全ての隣接画素Piについて、その
画素が連結領域の画素であるか否かの調査が終了するま
で上記処理(S406〜S411)を繰り返す。
【0034】全ての隣接画素Piについて調査が終了す
ると、次調査候補スタック15に格納されているインデ
ックスの有無を確認し(S412)、そのスタック15
中に格納されたインデックスがあるときはステップS4
04に戻り、次調査候補スタック15に格納されている
インデックスがなくなるとステップS413に進む。こ
のように、次調査候補スタック15に格納されているイ
ンデックスが存在する限り、次調査候補スタック15に
格納されているインデックスが示す画素の隣接画素につ
いて連結領域の調査が行われる(S404〜S41
2)。次調査候補スタック15に格納されているインデ
ックスがなくなったときに連結領域スタック17に格納
されている全インデックスが示す画素は1つの連結領域
を構成する。
【0035】次調査候補スタック15に格納されている
インデックスがなくなると、連結領域スタック17に格
納されているインデックスの有無を確認する(S41
3)。連結領域スタック17に格納されているインデッ
クスが無いときはリターンする。連結領域スタック17
に格納されているインデックスがあるときは、連結領域
スタック17から全インデックスをポップし(S41
4)、ポップしたインデックスが示す画素を変数LAB
ELが示すラベル番号でラベリングする(S415)。
その後、変数LABELをインクリメントし(S41
6)、リターンする。
【0036】なお、上記の処理において、連結領域の大
きさが所定値よりも小さいときはそれをノイズとして扱
い、ラベリング処理を行わないようにしてもよい。この
ためには、例えば、上記フローチャートのステップS3
05において変数SUMを0に初期化する処理を追加
し、また、ステップS402とS403の間及びステッ
プS408とS409の間に、変数SUMをインクリメ
ントするステップを追加する。さらに、ステップS41
3を、変数SUMを所定値と比較し、変数SUMが所定
値以上のときにステップS414に進み、それ以外のと
きはリターンするように変更する。この所定値は例えば
8画素未満からなる小さな連結領域をノイズとして無視
する場合は8に設定する。さらに、連結領域サイズが、
最大サイズを超えたときに連結領域のラベリング処理を
打ち切るようにしてもよい。このときは、ステップS4
13を、変数SUMを所定値(最大サイズ値)と比較
し、変数SUMが所定値以上のときはリターンし、それ
以外はステップS414に進むように変更する。以上の
場合、連結領域のサイズをそれを構成する画素数により
求めたが、連結領域のサイズを、検出された連結領域の
x方向のサイズとy方向のサイズから求めてもよい。
【0037】図11及び図12は上記のフローチャート
の処理に基づいて画像21について連結領域ラベリング
処理を行ったときの調査状態フラグ15、次調査候補ス
タック17及び連結領域スタック19の状態の変化を示
した図である。
【0038】図11の(a)は、調査開始前の状態を示
す。調査済みフラグは全て「0」に初期化されており、
両スタック17、19にはインデックスが格納されてい
ない。図11の(b)は、連結領域の最初の画素が検出
されたときの状態を示す。インデックス「6」の画素が
連結領域の最初の画素として検出されており、インデッ
クス「6」が次調査候補スタック17と連結領域スタッ
ク19にプッシュされている。図11の(c)は、次調
査候補スタック17からインデックス「6」がポップさ
れ、そのインデックスにより指定される連結領域の最初
の画素の隣接画素P0の調査が完了したときの状態を示
す。画素P0の調査済みフラグが「1」に設定されてい
る。図11の(d)は、隣接画素P1の調査が完了した
ときの状態を示す。画素P1は未調査でかつラベリング
されているため、それの調査済みフラグが「1」に設定
されるとともに、次調査候補スタック17及び連結領域
スタック19に画素P1のインデックス「11」がプッ
シュされている。図11の(e)は、隣接画素P2の調
査が完了したときの状態を示す。画素P2は未調査でか
つラベリングされているため、それの調査済みフラグが
「1」に設定されるとともに、次調査候補スタック17
及び連結領域スタック19に画素P2のインデックス
「12」がプッシュされている。
【0039】その後、連結領域の最初の画素の全ての隣
接画素P0〜P7について調査が終了すると、次調査候補
スタック17をポップし、インデックス「12」を取出
す。その後、このインデックス「12」により指定され
る画素の隣接画素を調査する。図12の(f)は、イン
デックス「12」で示される画素の隣接画素P0の調査
が完了したときの状態を示す。画素P0の調査済みフラ
グが「1」に設定されている。図12の(g)は、イン
デックス「12」で示される画素の隣接画素P 0〜P7
調査が完了したときの状態を示す。この隣接画素の調査
の結果、インデックス「13」、「8」が次調査候補ス
タック17及び連結領域スタック19にプッシュされて
いる。
【0040】その後、次調査候補スタック17が空にな
るまで順次ポップされ、次調査候補スタック17からポ
ップされたインデックスが示す画素についての隣接画素
を調査する。図12の(h)は、次調査候補スタック1
7から最後のインデックス「11」がポップされた後、
そのインデックス「11」が示す画素の隣接画素の調査
が完了したときの状態を示す。このときに連結領域スタ
ック19に格納されているインデックスは、画像21の
第1の連結領域Eを構成する画素を示している。
【0041】以上のように、本実施形形態の画像処理装
置は、独立した連結領域を領域毎に検出するため、連結
領域の検出と同時にその領域に対するラベル番号が決定
するため、従来のようなラベル番号の付け替え作業が不
要となる。したがって、一度の画像走査により連結領域
のラベリングが可能となるので、従来のような二度の走
査を行う必要がなく、高速にラベリング処理が行える。
また、連結領域を一つずつ検出してラベリングするた
め、並列処理が可能な環境であれば、例えば、画像のラ
ベリング処理時において、検出された一の連結領域に対
して画像認識等の所定の処理を行いながら平行して他の
連結領域の検出が可能となる。
【0042】
【発明の効果】本発明によれば、画像の連結領域を検出
する際に、その連結領域を構成する画素の一つを検出す
ると、その画素に隣接する画素について連結領域か否か
を調査し、以降、連結領域を構成する画素が検出される
と、その画素の隣接画素について同様に調査を行う。こ
れにより、独立した連結領域毎に連結領域を検出でき、
検出された連結領域毎にラベリングを行えばよく、従来
のようにラベル番号を付け替える必要がない。したがっ
て、一度の画像走査により連結領域のラベリングが可能
となり、従来のような二度の走査を行う必要がなく、高
速なラベリング処理が可能となる。また、連結領域を一
つずつ検出してラベリングするため、並列処理が可能な
環境であれば、例えば、画像のラベリング処理時におい
て、検出された一の連結領域に対して画像認識等の所定
の処理を行いながら平行して他の連結領域の検出が可能
となる。
【図面の簡単な説明】
【図1】 本発明に係る画像処理装置の構成の概略を示
す図。
【図2】 画像処理装置の制御装置を中心としたブロッ
ク図。
【図3】 画像処理装置におけるメインルーチンのフロ
ーチャート。
【図4】 連結領域の走査を説明した図。
【図5】 調査する隣接画素の拡大する様子を説明した
図。
【図6】 RAM上で論理的に構成された調査済みフラ
グ、次調査候補スタック及び連結領域スタックを示した
図。
【図7】 連結領域のラベリング処理のフローチャー
ト。
【図8】 連結領域検出処理のフローチャート。
【図9】 (a)連結領域を含む画像と、(b)その画
像の各画素のインデックスを示す図。
【図10】 調査画素の隣接画素を説明するための図。
【図11】 調査済みフラグ、次調査候補スタック及び
連結領域スタックの状態の変化を説明した図(その
1)。
【図12】 調査済みフラグ、次調査候補スタック及び
連結領域スタックの状態の変化を説明した図(その
2)。
【図13】 従来の連結領域のラベリング処理を説明し
た図。
【符号の説明】
1 制御装置 2 ディスプレイ 3 キーボード 4 マウス 5a フロッピーディスク,5b フロッピーディスク
装置 6 ハードディスク 9a CD−ROM,5b CD−ROM装置 15 調査状態フラグ 17 次調査候補スタック 19 連結領域スタック
───────────────────────────────────────────────────── フロントページの続き Fターム(参考) 5B057 CA06 CA12 CA16 CB06 CB12 CB16 CC02 CH01 CH11 DA08 DB02 DB08 DC07 DC14 5L096 AA07 EA35 FA13 FA72 GA34

Claims (9)

    【特許請求の範囲】
  1. 【請求項1】 画像の連結領域をラべリングする画像処
    理装置において、 画像の各画素が調査済みであるか否かを示す調査済みフ
    ラグからなるフラグ手段と、 隣接画素が調査される場合のその中心の画素を特定する
    ためのインデックスを記憶する調査候補スタック手段
    と、 連結領域を構成する画素のインデックスを格納する連結
    領域記憶手段と、 連結領域を構成する画素を検出する連結領域検出手段
    と、 上記連結領域記憶手段に格納されている画素のインデッ
    クスにより特定される画素をラべリングするラべリング
    手段とを備え、上記連結領域検出手段は、 画像を走査し、画像の各画素が連結領域を構成する画素
    であるか否かを調査し、調査が終了した画素の調査済み
    フラグを設定し、上記調査において一の連結領域を構成
    する画素を最初に検出したときに、 1)該検出した画素のインデックスを調査候補スタック
    手段にプッシュするとともに連結領域記憶手段に記憶さ
    せ、 2)上記調査候補スタック手段において少なくとも1つ
    のインデックスが格納されている間中、a)上記調査候
    補スタック手段からインデックスをポップし、該ポップ
    したインデックスが示す画素の隣接画素のうち上記調査
    済みフラグを参照し未調査であると判断した隣接画素に
    ついて、該隣接画素が上記一の連結領域を構成する画素
    か否かを調査し、b)該隣接画素が上記一の連結領域を
    構成する画素であるときは該隣接画素のインデックスを
    上記調査候補スタック手段にプッシュするとともに上記
    連結領域記憶手段に記憶させ、c)該隣接画素の調査終
    了を示す済みフラグを設定することを繰り返すことを特
    徴とする画像処理装置。
  2. 【請求項2】 上記ラベリング手段は、画素をラベリン
    グする際に、上記連結領域記憶手段に格納されているイ
    ンデックスが示す画素からなる領域の大きさを算出し、
    該算出した領域の大きさが所定値よりも大きいときに、
    それらの画素についてラベリングを行わないことを特徴
    とする請求項1記載の画像処理方法。
  3. 【請求項3】 上記ラベリング手段は、画素をラベリン
    グする際に、上記連結領域記憶手段に格納されているイ
    ンデックスが示す画素からなる領域の大きさを算出し、
    該算出した領域の大きさが所定値よりも小さいときに、
    それらの画素についてラベリングを行わないことを特徴
    とする請求項1記載の画像処理方法。
  4. 【請求項4】 画像の連結領域をラべリングする画像処
    理方法において、 画像を走査し、画像の各画素が連結領域を構成する画素
    であるか否かを調査し、該調査が終了した画素について
    調査の終了を示すフラグを設定し、上記調査において一
    の連結領域を構成する画素を最初に検出したときに、 1)該検出した画素を特定するためのインデックスを調
    査候補スタック手段にプッシュするとともに連結領域記
    憶手段に記憶させ、 2)上記調査候補スタック手段において少なくとも1つ
    のインデックスが格納されている間中、a)上記調査候
    補スタック手段からインデックスをポップし、該ポップ
    したインデックスが示す画素の隣接画素のうち上記フラ
    グを参照し未調査であると判断した隣接画素について、
    該隣接画素が上記一の連結領域を構成する画素か否かを
    調査し、b)該隣接画素が上記一の連結領域を構成する
    画素であるときは該隣接画素のインデックスを上記調査
    候補スタック手段にプッシュするとともに上記連結領域
    記憶手段に記憶させ、c)該隣接画素の調査終了を示す
    フラグを設定することを繰り返し、 3)上記調査候補スタック手段に格納されているインデ
    ックスがなくなったときに、上記連結領域記憶手段に格
    納されているインデックスを全て読み出し、該読み出し
    たインデックスが示す画素を同一番号でラベリングする
    ことを特徴とする画像処理方法。
  5. 【請求項5】 画素をラベリングする際に、上記連結領
    域記憶手段に格納されているインデックスが示す画素か
    らなる領域の大きさを算出し、該算出した大きさが所定
    値よりも大きいときに、それらの画素についてラベリン
    グを行わないことを特徴とする請求項4記載の画像処理
    方法。
  6. 【請求項6】 画素をラベリングする際に、上記連結領
    域記憶手段に格納されているインデックスが示す画素か
    らなる領域の大きさを算出し、該算出した大きさが所定
    値よりも小さいときは、それらの画素についてラベリン
    グを行わないことを特徴とする請求項4記載の画像処理
    方法。
  7. 【請求項7】 画像の連結領域をラべリングする画像処
    理プログラムであって、 画像を走査し、画像の各画素が連結領域を構成する画素
    であるか否かを調査し、該調査が終了した画素について
    調査の終了を示すフラグを設定する手順と、 上記調査において一の連結領域を構成する画素を最初に
    検出したときに、 1)該検出した画素を特定するためのインデックスを調
    査候補スタック手段にプッシュするとともに連結領域記
    憶手段に記憶させる手順と、 2)上記調査候補スタック手段において少なくとも1つ
    のインデックスが格納されている間中、a)上記調査候
    補スタック手段からインデックスをポップし、該ポップ
    したインデックスが示す画素の隣接画素のうち上記フラ
    グを参照し未調査であると判断した隣接画素について、
    該隣接画素が上記一の連結領域を構成する画素か否かを
    調査し、b)該隣接画素が上記一の連結領域を構成する
    画素であるときは該隣接画素のインデックスを上記調査
    候補スタック手段にプッシュするとともに上記連結領域
    記憶手段に記憶させ、c)該隣接画素の調査終了を示す
    フラグを設定することを繰り返す手順と、 3)上記調査候補スタック手段に格納されているインデ
    ックスがなくなったときに、上記連結領域記憶手段に格
    納されているインデックスを全て読み出し、該読み出し
    たインデックスが示す画素を同一番号でラベリングする
    手順とをコンピュータに実行させるためのプログラムを
    記録したことを特徴とするコンピュータ読み取り可能な
    記録媒体。
  8. 【請求項8】 上記ラベリングする手順において、上記
    連結領域記憶手段に格納されているインデックスが示す
    画素からなる領域の大きさを算出し、該算出した大きさ
    が所定値よりも大きいときに、それらの画素についてラ
    ベリングを行わないようにする手順をさらに備えたこと
    を特徴とする請求項7記載の記録媒体。
  9. 【請求項9】 上記ラベリングする手順において、上記
    連結領域記憶手段に格納されているインデックスが示す
    画素からなる領域の大きさを算出し、該算出した大きさ
    が所定値よりも小さいときは、それらの画素についてラ
    ベリングを行わないようにする手順をさらに備えたこと
    を特徴とする請求項7記載の記録媒体。
JP11092094A 1999-03-31 1999-03-31 画像処理装置、画像処理方法及び画像処理プログラムを記録した記録媒体 Pending JP2000285240A (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP11092094A JP2000285240A (ja) 1999-03-31 1999-03-31 画像処理装置、画像処理方法及び画像処理プログラムを記録した記録媒体
US09/538,735 US6643400B1 (en) 1999-03-31 2000-03-30 Image processing apparatus and method for recognizing specific pattern and recording medium having image processing program recorded thereon
US10/369,809 US6731801B2 (en) 1999-03-31 2003-02-21 Image processing apparatus and method for recognizing specific pattern and recording medium having image processing program recorded thereon

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP11092094A JP2000285240A (ja) 1999-03-31 1999-03-31 画像処理装置、画像処理方法及び画像処理プログラムを記録した記録媒体

Publications (1)

Publication Number Publication Date
JP2000285240A true JP2000285240A (ja) 2000-10-13

Family

ID=14044871

Family Applications (1)

Application Number Title Priority Date Filing Date
JP11092094A Pending JP2000285240A (ja) 1999-03-31 1999-03-31 画像処理装置、画像処理方法及び画像処理プログラムを記録した記録媒体

Country Status (1)

Country Link
JP (1) JP2000285240A (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7321687B2 (en) 2002-03-07 2008-01-22 Canon Kabushiki Kaisha Apparatus and method for image processing to label an object in a binary image
KR101772676B1 (ko) 2017-03-31 2017-08-29 (주) 엠브이텍 이미지 내 연결화소 검출 방법 및 장치

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7321687B2 (en) 2002-03-07 2008-01-22 Canon Kabushiki Kaisha Apparatus and method for image processing to label an object in a binary image
US7567708B2 (en) 2002-03-07 2009-07-28 Canon Kabushiki Kaisha Apparatus and method for image processing
KR101772676B1 (ko) 2017-03-31 2017-08-29 (주) 엠브이텍 이미지 내 연결화소 검출 방법 및 장치

Similar Documents

Publication Publication Date Title
US6643400B1 (en) Image processing apparatus and method for recognizing specific pattern and recording medium having image processing program recorded thereon
JP3747589B2 (ja) 画像特徴量比較装置および画像特徴量比較プログラムを記録した記録媒体
US5943679A (en) Multi-page document viewer having a focus image and recursively nested images of varying resolutions less than the resolution of the focus image
JP2001109895A (ja) 複数のディジタル画像の処理方法
US6035075A (en) Image deforming method and apparatus
JP2008287438A (ja) 画像処理装置及び画像検索方法
JP2008262425A (ja) 画像処理装置及びその制御方法
JP2001101426A (ja) ディジタル画像処理方法
US20080244384A1 (en) Image retrieval apparatus, method for retrieving image, and control program for image retrieval apparatus
US7280693B2 (en) Document information input apparatus, document information input method, document information input program and recording medium
JP2000040142A (ja) 画像表示装置
KR20050054445A (ko) 화상 관리 장치, 화상 관리 방법 및 프로그램
JP2010102502A (ja) 画像処理装置、画像処理方法およびプログラム
JP2000285240A (ja) 画像処理装置、画像処理方法及び画像処理プログラムを記録した記録媒体
JPH1166310A (ja) 画像特徴量抽出装置および方法並びに画像特徴量抽出プログラムを記録した記録媒体
JP4390523B2 (ja) 最小領域による合成画像の分割
JP2010245885A (ja) 画像処理装置
CN115376132A (zh) 扫描笔的数据处理方法及装置、存储介质、扫描笔
JP2005208977A (ja) 文書ファイリング装置および文書ファイリング方法
JP2002175532A (ja) 画像処理装置、画像処理方法および画像処理プログラムを記録した記憶媒体
JP2000285237A (ja) 画像処理装置、画像処理方法及び画像処理プログラムを記録した記録媒体
US6212294B1 (en) Image processing method and apparatus therefor
JP3199009B2 (ja) 画像蓄積・管理装置及び画像インデックス生成方法
JP2007295210A (ja) 画像処理装置、画像処理方法、画像処理プログラム、およびこれを記録した記録媒体
JPH04372063A (ja) 検索装置

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20041130

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20050329