説明

画像処理装置、画像読取装置及び画像形成装置

【課題】画像データの転送量及びメモリの使用量等を低減することができる画像処理装置、並びにこの画像処理装置を搭載した画像読取装置及び画像形成装置を提供する。
【解決手段】入力画像データ中の隣接する画素の画素値の差分が、画像の主走査方向及び/又は副走査方向に増加から減少へ又は減少から増加へ転じる反転回数を反転回数カウント処理部61にて算出する。入力画像データの各画素について算出された反転回数が閾値を超えるか否かを平坦判定処理部62にて判定し、判定結果に基づいて領域判定処理部63が入力画像データを変化領域及び平坦領域に分離する。画像データフォーマット変換部64は、変化領域の解像度を低減すると共に、変化領域及び平坦領域の情報をヘッダ情報として付与した画像データを生成して出力する。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、画像データのデータ量を低減することができる画像処理装置、並びにこの画像処理装置を搭載した画像読取装置及び画像形成装置に関する。
【背景技術】
【0002】
従来、電子写真方式又はインクジェット方式等により画像形成を行う複写機又は複合機等の画像形成装置が広く普及している。また近年の複合機は高機能化が進められており、スキャナにより読み取った文書を電子データとして保存し、保存した文書ファイルを管理する機能、及び文書データを電子メールとして送信する機能等が求められている。スキャナにより読み取った文書は画像データとして保存されるが、この画像データは一般的に容量が大きいため、画像データを蓄積又は送信する場合にはデータ量を低減する画像の圧縮技術などが必要不可欠である。
【0003】
高圧縮率を実現するための画像の圧縮技術の1つにレイヤ−分離による圧縮技術がある。図30は、レイヤ−分離による圧縮技術を説明するための模式図である。この圧縮技術は、入力された画像データに係る画像(図30(a)参照)を前景レイヤ(同図(b)参照)及び背景レイヤ(同図(c)参照)の2つの画像データに分離し、各レイヤに適した画像データの圧縮を行うことによって、最終的な圧縮画像の圧縮率を高めることができる。
【0004】
前景レイヤは、文字又は線画(以下、文字等という)による画像であり、JBIG(Joint Bi-level Image experts Group)、MMR(Modified Modified Read)又はLZW(Lempel Ziv Welch)等の可逆圧縮方式による圧縮が適している。また背景レイヤは、文字又は線画以外の画像であり、JPEG(Joint Photographic Experts Group)などの非可逆圧縮方式による圧縮が適している。非可逆圧縮方式は、圧縮率の制御が容易であるため、画像データの用途などに応じて、データ量を優先して圧縮率を高めたり、又は、画質を優先して圧縮率を低減したりすることができる。これに対して可逆圧縮方式は、圧縮率を制御することは容易でない。
【0005】
図31は、前景レイヤの圧縮率を高める方法の一例を説明するための模式図である。入力画像データから分離した前景レイヤ(図31(a)参照)を、文字等の画素及びそれ以外の画素に2値化したマスク(同図(b)参照)と、文字等の色に係る情報を抽出した色情報(同図(c)参照)とに更に分離する。分離により得られたマスクを可逆圧縮方式により圧縮し、色情報を可逆圧縮方式又は非可逆圧縮方式のいずれかにより圧縮することによって、前景レイヤを直接的に圧縮する方法と比較して、圧縮率を向上することができる。
【0006】
また、圧縮率を向上するための技術として、カラー画像の画素値(カラー値)に対応付けてインデックスを付与し、このカラー画像の各画素をインデックスに変換するインデックス化を行うと共に、画素値毎の画素数などの情報を含むカラー情報、及びこの情報から生成した背景色情報等から、複数のインデックスを1つのインデックスに統合する技術がある。インデックスの統合によって画像データのデータ量が低減される。
【0007】
このような画像データを圧縮するための画像処理を行う場合、複合機などの内部においては、複数の画像処理部の間で、又は画像データを記憶するメモリと画像処理部との間で、画像データの転送を行う必要がある。画像データの転送は1ページ分のデータを順に転送する方法が一般的であるが、複合機などが扱う画像の高画質化が求められることによって、転送する画像データのデータ量は増大するという問題がある。また、データ量の多い画像データを記憶するためには大容量のメモリを複合機などに搭載する必要がある。
【0008】
特許文献1においては、第1メモリに記憶された画像データを矩形領域毎に分割して読み出すためのアドレス情報を生成するアドレス生成部と、アドレス情報に基づいて画像データを矩形領域単位で第1メモリから第2メモリへ転送する転送部と、第2メモリに記憶された矩形領域単位の画像データに対する画像処理を設定された画像処理モードに応じて実行する画像処理部とを備えて、アドレス生成部が複数の画像処理モード毎に異なる矩形領域となるようにアドレス情報を生成する構成とすることにより、画像処理モードに適した画像処理を実行することができる画像処理装置が提案されている。この画像処理装置は、1ページ分の画像データを複数の矩形領域に分割することによって、ラインバッファの最大主走査画素数への依存をなくすことができるため、画像の主走査幅又は解像度等を変更した場合であっても、ラインバッファの容量の増加によることなく、これに対応することができる。
【特許文献1】特開2006−139803号公報
【発明の開示】
【発明が解決しようとする課題】
【0009】
しかしながら特許文献1に記載の画像処理装置は、ラインバッファの容量の増加によることなく、画像の主走査幅又は解像度等の変更に対応することを目的とするものであり、画像データの矩形領域毎に転送を行っても、通常の画像データの転送の場合と比較して、転送する画像データの容量は同じである。また、画像データ自体の容量が変わらないため、この画像データを記憶するためのメモリの使用容量も同じである。
【0010】
本発明は、斯かる事情に鑑みてなされたものであって、その目的とするところは、画像データを変化領域及び平坦領域に分離し、平坦領域の解像度を低減した画像データを生成する構成とすることにより、画像データの転送容量及びメモリへの記憶容量等を低減することができる画像処理装置、並びにこの画像処理装置を搭載した画像読取装置及び画像形成装置を提供することにある。
【課題を解決するための手段】
【0011】
本発明に係る画像処理装置は、入力画像データを画素値の変化が大きい変化領域及び変化が小さい平坦領域に分離する分離手段と、該分離手段により分離された平坦領域の解像度を低減する解像度低減手段と、前記分離手段により分離された変化領域、及び前記解像度低減手段により解像度を低減された平坦領域に係るヘッダ情報を生成するヘッダ情報生成手段と、該ヘッダ情報生成手段が生成したヘッダ情報、前記分離手段により分離された変化領域、及び前記解像度低減手段により解像度を低減された平坦領域を含む画像データを生成する画像データ生成手段と、該画像データ生成手段が生成した画像データを記憶するメモリと、前記画像データ生成手段が生成した画像データに画像処理を施す画像処理手段と、前記メモリ及び前記画像処理手段の間の画像データの転送を行う画像データ転送手段とを備え、前記画像データ転送手段は、前記メモリから読み出した画像データを、ヘッダ情報に基づいて平坦領域の解像度を変化領域と同じ解像度へ変換して、前記画像処理手段へ与え、前記画像処理手段が画像処理を施した画像データを、前記分離手段、解像度低減手段、ヘッダ情報生成手段及び画像データ生成手段により平坦領域の解像度を低減した画像データに変換して、前記メモリへ与えるようにしてあることを特徴とする。
【0012】
また、本発明に係る画像処理装置は、入力画像データから注目画素及び該注目画素を含む所定範囲の画素領域を決定する決定手段と、該決定手段が決定した画素領域にて、隣接する画素の画素値の差分が、画像の主走査方向及び/又は副走査方向に増加から減少へ又は減少から増加へ転じる回数を計数する計数手段と、該計数手段が計数した回数が所定値未満の場合に、前記注目画素が平坦領域に含まれる画素であると判定する判定手段とを更に備え、前記分離手段は、前記判定手段が平坦領域に含まれる画素であると判定した画素で構成された領域を、平坦領域に分離するようにしてあることを特徴とする。
【0013】
また、本発明に係る画像処理装置は、入力画像データから注目画素及び該注目画素を含む所定範囲の画素領域を決定する決定手段と、該決定手段が決定した画素領域にて、最大画素値及び最小画素値の差分を算出する算出手段と、該算出手段が算出した差分が所定値未満の場合に、前記注目画素が平坦領域に含まれる画素であると判定する判定手段とを更に備え、前記分離手段は、前記判定手段が平坦領域に含まれる画素であると判定した画素で構成された領域を、平坦領域に分離するようにしてあることを特徴とする。
【0014】
また、本発明に係る画像処理装置は、画像データから文字又は線画を含む前景画像を抽出する抽出手段を更に備え、前記分離手段は、前記抽出手段が抽出した前景画像の画像データを分離するようにしてあることを特徴とする。
【0015】
また、本発明に係る画像処理装置は、前記画像データ生成手段が生成した画像データから、同じ又は近似する画素値を有する画素に同一のインデックスを付す処理を行うインデックス化処理手段と、前記インデックス及び画素値の対応を記憶したテーブルを生成するテーブル生成手段とを更に備えることを特徴とする。
【0016】
また、本発明に係る画像読取装置は、上述のいずれか1つの画像処理装置と、原稿を読み取って生成した画像データを出力する読取手段とを備え、前記画像処理装置は、前記読取手段が出力した画像データに画像処理を施すようにしてあることを特徴とする。
【0017】
また、本発明に係る画像形成装置は、上述のいずれか1つの画像処理装置と、該画像処理装置が画像処理を施した画像データに基づく画像形成を行う画像形成手段とを備えることを特徴とする。
【0018】
本発明においては、入力された画像データを画素値の変化が大きい変化領域と変化が小さい変化領域とに分離し、平坦領域の解像度を低減することによって、画像データの画質の劣化を抑制しつつ、データ量を低減する。更に、これら変化領域及び平坦領域に係る情報を含むヘッダ情報を生成し、変化領域、平坦領域及びヘッダ情報による画像データを生成する。これにより、平坦領域の解像度を低減した画像データをメモリに記憶して、メモリの使用量を低減することができる。
また、メモリから画像処理用IC(Integrated Circuit)などの画像処理手段へ画像データを転送する際には、メモリから読み出した画像データの平坦領域の解像度をヘッダ情報を基に変化領域と同じ解像度に変換して画像処理手段へ与える。これにより、画像処理手段は元の入力画像データと同じ解像度の画像データに対して画像処理を行うことができる。画像処理手段が画像処理を施した画像データは、平坦領域の解像度を低減してメモリに記憶する。これらにより、メモリと画像処理手段との間で転送される画像データを、平坦領域の解像度が低減された画像データとすることができ、データ転送量を低減できる。
【0019】
また、本発明においては、入力画像データの注目画素を含む所定範囲の画素領域にて、隣接する画素の画素値の差分が、画像の主走査方向及び/又は副走査方向に増加から減少へ又は減少から増加へ転じる回数を計数し、この回数が所定値未満の場合に注目画素が平坦領域に含まれる画素であると判定する。画素値の比較と反転回数の計数との簡単な演算のみで、変化領域と平坦領域との分離を容易に行うことができる。
【0020】
画像データ中のサイズの大きな文字などは上述の反転回数が少ない場合があり、平坦領域と判定される虞がある。そこで本発明においては、入力画像データの注目画素を含む所定範囲の画素領域にて、最大画素値及び最小画素値の差分を算出し、この差分が所定値未満の場合に注目画素が平坦領域に含まれる画素であると判定する。これにより、大きな文字などの領域は変化領域と判定されるため、大きな文字などの解像度を低減することがなく、画質劣化を防止できる。
【0021】
また、本発明においては、入力画像データを文字又は線画を含む前景画像を抽出してそれ以外の背景画像と分離し、前景画像の平坦領域の解像度を低減する。これにより、平坦領域が多い前景画像のデータ量を効率的に低減でき、写真画像などを含む背景画像はJPEGなどの最適な圧縮方式によりデータ量を低減できる。よって、入力画像データのデータ量をより効率的に低減できる。
【0022】
また、本発明においては、画像データ中の同じ又は近似する画素値を有する画素に対して同一のインデックスを付して画像データのインデックス化を行う。これにより、画像データのデータ量をより低減することができる。また、インデックスと画素値とを対応付けて記憶したテーブルを生成しておくことにより、インデックス化された画像データを元の画像データに戻すことができ、適切な画像処理を行うことができる。
【0023】
また、本発明においては、スキャナなどの原稿を読み取って画像データを出力する画像読取装置に、上述の画像処理装置を搭載する。これにより、読み取った画像データの平坦領域の解像度を低減して、画質の劣化を抑制しつつ画像データのデータ量を低減することができるため、読み取った画像データによるメモリの使用量及び画像データの転送量等を低減することができる。
【0024】
また、本発明においては、プリンタなどの画像形成装置に上述の画像処理装置を搭載し、画像処理装置にて画像処理が施された画像データの画像形成を行う。これにより画像形成に伴う画像処理にて、画質の劣化を抑制しつつメモリの使用量及び画像データの転送量等を低減することができる。
【発明の効果】
【0025】
本発明による場合は、入力された画像データを変化領域及び平坦領域に分離し、平坦領域の解像度を低減すると共に、これら変化領域及び平坦領域に係る情報を含むヘッダ情報を生成し、変化領域、平坦領域及びヘッダ情報による画像データを生成する構成とすることにより、入力画像データの画質の劣化を抑制しつつ、データ量が低減された画像データを生成することができる。ヘッダ情報に基づいてデータ量が低減された画像データに対する画像処理を行うことができるため、画像データの記憶のためのメモリ使用量を低減することができ、メモリ及び画像処理手段等の間で行う画像データの転送量を低減することができる。
【発明を実施するための最良の形態】
【0026】
(実施の形態1)
以下、本発明をその実施の形態を示す図面に基づき具体的に説明する。なお本実施の形態においては、原稿の読み取りを行う原稿読取装置としての機能及び画像の形成を行う画像形成装置としての機能を兼ね備えるデジタルカラー複合機(以下、MFP(MultiFunction Peripheral)という)を例に説明を行う。
【0027】
なおMFPはカラーコピー機能、カラープリント機能及びカラースキャナ機能等の種々の機能を有しているが、本発明の技術はカラー原稿を読み取ることにより得られるカラー画像を圧縮する処理を行う場合などに適用可能であり、例えばMFPのカラーコピー機能及びカラースキャナ機能に好適である。またMFPのカラースキャナ機能には、カラー原稿を読み取って得られたカラー画像データを圧縮して他の装置へ送信するデータ送信機能、及びカラー画像データを圧縮してMFP内部のメモリなどに記憶する保存機能等があるが、本発明の技術はこれらの機能における画像データの圧縮処理を行う場合に適用可能である。
【0028】
図1は、本発明の実施の形態1に係るMFPの構成を示すブロック図である。本実施の形態に係るMFPは、画像入力装置11、画像出力装置12、送信装置13、操作パネル15及び画像処理装置20等を備えて構成されている。操作パネル15は、MFPの動作モードなどを設定する設定ボタン及びテンキー、処理の開始指示などを受け付けるスタートキー、並びに電源キー及び各種のファンクションキー等の種々のハードウェアキーを有している。また操作パネル15は、MFPの動作状態、ユーザへの警告メッセージ及びユーザの操作を補助する各種のメニュー等を表示するディスプレイを有している。なお、ユーザの操作を受け付けるハードウェア機に代えて、ディスプレイ上にタッチパネルを設ける構成としてもよい。操作パネル15は、受け付けた指示又は設定等を画像入力装置11、画像出力装置12、送信装置13及び画像処理装置20へ与え、これにより各装置は受け付けた指示又は設定等に応じた処理を行うことができる。
【0029】
画像入力装置11は、原稿に光を照射する光源、及びCCD(Charge Coupled Device)などのイメージセンサが並設された受光部等を備えるスキャナにて構成されている。画像入力装置11は、光源から原稿へ光を照射すると共に、受光部を一方向へ移動させて、原稿からの反射光をR(赤)G(緑)B(青)の3つの色成分に分解して受光部で読み取り、RGBのアナログ信号として画像処理装置20へ与える。
【0030】
画像処理装置20は、A/D変換部21、シェーディング補正部22、入力階調補正部23、領域分離処理部24、色補正部25、黒生成下色除去部26、空間フィルタ処理部27、出力階調補正部28、階調再現処理部29、圧縮処理部30及び記憶部31等を備えている。画像入力装置11から入力されたRGBのアナログ信号は、画像処理装置20のA/D変換部21〜階調再現処理部29の各部にて画像処理が施されて画像出力装置12へ出力されるか、又は、画像処理装置20のA/D変換部21〜領域分離処理部24、圧縮処理部30の各部にて画像処理が施されて送信装置13へ出力される。
【0031】
A/D変換部21は、画像入力装置11から与えられたRGBのアナログ信号を例えば各8ビットのデジタルの画像信号に変換するものであり、変換したRGBの画像信号をシェーディング補正部22に与える。シェーディング補正部22は、A/D変換部21から与えられたデジタルのRGBの画像信号に対して、画像入力装置11の照明系、結像系及び撮像系等において生じる各種の歪みを取り除くシェーディング処理を行い、シェーディング処理後のRGBの画像信号を入力階調補正部23へ与える。
【0032】
入力階調補正部23は、シェーディング補正部22にて歪みが取り除かれたRGBの画像信号(RGBの反射率信号)に対して、カラーバランスの調整及びコントラストの調整等の処理を行うと共に、濃度信号など画像処理装置20の各部の処理に適した信号形式に変換し、処理後のRGBの画像信号を領域分離処理部24へ与える。
【0033】
領域分離処理部24は、入力階調補正部23から与えられたRGBの画像信号に係る画像の各画素が、文字により構成される文字領域、網点画像により構成される網点領域又は写真で構成される写真領域のいずれに属する画素であるかを判定することによって、各画素を分離する。領域分離処理部24は、処理結果として各画素がいずれの領域に属しているかを示す情報を、領域分離信号として黒生成下色除去部26、空間フィルタ処理部27及び階調再現処理部29へ与えると共に、入力階調補正部23から与えられたRGBの画像信号をそのまま色補正部25及び圧縮処理部30へ与える。
【0034】
色補正部25は、領域分離処理部24から与えられたRGBの画像信号を、C(シアン)M(マゼンタ)Y(イエロー)の色空間の画像信号に変換すると共に、画像出力装置12での色再現の忠実化実現のために、CMYの各色成分に色補正処理を行う。色補正処理は、具体的には、不要吸収成分をそれぞれ含むCMYのトナー又はインク等の分光特性に基づいた色濁りを、CMYの各色成分から取り除く処理である。色補正部25は、変換したCMYの画像信号を黒生成下色除去部26へ与える。
【0035】
黒生成下色除去部26は、領域分離処理部24から与えられる領域分離信号、及び色補正部25から与えられるCMYの画像信号の各色成分に基づいて、K(黒)の色成分を生成する黒生成処理を行うと共に、元のCMYの各色成分から黒生成処理にて生成されたK成分を差し引いて新たなCMY信号を生成する処理を行う。これにより、色補正部25から与えられたCMYの画像信号は、CMYKの4つの色成分を有する画像信号に変換される。
【0036】
例えば、スケルトンブラックによる黒生成処理を行う場合に、スケルトンカーブの入出力特性をy=f(x)とし、入力される画像の画素値をC、M、Yとし、出力される画素値をC'、M'、Y'、K'とし、UCR(Under Color Removal、下色除去)率をα(0<α<1)とすると、黒生成下色除去処理は以下の式で表される。黒生成下色除去部26の黒生成下色除去処理により変換されたCMYKの画像信号は、空間フィルタ処理部27へ与えられる。
K' = f{min(C、M、Y)}
C' = C−αK'
M' = M−αK'
Y' = Y−αK'
【0037】
空間フィルタ処理部27は、領域分離処理部24から与えられる領域分離信号に基づいて、黒生成下色除去部26から与えられたCMYKの画像信号に係る画像に対して、デジタルフィルタによる空間フィルタ処理を行う。これにより、画像の空間周波数特性が補正され、画像出力装置12が出力する画像にぼやけ又は粒状性劣化等を生じることが防止される。空間フィルタ処理部27にて空間フィルタ処理が施された画像に係るCMYKの画像信号は、出力階調補正部28にて画像出力装置12の出力特性に基づく出力階調補正処理が施された後に、階調再現処理部29へ与えられる。
【0038】
階調再現処理部29は、領域分離処理部24から与えられる領域分離信号に応じて、出力階調補正部28から与えられたCMYKの画像信号に対して、階調再現処理を行う。階調再現処理は、画像信号に係る画像を複数の画素に分類して中間調を再現できるようにする処理であり、二値又は多値のディザ法又は誤差拡散法等を用いることができる。
【0039】
例えば、領域分離処理部24にて文字領域に分離された領域には、特に黒文字又は色文字の再現性を高めることを目的として、空間フィルタ処理部27が鮮鋭強調のフィルタ処理を施して高周波成分を強調する。階調再現処理部29は、領域分離処理部24にて文字領域に分離された領域に対して、特に黒文字又は色文字の再現性を高めることを目的とし、画像出力装置12の高域周波数成分の再現に適した高解像度のスクリーンでの二値化処理又は多値化処理を施す。
【0040】
また、例えば領域分離処理部24にて網点領域に分離された領域には、空間フィルタ処理部27がローパスフィルタ処理を施して入力網点成分を除去し、フィルタ処理が施された画像を階調再現処理部29が画素に分離してそれぞれの階調を再現できるように中間階調処理を施す。
【0041】
また、例えば領域分離処理部24にて写真領域に分離された領域には、階調再現処理部29が、画像出力装置12における階調再現性を重視したスクリーンでの二値化処理又は多値化処理を施す。
【0042】
階調再現処理部29による処理が施されたCMYKの画像信号は、図示しない画像メモリなどの記憶手段に一時的に蓄積された後、画像形成のタイミングに合わせて記憶手段から読み出されて画像出力装置12へ与えられる。画像出力装置12は、与えられた画像信号に係る画像を紙などの記録媒体上に出力するものであり、電子写真方式又はインクジェット方式等のプリンタである。例えば、電子写真方式の場合には、画像出力装置12は、感光体ドラムを所定の電位に帯電する帯電器、与えられた画像信号に応じてレーザ光を発して感光体ドラム表面に静電潜像を生成するレーザ書込器、感光体ドラム表面に生成された静電潜像にトナーを供給して顕像化する現像器及び感光体ドラム表面に形成されたトナー像を紙上に転写する転写器等を備える。なお、画像出力装置12は、ディスプレイなどの表示装置であってもよい。
【0043】
画像処理装置20の圧縮処理部30は、領域分離処理部24から与えられたRGBの画像信号、即ち画像データに対して、データ量を低減する圧縮処理を行い、圧縮した画像データ(圧縮画像)を記憶部31へ蓄積する。記憶部31はハードディスク又はフラッシュメモリ等の大容量の記憶素子で構成されており、記憶部31に蓄積された画像データは送信装置13へ与えられる。
【0044】
送信装置13は、ネットワークカード又はモデム等の一又は複数の通信用ハードウェアを有し、これらの通信手段により他の装置へ画像データの送信を行う。例えば、操作パネル15にてMFPの動作モードが電子メール送信に設定されている場合、送信装置13は、記憶部31に蓄積された画像データを電子メールに添付して予め設定された宛先へ送信する。また例えばファクシミリ通信を行う場合には、通信装置13は、指定された相手先との送信手続をモデムにて行って送信可能な状態が確保された後、画像入力装置11にて読み取られて所定の形式で圧縮された画像データを記憶部31から読み出し、圧縮形式の変更などのファクシミリ通信に必要な処理を施して、相手先に通信回線を介して順次送信する。
【0045】
また、図示は省略するが、送信装置13は、他の装置からファクシミリ通信により送信された画像データを受信する受信装置としての機能を有していてもよい。この場合、送信装置13は、通信手続を行いながら、相手先から送信された画像データを受信して画像処理装置20へ与える。画像処理装置20は、受信した画像データに伸長処理を施し、伸長した画像データに対して必要に応じて回転処理又は解像度変換処理等の画像処理を施し、出力階調補正部28による階調補正処理及び階調再現処理部29による階調再現処理を施して画像出力装置12へ出力する。これにより、ファクシミリ通信により送信装置13にて受信された画像データに係る画像が形成されて出力される。
【0046】
また、送信装置13は、ネットワークカード及びネットワークケーブル等により、LAN(Local Area Network)などのネットワークに接続された他のコンピュータ又はMFP等の通信機能を有する装置との間でデータ通信を行うことができる。これにより、MFPは画像入力装置11にて読み取った画像データを他の装置へ与えて保存することができ、他の装置から与えられた画像データを画像出力装置12から出力することができる。
【0047】
なお、上述の画像形成処理及び画像送信処理等の種々の処理は、MFPに搭載されたCPU(Central Processing Unit)81(図21参照)によって各部が制御されることにより行われる。
【0048】
図2は、画像処理装置20の圧縮処理部30の構成を示すブロック図である。圧縮処理部30は、前景マスク生成処理部51、フォーマット変換処理部52、前景色インデックス化処理部53、背景レイヤ生成処理部54、2値画像生成処理部55及び画像圧縮部56等を備えて構成されている。
【0049】
前景マスク生成処理部51は、入力画像データ(図中においては単に入力画像と記す)から文字又は線画(以下、文字等という)の画素を表す前景マスクを抽出する画像処理を行う。前景マスク生成処理部51は、例えば領域分離処理部24による領域分離結果を取得して、入力画像データの各画素が文字等であるか否かを判定することにより、前景マスクの生成を行うことができる。領域分離処理部24においては、例えば入力画像データの輝度値に対して微分処理を行うことによって、輝度が明るく変化するエッジ部分と、暗く変化するエッジ部分とを検知し、検知したエッジ部分に基づいて画素を文字等又はそれ以外に分離して2値化を行うことにより、画像から文字領域を分離することができる(詳しくは、正方向の微分値が出現してから、負方向の微分値が出現するまでの範囲を文字等の画素として文字領域を抽出することができる)。前景マスク生成処理部51は、領域分離処理部24の領域分離結果に基づいて、入力画像データから前景レイヤを抽出し(図30参照)、前景レイヤから前景マスク及び色情報を生成する(図31参照)。前景マスク生成処理部51は、生成した前景マスク(及び色情報)と、入力画像データとをフォーマット変換処理部52へ出力する。
【0050】
フォーマット変換処理部52は、入力画像データのデータ形式(フォーマット)を変換することによって、入力画像データのデータ量を低減する処理を行う。フォーマット変換処理部52は、入力画像データにおいて画素値が変化する変化領域と、画素値が変化しない平坦領域とを分離し、平坦領域の解像度を低減することによってデータ量を低減する。図3は、フォーマット変換処理部52の構成を示すブロック図である。フォーマット変換処理部52は、反転回数カウント処理部61、平坦判定処理部62、領域判定処理部63及び画像データフォーマット変換部64を有しており、前景マスク生成処理部51から入力された前景マスク及び色情報を入力画像データとし、入力画像データに対して各部にて順に画像処理を施すことによりフォーマット変換を行う。以下に、フォーマット変換処理部52の各部が行う処理を図4〜図14を参照して説明する。
【0051】
図4及び図5は、フォーマット変換処理部52へ与えられる入力画像データの一例を示す模式図であり、前景マスク生成処理部51が生成した前景マスク及び色情報に基づく前景レイヤの一例を示してある。図示の入力画像データは、主走査方向(水平方向)に16画素且つ副走査方向(垂直方向)に20画素を有する16×20の画像であり、1つの画素はRGBの各色について8ビット(0〜255)の画素値を有している。なお、図4及び図5において、画素値が同じ画素、即ち同じ色の画素については、同じハッチングを付してある。
【0052】
フォーマット変換処理部52の反転回数カウント処理部61は、入力画像データから一の画素(注目画素)を決定し、注目画素を中心とした7画素×7画素の画素領域(以下、7×7領域という)について、主走査方向及び副走査方向に隣接する2つの画素の画素値の差分が、増加から減少へ又は減少から増加へ転じる回数を反転回数としてカウントする処理を行う。図6及び図7は、反転回数カウント処理部61による反転回数のカウント方法を説明するための模式図である。なお、図6及び図7においては、入力画像データのR成分について、注目画素(ハッチングを付して示してある)及びこれを含む7×7領域を図示してあり、R成分についての反転回数をカウントする例を示してある。入力画像データのG成分及びB成分については図示を省略する。
【0053】
反転回数カウント処理部61は、まず、前景レイヤから注目画素を含む7×7領域を抽出し、この7×7領域の主走査方向の1つのラインについて、隣り合う2つの画素の差分を算出する。次いで、反転回数カウント処理部61は、算出した差分の絶対値が閾値を超えており、その差分が正の値であれば”+1”を判定結果(図6においてrev_h0_??と記す)として出力し、その差分が負の値であれば”−1”を判定結果として出力し、差分の絶対値が閾値を超えていなければ”0”を判定結果として出力する。
【0054】
例えば、図6において7×7領域の最上ラインの7画素の画素値が、左から255、128、64、128、129、255、255であるとすると、隣接する画素の画素値の差分は左から−127、−64、64、1、126、0であり、閾値を10として差分と比較した場合、判定結果rev_h0_01〜rev_h0_56は左から−1、−1、1、0、1、0となる。
【0055】
次いで、反転回数カウント処理部61は、主走査方向から判定結果rev_h0_01〜rev_h0_56の符号が反転する回数をカウントする。上記の例では、rev_h0_01及びrev_h0_23にて符号が反転するためカウント結果rev_h0は2回となる。同様にして、反転回数カウント処理部61は、7×7領域の残りの6つのラインについて反転回数をカウントし、7つのカウント結果rev_h0〜rev_h6の合計値を算出する。この合計値が、注目画素のR成分についての主走査方向の反転回数である。
【0056】
更に、反転回数カウント処理部61は、R成分についての副走査方向の反転回数を算出する。このときの算出方法は主走査方向の場合と同様であり、反転回数カウント処理部61は、副走査方向の1つのラインについて隣接する画素の画素値の差分が閾値を超えたか否かに応じた判定結果rev_v0_01〜rev_v0_56を算出し、この判定結果の符号が反転する回数をライン毎にカウントした結果rev_v0〜rev_v6の合計値を算出すればよい。
【0057】
同様にして、反転回数カウント処理部61は、G成分についての主走査方向及び副走査方向の反転回数と、B成分についての主走査方向及び副走査方向の反転回数とを算出し、RGBの各色の主走査方向及び副走査方向の反転回数を合計した値を、注目画素の反転回数とする。更に反転回数カウント処理部61は、入力画像データの全ての画素について上述の処理を行うことにより反転回数を算出し、全画素の反転回数を平坦判定処理部62へ出力する。
【0058】
フォーマット変換処理部52の平坦判定処理部62は、反転回数カウント処理部61から与えられた各画素の反転回数が、予め定められた閾値を超えるか否かを判定することによって、入力画像データの各画素が平坦領域に含まれる画素であるか、又は、変化領域に含まれる画素であるかを判定する。平坦判定処理部62は、各画素が平坦領域又は変化領域のいずれに含まれるかの判定結果を領域判定処理部63へ出力する。
【0059】
なお、図8は、平坦判定処理部62による平坦判定処理の結果の一例を示す模式図であり、図4及び図5に示した入力画像データに対して反転回数カウント処理部61及び平坦判定処理部62による処理を施した結果を示してある。なお、図8の処理結果は、平坦判定処理部62が閾値を26として各画素の反転回数を判定した結果であり、平坦領域を”0”とし、変化領域を”1”として判定結果を図示してある。
【0060】
フォーマット変換処理部52の領域判定処理部63は、平坦判定処理部62から与えられた判定結果に基づいて、入力画像データを以下の3種の領域に分割する。
領域A)主走査方向に平坦なライン(平坦領域の画素のみで構成されるライン)が、副走査方向に所定ライン数以上続く領域
領域B)領域A以外であり、副走査方向に平坦なライン(平坦領域の画素のみで構成されるラインであるが、領域Aで分断される場合には別ラインとする)が、主走査方向に所定ライン数以上続く領域
領域C)領域A及びB以外の領域
なお、領域A、B及びCは重複することはなく、領域A及びBはできるだけ大きな矩形となるように入力画像データを分割する。領域判定処理部63は、入力画像データを領域A、B及びCに分割した結果を画像データフォーマット変換部64へ出力する。
【0061】
図9は、領域判定処理部63による領域判定の結果の一例を示す模式図であり、図8に示した平坦判定処理の処理結果に対して領域判定の処理を施した結果を図示してある。平坦判定処理の処理結果から、主走査方向に平坦なラインは、副走査方向の0番目、9番目〜12番目の5つのラインであり、所定ライン数(例えば4ライン)以上続くのは9番目〜12番目の4つのラインである。よって、主走査方向0〜15且つ副走査方向9〜12の16×4の領域を、上記の領域Aと判定することができる。
【0062】
また、領域A以外の領域において、副走査方向に平坦なラインは、領域Aより上側の主走査方向の12番目〜15番目の4つのラインである。領域Bの判定のための所定ライン数を4ラインとすると、この4つのライン、即ち主走査方向12〜15且つ副走査方向0〜8の4×9の領域を、上記の領域Bと判定することができる。また、領域A及びB以外の領域は、領域Cと判定することができる。
【0063】
フォーマット変換処理部52の画像データフォーマット変換部64は、領域判定処理部63の処理結果に基づいて、入力画像データの解像度を低減することによりデータ量を低減する。解像度の低減は領域判定処理部63にて判定された領域A、B及びCについて以下の方法で個別に行う。
領域A)主走査方向及び副走査方向の両方向について解像度を低減する
領域B)主走査方向についてのみ解像度を低減する
領域C)解像度の低減は行わない
【0064】
図10は、領域A〜Cに分割した入力画像データの一例を示す模式図であり、図4及び図5に示した入力画像データに図9に示した各領域を重ね合わせて図示したものである。なお図10においては、入力画像データの各画素についてRGBの画素値の表示を省略し、同じ画素値の画素には同じハッチングを付して示してある。また、図10にて各画素に付したハッチングは、図4及び図5にて画素値に応じて各画素に付したハッチングと同じである。
【0065】
画像データフォーマット変換部64は、例えば領域Aの解像度を主走査方向及び副走査方向の両方向について25%に低減すると共に、領域Bの解像度を主走査方向について25%に低減する処理を行う。図11は、解像度を低減した画像データの一例を示す模式図であり、図10に示した入力画像データの領域A及びBの解像度を低減した場合を図示してある。この例においては、主走査方向0〜15且つ副走査方向9〜12の16×4の領域Aが、主走査方向及び副走査方向の両方向について解像度が低減されて、4×1の領域に変換されている。また、主走査方向12〜15且つ副走査方向0〜8の4×9の領域Bが、主走査方向について解像度が低減されて、1×9の領域に変換されている。なお、解像度を低減する方法としては、公知のニアレストネイバー、バイリニア又はバイキュービック等の補間方法を用いればよい。
【0066】
次いで、画像データフォーマット変換部64は、解像度を低減した画像データのヘッダ情報を作成するために、画像データの各領域に番号付けを行う。番号付けは以下の手順にて行う。
手順1)画像データの副走査方向に、領域Aから領域B、Cへ又は領域B、Cから領域Aへ切り替わる都度、領域A又は領域B、Cをそれぞれ副走査領域とし、副走査方向へ順に副走査領域0、1…のように番号付けを行う。
手順2)各副走査領域において、主走査方向に領域が切り替わる都度、各領域A、B、Cをそれぞれ主走査領域とし、主走査方向へ順に主走査領域X0、X1…のように番号付けを行う。なお、主走査領域の番号Xは、この主走査領域を含む副走査領域の番号である。
【0067】
図12は、各領域に番号付けを行った画像データの一例を示す模式図であり、図11に示した解像度低減後の画像データの各領域A、B、Cに番号付けを行った結果を示してある。画像データフォーマット変換部64は、画像データの副走査方向について、領域が切り替わる個所を調べる。図11に示した画像データでは副走査方向の8及び9と12及び13とにおいて領域が切り替わるため、画像データフォーマット変換部64は、副走査方向0〜8の領域を副走査領域0とし、副走査方向9〜12の領域を副走査領域1とし、副走査方向13〜19の領域を副走査領域2とした番号付けを行う。
【0068】
次いで、画像データフォーマット変換部64は、副走査領域0が主走査方向の11及び12において領域が切り替わるため、主走査方向0〜11の領域を主走査領域00とし、主走査方向12〜15の領域を主走査領域01とした番号付けを行う。また画像データフォーマット変換部64は、副走査領域1においては主走査方向に領域が切り替わることがないため、副走査領域1の全体を主走査領域10とした番号付けを行う。同様に画像データフォーマット変換部64は、副走査領域2においては主走査方向に領域が切り替わることがないため、副走査領域2の全体を主走査領域20とした番号付けを行う。
【0069】
画像データフォーマット変換部64は、解像度を低減した画像データをMFPのメモリに格納するが、このときに画像データのデータ構造などの情報を有するヘッダ情報を作成し、画像データと共にヘッダ情報をメモリに格納する。これにより、メモリから画像データを読み出したその他の画像処理手段は、ヘッダ情報を参照して画像データの復元を行うことができる。図13は、画像データフォーマット変換部64が生成する画像データのヘッダ情報の一例を示す模式図である。また図14は、ヘッダ情報に含まれる情報を説明するための模式図であり、図12に示した画像データと図13に示したヘッダ情報との対応を示したものである。
【0070】
画像データフォーマット変換部64が生成するヘッダ情報には、”ヘッダサイズ(HDSIZE)”及び”副走査領域数(VNUM)”が含まれている。”ヘッダサイズ”には、ヘッダ情報のサイズがバイト単位で記憶されている。副走査領域数には、画像データに含まれる副走査領域の数が記憶されており、図12に示した画像データの場合には副走査領域数は3である。
【0071】
また、ヘッダ情報には副走査領域数に応じた数の副走査領域情報が含まれており、本例では3つの副走査領域情報0〜2が含まれている。各副走査領域情報には、”データ領域開始アドレス(VSA)”、”主走査領域数(HNUM)”、”主走査オフセットサイズ(OFT)”、”副走査ライン数(L)”及び少なくとも1つの主走査領域情報がそれぞれ含まれている。更に、各主走査領域情報には、”解像度変換倍率(ZM)”及び”主走査画素数(W)”がそれぞれ含まれている。各情報の内容は以下の通りである。
【0072】
データ領域開始アドレス)
画像データをメモリに格納した場合の副走査領域の開始アドレスである。
主走査領域数)
副走査領域に含まれる主走査領域の数である。
主走査オフセットサイズ)
副走査領域の主走査方向のバイトサイズである。
副走査ライン数)
副走査領域の副走査方向のライン数である。
【0073】
解像度変換倍率)
画像データの解像度を低減した場合の倍率であり、解像度を低減しない場合が100%となる。
主走査画素数)
主走査領域の主走査方向の画素数であり、解像度を低減する前の画素数である。
【0074】
図示の例においては、ヘッダ情報は最初の情報としてヘッダサイズを有している。上記のようにヘッダサイズはヘッダ情報全体のサイズを示すものであり、画像データの主走査領域数及び副走査領域数に応じて変化する。例えばヘッダサイズ(HDSIZWE)及びデータ領域開始アドレス(VSA0〜2)を4バイトの情報とし、それ以外を2バイトの情報とした場合、ヘッダサイズ及びデータ領域開始アドレスの4つの項目で4×4=16バイトのデータ量であり、それ以外の18の項目で2×18=36バイトのデータ量であるため、ヘッダ情報全体としては16+36=52バイトのデータ量である(HDSIZE=52)。
【0075】
ヘッダ情報は、次の情報として副走査領域数を有している。上記のように副走査領域数は画像データに含まれる副走査領域の数を示すものであり、ヘッダ情報には副走査領域数に等しい副走査領域情報が含まれている。本例ではヘッダ情報の副走査領域数は3であるため(VNUM=3)、ヘッダ情報には3つの副走査領域情報0〜2が含まれている。
【0076】
例えば、副走査領域0のデータがメモリアドレス0x00000000から開始する場合、ヘッダ情報の副走査領域情報0に含まれるデータ領域開始アドレスにはこのメモリアドレスが記憶される(VSA0=0x00000000)。本例においては、副走査領域0に主走査領域00及び01の2つが含まれているため、副走査領域情報0の主走査領域数には2が記憶される(HNUM0=2)。主走査領域00の主走査方向の画素数は12であり、主走査領域01の主走査方向の画素数は1であるから、副走査領域0の主走査方向の画素数は13であり、各画素はRGBの3バイトであることから、副走査領域情報0の主走査オフセットサイズには13×3=39バイトが記憶される(OFT0=39)。また、副走査領域0の副走査方向のライン数は9であるから、副走査領域情報0の副走査ライン数には9が記憶される(L0=9)。
【0077】
副走査領域情報0には2つの主走査領域情報00及び01が含まれている。主走査領域00は、解像度の低減は行われていないため、主走査領域情報00の解像度変換倍率には100%が記憶され(ZM00=100%)、主走査方向の画素数は12画素であるため、主走査画素数には12が記憶される(W00=12)。主走査領域01は、解像度が25%に低減されているため、主走査領域情報01の解像度変換倍率には25%が記憶され(ZM01=25%)、解像度低減前の主走査方向の画素数は4画素であるため、主走査画素数には4が記憶される(W01=4)。
【0078】
副走査領域情報0に次いで、ヘッダ情報には副走査領域情報1が記憶されている。副走査領域1のデータはメモリアドレス0x0000015F(=VSA0+OFT0*L0)から開始するため、副走査領域情報1のデータ領域開始アドレスにはこのメモリアドレスが記憶される(VSA1=0x0000015F)。また、副走査領域1には1つの主走査領域10が含まれているため、主走査領域数には1が記憶される(HNUM1=1)。副走査領域1の主走査方向の画素数は4であり、各画素はRGBの3バイトであることから、副走査領域情報1の主走査オフセットサイズには12バイトが記憶される(OFT1=12)。また、副走査領域1の副走査方向のライン数は、解像度低減前において4ラインであるから、副走査領域情報1の副走査ライン数には4が記憶される(L1=4)。
【0079】
副走査領域情報1には1つの主走査領域情報10が含まれている。主走査領域10は、解像度が25%に低減されているため、主走査領域情報10の解像度変換倍率には25%が記憶され(ZM10=25%)、解像度低減前の主走査方向の画素数は16画素であるため、主走査画素数には16が記憶される(W10=16)。
【0080】
副走査領域情報1に次いで、ヘッダ情報には副走査領域情報2が記憶されている。副走査領域2のデータはメモリアドレス0x0000016B(=VSA1+OFT1*(L1/4))から開始するため、副走査領域情報2のデータ領域開始アドレスにはこのメモリアドレスが記憶される(VSA2=0x0000016B)。また、副走査領域2には1つの主走査領域20が含まれているため、主走査領域数には1が記憶される(HNUM2=1)。副走査領域2の主走査方向の画素数は16であり、各画素はRGBの3バイトであることから、副走査領域情報2の主走査オフセットサイズには48が記憶される(OFT2=48)。また、副走査領域2の副走査方向のライン数は7ラインであるから、副走査領域情報2の副走査ライン数には7が記憶される(L2=7)。
【0081】
副走査領域情報2には1つの主走査領域情報20が含まれている。主走査領域20は、解像度は低減されていないため、主走査領域情報20の解像度変換倍率には100%が記憶され(ZM20=100%)、主走査方向の画素数は16画素であるため、主走査画素数には16が記憶される(W20=16)。
【0082】
画像データフォーマット変換部64は、入力画像データの平坦領域の解像度を低減すると共に、上記のようなヘッダ情報を生成し、解像度低減後の画像データにヘッダ情報を付したデータを新たな画像データとして出力する。これにより、フォーマット変換処理部52は、入力画像データのデータ量を低減した新たな画像データを生成し、前景色インデックス化処理部53へ与えることができる。
【0083】
なお、図4及び図5に示した入力画像データのデータ量は、主走査方向の画素数が16であり、各画素がRGBの3バイトで構成され、且つ、副走査方向のライン数が20であるため、16×3×20=960バイトである。これに対してフォーマット変換処理部52が出力する画像データ(図11参照)のデータ量は、画像のデータが(OFT0*L0+OFT1*(L1/4)+OFT2*L2)=699バイトであり、ヘッダ情報が52バイトであることから、699+52=751バイトである。よって、画像データのデータ量がフォーマット変換処理部52の処理によって低減され、画像データによるメモリの使用量及び画像データの転送に伴うデータ転送量等を低減することができる。
【0084】
MFPの前景色インデックス化処理部53は、入力画像データの前景レイヤ(前景マスク及び色情報)に対してインデックス化処理を施すことによって、入力画像データのデータ量を低減する。詳しくは、前景レイヤの画素色(画素値)をインデックス化したインデックス画像と、インデックスに対する画素色及び画素数等の情報を記憶した前景インデックスカラーテーブルと、各インデックスの領域(各画素色の領域)の最大座標及び最小座標を記憶した座標テーブルとを前景色インデックス化処理部53が生成して背景レイヤ生成処理部54へ出力する。
【0085】
図15は、前景色インデックス化処理部53の構成を示すブロック図である。前景色インデックス化処理部53は、仮インデックス画像生成処理部71、インデックス統合処理部72及びインデックス画像補正処理部73を有しており、フォーマット変換処理部52から与えられた画像データを入力画像データとし、入力画像データに対して各部にて順に画像処理を施すことにより、画像データのインデックス化を行う。以下に、前景色インデックス化処理部53の各部が行う処理を図16〜図18を参照して説明する。
【0086】
前景色インデックス化処理部53の仮インデックス画像生成処理部71は、入力画像データの前景レイヤの画素色に対して仮インデックスを付し、前景レイヤの各画素を仮インデックスに置き換えた仮インデックス画像を生成する。また、仮インデックス画像生成処理部71は、仮インデックスと画素色とを対応付けた前景色インデックスカラーテーブルを生成する。図16は、仮インデックス画像の一例を示す模式図であり、図4及び図5に示した入力画像データを基に仮インデックス画像生成処理部71が仮インデックス画像を生成した例を示してある。また、図17は、前景インデックスカラーテーブルの一例を示す模式図である。
【0087】
仮インデックス画像生成処理部71は、例えば画素色RGB=(255、255、255)に仮インデックス0を付し、入力画像データ中のこの画素色の画素の画素値を仮インデックス0に置き換える。同様にして、他の画素色についても仮インデックスをそれぞれ付し、入力画像データの画素値を仮インデックスに置き換える。これにより、入力画像データ中の同じ画素色の画素は同じ仮インデックスに置き換えられ、仮インデックス画像が生成される。図16に示す例においては、入力画像データの各画素の画素値は仮インデックス0〜6に置き換えられるため、画像データのデータ量は低減される。
【0088】
また、仮インデックス画像生成処理部71は、仮インデックス画像の各画素の仮インデックスと、置き換えた画素色とを対応付けた前景インデックスカラーテーブルを生成する(図17(a)参照)。なお、仮インデックス画像生成処理部71が生成する前景インデックスカラーテーブルには、仮インデックスに置き換えられた入力画像データの画素数が記憶されており、この画素数は後段の処理で用いられる。
【0089】
なお、本例においては入力画像データの一の画素色に対して一の仮インデックスを付したが、これに限るものではない。例えばRGBの各色成分が8ビットの情報を有している場合に、各色成分の情報を3ビット又は2ビット等に低減し、情報量を低減した各色成分に対して仮インデックスを付す、即ち所定の色範囲に対して一の仮インデックスを付す構成とすることができる。RGBのビット数は、MFPのその他の画像処理において色判定などをどの程度の精度で行うかに応じて任意に設定することができる。
【0090】
仮インデックス画像生成処理部71にて生成された仮インデックス画像及び前景インデックスカラーテーブルは、インデックス統合処理部72へ与えられる。インデックス統合処理部72は、前景インデックスカラーテーブルに記憶された複数のインデックスを1つに統合することによって、画像データのデータ量を更に低減する処理を行う。インデックス統合処理部72は、同色及び近似色の判定を行って中間調の画素色を近似の画素色に統合することにより、前景インデックスカラーテーブルに含まれる仮インデックスを最終的なインデックスに統合する。
【0091】
例えば、図17(a)に示した前景インデックスカラーテーブルにおいて、仮インデックス2及び6の画素色が近似しており、仮インデックス2の画素の画素数は仮インデックス6の画素の画素数より多いため、インデックス統合処理部72は仮インデックス6を仮インデックス2に統合することができる。このようにして、インデックス統合処理部72は複数の仮インデックスを一の仮インデックスに統合し、空きが生じた仮インデックスを詰めることによって各画像色に最終的なインデックスを付した前景インデックスカラーテーブルを生成する(図17(b)参照)。
【0092】
インデックス補正処理部73は、インデックス統合処理部72により生成された前景インデックスカラーテーブルに基づいて、仮インデックス画像生成処理部71が生成した仮インデックス画像の補正を行う。即ち、インデックス補正処理部73は、仮インデックス画像の仮インデックスを、インデックス統合処理部72にて統合されたインデックスに変換したインデックス画像を生成する処理を行う。
【0093】
図18は、インデックス画像の一例を示す模式図であり、図16に示した仮インデックス画像を図17(b)に示した前景インデックスカラーテーブルに基づいてインデックス画像に変換した例である。図17(b)の前景インデックスカラーテーブルでは仮インデックス6がインデックス2に統合されているため、インデックス補正処理部73は、仮インデックス6が付された画素に対して、インデックスを2に変換することによって、インデックス画像を生成することができる。
【0094】
以上により、前景色インデックス化処理部53は、入力画像データの前景レイヤをインデックス化したインデックス画像と、インデックス及び画素色の対応が記憶された前景インデックスカラーテーブルとを生成し、インデックス画像及び前景インデックスカラーテーブルを出力画像データとして背景レイヤ生成処理部54へ与える。
【0095】
背景レイヤ生成処理部54は、入力画像データから前景レイヤに含まれる前景画素を取り除くことによって、背景レイヤを生成する処理を行う。また、背景レイヤ生成処理部54は、後段での背景レイヤの圧縮率を向上するために、背景レイヤから取り除かれる前景画素部分を、前景画素周辺の背景画素を参照し、この背景画素の画素値の平均値を用いて穴埋めする。このときに、近傍に背景画素が存在しない場合には、背景レイヤ生成処理部54は、近傍の穴埋め処理の結果を用いて穴埋めを行えばよい。背景レイヤ生成処理部54が生成した背景レイヤは、インデックス化された前景レイヤ及び前景インデックスカラーテーブル等と共に2値画像生成処理部55へ与えられる。
【0096】
2値画像生成処理部55は、与えられた前景レイヤ及び前景インデックスカラーテーブルを用いて、前景インデックスカラーテーブルの各インデックスについての2値化画像を生成する処理を行う。図19は、2値化画像の一例を示す模式図であり、図18に示したインデックス画像を基に生成した2値化画像である。2値画像生成処理部55は、例えばインデックス画像のインデックス2の画素のみを1とし、その他の画素を0とした2値化処理を行うことによって、インデックス2の2値画像を生成することができる。2値画像生成処理部55は、前景インデックスカラーテーブルに含まれる全てのインデックスについて2値画像を生成し、前景レイヤ及び背景レイヤ等の他のデータと共に、生成した2値画像を画像圧縮部56へ与える。
【0097】
画像圧縮部56は、与えられた前景レイヤ及び背景レイヤに適切な圧縮処理を施すことによって画像データのデータ量を低減する処理を行う。画像圧縮部56は、前景レイヤを例えば可逆圧縮方式のMMRにより圧縮し、背景レイヤを例えば非可逆圧縮方式のJPEGにより圧縮する。なお、MMR及びJPEG等の圧縮方式は既知の技術であるため、詳細な説明は省略する。画像圧縮部56による圧縮方式を前景レイヤ及び背景レイヤでそれぞれ1つに定めることによって、画像圧縮部56が複数の圧縮方式に対応する必要がなく、複数の圧縮フォーマットの管理及び処理等が必要ない。これにより、画像圧縮部56をハードウェア化する場合に回路規模を削減することができる。また、画像圧縮部56は、前景レイヤ及び背景レイヤと共に、前景インデックスカラーテーブル等のデータの圧縮を行う。
【0098】
MFPの圧縮処理部30は、画像圧縮部56により前景レイヤ及び背景レイヤがそれぞれ圧縮された画像データを出力する。圧縮処理部30にて圧縮された画像データは、MFPの記憶部31に蓄積され、送信装置13により電子メール又はファクシミリ通信等の手段により他の装置へ送信される。
【0099】
図20は、MFPの圧縮処理部30が行う圧縮処理の手順を示すフローチャートである。まず圧縮処理部30は、文字等の画素を表す前景マスクを入力画像データから生成する処理を前景マスク生成処理部51にて行う(ステップS1)。次いで、圧縮処理部30は、フォーマット変換処理部52にて、入力画像データの前景マスク及び色情報、即ち前景レイヤのフォーマットを変換することによって(ステップS2)、画像データのデータ量を低減する。
【0100】
次いで、圧縮処理部30は、フォーマット変換された画像データの前景レイヤに対して、前景色インデックス化処理部53の仮インデックス画像生成処理部71にて、画素色毎に仮インデックスを付し、前景レイヤの各画素を仮インデックスに置き換えた仮インデックス画像を生成すると共に(ステップS3)、仮インデックス、画素色及び画素数を対応付けた前景インデックスカラーテーブルを生成する(ステップS4)。また圧縮処理部30は、インデックス統合処理部72にて、前景インデックスカラーテーブルの近似する画素色の仮インデックスを統合し、且つ、インデックス補正処理部73にて、前景レイヤの各画素の仮インデックスを統合したインデックスに補正することによって、インデックス画像を生成する(ステップS5)。
【0101】
次いで、圧縮処理部30は、背景レイヤ生成処理部54にて、入力画像データから前景レイヤに含まれる前景画素を取り除くことによって、背景レイヤを生成し(ステップS6)、2値画像生成処理部55にて、前景レイヤ及び前景インデックスカラーテーブルを用いて、前景インデックスカラーテーブルの各インデックスについての2値化画像を生成する(ステップS7)。その後、圧縮処理部30は、画像圧縮部56にて、前景レイヤ及び背景レイヤに適切な圧縮方式をそれぞれ用いて画像データの圧縮処理を行い(ステップS8)、処理を終了する。
【0102】
上記の処理を行うことによって、圧縮処理部30は、画像入力装置11にて読み取った画像データを圧縮してデータ量を低減することができ、送信装置13によるデータ送信量を低減することができる。圧縮処理部30内の各処理部は、ソフトウェアとして実現してもよく、ハードウェアとして実現してもよいが、以下においては圧縮処理部30をハードウェアとして実現した場合の構成について説明する。
【0103】
図21は、圧縮処理部30をハードウェア化した場合の一構成例を示すブロック図である。本例では、圧縮処理部30の前景マスク生成処理部51〜画像圧縮部56の各処理部をそれぞれ独立したIC(Integrated Circuit)などとし、バスを介して各処理部をCPU81に接続する構成とする。また、画像データを記憶するためのメモリ82が、メモリ制御部83を介してバスに接続されている。
【0104】
CPU81は、MFPの各部、特に圧縮処理部30の各処理部の制御及び種々の演算処理等を行うICである。メモリ82はSRAM(Static Random Access Memory)又はDRAM(Dynamic Random Access Memory)等の記憶素子で構成され、画像データなどの種々のデータの記憶することができる。なおMFPの記憶部31は、このメモリ82を利用するものであってよい。メモリ制御部83は、メモリ82へのデータの書き込み及び読み出しの制御を行うと共に、CPU81及び各処理部へのデータ送出、並びにCPU81及び各処理部からのデータ受信を行う。
【0105】
また、圧縮処理部30の前景色インデックス化処理部53は、上述のように仮インデックス画像生成処理部71及びインデックス画像補正処理部73を有しているが、仮インデックス画像生成処理部71及びインデックス画像補正処理部73は読出DMA(Direct Memory Access)84及び書込DMA85を介してメモリ82に対するデータの読み出し及び書き込みを行う。
【0106】
読出DMA84は、メモリ82から読み出すデータの開始アドレス及びデータサイズを指定して、メモリ82にデータ読出要求を与えることにより、メモリ82からデータを読み出す。メモリ82からデータを読み出した読出DMA84は、このデータ(画像データ)を仮インデックス画像生成処理部71又はインデックス画像補正処理部73へ与える。書込DMA85は、メモリ82へ書き込むデータの開始アドレス及びデータサイズを指定して、メモリ82にデータ書込要求を与えることにより、仮インデックス画像生成処理部71又はインデックス画像補正処理部73が出力した画像データをメモリ82へ書き込む。
【0107】
仮インデックス画像生成処理部71又はインデックス画像補正処理部73は、読出DMA84が読み出した画像データに対して仮インデックス画像生成処理又はインデックス画像補正処理を行うことができ、この処理結果を書込DMA85へ与えることによって、処理結果の画像データをメモリ82へ書き込むことができる。また、前景色インデックス化処理部53は、CPU81の指示に応じて、仮インデックス画像生成処理部71又はインデックス画像補正処理部73を動作させる。
【0108】
本実施の形態に係るMFPは、圧縮処理部30にフォーマット変換処理部52を有しており、上述のように平坦領域の解像度が低減された画像データをメモリ82に記憶することができる。前景色インデックス化処理部53の仮インデックス画像生成処理部71は、メモリ82から画像データを読み出して仮インデックス画像生成処理を行うが、このときに平坦領域の解像度が低減された画像データを、元のサイズの画像データに戻す必要がある。そこで、本実施の形態においては、読出DMA84がメモリ82から読み出した画像データを元のサイズに戻す変換処理を行い、変換処理後の画像データを仮インデックス画像生成処理部71へ与える構成とする。
【0109】
図22及び図23は、読出DMA84が行う画像データの変換処理の手順を示すフローチャートである。なお、図示の手順においては、変換処理を行うためにvcnt、lcnt、hcnt及びpcntの4つの整数型の変数を利用するが、これらの変数は読出DMA84のレジスタ、CPU81のレジスタ又はメモリ82等にて実現することができる。読出DMA84は、メモリ82から読み出した画像データのヘッダ情報からHDSIZE及びVNUMを取得し(ステップS21)、変数vcntの値を0に初期化する(ステップS22)。次いで読出DMA84は、変数vcntの値がVNUMの値に等しいか否かを判定し(ステップS23)、変数vcntの値がVNUMの値に等しい場合(S23:YES)、処理を終了する。
【0110】
変数vcntの値がVNUMの値に等しくない場合(S23:NO)、読出DMA84は、画像データのヘッダ情報からHNUM{vcnt}及びL{vcnt}を取得し(ステップS24)、変数lcntの値を0に初期化する(ステップS25)。なお、HNUM{vcnt}とは、変数vcntの値が例えば1であれば、HNUM1であることを示している(その他についても同様である)。次いで、読出DMA84は、変数lcntの値がL{vcnt}の値に等しいか否かを判定し(ステップS26)、変数lcntの値がL{vcnt}の値に等しい場合(S26:YES)、変数vcntの値に1を加算して(ステップS27)、ステップS23へ戻る。
【0111】
変数lcntの値がL{vcnt}の値に等しくない場合(S26:NO)、読出DMA84は、変数hcntの値を0に初期化する(ステップS28)。次いで、読出DMA84は、変数hcntの値がHNUM{vcnt}の値に等しいか否かを判定し(ステップS29)、変数hcntの値がHNUM{vcnt}の値に等しい場合(S29:YES)、変数lcntの値に1を加算して(ステップS30)、ステップS26へ戻る。
【0112】
変数hcntの値がHNUM{vcnt}の値に等しくない場合(S29:NO)、読出DMA84は、画像データのヘッダ情報からW{vcnt}{hcnt}及びZM{vcnt}{hcnt}を取得して(ステップS31)、変数pcntの値を0に初期化する(ステップS32)。次いで、読出DMA84は、変数pcntの値がW{vcnt}{hcnt}に等しいか否かを判定し(ステップS33)、変数pcntの値がW{vcnt}{hcnt}の値に等しい場合(S33:YES)、変数hcntの値に1を加算して(ステップS34)、ステップS29へ戻る。
【0113】
変数pcntの値がW{vcnt}{hcnt}の値に等しくない場合(S33:NO)、読出DMA84は、メモリ82から読み出した画像データの1画素を仮インデックス画像生成処理部72へ出力する(ステップS35)。このとき読出DMA84は、ステップS31にて取得したZM{vcnt}{hcnt}の値に基づいて、解像度が低減された画像データの場合には、解像度を復元した後に1画素を出力する。次いで、読出DMA84は、変数pcntの値に1を加算して(ステップS36)、ステップS33へ戻る。
【0114】
以上の処理を行うことによって、読出DMA84は、解像度が低減された画像データをメモリ82から読み出し、読み出した画像データのヘッダ情報を基に解像度を復元して仮インデックス画像生成処理部72へ与えることができる。例えば図13に示したヘッダ情報に基づいて上記の処理を行った場合、読出DMA84は、まず、ヘッダ情報からHDSIZE=52及びVNUM=3を取得し(ステップS21)、変数vcnt=0の初期化を行う(ステップS22)。この時点においてはvcnt==VNUMが成立しないため(S23:NO)、読出DMA84は、ヘッダ情報からHNUM0=2及びL0=9を取得し(ステップS24)、変数lcnt=0の初期化を行う(ステップS25)。この時点においてはlcnt==L0が成立しないため(S26:NO)、読出DMA84は、変数hcnt=0の初期化を行う(ステップS28)。この時点においてはhcnt==HNUM0が成立しないため(S29:NO)、読出DMA84は、ヘッダ情報からW00=12及びZM00=100%を取得し(ステップS31)、変数pcnt=0の初期化を行う(ステップS32)。
【0115】
次いで、読出DMA84は、pcnt==W00が成立するまで、メモリ82から読み出した画像データの1画素の出力(ステップS35)、及び変数pcntのインクリメント(ステップS36)を繰り返し行う。なお、ZM00=100%であるため、メモリ82から読み出したデータの解像度を復元する必要はない。その後、pcnt==W00が成立した場合(S33:YES)、主走査領域00の1ライン目の処理が終了したため、読出DMA84は、変数hcntをインクリメントして(ステップS34)、ステップS29へ戻る。
【0116】
この時点において変数hcnt=1であり、hcnt==HNUM0は成立しないため(S29:NO)、読出DMA84は、ヘッダ情報からW01=4及びZM01=25%を取得し(ステップS31)、変数pcnt=0の初期化を行う(ステップS32)。次いで、読出DMA84は、pcnt==W01が成立するまで、メモリ82から読み出した画像データの1画素の出力(ステップS35)、及び変数pcntのインクリメント(ステップS36)を繰り返し行う。このとき、ZM01=25%であり、解像度が低減されているため、読出DMA84は、解像度の復元を行った後で画像データの1画素の出力を行う。その後、pcnt==W00が成立した場合(S33:YES)、主走査領域01の1ライン目の処理が終了したため、読出DMA84は、変数hcntをインクリメントして(ステップS34)、ステップS29へ戻る。
【0117】
この時点において変数hcnt=2であり、hcnt==HNUM0が成立し(S29:YES)、副走査領域0の1ライン目の処理が終了したため、読出DMA84は、変数lcntをインクリメントし(ステップS30)、ステップS26へ戻る。これらの処理をlcnt=L0が成立するまで繰り返し行うことによって、読出DMA84は、副走査領域0の全ての画素を出力することができる(ステップS28〜S36)。
【0118】
その後、lcnt==L0が成立し(S26:YES)、副走査領域0の処理が終了した場合、読出DMA84は、変数vcntをインクリメントして(ステップS27)、ステップS23へ戻る。この時点においてvcnt=1であり、vcnt==VNUMは成立しないため(S23:NO)、読出DMA84は、副走査領域0の場合と同様に、副走査領域1の処理を行う(ステップS24〜S36)。ただし、副走査領域1(即ち、主走査領域10)はZM10=25%であるため、主走査方向及び副走査方向の解像度を復元した後で、画像データの1画素の出力を行う。
【0119】
なお、画像データの解像度を復元する場合、主走査方向及び副走査方向の両方について解像度を復元するか、又は、主走査方向のみ解像度を復元するかは、副走査領域数HNUMの値が1であるか否かに応じて判断することができる。即ち、解像度変換倍率ZMの値が100%でない場合において、読出DMA84は、HNUMの値が1であれば主走査方向及び副走査方向の両方について解像度を復元し、HNUMの値が1でなければ主走査方向のみ解像度を復元すればよい。
【0120】
副走査領域1の画像データの出力処理を終了した後、読出DMA84は、変数vcntをインクリメントして(ステップS27)、ステップS23へ戻る。この時点においてvcnt=2であり、vcnt==VNUMは成立しないため(S23:NO)、読出DMA84は、副走査領域0及び1の場合と同様に、副走査領域2の処理を行う(ステップS24〜S36)。副走査領域2の画像データの出力処理を終了した後、読出DMA84は、変数vcntをインクリメントして(ステップS27)、ステップS23へ戻る。この時点においてvcnt=3であり、vcnt==VNUMが成立するため(S23:YES)、読出DMA84は画像データの出力を完了し、処理を終了する。
【0121】
読出DMA84により解像度が復元された画像データを与えられた仮インデックス画像生成処理部71は、画像データを仮インデックス画像に変換し、変換後の画像データを書込DMA85へ出力する。書込DMA85は、画像データのヘッダ情報に基づいて、仮インデックス画像生成処理部71から与えられた画像データの平坦領域の解像度を低減する処理を行い、画像データをメモリ82へ書き込む。ただし、仮インデックス画像生成処理部71から与えられる画像データは、各画素の画素値がRGBの3バイトのデータからインデックスの1バイトのデータに変換されたものであるため、ヘッダ情報は図13に示したものとは異なる値となる。そこで、書込DMA85は、インデックス化される前の画像データのヘッダ情報を、インデックス化された画像データに適合するように変換する。
【0122】
図24は、インデックス化された画像データのヘッダ情報の一例を示す模式図であり、図13に示すヘッダ情報に基づいて書込DMA85が変換したヘッダ情報である。書込DMA85は、ヘッダ情報のデータ領域開始アドレスVSA0を、メモリ82の空き領域(読出DMA84が読み出した画像データの記憶領域と重複しない領域)から適宜に選択することで、例えば0x00010000に変更する。また書込DMA85は、ヘッダ情報の主走査オフセットサイズOFT0〜2の値をそれぞれ1/3に減らすと共に、残りのデータ領域開始アドレスVSA1及びVSA2を各副走査領域のサイズに合わせて変更する。
【0123】
ヘッダ情報を変換した書込DMA85は、このヘッダ情報に基づいて、仮インデックス画像生成処理部71から与えられた画像データの平坦部分の解像度を低減する変換処理を行い、変換処理後の画像データをメモリ82へ書き込む。書込DMA85が行うこの変換処理は、図22及び図23に示した読出DMA84の変換処理と略同じ手順で行うことができる。
【0124】
図25及び図26は、書込DMA85が行う画像データの変換処理の手順を示すフローチャートである。書込DMA85は、変換したヘッダ情報からHDSIZE及びVNUMを取得し(ステップS41)、変数vcntの値を0に初期化する(ステップS42)。次いで書込DMA85は、変数vcntの値がVNUMの値に等しいか否かを判定し(ステップS43)、変数vcntの値がVNUMの値に等しい場合(S43:YES)、処理を終了する。変数vcntの値がVNUMの値に等しくない場合(S43:NO)、書込DMA85は、画像データのヘッダ情報からHNUM{vcnt}及びL{vcnt}を取得し(ステップS44)、変数lcntの値を0に初期化する(ステップS45)。次いで、書込DMA85は、変数lcntの値がL{vcnt}の値に等しいか否かを判定し(ステップS46)、変数lcntの値がL{vcnt}の値に等しい場合(S46:YES)、変数vcntの値に1を加算して(ステップS47)、ステップS43へ戻る。
【0125】
変数lcntの値がL{vcnt}の値に等しくない場合(S46:NO)、書込DMA85は、変数hcntの値を0に初期化する(ステップS48)。次いで、書込DMA85は、変数hcntの値がHNUM{vcnt}の値に等しいか否かを判定し(ステップS49)、変数hcntの値がHNUM{vcnt}の値に等しい場合(S49:YES)、変数lcntの値に1を加算して(ステップS50)、ステップS46へ戻る。変数hcntの値がHNUM{vcnt}の値に等しくない場合(S49:NO)、書込DMA85は、画像データのヘッダ情報からW{vcnt}{hcnt}及びZM{vcnt}{hcnt}を取得して(ステップS51)、変数pcntの値を0に初期化する(ステップS52)。次いで、書込DMA85は、変数pcntの値がW{vcnt}{hcnt}に等しいか否かを判定し(ステップS53)、変数pcntの値がW{vcnt}{hcnt}の値に等しい場合(S53:YES)、変数hcntの値に1を加算して(ステップS54)、ステップS49へ戻る。
【0126】
変数pcntの値がW{vcnt}{hcnt}の値に等しくない場合(S53:NO)、書込DMA85は、仮インデックス画像生成処理部71から与えられた画像データの1画素をメモリ82へ出力して(ステップS55)、画像データの書き込みを行う。このとき書込DMA85は、ステップS51にて取得したZM{vcnt}{hcnt}の値に基づいて、解像度を低減する必要がある場合には、解像度を低減した後に1画素を出力する。次いで、書込DMA85は、変数pcntの値に1を加算して(ステップS56)、ステップS53へ戻る。
【0127】
以上の処理を行うことによって、書込DMA85は、仮インデックス画像生成処理部71から与えられた画像データのヘッダ情報を変更し、画像データの解像度を低減して、メモリ82へ書き込むことができる。ここで、画像データのヘッダ情報の変更を書込DMA85が行う構成としたが、CPU81がヘッダ情報を変更してメモリ82に記憶し、書込DMA85がメモリ82に記憶された変更後のヘッダ情報を参照する構成としてもよい。また、前景色インデックス化処理部53においては、仮インデックス画像生成処理部71と同様に、インデックス画像補正処理部73が読出DMA84及び書込DMA85を介してメモリ82に対する画像データの読み出し及び書き込みを行うが、この場合についても読出DMA84及び書込DMA85は図22及び図23並びに図25及び図26に示したフローチャートの手順で処理を行うことができる。ただし、インデックス画像補正処理部73への画像データを読み出す読出DMA84は、仮インデックス画像生成処理部71にてインデックス化された画像データを読み出すため、この画像データのヘッダ情報は図24に示したものとなる。また、インデックス画像補正処理部73からの画像データを書き込む書込DMA85は、ヘッダ情報のデータ領域開始アドレスVSAのみを変更すればよく、主走査オフセットサイズOFTの値は変更しなくてよい。
【0128】
以上の構成のMFPにおいては、画像入力装置11にて読み取った画像データを圧縮処理部30のフォーマット変換処理部52にて変化領域及び平坦領域に分離し、平坦領域の解像度を低減すると共に、これらの情報をヘッダ情報として付与した画像データを生成する構成とすることにより、画像データのデータ量を低減することができるため、MFPのメモリ82の使用量を低減することができ、画像処理を行うICなどの間での画像データの転送量を低減することができる。また、入力画像データの隣接する画素の画素値の差分が、画像の主走査方向及び/又は副走査方向に増加から減少へ又は減少から増加へ転じる反転回数を算出し、反転回数に基づいて平坦領域に含まれる画素の判定を行う構成とすることにより、画素値の比較及び反転回数のカウントによる簡単な演算で変化領域及び平坦領域の分離を行うことができる。
【0129】
また、メモリ82に記憶された画像データを読出DMA84が読み出し、ヘッダ情報を基に画像データの解像度を戻して仮インデックス画像生成処理部71及びインデックス画像補正処理部73等の画像処理手段へ与えると共に、画像処理手段が画像処理を施した画像データを書込DMA85がヘッダ情報を基に解像度を低減してメモリ82へ書き込む構成とすることにより、メモリ82と画像処理手段との間のデータ転送量を低減することができ、各画像処理部は画像データの解像度を変更する処理を行う必要がない。
【0130】
なお、本実施の形態においては、MFPがカラーの画像データを扱う構成としたが、これに限るものではなく、モノクロームの画像データを扱うMFPについても本発明を適用することができる。また、前景色インデックス化処理部53の仮インデックス画像生成処理部71及びインデックス画像補正処理部73のみが読出DMA84及び書込DMA85を介して画像データの読み出し及び書き込みを行う構成としたが、これに限るものではなく、前景マスク生成処理部51、背景レイヤ生成処理部54及び2値画像生成処理部55等のその他の画像処理部についても同様に読出DMA84及び書込DMA85を介して画像データの読み出し及び書き込みを行う構成としてもよい。また、本発明の適用についてはMFPに限るものではなく、画像データに対する画像処理を行う画像処理装置であれば本発明を適用することができる。特に、本発明は画像データを前景レイヤ及び背景レイヤに分離し、各レイヤに対する圧縮処理を行う画像処理装置に適している。
【0131】
(実施の形態2)
上述の実施の形態1に係るMFPは、フォーマット変換処理部52にて入力画像データを変化領域及び平坦領域に分離するために、隣接する画素の画素値の差分を算出して、差分の増減の反転回数をカウントし、この反転回数に基づいて平坦領域の判定を行う構成である。しかしながら、反転回数を7×7領域にて行う構成であるため、この領域より大きな文字などのエッジ部分では反転回数が少なく、変化領域と判定できない場合がある。これにより、大きな文字が平坦領域として解像度を低減されるため、解像度を戻す変換を行った場合に文字のエッジ部分にジャギーが発生する虞がある。
【0132】
そこで、実施の形態2に係るMFPは、7×7領域における最大画素値及び最小画素値の差分を算出し、反転回数が少ない場合であっても、最大画素値及び最小画素値の差分が所定の閾値以上であれば、変化領域と判定する構成とする。図27は、実施の形態2に係るフォーマット変換処理部152の構成を示すブロック図である。実施の形態2に係るフォーマット変換処理部152は、反転回数カウント処理部61、平坦判定処理部62、領域判定処理部63及び画像データフォーマット変換部64を有すると共に、最大・最小画素値差算出処理部165を有している。
【0133】
最大・最小画素値差算出処理部165は、入力画像データから注目画素を決定し、注目画素を中心とした7×7領域について、画素値の最大値及び最小値を取得し、この差分を算出する処理を行う。最大・最小画素値差算出処理部165は、入力画像データの全ての画素についてこの差分の算出を行い、算出結果を平坦判定処理部62へ与える。
【0134】
平坦判定処理部62は、反転回数カウント処理部61から入力画像データの各画素について算出された反転回数が与えられると共に、最大・最小画素値差算出処理部165から入力画像データの各画素について算出された最大画素値及び最小画素値の差分が与えられている。平坦判定処理部62は、各画素について算出された反転回数及び差分をそれぞれ閾値と比較し、反転回数が閾値を超えず、且つ、最大画素値及び最小画素値の差分が閾値を超えない場合に、この画素が平坦領域に含まれる画素であると判定する。よって、平坦判定処理部62は、反転回数が閾値以上、又は、最大画素値及び最小画素値の差分が閾値以上の場合に、この画素が変化領域に含まれる画素であると判定する。
【0135】
図28は、実施の形態2に係るフォーマット変換処理部152による変化領域及び平坦領域の判定を説明するための模式図である。例えば入力画像データ(図28(a)参照)に7×7領域(図中にα及びβで示す)より十分に大きい文字が含まれている場合、反転回数カウント処理部61により算出された反転回数は閾値を超えない虞がある。
【0136】
図28(a)に示す入力画像データは、白色の背景に大きな文字「A」が配された画像であり、背景の画素値はRGB=(0、0、0)であり、文字の画素値はRGB=(255、255、255)であるとする。この入力画像データにおいて、7×7領域αには文字の画素が含まれていないため、最大画素値及び最小画素値の差分は0である。しかし、7×7領域βには文字の画素が含まれているため、最大画素値及び最小画素値の差分は255である。
【0137】
例えば、平坦判定処理部62が閾値を100として最大画素値及び最小画素値の差分を判定した場合、変化領域及び平坦領域の判定結果は図28(b)のようになる。なお、図28(b)においては、変化領域の画素を黒色で示し、平坦領域の画素を白色で示してある。図示のように、平坦判定処理部62は、文字のエッジ部分を変化領域と判定することができるため、入力画像データに含まれる大きな文字の解像度が低下されて画質が悪化することを防止できる。
【0138】
なお、実施の形態2に係るMFPのその他の構成は、実施の形態1に係るMFPの構成と同様であるため、同様の箇所には同じ符号を付して詳細な説明を省略する。
【0139】
(実施の形態3)
実施の形態1及び2においては、本発明をMFPに適用した例を示したが、これに限るものではない。実施の形態3においては、本発明をフラットヘッドスキャナ(画像読取装置)に適用する例を示す。図29は、本発明の実施の形態3に係るフラットヘッドスキャナの構成をしめすブロック図である。実施の形態3に係るフラットヘッドスキャナは、画像入力装置11、操作パネル15及び画像処理装置320等を備えて構成されている。
【0140】
操作パネル15は、ユーザの操作を受け付ける種々のキー及び警告メッセージなどを表示するディスプレイ等で構成される。画像入力装置11は、原稿に光を照射する光源、及びCCD(Charge Coupled Device)などのイメージセンサが並設された受光部等を有し、光源から原稿へ光を照射すると共に、受光部を一方向へ移動させて、原稿からの反射光をR(赤)G(緑)B(青)の3つの色成分に分解して受光部で読み取り、RGBのアナログ信号として画像処理装置20へ与える。なお、画像入力装置11は、デジタルカメラ等の装置であってもよい。
【0141】
画像処理装置320は、A/D変換部21、シェーディング補正部22、入力階調補正部23、領域分離処理部24及び圧縮処理部30を有しており、画像入力装置11にて読み取った画像データに対してA/D変換部21〜領域分離処理部24にて画像処理を施し、圧縮処理部30にて画像データを圧縮して出力する。圧縮処理部30は、実施の形態1に係るMFPと同様に、入力画像データを変化領域及び平坦領域に分離し、平坦領域の解像度を低減することでデータ量を低減するフォーマット変換処理部52を備えている。これにより、実施の形態3に係るフラットヘッドスキャナは、画像データによるメモリの使用量を低減することができ、圧縮処理部30内の画像処理手段の間での画像データ転送量を低減することができる。
【0142】
なお、実施の形態3に係るフラットヘッドスキャナのその他の構成は、実施の形態1に係るMFPの構成と同様であるため、同様の箇所には同じ符号を付して詳細な説明を省略する。
【図面の簡単な説明】
【0143】
【図1】本発明の実施の形態1に係るMFPの構成を示すブロック図である。
【図2】画像処理装置の圧縮処理部の構成を示すブロック図である。
【図3】フォーマット変換処理部の構成を示すブロック図である。
【図4】フォーマット変換処理部へ与えられる入力画像データの一例を示す模式図である。
【図5】フォーマット変換処理部へ与えられる入力画像データの一例を示す模式図である。
【図6】反転回数カウント処理部による反転回数のカウント方法を説明するための模式図である。
【図7】反転回数カウント処理部による反転回数のカウント方法を説明するための模式図である。
【図8】平坦判定処理部による平坦判定処理の結果の一例を示す模式図である。
【図9】領域判定処理部による領域判定の結果の一例を示す模式図である。
【図10】領域A〜Cに分割した入力画像データの一例を示す模式図である。
【図11】解像度を低減した画像データの一例を示す模式図である。
【図12】各領域に番号付けを行った画像データの一例を示す模式図である。
【図13】画像データフォーマット変換部が生成する画像データのヘッダ情報の一例を示す模式図である。
【図14】ヘッダ情報に含まれる情報を説明するための模式図である。
【図15】前景色インデックス化処理部の構成を示すブロック図である。
【図16】仮インデックス画像の一例を示す模式図である。
【図17】前景インデックスカラーテーブルの一例を示す模式図である。
【図18】インデックス画像の一例を示す模式図である。
【図19】2値化画像の一例を示す模式図である。
【図20】MFPの圧縮処理部が行う圧縮処理の手順を示すフローチャートである。
【図21】圧縮処理部をハードウェア化した場合の一構成例を示すブロック図である。
【図22】読出DMAが行う画像データの変換処理の手順を示すフローチャートである。
【図23】読出DMAが行う画像データの変換処理の手順を示すフローチャートである。
【図24】インデックス化された画像データのヘッダ情報の一例を示す模式図である。
【図25】書込DMAが行う画像データの変換処理の手順を示すフローチャートである。
【図26】書込DMAが行う画像データの変換処理の手順を示すフローチャートである。
【図27】実施の形態2に係るフォーマット変換処理部の構成を示すブロック図である。
【図28】実施の形態2に係るフォーマット変換処理部による変化領域及び平坦領域の判定を説明するための模式図である。
【図29】本発明の実施の形態3に係るフラットヘッドスキャナの構成をしめすブロック図である。
【図30】レイヤ−分離による圧縮技術を説明するための模式図である。
【図31】前景レイヤの圧縮率を高める方法の一例を説明するための模式図である。
【符号の説明】
【0144】
11 画像入力装置(読取手段)
12 画像出力装置(画像形成手段)
13 送信装置
15 操作パネル
20 画像処理装置
21 A/D変換部
22 シェーディング補正部
23 入力階調補正部
24 領域分離処理部
25 色補正部
26 黒生成下色除去部
27 空間フィルタ処理部
28 出力階調補正部
29 階調再現処理部
30 圧縮処理部
31 記憶部
51 前景マスク生成処理部(抽出手段)
52 フォーマット変換処理部
53 前景色インデックス化処理部(画像処理手段、インデックス化処理手段、テーブル生成手段)
54 背景レイヤ生成処理部
55 2値画像生成処理部
56 画像圧縮部
61 反転回数カウント処理部(決定手段、計数手段)
62 平坦判定処理部(判定手段)
63 領域判定処理部(分離手段)
64 画像データフォーマット変換部(解像度低減手段、ヘッダ情報生成手段、画像データ生成手段)
71 仮インデックス画像生成処理部(画像処理手段)
72 インデックス統合処理部
73 インデックス画像補正処理部(画像処理手段)
81 CPU
82 メモリ
83 メモリ制御部
84 読出DMA(画像データ転送手段)
85 書込DMA(画像データ転送手段)
152 フォーマット変換処理部
165 最大・最小画素値差算出処理部(決定手段、算出手段)
320 画像処理装置

