(57)【要約】【課題】ラスタスキャン型画像データの閉領域のラベル付けに適用されるパイプライン処理方式のラベリング処理方法、ラベリング処理装置、画像処理装置、画像形成装置、及びコンピュータプログラムの提供。【解決手段】ラベリング処理装置は、周辺画素に対して設定してある優先順位に従って判断処理を行うことにより、注目画素に対して仮ラベルを付与する仮ラベル付与処理部１１１、周辺画素が予め決められたパターンの場合にのみ注目画素の仮ラベルと周辺画素の仮ラベルが示すラベルテーブル値との比較を行うことによって両者の関連性を判定し、当該ラベルテーブル値をアドレスとしたラベルテーブル値を注目画素の仮ラベルによって更新する仮ラベル連結処理部１１３を備える。【選択図】図１
2007334431.tif 000002
【特許請求の範囲】
【請求項１】
複数の画素からなる画像データについて画素値に応じた仮ラベルを各画素に付与することにより同種の画素からなる画素群を複数抽出し、抽出した画素群の間の関連性を検出し、検出結果に応じて付与した仮ラベルの更新を行うラベリング処理方法において、
任意の注目画素に仮ラベルを付与する際、該注目画素の周辺に存する複数の周辺画素の夫々に付与されている仮ラベルが示すテーブル値を付与すべきか否かを、各周辺画素に設定してある優先順位に従って順次的に判断し、付与すべしと判断した周辺画素の仮ラベルが示すテーブル値を前記注目画素に対して付与し、前記複数の周辺画素に付与されている仮ラベルが示すテーブル値が所定の組み合わせであるか否かを判断し、所定の組み合わせであると判断した場合、前記注目画素及び周辺画素の関連性を検出し、検出結果に応じて前記周辺画素の仮ラベルが示すテーブル値の一部を前記注目画素の仮ラベルにより更新することを特徴とするラベリング処理方法。
【請求項２】
複数の画素からなる画像データについて画素値に応じた仮ラベルを各画素に付与することにより同種の画素からなる画素群を複数抽出し、抽出した画素群の間の関連性を検出し、検出結果に応じて付与した仮ラベルの更新を行うラベリング処理装置において、
任意の注目画素に仮ラベルを付与する際、該注目画素の周辺に存する複数の周辺画素の夫々に付与されている仮ラベルが示すテーブル値を付与すべきか否かを、各周辺画素に設定してある優先順位に従って順次的に判断する手段と、付与すべしと判断した周辺画素の仮ラベルが示すテーブル値を前記注目画素に対して付与する手段と、前記複数の周辺画素に付与されている仮ラベルが示すテーブル値が所定の組み合わせであるか否かを判断する手段と、所定の組み合わせであると判断した場合、前記注目画素及び周辺画素の関連性を検出する手段と、検出結果に応じて前記周辺画素の仮ラベルが示すテーブル値の一部を前記注目画素に付与された仮ラベルにより更新する手段とを備えることを特徴とするラベリング処理装置。
【請求項３】
各周辺画素の仮ラベルが示すテーブル値が所定範囲の値を有するか否かを前記優先順位に従って順次的に判断する手段を備え、所定範囲の値を有すると判断した周辺画素の仮ラベルが示すテーブル値を前記注目画素に対して付与するようにしてあることを特徴とする請求項２に記載のラベリング処理装置。
【請求項４】
前記周辺画素の仮ラベルが示すテーブル値の大小関係を検出する手段を備え、検出した仮ラベルが示すテーブル値の大小関係に基づいて前記関連性を検出するようにしてあることを特徴とする請求項２に記載のラベリング処理装置。
【請求項５】
周辺画素同士の仮ラベルが示すテーブル値の大きさを比較する手段と、比較結果に基づいて更新すべきテーブル値が格納されているアドレスを指定する手段と、指定したアドレスのテーブル値を注目画素の仮ラベルにより更新する手段とを備えることを特徴とする請求項２乃至請求項４の何れか１つに記載のラベリング処理装置。
【請求項６】
請求項２乃至請求項５の何れか１つに記載のラベリング処理装置と、該ラベリング処理装置により付与された各画素の仮ラベルを用いて各画素の画素値を変更する手段とを備えることを特徴とする画像処理装置。
【請求項７】
請求項２乃至請求項５の何れか１つに記載のラベリング処理装置と、該ラベリング処理装置により付与された各画素の仮ラベルを用いて各画素の画素値を変更する手段と、画素値を変更することにより得られる画像データに基づいてシート上に画像形成を行う手段とを備えることを特徴とする画像形成装置。
【請求項８】
コンピュータに、複数の画素からなる画像データについて画素値に応じた仮ラベルを各画素に付与させることにより同種の画素からなる画素群を複数抽出させ、抽出させた画素群の間の関連性を検出させ、検出結果に応じて付与した仮ラベルの更新を行わせるコンピュータプログラムにおいて、
コンピュータに、任意の注目画素に仮ラベルを付与させる際、該注目画素の周辺に存する複数の周辺画素の夫々に付与されている仮ラベルが示すテーブル値を付与すべきか否かを、各周辺画素に設定してある優先順位に従って順次的に判断させるステップと、コンピュータに、付与させるべしと判断した周辺画素の仮ラベルが示すテーブル値を前記注目画素に対して付与させるステップと、コンピュータに、前記複数の周辺画素に付与されている仮ラベルが示すテーブル値が所定の組み合わせであるか否かを判断させるステップと、コンピュータに、所定の組み合わせであると判断した場合、前記注目画素及び周辺画素の関連性を検出させるステップと、コンピュータに、検出結果に応じて前記周辺画素の仮ラベルが示すテーブル値の一部を前記注目画素の仮ラベルにより更新させるステップとを有することを特徴とするコンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ラスタスキャン型画像データの閉領域のラベル付けに適用されるパイプライン処理方式のラベリング処理方法、ラベリング処理装置、画像処理装置、画像形成装置、及びコンピュータプログラムに関する。
【背景技術】
【０００２】
従来、予めマスク回路内のデータに基づき、ラベル番号を算出するラベル付け論理テーブルを用い、注目画素に対してラベル番号を付与すると共に、注目画素と周辺画素との接続関係を更新していた（例えば、特許文献１参照）。
【特許文献１】特開平３−１８４１８６号公報
【発明の開示】
【発明が解決しようとする課題】
【０００３】
しかしながら、特許文献１に記載されている技術では、マスク内の周辺画素データに対して全ての組み合わせに対してラベル論理テーブルを割り当てているために、注目画素毎に周辺画素仮ラベル及びテーブル値などの周辺画素の状態を全て把握しなければならないだけでなく、注目画素と周辺画素との大小関係に関しても、約半数の組み合わせに対して行わなければならず、非常に煩雑な処理となっている。また、接続テーブル変更条件も約半数の組み合わせにおいて、変更データを算出する必要があるため、処理が煩雑となっている。
【０００４】
本発明は斯かる事情に鑑みてなされたものであり、任意の注目画素に仮ラベルを付与する際、周辺画素に付与されている仮ラベルが示すテーブル値を付与すべきか否かを、各周辺画素に対して設定してある優先順位に従って順次的に判断する。また、周辺画素に付与されている仮ラベルが示すテーブル値が所定の組み合わせである場合、注目画素及び周辺画素の関連性を検出して注目画素の仮ラベルを更新する。斯かる構成とすることにより、処理手続を簡素化し、回路規模削減、処理速度の向上、消費電力抑制を図ることができるラベリング処理方法、ラベリング処理装置、画像処理装置、画像形成装置、及びコンピュータプログラムを提供することを目的とする。
【課題を解決するための手段】
【０００５】
本発明に係るラベリング処理方法は、複数の画素からなる画像データについて画素値に応じた仮ラベルを各画素に付与することにより同種の画素からなる画素群を複数抽出し、抽出した画素群の間の関連性を検出し、検出結果に応じて付与した仮ラベルの更新を行うラベリング処理方法において、任意の注目画素に仮ラベルを付与する際、該注目画素の周辺に存する複数の周辺画素の夫々に付与されている仮ラベルが示すテーブル値を付与すべきか否かを、各周辺画素に設定してある優先順位に従って順次的に判断し、付与すべしと判断した周辺画素の仮ラベルが示すテーブル値を前記注目画素に対して付与し、前記複数の周辺画素に付与されている仮ラベルが示すテーブル値が所定の組み合わせであるか否かを判断し、所定の組み合わせであると判断した場合、前記注目画素及び周辺画素の関連性を検出し、検出結果に応じて前記周辺画素の仮ラベルが示すテーブル値の一部を前記注目画素の仮ラベルにより更新することを特徴とする。
【０００６】
従来では、周辺画素全ての仮ラベルが示すテーブル値の大小関係を調べることにより、最小ラベルを算出していたが、本発明にあっては、周辺画素に対して優先順位を設定することにより、注目画素の仮ラベルが一意に定まる。また、判定するマスクサイズによって、ラベルテーブルの更新パターンを予め定めることができる。例えば、３×２マスクサイズの場合、３パターンの更新パターンを定めておけばよい。その結果、テーブル更新回数が削減される。
【０００７】
本発明に係るラベリング処理装置は、複数の画素からなる画像データについて画素値に応じた仮ラベルを各画素に付与することにより同種の画素からなる画素群を複数抽出し、抽出した画素群の間の関連性を検出し、検出結果に応じて付与した仮ラベルの更新を行うラベリング処理装置において、任意の注目画素に仮ラベルを付与する際、該注目画素の周辺に存する複数の周辺画素の夫々に付与されている仮ラベルが示すテーブル値を付与すべきか否かを、各周辺画素に設定してある優先順位に従って順次的に判断する手段と、付与すべしと判断した周辺画素の仮ラベルが示すテーブル値を前記注目画素に対して付与する手段と、前記複数の周辺画素に付与されている仮ラベルが示すテーブル値が所定の組み合わせであるか否かを判断する手段と、所定の組み合わせであると判断した場合、前記注目画素及び周辺画素の関連性を検出する手段と、検出結果に応じて前記周辺画素の仮ラベルが示すテーブル値の一部を前記注目画素に付与された仮ラベルにより更新する手段とを備えることを特徴とする。
【０００８】
従来では、周辺画素全ての仮ラベルが示すテーブル値の大小関係を調べることにより、最小ラベルを算出していたが、本発明にあっては、周辺画素に対して優先順位を設定することにより、注目画素の仮ラベルが一意に定まる。また、判定するマスクサイズによって、ラベルテーブルの更新パターンを予め定めることができるため、テーブル更新回数が削減される。
【０００９】
本発明に係るラベリング処理装置は、各周辺画素の仮ラベルが示すテーブル値が所定範囲の値を有するか否かを前記優先順位に従って順次的に判断する手段を備え、所定範囲の値を有すると判断した周辺画素の仮ラベルが示すテーブル値を前記注目画素に対して付与するようにしてあることを特徴とする。
【００１０】
本発明にあっては、周辺画素に対して設定してある優先順位に従って判断処理を行うようにしているため、周辺画素の全ての仮ラベルが示すテーブル値の大小関係を調べることなく、注目画素の仮ラベルが一意に定まる。
【００１１】
本発明に係るラベリング処理装置は、前記周辺画素の仮ラベルが示すテーブル値の大小関係を検出する手段を備え、検出した仮ラベルが示すテーブル値の大小関係に基づいて前記関連性を検出するようにしてあることを特徴とする。
【００１２】
本発明にあっては、周辺画素の仮ラベルが示すテーブル値が所定の組み合わせとなる場合、周辺画素の仮ラベルが示すテーブル値の大小関係から注目画素及び周辺画素の関連性が検出される。
【００１３】
本発明に係るラベリング処理装置は、周辺画素同士の仮ラベルが示すテーブル値の大きさを比較する手段と、比較結果に基づいて更新すべきテーブル値が格納されているアドレスを指定する手段と、指定したアドレスのテーブル値を注目画素の仮ラベルにより更新する手段とを備えることを特徴とする。
【００１４】
本発明にあっては、周辺画素の仮ラベルが示すテーブル値が所定の組み合わせとなる場合、周辺画素同士の大きさを比較した結果に基づいてアドレスを定め、定めたアドレスのテーブル値を更新するようにしているため、ラベルテーブルの更新を予め定めておくことによってテーブル更新回数が削減される。
【００１５】
本発明に係る画像処理装置は、前述した発明の何れか１つに記載のラベリング処理装置と、該ラベリング処理装置により付与された各画素の仮ラベルを用いて各画素の画素値を変更する手段とを備えることを特徴とする。
【００１６】
本発明にあっては、例えば、ラベリング処理装置により付与されたラベルを用いて特定色の画素からなる閉領域を抽出し、特定色の画素が画像全体に占める割合を求め、その結果に応じて調整信号を求めることにより正確な色再現を行う色補正処理などが行える。
【００１７】
本発明に係る画像形成装置は、前述した発明の何れか１つに記載のラベリング処理装置と、該ラベリング処理装置により付与された各画素の仮ラベルを用いて各画素の画素値を変更する手段と、画素値を変更することにより得られる画像データに基づいてシート上に画像形成を行う手段とを備えることを特徴とする。
【００１８】
本発明にあっては、プリンタ装置、スキャナ装置及びプリンタ装置を備えたデジタル複合機などに適用される。
【００１９】
本発明に係るコンピュータプログラムは、コンピュータに、複数の画素からなる画像データについて画素値に応じた仮ラベルを各画素に付与させることにより同種の画素からなる画素群を複数抽出させ、抽出させた画素群の間の関連性を検出させ、検出結果に応じて付与した仮ラベルの更新を行わせるコンピュータプログラムにおいて、コンピュータに、任意の注目画素に仮ラベルを付与させる際、該注目画素の周辺に存する複数の周辺画素の夫々に付与されている仮ラベルが示すテーブル値を付与すべきか否かを、各周辺画素に設定してある優先順位に従って順次的に判断させるステップと、コンピュータに、付与させるべしと判断した周辺画素の仮ラベルが示すテーブル値を前記注目画素に対して付与させるステップと、コンピュータに、前記複数の周辺画素に付与されている仮ラベルが示すテーブル値が所定の組み合わせであるか否かを判断させるステップと、コンピュータに、所定の組み合わせであると判断した場合、前記注目画素及び周辺画素の関連性を検出させるステップと、コンピュータに、検出結果に応じて前記周辺画素の仮ラベルが示すテーブル値の一部を前記注目画素の仮ラベルにより更新させるステップとを有することを特徴とする。
【００２０】
従来では、周辺画素全ての仮ラベルが示すテーブル値の大小関係を調べることにより、最小ラベルを算出していたが、本発明にあっては、周辺画素に対して優先順位を設定することにより、注目画素の仮ラベルが一意に定まる。また、判定するマスクサイズによって、ラベルテーブルの更新パターンを予め定めることができるため、テーブル更新回数が削減される。
【発明の効果】
【００２１】
本発明による場合は、任意の注目画素に仮ラベルを付与する際、周辺画素に付与されている仮ラベルが示すテーブル値を付与すべきか否かを、各周辺画素に対して設定してある優先順位に従って順次的に判断する。また、周辺画素に付与されている仮ラベルが示すテーブル値が所定の組み合わせである場合、注目画素及び周辺画素の関連性を検出して注目画素の仮ラベルを更新する。したがって、周辺画素に対して優先順位を設定することにより、注目画素の仮ラベルを一意に定めることができる。また、判定するマスクサイズによって、ラベルテーブルの更新パターンを予め定めることができるため、テーブル更新回数を削減することができる。その結果、処理の効率化を図ることができ、回路規模の削減、処理速度の向上、消費電力の抑制を図ることができる。
【００２２】
本発明による場合は、周辺画素に対して設定してある優先順位に従って判断処理を行うようにしている。したがって、周辺画素の全ての仮ラベルが示すテーブル値の大小関係を調べることなく、注目画素の仮ラベルが一意に定まり、処理の効率化を図ることができる。
【００２３】
本発明による場合は、周辺画素の仮ラベルが示すテーブル値が所定の組み合わせとなる場合、周辺画素の仮ラベルが示すテーブル値の大小関係から注目画素及び周辺画素の関連性を検出することができる。
【００２４】
本発明による場合は、周辺画素の仮ラベルが示すテーブル値が所定の組み合わせとなる場合、周辺画素同士の大きさを比較した結果に基づいてアドレスを定め、定めたアドレスのテーブル値を更新するようにしている。したがって、ラベルテーブルの更新を予め定めておくことによってテーブル更新回数を削減することができ、処理速度の向上を図ることができる。
【００２５】
本発明による場合は、例えば、ラベリング処理装置により付与されたラベルを用いて特定色の画素からなる閉領域を抽出し、特定色の画素が画像全体に占める割合を求め、その結果に応じて調整信号を求めることにより正確な色再現を行う色補正処理などを実行することができる。
【００２６】
本発明による場合は、プリンタ装置、スキャナ装置及びプリンタ装置を備えたデジタル複合機などに適用することができる。
【発明を実施するための最良の形態】
【００２７】
以下、本発明をその実施の形態を示す図面に基づいて具体的に説明する。
実施の形態１．
図１は本発明に係るラベリング処理装置の内部構成を示すブロック図である。本発明に係るラベリング処理装置は、入力ＤＭＡ部１０１（DMA : Direct Memory Access）、セレクタ１０２、ラベリング処理部１１０、セレクタ１０３、出力ＤＭＡ部１０４からなる。以下では、スキャナ装置などの画像入力装置より読み込まれた画像データを２値化した画像データを例に挙げて説明するが、２値化されたデータに限定されるものではなく、８ビット（２５６階調）の画像であってもよい。多値画像の処理を行う場合には、同じ色（例えば、肌色）を抽出する際に用いることができる。また、網点信号等の画像の特徴を表す信号を用いてもよい。
【００２８】
入力ＤＭＡ部１０１は、スキャナ装置などにより読み込まれた画像データ、又はメモリに格納されている仮ラベル付けされた結果が入力される。セレクタ１０２は、実行すべき処理として、後述する仮ラベル付与処理又はラベル補正処理の何れかを選択する。
【００２９】
仮ラベル付与処理が実行すべき処理として選択された場合、ラベリング処理部１１０内の、仮ラベル付与処理部１１１、仮ラベル格納ラインバッファ１１２、及び仮ラベル連結処理部１１３、ラベルテーブル１１４において、入力画像データに対して仮ラベル付けを行う。
【００３０】
仮ラベル付与処理部１１１は、予め２値化された画像データに対し仮ラベル付与処理を行う。図２は仮ラベル付与処理での走査方向を説明する模式図である。図２に示すように順方向から仮ラベル付与処理を行うことにより、ラベルマップを生成する。仮ラベルの付与は、注目画素に対し、注目画素が同種の連続画素群に属するか否かの判断を、周辺画素について設定してある優先順位に従って行う。本実施の形態では３×２のマスクを使用し、注目画素の左側の画素（左データ）、右上の画素（右上データ）、上側の画素（上データ）、及び左上の画素（左上データ）の４つの周辺画素について予め優先順位を設定し、その優先順位に従って周辺画素の仮ラベルを注目画素に対して付与するか否かを判断する。仮ラベル付与処理は、注目画素を１つずつずらしながら、入力画像データの全体をｘ方向及びｙ方向に走査して行う。仮ラベル付与の結果は、セレクタ１０３及び出力ＤＭＡ部１０４を介して図に示していないメモリに格納される。
【００３１】
仮ラベル格納ラインバッファ１１２は、仮ラベル付与処理の結果を格納する。３×２のマスクを用いる場合、１ラインのラインバッファを用いる。また、処理タイミング上、デュアルポートメモリを１ライン分、又はシングルポートメモリを２ライン分用いることもできる。
【００３２】
仮ラベル連結処理部１１３は、仮ラベル付与処理部１１１によって付与された注目画素の仮ラベルに対し、周辺画素が予め決められたパターンの場合にのみ、注目画素の仮ラベルと周辺画素の仮ラベルが示すラベルテーブル値との比較を行い、両者の関連性を判定し、当該ラベルテーブル値をアドレスとし、そのアドレスが示すラベルテーブル値を、注目画素の仮ラベル値にて更新し、その関連付けを保持する。
【００３３】
ラベルテーブル１１４は、仮ラベル連結処理部１１３によって関連付けられたテーブル値を保持し、ラベルテーブル整理処理部１１５は、ラベルテーブル１１４に保持されたテーブル値を１つのラベルとして整理する。
【００３４】
セレクタ１０２にて、ラベル補正処理が実行すべき処理として選択された場合、ラベル補正処理部１１６にてラベルマップの更新を行う。ラベル補正処理部１１６は、ラベルテーブル整理処理部１１５で得られた最終的なテーブルを１次元ルックアップテーブルとしてラベルマップに対して適用することで、適切なラベルとなるようにラベルマップを更新する。
【００３５】
出力ＤＭＡ部１０４は、出力側のセレクタ１０３の選択に基づき、仮ラベル付与処理の結果、又はラベル補正処理の結果をメモリに書き込む。
【００３６】
以下、仮ラベル付与処理の詳細について説明する。図３は仮ラベル及びラベルテーブル値の定義を説明する説明図である。本実施の形態では、注目画素の画素値をその座標［ｙ］［ｘ］に関連付けてＩｎｐｕｔ［ｙ］［ｘ］で表したとき、左上データ、上データ、右上データ、左データの仮ラベルをそれぞれ、Ｌｂ［ｙ−１］［ｘ−１］、Ｌｂ［ｙ−１］［ｘ］、Ｌｂ［ｙ−１］［ｘ＋１］、Ｌｂ［ｙ］［ｘ−１］で表す。また、左上データ、上データ、右上データ、左データの仮ラベルが示すテーブル値をそれぞれ、Ｔｂ［ｙ−１］［ｘ−１］、Ｔｂ［ｙ−１］［ｘ］、Ｔｂ［ｙ−１］［ｘ＋１］、Ｔｂ［ｙ］［ｘ−１］で表す。ただし、以下の説明において、Ｌｂ＞０の場合を１、Ｌｂ＝０の場合を０とし、周辺画素を「１０１０」のように表す場合がある。例えば「１０１０」は、４つの周辺画素の仮ラベルが、Ｌｂ［ｙ−１］［ｘ−１］＞０、Ｌｂ［ｙ−１］［ｘ］＝０、Ｌｂ［ｙ−１］［ｘ＋１］＞０、Ｌｂ［ｙ］［ｘ−１］＝０であることを示している。これは、各Ｔｂを用いて表現した場合でも、同様の意味となる。
【００３７】
図４及び図５は仮ラベル付与処理の処理手順について説明するフローチャートである。仮ラベル付与処理部１１１は、まず、現在の注目画素（Ｉｎｐｕｔ［ｙ］［ｘ］）が有効データであるか否かを判断する（ステップＳ１１）。ここで、有効データとは、ラベリング処理を実施するデータのことである。一般に、入力される画像データが常に有効データであるとは限らないため、入力画像データと共に、１ビットのイネーブル信号を入力し、この信号により入力されたデータが有効であるか、無効であるかを認識することができる。
【００３８】
有効データでないと判断した場合（Ｓ１１：ＮＯ）、仮ラベル付与処理部１１１は、全ての画素の処理が終了したか否かを判断する（ステップＳ１２）。すなわち、入力画像の左上隅から順次的に走査した場合、右下隅の画素についての処理が終了したか否かを判断する。処理が終了していない画素が存在する場合（Ｓ１２：ＮＯ）、仮ラベル付与処理部１１１は、処理をステップＳ１１へ戻す。また、全ての画素の処理が終了したと判断した場合（Ｓ１２：ＹＥＳ）、本フローチャートによる処理を終了する。
【００３９】
ステップＳ１１で現在の注目画素が有効データであると判断した場合（Ｓ１１：ＹＥＳ）、仮ラベル付与処理部１１１は、注目画素の画素値が１であるか否かを判断する（ステップＳ１３）。注目画素の画素値が０であると判断した場合（Ｓ１３：ＮＯ）、注目画素の仮ラベルＬｂ［ｙ］［ｘ］を０に設定する（ステップＳ１４）。仮ラベルの設定を行った後、仮ラベル付与処理部１１１は、処理をステップＳ１１へ戻す。
【００４０】
注目画素の画素値が１であると判断した場合（Ｓ１３：ＹＥＳ）、ラベリング処理装置は、周辺画素の仮ラベルが「１０１０」であるか否かを判断する（ステップＳ１５）。周辺画素の仮ラベルが「１０１０」であると判断した場合（Ｓ１５：ＹＥＳ）、仮ラベル付与処理部１１１は、Ｔｂ［ｙ−１］［ｘ−１］又はＴｂ［ｙ−１］［ｘ＋１］の小さい方の値を注目画素の仮ラベルＬｂ［ｙ］［ｘ］として設定する（ステップＳ１６）。仮ラベルの設定を行った後、仮ラベル付与処理部１１１は処理をステップＳ１１へ戻す。
【００４１】
周辺画素の仮ラベルが「１０１０」でないと判断した場合（Ｓ１５：ＮＯ）、仮ラベル付与処理部１１１は、周辺画素の仮ラベルが「００１１」又は「１０１１」であるか否かを判断する（ステップＳ１７）。周辺画素の仮ラベルが「００１１」又は「１０１１」の何れかであると判断した場合（Ｓ１７：ＹＥＳ）、仮ラベル付与処理部１１１は、Ｔｂ［ｙ−１］［ｘ＋１］又はＴｂ［ｙ］［ｘ−１］の小さい方の値を注目画素の仮ラベルＬｂ［ｙ］［ｘ］として設定する（ステップＳ１８）。仮ラベルの設定を行った後、仮ラベル付与処理部１１１は処理をステップＳ１１へ戻す。
【００４２】
周辺画素の仮ラベルが「００１１」及び「１０１１」の何れでもないと判断した場合（Ｓ１７：ＮＯ）、仮ラベル付与処理部１１１は、Ｔｂ［ｙ］［ｘ−１］≠０であるか否かを判断する（ステップＳ１９）。Ｔｂ［ｙ］［ｘ−１］≠０であると判断した場合（Ｓ１９：ＹＥＳ）、注目画素の仮ラベルＬｂ［ｙ］［ｘ］をＴｂ［ｙ］［ｘ−１］に設定する（ステップＳ２０）。仮ラベルの設定を行った後、仮ラベル付与処理部１１１は処理をステップＳ１１へ戻す。
【００４３】
Ｔｂ［ｙ］［ｘ−１］≠０でないと判断した場合（Ｓ１９：ＮＯ）、仮ラベル付与処理部１１１は、Ｔｂ［ｙ−１］［ｘ＋１］≠０であるか否かを判断する（ステップＳ２１）。Ｔｂ［ｙ−１］［ｘ＋１］≠０であると判断した場合（Ｓ２１：ＹＥＳ）、注目画素の仮ラベルＬｂ［ｙ］［ｘ］をＴｂ［ｙ−１］［ｘ＋１］に設定する（ステップＳ２２）。仮ラベルの設定を行った後、仮ラベル付与処理部１１１は処理をステップＳ１１へ戻す。
【００４４】
Ｔｂ［ｙ−１］［ｘ＋１］≠０でないと判断した場合（Ｓ２１：ＮＯ）、仮ラベル付与処理部１１１は、Ｔｂ［ｙ−１］［ｘ］≠０であるか否かを判断する（ステップＳ２３）。Ｔｂ［ｙ−１］［ｘ］≠０であると判断した場合（Ｓ２３：ＹＥＳ）、注目画素の仮ラベルＬｂ［ｙ］［ｘ］をＴｂ［ｙ−１］［ｘ］に設定する（ステップＳ２４）。仮ラベルの設定を行った後、仮ラベル付与処理部１１１は処理をステップＳ１１へ戻す。
【００４５】
Ｔｂ［ｙ−１］［ｘ］≠０でないと判断した場合（Ｓ２３：ＮＯ）、仮ラベル付与処理部１１１は、Ｔｂ［ｙ−１］［ｘ−１］≠０であるか否かを判断する（ステップＳ２５）。Ｔｂ［ｙ−１］［ｘ−１］≠０であると判断した場合（Ｓ２５：ＹＥＳ）、注目画素の仮ラベルＬｂ［ｙ］［ｘ］をＴｂ［ｙ−１］［ｘ−１］に設定する（ステップＳ２６）。仮ラベルの設定を行った後、仮ラベル付与処理部１１１は処理をステップＳ１１へ戻す。
【００４６】
また、Ｔｂ［ｙ−１］［ｘ−１］≠０でないと判断した場合（Ｓ２５：ＮＯ）、仮ラベル付与処理部１１１は、注目画素に対して新規の仮ラベルを付与し（ステップＳ２７）、処理をステップＳ１１へ戻す。新規仮ラベルの付与には仮ラベル付与処理部１１１の内蔵カウンタを使用する。例えば、新規仮ラベルを付与する際、内蔵カウンタの値を１つインクリメントして付与することにより、既に付与されている仮ラベルと異なる値を新規仮ラベルとして付与する。
【００４７】
以上のように、仮ラベルを付与する際に行う判定を、周辺画素に対して予め設定してある優先順序に従って行うため、判定回数を減らすことができるとともに、注目画素の仮ラベルを一意に決定することができる。なお、周辺画素のパターンが「１０１０」となる場合、及び「００１１」又は「１０１１」となる場合は特定であり、注目画素の仮ラベルを付与する前に、それぞれが関連付けられてない場合がある。そのため、必ず両者の仮ラベルが示すテーブル値の大小関係をチェックし、小さい値を注目画素の仮ラベルとして付与することにより、一方の仮ラベルを注目画素の仮ラベルとして関連付け、他方の仮ラベルとはテーブルを更新し、注目画素と関連付けることにより、独立した仮ラベルを持つ周辺画素同士を関連付けることが可能となる。
【００４８】
図６は仮ラベル付与処理の適用例を説明する説明図である。図６（ａ）は、注目画素の画素値が０の場合である。本実施の形態では、２値画像を想定しているため前述したフローチャートのステップＳ１３において注目画素の画素値が１でない場合に該当するため、注目画素の仮ラベルＬｂ［ｙ］［ｘ］は０に設定される。図６（ｂ）に示した例は、Ｌｂ［ｙ−１］［ｘ−１］＞０、Ｌｂ［ｙ−１］［ｘ］＝０、Ｌｂ［ｙ−１］［ｘ＋１］＞０、Ｌｂ［ｙ］［ｘ−１］＝０となるため、前述した表記により周辺画素を「１０１０」により表すことができる。このとき、前述したフローチャートのステップＳ１６において、Ｔｂ［ｙ−１］［ｘ−１］（＝１）又はＴｂ［ｙ−１］［ｘ＋１］（＝２）の小さい方を仮ラベルとして設定するため、注目画素の仮ラベルＬｂ［ｙ］［ｘ］は１に設定される。図６（ｃ）に示した例は、周辺画素の仮ラベルが全て０となっているため、ステップＳ２７において新規仮ラベルを付与する。
【００４９】
次に、仮ラベル連結処理部１１３における処理を説明する。仮ラベル連結処理では、周辺画素が予め決められたパターンの場合にのみ、注目画素と該当周辺画素との関連性を判定し、ラベルテーブル１１４を更新する。
【００５０】
図７及び図８は仮ラベル連結処理の処理手順を説明するフローチャートである。まず、仮ラベル連結処理部１１３は、現在の注目画素が有効データであるか否かを判断する（ステップＳ３１）。現在の注目画素が有効データでないと判断した場合（Ｓ３１：ＮＯ）、仮ラベル連結処理部１１３は、全ての画素の処理が終了したか否かを判断する（ステップＳ３２）。処理が終了していない画素が存在する場合（Ｓ３２：ＮＯ）、仮ラベル連結処理部１１３は、処理をステップＳ３１へ戻し、全ての画素についての処理が終了したと判断した場合（Ｓ３２：ＹＥＳ）、本フローチャートによる処理を終了する。
【００５１】
ステップＳ３１で現在の注目画素が有効データであると判断した場合（Ｓ３１：ＹＥＳ）、仮ラベル連結処理部１１３は、注目画素の画素値が１であるか否かを判断する（ステップＳ３３）。注目画素の画素値が１でないと判断した場合（Ｓ３３：ＮＯ）、処理をステップＳ３２へ移行させる。
【００５２】
注目画素の画素値が１であると判断した場合（Ｓ３３：ＹＥＳ）、仮ラベル連結処理部１１３は、周辺画素の仮ラベルが全て０であるか否かを判断する（ステップＳ３４）。周辺画素の仮ラベルが全て０であると判断した場合（Ｓ３４：ＹＥＳ）、注目画素の仮ラベルＬｂ［ｙ］［ｘ］をアドレスとし、該当するテーブル値を注目画素の仮ラベルＬｂ［ｙ］［ｘ］で更新する（ステップＳ３５）。仮ラベルの更新を行った後、仮ラベル連結処理部１１３は処理をステップＳ３１へ戻す。
【００５３】
周辺画素の仮ラベルに０でない値が含まれると判断した場合（Ｓ３４：ＮＯ）、仮ラベル連結処理部１１３は、周辺画素の仮ラベルが「１０１０」であるか否かを判断する（ステップＳ３６）。周辺画素の仮ラベルが「１０１０」であると判断した場合（Ｓ３６：ＹＥＳ）、仮ラベル連結処理部１１３は、Ｔｂ［ｙ−１］［ｘ−１］又はＴｂ［ｙ−１］［ｘ＋１］の何れか大きい方の値により指定されるアドレスのテーブル値を注目画素の仮ラベルＬｂ［ｙ］［ｘ］により更新する（ステップＳ３７）。仮ラベルの更新を行った後、仮ラベル連結処理部１１３は処理をステップＳ３１へ戻す。
【００５４】
周辺画素の仮ラベルが「１０１０」でないと判断した場合（Ｓ３６：ＮＯ）、仮ラベル連結処理部１１３は、周辺画素の仮ラベルが「００１１」又は「１０１１」の何れかであるか否かを判断する（ステップＳ３８）。周辺画素の仮ラベルが「００１１」又は「１０１１」の何れかであると判断した場合（Ｓ３８：ＹＥＳ）、仮ラベル連結処理部１１３は、Ｔｂ［ｙ−１］［ｘ＋１］又はＴｂ［ｙ］［ｘ−１］の何れか大きい方の値により指定されるアドレスのテーブル値を注目画素の仮ラベルＬｂ［ｙ］［ｘ］により更新する（ステップＳ３９）。仮ラベルの更新を行った後、仮ラベル連結処理部１１３は処理をステップＳ３１へ戻す。また、周辺画素の仮ラベルが「００１１」及び「１０１１」の何れでもないと判断した場合（Ｓ３８：ＮＯ）、本フローチャートによる処理を終了する。
【００５５】
以上のように、周辺画素が予め定められたパターンの場合にのみ更新判定を行うことで、テーブル更新回数を削減することが可能となる。ただし、４つの周辺画素が「００００」である場合、初期ラベル付与時であるため、処理開始時に、全てのアドレスに対し、アドレス値をテーブル値として書き込んでおくことにより、「００００」の場合のテーブルアクセスを行わないようにすることも可能である。
【００５６】
図９は仮ラベル連結処理の適用例を説明する説明図である。図９（ａ）に示した例は、仮ラベルが「１０１０」のパターンとなるケースであり（ステップＳ３６でＹＥＳ）、Ｔｂ［ｙ−１］［ｘ−１］＝１、Ｔｂ［ｙ−１］［ｘ＋１］＝２であるため、Ｔｂ［ｙ−１］［ｘ＋１］で指定されるアドレス（＝２）のテーブル値を注目画素の仮ラベルＬｂ［ｙ］［ｘ］＝１により更新する。同様に図９（ｂ）に示した例は、仮ラベルが「００１１」のパターンとなるケースであり（ステップＳ３８でＹＥＳ）、Ｔｂ［ｙ−１］［ｘ＋１］＝１、Ｔｂ［ｙ］［ｘ−１］＝２であるため、Ｔｂ［ｙ］［ｘ−１］で指定されるアドレス（＝２）のテーブル値を注目画素の仮ラベルＬｂ［ｙ］［ｘ］＝１により更新する。
【００５７】
図１０は仮ラベル付与処理及び仮ラベル連結処理の処理内容をまとめた図表である。なお、この図表において「＊」の記号は、０又は１の何れかの値をとることを示している。テーブル更新がある部分以外は、［ｙ］［ｘ−１］から左に優先順位を与えることで、最大４つの判定を行えば良いことが分かる。
【００５８】
この仮ラベル連結処理は、画素と画素との関連性を判断するため、入力されたデータに対してリアルタイムで処理する必要がある。先に述べた仮ラベル連結処理では、発生するテーブルの更新回数が１つの注目画素に対して最大１回であるため、注目画素に仮ラベルを与えた直後に行うことが可能となり、画素単位での処理が可能である。図１１は仮ラベル付与処理及び仮ラベル連結処理の実行手順の一例を説明する模式図である。図１１に示すように実装することにより、パイプライン化が容易となる。
【００５９】
次に、ラベルテーブル整理処理部１１５におけるラベルテーブル整理処理について説明する。ラベルテーブル整理処理では、仮ラベル連結処理で得られたラベルテーブル１１４を最小アドレスより昇順に走査してゆくことにより、それぞれのラベルと関連のある最小ラベルを判断し、ラベルテーブル１１４を整理する。具体的には、まず、アドレスとテーブル値とが等しい場合には、このテーブル値をルートとし、そうでない場合はリンク先のテーブル値で現アドレスのテーブル値を置き換え、欠番が生じたテーブル値を補完するためにナンバリングを行う。
【００６０】
図１２はラベルテーブル整理処理の適用例を説明する説明図である。アドレス（ＲｅａｄＡｄｒとする）とそのアドレスにより指定されるテーブル値（Ｔｂ［ＲｅａｄＡｄｒ］とする）とが等しい場合には該当ラベル値がルートであると判断し、そのテーブル値（Ｔｂ［ＲｅａｄＡｄｒ］）に対して、ラベル値補完用カウンタの値を書き戻し、ラベル補完用カウンタを１つだけインクリメントする。ただし、ラベル補完用カウンタの初期値は０とする。このルールの適用により、仮ラベル連結処理後のラベルテーブル１１４が図１２（ａ）に示すような値をとる場合、アドレス０〜アドレス２までのテーブル値には、初期値から１つずつインクリメントされたラベル補完用カウンタの値（＝０，１，２）が書き戻される。
【００６１】
また、アドレス（ＲｅａｄＡｄｒ）とそのアドレスにより指定されるテーブル値（Ｔｂ［ＲｅａｄＡｄｒ］）とが等しくない場合、Ｔｂ［ＲｅａｄＡｄｒ］をアドレスとして読み出したデータ（Ｔｂ［Ｔｂ［ＲｅａｄＡｄｒ］］）をＴｂ［ＲｅａｄＡｄｒ］に対して書き戻す。なお、この場合にはラベル補完用カウンタはインクリメントしない。このルールの適用により、仮ラベル連結処理後のラベルテーブル１１４が図１２（ａ）に示すような値をとる場合、アドレス３〜アドレス５のテーブル値には、アドレス１〜アドレス３のテーブル値（＝１〜３）が書き戻される（図１２（ｂ）参照）。その結果、図１２（ａ）に示したラベルテーブル１１４は、図１２（ｃ）に示した値をとるようになる。
【００６２】
ラベル補正処理部１１６におけるラベル補正処理では、仮ラベルを順次走査し、注目画素の仮ラベルを、ラベルテーブル１１４の仮ラベル＝アドレスに格納されている値にて補正する処理を行う。すなわち、注目画素の仮ラベルをＬｂ［ｙ］［ｘ］とした場合、ラベルテーブル１１４からデータを読み出し、この値を注目画素の補正ラベルＬｂ［ｙ］［ｘ］（＝Ｔｂ［Ｌｂ［ｙ］［ｘ］］）として出力する。
【００６３】
以上のように、本実施の形態では、仮ラベル付与処理における判断を、周辺画素に対して優先順位を与えることにより、注目画素の仮ラベルを一意に決めることができる。なお、ラベルテーブル更新以外の条件では、特定の周辺画素仮ラベルが示すテーブル値が注目画素の仮ラベルとして付与される。また、周辺画素が予め設定されたパターンである場合にのみ、関連性を判定し、ラベルテーブル１１４を更新することにより、テーブル更新回数を削減することができる。また、両者により処理が効率化できるだけでなく、回路規模削減及び処理速度向上、消費電力抑制などのハードウェア的な利点も得られる。
【００６４】
なお、本実施の形態では、３×２マスクの処理を挙げているが、マスクサイズはこれに限定されるものではない。
【００６５】
実施の形態２．
実施の形態１では、仮ラベル付与処理と仮ラベル連結処理とを個別に行う構成としたが、これらの処理を１つにまとめることも可能である。
【００６６】
図１３は実施の形態２に係るラベリング処理装置の内部構成を示すブロック図である。本実施の形態に係るラベリング処理装置は、入力ＤＭＡ部１０１（DMA : Direct Memory Access）、セレクタ１０２、ラベリング処理部１２０、セレクタ１０３、出力ＤＭＡ部１０４からなる。また、ラベリング処理部１２０は、仮ラベル付与・連結処理部１２１、仮ラベル格納ラインバッファ１２２、ラベルテーブル１２４、ラベルテーブル整理処理部１２５、ラベル補正処理部１２６により構成される。
【００６７】
仮ラベル付与・連結処理部１２１では、入力画像データに対して仮ラベル付けを行うと共に、付与された注目画素の仮ラベルに対し、周辺画素が予め決められたパターンの場合にのみ、注目画素の仮ラベルと周辺画素の仮ラベルが示すラベルテーブル値との比較を行い、両者の関連性を判定し、当該ラベルテーブル値をアドレスとし、そのアドレスが示すラベルテーブル値を、注目画素の仮ラベルにて更新し、その関連付けを保持する。
【００６８】
以下、仮ラベル付与・連結処理部１２１が実行する仮ラベル付与・連結処理について説明する。図１４〜図１６は仮ラベル付与・連結処理の処理手順について説明するフローチャートである。仮ラベル付与・連結処理部１２１は、まず、現在の注目画素（Ｉｎｐｕｔ［ｙ］［ｘ］）が有効データであるか否かを判断する（ステップＳ４１）。有効データでないと判断した場合（Ｓ４１：ＮＯ）、仮ラベル付与・連結処理部１２１は、全ての画素の処理が終了したか否かを判断する（ステップＳ４２）。すなわち、入力画像の左上隅から順次的に走査した場合、右下隅の画素についての処理が終了したか否かを判断する。処理が終了していない画素が存在する場合（Ｓ４２：ＮＯ）、仮ラベル付与・連結処理部１２１は、処理をステップＳ４１へ戻す。また、全ての画素の処理が終了したと判断した場合（Ｓ４２：ＹＥＳ）、本フローチャートによる処理を終了する。
【００６９】
ステップＳ４１で現在の注目画素が有効データであると判断した場合（Ｓ４１：ＹＥＳ）、仮ラベル付与・連結処理部１２１は、注目画素の画素値が１であるか否かを判断する（ステップＳ４３）。注目画素の画素値が０であると判断した場合（Ｓ４３：ＮＯ）、注目画素の仮ラベルＬｂ［ｙ］［ｘ］を０に設定する（ステップＳ４４）。仮ラベルの設定を行った後、仮ラベル付与・連結処理部１２１は処理をステップＳ４１へ戻す。
【００７０】
注目画素の画素値が１であると判断した場合（Ｓ４３：ＹＥＳ）、ラベリング処理装置は、周辺画素の仮ラベルが「１０１０」であるか否かを判断する（ステップＳ４５）。周辺画素の仮ラベルが「１０１０」であると判断した場合（Ｓ４５：ＹＥＳ）、仮ラベル付与・連結処理部１２１は、Ｔｂ［ｙ−１］［ｘ−１］又はＴｂ［ｙ−１］［ｘ＋１］の小さい方の値を注目画素の仮ラベルＬｂ［ｙ］［ｘ］として設定する（ステップＳ４６）。次いで、仮ラベル付与・連結処理部１２１は、Ｔｂ［ｙ−１］［ｘ−１］又はＴｂ［ｙ−１］［ｘ＋１］の何れか大きい方の値により指定されるアドレスのテーブル値を注目画素の仮ラベルＬｂ［ｙ］［ｘ］により更新する（ステップＳ４７）。仮ラベルの更新を行った後、仮ラベル付与・連結処理部１２１は処理をステップＳ４１へ戻す。
【００７１】
周辺画素の仮ラベルが「１０１０」でないと判断した場合（Ｓ４５：ＮＯ）、仮ラベル付与・連結処理部１２１は、周辺画素の仮ラベルが「００１１」又は「１０１１」であるか否かを判断する（ステップＳ４８）。周辺画素の仮ラベルが「００１１」又は「１０１１」の何れかであると判断した場合（Ｓ４８：ＹＥＳ）、仮ラベル付与・連結処理部１２１は、Ｔｂ［ｙ−１］［ｘ＋１］又はＴｂ［ｙ］［ｘ−１］の小さい方の値を注目画素の仮ラベルＬｂ［ｙ］［ｘ］として設定する（ステップＳ４９）。次いで、仮ラベル付与・連結処理部１２１は、Ｔｂ［ｙ−１］［ｘ＋１］又はＴｂ［ｙ］［ｘ−１］の何れか大きい方の値により指定されるアドレスのテーブル値を注目画素の仮ラベルＬｂ［ｙ］［ｘ］により更新する（ステップＳ５０）。仮ラベルの更新を行った後、仮ラベル付与・連結処理部１２１は処理をステップＳ４１へ戻す。
【００７２】
周辺画素の仮ラベルが「００１１」及び「１０１１」の何れでもないと判断した場合（Ｓ４８：ＮＯ）、仮ラベル付与・連結処理部１２１は、Ｔｂ［ｙ］［ｘ−１］≠０であるか否かを判断する（ステップＳ５１）。Ｔｂ［ｙ］［ｘ−１］≠０であると判断した場合（Ｓ５１：ＹＥＳ）、注目画素の仮ラベルＬｂ［ｙ］［ｘ］をＴｂ［ｙ］［ｘ−１］に設定する（ステップＳ５２）。仮ラベルの設定を行った後、仮ラベル付与・連結処理部１２１は処理をステップＳ４１へ戻す。
【００７３】
Ｔｂ［ｙ］［ｘ−１］≠０でないと判断した場合（Ｓ５１：ＮＯ）、仮ラベル付与・連結処理部１２１は、Ｔｂ［ｙ−１］［ｘ＋１］≠０であるか否かを判断する（ステップＳ５３）。Ｔｂ［ｙ−１］［ｘ＋１］≠０であると判断した場合（Ｓ５３：ＹＥＳ）、注目画素の仮ラベルＬｂ［ｙ］［ｘ］をＴｂ［ｙ−１］［ｘ＋１］に設定する（ステップＳ５４）。仮ラベルの設定を行った後、仮ラベル付与・連結処理部１２１は処理をステップＳ４１へ戻す。
【００７４】
Ｔｂ［ｙ−１］［ｘ＋１］≠０でないと判断した場合（Ｓ５３：ＮＯ）、仮ラベル付与・連結処理部１２１は、Ｔｂ［ｙ−１］［ｘ］≠０であるか否かを判断する（ステップＳ５５）。Ｔｂ［ｙ−１］［ｘ］≠０であると判断した場合（Ｓ５５：ＹＥＳ）、注目画素の仮ラベルＬｂ［ｙ］［ｘ］をＴｂ［ｙ−１］［ｘ］に設定する（ステップＳ５６）。仮ラベルの設定を行った後、仮ラベル付与・連結処理部１２１は処理をステップＳ４１へ戻す。
【００７５】
Ｔｂ［ｙ−１］［ｘ］≠０でないと判断した場合（Ｓ５５：ＮＯ）、仮ラベル付与・連結処理部１２１は、Ｔｂ［ｙ−１］［ｘ−１］≠０であるか否かを判断する（ステップＳ５７）。Ｔｂ［ｙ−１］［ｘ−１］≠０であると判断した場合（Ｓ５７：ＹＥＳ）、注目画素の仮ラベルＬｂ［ｙ］［ｘ］をＴｂ［ｙ−１］［ｘ−１］に設定する（ステップＳ５８）。仮ラベルの設定を行った後、仮ラベル付与・連結処理部１２１は処理をステップＳ４１へ戻す。
【００７６】
また、Ｔｂ［ｙ−１］［ｘ−１］≠０でないと判断した場合（Ｓ５７：ＮＯ）、仮ラベル付与・連結処理部１２１は、注目画素に対して新規の仮ラベルを付与する（ステップＳ５９）。新規仮ラベルの付与には仮ラベル付与・連結処理部１２１の内蔵カウンタを使用する。例えば、新規仮ラベルを付与する際、内蔵カウンタの値を１つインクリメントして付与することにより、既に付与されている仮ラベルと異なる値を新規仮ラベルとして付与する。次いで、仮ラベル付与・連結処理部１２１は、注目画素の仮ラベルＬｂ［ｙ］［ｘ］をアドレスとし、該当するテーブル値を注目画素の仮ラベルＬｂ［ｙ］［ｘ］で更新する（ステップＳ６０）。仮ラベルの更新を行った後、仮ラベル付与・連結処理部１２１は処理をステップＳ４１へ戻す。
【００７７】
実施の形態３．
実施の形態１及び実施の形態２では、各処理をハードウェアにより実現する構成としたが、ソフトウェアの処理により本発明の画像処理を実現する構成としてもよい。
【００７８】
図１７は本発明のコンピュータプログラムがインストールされた画像処理装置の内部構成を説明するブロック図である。図中２００は、本実施の形態に係る画像処理装置であり、具体的にはパーソナルコンピュータ、ワークステーション等である。画像処理装置２００はＣＰＵ２０１を備えており、ＣＰＵ２０１にはＲＯＭ２０３、ＲＡＭ２０４、ハードディスク２０５、外部記憶部２０６、入力部２０７、表示部２０８、通信ポート２０９等のハードウェアがバス２０２を介して接続されている。ＣＰＵ２０１は、ＲＯＭ２０３に予め格納された制御プログラムに従って前述のハードウェア各部を制御する。
【００７９】
ＲＡＭ２０４は前述の制御プログラム、又は本発明に係るコンピュータプログラムの実行中に生成される各種データを一時的に記憶する揮発性のメモリである。ハードディスク２０５は、磁気記録媒体を有する記憶手段であり、本発明のコンピュータプログラム、処理対象の画像データ等が記憶される。外部記憶部２０６は、本発明のコンピュータプログラムを記録した記録媒体Ｍからコンピュータプログラムを読取るための読取装置を備えている。記録媒体Ｍとしては、ＦＤ（Flexible Disk）、ＣＤ−ＲＯＭ等を用いることができる。外部記憶部２０６によって読取られたコンピュータプログラムはハードディスク２０５に格納される。ＣＰＵ２０１はハードディスク２０５に格納された本発明に係るコンピュータプログラムをＲＡＭ２０４上にロードして実行することにより、実施の形態１で説明したような本発明に係るラベリング処理方法を実現する。
【００８０】
入力部２０７は、外部から画像データを取得するためのインタフェースとして機能する。入力部２０７には、例えば、カラースキャナ装置などが接続される。表示部２０８は、処理対象の画像データ、画像処理中の画像データ、画像処理後の画像データ等を表示するためのインタフェースとして機能する。表示部２０８に液晶ディスプレイ装置などの外部表示装置を接続して画像データを表示する構成であってもよく、表示部２０８自身が表示装置を備え、画像データを表示する構成であってもよい。通信ポート２０９は、外部にプリンタ２１０を接続するためのインタフェースである。画像処理された画像データをプリンタ２１０にて印刷する場合、画像処理装置２００は、前記画像データを基にプリンタ２１０にてデコード可能なプリントデータを生成し、生成したプリントデータをプリンタ２１０へ送信する。
【００８１】
なお、本実施の形態では、各種演算をＣＰＵ２０１が実行する構成としたが、画像処理に係る演算を行う専用のチップを別途設け、ＣＰＵ２０１からの指示により演算を行う構成としてもよい。
【００８２】
また、本発明に係るコンピュータプログラムを記録する記録媒体Ｍとしては、前述したＦＤ及びＣＤ−ＲＯＭの他に、ＭＯ、ＭＤ、ＤＶＤ等の光ディスク、ハードディスク等の磁気記録媒体、ＩＣカード、メモリカード、光カード等のカード型記録媒体、マスクＲＯＭ、ＥＰＲＯＭ（Erasable Programmable Read Only Memory）、ＥＥＰＲＯＭ（Electrically Erasable Programmable Read Only Memory）、フラッシュＲＯＭ等による半導体メモリの利用も可能である。また、インターネットを含む通信ネットワークを接続可能なシステム構成であることから、通信ネットワークから本発明に係るコンピュータプログラムをダウンロードするようにしてもよい。
【００８３】
また、本発明のコンピュータプログラムは、単体のアプリケーションプログラム、ユーティリティプログラムとして提供される形態であってもよく、他のアプリケーションプログラム、ユーティリティプログラムに組み込み、そのプログラムの一部の機能として提供する形態であってもよい。例えば、その一形態としてプリンタドライバに組み込んで提供する形態が考えられる。この場合、原稿画像を読取って取得した画像データに対してラベリング処理を行い、ラベリング処理の結果に応じて画像処理を施した後、プリンタ言語に翻訳して目的のプリンタ装置へ送信する処理が行われる。
【００８４】
実施の形態４．
本発明をスキャナ装置（画像入力装置）及びプリンタ装置（画像出力装置）を備えるデジタル複合機に適用することも可能である。本実施の形態に係るデジタル複合機は、入力画像データから特定色が含まれているか否かを判断し、特定色が含まれていると判断した場合、特定色（例えば、肌色）の画素の閉領域を抽出する。そして、特定色の総画素数、又は特定色の画素の画像全体の画素数、写真領域の画素数に対する割合を求め、その結果に基づいて調整信号を求め、正確な色再現を行う第１色補正値を調整信号に基づいて予め定められた比率で加算して色補正値を求めて色補正処理を行う。
【００８５】
図１８はデジタル複合機の内部構成を説明するブロック図である。本実施の形態に係るデジタル複合機は、操作パネル１、画像入力装置３、画像処理装置５、及び画像出力装置７を備えている。
【００８６】
操作パネル１は、利用者による指示、選択操作を受付けるための各種スイッチ、ボタン、及び利用者に対して報知すべき情報を表示する液晶ディスプレイ装置などを備えている。
【００８７】
画像入力装置３は、原稿の画像を光学的に読取る手段であり、読取用の原稿に光を照射する光源、ＣＣＤ（Charge Coupled Device）のようなイメージセンサ等を備えている。画像入力装置３では、所定の読取位置にセットされた原稿からの反射光像を当該イメージセンサに結像させ、ＲＧＢ（R : Red, G : Green, B : Blue）のアナログ電気信号を出力する。画像入力装置３が出力したアナログ電気信号は画像処理装置５へ入力される。
【００８８】
画像処理装置５は、画像入力装置３から出力されるアナログ電気信号をデジタル電気信号に変換した後、特定色が含まれているか否かの判断を行い、特定色が含まれている場合に色補正を行って出力用の画像信号を生成する。生成した画像信号は画像出力装置７に出力される。本実施の形態では、出力用の画像信号としてＣＭＹＫ信号（C:Cyan, M:Magenta, Y:Yellow, K:Black）を生成するようにしている。なお、画像処理装置５の内部構成については後に詳述することとする。
【００８９】
画像出力装置７は、画像処理装置５が出力する画像信号に基づいて用紙、ＯＨＰフィルム等のシート上に画像形成を行う手段である。そのため、画像出力装置７は、感光体ドラムを所定の電位に帯電させる帯電器、外部から受付けた画像データに応じてレーザ光を発して感光体ドラム上に静電潜像を生成させるレーザ書込装置、感光体ドラム表面に形成された静電潜像にトナーを供給して顕像化する現像器、感光体ドラム表面に形成されたトナー像を用紙上に転写する転写器等（不図示）を備えており、電子写真方式にて利用者が所望する画像を用紙上に形成する。なお、レーザ書込装置を用いた電子写真方式により画像形成を行う他、インクジェット方式、熱転写方式、昇華方式等により画像形成を行う構成であってもよい。
【００９０】
以下、画像処理装置５の内部構成について説明する。画像処理装置５は、ＡＤ変換部５１、シェーディング補正部５２、原稿種別判定部５３、入力階調補正部５４、領域分離処理部５５、拡大縮小処理部５６、特定色判定部５７、色補正部５８、黒生成下色除去部５９、空間フィルタ処理部６０、出力階調補正部６１、階調再現処理部６２を備えている。
【００９１】
ＡＤ変換部５１は、画像入力装置３から入力されたＲＧＢのアナログ信号をデジタル信号に変換する。シェーディング補正部５２は、ＡＤ変換部５１から出力されたデジタル形式のＲＧＢ信号に対して、画像入力装置３の照明系、結像系、撮像系で生じる各種の歪みを取り除く処理を施す。また、シェーディング補正部５２ではカラーバランスの調整を行う。
【００９２】
原稿種別判定部５３は、シェーディング補正部５２にて各種の歪みが取り除かれカラーバランスの調整がなされたＲＧＢ（ＲＧＢの反射率信号）を濃度信号などカラー画像処理装置に採用されている画像処理システムの扱いやすい信号に変換すると共に、原稿種別の判定を行う。原稿種別判定部５３が判定結果として出力する原稿種別判定信号は、後段の特定色判定部５７に入力される。
【００９３】
入力階調補正部５４は、下地濃度の除去やコントラストなどの画質調整処理を行う。領域分離処理部５５は、ＲＧＢ信号より、入力画像中の各画素を文字領域、網点領域、写真領域の何れかに分離する処理を行う。領域分離処理部５５は、分離結果に基づき、画素がどの領域に属しているかを示す領域識別信号を後段の黒生成下色除去部５９、空間フィルタ処理部６０、及び階調再現処理部６２へ出力すると共に、入力階調補正部５４から出力された入力信号をそのまま後段の拡大縮小処理部５６へ出力する。拡大縮小処理部５６は、操作パネル１により入力される信号に基づいて画像の拡大又は縮小を行う。
【００９４】
特定色判定部５７は、入力画像データが予め定められた範囲内にあるか否かを判断し、画素毎に特定色であるか非特定色であるかを判定し、特定色である場合、特定色判定信号を出力すると共に、特定色と判定された画素の数をカウントする。また、特定色の画像データが閉領域であるか否かの判定を行う。
【００９５】
色補正部５８は、色再現の忠実化再現のために、不要吸収成分を含むＣＭＹ色材の分光特性に基づいた色濁りを取り除く処理を行うものである。黒生成下色除去部５９は、色補正後のＣＭＹの３色信号から黒（Ｋ）信号を生成する黒生成、元のＣＭＹ信号から黒生成で得たＫ信号を差し引いた新たなＣＭＹ信号を生成する処理を行う。この処理によってＣＭＹの３色信号はＣＭＹＫの４色信号に変換される。
【００９６】
黒生成処理の一例として、スケルトンブラックによる黒生成を行う方法（一般方法）がある。この方法では、スケルトンカーブの入出力特性をｙ＝ｆ（ｘ）、入力されるデータをＣ，Ｍ，Ｙ、出力されるデータをＣ’，Ｍ’，Ｙ’，Ｋ’、ＵＣＲ率（UCR : Under Color Removal）をα（０＜α＜１）とすると、黒生成下色除去処理は以下の式で表される。
【００９７】
Ｋ’＝ｆ｛ｍｉｎ（Ｃ，Ｍ，Ｙ）｝
Ｃ’＝Ｃ−αＫ’
Ｍ’＝Ｍ−αＫ’
Ｙ’＝Ｙ−αＫ’
【００９８】
空間フィルタ処理部６０は、黒生成下色除去部５９より入力されるＣＭＹＫ信号の画像データに対して、領域識別信号を基にデジタルフィルタによる空間フィルタ処理を行い、空間周波数特性を補正することによって出力画像のぼやけや粒子状劣化を防ぐように処理を行う。
【００９９】
例えば、領域分離処理部５５にて文字に分離された領域は、特に黒文字又は色文字の再現性を高めるために、空間フィルタ処理部６０による空間フィルタ処理における鮮鋭強調処理で高周波数の強調量が大きくされる。同時に、階調再現処理部６２においては、高周波数の再現に適した高解像度のスクリーンでの二値化又は多値化処理が選択される。また、領域分離処理部５５にて網点領域に分離された領域に関しては、空間フィルタ処理部６０において、入力網点成分を除去するためのローパスフィルタ処理が施される。そして、出力階調補正部６１において、濃度信号などの信号をカラー画像出力装置の特性値である網点面積率に変換する出力階調補正処理を行った後、階調再現処理部６２で最終的に画像を画素に分離してそれぞれの階調を再現できるように処理する階調再現処理を施す。また、領域分離処理部５５にて写真に分離された領域に関しては、階調再現性を重視したスクリーンでの二値化又は多値化処理が行われる。
【０１００】
前述した各処理が施された画像データは、一旦記憶手段（不図示）に記憶され、所定のタイミングで読み出されて画像出力装置７へ出力される。なお、以上の処理は、不図示のＣＰＵにより制御される。
【図面の簡単な説明】
【０１０１】
【図１】本発明に係るラベリング処理装置の内部構成を示すブロック図である。
【図２】仮ラベル付与処理での走査方向を説明する模式図である。
【図３】仮ラベル及びラベルテーブル値の定義を説明する説明図である。
【図４】仮ラベル付与処理の処理手順について説明するフローチャートである。
【図５】仮ラベル付与処理の処理手順について説明するフローチャートである。
【図６】仮ラベル付与処理の適用例を説明する説明図である。
【図７】仮ラベル連結処理の処理手順を説明するフローチャートである。
【図８】仮ラベル連結処理の処理手順を説明するフローチャートである。
【図９】仮ラベル連結処理の適用例を説明する説明図である。
【図１０】仮ラベル付与処理及び仮ラベル連結処理の処理内容をまとめた図表である。
【図１１】仮ラベル付与処理及び仮ラベル連結処理の実行手順の一例を説明する模式図である。
【図１２】ラベルテーブル整理処理の適用例を説明する説明図である。
【図１３】実施の形態２に係るラベリング処理装置の内部構成を示すブロック図である。
【図１４】仮ラベル付与・連結処理の処理手順について説明するフローチャートである。
【図１５】仮ラベル付与・連結処理の処理手順について説明するフローチャートである。
【図１６】仮ラベル付与・連結処理の処理手順について説明するフローチャートである。
【図１７】本発明のコンピュータプログラムがインストールされた画像処理装置の内部構成を説明するブロック図である。
【図１８】デジタル複合機の内部構成を説明するブロック図である。
【符号の説明】
【０１０２】
１０１  入力ＤＭＡ部
１０２，１０３  セレクタ
１０４  出力ＤＭＡ部
１１０  画像処理部
１１１  仮ラベル付与処理部
１１２  仮ラベル格納ラインバッファ
１１３  仮ラベル連結処理部
１１４  ラベルテーブル
１１５  ラベルテーブル整理処理部
１１６  ラベル補正処理部
【図１】
2007334431.tif 000003
【図２】
2007334431.tif 000004
【図３】
2007334431.tif 000005
【図４】
2007334431.tif 000006
【図５】
2007334431.tif 000007
【図６】
2007334431.tif 000008
【図７】
2007334431.tif 000009
【図８】
2007334431.tif 000010
【図９】
2007334431.tif 000011
【図１０】
2007334431.tif 000012
【図１１】
2007334431.tif 000013
【図１２】
2007334431.tif 000014
【図１３】
2007334431.tif 000015
【図１４】
2007334431.tif 000016
【図１５】
2007334431.tif 000017
【図１６】
2007334431.tif 000018
【図１７】
2007334431.tif 000019
【図１８】
2007334431.tif 000020