(57)【要約】【課題】  圧縮されている画像に対して画像処理を適用する場合、再圧縮の際の量子化の過程でおきる圧縮誤差により画像の質が低下するという問題があった。【解決手段】  上記課題を解決すべく、本発明の画像処理装置は、ビットマップ画像データを圧縮することで得られた圧縮画像データに対して画像処理を実行する画像処理手段と、前記画像処理手段により前記圧縮画像データに対して回転処理を実行する場合、前記画像処理手段により実行される画像処理に所定の画像処理を含むか否かに応じて、前記圧縮画像データを周波数領域データに変換して回転処理を実行する第１の回転処理を実行するか、前記圧縮画像データをビットマップ画像データに復元して回転処理を実行する第２の回転処理を実行するか決定する決定手段と、を有することを特徴とする。【選択図】  図７
2016046597.tif 000002
【特許請求の範囲】
【請求項１】
ビットマップ画像データを圧縮することで得られた圧縮画像データに対して画像処理を実行する画像処理手段と、
前記画像処理手段により前記圧縮画像データに対して回転処理を実行する場合、
前記画像処理手段により実行される画像処理に所定の画像処理を含むか否かに応じて、
前記圧縮画像データを周波数領域データに変換して回転処理を実行する第１の回転処理を実行するか、
前記圧縮画像データをビットマップ画像データに復元して回転処理を実行する第２の回転処理を実行するか決定する決定手段と、
を有することを特徴とする画像処理装置。
【請求項２】
ビットマップ画像データを直交変換し、該直交変換されたデータに対して量子化し、該量子化されたデータに対してハフマン符号化して圧縮することで前記圧縮画像データが得られることを特徴とする請求項１に記載の画像処理装置。
【請求項３】
前記圧縮画像データを、ハフマン復号化し、該ハフマン復号化したデータに対して逆量子化し、該逆量子化したデータに対して直交変換して伸長することでビットマップ画像データに復元することを特徴とする請求項１に記載の画像処理装置。
【請求項４】
前記第２の回転手段が実行されたビットマップ画像データに対しては、再度圧縮画像データに変換することを特徴とする請求項１に記載の画像処理装置。
【請求項５】
前記画像処理手段により実行される所定の画像処理とは画像データを構成する画素値に対して変化をもたらす画像処理であることを特徴とする請求項１に記載の画像処理装置。
【請求項６】
前記決定手段は、
前記画像処理手段により実行される画像処理に所定の画像処理が含まれない場合は前記第１の回転処理を実行し、
前記画像処理手段により実行される画像処理に所定の画像処理が含まれる場合は前記第２の回転処理を実行するように決定することを特徴とする請求項１に記載の画像処理装置。
【請求項７】
前記所定の画像処理とは少なくとも、変倍処理、フィルタ処理、解像度変換、ガンマ値の変換、のいずれかを含むことを特徴とする請求項１に記載の画像処理装置。
【請求項８】
前記決定手段は、前記画像処理手段により実行される画像処理に所定の画像処理が含まれない場合であっても、前記回転処理にて指定される回転角度が９０の倍数ではない場合は、前記第２の回転処理を実行するように決定することを特徴とする請求項６に記載の画像処理装置。
【請求項９】
ビットマップ画像データを得るために読み取る原稿の向きを検知した結果を用いて前記回転処理を実行するか否か決めること特徴とする請求項１に記載の画像処理装置。
【請求項１０】
ビットマップ画像データを圧縮することで得られた圧縮画像データに対して画像処理を実行する画像処理ステップと、
前記画像処理ステップにて前記圧縮画像データに対して回転処理を実行する場合、
前記画像処理ステップにて実行される画像処理に所定の画像処理を含むか否かに応じて、
前記圧縮画像データを周波数領域データに変換して回転処理を実行する第１の回転処理を実行するか、
前記圧縮画像データをビットマップ画像データに復元して回転処理を実行する第２の回転処理を実行するか決定する決定ステップと、
を有することを特徴とする画像処理方法。
【請求項１１】
コンピュータに請求項１０に記載の方法を実行させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は特に圧縮された画像データに対しての画像処理を行うための画像処理装置、および制御方法に関する。
【背景技術】
【０００２】
スキャナで読み取った画像データを記憶装置に保存し、この保存された画像データを印刷したり、外部装置へ送信したりするといったことが可能な画像形成装置が実用に供されている。
【０００３】
画像データを記憶装置で保存したり外部装置へ送信したりする際、画像データの容量を低減するために種々の画像圧縮技術が利用されている。これらの画像圧縮技術により画像データのサイズを圧縮することで、格納する際の記憶装置の容量やネットワークでの送信時間等を節約することができる。このような画像圧縮技術として一般的なものに、ＪＰＥＧ（Ｊｏｉｎｔ  Ｐｈｏｔｏｇｒａｐｈ  Ｅｘｐｅｒｔｓ  Ｇｒｏｕｐ）方式がある。
【０００４】
従来、ＪＰＥＧ方式により圧縮されている画像データに対して画像処理を適用した後、再度ＪＰＥＧ方式の画像データとして格納又は送信を行う場合、以下の処理が行われる。すなわち、圧縮画像データは画像データに対して離散コサイン変換を行い、量子化処理、エントロピ符号化を行うことにより作成される。そして、この圧縮画像データを処理するためには、まずエントロピ復号化と逆量子化処理、逆離散コサイン変換を行なってビットマップ画像データを復元する必要がある。この復元されたビットマップ画像データに対して画像処理を適用した後に、再び離散コサイン変換と量子化処理、ハフマン符号化を行なって再圧縮し圧縮画像データを作成する。こうして得られた圧縮画像データを格納又は送信する。
【０００５】
この方法においては、再圧縮の際、量子化誤差といった不可避的に生じる圧縮誤差によって画像の質が低下するという問題があった。特に画像の回転処理等、画像処理の特徴によっては画素データに対して変化のないことを期待されている処理がある。これに対して特許文献１では、圧縮画像データを完全に伸長せずに画像処理を行なうことで再圧縮の際の画質劣化を回避する技術が開示されている。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開平８−２０４９５７
【発明の概要】
【発明が解決しようとする課題】
【０００７】
しかしながら上記の技術では適用する画像処理の種類に応じて、圧縮画像データを完全に伸長するか否か判断する点に関して開示をしていない。
【０００８】
すなわち、適用する画像処理の種類に応じて、圧縮データに対して完全な伸長を必要とするものと完全な伸長を必要としないものがあり、完全に伸長しなければ画像処理が適切に実行されないものがある。
【０００９】
本発明は、かかる従来の課題に鑑みてなされたものであり、圧縮されている画像に対して画像処理を適用する際、指示された画像処理を適切に実行しつつ画質劣化を抑制することが可能な画像処理装置を提供することにある。
【課題を解決するための手段】
【００１０】
上記課題を解決すべく本発明の画像処理装置は、ビットマップ画像データを圧縮することで得られた圧縮画像データに対して画像処理を実行する画像処理手段と、前記画像処理手段により前記圧縮画像データに対して回転処理を実行する場合、前記画像処理手段により実行される画像処理に所定の画像処理を含むか否かに応じて、前記圧縮画像データを周波数領域データに変換して回転処理を実行する第１の回転処理を実行するか、前記圧縮画像データをビットマップ画像データに復元して回転処理を実行する第２の回転処理を実行するか決定する決定手段とを有することを特徴とする。
【発明の効果】
【００１１】
本発明では、圧縮画像データに対して画像処理を適用し、再度圧縮画像データとして保持する際、圧縮画像データをビットマップ画像データまで伸長するか否かを適用する画像処理の種類に応じて切り換える。
【００１２】
これにより、指示された画像処理を適切に実行しつつ画質劣化を抑制することが可能な画像処理装置を提供することが可能になる。
【図面の簡単な説明】
【００１３】
【図１】本実施形態における画像処理装置の基本的な構成を示すシステムブロック図である。
【図２】本実施形態における画像形成装置の構成を示すブロック図である。
【図３】画像変換部の構成を示すブロック図である。
【図４】圧縮部の構成を示すブロック図である。
【図５】伸長部の構成を示すブロック図である。
【図６】離散コサイン変換部での処理の内容を示す説明図である。
【図７】処理制御部の処理の例を示したフローチャートである。
【図８】周波数領域データにおける回転処理の例を示したフローチャートである。
【図９】回転処理を説明した図である。
【図１０】画素ブロックの再配置に関しての説明した図である。
【図１１】画像処理の適用の例を示した図である。
【図１２】実施例２における処理制御部の処理の例を示したフローチャートである。
【発明を実施するための形態】
【００１４】
以下、本発明を実施するための形態について図面を用いて説明する。
本実施例では画像形成装置としてスキャナを有するＭＦＰ（Ｍｕｌｔｉ  Ｆｕｎｃｔｉｏｎ  Ｐｒｉｎｔｅｒ）を対象として説明する。
【実施例１】
【００１５】
図１は本実施形態における画像処理装置２０２の基本的な構成を示すシステムブロック図である。画像処理装置２０２は、ＣＰＵ１０１、ＲＯＭ１０２、ＲＡＭ１０３、記憶装置１０４、表示部１０５、操作部１０６、エンジンインターフェース１０７、ネットワークインターフェース１０８、外部インターフェース１０９、及びシステムバス１１０を備える。
【００１６】
上記構成を詳述すると、ＣＰＵ１０１は、装置全体の制御及び演算処理等を行う中央処理装置であり、ＲＯＭ１０２に格納されたプログラムに基づき後述に示す各処理を実行する。
【００１７】
ＲＯＭ１０２は、読み出し専用メモリである。ＲＯＭ１０２は、システム起動プログラム、プリンタエンジンの制御を行うプログラム、文字データ及び文字コード情報等のデータの記憶領域である。
【００１８】
ＲＡＭ１０３は、ランダムアクセスメモリである。ＲＡＭ１０３には、ダウンロードにより追加登録されたフォントデータが記憶され、様々な処理毎にプログラムやデータがロードされる。さらに、ＲＡＭ１０３に各種プログラムが展開され、実行される。また、ＲＡＭ１０３は、受信した画像データのデータ記憶領域として利用することも可能である。
【００１９】
記憶装置１０４は、例えばハードディスク等から構成されている。記憶装置１０４は、データをスプールしたり、プログラムや各情報ファイルを格納したり、作業用の領域として利用されたりする。本実施の形態では圧縮画像データが格納されるのは記憶装置１０４となる。
【００２０】
表示部１０５は、例えば液晶等による表示を行うものである。表示部１０５は、装置の設定状態や、現在の装置内部の処理、エラー状態などの表示に使用される。操作部１０６は、設定の変更やリセットを行うために使用される。操作部１０６は、表示部１０５とともに後述のように画像を送信する際の画像処理の設定を指定するための操作画面の表示も可能である。
【００２１】
エンジンインターフェース１０７は、実際にプリンタエンジンを制御するコマンド等を入出力するインターフェースである。ネットワークインターフェース１０８は、画像処理装置をネットワークに接続するためのインターフェースである。画像処理装置は、ネットワーク及びネットワークインターフェース１０８を介して、ホストコンピュータやネットワーク上のサーバと画像データの送受信をする。外部インターフェース１０９は、パラレル（またはシリアル）などのインターフェースを介して画像入力装置であるスキャナと接続される。システムバス１１０は、上述の構成要素間のデータ通路となる。
【００２２】
後述するフローチャートで示す処理手順は、ＲＯＭ１０２、ＲＡＭ１０３、又は記憶装置１０４のいずれかの装置に記憶され、ＣＰＵ１０１により実行される。
【００２３】
図２は本実施形態における画像形成装置２００の構成を示すブロック図である。画像形成装置２００は、画像入力装置２０１、画像処理装置２０２、画像出力装置２０３を有するＭＦＰである。以下、図２を用いて、画像入力装置２０１であるスキャナ２０４で読み取られた画像データを記憶装置に格納した後、外部装置に送信する処理について説明する。
【００２４】
スキャナ２０４は外部インターフェース１０９を介して画像処理装置２０２に接続されている。画像処理装置２０２は、描画コマンド処理部２０５、入力画像処理部２０６、出力画像処理部２０７、画像変換部２０８、及び記憶装置２０９を備える。
【００２５】
スキャナ２０４は、紙やフィルムに印刷された画像を光学的に走査し、その反射光や透過光の強度を測り、アナログ−デジタル変換することでビットマップ画像データを読み込む。スキャナ２０４より受信されたビットマップ画像データは、入力画像処理部２０６に供給される。入力画像処理部２０６は受信したビットマップ画像データに対してシェーディング補正や、ライン間補正、色補正など、周知の画像処理を行う。
【００２６】
入力画像処理部２０６で処理された画像データは画像メモリに一時的に記録される。画像変換部２０８は画像メモリに一時記録されたデータをデータ圧縮して記憶装置２０９に格納することで読み取られた画像データの記憶装置２０９への格納処理がなされる。
【００２７】
次に画像変換部２０８は記憶装置２０９へ格納された画像データに対して、操作部１０６で設定された送信の際の設定に従い画像処理を適用する。適用した後、ネットワークインターフェース１０８を介して、ホストコンピュータやネットワーク上のサーバと画像データの送信をすることで読み取られた画像データを外部装置に送信する処理が終了する。
【００２８】
画像変換部２０８における処理の詳細に関しては後述する。
【００２９】
一方、記憶装置２０９に格納される画像データは画像入力装置２０１からのみではなく、ネットワーク上のホストコンピュータより送信される画像データも含まれる。
【００３０】
ホストコンピュータで動作するアプリケーションで作成されたデジタル文書データは図示しないプリンタドライバに送信され、デジタル文書に基づいた描画コマンドが生成される。ここで生成される描画コマンドとしては、ＰＤＬ（Ｐａｇｅ  Ｄｅｓｃｒｉｐｔｉｏｎ  Ｌａｎｇｕａｇｅ）と呼ばれるページ画像データを作成するためのページ記述言語が一般的である。プリンタドライバにより生成された描画コマンドは、ネットワークを介して画像処理装置２０２に伝送される。描画コマンド処理部２０５は、ホストコンピュータより受信した描画コマンドに対して解析処理を行い、描画オブジェクトを生成し、更にラスタライズ処理を行うことによりビットマップ画像データを生成する。生成されたビットマップ画像データは画像メモリに一時的に記録される。画像変換部２０８は画像メモリに一時記録されたデータをデータ圧縮して記憶装置２０９に格納することでホストコンピュータより送信される画像データの記憶装置２０９への格納処理がなされる。
【００３１】
なお、ホストコンピュータから描画コマンドではなくビットマップ画像データやＪＰＥＧ方式で圧縮された画像データが受信されても良い。その場合、ホストコンピュータから受信された画像データは、ビットマップ画像データであれば画像変換部２０８による圧縮処理後に記憶装置２０９に格納され、ＪＰＥＧ圧縮画像データであればそのまま記憶装置２０９へ格納される。
【００３２】
なお、記憶装置２０９に格納した画像データをプリンタエンジンで印刷する場合は以下の処理がなされる。
【００３３】
記憶装置２０９に圧縮画像データとして格納されている画像データは画像変換部２０８によりビットマップ画像データに伸長される。次に、出力画像処理部２０７は生成されたビットマップ画像データに対し、色変換処理や濃度補正処理、中間調処理等の画像処理を実施することにより、プリンタエンジン２１０が受信可能な画像フォーマットに変換する。
【００３４】
このように生成された画像データは、画像出力装置２０３に送信される。画像出力装置２０３は、受信した画像データをプリンタエンジン２１０により紙面に出力する。すなわち、露光・現像・転写・定着の処理を経ることで転写材である紙面への印刷が完了する。以上説明した処理により記憶装置２０９に圧縮データとして格納されている画像データの印刷する処理が完了する。
【００３５】
図３は画像変換部２０８の構成を示すブロック図である。
【００３６】
画像変換部２０８は少なくとも、圧縮部３０１、伸長部３０２、処理制御部３０３、及び、回転部３０４、フィルタ処理部３０５、解像度変換部３０６、ガンマ処理部３０７を含む。
【００３７】
画像変換部２０８では、画像データに対して圧縮・伸長処理を行う一方、操作部１０６で設定された送信の際の設定に従い、回転やフィルタ処理、解像度変換、ガンマ処理といった画像処理を適用する。
【００３８】
図４及び図５は本実施の形態における圧縮部３０１及び伸長部３０２の構成及びこの構成により実行される処理を示すブロック図である。
【００３９】
まず圧縮部３０１の構成及びこの構成により実行される処理に関して図４を用いて説明する。
【００４０】
色変換部４０１は、圧縮部３０１に入力されるビットマップ画像データであるＲＧＢ画像信号を輝度色差信号（ＹＣｂＣｒ信号）に変換する。離散コサイン変換（Ｄｉｓｃｒｅｔｅ  Ｃｏｓｉｎｅ  Ｔｒａｎｓｆｏｒｍ（以下ＤＣＴ））部４０２は、色変換部４０１が出力する輝度信号および色差信号それぞれを画素ブロック（例えば８×８画素）単位で離散コサイン変換して、ＤＣＴ係数に変換する。ここで、離散コサイン変換（ＤＣＴ）を用いたが、直交変換であればその他の方式を使ってもよい。
【００４１】
量子化部４０３は、ＤＣＴが出力する画素ブロック単位のＤＣＴ係数を予め設定された量子化マトリクスを用いて量子化してデータ量を削減し、ランレングス圧縮用に画素ブロック分の量子化値を出力する。ハフマン符号化部４０４は、量子化部４０３から入力される量子化値をジグザグスキャン順にハフマン符号化することで圧縮画像データを作成する。
【００４２】
なお、本実施例では、処理制御部３０３の判断により、圧縮部３０１の処理の入力が周波数領域データ４０５のみとなる場合がある。処理制御部３０３の処理の詳細は後述する。
【００４３】
次に伸長部３０２の構成及びこの構成により実行される処理に関して図５を用いて説明する。
【００４４】
ハフマン復号化部５０１は圧縮画像データに対してハフマン復号を行い、ジグザグスキャンに合わせて８×８画素に並べ替える。逆量子化部５０２は、ハフマン復号化部５０１が出力するデータを予め設定された逆量子化マトリクスにより逆量子化してＤＣＴ係数を復号する。
【００４５】
逆ＤＣＴ５０３は、逆量子化部５０２が出力するＤＣＴ係数を逆ＤＣＴ（直交変換）して、輝度色差信号を復元する。色変換部５０４は、逆ＤＣＴによって復元した輝度信号をＲＧＢ画像信号に変換し、ビットマップ画像データを出力する。
【００４６】
伸長部３０２についても本実施の形態においては、処理制御部３０３の判断により出力がハフマン復号化の出力である周波数領域データ５０５となる場合がある。処理制御部３０３の処理の詳細は後述する。
【００４７】
図６はＤＣＴ４０２での処理の内容を示す説明図である。図６に示すように、ＤＣＴでは８×８画素のビットマップ画像データが８×８画素ブロックのＤＣＴ係数に変換される。本実施例ではこのＤＣＴ係数に関して量子化部４０３より量子化したものを周波数領域データとしている。本実施例ではビットマップ画像データに対する座標系をｘ−ｙ座標で表し、周波数領域データに対する座標系をｕ−ｖ座標で表す。
【００４８】
以下、画像変換部２０８の処理制御部３０３での処理の詳細に関して説明する。
【００４９】
画像変換部２０８では記憶装置２０９に格納されている圧縮画像データに対して、外部装置への送信処理を行う際に、指定された画像処理を実行する。
【００５０】
画像処理として、例えば、圧縮画像データに対して、ユーザの指示によりフィルタ処理や、解像度変換、ガンマ処理を適用後、送信するケースが考えられる。この場合、通常では圧縮画像データを伸長部３０２がビットマップ画像データに復元し、フィルタ処理、解像度変換、ガンマ処理といった画像処理を施した後、圧縮部３０１がビットマップ画像データを圧縮画像データに再圧縮し、外部装置へ送信される。
【００５１】
本実施例ではこの画像処理に原稿の向きを変更するといった回転処理が含まれる場合、処理を異ならせる。具体的には処理制御部３０３によって実行される画像処理に回転処理のみ含まれる場合と、回転処理以外の画像処理が含まれる場合とで回転部３０４での処理を切り替える。なお、ここでの回転処理は原稿の向きの変更を想定しており、回転角度は９０°の倍数となる。また、回転角度が９０°の倍数ではない場合の回転処理は、回転処理以外の画像処理に含まれる。
【００５２】
図７は処理制御部３０３の処理の例を示したフローチャートである。
【００５３】
まず、ステップＳ７０１で記憶装置２０９に格納されている圧縮画像データに対して、操作部１０６より送信指示がなされる。次にステップＳ７０２で、処理制御部３０３は操作部１０６により実行が指示される画像処理の中に画像データの回転処理が含まれるか否かを判断する。回転処理が含まれないと判断された場合は、ステップＳ７０９に進む。そしてステップＳ７０９にて回転処理以外の画像処理が実行されるか否かを判断する。ここで回転処理も実行されず他の画像処理も実行されないと判断された場合、ステップＳ７１３に進み、格納されていた圧縮画像データがそのまま送信される。一方、ステップＳ７０９にて回転処理以外の画像処理が実行されると判断された場合、ステップＳ７１０に進む。そしてステップＳ７１０にて圧縮画像データが伸長部３０２により伸長され、ビットマップ画像データに復元される。その後、ステップＳ７１１にてフィルタ処理、解像度変換、ガンマ処理といった画像処理が実行され、ステップＳ７１２に進む。そしてステップＳ７１２にて圧縮部３０１によりビットマップ画像データは圧縮され、ステップＳ７１３にて作成された圧縮画像データが送信される。
【００５４】
一方、ステップＳ７０２において実行される画像処理の中に回転処理が含まれると判断された場合、Ｓ７０３に進む。ステップＳ７０３では回転処理以外の画像処理が実行されるか否かを判断する。ここで回転処理以外の画像処理が実行されると判断された場合、ステップＳ７０５に進み、圧縮画像データは伸長部３０２により伸長されビットマップ画像データに復元される。そして、ステップＳ７０６にて復元されたビットマップ画像データに対して回転部３０４が通常の画像データの回転処理を行う。
【００５５】
その後、ステップＳ７０７にて回転されたビットマップ画像データに対して、フィルタ処理、解像度変換、ガンマ処理といった画像処理が実行される。そして、ステップＳ７０８にて、圧縮部３０１によりビットマップ画像データは圧縮され、ステップＳ７１３にて作成された圧縮画像データが送信される。
【００５６】
ここで、ステップＳ７０３において回転処理以外の画像処理が実行されないと判断された場合、ステップＳ７０４に進む。このステップＳ７０４では回転部３０４が周波数領域データでの回転処理を行う。そして、この回転処理された圧縮画像データはステップＳ７１３にて送信される。
【００５７】
図８は周波数領域データにおける回転処理の例を示したフローチャートである。
【００５８】
圧縮画像データに対して周波数領域データにおける回転処理を行う場合、まずステップＳ８０１で伸長部３０２がハフマン復号化を行い、周波数領域データを復元する。
【００５９】
次にステップＳ８０２にてそれぞれの８×８画素ブロック内の周波数領域データに対して回転処理に相当する処理を行う。この処理の詳細について図９を用いて説明する。
【００６０】
図９はステップＳ８０２で実行されるビットマップ画像データ及び８×８画素ブロック内の周波数領域データに対する回転処理を説明した図である。回転処理について時計回りの回転を想定した場合、ビットマップ画像データに対するそれぞれの処理について以下図９（ａ）〜（ｃ）に示す。
【００６１】
図９（ａ）はビットマップ画像データを９０°回転させる際の回転処理について示す。まず、ビットマップ画像データに対してｘ＝ｙ軸で転置させた後、左右反転させる。
【００６２】
図９（ｂ）はビットマップ画像データを１８０°回転させる場合の回転処理について示す。まず、ビットマップ画像データに対して上下反転させた後、左右反転させる。
【００６３】
図９（ｃ）はビットマップ画像データを２７０°回転させる場合の回転処理について示す。まず、ビットマップ画像データに対してｘ＝ｙ軸で転置させた後、上下反転させる。
【００６４】
また、上記ビットマップ画像データへの処理に相当する周波数領域データへの処理を図９（ｄ）〜（ｇ）に示す。なお図９（ｄ）は８×８画素ブロック内の周波数領域データを示した図である。
【００６５】
まず、９０°回転させる場合、図９（ｄ）に示す周波数領域データに対して図９（ｅ）に示すようにｕ＝ｖ軸で転置する。その後、図９（ｆ）に示すようにｕ＝奇数の符号反転を行う。
【００６６】
次に、１８０°回転させる場合、図９（ｄ）に示す周波数領域データに対して、図９（ｇ）に示すようにｖ＝奇数の符号反転を行う。その後、図９（ｆ）に示すようにｕ＝奇数の符号反転を行う。
【００６７】
次に、２７０°回転させる場合、図９（ｄ）に示す周波数領域データに対して、図９（ｅ）に示すようにｕ＝ｖ軸で転置する。その後、図９（ｇ）に示すようにｖ＝奇数の符号反転を行う。
【００６８】
図８のフローチャートに戻り、次に、ステップＳ８０３においてそれぞれのブロックの再配置を行う。この処理の詳細について図１０を用いて説明する。
【００６９】
図１０は画素ブロックの再配置に関して説明した図である。
【００７０】
図１０は８×８画素ブロックのＭ（０，０）〜Ｍ（ｍ，ｎ）に対して再配置処理を示している。
【００７１】
図１０（ａ）は再配置前の８×８画素ブロックのＭ（０，０）〜Ｍ（ｍ，ｎ）であり、図１０（ｂ）は９０°回転、図１０（ｃ）は１８０°回転、図１０（ｄ）が２７０°回転のした時の、画素ブロックの再配置を示している。
【００７２】
図８のフローチャートに戻り、ステップＳ８０４では上記のようにブロックを再配置した周波数領域データに対して圧縮部３０１がハフマン符号化を行い、回転処理は終了する。
【００７３】
このように周波数領域データで回転処理を行った場合、再圧縮に伴う量子化がなされない。従って、圧縮誤差によって画像の質が低下を回避することが可能である。
【００７４】
次に画像処理が実行されるか否かの処理制御部３０３での判断に関して以下説明する。
【００７５】
図１１に画像処理が実行される場合の例を示す。
【００７６】
図１１は操作部１０６に表示される画面であり、シャープネスの設定を行う設定画面の一例を示したものである。ここでの設定された内容に応じて画像変換部２０８のフィルタ処理部３０５で画像処理が実行される。ここで設定画面１１０１に示すようにシャープネスの設定が初期設定のままである場合、送信される圧縮画像データに対して適用される画像処理はないと判断される。
【００７７】
一方、例えば設定画面１１０２のように設定を＋１に振り、送信時にシャープネス設定に変更した場合、送信される圧縮画像データに対してフィルタ処理すなわち画像処理が実行されると判断される。ここではシャープネスの設定によりフィルタ処理が実行されると判断する一例を示したが、他にも何らかの方法でユーザから解像度の指定やガンマ値の指定や拡大・縮小等の指定がされると、解像度変換処理やガンマ値変換処理や変倍処理等の画像処理が実行されると判断される。
【００７８】
また、画像データに対して回転処理の実行について指示がなされたか否か判断するには、例えば操作部１０６における「原稿の向き」の設定内容について検知すればよい。
【００７９】
具体的には、処理制御部３０３は、入力されたデータの向き（横長原稿もしくは縦長原稿といった原稿の向き）と、画像データを処理する際にＵＩなどを介して指定されたデータの向きが同じか否かを判断する。この向きが異なる場合、回転処理の実行が指定されたと判断し、データの向きが同じになるような角度を設定して画像データを回転させる。
【００８０】
処理対象である圧縮画像データに対して回転が必要であり、かつ回転以外の所定の画像処理が実行されないと判断された場合、圧縮画像データは周波数領域データに変換された状態で回転処理が施される。
【００８１】
一方、回転以外の所定の画像処理が実行されると判断された場合は、圧縮画像データはビットマップ画像データに変換された状態で回転処理が施される。
【００８２】
ここで挙げた画像処理とは、画像処理が画像データに実行された際に、画像データを構成する画素に対して画素が有する値（画素値）を変化させる処理となる。
【００８３】
例えば、解像度変換処理や、ガンマ値変換処理や、拡大・縮小などの変倍処理、シャープネス設定によるフィルタ処理などが含まれる。
【００８４】
一方、９０°、１８０°、２７０°の回転角度が指定された回転処理は、回転前後で対応する画素において、画素値には変化がない。
【００８５】
このように、圧縮画像データに対して回転処理が施される場合、圧縮データをビットマップ画像データに伸長せずに周波数領域データの状態にしてから回転処理を行う。これにより、再圧縮による画質低下を抑制した状態で画像の回転処理が可能になる。
【００８６】
以上のように本実施例では、圧縮画像データに対して画像処理を適用後、再度圧縮画像データとして保持する際、圧縮画像データをビットマップ画像データに伸長するか否かを、圧縮画像データに対して実行される所定の画像処理の種類に応じて決定する。
【００８７】
実行される画像処理が、画像データを構成する画素が有する画素値を変化させる処理であれば圧縮画像データをビットマップ画像データまで伸長した状態で画像処理を適用する。
【００８８】
一方、実行される画像処理が回転処理（回転角度が９０の倍数）のみであれば、ビットマップ画像データまで伸長しない状態で回転処理することで画質の劣化を抑制することが可能にある。
【実施例２】
【００８９】
圧縮画像データを送信する際、実施例１では画像データに対して回転処理を実行するか否か判断するために送信時の設定を用いていた。一方でＯＣＲ（Ｏｐｔｉｃａｌ  Ｃｈａｒａｃｔｅｒ  Ｒｅｃｏｇｎｉｔｉｏｎ）等の文字認識機能を備えた画像処理装置では原稿向き検知が可能となる。本実施例では原稿向き検知を備えた画像処理装置にて、圧縮画像データ画像処理を実行する場合について説明する。なお、本実施例における画像形成装置の構成は実施例１と同様であるため、詳細な説明は省略する。
【００９０】
図１２は本実施例において処理制御部３０３が実行する処理の例を示したフローチャートである。
【００９１】
ここでは圧縮画像データに対し、文字認識処理が適用し検索可能なＰＤＦ（Ｐｏｒｔａｂｌｅ  Ｄｏｃｕｍｅｎｔ  Ｆｏｒｍａｔ）を作成する例を示す。ＰＤＦにおける画像データはＪＰＥＧ方式により圧縮されるものとする。
【００９２】
まず、ステップＳ１２０１にて、記憶装置２０９に格納されている圧縮画像データに対して、操作部１０６より検索可能なＰＤＦの作成指示がなされる。次にステップＳ１２０２で、伸長部３０２は圧縮画像データに対してハフマン復号化を行い、周波数領域データを作成する。そして、処理制御部３０３はステップＳ１２０３においてこの周波数領域データよりサムネイル画像を作成する。具体的には周波数領域データのＤＣ成分を抽出し逆量子化をする。ここでＤＣ成分は８×８画素ブロックの信号値の平均値に相当する。したがって、ＤＣ成分を抽出することで画像データのサムネイル画像を作成することができる。このサムネイル画像より処理制御部３０３はステップＳ１２０４にて原稿向きの検知を行い、この検知結果を用いてステップＳ１２０５にて回転処理を実行する必要があるか否かを判断する。
【００９３】
ここで、回転処理の実行が必要ないと判断された場合、伸長部３０２は周波数領域データに対し、ステップＳ１２０６にて逆量子化、逆ＤＣＴ、色変換処理を行い、ビットマップ画像データを復元する。このビットマップ画像データは文字認識の際に解析される文字認識用画像となる。次に、ステップＳ１２０７にてビットマップ画像データに対して文字認識処理を行う。ここで回転処理の実行が必要ないと判断され、表示用の画像に対して画像処理を実行しないと判断された場合、格納されていた圧縮画像データはそのまま表示用画像となる。従って、ステップＳ１２１５にて圧縮画像データと文字認識結果を統合しＰＤＦ化することで検索可能ＰＤＦが作成される。
【００９４】
なお、回転処理の実行が必要ないとされた一方で表示用画像に画像処理を実行する必要があると判断された場合、伸長部３０２は圧縮画像データからビットマップ画像データを復元して画像処理を適用する。その後、圧縮部３０１がこの画像データを再圧縮することで表示用画像を作成する。この表示用画像と文字認識結果を統合しＰＤＦ化することで検索可能ＰＤＦが作成される。
【００９５】
一方、ステップＳ１２０５にて回転処理の実行が必要と判断された場合、ステップＳ１２０８に進み、表示用画像に対して回転処理以外の画像処理が実行されるか否かを判断する。画像処理が実行されるか否かの判断に関しては実施例１で説明した方法と同様の方法とする。
【００９６】
ステップＳ１２０８にて表示用画像へ画像処理が実行されないと判断された場合、ステップＳ１２０９にて実施例１で説明したように周波数領域データに対して回転処理を行う。ステップＳ１２０６にて伸長部３０２は、回転された周波数領域データを逆量子化、逆ＤＣＴ、色変換処理を行い、ビットマップ画像データを復元し文字認識用の画像を作成する。
【００９７】
一方、Ｓ１２１０にて圧縮部３０１は回転された周波数領域データをハフマン符号化することで表示用画像である圧縮画像データを作成する。ステップＳ１２１５にて、こうして作成された圧縮画像データと文字認識結果を統合しＰＤＦ化することで検索可能ＰＤＦが作成される。
【００９８】
ステップＳ１２０８にて表示用画像への画像処理の適用があると判断された場合、ステップＳ１２１１で伸長部３０２は周波数領域データを逆量子化、逆ＤＣＴ、色変換処理を行い、ビットマップ画像データを復元する。次にステップＳ１２１２にて画像変換部２０８はこの復元されたビットマップ画像データに対して回転処理を行う。そして、ステップＳ１２１３にて画像変換部２０８は回転されたビットマップ画像データに対して画像処理を適用する。一方、ステップＳ１２０７において文字認識処理を行う。そして、ステップＳ１２１４において画像処理されたビットマップ画像データに対して圧縮部３０１は圧縮を行い、表示用画像を作成する。ステップＳ１２１５で、こうして作成された圧縮画像データと文字認識結果を統合しＰＤＦ化することで検索可能ＰＤＦが作成される。
【００９９】
以上のように原稿向き検知を備えた画像処理装置では、圧縮画像データに対する回転処理の有無を原稿向き検知の結果に基づいて判断することができる。
【０１００】
またＪＰＥＧ方式で圧縮されている画像データだけでなく、ＰＤＦファイルのように内部的にＪＰＥＧ方式で圧縮されている画像データに対しても、回転処理の有無について判断することが可能である。
【０１０１】
本実施例によれば、圧縮画像データに対して画像処理を適用後、再度圧縮画像データとして保持する際、ビットマップ画像データまで伸長するか否かを適用する所定の画像処理の種類に応じて切り換える。この際、原稿向きの検知を行い、適用する所定の画像処理が画素データに変化を伴う処理であればビットマップ画像データまで完全に伸長し画像処理を適用する。一方、適用される画像処理が所定の画像処理を含まず回転処理のみであれば、ビットマップ画像データまで伸長せずに処理することで画質の劣化を最低限に抑制できる画像処理装置を提供することが可能になる。
【０１０２】
（その他の実施例）
本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施例の機能を実現するソフトウェア（プログラム）を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ（またはＣＰＵやＭＰＵ等）がプログラムを読み出して実行する処理である。
【図１】
2016046597.tif 000003
【図２】
2016046597.tif 000004
【図３】
2016046597.tif 000005
【図４】
2016046597.tif 000006
【図５】
2016046597.tif 000007
【図６】
2016046597.tif 000008
【図７】
2016046597.tif 000009
【図８】
2016046597.tif 000010
【図９】
2016046597.tif 000011
【図１０】
2016046597.tif 000012
【図１１】
2016046597.tif 000013
【図１２】
2016046597.tif 000014