【特許請求の範囲】
【請求項1】
入力画像データを画素値の変化が大きい変化領域及び変化が小さい平坦領域に分離する分離手段と、
該分離手段により分離された平坦領域の解像度を低減する解像度低減手段と、
前記分離手段により分離された変化領域、及び前記解像度低減手段により解像度を低減された平坦領域に係るヘッダ情報を生成するヘッダ情報生成手段と、
該ヘッダ情報生成手段が生成したヘッダ情報、前記分離手段により分離された変化領域、及び前記解像度低減手段により解像度を低減された平坦領域を含む画像データを生成する画像データ生成手段と、
該画像データ生成手段が生成した画像データを記憶するメモリと、
前記画像データ生成手段が生成した画像データに画像処理を施す画像処理手段と、
前記メモリ及び前記画像処理手段の間の画像データの転送を行う画像データ転送手段と
を備え、
前記画像データ転送手段は、
前記メモリから読み出した画像データを、ヘッダ情報に基づいて平坦領域の解像度を変化領域と同じ解像度へ変換して、前記画像処理手段へ与え、
前記画像処理手段が画像処理を施した画像データを、前記分離手段、解像度低減手段、ヘッダ情報生成手段及び画像データ生成手段により平坦領域の解像度を低減した画像データに変換して、前記メモリへ与えるようにしてあること
を特徴とする画像処理装置。
【請求項2】
入力画像データから注目画素及び該注目画素を含む所定範囲の画素領域を決定する決定手段と、
該決定手段が決定した画素領域にて、隣接する画素の画素値の差分が、画像の主走査方向及び/又は副走査方向に増加から減少へ又は減少から増加へ転じる回数を計数する計数手段と、
該計数手段が計数した回数が所定値未満の場合に、前記注目画素が平坦領域に含まれる画素であると判定する判定手段と
を更に備え、
前記分離手段は、前記判定手段が平坦領域に含まれる画素であると判定した画素で構成された領域を、平坦領域に分離するようにしてあること
を特徴とする請求項1に記載の画像処理装置。
【請求項3】
入力画像データから注目画素及び該注目画素を含む所定範囲の画素領域を決定する決定手段と、
該決定手段が決定した画素領域にて、最大画素値及び最小画素値の差分を算出する算出手段と、
該算出手段が算出した差分が所定値未満の場合に、前記注目画素が平坦領域に含まれる画素であると判定する判定手段と
を更に備え、
前記分離手段は、前記判定手段が平坦領域に含まれる画素であると判定した画素で構成された領域を、平坦領域に分離するようにしてあること
を特徴とする請求項1又は請求項2に記載の画像処理装置。
【請求項4】
画像データから文字又は線画を含む前景画像を抽出する抽出手段を更に備え、
前記分離手段は、前記抽出手段が抽出した前景画像の画像データを分離するようにしてあること
を特徴とする請求項1から請求項3までのいずれか1つに記載の画像処理装置。
【請求項5】
前記画像データ生成手段が生成した画像データから、同じ又は近似する画素値を有する画素に同一のインデックスを付す処理を行うインデックス化処理手段と、
前記インデックス及び画素値の対応を記憶したテーブルを生成するテーブル生成手段と
を更に備えること
を特徴とする請求項1から請求項4までのいずれか1つに記載の画像処理装置。
【請求項6】
請求項1から請求項5までのいずれか1つに記載の画像処理装置と、
原稿を読み取って生成した画像データを出力する読取手段と
を備え、
前記画像処理装置は、前記読取手段が出力した画像データに画像処理を施すようにしてあること
を特徴とする画像読取装置。
【請求項7】
請求項1から請求項5までのいずれか1つに記載の画像処理装置と、
該画像処理装置が画像処理を施した画像データに基づく画像形成を行う画像形成手段と
を備えることを特徴とする画像形成装置。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate

【図11】
image rotate

【図12】
image rotate

【図13】
image rotate

【図14】
image rotate

【図15】
image rotate

【図16】
image rotate

【図17】
image rotate

【図18】
image rotate

【図19】
image rotate

【図20】
image rotate

【図21】
image rotate

【図22】
image rotate

【図23】
image rotate

【図24】
image rotate

【図25】
image rotate

【図26】
image rotate

【図27】
image rotate

【図28】
image rotate

【図29】
image rotate

【図30】
image rotate

【図31】
image rotate


【公開番号】特開2010−74300(P2010−74300A)
【公開日】平成22年4月2日(2010.4.2)
【国際特許分類】
【出願番号】特願2008−237112(P2008−237112)
【出願日】平成20年9月16日(2008.9.16)
【出願人】(000005049)シャープ株式会社 (33,933)
【Fターム(参考)】