(57)【要約】  【課題】画像処理装置の処理負荷を軽減するとともに、高圧縮率および高画質を両立した電子ファイルを生成する。  【解決手段】画像処理装置１は、装置全体を制御するＣＰＵ１０と、ページ毎のスキャンデータに含まれるエッジ画素数をカウントする画素カウント回路１４と、スキャンデータに対して、文字画像のため第１の圧縮処理、もしくは、文字以外の画像のための第２の圧縮処理をページ毎に行う圧縮処理回路１５とを有する。ＣＰＵ１０は、ページ毎のスキャンデータのエッジ画素数が第１の閾値以上であるか否かを判定し、そのエッジ画素数が第１の閾値以上である場合に、第１の圧縮処理を圧縮処理回路１５に行わせ、エッジ画素数が第１の閾値未満である場合に、第２の圧縮処理を圧縮処理回路１５に行わせる。【選択図】図１
2010103728.tif 000002
【特許請求の範囲】
【請求項１】
スキャンデータを圧縮する画像処理装置であって、
ページ毎の前記スキャンデータに含まれるエッジ画素数をカウントするエッジ画素カウント手段と、
前記スキャンデータに対して、文字画像のため第１の圧縮処理、もしくは、文字以外の画像のための第２の圧縮処理をページ毎に行う圧縮手段と、
前記エッジ画素数が所定の第１の閾値以上であるか否かを判定し、前記エッジ画素数が前記第１の閾値以上である場合に、前記第１の圧縮処理を行うように前記圧縮手段に指示し、前記エッジ画素数が前記第１の閾値未満である場合に、前記第２の圧縮処理を行うように前記圧縮手段に指示する切替手段と、を有すること、
を特徴とする画像処理装置。
【請求項２】
請求項１に記載の画像処理装置であって、
ページ毎の前記スキャンデータに含まれる白画素数をカウントする白画素カウント手段を有し、
前記切替手段は、
前記白画素数が所定の第２の閾値以上であるか否かを判定し、
前記エッジ画素数が前記第１の閾値以上であり、かつ、前記白画素数が前記第２の閾値以上である場合に、前記第１の圧縮処理を行うように前記圧縮手段に指示し、
前記エッジ画素数が前記第１の閾値未満である、もしくは、前記白画素数が前記第２の閾値未満である場合に、前記第２の圧縮処理を行うように前記圧縮手段に指示すること、
を特徴とする画像処理装置。
【請求項３】
請求項１または２に記載の画像処理装置であって、
前記圧縮手段による前記第１もしくは第２の圧縮処理後の圧縮データを含む電子ファイルを生成する電子ファイル生成手段を有すること、
を特徴とする画像処理装置。
【請求項４】
請求項１〜３いずれか一項に記載の画像処理装置は、スキャナ、コピー機、もしくは、複合機であることを特徴とする画像処理装置。
【請求項５】
スキャンデータを圧縮する画像処理装置における画像処理方法であって、
ページ毎の前記スキャンデータに含まれるエッジ画素数をカウントするエッジ画素カウントステップと、
前記スキャンデータに対して、文字画像のため第１の圧縮処理、もしくは、文字以外の画像のための第２の圧縮処理をページ毎に行う圧縮ステップと、
前記エッジ画素数が所定の第１の閾値以上であるか否かを判定し、前記エッジ画素数が前記第１の閾値以上である場合に、前記第１の圧縮処理を行うように前記圧縮ステップに指示し、前記エッジ画素数が前記第１の閾値未満である場合に、前記第２の圧縮処理を行うように前記圧縮ステップに指示する切替ステップと、を有すること、
を特徴とする画像処理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、原稿のスキャンデータを圧縮する画像処理に関する。
【背景技術】
【０００２】
近年、文書等を電子化する技術として、原稿のスキャンデータを所定のフォーマット（例えば、ＰＤＦ）の電子ファイルに変換する画像処理装置が知られている。
【０００３】
また、高い圧縮率および高い画質の電子ファイルを実現するため、スキャンデータを解析して、写真、図、文字などの各種領域に分離し、それぞれの領域の特性に適した圧縮処理を行う技術がある（例えば、高圧縮ＰＤＦ）。この技術では、例えば、文字などの階調の変化が大きい領域に対しては、可逆圧縮が行われる。一方、写真や図などの階調の変化が滑らかな領域に対しては、非可逆圧縮が行われる。
【０００４】
スキャンデータを各種の領域に分離する技術としては、スキャンデータを複数のブロックに分け、ブロック単位で背景領域、文字領域、絵柄領域などに分離する画像形成装置が知られている（例えば、特許文献１）。
【０００５】
【特許文献１】特開２００５−１５９５７６号公報
【発明の開示】
【発明が解決しようとする課題】
【０００６】
ところで、上記のような領域分離技術では、原稿のページ毎にスキャンデータの解析処理が行われ、スキャンデータが各種領域に分離される。解析処理では、画素ごとに複数のフィルタ処理が繰り返し実行される必要がある。さらに、解析の精度を上げるために、画素間の連結関係を分析する処理や、統計的な処理が実行される必要がある。
【０００７】
そのため、上記の領域分離を行うハードウェアの規模は大きくなってしまう。また、画素間の連結関係を分析する処理など、ハードウェアによる実現が不向きな処理をソフトウェアにより実現した場合には、ＣＰＵの処理負担が大きくなる。また、ハードウェアを用いずに各種処理をソフトウェアにより実現した場合、ＣＰＵの処理負担がますます大きくなり、実用に耐えられない。
【０００８】
そこで、本発明は、画像処理装置において、その処理負荷を軽減するとともに、高圧縮率および高画質を両立した電子ファイルを生成する技術を提供することを目的とする。
【課題を解決するための手段】
【０００９】
上記の課題を解決するための本発明の一態様は、スキャンデータを圧縮する画像処理装置であって、ページ毎の前記スキャンデータに含まれるエッジ画素数をカウントするエッジ画素カウント手段と、前記スキャンデータに対して、文字画像のため第１の圧縮処理、もしくは、文字以外の画像のための第２の圧縮処理をページ毎に行う圧縮手段と、前記エッジ画素数が所定の第１の閾値以上であるか否かを判定し、前記エッジ画素数が前記第１の閾値以上である場合に、前記第１の圧縮処理を行うように前記圧縮手段に指示し、前記エッジ画素数が前記第１の閾値未満である場合に、前記第２の圧縮処理を行うように前記圧縮手段に指示する切替手段と、を有すること、を特徴とする。
【００１０】
ここで、上記の画像処理装置であって、ページ毎の前記スキャンデータに含まれる白画素数をカウントする白画素カウント手段を有し、前記切替手段は、前記白画素数が所定の第２の閾値以上であるか否かを判定し、前記エッジ画素数が前記第１の閾値以上であり、かつ、前記白画素数が前記第２の閾値以上である場合に、前記第１の圧縮処理を行うように前記圧縮手段に指示し、前記エッジ画素数が前記第１の閾値未満である、もしくは、前記白画素数が前記第２の閾値未満である場合に、前記第２の圧縮処理を行うように前記圧縮手段に指示すること、を特徴としていてもよい。
【００１１】
また、上記の画像処理装置であって、前記圧縮手段による前記第１もしくは第２の圧縮処理後の圧縮データを含む電子ファイルを生成する電子ファイル生成手段を有すること、を特徴としていてもよい。
【００１２】
上記の課題を解決するための本発明の他の態様は、スキャンデータを圧縮する画像処理装置における画像処理方法であって、ページ毎の前記スキャンデータに含まれるエッジ画素数をカウントするエッジ画素カウントステップと、前記スキャンデータに対して、文字画像のため第１の圧縮処理、もしくは、文字以外の画像のための第２の圧縮処理をページ毎に行う圧縮ステップと、前記エッジ画素数が所定の第１の閾値以上であるか否かを判定し、前記エッジ画素数が前記第１の閾値以上である場合に、前記第１の圧縮処理を行うように前記圧縮ステップに指示し、前記エッジ画素数が前記第１の閾値未満である場合に、前記第２の圧縮処理を行うように前記圧縮ステップに指示する切替ステップと、を有すること、を特徴とする。
【発明を実施するための最良の形態】
【００１３】
以下、本発明の一実施形態について図面を参照しながら説明する。
【００１４】
図１は、本発明の一実施形態に係る、画像処理装置１のハードウェア構成の概略を示すブロック図である。
【００１５】
本実施形態では、画像処理装置１はスキャナである。画像処理装置１は、紙などの原稿をスキャンして、所定のフォーマットの電子ファイルを生成する。例えば、画像処理装置１は、複数のページの原稿を連続してスキャンするように設定された場合、複数のページを含む１つの電子ファイルを生成する。また、画像処理装置１は、生成した電子ファイルを、ネットワークを介してＰＣ（Personal Computer）２に送信する。もちろん、画像処理装置１は、スキャナに限られず、スキャナを有するコピー機、複合機などであってもよい。
【００１６】
ＰＣ２は、ＣＰＵ２０と、ＲＡＭ２１と、ＲＯＭ２２と、図示しないＨＤＤ（Hard Disk Drive）と、ディスプレイと、入力装置と、通信インタフェース（Ｉ／Ｆ）と有するコンピュータである。ＰＣ２は、画像処理装置１から送られた電子ファイルを表示したり編集したりする処理や、画像処理装置１を制御する処理を行う。これらの処理は、ＣＰＵ２０が、ＨＤＤに格納された所定のアプリケーションプログラムやドライバプログラムを、ＲＡＭ２１にロードして実行することにより実現される。もちろん、ＰＣ２の構成は上記に限られない。
【００１７】
画像処理装置１についてより詳細に説明する。
【００１８】
画像処理装置１は、ＣＰＵ１０と、ＲＡＭ１１と、スキャナエンジン１２と、スキャナ画像処理回路１３と、画素カウント回路１４と、圧縮処理回路１５と、入出力インタフェース（Ｉ／Ｆ）１６と、ＤＭＡ（Direct Memory Access）部１７１〜１７６と、ＨＤＤ１８とを有する。もちろん、画像処理装置１の構成は上記に限られない。
【００１９】
ＣＰＵ１０は、他のユニットを制御して画像処理装置１の各種機能を実現する演算装置である。ＣＰＵ１０は、ＲＯＭなどのメモリ（図示しない）に格納された所定のプログラムをＲＡＭ１１にロードして実行することにより各種処理を実現する。
【００２０】
ＣＰＵ１０は、例えば、スキャナエンジン１２を制御して原稿のスキャンを実行する。また、ＣＰＵ１０は、スキャナ画像処理回路１３と、画素カウント回路１４と、圧縮処理回路１５とを制御して、スキャナエンジン１２から出力される原稿の各ページのスキャンデータ（入力画像データ）に対して、所定の画像処理、所定の画素カウント処理、所定の圧縮処理を順次実行する。
【００２１】
画素カウント処理において、ＣＰＵ１０は、後述する水平エッジレベルと、垂直エッジレベルと、輝度レベルとを画素カウント回路１４に設定する。また、ＣＰＵ１０は、原稿の各ページについて、後述する水平エッジ画素数と、垂直エッジ画素数と、白画素数とを画素カウント回路１４から取得する。
【００２２】
また、ＣＰＵ１０は、原稿の各ページについて、水平エッジ画素数が所定の閾値以上であるか否かを判定する。ここで、所定の閾値とは、文字用の圧縮処理を行うべきページであるか否かを判定する基準となる水平エッジ画素数である。また、ＣＰＵ１０は、各ページについて、垂直エッジ画素数が所定の閾値以上であるか否かを判定する。ここで、所定の閾値は、文字用の圧縮処理を行うべきページであるか否かを判定する基準となる垂直エッジ画素数である。
【００２３】
なお、水平エッジ画素数を示す閾値および垂直エッジ画素数示す閾値は、様々なサンプル画像データを用いて調査を行い、文字を含むページ（例えば、文字の割合が６０％以上のページ）における水平および垂直方向のエッジ画素数を統計的に算出することで、予め決定することができる。一般的には、文字が多くなるにつれてエッジ画素数は増加する。もちろん、閾値の設定は、ユーザ等により変更できるようにしてもよい。
【００２４】
また、ＣＰＵ１０は、水平および垂直エッジ画素数がそれぞれ所定の閾値以上である場合、さらに、当該ページの白画素数が所定の閾値以上であるか否かを判定する。ここで、所定の閾値とは、文字用の圧縮処理を行うべきページであるか否かを判定する基準となる白画素数である。
【００２５】
なお、白画素数を示す閾値は、様々なサンプル画像データを用いて調査を行い、文字を含むページ（例えば、文字の割合が６０％以上のページ）における白色の画素数を統計的に算出することで、予め決定することができる。一般的には、写真や図よりも文字の割合が多くなるにつれて白画素数は増加する。
【００２６】
また、ＣＰＵ１０は、白画素数が所定の閾値以上である場合、当該ページが文字用の圧縮処理を行うべきページであると判断する。そして、ＣＰＵ１０は、圧縮処理回路１５を制御して、当該ページについて可逆圧縮処理を実行する。この圧縮処理には、例えば、ＬＺ７７を用いることができる。
【００２７】
一方、水平および垂直エッジ画素数のいずれかがそれぞれの閾値未満、もしくは、白画素数がその閾値未満である場合、当該ページが文字用の圧縮処理を行うべきないページであると判断する。そして、ＣＰＵ１０は、圧縮処理回路１５を制御して、当該ページについて非可逆圧縮処理を実行する。圧縮処理には、例えば、ＪＰＥＧを用いることができる。
【００２８】
上記のように、ページの属性に応じて圧縮処理を切り替えることにより、文字の割合が所定値以上であるページについては、画質の劣化が少ない状態で、コンピュータのディスプレイなどに表示することができる。なお、文字の割合が所定値未満であるページについては、非可逆圧縮が適用されるが、写真や図などについては一般的に画質の劣化がユーザに認識されにくい。そのため、可逆圧縮よりもデータサイズを小さくできるメリットがある。
【００２９】
上記のような圧縮処理後、ＣＰＵ１０は、原稿の各ページの圧縮画像データを統合して、電子ファイルを生成する。例えば、連続してスキャンされた複数のページのデータを１つの文書として、１つの電子ファイルを生成する。また、ＣＰＵ１０は、ＰＣ２の要求に応じて、入出力Ｉ／Ｆ１６を制御して生成した電子ファイルをＰＣ２に送信する。
【００３０】
ＲＡＭ１１は、各種プログラム、データなどを格納する。ＲＡＭ１１は、例えば、スキャナ画像処理回路１３による画像処理後のＲＧＢ画像データ、圧縮処理回路１５による圧縮処理後の圧縮データ、ＣＰＵ１０により生成された電子ファイルなどを格納する。
【００３１】
スキャナエンジン１２は、原稿を読み取り、デジタル信号化したＲＧＢ画像データを出力するためのユニットである。スキャナエンジン１２は、例えば、ＡＤＦ（Auto Document Feeder）、光源、キャリッジ、走査用モータ、ＣＣＤラインセンサ、ＡＦＥ（Analog Front End）などを有する。
【００３２】
スキャナエンジン１２は、ＡＤＦにより原稿を搬送させながら原稿の各ページ（各面）に光を当て、その反射光を、赤（Ｒ）、緑（Ｇ）、青（Ｂ）のフィルタをかけたＣＣＤラインセンサに導く。そして、読み取られたＲＧＢ各色についてのアナログ情報をデジタル信号化し、画素ごとにＲＧＢ各色の階調値を有する画像データとしてスキャナ画像処理回路１３に出力する。
【００３３】
スキャナ画像処理回路１３は、スキャナエンジン１２から出力された画像データに各種画像処理を行う回路である。スキャナ画像処理回路１３は、原稿の各ページの画像データを受信し、例えば、シェーディング補正、ライン間補正処理、拡大縮小処理などを行う。そして、各種の画像処理後の画像データを、ＤＭＡ部１７１を介して、ＲＡＭ１１に格納する。
【００３４】
画素カウント回路１４は、スキャナ画像処理回路１３により処理された原稿の各ページの画像データを、ＲＡＭ１１からＤＭＡ部１７２を介して取得する。そして、１ページ毎に、ページに含まれるエッジ画素数および白画素数をカウントしてＣＰＵ１０に出力する。
【００３５】
図２を参照して、画素カウント回路１４についてより詳しく説明する。図２は、本発明の一実施形態に係る、画素カウント回路１４のハードウェア構成の概略を示すブロック図である。
【００３６】
本図に示すように、画素カウント回路１４は、レジスタインタフェース（Ｉ／Ｆ）１４０と、平滑化フィルタ１４１と、水平エッジ検出フィルタ１４２と、垂直エッジ検出フィルタ１４３と、輝度変換部１４４と、水平エッジ画素カウンタ１４５と、垂直エッジ画素カウンタ１４６と、白画素カウンタ１４７とを有する。
【００３７】
レジスタＩ／Ｆ１４０は、ＣＰＵ１０からの要求に応じて、指定された水平エッジレベルを水平エッジ画素カウンタ１４５に設定する。ここで、水平エッジレベルとは、１ページ内の各画素が水平方向のエッジ画素であるか否かを判定するための閾値である。また、指定された垂直エッジレベルを垂直エッジ画素カウンタ１４６に設定する。ここで、垂直エッジレベルとは、１ページ内の各画素が垂直方向のエッジ画素であるか否かを判定するための閾値でｓある。
【００３８】
また、レジスタＩ／Ｆ１４０は、ＣＰＵ１０からの要求に応じて、指定された輝度レベルを白画素カウンタ１４７に設定する。ここで、輝度レベルとは、１ページ内の各画素が白画素であるか否かを判定するための閾値である。
【００３９】
また、レジスタＩ／Ｆ１４０は、ＣＰＵ１０からの要求に応じて、１ページに含まれる水平方向のエッジ画素数を水平エッジ画素カウンタ１４５から取得し、ＣＰＵ１０に出力する。また、ＣＰＵ１０からの要求に応じて、１ページに含まれる垂直方向のエッジ画素数を垂直エッジ画素カウンタ１４６から取得し、ＣＰＵ１０に出力する。また、ＣＰＵ１０からの要求に応じて、１ページに含まれる白画素数を白画素カウンタ１４７から取得し、ＣＰＵ１０に出力する。
【００４０】
また、レジスタＩ／Ｆ１４０は、ＤＭＡ部１７２を起動し、例えば、１ページ分の画素データをＣＰＵ１０の制御を介さずに受信する。
【００４１】
平滑化フィルタ１４１は、ＤＭＡ１７２を介してＲＡＭ１１から出力された画素データを受信し、画素ごとに平滑化フィルタ演算を行う回路である。平滑化フィルタ演算により、入力された各ページの画像データに含まれるノイズがエッジ画素として誤検出される割合を減らすことができる。平滑化フィルタ１４１は、フィルタを施した画素データを、水平エッジ検出フィルタ１４２と、垂直エッジ検出フィルタ１４３と、輝度変換部１４４とに出力する。
【００４２】
水平エッジ検出フィルタ１４２は、各画素データについて、水平方向のエッジ検出フィルタ演算を行ってエッジ値を出力する回路である。フィルタとして、例えば、各画素の隣接画素との差分をとるＳｏｂｅｌフィルタやＰｒｅｗｉｔｔフィルタを採用することができる。水平エッジ検出フィルタ１４２は、フィルタを施した画素データのエッジ値を水平エッジ画素カウンタ１４５に出力する。
【００４３】
垂直エッジ検出フィルタ１４３は、各画素データについて、垂直方向のエッジ検出フィルタ演算を行ってエッジ値を出力する回路である。フィルタとして、例えば、各画素の隣接画素との差分をとるＳｏｂｅｌフィルタやＰｒｅｗｉｔｔフィルタを採用することができる。垂直エッジ検出フィルタ１４３は、フィルタを施した画素データのエッジ値を垂直エッジ画素カウンタ１４６に出力する。
【００４４】
輝度変換部１４４は、入力された各画素データのＲＧＢの階調値を、輝度を示す輝度値に変換する回路である。輝度変換部１４４は、例えば、変換式：Ｌ＝０．２９８９×Ｒ＋０．５８６６×Ｇ＋０．１１４５×Ｂ  の演算を行うことにより輝度値Ｌを算出する。輝度変換部１４４は、算出した輝度値を白画素カウンタ１４７に出力する。
【００４５】
水平エッジ画素カウンタ１４５は、水平方向のエッジ画素数をカウントする回路である。水平エッジ画素カウンタ１４５は、水平エッジ検出フィルタ１４２から出力された各画素のエッジ値が所定のエッジ値（水平エッジレベル）以上であるか否かを判定する。また、エッジ値がエッジレベル以上である画素を、水平エッジ画素としてカウントする。そして、１ページに含まれる水平エッジ画素数を記憶しておき、レジスタＩ／Ｆ１４０からの要求に応じて、その画素数を出力する。なお、水平エッジレベルは、レジスタＩ／Ｆ１４０を介してＣＰＵ１０により設定される。
【００４６】
垂直エッジ画素カウンタ１４６は、垂直方向のエッジ画素数をカウントする回路である。垂直エッジ画素カウンタ１４６は、垂直エッジ検出フィルタ１４３から出力された各画素のエッジ値が所定のエッジ値（垂直エッジレベル）以上であるか否かを判定する。また、エッジ値がエッジレベル以上である画素を、垂直エッジ画素としてカウントする。そして、１ページに含まれる垂直エッジ画素数を記憶しておき、レジスタＩ／Ｆ１４０からの要求に応じて、その画素数を出力する。なお、垂直エッジベルは、レジスタＩ／Ｆ１４０を介してＣＰＵ１０により設定される。
【００４７】
白画素カウンタ１４７は、白画素の数をカウントする回路である。白画素カウンタ１４７は、輝度変換部１４４から出力された各画素の輝度値が所定の輝度値（輝度レベル）以上であるか否かを判定する。また、輝度値が輝度レベル以上である画素を、白画素としてカウントする。そして、１ページに含まれる白画素数を記憶しておき、レジスタＩ／Ｆ１４０からの要求に応じて、その画素数を出力する。なお、輝度レベルは、レジスタＩ／Ｆ１４０を介してＣＰＵ１０により設定される。
【００４８】
もちろん、画素カウント回路１４の構成は上記に限られない。例えば、画素カウント回路１４は、平滑化フィルタ１４１を有していなくても良い。
【００４９】
図１に戻って説明を続ける。圧縮処理回路１５は、原稿の各ページのデータの圧縮処理を行う回路である。圧縮処理回路１５は、可逆圧縮処理と、非可逆圧縮処理とを行うための回路を有する。可逆圧縮処理には、例えば、ＬＺ７７を用いることができる。非可逆圧縮処理には、例えば、ＪＰＥＧを用いることができる。
【００５０】
圧縮処理回路１５は、ページ毎にＣＰＵ１０から圧縮方式（可逆もしくは非可逆）の指定を受け付ける。そして、圧縮処理回路１５は、画素カウント回路１４によるカウント処理が終了したページの画像データを、ＲＡＭ１１からＤＭＡ部１７３を介して取得する。それから、指定された方式で取得した画像データの圧縮処理を行う。圧縮処理回路１５は、圧縮処理後の画像データを、ＤＭＡ部１７４を介してＲＡＭ１１に格納する。
【００５１】
入出力Ｉ／Ｆ１６は、ＨＤＤ１８や、ＬＡＮなどのネットワークを介して接続される外部装置と情報の送受信を行う。もちろん、外部装置と通信を行うためのインタフェースは、入出力Ｉ／Ｆ１６と別に設けられていてもよい。
【００５２】
ＤＭＡ部１７１〜１７６は、スキャナ画像処理回路１３、画素カウント回路１４、圧縮処理回路１５、入出力Ｉ／Ｆ１６それぞれに制御され、ＣＰＵ１０の制御によらずにＲＡＭ１１へのアクセスを実現する。
【００５３】
ＨＤＤ１８は、各種プログラム、データなどを格納する。ＨＤＤ１８は、例えば、ＣＰＵ１０により生成された電子ファイルなどを格納する。
【００５４】
図３は、上記の画像処理装置１により実現される、電子ファイルの生成処理を示すフロー図である。本フローは、スキャンを開始する指示が、例えば、ＰＣ２から送られてきた場合に開始される。
【００５５】
Ｓ１０では、ＣＰＵ１０は、１ページ分のスキャンを実行する。具体的には、ＣＰＵ１０は、スキャナエンジン１２を制御して、原稿の１ページ分のスキャンを実行する。また、スキャナ画像処理回路１３を制御して、スキャナエンジン１２から出力される１ページ分の画像データに対して、各種画像処理を実行する。そして、処理をＳ２０に進める。
【００５６】
Ｓ２０では、ＣＰＵ１０は、１ページ分の画像データについて、所定の画素のカウントを実行する。具体的には、ＣＰＵ１０は、画素カウント回路１４を制御して、スキャナ画像処理回路１３による画像処理後の１ページ分の画像データについて、水平エッジ画素数と、垂直エッジ画素数と、白画素数とのカウントを実行する。また、レジスタＩ／Ｆ１４０を介して、水平エッジ画素数と、垂直エッジ画素数と、白画素数とを取得する。そして、処理をＳ３０に進める。
【００５７】
なお、水平エッジレベル、垂直エッジレベル、輝度レベルは、例えば、画像処理装置１の起動時に予め設定されている。原稿の紙の種類や、原稿の内容に応じてＣＰＵ１０が設定できるようにしてもよい。
【００５８】
Ｓ３０では、ＣＰＵ１０は、１ページに含まれるエッジ画素数が所定の閾値以上であるか否かを判定する。具体的には、ＣＰＵ１０は、Ｓ２０で取得した水平エッジ画素数が所定の閾値以上であるか否かを判定する。また、Ｓ２０で取得した垂直エッジ画素数が所定の閾値以上であるか否かを判定する。そして、水平および垂直エッジ画素数の両方がそれぞれの所定の閾値以上である場合（Ｓ３０：ＹＥＳ）、処理をＳ４０に進める。それ以外の場合（Ｓ３０：ＮＯ）、処理をＳ７０に進める。
【００５９】
Ｓ４０では、ＣＰＵ１０は、１ページに含まれる白画素数が所定の閾値以上であるか否かを判定する。具体的には、ＣＰＵ１０は、Ｓ２０で取得した白画素数が所定の閾値以上であるか否かを判定する。そして、白画素数が所定の閾値以上である場合（Ｓ４０：ＹＥＳ）、処理をＳ５０に進める。一方、白画素数が所定の閾値未満である場合（Ｓ４０：ＮＯ）、処理をＳ７０に進める。
【００６０】
Ｓ５０では、ＣＰＵ１０は、可逆圧縮の設定を行う。具体的には、ＣＰＵ１０は、圧縮処理回路１５に可逆圧縮により処理を行うための設定を行う。そして、処理をＳ６０に進める。
【００６１】
Ｓ６０では、ＣＰＵ１０は、可逆圧縮処理を実行する。具体的には、ＣＰＵ１０は、圧縮処理回路１５を制御して、１ページ分の画像データについて、可逆圧縮処理を実行する。なお、圧縮処理後の圧縮データは、ＲＡＭ１１に格納される。そして、ＣＰＵ１０は、処理をＳ９０に進める。
【００６２】
一方、Ｓ７０では、ＣＰＵ１０は、非可逆圧縮の設定を行う。具体的には、ＣＰＵ１０は、圧縮処理回路１５に非可逆圧縮により処理を行うための設定を行う。そして、処理をＳ８０に進める。
【００６３】
Ｓ８０では、ＣＰＵ１０は、非逆圧縮処理を実行する。具体的には、ＣＰＵ１０は、圧縮処理回路１５を制御して、１ページ分の画像データについて、非可逆圧縮処理を実行する。なお、圧縮処理後の圧縮画像データは、ＲＡＭ１１に格納される。そして、ＣＰＵ１０は、処理をＳ９０に進める。
【００６４】
Ｓ９０では、ＣＰＵ１０は、圧縮画像データに所定のメタデータを付加する。具体的には、ＣＰＵ１０は、１ページの圧縮画像データに、図５に示すようなメタデータを関連付ける。
【００６５】
図５に示すように、メタデータは、ファイル名２１０と、ページ番号２２０と、圧縮方式２３０とが関連付けられたデータである。ファイル名２１０は、所定の方法により決定した名称（例えば、文字列”ｉｍａｇｅ”と、ページ番号と、ファイル拡張子とを連結した文字列）である。ページ番号２２０は、スキャンしたページの順序を示すデータである。拡張子は、Ｓ５０もしくはＳ７０で設定された圧縮処理の方式を示すデータ（例えば、“jpeg”、“lz77”など）である。
【００６６】
図３に戻って説明する。圧縮データにメタデータを付加すると（Ｓ９０）、ＣＰＵ１０は、処理をＳ１００に進める。
【００６７】
Ｓ１００では、ＣＰＵ１０は、スキャンを行ったページが原稿の最終ページであるか否かを判定する。最終ページでないと判定した場合（Ｓ１００：ＮＯ）、処理をＳ１０に戻す。一方、最終ページであると判定した場合（Ｓ１００：ＹＥＳ）、処理をＳ１１０に進める。
【００６８】
Ｓ１１０では、ＣＰＵ１０は、連続してスキャンした全ページの圧縮画像データを統合する。具体的には、ＣＰＵ１０は、ＲＡＭ１１に格納されている、メタデータ付きの各ページの圧縮画像データを関連付け、１つの電子ファイルを生成する。例えば、電子ファイルのフォーマットは、例えば、ＰＤＦである。その後、本フローを終了する。
【００６９】
なお、Ｓ１１０で生成された電子ファイルは、例えば、入出力Ｉ／Ｆ１６を介してＰＣ２に送信される。ＨＤＤ１８に格納されもよい。また、持ち運び可能なメモリなどの記憶媒体に格納されるようにしてもよい。
【００７０】
以上のようにして、スキャンされた原稿の各ページの特性に応じた圧縮処理が実行され、電子ファイルが生成される。
【００７１】
なお、白画素数の判定（Ｓ４０）は行わないようにしてもよい。この場合、輝度変換部１４４および白画素カウンタ１４７（図２参照）は、使用されない。もしくは、画素カウント回路１４に、設けられていなくてもよい。
【００７２】
図４は、ＰＣ２により実現される、電子ファイルの表示処理を示すフロー図である。
【００７３】
本フローは、例えば、電子ファイルを表示したり編集したりする所定のアプリケーションプログラムが起動され、表示処理が実行されることにより開始される。なお、電子ファイルは、上記の画像処理装置１で生成されたものである。電子ファイルは、例えば、ネットワークを介して、もしくは、持ち運び可能な記憶媒体などを介して、ＰＣ２のＨＤＤなどに格納される。
【００７４】
Ｓ２１０では、ＣＰＵ２０は、電子ファイルから各ページのメタデータを読み出す。そして、処理をＳ２２０に進める。
【００７５】
Ｓ２２０では、ＣＰＵ２０は、未処理ページを探索する。具体的には、解凍処理を実行していないページを１つ特定する。そして、処理をＳ２３０に進める。
【００７６】
Ｓ２３０では、ＣＰＵ２０は、圧縮方式が可逆圧縮であるか否かを判定する。具体的には、ＣＰＵ２０は、Ｓ２２０で特定したページに対応するメタデータの中から、圧縮方式２３０を読み出す。そして、当該圧縮方式が可逆圧縮を示している場合（Ｓ２３０：ＹＥＳ）、処理をＳ２４０に進める。一方、当該圧縮方式が非可逆圧縮を示している場合（Ｓ２３０：ＮＯ）、処理をＳ２５０に進める。
【００７７】
Ｓ２４０では、ＣＰＵ２０は、可逆解凍処理を実行して表示データを生成する。具体的には、Ｓ２２０で特定したページの圧縮画像データから、ディスプレイで表示可能なデータ形式（例えば、ビットマップイメージ）の表示データを生成する。そして、ＲＡＭ２１もしくはＨＤＤに格納する。そして、ＣＰＵ２０は、処理をＳ２６０に進める。
【００７８】
なお、Ｓ２２０で特定したページの圧縮画像データは、可逆圧縮により生成されたデータであるため、解凍を行っても圧縮前のデータと比べて画質の劣化が少ない。
【００７９】
一方、Ｓ２５０では、ＣＰＵ２０は、非可逆解凍処理を実行して表示データを生成する。具体的には、Ｓ２２０で特定したページの圧縮画像データから、ディスプレイで表示可能なデータ形式（例えば、ビットマップイメージ）の表示データを生成する。そして、ＲＡＭ２１もしくはＨＤＤに格納する。そして、ＣＰＵ２０は、処理をＳ２６０に進める。
【００８０】
なお、上記の場合、Ｓ２２０で特定したページの圧縮画像データは、非可逆圧縮により生成されたデータであるため、圧縮前の画像データと比べて画質が劣化しており、解凍しても画質が戻らない。
【００８１】
Ｓ２６０では、ＣＰＵ２０は、表示データの生成を行ったページが電子ファイルに含まれる最終ページであるか否かを判定する。最終ページでないと判定した場合（Ｓ２６０：ＮＯ）、処理をＳ２１０に戻す。一方、最終ページであると判定した場合（Ｓ２６０：ＹＥＳ）、処理をＳ２７０に進める。
【００８２】
Ｓ２７０では、ＣＰＵ２０は、生成が終了した電子ファイルの全ページの表示データが、正しいページ順序で表示されるように並び替えを行う。そして、処理をＳ２８０に進める。
【００８３】
Ｓ２８０では、ＣＰＵ２０は、Ｓ２７０で並び替えた順序で、電子ファイルの各ページの表示データをディスプレイに表示する。
【００８４】
以上のようにして、電子ファイルの各ページの圧縮方式に応じた解凍処理により表示データが生成され、表示される。
【００８５】
以上、本発明の一実施形態について説明した。本発明によれば、画像処理装置の処理負荷を軽減するとともに、高圧縮率および高画質を両立した電子ファイルを生成することができる。
【００８６】
すなわち、より簡単な構成のハードウェアおよびより簡単な処理により、複数ページの原稿の画像データから、高圧縮率かつ文字の視認性が高い電子ファイルを生成することができる。そのため、高圧縮ＰＤＦのような領域分離を行うハードウェアのように、大規模なハードウェアを用意する必要がなくなる。また、ＣＰＵの処理負荷を下げることができる。
【００８７】
以上、本発明について、例示的な実施形態と関連させて記載した。多くの代替物、修正および変形例が当業者にとって明らかであることは明白である。したがって、上記の本発明の実施形態は、本発明の要旨と範囲を例示することを意図し、限定するものではない。
【図面の簡単な説明】
【００８８】
【図１】本発明の一実施形態に係る画像処理装置１のハードウェア構成の概略を示すブロック図である。
【図２】本発明の一実施形態に係る画素カウント回路１４のハードウェア構成の概略を示すブロック図である。
【図３】本発明の一実施形態に係る画像処理装置１により実現される、電子ファイルの生成処理を示すフロー図である。
【図４】本発明の一実施形態に係るＰＣ２により実現される、電子ファイルの表示処理を示すフロー図。
【図５】本発明の一実施形態に係るメタデータの構成例を示す図。
【符号の説明】
【００８９】
１：画像処理装置、２：ＰＣ、１０：ＣＰＵ、１１：ＲＡＭ、１２：スキャナエンジン、１３：スキャナ画像処理回路、１４：画素カウント回路、１５：圧縮処理回路、１６：入出力Ｉ／Ｆ、１７１〜１７６：ＤＭＡ部、１８：ＨＤＤ、２０：ＣＰＵ、２１：ＲＡＭ、２２：ＲＯＭ、
１４０：レジスタＩ／Ｆ、１４１：平滑化フィルタ、１４２：水平エッジ検出フィルタ、１４３：垂直エッジ検出フィルタ、１４４：輝度変換部、１４５：水平エッジ画素カウンタ、１４６：垂直エッジ画素カウンタ、１４７：白画素カウンタ、
２１０：ファイル名、２２０：ページ番号、２３０：圧縮方式
【図１】
2010103728.tif 000003
【図２】
2010103728.tif 000004
【図３】
2010103728.tif 000005
【図４】
2010103728.tif 000006
【図５】
2010103728.tif 000007