(57)【特許請求の範囲】
【請求項１】
画像データを、複数個の予め定めたサイズのブロックで構成されるタイル毎に符号化する符号化手段と、
前記画像データにおいて削除を指定された画素行又は画素列が前記タイル内に含まれるか否かを各タイル毎に判定し、含まれる場合に、該当するタイル内の対応する画素行又は画素列が削除指定されていることを示す削除情報を、前記符号化されたタイルのヘッダ情報に保存する保存手段と
を備えることを特徴とする画像処理装置。
【請求項２】
前記符号化されたタイル内に含まれる各ブロックを順に処理対象のブロックとして復号化する復号化手段を更に備え、
前記復号化手段は、前記処理対象のブロックの全画素が前記削除情報で削除指定されている場合に、当該処理対象のブロックを復号化しないことを特徴とする請求項１に記載の画像処理装置。
【請求項３】
前記復号化手段は、前記処理対象のブロックの一部の画素行又は一部の画素列が前記削除情報で削除指定されている場合に、削除指定されていない画素を復号化し、削除指定されている画素を復号化しないことを特徴とする請求項２に記載の画像処理装置。
【請求項４】
前記ブロックは２×２画素のサイズで構成され、
前記符号化手段は、
タイル内の各ブロックを順に処理対象にして、当該処理対象のブロック内の各画素の画素値を比較することにより、各ブロックに含まれる画素値の配置パターンを示すパターン情報を特定し、
前記各ブロックの予め定めた位置の画素に対応する画素値から第１色の色情報を抽出し、更に、前記ブロックに含まれる色の数が２乃至４のいずれかであると判断したブロックから、当該特定されたパターン情報で定義されている配置パターンに対応する第２色乃至第４色の色情報を抽出し、
前記特定された各ブロックのパターン情報と、前記抽出された第１色の色情報と、前記抽出された第２色乃至第４色の色情報とをメモリに保持させることにより、前記タイルの符号化データを生成することを特徴とする請求項１乃至３のいずれか１項に記載の画像処理装置。
【請求項５】
コンピュータを用いて、
前記コンピュータが備える復号化手段が、画像データを、複数個の予め定めたサイズのブロックで構成されるタイル毎に符号化する符号化工程と、
前記コンピュータが備える保存手段が、前記画像データにおいて削除を指定された画素行又は画素列が前記タイル内に含まれるか否かを各タイル毎に判定し、含まれる場合に、該当するタイル内の対応する画素行又は画素列が削除指定されていることを示す削除情報を、前記符号化されたタイルのヘッダ情報に保存する保存工程と、
を実行することを特徴とする画像処理方法。
【請求項６】
コンピュータを、
画像データを、複数個の予め定めたサイズのブロックで構成されるタイル毎に符号化する符号化手段、
前記画像データにおいて削除を指定された画素行又は画素列が前記タイル内に含まれるか否かを各タイル毎に判定し、含まれる場合に、該当するタイル内の対応する画素行又は画素列が削除指定されていることを示す削除情報を、前記符号化されたタイルのヘッダ情報に保存する保存手段、
として機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像データを予め定めたサイズのブロック毎に符号化する画像処理装置、画像処理方法及びプログラムに関する。
【背景技術】
【０００２】
デジタル複合機等の画像処理装置が扱う画像データは、カラー化、高解像度化の要求に伴ってそのサイズが増大している。このため、画像処理装置では、内部的に画像データを符号化して扱うことで、メモリやハードディスクに対する画像データスプール時の容量節約やアクセス時間短縮を行っている。また、内部バスの帯域負荷を減らし、システムにおけるデータ処理効率化を行っている。
【０００３】
カラー静止画像の符号化方式としては、離散コサイン変換を用いたＪＰＥＧ方式や、Ｗａｖｅｌｅｔ変換を用いた方式が使われている。これらの符号化方式は、画像を所定のブロック単位（例えば、８×８画素や１６×１６画素）で符号化し、離散コサイン変換、量子化及びエントロピー符号化を行うことで高い符号化効率を実現している。これらの符号化方式は、符号化対象の画像毎に符号量が変化する可変長符号化方式である。また、符号化前のデータと、符号化、復号化を経たデータとが完全には一致しない非可逆な符号化方式である。
【０００４】
画素そのものではなく、画像の特徴量を符号化する技術としては、公知の、画素データとその連続数を記憶するランレングス符号化方式や、低解像度画像の符号化データから差分符号化を繰り返し行うＪＢＩＧ方式がある。これらの符号化方式は、符号化前データと、符号化、復号化を経たデータとが完全に一致する可逆な符号化方式である。
【０００５】
ところで、画像処理装置において符号化された画像データに対して、所定の画像処理（例えば、画素削除等）を行うには、一度復号化を行い符号化されていない元画像データを取得した後に行う必要がある。例えば、上述したＪＰＥＧ方式であれば、離散コサイン変換で符号化した画像データを逆離散コサイン変換で復号化することで元画像データが得られ、当該元画像データに対して画像処理を行うことが可能となる。そして、画像処理終了後、必要に応じて再度符号化を行った後にスプール処理を行う。画像処理を複数回行う場合は、復号化、画像処理、符号化の一連の処理を必要回数だけ繰り返して行う。
【０００６】
また、特許文献１のように非可逆な符号化方式を用いる場合は、局部的に復号化処理を行うための処理リソースが必要であり、また、局部的ではあるが符号化・復号化処理を行うので画質が劣化してしまう。一方、ランレングス方式等の可逆な符号化方式を用いる場合は、画像処理を複数回行うため、符号化、復号化を繰り返すことによる画質劣化は発生しないが、画像処理を行うために少なくとも一度復号化処理を行う必要があり、その分の処理リソースが必要となってしまう。また、画像処理のパフォーマンス性能を向上させるため、画像処理部に加え、符号化処理部及び復号化処理部の双方が、画像処理に要求されるパフォーマンスと同等の性能を有する必要がある。例えば、ＪＢＩＧ方式等のような複雑な符号化方式を用いた場合、処理回路の多重化や並列化が必要となるため、回路規模が増大してしまう。
【先行技術文献】
【特許文献】
【０００７】
【特許文献１】特開平０９−２６１６３２号公報
【発明の概要】
【発明が解決しようとする課題】
【０００８】
本発明は、上記問題点に鑑みてなされたものであり、符号化された画像データを復号化することなく、削除対象の画素行又は画素列を指定可能である画像処理装置、画像処理方法及びプログラムを提供するものである。
【課題を解決するための手段】
【０００９】
上記課題を解決するため、本発明に係る画像処理装置は、画像データを、複数個の予め定めたサイズのブロックで構成されるタイル毎に符号化する符号化手段と、前記画像データにおいて削除を指定された画素行又は画素列が前記タイル内に含まれるか否かを各タイル毎に判定し、含まれる場合に、該当するタイル内の対応する画素行又は画素列が削除指定されていることを示す削除情報を、前記符号化されたタイルのヘッダ情報に保存する保存手段とを備える。
【発明の効果】
【００１０】
本発明によれば、符号化された画像データを復号化することなく、削除対象の画素行又は画素列を指定可能である画像処理装置、画像処理方法及びプログラムを提供することができる。
【図面の簡単な説明】
【００１１】
【図１】本発明の一実施形態に係る画像処理システムの全体構成を示す図である。
【図２】画像処理装置の全体的な処理手順を示すフローチャートである。
【図３】ページ画像、ブロック及びタイルの関係を示す図である。
【図４】ブロック、ブロック色数、低解像度画像データ、補間データの関係を示す図である。
【図５】タイルのデータ構造を示す図である。
【図６】符号化部、画像処理部及び復号化部の構成を示す図である。
【図７】符号化処理（Ｓ２０５）の詳細な処理手順を示すフローチャートである。
【図８】解像度符号化処理（Ｓ８０３）の詳細な処理手順を示すフローチャートである。
【図９】画素削除処理（Ｓ３０３）の詳細な処理手順を示すフローチャートである。
【図１０】画素削除処理を模式的に示す図である。
【図１１】タイルのデータ構造を示す図である。
【図１２】復号化処理（Ｓ４０２）及び解像度復号化処理（Ｓ１３０６）の詳細な処理手順を示すフローチャートである。
【発明を実施するための形態】
【００１２】
本出願人は、特願２００９−２２１４４４で以下に示す解像度符号化処理を提案している。この技術は、まず、画像データをブロック（例えば２×２画素サイズのブロック）毎に分割し、ブロック内の各画素の色データを比較することにより、注目ブロックに含まれる色データの配置パターン情報と、着目ブロックに含まれる色数分の色データ情報とを出力する。そして、出力された色データ情報のうち、ブロックにおける予め定めた位置の画素に対応する第１の色データ情報（例えば２×２画素サイズのブロックにおける左上の画素の色データ情報）と、それ以外の色データ情報（第２色乃至第４色の色データ情報）とに分けてメモリ領域に格納する。すなわち、各ブロックから得られる配置パターン情報と第１の色データ情報とそれ以外の色データ情報とを、それぞれ異なるメモリ領域にまとめて格納することを特徴としている。各ブロック内には同色の画素が存在する場合が多いので、メモリ領域に格納されたデータは、元画像のデータよりもデータサイズが小さい圧縮データとなる。また、第１の色データ情報は、各ブロックの予め定めた位置の画素の画素値であるので、連続メモリ領域に格納されている第１の色データ情報は、元画像を単純間引き処理して生成される低解像度画像に等しい。したがって、低解像度画像データも容易に得ることができる。また、各ブロックの第１の色データ情報からなる低解像度画像データを連続メモリ領域に置くことで、符号化データのままでの処理を容易化し、復号化することなく低解像度画像に対する画素処理も可能となる。
【００１３】
以下、図面を参照して本発明の実施形態を詳細に説明する。なお、以下の実施形態は特許請求の範囲を限定するものでなく、また、実施形態で説明される特徴の組み合わせの全てが発明の解決手段に必須のものとは限らない。
【００１４】
（第１の実施形態）
［画像処理システムの全体構成（図１）］
本実施形態に係る画像処理システムは、ホストコンピュータ１０１と、画像処理装置１０２とを備える。
【００１５】
ホストコンピュータ１０１は、一般のＰＣ（Ｐｅｒｓｏｎａｌ  Ｃｏｍｐｕｔｅｒ）やＷＳ（Ｗｏｒｋ  Ｓｔａｔｉｏｎ）等のコンピュータであり、これらのコンピュータ上で作成された画像や文書は、ＰＤＬデータとして画像処理装置１０２に入力される。
【００１６】
画像処理装置１０２は、ホストコンピュータ１０１から出力されたデータを受信する。即ち、画像処理装置１０２とホストコンピュータ１０１との間でデータ通信可能なネットワークが形成されていることを意味するが、このネットワークの構成については特に限定するものではない。
【００１７】
画像処理装置１０２は、ホストコンピュータ１０１から受信したデータに基づいて各種の画像処理を施し、画像処理済みのデータをプリントエンジン部１２１へ出力する。プリントエンジン部１２１は、画像処理装置１０２から出力された画像処理済みのデータに基づいて、紙等の記憶媒体上に印刷処理を行う。なお、本実施形態では、画像処理装置１０２にデータを入力するのはホストコンピュータ１０１としたが、これ以外の装置であっても良く、例えば、不図示のスキャナ入力部から出力されたデータを画像処理装置１０２に入力するようにしても良い。
【００１８】
画像処理装置１０２は、図示しないコントローラ部を備える。コントローラ部は、ホストＩ／Ｆ部１１１と、ＰＤＬ処理部１１２と、ＣＰＵ１１３と、ＲＡＭ１１４と、ＲＯＭ１１５と、記憶装置制御部１１６と、エンジンＩ／Ｆ部１１７と、符号化部１１８と、復号化部１１９と、記憶装置１２０と、プリントエンジン部１２１と、画像処理部１２２とを備える。
【００１９】
ホストＩ／Ｆ部１１１は、ホストコンピュータ１０１から出力されたＰＤＬデータを受信するためのインタフェースとして機能する。なお、ホストＩ／Ｆ部１１１は、画像処理装置１０２とホストコンピュータ１０１とを繋ぐネットワークに応じて異なり、例えば、イーサネット（登録商標）やシリアルインターフェース等で構成される。
【００２０】
ＰＤＬ処理部１１２は、ホストＩ／Ｆ部１１１が受信したＰＤＬデータを展開する処理を行う。ＣＰＵ１１３は、ＲＡＭ１１４やＲＯＭ１１５に格納されているプログラムやデータを用いて画像処理装置１０２全体の制御を行うと共に、画像処理装置１０２が行う後述の各処理を実行する。
【００２１】
ＲＡＭ１１４は、ホストＩ／Ｆ部１１１を介して、ホストコンピュータ１０１から受信したデータを一時的に記憶するためのエリアを備える。また、ＣＰＵ１１３が各種処理を実行する際に用いるワークエリアを備える。ＲＯＭ１１５は、ＣＰＵ１１３が画像処理装置１０２全体を制御する際に実行するプログラムやデータ及び画像処理装置１０２の設定データ等が格納されている。
【００２２】
記憶装置制御部１１６は、画像処理装置１０２が扱う画像データを記憶装置１２０に記憶するための制御を行う。エンジンＩ／Ｆ部１１７は、画像処理装置１０２による画像処理済みのデータをプリントエンジン部１２１に出力するための一連の処理を行う。
【００２３】
符号化部１１８は、ＰＤＬ処理部１１２において展開された画像に対して符号化処理を行う。本実施形態における符号化方法は、解像度符号化とする。復号化部１１９は、符号化部１１８で生成した符号化データを復号化し、符号化前の元データを生成する。本実施形態における復号化方法は、解像度復号化とする。
【００２４】
記憶装置１２０は、大容量記憶媒体（例えば、ハードディスク）であり、画像処理装置１０２がホストコンピュータ１０１から受信した画像データや、処理時に生成する中間画像データを記憶する。画像処理部１２２は、ホストコンピュータ１０１から出力されたデータから成る画像に対して画像処理を行う。
【００２５】
上述した各部は、画像処理装置１０２の内部バス１３１によって、互いに接続される。各部間のデータ転送は、各部と内部バス１３１との間に設けられたＤＭＡＣ（Ｄｉｒｅｃｔ  Ｍｅｍｏｒｙ  Ａｃｃｅｓｓ  Ｃｏｎｔｒｏｌｌｅｒ）からなる不図示のデータ転送部を用いて行う。
【００２６】
［画像処理装置の全体的な処理手順（図２）］
まず、画像処理装置１０２がホストコンピュータ１０１から印刷データ（ＰＤＬデータ）を受信した場合に、印刷データを符号化して格納する処理について、図２の２ａのフローチャートを用いて説明する。同図のフローチャートに示す処理は、ホストＩ／Ｆ部１１１を介して、ホストコンピュータ１０１から出力されたＰＤＬデータの受信をＣＰＵ１１３が検知することで開始される。
【００２７】
まず、ＣＰＵ１１３は、受信したＰＤＬデータを一時的にＲＡＭ１１４に格納する（Ｓ２０１）。次に、ＣＰＵ１１３が、受信したＰＤＬデータをＤＬ（Ｄｉｓｐｌａｙ  Ｌｉｓｔ）に展開した後、一時的にＲＡＭ１１４に格納する（Ｓ２０２）。具体的には、ＰＤＬデータが有する画像情報とそれに対応する属性情報が生成され、ＤＬとして格納される。生成する属性情報としては、ＰＤＬ入力の文字、ライン及び写真等がある。
【００２８】
そして、ＰＤＬ処理部１１２が、格納したＤＬに基づいて、画像展開処理を行い、中間画像データを生成する（Ｓ２０４）。画像展開処理は、予め定めたサイズのブロック毎（以下、この単位をタイルと呼ぶ）に行うものとする。タイルサイズは、後述する符号化処理における、２×２画素のブロックを複数個まとめた領域サイズと等しいことが望ましく、本実施形態では、タイルサイズを８×８画素単位とする。また、中間画像データには、ＤＬが有する画像情報とそれに対応する属性情報とが、画素単位で対応付けされた状態で格納される。
【００２９】
そして、中間画像データは、符号化部１１８において、タイル単位でパターン情報（配置パターン）、低解像度画像データ（所定位置の画素の画素値に対応する第１色の色データ）及び補間データ（第２〜４色の色データ）からなる符号化データに変換される（Ｓ２０５）。なお、符号化部１１８における処理の詳細は後述する。
【００３０】
符号化データは、記憶装置制御部１１６が有する不図示のデータ転送部を介して記憶装置１２０へ出力され、保存される（Ｓ２０６）。このとき、タイル毎に所定の固定長のヘッダ情報を付与する。なお、ヘッダ情報の詳細は後述する。
【００３１】
次に、記憶装置１２０に保存された符号化データを読み出し、符号化データを画像処理して再スプールする処理について、図２の２ｂに示すフローチャートを用いて説明する。同図のフローチャートに示す処理は、ＣＰＵ１１３が、記憶装置制御部１１６への符号化データのスプール処理に係る終了通知を受信後に、プリント開始命令を復号化部１１９に指示することで開始される。
【００３２】
まず、画像処理部１２２のパラメータ設定を行う（Ｓ３０１）。具体的には、ＣＰＵ１１３が、画像処理部１２２が有する不図示の画像処理モジュールの各レジスタに対して、必要なパラメータ設定を行う。そして、ＣＰＵ１１３は、記憶装置１２０に保存されている符号化データを、ＲＡＭ１１４へ読み出すよう記憶装置制御部１１６へ指示する（Ｓ３０２）。
【００３３】
次に、画像処理部１２２は、内部に有する後述の入力データ転送部９０１（図６の６ｂ参照）を用いてＲＡＭ１１４から符号化データを読み出し、元画像へ復号化しないで、当該符号化データに対して所定の画像処理を行う（Ｓ３０３）。なお、符号化データの中で行う所定の画像処理の詳細については後述する。
【００３４】
そして、ＣＰＵ１１３は、後述の出力データ転送部９０３（図６の６ｂ参照）に対してＳ３０３で画像処理した符号化データをＲＡＭ１１４へ格納するよう指示する（Ｓ３０４）。ＣＰＵ１１３は、更に、ＲＡＭ１１４へ格納された符号化データを、記憶装置１２０へ格納するよう、不図示のデータ転送部へ指示する。ＣＰＵ１１３は、不図示のデータ転送部からの全ての符号化データを記憶装置１２０へ格納し終えたことを示す終了通知を受信後にアイドル状態に移行する。
【００３５】
次に、記憶装置１２０に保存された画像処理済みの符号化データを読み出し、その符号化データを復号化し、プリントデータとして出力する処理について、図２の２ｃに示すフローチャートを用いて説明する。同図のフローチャートに示す処理は、ＣＰＵ１１３が、Ｓ３０４での終了通知を受信後に、プリント開始に係る処理命令を記憶装置制御部１１６に指示することで開始される。
【００３６】
まず、ＣＰＵ１１３は、記憶装置１２０に保存されている符号化データを、ＲＡＭ１１４へ読み出すよう、記憶装置制御部１１６へ指示する（Ｓ４０１）。次に、復号化部１１９は、内部に有する後述の入力データ転送部１２０１（図６の６ｃ参照）を用いて、ＲＡＭ１１３から符号化データを読み出し、復号化処理を行う（Ｓ４０２）。なお、復号化処理の詳細は後述する。
【００３７】
次に、復号化して得られた画像データを、内部に有する後述の出力データ転送部１２０３（図６の６ｃ参照）を用いて、ＲＡＭ１１４へ出力する（Ｓ４０３）。その後、エンジンＩ／Ｆ部１１７が内部に有する不図示のデータ転送部を用いて、ＲＡＭ１１４からプリントエンジン部１２１へ画像データを出力する。
【００３８】
以上の各処理により、ホストコンピュータ１０１から受信したデータを符号化し、パターン情報と低解像度画像データと補間データとからなる符号化データを生成することができる。また、符号化データを復号化せずに画像処理し、記憶装置１２０へ再スプールすることができる。そして、画像処理後の符号化データを復号化してプリンタエンジン部１０４に出力することができる。
【００３９】
以上の説明では、データのスプールをＲＡＭ１１４を経由して記憶装置１２０に保持することとしたが、記憶装置１２０を用いずにＲＡＭ１１４にスプールするようにしても良い。
【００４０】
［符号化部１１８の詳細構成（図３、図４、図５）］
図３は、入力画像であるページ画像５０１、ページ画像５０１から抽出される２×２画素のブロック５０２及び８×８画素のタイル５０３の関係を示している。図４は、ブロック、ブロックを構成するブロック色数、対応する低解像度画像データ及び補間データの関係を示している。
【００４１】
まず、ブロック５０２を構成するブロック色数について説明する。ブロック色数５０５が１色で全画素が同色である場合の組み合わせは１通りである。これに対応するパターン情報を０ｘ０（０ｘは１６進数を示す。以下同様）とする。
【００４２】
ブロック色数５０５が２色である場合の組み合わせは、左上の画素の色（画素値）を第１色、他の画素に存在する第１色以外の色を第２色として考えると、左上以外残りの３画素へ第１色又は第２色が入るので、４画素同色の場合を除くと、全部で７通りである。これに対応するパターン情報を０ｘ１〜０ｘ７とする。
【００４３】
ブロック色数５０５が３色である場合の組み合わせは、３色のうち１色だけ２度使われる場合の数と言い換える事が可能で、４画素の座標のうち、２画素が同じ色になる場合の数を求めればよい。つまり、３色の場合の数は、４つの座標から２つの座標を取る組み合わせとなり、全部で６通りとなる。これに対応するパターン情報を０ｘ８〜０ｘＤとする。このとき、左上の画素の色を第１色とし、右上・左下・右下の画素順で走査したときに新たな色が出現するごとに、第２色、第３色として定義する。
【００４４】
ブロック色数５０５が４色である場合の組み合わせは、１色の場合と同様１通りとなる。これに対応するパターン情報を０ｘＥとする。このとき、左上の画素の色を第１色、右上の画素の色を第２色、左下の画素の色を第３色、右下の画素の色を第４色として定義する。
【００４５】
以上より、ブロック色数５０５は、１〜４色の場合を合計すると１５通りの組合せが存在する。
【００４６】
タイル５０３は、２×２画素サイズのブロック５０２を複数まとめた領域である。本実施形態では、２×２画素サイズのブロックが４×４個（画像のＸ方向に４個、Ｙ方向に４個、計１６個）から構成される領域をタイルとする。これは、上述した中間画像データ展開におけるブロック単位と同じサイズである。
【００４７】
次に、各ブロック色数５０５に対応する低解像度画像データ５０６及び補間データ５０７の構成について説明する。
【００４８】
低解像度画像データ５０６は、２×２画素からなるブロック５０２の予め定めた位置（左上）の画素の色情報とする。例えば、色空間がＲＧＢで、各色コンポーネントのデータ長が８ビットの画素の場合、各色情報のビット長は２４ビットで表現可能である。この左上画素の色情報を第１色とし、更に、右上画素・左下画素・右下画素の順に走査した場合に、新たな色が出現するたびに第２色〜第４色（補間データ）を順に定義する。なお、本実施形態では、左上の画素の色を第１色として定義したが、これに限るものではない。また、第２〜４色を定める画素の走査順も予め定義しておけばよい。例えば、右下画素を予め定めた位置の画素として定義して、第１色を定め、その他の位置の画素を所定の順に走査して第２〜４色の補間データとして定めるようにしてもよい。
【００４９】
すなわち、補間データ５０７は、左上画素以外の画素の色情報のうち、第１色以外の色情報（つまり、第２色乃至第４色の色情報）を、パターンごとに定義された順で格納したものである。ブロック色数５０５が１色の場合、該ブロック内には第１色以外の色が存在しないので、補間データは不要となり、パターン情報として全画素同色を示す０ｘ０と、第１色を表現する低解像度画像データとから構成されるデータで再現可能となる。
【００５０】
ここで、パターン情報のビット長は４であり、ブロック色数５０５の全組み合わせ１５通りを表現する最小のビット長である。
【００５１】
また、色空間がＲＧＢで、各色コンポーネントのデータ長が８ビットの画素の場合、補間データの各色情報のビット長は２４であるので、各ブロックに対する補間データのデータサイズは、０、２４、４８、７２ビットのいずれかとなる。
【００５２】
以上説明した、パターン情報と低解像度画像データ５０６と補間データ５０７とを用いることで、２×２画素からなるブロック５０２を符号化し、データ量を低減することが可能となる。
【００５３】
例えば、全画素同色であるブロックの場合、符号化前のデータ量は（ＲＧＢ各色８ビット）×（４画素分）の計９６ビットである。これを符号化した場合、左上画素の色情報（第１色）を示す低解像度画像データが２４ビットと、全色同色画素であることを示すパターン情報である４ビットとの合計２８ビットとなる。この符号化データは、パターン情報と色情報とから元データである２×２画素のブロック５０２に復号化することができる。
【００５４】
従って、ブロックに含まれる各画素の色数が１色である場合に、予め定めた位置の画素（着目画素）の色データ及び当該ブロックにおける色の配置パターンを符号化し、また、ブロックに含まれる各画素の色数が２色以上である場合に、予め定めた位置の画素の色データ及び色の配置パターンに加えて、色数に応じた着目画素以外の画素の色データを符号化することとなる。各ブロックから求めたパターン情報と、低解像度画像データ（第１色の色情報）と、補間データ（第２〜４色の色情報）とは、それぞれ異なるメモリ領域（パターン情報格納部、低解像度画像データ格納部、補間データ格納部）に、各タイル内のブロックの並び順にしたがって格納する。
【００５５】
次に、タイル５０３を符号化した後のデータ構造について図５を用いて説明する。タイル５０３のデータ構造６０１は、ヘッダ情報６０２、パターン情報格納部６０３、低解像度画像データ格納部６０４及び補間データ格納部６０５から構成される。
【００５６】
ヘッダ情報６０２は、ページ画像５０１に対するタイル５０３の管理情報から構成される。本実施形態では、ページＩＤ６１０、タイル座標６１１、色空間６１２、画像データのビット数６１３、低解像度画像データ及び補間データ格納部のデータサイズ６１４、属性情報の有無６１５、及び画素削除フラグ６１６（削除情報）等を含む。
【００５７】
ページＩＤ６１０は、ページ単位にユニークとなるタイルのＩＤ番号を示す。タイル座標６１１は、ページ単位のラスタ画像上におけるタイル位置を示す。本実施形態では、Ｘ座標とＹ座標と２次元で座標指定するものとする。色空間６１２は、タイルを構成する画像の色空間（ＲＧＢ、ＣＭＹＫ等）を指定する識別子を示す。画素データのビット数６１３は、タイル内の１画素あたりのビット長（色深度）を示す。データサイズ６１４は、タイルを構成する画素の低解像度画像データ及び補間データのデータサイズを示す。属性情報の有無６１５は、タイルを構成する各画素が属性情報を有しているか否かを示す。
【００５８】
画素削除フラグ６１６は、本発明の画像処理における特徴であり、画素を行列単位で削除するための画素削除位置を指定するものである。画素削除フラグ６１６は、行（Ｘ方向）及び列（Ｙ方向）をそれぞれ独立に指定するものであり、タイルのＸ方向及びＹ方向の画素数分のデータ長で構成される。本実施形態では、タイルが８×８画素であり、画素削除フラグ長は、行、列共にそれぞれ８ビットである。
【００５９】
［符号化処理（Ｓ２０５）の詳細な処理手順（図６の６ａ、図７、図８）］
まず、図６の６ａに示す入力データ転送部７０１は、内部バス１３１に接続され、ＲＡＭ１１４又は記憶装置１２０に予め保持された処理対象データを取得する（Ｓ８０１）。処理対象データは、本実施形態では、ＰＤＬ処理部１１２で生成されたタイル形式の中間画像データである。すなわち、タイル毎に抽出した画像データを取得する。また、入力データ転送部７０１の動作に必要となる、データ転送開始アドレス番地、データ長等の不図示のレジスタ設定は、予めＣＰＵ１１３が行うものとする。そして、タイルから２×２画素のブロックを切り出し（Ｓ８０２）、図６の６ａに示す解像度符号化部７０２へ順次出力する。そして、解像度符号化部７０２は、入力データ転送部７０１から２×２画素からなるブロックが入力されると解像度符号化処理を行う（Ｓ８０３）。具体的には、図８で示すように、解像度符号化部７０２は、入力されたブロック内の各画素の色（画素値）を比較することにより、各ブロックに含まれる色の配置パターンを示すパターン情報を特定し、各ブロックが何色（１色、２色、３色、４色のいずれ）で構成されているかを判定する（Ｓ８１１、Ｓ８１３、Ｓ８１５）。判定結果に応じて、各ブロックの予め定めた位置の画素に対応する画素値から第１色の色情報を抽出し、更に、前記ブロックに含まれる色の数が２乃至４のいずれかであると判断したブロックからは、当該特定されたパターン情報で定義されている配置パターンに対応する第２〜４色の色情報を抽出する。そして、各ブロックのパターン情報と、第１色の色情報（低解像度画像データ）と、第２〜４色の色情報（補間データ）とを、それぞれのメモリ領域に順に格納していくことにより、当該タイルの符号化データを生成する（Ｓ８１２、Ｓ８１４、Ｓ８１６、Ｓ８１７）。なお、ブロック内が１色で構成される場合、第２〜４色は存在しないので、補間データはゼロになる。また、Ｓ８０３では、タイル内に含まれる各ブロックに対して、Ｓ８１１〜Ｓ８１７の処理が行われることになる。
【００６０】
図６の６ａに示す出力データ転送部７０３は、内部バス１３１に接続され、解像度符号化部７０２で生成される符号化データを、内部バス１３１に接続されるＲＡＭ１１４へ出力する。出力データ転送部７０３の動作に必要な、ＲＡＭ１１４上の画像書き出しアドレス番地、出力データ長等の不図示のレジスタ設定は、ＣＰＵ１１３が予め行うものとする。
【００６１】
上述した処理を、全てのタイルに対して繰り返し行い、全てのタイルの処理が終了したら符号化処理を終了する（Ｓ８０４）。
【００６２】
［画像処理（Ｓ３０３）の詳細な処理手順（図６の６ｂ、図９、図１０、図１１）］
ここで、本実施形態における画像処理部１２２の画像処理としての画素削除処理は、行列単位で行うものである。タイル単位で入力される符号化データに対して、タイルのヘッダ情報に画素削除すべき旨を示すフラグを付与することで、復号化することなく仮想的に画素削除処理を行う。
【００６３】
まず、図６の６ｂに示す入力データ転送部９０１は、内部バス１３１に接続され、ＲＡＭ１１４又は記憶装置１２０に予め保持された処理対象データを取得する（Ｓ１００１）。本実施形態における処理対象データは、符号化部１１８でタイル単位に符号化され、低解像度画像データ及び補間データからなる符号化データである。また、入力データ転送部９０１の動作に必要となる、データ転送開始アドレス番地、データ長等の不図示のレジスタ設定は、予めＣＰＵ１１３が行うものとする。そして、取得したタイル単位の符号化データを図６の６ｂに示す画素削除処理部９０２へ出力する。
【００６４】
そして、画素削除処理部９０２は、タイルの座標を取得する（Ｓ１００２）。座標取得は、タイルのヘッダ情報が有するタイル座標６１１を参照することで行う。次に、ページ画像に対する画素削除位置情報を取得する（Ｓ１００３）。画素削除位置情報は、ページ画像で削除すべき行、列を一行一列単位で指定したものである。画素削除位置情報は、予め指定された設定に応じて、ＣＰＵ１１３により画像処理部１２２が有する不図示のレジスタに設定されているものとする。
【００６５】
そして、Ｓ１００３で取得したページ画像における画素削除位置情報に応じて、取得した符号化データに対応するタイル内に削除すべき行、列が含まれるか否かを判定する（Ｓ１００４）。即ち、Ｓ１００２で取得したタイル座標からページ画像におけるタイルの位置を算出し、Ｓ１００３で取得したページの画素削除位置情報と座標比較し、タイル内に画素削除位置が含まれるか否かを判定する。タイル内に画素削除位置が含まれていれば、画素削除処理対象タイルと判定し、画素削除位置情報に従って、そのタイルの画素行及び画素列に対応する画素削除フラグの設定を行う（Ｓ１００５）。すなわち、画素削除対象の画素行及び画素列に対応する画素削除フラグをＯＮ（１）に設定する。一方、タイル内に画素削除位置が含まれていない場合には、そのタイルに対する画素削除処理に従った設定は行わない。すなわち、タイル内に画素削除位置が含まれていない場合、画素削除フラグは全てＯＦＦ（０）のままになる。
【００６６】
画素削除フラグ設定の具体例を、図１０及び図１１を用いて説明する。ページ画像１１０１に含まれるタイル１１０２に対して画素削除処理を行う場合を考える。ページ画像に対する画素削除位置情報として、ページのＸ座標の６行目１１１０とＹ座標の５、６列目１１２１、１１２２が設定されているものとする。これらの画素削除位置情報は、タイル１１０１においても、Ｘ座標の６行目と、Ｙ座標の５、６列目が画素削除位置となる。よって、タイル１１０１のデータ構造１１３１に関して、ヘッダ情報１１３２の画素削除フラグ１１４７は、行Ｘが０００００１００、列Ｙが００００１１００となる。画素削除フラグ１１４７を参照することで、タイル１１０２が符号化されている場合でも、どの画素が削除されるかを判定することが可能となる。
【００６７】
図６の６ｂに示す出力データ転送部９０３は、内部バス１３１に接続され、画像処理部１２２で処理済みのタイル単位の画像データを、内部バス１３１に接続されるＲＡＭ１１４へ出力する。出力データ転送部９０３の動作に必要な、ＲＡＭ１１４上の画像書き出しアドレス番地、出力データ長、等の不図示のレジスタ設定は、ＣＰＵ１１３が予め行うものとする。
【００６８】
上述した処理を全てのタイルに対して繰り返し行い、全てのタイルの処理が終了したら画素削除処理を終了する（Ｓ１００６）。
【００６９】
［復号化処理（Ｓ４０２）の詳細な処理手順（図６の６ｃ、図１２）］
まず、内部バス１３１に接続された入力データ転送部１２０１（図６の６ｃ）は、ＲＡＭ１１４又は記憶装置１２０に予め保持された処理対象データを取得する（Ｓ１３０１）。本実施形態における処理対象データは、符号化部１１８でタイル単位に符号化された後に、画像処理部１２２で画素行又は画素列が削除指定された符号化データとする。入力データ転送部１２０１の動作に必要となる、データ転送開始アドレス番地、データ長等の不図示のレジスタ設定は、予めＣＰＵ１１３が行うものとする。そして、タイルから２×２画素のブロックを切り出し（Ｓ１３０２）、解像度復号化部１２０２（図６の６ｃ）へ出力する。
【００７０】
解像度復号化部１２０２では、入力されたタイルのヘッダ情報が有する画素削除フラグを取得し（Ｓ１３０３）、入力されたタイルに対して画素の行、列を削除するか否かを判定する（Ｓ１３０４）。つまり、各行又は列に対応する画素削除フラグに有効ビット１があるか否かを判定する。有効ビット１がある場合には、画素削除フラグが指定する画素行又は画素列の削除指定を行う（Ｓ１３０５）。即ち、画素削除フラグとブロックとの関連付けを行って、各ブロック毎の削除位置の指定を行う。一方、有効ビット１が無い場合には、当該削除指定は行わない。そして、解像度復号化処理を行う（Ｓ１３０６）。
【００７１】
Ｓ１３０６では、図１２の１２ｂに示すように、まず、Ｓ１３０５で為された削除指定に基づいて、復号化を行う２×２画素を構成する各ブロック内の画素行又は画素列が削除指定されているか否かを判定する（Ｓ１３１１）。２×２画素ブロック全体が削除指定されている場合、当該ブロックの復号化処理を行わない。
【００７２】
一方、削除指定されている画素行又は画素列を全く含まないブロックに対しては、パターン情報を参照し、補間データ格納部１１３５から当該ブロックの補間データ（第２色乃至第４色の色情報）を読み出して復号化（Ｓ１３１２）し、低解像度画像データ格納部１１３４から当該ブロックの低解像度画像データ（第１色の色情報）の復号化（Ｓ１３１３）を行う。
【００７３】
また、削除指定された画素行または画素列を一部含むブロックの場合は、削除指定されていない画素行または画素列に対応する画素の復号化処理を行う。このとき、処理対象ブロックのパターン情報と削除指定されている画素行または画素列とに応じて、当該ブロックの補間データと低解像度画像データとのそれぞれに関して読み込む必要があるか判断する。例えば、図４に示されるように、パターン情報が「０ｘ４」のブロックの場合、第１色の色情報は左上の画素でだけ使用するので、当該左上の画素が削除対象の画素行または画素列に含まれる場合は、低解像度画像データ格納部１１３４から当該ブロックの低解像度画像データ（第１色の色情報）を読み込む必要がないと判断し、Ｓ１３１２で当該ブロックの補間データのみを読み込んで復号化し、Ｓ１３１３の処理はスキップする。また、ブロックのパターン情報が「０ｘ３」で且つ右上と右下の画素が削除対象であった場合、第２色の色情報は不要であるので、補間データを読み込む必要がないと判断し、Ｓ１３１２の処理はスキップし、Ｓ１３１３で当該ブロックの低解像度画像データを読み込んで左上と左下の画素を復号化する。
【００７４】
そして、タイル内に含まれる全てのブロックにおける画素の復号化が終了したら解像度復号化処理を終了する（Ｓ１３１４）。
【００７５】
上述した処理を、入力画像に含まれる全てのタイルに対して繰り返し行い、全タイルに対する処理が終了したら復号化処理を終了する（Ｓ１３０７）。この復号化処理済みの画像データは、図６の６ｃに示す出力データ転送部９０３を介して、内部バス１３１に接続されるＲＡＭ１１４へ出力される。出力データ転送部９０３の動作に必要な、ＲＡＭ１１４上の画像書き出しアドレス番地、出力データ長等の不図示のレジスタ設定は、ＣＰＵ１１３が予め行うものとする。
【００７６】
以上述べた通り、本実施形態によれば、符号化された画像データを復号化することなく、削除対象の画素行又は画素列を指定することが可能となる。また、復号化を行う際に削除指定がなされた画素行又は画素列を含むブロックを復号化することなく、削除指定がなされた画素行又は画素列を含まないブロックのみを復号化することが可能となる。
【００７７】
（他の実施形態）
本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェア（プログラム）をネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ（又はＣＰＵやＭＰＵ等）がプログラムコードを読み出して実行する処理である。この場合、そのプログラム、及び該プログラムを記憶した記憶媒体は本発明を構成することになる。
【図１】
0005479225.tif 000002
【図２】
0005479225.tif 000003
【図３】
0005479225.tif 000004
【図４】
0005479225.tif 000005
【図５】
0005479225.tif 000006
【図６】
0005479225.tif 000007
【図７】
0005479225.tif 000008
【図８】
0005479225.tif 000009
【図９】
0005479225.tif 000010
【図１０】
0005479225.tif 000011
【図１１】
0005479225.tif 000012
【図１２】
0005479225.tif 000013