(57)【要約】【課題】  本発明では、メモリ上でタイル状に分割・圧縮された画像であっても、リングバッファで扱うことを可能とすることを目的とする。【解決手段】  画像データを所定の画素数単位に分割した、分割画像データを格納する第１の格納手段と、前記分割画像データを一時的に格納し、所定の順序で利用される２以上の領域を有する第１の一次的格納手段と、前記２以上の領域のうちの２つの領域にまたがって格納された分割画像データを一時的に格納する第２の一次的格納手段と、前記第１及び第２の一次的格納手段に格納された前記分割画像データに画像処理を施す画像処理手段と、前記画像処理が施された分割データを格納する第２の格納手段とを備える。【選択図】図１
2006229476.tif 000002
【特許請求の範囲】
【請求項１】
画像データを所定の画素数単位に分割した、分割画像データを格納する第１の格納手段と、
前記分割画像データを一時的に格納し、所定の順序で利用される２以上の領域を有する第１の一次的格納手段と、
前記２以上の領域のうちの２つの領域にまたがって格納された分割画像データを一時的に格納する第２の一次的格納手段と、
前記第１及び第２の一次的格納手段に格納された前記分割画像データに画像処理を施す画像処理手段と、
前記画像処理が施された分割データを格納する第２の格納手段と
を備えることを特徴とする画像処理装置。
【請求項２】
前記分割画像データは、前記画像データにおいて前記分割画像データが配置されるべき位置に関する第１の位置情報を含み、
前記画像処理装置は、前記分割画像データ毎に対応する要素の複数により構成され、前記画像データにおいて前記分割画像データが配置されるべき位置の情報を管理する位置情報テーブルを生成するテーブル生成手段を更に備え、
前記要素には、少なくとも前記第１の一次的格納手段又は前記第２の一次的格納手段における前記分割画像データの格納位置を表す第２の位置情報が含まれ、前記位置情報テーブルにおける前記要素の登録位置は、前記第２の位置情報に対応することを特徴とする請求項１に記載の画像処理装置。
【請求項３】
前記分割画像データが前記画像データにおいて配置される方向のうち第１の方向に連続する他の分割画像データと同一の場合に、
前記第１の格納手段には、前記分割画像データについて、前記第１の方向に連続する前記他の分割画像データと同一であることを示すフラグが格納され、
前記要素のうち、前記フラグが格納された分割画像データに対応する要素には、前記他の分割画像データの格納位置を示す情報が前記第２の位置情報として含まれることを特徴とする請求項２に記載の画像処理装置。
【請求項４】
前記第２の一次的格納手段は、前記２以上の領域のうちの２つの領域にまたがって格納された分割画像データが存在しない場合に、前記所定の順序において前方に位置する前記領域の最後に格納され、かつ、前記フラグを有しない分割画像データを格納し、
前記前方に位置する領域の次の領域の先頭に格納されている分割画像データに前記フラグが格納されている場合に、
前記要素のうち、前記フラグが格納された分割画像データに対応する要素には、前記第２の一次的格納手段における前記分割画像データの格納位置が前記第２の位置情報として含まれることを特徴とする請求項３に記載の画像処理装置。
【請求項５】
画像データを所定の画素数単位に分割した、分割画像データを格納する第１の格納工程と、
前記分割画像データを一時的に格納し、所定の順序で利用される２以上の領域を有する第１の一次的格納工程と、
前記２以上の領域のうちの２つの領域にまたがって格納された分割画像データを一時的に格納する第２の一次的格納工程と、
前記第１及び第２の一次的格納工程において格納された前記分割画像データに画像処理を施す画像処理工程と、
前記画像処理が施された分割データを格納する第２の格納工程と
を備えることを特徴とする画像処理方法。
【請求項６】
前記分割画像データは、前記画像データにおいて前記分割画像データが配置されるべき位置に関する第１の位置情報を含み、
前記画像処理方法は、前記分割画像データ毎に対応する要素の複数により構成され、前記画像データにおいて前記分割画像データが配置されるべき位置の情報を管理する位置情報テーブルを生成するテーブル生成工程を更に備え、
前記要素には、少なくとも前記第１の一時的格納工程又は前記第２の一時的格納工程における前記分割画像データの格納位置を表す第２の位置情報が含まれ、前記位置情報テーブルにおける前記要素の登録位置は、前記第２の位置情報に対応することを特徴とする請求項５に記載の画像処理方法。
【請求項７】
前記分割画像データが前記画像データにおいて配置される方向のうち第１の方向に連続する他の分割画像データと同一の場合に、
前記第１の格納工程では、前記分割画像データについて、前記第１の方向に連続する前記他の分割画像データと同一であることを示すフラグが格納され、
前記要素のうち、前記フラグが格納された分割画像データに対応する要素には、前記他の分割画像データの格納位置を示す情報が前記第２の位置情報として含まれることを特徴とする請求項６に記載の画像処理方法。
【請求項８】
前記第２の一時的格納工程では、前記２以上の領域のうちの２つの領域にまたがって格納された分割画像データが存在しない場合に、前記所定の順序において前方に位置する前記領域の最後に格納され、かつ、前記フラグを有しない分割画像データを格納し、
前記前方に位置する領域の次の領域の先頭に格納されている分割画像データに前記フラグが格納されている場合に、
前記要素のうち、前記フラグが格納された分割画像データに対応する要素には、前記第２の一時的格納工程における前記分割画像データの格納位置が前記第２の位置情報として含まれることを特徴とする請求項７に記載の画像処理方法。
【請求項９】
コンピュータに、請求項５乃至８のいずれかに記載の画像処理方法を実行させるためのコンピュータプログラム。
【請求項１０】
請求項９に記載のコンピュータプログラムを格納するコンピュータで読み取り可能な記憶媒体。
【請求項１１】
画像データを所定の画素数単位に分割した分割画像データを格納する第１の格納手段と、
前記第１の格納手段に格納された複数の前記分割画像データを格納する第２の格納手段であって、第１の記憶領域及び前記第１の記憶領域に引き続き前記分割画像データが書き込まれる第２の記憶領域を有する第２の格納手段と、
前記第１の記憶領域に最後に書き込まれる分割画像データを格納する第３の格納手段と、
複数の前記分割画像データを前記第２の格納手段から前記記憶領域毎に読み出して画像処理を施す画像処理手段と、
前記第２の記憶領域から読み出す最初の前記分割画像データが前記第１の記憶領域にまたがって格納された分割画像データである場合に、前記第３の格納手段に格納された分割画像データに基づいて前記最初の分割画像データを生成する生成手段と、
を備えることを特徴とする画像処理装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像処理装置、画像処理方法、コンピュータプログラム及び記憶媒体に関する。
【背景技術】
【０００２】
複写機等の画像処理装置でメモリ上の画像を処理する場合、1ページの画像を所定の領域単位でタイル状に分割し、分割したタイルごとに圧縮を施して画像パケット構造として扱う方式がある（特許文献１を参照。）。このような方式は画像を部分ごとに圧縮することができるためメモリの使用効率がよく、また部分的に伸張・圧縮できるために画像処理も高速に行える、という利点がある。また、連続して同じデータが続くような画像の場合、パケットヘッダに同じデータであることを示すフラグを立てておき、データ自体は前のパケットのデータを参照する（以下、これを略して「リピートする」という。）、という方法をとることで画像全体の圧縮率を高めることもできる。
【０００３】
一方、画像メモリを少なくするために、スループットが要求されないような画像処理では、１枚の画像をすべてメモリ上に展開するのではなく、ハードディスク装置（ＨＤＤ）等の大容量記憶装置からリングバッファで画像を先頭から部分ごとに読みだし、その都度画像処理を行うこともできる。
【特許文献１】特開２００１-１０３４７３号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
しかしながら、画像をタイル状に分割して圧縮を行っている場合、とくに圧縮方式がJPEGのように可変長である場合にはリングバッファの１ブロックにちょうどタイルデータが収まる保証がない。そのため、リングバッファの先頭や末尾にデータがそろわないタイルが存在してしまうといった問題点や、リピートされたタイルがリングバッファのブロック間にまたがってしまう、という問題点があり、タイルごとに圧縮された画像をリングバッファで扱うことができなかった。
【０００５】
そこで、本発明では、メモリ上でタイル状に分割・圧縮された画像であっても、リングバッファで扱うことを可能とすることを目的とする。
【課題を解決するための手段】
【０００６】
上記の課題を解決するための本発明は、画像データを所定の画素数単位に分割した、分割画像データを格納する第１の格納手段と、前記分割画像データを一時的に格納し、所定の順序で利用される２以上の領域を有する第１の一次的格納手段と、前記２以上の領域のうちの２つの領域にまたがって格納された分割画像データを一時的に格納する第２の一次的格納手段と、前記第１及び第２の一次的格納手段に格納された前記分割画像データに画像処理を施す画像処理手段と、前記画像処理が施された分割データを格納する第２の格納手段とを備える。
【発明の効果】
【０００７】
本発明により、メモリ上でタイル状に分割・圧縮された画像をリングバッファで扱うことが可能となり、メモリを有効に使うことができる。
【発明を実施するための最良の形態】
【０００８】
以下、本発明にかかる一実施形態について、図面を参照して詳細に説明する。
【０００９】
図１は、本発明の実施形態を示す画像処理システムの全体の構成を説明するブロック図である。画像処理装置１００は、画像入力デバイスであるスキャナ部１０７０、画像出力デバイスであるプリンタ部１０９５、制御ユニット１０００、タッチパネルや操作キー等で構成されるユーザーインターフェースである操作部１０１２から構成される。スキャナ部１０７０、プリンタ部１０９５、操作部１０１２は、それぞれ制御ユニット１０００に接続され、制御ユニット１０００は、公衆回線１０１０やLAN １０１１などのネットワーク伝送手段に接続されている。公衆回線１０１０からはカラー画像送信を含むG３、G４ファックスによる送信が可能である。
【００１０】
また、Local Area Network (LAN)１０１１には、画像処理装置２００と同様の機器構成をもつ他の画像処理装置１２０、１３０が接続されえている。また、パーソナルコンピュータ（以下PC）１４０が接続されていて、File Transfer Protocol(FTP)、Server Message Block(SMB)プロトコルを使用したファイルの送受信、電子メールの送受信ができる。画像処理装置１２０、１３０は、それぞれスキャナ部１２７０、１３７０、プリンタ部１２９５、１３９５、操作部１２１２、１３１２を持ち、それらが制御ユニット１２００、１３００に接続されている。
【００１１】
以下では、ＬＡＮ１０１１に接続される複数の画像処理装置のうち、画像処理装置２００を例として、本実施形態について説明する。
【００１２】
図２は、画像処理装置１００のハードウェア構成の一例を説明する図である。制御ユニット１０００は画像入力デバイスであるカラースキャナ１０７０や画像出力デバイスであるカラープリンタ１０９５と接続し、一方では公衆回線(WAN)１０１０やLAN１０１１と接続することで、画像情報やデバイス情報の入出力を行う為のコントローラである。
【００１３】
CPU２００１はシステム全体を制御するコントローラである。ＲＡＭ２００２はCPU２００１が動作するためのシステムワークメモリであり、画像データを一時記憶するための画像メモリでもある。ROM２００３はブートROMであり、システムのブートプログラムが格納されている。ＨＤＤ２００４はハードディスクドライブで、システムソフトウェアや画像データを格納する。
【００１４】
操作部I/F２００５は、操作部(UI:User Interface)１０１２とのインターフェース部であって、操作部１０１２に表示される画像データを、操作部１０１２に対して出力する。また、操作部１０１２において本システム使用者から受け付けた入力情報を、CPU２００１に伝達する。Network２００７はLAN１０１１に接続し、ＬＡＮ１０１１に接続されている外部機器との間で送受信される情報の入出力を行う。Modem２０５０は公衆回線１０１０に接続し、公衆回線１０１１に接続されている外部機器との間で送受信される情報、特に画像情報の入出力を行う。
【００１５】
２値画像回転２０５２及び２値画像圧縮・伸張器２０５３は、Modem２０５３で２値画像を送信する前に画像の方向を変換したり、所定の解像度、あるいは相手方装置の能力に合わせた解像度に変換するための画像処理部である。圧縮、伸張はJBIG、MMR、MR、MH をサポートしている。DMAC２００９はDMAコントローラであり、ＲＡＭ２００２に格納されている画像をCPU２００１を介することなく読み取り画像バスI/F２０１１に対して画像転送する、もしくは画像バスからの画像をCPU２００１を介することなくＲＡＭ２００２に書き込む、といった処理を行う。
【００１６】
また、システムバス２００８には以上のデバイスが接続される。画像バス２０１１は画像バス２０１０を介して高速な画像の入出力を制御するためのインタフェースである。圧縮器２０１２は、画像バス２０１０に画像を送出する前に、送出用の画像を３２画素×３２画素の単位でJPEG圧縮するための圧縮器である。伸張器２０１３は、画像バス２０１０を介して受信した画像を伸張するための伸張器である。
【００１７】
ラスターイメージプロセッサ(RIP)２０１８は、ラスターイメージを生成する処理部である。ＬＡＮ１０１１上に接続されているホストコンピュータから送信されたPDLコードは、Network２００７を介して受信され、システムバス２００８を通してCPU２００１が一旦ＲＡＭ２００２に格納する。CPU２００１はPDLコードを中間コードに変換し、システムバス２００８を介してRIP２０１８に入力する。ＲＩＰ２０１８では、入力された中間コードをビットマップイメージ（多値）に展開して、ラスタ画像を生成する。
【００１８】
スキャナ画像処理２０１４は、スキャナ１０７０から入力されるカラー画像、白黒画像に対して、適切な画像処理（たとえば補正、加工、編集）を施して、多値画像データとして出力する。同様にプリンタ画像処理２０１６は、プリンタ１０９５に対して適切な画像処理（たとえば補正、加工、編集）を実行し、実行結果をプリンタ１０９５へ出力する。ここで、プリント時は伸張器２０１３で２値多値変換を行うので、２値、および多値出力が可能である。
【００１９】
画像変換部２０３０は、ＲＡＭ２００２上に格納されている画像に所定の変換処理を施し、変換処理結果をＲＡＭ２００２に戻す場合に利用される各種画像変換機能を有する処理部である。回転器２０１９は、３２画素×３２画素単位の画像を指定された角度で回転でき、２値、および多値の入出力に対応している。変倍器２０２０は、画像の解像度を変換（たとえば６００dpiから２００dpi）したり、変倍したりする機能（たとえば２５％から４００％まで）を有する。なお、変倍する前には、３２×３２画素の画像の３２ライン単位の画像への並び替えが行われる。
【００２０】
色空間変換２０２１は、多値入力された画像をマトリクス演算、およびLUTにより、たとえばＲＡＭ２００２内のYUV画像をLab画像に変換し、ＲＡＭ２００２に戻すことができる。また、この色空間変換は３×８のマトリクス演算および、１次元LUTをもち、公知の「下地とばし」や「裏写り防止」を行うことも可能である。変換された画像は多値で出力される。
【００２１】
２値多値変換２０２２は、１bit２値画像を多値８bit、２５６階調に変換する。逆に多値２値変換２０２６は、たとえばＲＡＭ２００２にある８bit、２５６階調の画像を誤差拡散処理などの手法により１bit２階調の画像に変換し、ＲＡＭ２００２に戻すことができる。合成２０２３は、メモリ上の２枚の多値画像画像を合成し、１枚の多値画像にする機能を有する。たとえば、メモリ上にある会社ロゴの画像と原稿画像を合成することで、原稿画像に簡単に会社ロゴをつけることができる。間引き２０２４は多値画像の画素を間引くことで、簡易な解像度変換を行うユニットであり１/２,１/４,１/８の多値画像を出力できる。この間引き２０２４を変倍２０２０と併せて利用することで、より広範囲な拡大、縮小が可能となる。
【００２２】
移動２０２５は入力された２値画像、多値画像に余白部分をつけたり、余白部分を削除したりして出力することができる。回転２０１９、変倍２０２０、色空間変換２０２１、２値多値２０２２、合成２０２３、間引き２０２４、移動２０２５、多値２値２０２６は、それぞれ連結して動作することが可能である。例えば、ＲＡＭ２００２上の多値画像を回転し、解像度変換する場合は、各変換処理後の画像をＲＡＭ２００２に戻すことなく連続して回転２０１９、間引き２０２４における変換処理を実行することにより、ＲＡＭ２００２介さずに連結して変換処理を行うことができる。
【００２３】
次に、本実施形態における画像の形式について説明する。図３は、本実施形態に対応する画像の形式の一例を示す図である。図３に示すとおり、本実施形態では画像の形式として画像パケット構造を利用する。
【００２４】
図３において、３０１は本実施形態に対応する画像処理装置において扱われる源画像である。画像３０１は、所定の画素数（本実施形態では３２画素×３２画素）で構成されるブロック３０２を単位として複数のブロックに分割される。本実施形態においてブロック３０２は、圧縮器２０１２においてＪＰＥＧ圧縮処理される。このような圧縮画像データは画像パケットの実データとして格納され、所定の情報を格納したヘッダが付随する。
【００２５】
このように画像３０１は複数の画像パケットとして分割されることとなる。パケット化された画像３０１をＲＡＭ２００２のようなメモリ上で扱う場合、３０３に示すようなパケットテーブルを利用する。パケットテーブル３０３は、パケット自体の実データを格納せず、各画像パケットの先頭アドレスとサイズと（以下、これらを特に、「パケット情報」という。）を格納しており、これらのパケット情報は主走査方向と副走査方向とに並べられている。即ち、圧縮された各ブロックの画像の画像３０１における本来の配置に対応するように、該パケット情報を並べることにより、１つの画像を形成することができる。これによれば、画像３０１を構成する画像パケットがメモリ上で離散的に配置されている場合であっても、全体として一つの画像として扱うことが可能になる。
【００２６】
パケットテーブル３０３では、画像パケットに格納される圧縮画像データ４１６が異なる場合は、３０４のように各ブロック３０２に対応するパケット情報をそれぞれ登録する。一方、３０５のように連続するブロックにおいて画像が同一の場合には、先頭の画像パケットのパケット情報を登録する。これによりＲＡＭ２００２に格納される画像データの総サイズを小さくすることができる。
【００２７】
次に、画像パケットの具体的な構成の一例について図４を参照して説明する。図４に示すように、画像パケット４００は、大きくヘッダ部４０１と、データ部４０２とに分割される。ヘッダ部４０１には、以下の要素が含まれる。４１１はリピートフラグである。リピートフラグ４１１は、当該画像パケット４００がリピートされるパケットである場合に「１」が格納され、リピートされない画像パケットである場合に「０」が格納される。リピートフラグ４１１が「１」の場合、当該画像パケットはパケットテーブル３０３の内容に応じて、画像３０１を再構成する際に複数回利用されることとなる。
【００２８】
また、４１２はパケットＩＤであり、当該パケットが画像３０１上のどこに位置するかを決定するための情報であり、Ｘ（主走査方向の位置）、Ｙ（副走査方向の位置）の２次元座標を表す値として格納される。４１３は、格納する画像データの色空間に関する情報であって、ＲＧＢ、ＹＵＶ、Ｌａｂ等の色空間に関する情報が格納される。４１４は、ＱテーブルＩＤであって、圧縮に使用された量子化テーブルを識別するための識別情報が格納される。４１５は、パケット長さであって、当該パケットのデータ長が格納される。４１６は、ＪＰＥＧ圧縮されたブロック４０２の圧縮画像データである。４１７は、圧縮画像データに対応する領域が文字領域であるか、或いは写真領域であるかを示す、像域フラグである。
【００２９】
なお、パケット画像がＨＤＤ２００４に格納される場合、パケットテーブル３０３を用いずに、図５に示すように、連続する順番に画像パケット４００を並べればよい。ここで、図５は、画像パケットのＨＤＤ２００４における格納形態を説明するための図である。図５における（ａ）と（ｂ）は源画像３０１の主走査方向の一部において連続する画像パケット４００を示したものであり、（ａ）と（ｂ）とは源画像における副走査方向の位置（列）が異なる。
【００３０】
図５において、「ｈ」はヘッダ部４０１を表し、「data」はデータ部４０２を表している。図５において（ａ）はデータ部４０２の内容が各々異なる３つの画像パケット４００を示している一方で、（ｂ）はデータ部４０２の内容が同一となるパケットが４つ連続する場合を示している。そして、（ｂ）における５０２から５０４は、リピートフラグ４１１が立っている画像パケット４００であり、この画像パケット４００（５０２、５０３、５０４）のデータ部４０２には、圧縮画像データ４１６は格納されていない。これらのパケット５０２から５０４は、画像パケット５０１を参照するためのリピートフラグ「１」がヘッダ部４０１に格納されている。
【００３１】
伸張器２０１３では、このヘッダ情報をもとに圧縮画像データ４１６を展開し、非圧縮のラスタ画像に並び替える。上記のような画像パケット４００を利用することで、画像回転のときには画像パケット内の画像のみを回転し、パケットＩＤの位置を変更することで、部分的に伸張圧縮で回転することができるため非常に効率がよい。また、画像３０１が画像バス２０１０を流れる場合、すべて画像パケット単位となる。また、ファックス送信、２値画像回転２０５２及び２値画像圧縮・伸張器２０５３などでラスタ画像が必要となる場合は、パケット画像からラスタ画像への変換をソフトウェアによって行うことができる。
【００３２】
次に、図６を参照して図２のスキャナ画像処理２０１４における処理の詳細を説明する。図６において、スキャナ１０７０から入力されたＲＧＢ各８bitの輝度信号は、マスキング２５０１によりCCDのフィルタ色に依存しない標準的なRGB色信号に変換される。フィルタ２５０２では、たとえば９×９のマトリクスを使用し、画像をぼかしたり、画像を強調するフィルタ処理が行われる。
【００３３】
ヒストグラム２５０３は入力画像中の画像信号データのサンプリングを行う処理部であり、入力画像の下地レベル判定に使用される。ヒストグラム２５０３は、主走査方向及び副走査方向にそれぞれ指定した開始点から終了点で囲まれた矩形領域内のＲＧＢデータを、主走査方向及び副走査方向に一定のピッチでサンプリングし、ヒストグラムを作成する。このヒストグラムは、下地とばしや、裏写り防止が指定されたときに読み出され、ヒストグラムから原稿の下地を推測し、下地とばしレベルとして、画像とともにＲＡＭ２００２やＨＤＤ２００４に保存、管理され、印刷や送信時の画像処理に使用される。
【００３４】
ガンマ２５０４では、画像全体の濃度を濃くあるいは薄くするための処理が行われる。たとえば、入力画像の色空間を任意の色空間に変換したり、入力系の色味に関する補正処理を行う。原稿がカラーか白黒かを判断するために変倍前の画像信号を色空間変換２５０５によって公知のLabに変換する。このうちa,bは色信号成分を表しており、比較器２５０６内の所定のレベル以上であれば有彩色、そうでなければ無彩色として１bitの判定信号を比較器２５０６から出力する。カウンタ２５０７は比較器２５０６からの出力を計測する。
【００３５】
文字／写真判定２５０８は、画像から文字エッジを抽出し、画像を文字と写真に分離するための処理部である。出力として、文字写真判定信号が得られる。この信号も画像とともにＲＡＭ２００２やＨＤＤ２００４に格納され、印刷時に使用される。２５０９は特定原稿判定器である。特定原稿判定器は入力画像信号と、判定器内部に有する特定パターンがどの程度一致するかを判定し、一致／不一致の判定結果を出力する。この判定結果に応じて、画像を加工し、紙幣や有価証券などの偽造を防止することができる。
【００３６】
次に、図７を参照してプリンタ画像処理器２０１６における処理の詳細を説明する。なお、図７において各種の画像処理を実行する２６０１〜２６０７は、各々を画像処理回路としてハードウェアで構成しても良いし、プリンタ画像処理器２０１６にＣＰＵと各種の画像処理プログラムを格納したＲＯＭ等を設け、ＣＰＵにて各種の画像処理プログラムを実行するように構成しても良い。図７において、２６０１は下地除去部であり、画像データの地色を除去し、不要な下地の除去が行われる。例えば、３×８のマトリクス演算や、１次元ＬＵＴにより下地除去が行われる。これは前述したように色空間変換器２０２１にも含まれる処理であり、同等の回路として構成できる。２６０２はカラー画像データをモノクロデータに変換し、単色としてプリントする際に、カラー画像データ、例えばＲＧＢデータを、Ｇｒａｙ単色に変換するモノクロ生成器である。例えば、ＲＧＢに任意の定数を掛け合わせ、Ｇｒａｙ信号とする１×３のマトリクス演算から構成される。
【００３７】
２６０３は画像データを出力するプリンタ１０９５の特性に合わせて色補正を行う出力色補正器である。例えば、４×８のマトリクス演算や、ダイレクトマッピングによる処理から構成される。２６０４は画像データの空間周波数を任意に補正するフィルタ処理器であり、例えば９×９のマトリクス演算を行う処理から構成される。
【００３８】
２６０５は出力するプリンタ部の特性に合わせて、ガンマ補正を行うガンマ補正器であり、通常１次元のＬＵＴから構成される。２６０６は出力するプリンタ部の階調数に合わせて任意の中間調処理を行う中間調補正器であり、２値化や３２値化など、任意のスクリーン処理や、誤差拡散処理を行う。各処理は各画像パケットのヘッダ部４０１の文字／写真判定信号（像域フラグ）によって処理の内容を切り替えるようにしてもよい。ドラム間遅延メモリ２６０７はCMYK（Cyan、Magenta、Yellow、blacK）の各色の感光ドラムを持つ電子写真方式のプリンタ１０９５において、用紙の搬送方向に所定のドラム間隔を置いて複数のドラムが並べられているのに対して、適切なタイミングで各色の画像データを出力するのに必要とされるメモリである。すなわち、CMYKの各色の感光ドラムは、用紙の搬送方向に所定間隔を置いて配置されているので、各色のトナー像（各ドラムに形成される像）を同一の用紙に重ねあわせるために、ドラム間遅延メモリは画像データの出力タイミングをドラム間の距離に相当する分だけ遅くする（用紙の搬送方向下流の感光ドラムにかかる色の画像データは出力を遅らせる）。
【００３９】
次に、本実施形態に対応する画像処理装置１００の外観構成例を図８に示す。図８において、画像入力デバイスであるスキャナ１０７０は、原稿となる紙上の画像を照明し、CCDラインセンサ(図示せず)を走査することで、ラスタ画像データとして電気信号に変換する。原稿用紙は原稿フィーダ２７０１のトレイ２７０２にセットし、装置使用者が操作部１０１２から読み取り起動指示することにより、コントローラCPU２００１がスキャナ１０７０に指示を与え、フィーダ２０７１のトレイ２７０２から原稿用紙を１枚ずつフィードし原稿画像の読み取り動作を行う。
【００４０】
画像出力デバイスであるプリンタ１０９５は、ラスタ画像データに基づいた現像剤像（例えば、トナー像、インク像）を用紙上に形成する部分であり、その方式は感光体ドラムや感光体ベルトを用いた電子写真方式、微少ノズルアレイからインクを吐出して用紙上に直接画像を印字するインクジェット方式等があるが、どの方式でも適用することができる。プリント動作の起動は、コントローラCPU２００１からの指示によって開始する。プリンタ１０９５には、異なる用紙サイズまたは異なる用紙向きを選択できるように複数の給紙段を持ち、それに対応した用紙カセット２７０３、２７０４、２７０５がある。また、排紙トレイ２７０６は印字し終わった用紙を受ける排紙トレイである。
【００４１】
次に、画像処理装置１００の操作部１０１２の構成例を図９に示す。図９に示すように、LCD表示部２８０１は、LCD上にタッチパネルシート２８０２が貼られており、システムの操作画面およびソフトキーが表示されている。ＬＣＤ表示部２８０１に表示されているキーがユーザにより操作されると、その位置情報がコントローラCPU２００１に伝達される。スタートキー２８０３は、原稿画像の読み取り動作の開始指示をユーザから受け付けるための操作キーである。スタートキー２８０３の中央部には、緑と赤の２色のLED２８０４が備え付けられており、ＬＥＤの点灯色に応じてスタートキー２８０３が利用可能な状態にあるか否かがユーザに対して通知される。ストップキー２８０５は稼働中の動作の停止指示を受け付けるための操作キーである。ＩＤキー２８０６は、ユーザが自己のＩＤを入力するために利用する操作キーである。リセットキー２８０７は、操作部１０１２を利用して設定された設定内容の初期化指示をユーザから受け付けるための操作キーである。
【００４２】
図１０は、画像処理装置１００の操作部１０１２に表示される画面の一例を示す。図１０に示す画面は、操作部１０１２に初期画面として表示される画面例であり、各画像形成機能設定後に戻ってくる標準画面でもある。３１０１はコピー設定を行うための画面切り替えを行うためのコピータブキーである。３１０２はスキャンした画像をファックスや電子メールで送信する設定を行うための画面切り替えを行うための送信タブキーである。３１０３は内蔵ＨＤＤにスキャン画像、PDL画像を格納する、あるいは格納されたスキャン画像、PDL画像を印字、あるいは送信する、あるいは編集する設定を行うための画面切り替えを行うためのボックスタブキーである。
【００４３】
３１０４は３１０５のよって設定された画像読み込み時の設定を表示するためのウィンドウである。３１０５は画像読み込み時の解像度、濃度などを設定するための読込設定キーである。３１０６はタイマー送信時のタイマー設定、ＨＤＤあるいはプリンタに印字する場合の設定などを行うための送信設定キーである。３１０７は３１０８によって指定された送信宛先の表示を行う表示領域である。３１０８は、送信宛先のリストの表示を指示するための宛先表示キーである。３１０９は３１０７に表示された宛先に関する詳細な情報の表示指示を行うための詳細情報表示キーである。３１１０は３１０７に表示された１宛先の消去を行うための消去キーである。
【００４４】
次に、図１１を参照して、図１０の読込設定キー３１０５が操作された場合に、LCD表示部２８０１に表示されるポップアップウィンドウの一例を説明する。図１１において、３２０１は、読取原稿サイズ設定するためのポップアップ表示指示を受け付ける読取サイズ設定キーである。３２０２は、読取サイズ設定キー３２０１の操作に基づいて設定された読取サイズが表示される表示領域である。ここでは、「自動」設定となっている。３２０３は、原稿の読取モードを設定するためのポップアップ表示指示を受け付ける読取モード設定キーである。この読取モード設定キー３２０３の操作によりカラー/ブラック/自動(ACS)の３種類が選択できる。設定された内容は３２０４の表示領域に表示される。ここでは「ブラック」に設定されている。カラーモードに関してはコピー３１０１及びボックス３１０３に対応するポップアップウィンドウでも同様に選択ができる。
【００４５】
ここで、読取モードが「自動」に設定されていた場合には、図６に示すスキャナ画像処理２０１４におけるスキャナカウンタ２５０７の計測結果に基づいて、読み取り画像が白黒原稿かカラー原稿かを判定する。より具体的には、当該計測結果が、所定値よりも小さければ白黒原稿、大きければカラー原稿と判定し、カラー原稿と判定された場合にはカラー画像として読み取りが行われ、白黒原稿と判定された場合には白黒画像として読み取りが行われる。また、こ読み取られた画像と共にカラー／白黒の判別結果が併せて蓄積される。
【００４６】
３２０５は、読取解像度を指定するためポップアップ表示指示を受け付けるための解像度設定キーである。設定された内容は、表示領域３２０６に表示される。個々では、「２００×２００ｄｐｉ」に設定されている。３２０７は原稿の読取濃度を調整するためのスライダーであり、９段階の調整が行える。３２０８は新聞のように下地がかぶった画像を読み込む場合に、濃度を自動的に決定するための設定キーである。設定キー３２０８については、コピー３１０１に対応するポップアップウィンドウでも同様の設定が可能である。
【００４７】
次に、図１２を参照して、コピータブキー３１０１が操作された場合に操作部１０１２に表示される画面の一例を説明する。３３０１は、コピーできる状態が否かを示す表示領域である。表示領域３３０１には、同時に設定したコピー部数が表示される。３３０２は、図１１の設定キー３２０８と同等の機能を果たすソフトキーであって、下地除去を自動的に実行するか否かの指示を受け付ける。３３０３は、図１１のスライダ３２０７と同等の機能を果たすスライダであって、９段階の濃度調整が可能である。
【００４８】
３３０４は、原稿のタイプの選択を受け付ける原稿タイプ選択キーであり、このキーの操作により文字・写真・地図、文字、印画紙写真、印刷写真のいずれかを選択することができる。図１２では、「文字・写真・地図」が選択されている。３３０５は、応用モードボタンであり、このボタンの操作により、縮小レイアウト（複数枚の原稿を１枚の用紙に縮小印字する機能）や、カラーバランス（CMYKの各色微調整）などを設定することができる。３３０６は、各種フィニッシングにかかわる設定を受け付けるフィニッシング設定キーであり、シフトソート、ステープルソート、グループソート等の設定を受け付ける。３３０７は両目印刷設定キーであって、両面読み込み、および、両面印刷にかかわる設定を受け付ける。
【００４９】
次に、図１３を参照して、ボックスタブキー３１０３が操作された場合に操作部１０１２に表示される画面の一例を説明する。３４０１は、ＨＤＤを論理的に区分した各フォルダを示す表示領域である。ここで、各フォルダにはフォルダ番号があらかじめ割り当てられている。例えば、表示領域３４０１に表示されているフォルダの１つであるフォルダ３４０２は０番のフォルダになる。また、各フォルダ番号の横にはフォルダで使用しているディスク容量の割合が表示されている。フォルダ３４０２の場合、ディスク容量の割合は「５％」となる。なお、各フォルダには任意のフォルダ名を割り付けることができ、フォルダ３４０２には、「会議資料１」とのフォルダ名が割り付けられている。また、３４０３は、ＨＤＤ全体における使用量を表示している。
【００５０】
次に、図１４を参照して、図１３の表示画面において、フォルダが選択された場合に操作部１０１２に表示される画面の一例を説明する。図１４において、３５０１および３５０２はフォルダ３４０２に格納されている文書に関する情報を表示する領域である。当該文書は、それぞれ複数のページで構成されている。表示領域３５０１における「会議資料１−１」は任意に設定された文書名であって、当該文書データスキャナ１０７０を利用して取り込まれたデータであり、スキャン文書であることを示すアイコンが表示されている。また、併せてＨＤＤ使用量が表示されている。同様に、表示領域３５０２には、文書名として「会議資料１−２」と表示され、ＰＤＬから格納したＰＤＬ文書であるアイコンとＨＤＤ使用量とが併せて表示されている。ユーザはこれらの表示領域３５０１や３５０２を押下することにより、各文書データを選択することが可能となっており、選択された文書は反転表示によって示される。
【００５１】
３５０３は、選択された文書の送信指示を受け付けるためのボタンである。３５０４は、スキャナから原稿を読み込み、文書を生成する指示を受け付けるためのボタンである。３５０５は、フォルダ内のすべての文書の選択を受け付けるためのボタンである。図１４に示す例においては、当該ボタン３５０５が操作されると、「会議資料１−１」と「会議資料１−２」とが選択されることになる。３５０６は、選択された文書の削除指示を受け付けるボタンである。３５０７は、選択された文書の印刷指示を受け付けるためのボタンである。３５０８は、選択された文書の編集を受け付けるためのボタンである。ボタン３５０８が選択された場合、例えば、選択された２つの文書を結合し１つの文書にして保存したり、特定のページを削除する、といった機能を実行することができる。３５０９は、現在選択されている文書について詳細情報の表示指示を受け付けるためのボタンである。ここで提供される詳細情報には、文書名の他、読取解像度、原稿サイズ、カラーモードなどの情報が含まれる。
【００５２】
次に、図１５を参照して、本発明の実施形態に対応するソフトウェア構成の一例を説明する。図１５におけるソフトウェアは、それぞれＨＤＤ２００４に格納されており、ＲＡＭ２００２のワークエリアに読み出され、ＣＰＵ２００１により実行される。即ち、以下における処理はＲＡＭ２００２上に読み出された各ソフトウェアをＣＰＵ２００１が実行することにより行われる処理である。
【００５３】
図１５において、４０１０は表示操作部を制御するUI制御部である。UI制御部４０１０からの指示を受け、コピーアプリケーション部４０２０、送信アプリケーション部４０２１及びボックスアプリケーション部４０２２はそれぞれコピー動作、送信動作、ボックス画面からのスキャン、プリントを実行する。また、４０２３は、ネットワークアプリケーション４１２０からのPDLプリントデータを受け付け、PDLプリントジョブを投入するPDLアプリケーション部である。４０３０は、機器制御部分の機器依存部分を吸収するための共通インタフェース部分である。４０４０は共通インタフェース４０３０から受け取ったジョブ情報を整理し、下位層のドキュメント処理部に伝達するジョブマネージャである。
【００５４】
ドキュメント処理部は、スキャンマネージャ４０５０、ファイルリードマネージャ４０６０、ＰＤＬマネージャ４０７０、プリントマネージャ４０９０及びファイルストアマネージャ４１００から構成される。例えば、ジョブマネージャが受け付けたジョブが、ローカルコピーであればスキャンマネージャ４０５０とプリントマネージャ４０９０に該ジョブが伝達される。ジョブがリモートコピーの送信ジョブであれば、スキャンマネージャ４０５０とファイルストアマネージャ４１００とに該ジョブが伝達される。またジョブが、リモートコピーの受信ジョブであれば、ファイルリードマネージャ４０６０とプリントマネージャ４０９０とに該ジョブが伝達される。更に、ジョブがLIPSやPostScriptなどのPDLプリントのジョブであれば、該ジョブは、PDLマネージャ４０７０とプリントマネージャ４０９０に伝達される。
【００５５】
ここで、４０８０はシンクマネージャであり、４０５０〜４０７０、４０９０及び４１００の各ドキュメントマネージャ間の同期とり、かつ、各種画像処理を行うイメージマネージャ４１１０への画像処理の依頼を行う。イメージマネージャ４１１０は、スキャン、プリント時の画像処理や画像ファイルの格納を行う。
【００５６】
次に、ジョブマネージャ４０４０が受け付けたジョブに応じた処理について説明する。まず、ジョブがローカルコピーの場合、ユーザの指示によりUI制御部４０１０からコピー指示とコピーの設定とがコピーアプリケーション部４０２０に伝達される。コピーアプリケーション部４０２０は、UI制御部４０１０からの情報を共通インタフェース４０３０を介して、機器制御を行うジョブマネージャ４０４０に伝達する。
【００５７】
これに対し、ジョブマネージャ４０４０は、スキャンマネージャ４０５０とプリントマネージャ４０９０にジョブの情報を伝達する。スキャンマネージャ４０５０は、（コントローラ１０００とスキャナ１０７０、及び、コントローラ１０００とプリンタ１０９５を結ぶ）シリアルインタフェースを介して、スキャナ１０７０にスキャン要求を行う。スキャンマネージャ４０５０は、シンクマネージャ４０８０を介してイメージマネージャ４１１０にスキャン用の画像処理要求を併せて通知する。イメージマネージャ４１１０は、スキャンマネージャ４０５０からの指示に従って、スキャナ画像処理部２０１４の設定を行う。設定が完了するとシンクマネージャ４０８０を介してスキャンマネージャ４０５０に対してスキャン準備完了を伝える。
【００５８】
その後、スキャンマネージャ４０５０は、スキャナ１０７０に対してスキャンを指示する。スキャン画像転送完了は図示しないハードウェアからの割り込み信号によってイメージマネージャ４１１０に通知される。イメージマネージャ４１１０からのスキャン完了を受けてシンクマネージャ４０８０はスキャン完了をスキャンマネージャ４０５０、プリントマネージャ４０９０に伝える。同時にシンクマネージャ４０８０はＲＡＭ２００２に蓄積された圧縮画像をＨＤＤ２００４にファイル化するための指示をイメージマネージャ４１１０に対して行う。
【００５９】
イメージマネージャ４１１０は、当該指示に従ってＲＡＭ２００２上の画像（文字／写真判定信号を含めて）をＨＤＤ２００４に格納する。ここで、画像の付随情報として、ＳＲＡＭ等にカラー判定/白黒判定結果、下地とばしを行うための下地とばしレベル、画像入力元としてスキャン画像、色空間RGBも格納しておいてもよい。また、ＨＤＤ２００４への格納が終了し、スキャナ１０７０からのスキャン完了を受け付けると、イメージマネージャ４１１０は、シンクマネージャ４０８０を介してスキャンマネージャ４０５０にファイル化終了を通知する。
【００６０】
スキャンマネージャ４０５０は、この通知を受けてジョブマネージャ４０４０に対して終了通知を返し、ジョブマネージャ４０４０は共通インタフェース４０３０を介してコピーアプリケーション部４０２０にこの終了通知を伝達する。
【００６１】
一方、プリントマネージャ４０９０はＲＡＭ２００２に画像が格納された時点でデバイスI/Fを介して、プリンタ１０９５に対して印刷要求を通知する。それと同時に、プリントマネージャ４０９０は、シンクマネージャ４０８０にプリント画像処理要求を行う。シンクマネージャ４０８０はプリントマネージャ４０９０から要求を受けると、画像処理設定をイメージマネージャ４１１０に依頼する。
【００６２】
イメージマネージャ４１１０は上述の画像の付随情報に従ってプリンタ画像処理部２０１６の設定を行い、シンクマネージャ４０８０を介してプリントマネージャ４０９０にプリント準備完了を伝える。プリントマネージャ４０９０はプリンタに対して印刷指示を出す。プリント画像転送完了は図示しないハードウェアからの割り込み信号によってイメージマネージャ４１１０に通知される。イメージマネージャ４１１０からのプリント完了を受けてシンクマネージャ４０８０はプリント完了をプリントマネージャ４０９０に通知する。
【００６３】
プリントマネージャ４０９０はプリンタ部からの排紙完了を受け、ジョブマネージャ４０４０に対して終了通知を返し、ジョブマネージャ４０４０は共通インタフェース４０３０を介してコピーアプリケーション部４０２０へ終了通知を伝達する。以上により、コピーアプリケーション部４０２０は、スキャンとプリントの両方の処理の終了通知を受け取り、これによりローカルコピー処理の終了を確認することができる。そこで、コピーアプリケーション部４０２０は、ジョブ終了をUI制御部４１０１に通知する。
【００６４】
次に、ジョブマネージャ４０４０が受け付けるジョブがリモートコピーのスキャンジョブ、又は、送信ジョブの場合、プリントマネージャ４０９０に代わってストアマネージャ４１００がジョブマネージャ４０４０からの要求を受けることになる。この場合、スキャナ１０７０によるスキャン画像をＨＤＤ２００４に格納し終わった時点で、シンクマネージャ４０８０から格納完了通知を受け、それを共通インタフェース４０３０を介してリモートコピーならコピーアプリケーション部４０２０に、送信ジョブなら送信アプリケーション部４０２１に通知する。コピーアプリケーション部４０２０、送信アプリケーション４０２１はこの通知のあと、ネットワークアプリケーション４４２０に対してＨＤＤ２００４に格納されたファイルの送信を依頼する。
【００６５】
依頼を受けたネットワークアプリケーション４４２０は、ＨＤＤ２００４に格納されている当該ファイルを所定の宛先へ送信する。ネットワークアプリケーション４４２０はジョブ開始時にコピーアプリケーション部４０２０からコピーに関する設定情報を受け、それもリモート側の機器に通知する。ネットワークアプリケーション４４２０はリモートコピーの場合、機器固有の通信プロトコルを使用して送信を行う。
【００６６】
また送信ジョブの場合はFTP、SMBのような標準的なファイル転送プロトコルを使用することができる。ここで、ファックス送信する場合はファイル格納後、送信アプリケーション４０２１から共通インタフェース４０３０、ジョブマネージャ４０４０を介してFAXマネージャ４０４１に送信が指示される。FAXマネージャ４０４１はModem２０５０を介して、相手機器とネゴシエーションし、必要な画像処理（カラー→白黒変換、多値２値変換、回転、変倍）をイメージマネージャ４１１０に依頼し、変換後の画像をModem２０５０を介して送信する。
【００６７】
また、送信先にプリンタがある場合、送信アプリケーション４０２１は共通インタフェース４０００を介してプリントジョブとしてプリントの指示を行う。このときの動作は以下で説明するリモートコピーのプリントジョブの場合と同様である。また、送信宛先が機器内のボックス宛先になっているときはファイルストアマネージャ４１００によって機器内のファイルシステムに格納する。
【００６８】
FAX受信時はFAXマネージャがModem２０５０を使って画像を受信し、画像ファイルとしてＨＤＤ２００４に格納する。ＨＤＤ２００４格納後にボックスアプリケーション４０２１に通知すると、ボックスアプリケーション４０２１から受信プリントの指示が共通インタフェース４０３０を介して、ジョブマネージャ４０４０になされる。その後は通常のボックスプリントジョブと同じ動作になるため省略する。
【００６９】
また、ジョブマネージャ４０４０が受け付けるジョブがリモートコピーのプリントジョブの場合、送信側からの画像をネットワークアプリケーション４４２０がＨＤＤ２００４に保存するとともにコピーアプリケーション部４０２０に対してジョブを発行する。コピーアプリケーション部４０２０は共通インタフェース４０３０を介してジョブマネージャ４０４０にプリントジョブを投入する。上記のローカルコピーの場合とは異なり、スキャンマネージャ４０５０に代わってファイルリードマネージャ４０６０がジョブマネージャ４０４０からの要求を受ける。受信画像をＨＤＤ２００４からＲＡＭ２００２に展開するための要求をシンクマネージャ４０８０を介して、イメージマネージャ４１１０に行う。
【００７０】
イメージマネージャ４１１０はＲＡＭ２００２に当該受信画像を展開する。画像展開に先立ちイメージマネージャ４１１０は、ＨＤＤ２００４上の受信画像のデータサイズを調べる。ここで、もし当該データサイズが、ＲＡＭ２００２上に確保できるページメモリのサイズよりも小さい場合には、ＨＤＤ２００４から受信画像を直接読み出してＲＡＭ２００２上に展開する。一方、当該データサイズが、ＲＡＭ２００２上に確保できるページメモリのサイズよりも大きい場合には、以下に説明するような、受信画像の再圧縮処理を行った上でページメモリに展開する。
【００７１】
図１６は、画像データの再圧縮処理を伴う画像展開処理の一例を説明するための図である。図１６において、５００１と５００２とはＲＡＭ２００２上に確保された一次的格納手段としてのリングバッファを構成するメモリブロックであり、例えば１ＭＢ（メガバイト）のようにそれぞれ固定のサイズが割り当てられている。ブロック５００１と５００２とは所定の順序、この場合は２つであるので交互に利用される。
【００７２】
図２０を用いてリングバッファの概要を説明する。図２０は、リングバッファの構成を説明するための概念図である。図２０において、０、２Ｎ−１、２Ｎ、２２Ｎ−１、２２Ｎ等は、ブロック５００１と５００２からなるリングバッファにおけるアドレスを示す。イメージマネージャ４１１０は、ブロック５００１のメモリアドレス０から順にＨＤＤ２００４から読み出された画像データを書き込む。そして、アドレス２２Ｎ−１まで書き込んだ後、引き続く画像データをブロック５００２のメモリアドレス２Ｎから順に、メモリアドレス２２Ｎ−１に至るまで書き込む。そして、メモリアドレス２２Ｎ−１に引き続くメモリアドレス２２Ｎにかかる画像データは、再びブロック５００１に書き込まれる。ここで、図２０で示した論理アドレス２２Ｎと論理アドレス０は、物理的にはＲＡＭ２００２上の同一のメモリセルにかかるアドレスを示す。すなわち、物理的に同一のアドレスに対して、論理アドレスをリング状に割り当てることによって、有限長（ここでは、１ＭＢ）のバッファを無限長として扱うことができる。本実施形態では、リングバッファを構成するブロック数を簡単のために２とするが、ブロック数はこれに限定されるものではない。従って、３以上のブロックにおいてリングバッファが構成される場合には、所定の順序に従ってブロックが順に使用される。イメージマネージャ４１１０は、ＨＤＤ２００４に格納されている画像データを、ブロック５００１及びブロック５００２へ読み出しつつ、伸張器２０１３と圧縮器２０１２を用いて画像データの再圧縮を行い、ＲＡＭ２００２上のページメモリ５００３へ再圧縮後の画像を１ページ分格納する。
【００７３】
次に、図１７のフローチャートを参照して、イメージマネージャ４１１０による画像展開処理の詳細を説明する。ここで、ＨＤＤ２００４には、上記画像パケット形式で画像が格納されているものとする。
【００７４】
図１７においてステップＳ５１０１で画像展開を開始すると、まずステップＳ５１０２で伸張器２０１３へ読み出し画像の伸張パラメータを設定し、続けてステップＳ５１０３で圧縮器２０１２へ圧縮パラメータを設定する。本実施形態ではJPEG圧縮を用いるため、ここでは符号化テーブルと量子化テーブルの設定を行う。JPEG圧縮では圧縮後のデータ量が予測できないが、平均的な画像がページメモリ５００３に圧縮して収まるような量子化テーブルを使用する。また、圧縮後の画像データの圧縮率が低く、図１７の一連の手順が終了したときにページメモリ５００３に圧縮後の画像データが収まらない場合には、より圧縮率の高い量子化テーブルを圧縮器２０１２へ設定し、図１７の手順を最初から実行しなおす。
【００７５】
ステップＳ５１０４ではブロック５００１へＨＤＤ２００４からブロック５００１のサイズ分だけ画像を読み出す。ステップＳ５１０５ではブロック５００１へ読み出したパケット画像のヘッダからパケットテーブル３０３を生成する。ステップＳ５１０６ではブロック５００１上の画像を伸張器２０１３および圧縮器２０１２へ送信する。ステップＳ５１０７ではＨＤＤ上の画像の１ページ分すべてを読み出し終わったかどうかを判断し、読み出しが終了していればステップＳ５１１８へ進んで伸張器２０１３および圧縮器２０１２が終了するまで待ち、ステップＳ５１１９で画像展開終了となる。ステップＳ５１０７で１ページ分の読み出しが終了していなければステップＳ５１０８へ進み、ブロック５００２へ画像を読み出し、ステップＳ５１０９でステップＳ５１０５と同様に読み出した分のパケットテーブル３０３を生成する。
【００７６】
ステップＳ５１１０ではステップＳ５１０５で送信した画像の伸張器２１０３および圧縮器２０１２を使った再圧縮が終了するまで待ち、終了したらステップＳ５１１１へ進んでブロック５００２上の画像を伸張器２０１３および圧縮器２０１２へ送信する。ステップＳ５１１２ではステップＳ５１０７と同様に１ページ分の読み出しが終了したかを判断し、終了していればステップＳ５１１８へ進んでブロック５００２上の再圧縮が完了するまで待ち、終了する。ステップＳ５１１２で１ページ分の読み出しが終了していなければステップＳ５１１３へ進む。ステップＳ５１１３ではブロック５００１上にステップＳ５１０４で読み出した画像が残っているが、ここに画像を読み出して上書きする。
【００７７】
ステップＳ５１１４ではステップＳ５１０５と同様にブロック５００１上の画像のパケットテーブル３０３を生成する。ステップＳ５１１５ではステップＳ５１１０と同様にブロック５００２上の画像の再圧縮が終了するまで待ち、再圧縮終了後ステップＳ５１１６でステップＳ５１０６と同様にブロック５００１上の画像を伸張器２０１３および圧縮器２０１２へ送信して再圧縮を開始する。ステップＳ５１１７ではステップＳ５１０７と同様に１ページ分の読み出しが終了したかどうかを判断し、終了していればステップＳ５１１８へ進んで再圧縮の終了を待ってから終了する。  ステップＳ５１１７で１ページ分の読み出しが終了していなければステップＳ５１０８へ戻る。このようにステップＳ５１０８〜ステップＳ５１１２およびステップＳ５１１３〜ステップＳ５１１７を繰り返し、ステップＳ５１１２あるいはステップＳ５１１７で１ページ分の読み出しが終了したと判断されればステップＳ５１１８で再圧縮終了を待ち、画像展開終了となる。
【００７８】
なお、ここでは画像データサイズがページメモリサイズよりも大きい場合に再圧縮処理を行う方法を説明したが、画像データに生成した機種情報を付属させ、自機種でない場合に再圧縮処理を行う、という方法をとっても同様な手順でページメモリに画像を展開することができる。
【００７９】
次に、図１７のステップＳ５１０５、ステップＳ５１０９、ステップＳ５１１４におけるパケットテーブル３０３の生成処理の詳細を、図１８と図１９を参照して以下に説明する。
【００８０】
図１８は、リングバッファに読み出された末尾のパケットの処理の一例を説明するための図である。本実施形態では、ブロック５００１について、１パケット分のパケットバッファ(packet buffer)５２０１を、、ブロック５００２について、１パケット分のパケットバッファ５２０２をＲＡＭ２００２上に確保する。上記のようにリングバッファを構成する各ブロックのサイズは、本実施形態においては所定値（例えば１ＭＢ）として定められており、一方のパケットバッファ５２０１及び５２０２は、１画像パケット分のデータが確実に格納されるサイズを有する。
【００８１】
より具体的に、このパケットバッファ５２０１及び５２０２のサイズは、画像パケット４００に含まれる画像データに圧縮が施されていなかった場合、即ち、画像データが非圧縮データの場合のパケットサイズよりも大きいサイズとして特定される。例えば、１パケットに含まれる画像は上記のように３２×３２画素で、１画素ＲＧＢの三色として８ビット階調とすると、非圧縮の画像データのサイズは（３２×３２×８bit×３）／３として約３ＫＢ（バイト）となる。よって、パケットバッファ５２０１及び５２０２のサイズは、これにパケットのデータサイズを加算したデータ量よりも大きければよい。
【００８２】
ここで、あるブロック（例えば、ブロック５００１）に格納される、実画像データを有する最後のパケット（以下、「最終パケット」と呼ぶ。）を、次のブロック（例えばブロック５００２）用のパケットバッファ５２０２にコピーし、当該ブロックに画像パケット４００が読み出されてパケットテーブル３０３を生成する場合に、先頭のパケットテーブル３０３がパケットバッファ５２０２を指すようにする。
【００８３】
本実施形態では図１８に示すように、パケットバッファ５２０２を利用した最終パケットの処理方法には、図１８（ａ）から（ｃ）までの３通りが考えられる。以下の説明においては、簡単のためにブロック５００１に先に画像パケット４００の書き込みを行い、その後にブロック５００２に残りの画像パケット４００が書き込まれる場合を想定して説明する。勿論、ブロック５００１と５００２との前後関係が逆転した場合でも、最終パケットの処理の仕方は同様である。
【００８４】
まず、図１８（ａ）のように、ブロック５００１の最終パケットのデータが途中で終わっており、ブロック５００２の先頭からそのパケットの続きが始まる場合が考えられる。この場合、ブロック５００１における最終パケットをブロック５００２のパケットバッファ５２０２に先頭から格納するとともに、ヘッダ部４０１のパケット長４１５のデータに基づいて、この時点においてパケットバッファ５２０２に書き込まれていないデータサイズを格納しておく。
【００８５】
ブロック５００２への画像パケット４００の読み出しが終わると、パケットバッファ５２０２に格納されている未書込のデータサイズに基づいて、ブロック５００２の先頭から残りデータ分を読み出して、既に書き込まれている画像パケットデータの後に書き込む。これにより、ブロック５００１とブロック５００２とにまたがって書き込まれるはずであった画像パケット４００を１つの完全なパケットとして構成することができる。このように、パケットバッファ５２０２は、ブロック５００１と５００２との２つのブロックにまたがって格納された画像パケット４００を、一時的に格納する手段として機能することができる。また、このときブロック５００２について作成されるパケットテーブル３０３において、先頭の要素とパケットバッファ５２０２に格納されている画像パケット４００とを関連づける。
【００８６】
次に、図１８（ｂ）のように、ブロック５００１に最終パケットが完全に格納され、ブロック５００２の先頭も完全な画像パケット４００から始まる場合が考えられる。この場合、ブロック５００１の最終パケットをブロック５００２のパケットバッファ５２０２に書き込まれるとともに、残りのデータサイズが「０」として格納される。その後、ブロック５００２への画像パケット４００の読み出しが終わると、パケットバッファ５２０２に格納されている未書込のデータサイズに基づいて、ブロック５００２の先頭から残りデータ分を読み出すことになるが、図１８（ｂ）の場合には、当該未書込のデータサイズが「０」ゆえ、ブロック５００２からのデータの読み出しは行われない。但し、ブロック５００２のパケットテーブル３０３が生成される場合には、ブロック５００２の先頭の画像パケット４００についてヘッダ部４０１の内容に基づいてリピートフラグ４１１が立っているか否かを判定する。ここでリピートフラグ４１１が立っていない場合には、当該先頭の画像パケット４００は完全な圧縮画像データ４１６を有するパケットであるため、生成されるパケットテーブル３０３では、テーブルの先頭の要素とブロック５００２の先頭の画像パケット４００とが関連づけられる。
【００８７】
更に、図１８（ｃ）のように、ブロック５００１に最終パケットが完全に格納され、ブロック５００２の先頭がリピートフラグの立ったパケットから始まる場合が考えられる。この場合も図１８（ｂ）の場合と同様に、ブロック５００１の最終パケットをブロック５００２のパケットバッファ５２０２に格納するとともに、残りのデータサイズが０であることが格納される。そして、ブロック５００２のパケットテーブル３０３が生成される場合に、ブロック５００２の先頭の画像パケット４００のヘッダ部４０１の内容に基づいてリピートフラグ４１１が立っているか否かを判定する。ここで、もしリピートフラグ４１１が立っている場合には、ブロック５００２における先頭の画像パケット４００は、ブロック５００１における最終パケットと同一データとなる。そこで、ブロック５００２について作成されるパケットテーブル３０３の先頭の要素と、パケットバッファ５２０２に格納されている画像パケット４００とを関連づける。
【００８８】
以上の、パケットテーブル３０３の生成処理の流れを、図１９のフローチャートを参照して以下に説明する。なお、図１９における各処理は、ＣＰＵ２００１がイメージマネージャ４１１０を実行することにより行われる。
【００８９】
図１９において、ステップＳ５３０１でＣＰＵ２００１がイメージマネージャ４１１０による処理を開始すると、ステップＳ５３０２で変数の初期化を行う。ステップＳ５３０２でＣＰＵ２００１は、パケットバッファ５２０２に格納された画像パケット４００の残りデータサイズを表す変数である“rest_data_size”を０を設定し、生成するパケットテーブル３０３の要素の数を表す変数である“packet_count”に生成する要素数を設定する。このパケットテーブル３０３の要素数は、ブロック内に格納されたパケットの数に対応して設定される。
【００９０】
そして、ステップＳ５３０３で、パケットテーブル３０３の生成指示を待つ。なお、パケットテーブル３０３の生成指示は、ＨＤＤ２００４からブロック５００１又は５００２のいずれかに、１ＭＢ分の画像データを書き込まれたことにより、イメージマネージャ４１１０が行うものである。生成指示を受け付けるとステップＳ５３０４に進み、生成指示に含まれるリングバッファを構成するブロックのアドレスを“memory_start_addr”、“memory_end_addr”の変数に設定し、ステップＳ５３０５へ進む。ここで、アドレス“memory_start_addr”は、当該ブロックの開始位置のアドレスであり、“memory_end_addr”は、当該ブロックの終了位置のアドレスである。
【００９１】
ステップＳ５３０５では“rest_data_size”が「０」であるか否かを判定し、「０」と判定された場合（Ｓ５３０５で「ＹＥＳ」）には、最初の画像パケット４００はブロックの先頭にあるのでステップＳ５３０６へ進んで、処理対象の画像パケット４００のヘッダ部４０１の先頭アドレスを表す変数である“packet_header_addr”に“memory_start_addr”を代入する。
【００９２】
ここで、ステップＳ５３０３において最初にパケットテーブル生成指示を受け付けた場合“rest_data_size”は必ず「０」であるためステップＳ５３０６へ進む。一方、「０」でない場合には、ステップＳ５３０７へ進む。ステップＳ５３０７〜ステップＳ５３３２における処理についてはステップＳ５３２１での処理と関連して後述する。
【００９３】
ステップＳ５３０６（あるいはステップＳ５３３２）における処理後、ステップＳ５３０９へ進み、“packet_header_addr”にある画像パケット４００のヘッダ部４０１のパケットＩＤ４１２から、当該画像パケット４００に対応するパケットテーブル３０３の要素のアドレスを算出する。即ち、パケットＩＤ４１２は、分割される以前の画像３０１における画像パケット４００内の画像の位置を示しており、この位置に対応するようにパケットテーブル３０３内における各要素の位置を決定するものである。続くステップＳ５３１０では“packet_header_addr”の画像パケット４００のヘッダ部４０１にリピートフラグ４１１が立っているか否かを判定する。
【００９４】
ステップＳ５３１０でリピートフラグが立っていると判定された場合（Ｓ５３１０で「ＹＥＳ」）には、“last_packet_addr”で表されるアドレスの画像パケット４００と同じデータが続いていると判断できるため、ステップＳ５３１１へ進んでパケットテーブル３３０の当該要素におけるパケット情報の一部として“last_packet_addr”を設定する。この“last_packet_addr”は、後述するステップＳ５３１３およびステップＳ５３２５において随時更新されているため、ブロック中でその時点において最新に処理が終わった画像パケット４００か、あるいは、ブロックの最初のパケットを処理している場合にはパケットバッファ５２０１を指している。
【００９５】
ステップＳ５３１０で“packet_header_addr”にある画像パケット４００のヘッダ部４０１にリピートフラグ４１１が立っていないと判定された場合（Ｓ５３１０において「ＮＯ」）には、“packet_header_addr”に画像パケット４００の実データがあると判断できるため、ステップＳ５３１２へ進んでステップＳ５３０９で算出したパケットテーブル３０３の、該画像パケット４００に対応する要素におけるパケット情報の一部として“packet_header_addr”をセットして、ステップＳ５３１３へ進み、“last_packet_addr”に“packet_header_addr”をセットして“last_packet_addr”の内容を更新する。
【００９６】
ステップＳ５３１１あるいはステップＳ５３１３が終了すると、ステップＳ５３１４へ進み、“packet_header_addr”を画像パケット４００のヘッダ部４０１から得られるパケット長４１５分だけインクリメントする。ステップＳ５３１５ではステップＳ５３１４でインクリメントした“packet_header_addr”が“memory_end_addr”以下であるかどうか、すなわち前のパケットが完全にメモリブロック内に入っているかどうかを判断し、入っていればステップＳ５３１６へ進んで“packet_count変数”を１デクリメントする。これにより、ブロック内に格納されている複数の画像パケット４００のうち１つ分の処理が（更に）終了したこととなる。更に、ステップＳ５３１７で“packet_count”が０より大きいかどうか、即ち、当該ブロック内に格納された全ての画像パケット４００に対応するテーブル要素の生成が終了したかどうかを判定する。ここで、“packet_count”が０であると判定されれば、当該全ての画像パケット４００についてテーブル要素が生成されたこととなる（Ｓ５３１７で「ＮＯ」）ので、ステップＳ５３１８へ進んで本処理は終了となる。
【００９７】
ステップＳ５３１７において、“packet_count”が０より大きいと判定され、まだ生成すべきテーブル要素が存在する場合（Ｓ５３１７で「ＹＥＳ」）には、ステップＳ５３１９へ進み、“packet_header_addr”が“memory_end_addr”よりも小さいか否か、即ちブロック上に次のパケットデータが存在するかどうかを判定する。ステップＳ５３１９において次のパケットデータが存在すると判定された場合（Ｓ５３１９で「ＹＥＳ」）にはステップＳ５３０９へ戻り、次の画像パケットについてパケットテーブル生成処理を実行する。一方、ステップＳ５３１９において次のパケットデータが存在しないと判定された場合（Ｓ５３１９で「ＮＯ」）には、ステップＳ５３２０へ進み、ブロック上の最終パケット処理を実行する。
【００９８】
また、ステップＳ５３１５で“packet_header_addr”が“memory_end_addr”よりも大きいと判定された場合（Ｓ５３１５で「ＮＯ」）、即ち、ブロックの最後の画像パケット４００に残りのデータがあり、まだ完全なパケットとしてＲＡＭ２００２上に書き込まれていないと判定された場合にも、ステップＳ５３２０へ進む。ステップＳ５３２０では最後に処理された実データを持つ画像パケット４００のアドレスを表す“last_packet_addr”の示す画像パケット４００のヘッダ部４０１からパケット長４１５を取得し、その画像パケット４００が“memory_end_addr”以内に終わっているかどうかを判定する。
【００９９】
ここで、終わっていないと判定されれば（Ｓ５３２０で「ＮＯ」）、ステップＳ５３２１へ進み、画像パケット４００の残りデータサイズを表す“rest_data_size”に残りのデータ長をセットし、ステップＳ５３２２で“last_packet_addr”から“memory_end_addr”までをパケットバッファ５２０１へ格納する。一方、ステップＳ５３２０で“last_packet_addr”にあるパケットが“memory_end_addr”以内に終わっていると判定されれば（Ｓ５３２０で「ＹＥＳ」）、ステップＳ５３２３へ進み“rest_data_size”に０をセットし、ステップＳ５３２４で“last_packet_addr”からパケット長４１５分のデータをパケットバッファ５２０１へ格納する。ステップＳ５３２２、ステップＳ５３２４の処理が終わると、ステップＳ５３２５へ進んで次のブロックのために“last_packet_addr”を“packet_buffer”に設定し、ステップＳ５３０３へ戻って次のブロックのパケットテーブル生成指示を待つ。
【０１００】
ステップＳ５３２１において、“rest_data_size”に残りのデータ長をセットされた場合、次のブロックのパケットテーブル生成指示に対して実行される処理では、ステップＳ５３０５において“rest_data_size”が０でないと判定され（Ｓ５３０５で「ＮＯ」）、ステップＳ５３０７へ進む。ステップＳ５３０７では、最終パケットの実体を指している“last_packet_addr”のパケット、即ち、パケットバッファ５２０１に一部が格納されている画像パケット４００の末尾に、新しいブロックの“memory_start_addr”から“rest_data_size”分だけのデータをコピーする。この“rest_data_size”分のデータは、パケットバッファ５２０１に格納されている画像パケット４００の未格納部分であるから、これによりパケットバッファ５２０１内のパケットは一つの画像パケット４００として完成される。
【０１０１】
続くステップＳ５３０８では、“last_packet_addr”の画像パケット４００のヘッダ部４０１から得たパケットＩＤ４１２を使用して、パケットテーブル３０３に登録されるパケットバッファ内の画像パケットに対応するテーブル要素のアドレスを算出する。更にステップＳ５３３１では、生成したテーブル要素に含まれるパケット情報の一部として“last_packet_addr”を設定する。ここで、“last_packet_addr”はパケットバッファ５２０１を表しているので、このテーブル要素は、パケットバッファ５２０１と関連づけられることとなる。そして、ステップＳ５３３２へ進んで“packet_header_addr”に、“memory_start_addr”から“rest_data_size”だけインクリメントした次の画像パケット４００の先頭アドレスを設定する。
【０１０２】
以上の処理により、イメージマネージャ４１１０は展開が終了した時点で、展開終了をシンクマネージャ４０８０を経由して、ファイルリードマネージャ４０６０とプリントマネージャ４０９０に伝える。プリントマネージャ４０９０はＲＡＭ２００２に画像が格納された時点で、デバイスI/Fを介してプリンタ１０９５にジョブマネージャ４０４０から指示された給紙段、もしくはその用紙サイズを有する段を選択し、印刷要求を出す。
【０１０３】
このとき、自動用紙の場合には画像サイズから給紙段を決定し印刷要求を出す。また、同時にシンクマネージャ４０８０にプリント画像処理要求を行う。シンクマネージャ４０８０はプリントマネージャ４０９０から要求を受けるとプリント画像処理設定をイメージマネージャ４１１０に依頼する（このとき、例えば最適サイズ用紙がなくなり、画像の回転処理が必要になれば別途回転指示も依頼する。回転指示があった場合にはイメージマネージャが画像回転２０１９を使って画像を回転する。）。
【０１０４】
イメージマネージャ４１１０は、プリンタ画像処理部２０１６の設定を行い、シンクマネージャ４０８０を介してプリントマネージャ４０９０にプリント準備完了を伝える。プリントマネージャ４０９０はプリンタ１０９５に対して印刷指示を出す。プリント画像転送完了は図示しないハードウェアからの割り込み信号によってイメージマネージャ４１１０に通知される。イメージマネージャ４１１０からのプリント完了を受けてシンクマネージャ４０８０はプリント完了をファイルリードマネージャ４０６０とプリントマネージャ４０９０に伝える。
【０１０５】
ファイルリードマネージャ４０６０は終了通知をジョブマネージャ４０４０に返す。プリントマネージャ４０９０はプリンタ１０９５からの排紙完了を受け、ジョブマネージャ４０４０に対して終了通知を返す。ジョブマネージャ４０４０は共通インタフェース４０３０を介してコピーアプリケーション部４０２０へ終了通知を返す。コピーアプリケーション部４０２０はスキャン、プリントが終了したらジョブ終了をUI制御部４０１０に通知する。
【０１０６】
また、PDLデータ展開格納ジョブの場合は、PDLプリントを投入したＬＡＮ１０１１上に接続されているホストコンピュータからの要求がネットワークアプリケーション４１２０を経由してPDLアプリケーション４０２３に伝達される。PDLアプリケーション４０２３がPDLデータ展開格納ジョブを共通インタフェース４０３０を介してジョブマネージャ４０４０に指示する。このときPDLマネージャ４０７０とストアマネージャ４１００がジョブマネージャ４０４０からの要求を受ける。
【０１０７】
画像のRIPが終了した後の画像入力する部分に関しては前述のスキャンジョブと同様である。メモリ上の画像（文字／写真判定信号を含めて）をＨＤＤ２００４に格納する。画像の付随情報として図示しないＳＲＡＭにカラー/白黒情報、画像入力元としてPDL画像、色空間CMYKもしくはRGBも格納しておく。PDL画像をＨＤＤ２００４に格納し終わった時点で、シンクマネージャ４０８０から格納完了通知を受け、それを共通インタフェース４０３０を介してPDLアプリケーション４０２３に通知する。
【０１０８】
ＰＤＬアプリケーション４０２３はこの通知のあと、ネットワークアプリケーション４４２０にＨＤＤに格納完了を通知し、PDLプリントを投入したホストコンピュータへこの情報が伝達される。また、PDLプリントジョブの場合にはPDLマネージャ４０７０とプリントマネージャ４０９０によって、ＲＡＭ２００２上に展開された画像を印字する。
【０１０９】
PDL展開され格納された画像のプリントは、UI４０１０で印刷指示された格納文書をボックスアプリケーション４０２２に対してプリントジョブとして発行する。ボックスアプリケーション部４０２２は共通インタフェース４０３０を介してジョブマネージャ４０４０にプリントジョブを投入する。ローカルコピーとは異なり、スキャンマネージャ４０５０に代わってファイルリードマネージャ４０６０がジョブマネージャ４０４０からの要求を受ける。
【０１１０】
印刷指示された画像をＨＤＤからメモリに展開するための要求をシンクマネージャ４０８０を介して、イメージマネージャ４１１０に行う。この後の動作はリモートコピーのプリントジョブで説明した動作と同様のため、省略する。
【０１１１】
以上のように、本実施形態に対応する画像入出力システムでは、タイル状に分割・圧縮された画像をリングバッファで扱うことが可能となり、ＲＡＭ２００２のリソースを有効に活用することができる。
【０１１２】
［その他の実施形態］
なお、本発明は、複数の機器（例えばホストコンピュータ、インタフェイス機器、リーダ、プリンタなど）から構成されるシステムに適用しても、一つの機器からなる装置（例えば、複写機、ファクシミリ装置など）に適用してもよい。
【０１１３】
また、本発明の目的は、前述した実施形態の機能を実現するソフトウェアのプログラムコードを記録した記憶媒体（または記録媒体）を、システムあるいは装置に供給し、そのシステムあるいは装置のコンピュータ（またはＣＰＵやＭＰＵ）が記憶媒体に格納されたプログラムコードを読み出し実行することによっても、達成されることは言うまでもない。この場合、記憶媒体から読み出されたプログラムコード自体が前述した実施形態の機能を実現することになり、そのプログラムコードを記憶した記憶媒体は本発明を構成することになる。また、コンピュータが読み出したプログラムコードを実行することにより、前述した実施形態の機能が実現されるだけでなく、そのプログラムコードの指示に基づき、コンピュータ上で稼働しているオペレーティングシステム（ＯＳ）などが実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【０１１４】
さらに、記憶媒体から読み出されたプログラムコードが、コンピュータに挿入された機能拡張カードやコンピュータに接続された機能拡張ユニットに備わるメモリに書込まれた後、そのプログラムコードの指示に基づき、その機能拡張カードや機能拡張ユニットに備わるＣＰＵなどが実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【図面の簡単な説明】
【０１１５】
【図１】本発明の実施形態に対応する画像形成システムの全体構成を示す図である。
【図２】本発明の実施形態に対応する画像処理装置のハードウェア構成例を示す図である。
【図３】本発明の実施形態に対応する画像形式の一例を説明するため図である。
【図４】本発明の実施形態に対応する画像パケットの構成例を示す図である。
【図５】本発明の実施形態に対応する画像パケットのＨＤＤ２００４における格納形態を説明するための図である。
【図６】本発明の実施形態に対応するスキャナ画像処理２０１４の構成例を示す図である。
【図７】本発明の実施形態に対応するプリンタ画像処理２０１６の構成例を示す図である。
【図８】本発明の実施形態に対応する画像処理装置１００の外観構成例を示す図である。
【図９】本発明の実施形態に対応する画像処理装置１００の操作部１０１２の構成例を示す図である。
【図１０】本発明の実施形態に対応する画像処理装置１００の操作部１０１２に表示される画面の一例を示す図である。
【図１１】本発明の実施形態に対応する画像処理装置１００の操作部１０１２に表示されるポップアップウィンドウの一例を示す図である。
【図１２】本発明の実施形態に対応する画像処理装置１００の操作部１０１２に表示される画面の他の一例を示す図である。
【図１３】本発明の実施形態に対応する画像処理装置１００の操作部１０１２に表示される画面の更に他の一例を示す図である。
【図１４】本発明の実施形態に対応する画像処理装置１００の操作部１０１２に表示される画面の更に他の一例を示す図である。
【図１５】本発明の実施形態に対応するソフトウェア構成の一例を示す図でる。
【図１６】本発明の実施形態に対応する画像データの再圧縮処理を行う場合の画像の展開処理を説明するための図である。
【図１７】本発明の実施形態に対応するイメージマネージャ４１１０による画像展開処理の一例に対応するフローチャートである。
【図１８】本発明の実施形態に対応するリングバッファを利用した処理を説明するための図である。
【図１９】本発明の実施形態に対応するパケットテーブル３０３の生成処理の一例に対応するフローチャートである。
【図２０】本発明の実施形態に対応するリングバッファの構成を説明するための概念図である。
【図１】
2006229476.tif 000003
【図２】
2006229476.tif 000004
【図３】
2006229476.tif 000005
【図４】
2006229476.tif 000006
【図５】
2006229476.tif 000007
【図６】
2006229476.tif 000008
【図７】
2006229476.tif 000009
【図８】
2006229476.tif 000010
【図９】
2006229476.tif 000011
【図１０】
2006229476.tif 000012
【図１１】
2006229476.tif 000013
【図１２】
2006229476.tif 000014
【図１３】
2006229476.tif 000015
【図１４】
2006229476.tif 000016
【図１５】
2006229476.tif 000017
【図１６】
2006229476.tif 000018
【図１７】
2006229476.tif 000019
【図１８】
2006229476.tif 000020
【図１９】
2006229476.tif 000021
【図２０】
2006229476.tif 000022