(57)【要約】【課題】  画素ごとの属性を示す属性データのデータ量を抑えると共に、画素ごとの属性に基づいた処理を行うときの処理時間の短縮を可能とする。【解決手段】  ｘ方向に沿って、画素の属性値を順に取得し、下地と異なる属性値を検出したときには、その画素座標をラン開始座標として、ランごとに、ラン開始座標、ラン終了画素座標、属性値を取得し、一つのラン情報を生成する（ステップ１０６〜ステップ１２４）。また、１ライン分の処理を終了すると終端符号を付加する（ステップ１２６）。これを、ｙ方向に沿って繰り返すことにより、画像データに対する属性データを、ランレングス符号化形式で符号化して取得する。【選択図】        図３
2007036471.tif 000002
【特許請求の範囲】
【請求項１】
画像データに対して、画素ごとに属性情報を設定し、各画素ごとの属性情報に基づいて前記画像データに対する画像処理を行うときの画像処理方法であって、
前記画像データの前記画素ごとに属性を判別して、
前記画素の座標又は位置に関する情報と画素に対応する属性を、ランレングス符号化形式で符号化し、
前記属性情報を生成することを特徴とする画像処理方法。
【請求項２】
前記画像データによって形成される画像の縦又は横方向の１ラン分ずつ、前記ランレングス符号化形式で符号化する、
ことを特徴とする請求項１に記載の画像処理方法。
【請求項３】
前記請求項１又は前記請求項２に記載の画像処理方法で、前記属性情報が形成された前記画像データを、前記画素ごとの属性に基づいて画像処理する画像処理方法であって、
前記ランレングス符号化形式で符号化された前記属性情報から、前記属性が同じで連続する画素を抽出し、
前記抽出した画素に対して前記属性に基づいた処理を設定する、
ことを特徴とする画像処理方法。
【請求項４】
画像データに対して、画素ごとの属性に基づいて画像処理を行う画像処理装置であって、
前記画素ごとの属性を判別する属性判別手段と、
前記属性判別手段の判別結果に基づいて前記画素の座標又は位置に関する情報と画素に対応する属性をランレングス符号化形式で符号化して前記画像データの属性情報を取得する属性情報取得手段と、
を含むことを特徴とする画像処理装置。
【請求項５】
前記属性情報取得手段が、前記画像データによって形成される画像の縦又は横方向の１ライン分ごとに符号化する、
ことを特徴とする請求項４に記載の画像処理装置。
【請求項６】
前記属性判別手段及び前記属性情報取得手段が、ソフトウェアモジュールによって形成されていることを特徴とする請求項４又は請求項５に記載の画像処理装置。
【請求項７】
前記請求項４から前記請求項６のいずれか１項に記載の画像処理装置で、前記属性情報が形成された前記画像データを、前記画素ごとの属性に基づいて画像処理する画像処理装置であって、
符号化された前記属性情報から、前記属性が同じで連続する画素を抽出し、前記抽出した画素に対して前記属性に基づいた処理を設定する処理設定手段と、
前記処理設定手段の設定に基づいて前記画像データを前記画素ごとに画像処理する画像処理手段と、
を含むことを特徴とする画像処理装置。
【請求項８】
前記処理設定手段が、ソフトウェアモジュールによって形成されていることを特徴とする請求項７に記載の画像処理装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、複写機、ファクシミリ等の画像形成装置やスキャナなどの画像入力装置など、プログラムによって実行される画像処理方法及び画像処理装置に関する。
【背景技術】
【０００２】
画像処理を行うときには、例えば文字、写真、網点、下地などの種別を画素ごとの画像の属性を付加して、属性を判別しながら、ガンマ変換部では、濃度変換曲線の切り替えを行ったり、空間フィルタ部では、空間フィルタ係数の切り替えを行う提案がなされている（例えば、特許文献１参照。）。
【０００３】
このような画像処理を行うときには、属性データを圧縮無しの画像データ形式で扱う。すなわち、処理対象画像データの横の画素数＝属性データの横の画素数、処理対象画像データの縦の画素数＝属性データの縦の画素数、となっており、画像データの注目画素を処理するときには、対応する属性データの情報を参照しながら、１画素単位で処理を行うことが特徴となっている。
【０００４】
ところで、上記処理を行うときには、属性データとして処理対象画像と同じサイズのデータを扱う必要がある。このために、大きな記憶領域が必要となっている。これにより、例えば、属性として文字と写真の２つしか持たないときであれば、属性データとしては、各画素に対して１ビットのデータで十分であり、データを保持するメモリサイズも小さくて済むが、属性として文字、写真、網点、グラフィック、下地等としていると、属性データとして各画素に対して３ビットのデータを持つ必要があり、３ビットの画像を扱うには、処理が複雑となってしまう。
【０００５】
また、処理が複雑化しないようにする方法としては、３ビットで十分なときに、８ビットの属性データとして扱う方法があるが、この方法では、画像処理を行うときに、属性データを格納するために大きな記憶領域を必要とすることになってしまう。
【０００６】
ここから、属性データを画像データに付随させて扱う方法が提案されている（例えば、特許文献２参照。）。
【０００７】
この提案では、画素ごとに画像の属性を判別する２ビットの属性データを付加して送りようにし、この属性データが画像の拡大、縮小に合わせて、拡大、縮小を行い、また、属性データを参照しながら、空間周波数特性の変換などの処理を行ったりするようにしている。
【０００８】
しかしながら、予め設定した属性を持つ画像のみに対して後段での処理を行うときにも、全ての画素に対する属性データを参照しなければならず、そのために処理時間が増大してしまうという問題がある。
【特許文献１】特開平４−２３９２６９号公報
【特許文献２】特開平６−３３４８５６号公報
【発明の開示】
【発明が解決しようとする課題】
【０００９】
本発明は上記事実に鑑みてなされたものであり、画像の属性データを参照して処理を行うときに、属性データの取り扱いが容易で、属性データを参照するのに必要とするメモリ領域を少なくできると共に、処理時間の短縮を図ることが可能となる画像処理方法及び画像処理装置を提供することを目的とする。
【課題を解決するための手段】
【００１０】
上記目的を達成するために本発明は、画像データに対して、画素ごとに属性情報を設定し、各画素ごとの属性情報に基づいて前記画像データに対する画像処理を行うときの画像処理方法であって、前記画像データの前記画素ごとに属性を判別して、前記画素の座標又は位置の情報と画素に対応する属性を、ランレングス符号化形式で符号化し、前記属性情報を生成することを特徴とする。
【００１１】
また、本発明は、前記画像データによって形成される画像の縦又は横方向の１ラン分ずつ、前記ランレングス符号化形式で符号化する、ことを特徴とする。
【００１２】
この発明によれば、画素ごとの属性を判別し、この判別結果に基づいて、画素と画素の属性をランレングス符号化形式で符号化して属性情報を生成する。
【００１３】
これにより、画素と画素ごとの属性を、１対１とした属性情報に比べて、データ量を抑えることができ、必要とするメモリ領域を狭めることが可能となる。
【００１４】
また、本発明は、前記請求項１又は前記請求項２に記載の画像処理方法で、前記属性情報が形成された前記画像データを、前記画素ごとの属性に基づいて画像処理する画像処理方法であって、前記ランレングス符号化形式で符号化された前記属性情報から、前記属性が同じで連続する画素を抽出し、前記抽出した画素に対して前記属性に基づいた処理を設定する、ことを特徴とする。
【００１５】
この発明によれば、例えば、画像の１ラン分の画素について属性に基づいた処理を設定することができ、これにより、画素ごとに属性に基づいた処理を設定するに比べて、処理時間の短縮を図ることができる。
【００１６】
このような本発明が適用される画像処理装置は、画像データに対して、画素ごとの属性に基づいて画像処理を行う画像処理装置であって、前記画素ごとの属性を判別する属性判別手段と、前記属判別断手段の判別結果に基づいて前記画素の座標又は位置の情報と画素に対応する属性をランレングス符号化形式で符号化して前記画像データの属性情報を取得する属性情報取得手段と、を含むことができ、また、前記属性情報取得手段が、前記画像データによって形成される画像の縦又は横方向の１ライン分ごとに符号化する、ことが好ましい。
【００１７】
また、本発明の画像処理装置は、前記請求項４から前記請求項６のいずれか１項に記載の画像処理装置で、前記属性情報が形成された前記画像データを、前記画素ごとの属性に基づいて画像処理する画像処理装置であって、符号化された前記属性情報から、前記属性が同じで連続する画素を抽出し、前記抽出した画素に対して前記属性に基づいた処理を設定する処理設定手段と、前記処理設定手段の設定に基づいて前記画像データを前記画素ごとに画像処理する画像処理手段と、を含むものであれば良い。
【００１８】
また、本発明の画像処理装置は、前記属性判別手段と前記属性情報取得手段、又は、前記処理設定手段を、ソフトウェアモジュールによって形成することができる。
【発明の効果】
【００１９】
以上説明したように本発明によれば、画素ごとの属性をランレングス符号化方式で符号化して、画像データの属性情報を生成するので、属性情報のデータ量の削減が可能となると共に、属性が同じ連続した画素に対して、まとめて属性を取得できるので、画素ごとの属性に基づいた画像処理を行うときの処理時間の短縮を図ることができるという優れた効果が得られる。
【発明を実施するための最良の形態】
【００２０】
以下に、図面を参照しながら本発明の実施の形態を説明する。図１には、本発明の実施の一形態に適用する画像処理装置１０の要部の概略構成を示している。
【００２１】
本発明が適用される画像処理装置１０は、図示しないＣＰＵ、ＲＯＭ、ＲＡＭ及び所定のハードウェアなどがバス等に接続され、所定のプログラムによって各種の画像処理が可能であれば良く、これにより、画像処理装置１０は、画像データが入力される画像入力部１２、入力された画像データを格納する画像メモリ部１４、入力された画像データに対して各種の処理を実行する画像処理部１６及び、画像処理された画像データを出力する画像出力部１８が形成されている。
【００２２】
これにより、画像処理装置１０では、画像入力部１２から入力された画像データに対して、所定の画像処理を実行して出力可能となっている。
【００２３】
なお、画像入力部１２に入力される画像データとしては、スキャナなどによって読み込んだ画像データなど任意の画像データを適用することができる。また、画像出力部１８は、画像データを印刷出力装置へ出力するものであっても良く、パーソナルコンピュータ等へ出力するものであっても良い。
【００２４】
このような画像処理装置１０としては、画像処理機能を備えたスキャナなどの画像入力装置、印刷出力装置などの画像形成装置、画像読取機能及び印刷出力機能を合わせ持つ複写機などの一般的構成の画像処理装置に所定のモジュール（ソフトウェアモジュール）を付加したものであっても良い。
【００２５】
ところで、この画像処理装置１０には、画像属性判別部２０が設けられている。この画像属性判別部２０では、画像データに対して、画素ごとに画像の属性を判別して、属性データを生成する。また、画像属性判別部２０では、画素ごとに属性データを判別し、判別した属性に基づいた画像処理が可能となるようにしている。
【００２６】
この画像属性判別部２０では、画像メモリ部１４に格納されている画像データから、属性判別処理に必要なデータを抽出し、各画素単位で、その画素が形成する画像の属性を判定し、画素ごとの属性データを生成すると共に、ラングレンス符号化形式のデータを生成する。
【００２７】
ここで属性の判別処理の一例を説明する。なお、ここでは、画像の属性として、文字、写真、網点、下地の４種類に分類するものとしている。また、図２には、ここで用いる画像データの座標系を示しており、この座標系は、例えば、スキャナなどによって原稿を読み込んで入力された画像データに対しては、主走査方向をｘ軸、副走査方向をｙ軸として
いる。
【００２８】
属性判別処理は、例えば、５×５ウインドなどの所定サイズのウインドを適用し、このウインド内の最大輝度値Ｌmaxと、最小輝度値Lminを検出し、
ａ）  （Ｌmax−Lmin）＞所定値
であるときには、その画素を文字画素と判定し、
ｂ）  （Ｌmax−Ｌmin）＜所定値、Ｌmin＜上限値、Ｌmax＞下限値
の全てを満足するときには、写真画素と判定し、
ｃ）  予め登録した網点パターンに合致する
ならば、網点画素と判定する。また、ａ〜ｃのいずれにも当てはまらないときには、下地画素と判定する。なお、属性判別処理は、このアルゴリズムに限らず、任意のアルゴリズムを適用することができる。
【００２９】
画像属性判別部２０では、この判定結果に基づいた各画素の属性データを、ランレングス符号化形式で符号化する。
【００３０】
ここで生成するラングレンスデータは、１次元のランであり、「ランの開始画素座標（start）」＋「ランの終了画素座標（end）」＋「ランの属性値（value）」という形式でデータを保持する。なお、ランデータ形式としては、これに限らず、例えば、「ラン開始画素座標」＋「ランの長さ（連続する画素数）」＋「ランの属性値」などのように他の形式であっても良い。
【００３１】
画像属性判別部２０では、１つの画像データに対する全てのラン情報を合わせたものを属性データとする。また、画像属性判別部２０では、ラン情報を登録していくためのラン情報格納バッファ２２を画像メモリ部１４に確保して格納する。
【００３２】
なお、ここでは、一例として、属性判定とラングレンス符号化処理を、属性判定部２０で行うようにするが、これに限らず、属性判定処理部と符号化処理部を分けて用いても良い。
【００３３】
画像処理部１６は、画像属性判別部２０で生成された属性データを用い、画像メモリ部１４に格納している画像データに対して、例えば、フィルタ処理、色補正処理などの予め設定している画像処理を実行する。なお、この画像処理部１６での処理は、任意の処理を行うものであっても良い。
【００３４】
ここで、図３を参照しながら、本発明に係る属性データの生成処理の一例を説明する。なお、ここでは、画像属性の判別後での属性データの生成処理を説明する。
【００３５】
また、属性値としては、下地を０、文字を１、写真を２、網点を３とし、下地画素は、ラン情報としてラン情報格納バッファ２２へは登録せず、下地以外の文字、写真、網点のラン情報を登録するものとしている。
【００３６】
また、startはランの開始画素座標、endはランの終了画素座標、valueはランの属性値とし、ランの終端符号としてstart＝−１、end＝−１、value＝−１と定義しておく。
【００３７】
このフローチャートは、例えばスキャナなどの画像読取装置によって読み取られた画像データが、画像入力部１２に入力されて、画像メモリ部１４に格納されることにより実行され、最初のステップ１００では、ｙ方向のラインカウンタｙをリセット（ｙ＝０）し、ステップ１０２では、ラインカウンタｙと、ｙ方向の画素数である画像の高さから、ｙ方向の処理が全て終了したか否かを確認する。
【００３８】
このときに、ラインカウンタｙが、画像の高さに達しておらず、ｙ方向の処理が終了していないと判断されたときには、ステップ１０２で否定判定してステップ１０４へ移行する。
【００３９】
このステップ１０４では、ｘ方向のラインカウンタｘをリセット（ｘ＝０）し、ステップ１０６では、ラインカウンタｘと、ｘ方向の画像数である画像の横の長さから、ｘ方向の１ライン分の処理が終了しているか否かを確認する。
【００４０】
ここで、ラインカウンタｘが画像の横の長さに達しておらず、ｘ方向の処理が終了していないと判断されたときには、ステップ１０６で否定判定してステップ１０８へ移行する。
【００４１】
このステップ１０８では、ラインカウンタｘで示されるｘ座標の画素の属性を判別して判別した属性（属性値）を取得し、ステップ１１０では、取得した属性値が下地であるか否かを確認する。このときに、画素の属性が下地であるときには、ステップ１１０で肯定判定してステップ１１２へ移行し、ラインカウンタｘをインクリメント（ｘ＝ｘ＋１）して、ステップ１０６に戻り、次の画素に対する処理を行う。
【００４２】
一方、判別した属性が下地でないときには、ステップ１１０で否定判定してステップ１１４へ移行する。このステップ１１４では、その画素座標をランの開始画素座標に設定すると共に、属性値を設定する（start＝ｘ、value＝属性値）。
【００４３】
次のステップ１１６では、ラインカウンタｘをインクリメントし、ステップ１１８では、ラインカウンタｘに対応する画素の属性値を取得する。また、ステップ１２０では、取
得した画素の属性値が、ランの属性値と同じか否かを確認する。このときに、属性値に変化がなければ、ステップ１２０で肯定判定してステップ１１６へ戻り、次の画素に対する処理を行う。
【００４４】
ここで、属性値が変化したときには、ステップ１２０で否定判定してステップ１２２へ移行する。このステップ１２２では、この画素より一つ前の画素の画素座標（ｘ−１）をランの終了画素に設定し（end＝ｘ−１）する。この後、ステップ１２４では、このランのラン情報をラン情報格納バッファ２２に登録し、ステップ１１０へ移行して、この画素に対する処理を行う。
【００４５】
一方、ｘ方向に沿った１ライン分の処理が終了すると、ステップ１０６で肯定判定され
る。これにより、ステップ１２６へ移行し、ラン情報格納バッファ２２に終端符号を登録し、ステップ１２８では、ｙ方向のラインカウンタｙをインクリメントしてステップ１０２へ移行することにより、次のラインに対する処理を開始し、全ての画像データの全域に対する処理が終了することにより、ステップ１０２で肯定判定して、属性データの生成を完了する。
【００４６】
図４には、ランレングス符号化形式の属性データを用いた処理の概略を示している。なお、ここでは、前ランの終了画素座標をpendとし、属性データが画像メモリ部１４に格納されているものとする。また、前ランの終了画素座標pendは、pend＝−１で初期化状態となるものとしている。
【００４７】
このフローチャートは、対応する画像データに対する処理に合わせて実行され、最初のステップ１５０で、ｙ方向のラインカウンタｙをリセットし（ｙ＝０）、ステップ１５２では、ラインカウンタｙと画像高さから、ｙ方向の処理が全て終了したか否かを確認する。このときに、ラインカウンタｙが画像の高さに達していないときには、ステップ１５２で否定判定してステップ１５４へ移行する。
【００４８】
ステップ１５４では、前ランの終了画素座標pendを初期化し（pend＝−１）、ステップ１５６では、ラン情報（start、end、value）を取得し、次のステップ１５８では、取得したラン情報が、終端符号（−１、−１、−１）であるか否かを確認する。
【００４９】
ここで、取得したラン情報が主端符号であるときには（（start、end、value）＝（−１、−１、−１））、ステップ１５８で肯定判定してステップ１６０に移行する。
【００５０】
このステップ１６０では、前ランの終了画素座標pendの次の画素座標（pend＋１）から、このライン（ｘ方向のライン）の終端画素までの、属性が下地となっているので、下地用の処理を適用するように設定する。また、ステップ１６２では、ラインカウンタｙをインクリメントして、ステップ１５２へ戻ることにより、次のｙ方向のラインに対する処理を行う。
【００５１】
一方、取得したラン情報が終端符号でなければ、ステップ１５８で否定判定してステップ１６４へ移行する。
【００５２】
このステップ１６４では、座標（pend＋１）〜座標（start−１）の画素に対して、下地処理を適用するように設定する。これと共に、ステップ１６６では、取得したラン情報に基づいて、座標startから座標endまでの画素に対して、属性値valueによって特定される属性に応じた処理を適用するように設定する。
【００５３】
この後、ステップ１６８では、前ランの終了画素座標pendに、取得しているラン情報の終了画素endを設定し、ステップ１５６へ戻ることにより、次のラン情報に基づいた処理設定を行う。
【００５４】
このように、画像処理装置１０では、画像データが入力されると、画像属性判別部２０が、この画像データに対して、画素ごとの属性を判別し、判別結果に基づいた属性データを生成する。
【００５５】
このときに画像ごとの属性データを１ライン分ずつランレングス符号化形式で符号化することより、一つの画像データに対する属性データのデータ量を抑えることができる。特に、下地領域の広い画像データや、個々の画像が大きい画像データに対しては、属性データのデータ量を大幅に削減することが可能となる。
【００５６】
一方、画像処理装置１０では、画像データに対する画像処理を、画素ごとの属性データを用いて行う。
【００５７】
このとき、画像属性判定部２０は、１ライン分（ｙ方向に沿った１ライン分）の属性データを作成し、画像処理部１６では、１ライン分の画素に対する画像処理を行うようにしており、これを繰り返すことにより、画像データの全ライン分に対する処理が行われる。
【００５８】
このとき、属性は、１ラン分ずつ取得されるので、１ライン中の各画素に対して個別に属性を取得する場合に比べて、処理負荷の軽減を図ることができると共に、属性を取得するための処理時間の短縮を図ることができる。
【００５９】
なお、以上説明した本実施の形態は、本発明の一例を示すものであり、本発明の構成を限定するものではない。例えば、本実施の形態では、下地のラン情報のみを取得しないことにより、属性が下地となる画素の属性も含まれるようにしたが、属性データには、属性が下地となる画素のラン情報も含むものであってもよい。
【００６０】
また、下地に換えて、他の属性のラン情報を除いた属性データを取得するようにしても良い。このとき、例えば、画像データによって形成される画像で、最も画素数の多い属性に対するラン情報を、属性データから除くことにより、属性データのデータ量削減を図ることが可能となる。
【００６１】
さらに、本実施の形態では、ラン情報として、「ラン開始画素座標」、「ラン終了画素座標又はランの長さ（画素数）」及び、「属性値」を用いたが、属性データに含まれるラン情報の形式は、これに限るものではない。例えば、全ての属性値を含むように属性データを形成するときには、ラン情報として「ラン開始画素座標」と「属性値」を用いることもできる。
【００６２】
また、ラン情報は、これに限るものではなく、ランレングス符号化形式で符号化した任意のデータ形式を適用することができる。
【図面の簡単な説明】
【００６３】
【図１】本実施の形態に適用した画像処理装置の一例を示す概略構成図である。
【図２】本実施の形態における画像データの座標系を示す概略図である。
【図３】属性データの生成処理の一例を示す流れ図である。
【図４】属性データからの画素ごとの属性の取得の一例を示す流れ図である。
【符号の説明】
【００６４】
１０    画像処理装置
１２    画像入力部
１４    画像メモリ
１６    画像処理部（画像処理手段）
１８    画像出力部
２０    画像属性判別部（属性判別手段、属性情報取得手段、処理設定手段）
２２    ラン情報格納バッファ（属性情報取得手段）
【図１】
2007036471.tif 000003
【図２】
2007036471.tif 000004
【図３】
2007036471.tif 000005
【図４】
2007036471.tif 000006