(57)【要約】【課題】  符号化データを先頭からバイト毎にその値を調べる必要が無く、高速に符号化処理及び復号化処理を行う。【解決手段】  予め設定された特定データを主記憶部２０００に格納し、その特定データの排出順番を指定するデータをＡ記憶部１１０１に記憶し、コーデック部１０００が符号化処理を実行する際に、Ａ記憶部１１０１に記憶された排出順番に従って、主記憶部２０００から特定データを読み出し、符号化データとして排出するように制御する。【選択図】      図１
2005167631.tif 000002
【特許請求の範囲】
【請求項１】
画像データを符号化処理し、符号化データとして排出する画像符号化装置の符号化制御方法であって、
予め設定された特定データを特定領域に格納する工程と、
前記特定領域に格納した特定データの排出順番を指定する工程と、
前記符号化処理を実行する際に、前記排出順番に従って前記特定領域から特定データを読み出し、符号化データとして排出するように制御する工程と、
を有することを特徴とする符号化制御方法。
【請求項２】
前記指定する工程は、前記画像データの符号化処理に関するデータに対する排出順番を更に指定することを特徴とする請求項１に記載の符号化制御方法。
【請求項３】
前記特定データは、ＪＰＥＧ符号化方式におけるＡＰＰマーカ・セグメント又はＣＯＭマーカ・セグメントであることを特徴とする請求項１に記載の符号化制御方法。
【請求項４】
前記特定データは、ＭＰＥＧ符号化方式におけるユーザ・データであることを特徴とする請求項１に記載の符号化制御方法。
【請求項５】
符号化データを復号化処理し、再構成画像を生成する画像符号化装置の復号化制御方法であって、
前記復号化処理を実行する際に、符号化データから特定データを検出する工程と、
前記検出された特定データを特定領域に格納する工程と、
前記特定領域に格納された特定データの検出順番を記憶する工程と、
を有することを特徴とする復号化制御方法。
【請求項６】
前記特定データは、ＪＰＥＧ符号化方式におけるＡＰＰマーカ・セグメント又はＣＯＭマーカ・セグメントであることを特徴とする請求項５に記載の復号化制御方法。
【請求項７】
前記特定データは、ＭＰＥＧ符号化方式におけるユーザ・データであることを特徴とする請求項５に記載の復号化制御方法。
【請求項８】
画像データを符号化処理し、符号化データとして排出する画像符号化装置であって、
予め設定された特定データを特定領域に格納する手段と、
前記特定領域に格納した特定データの排出順番を指定する手段と、
前記符号化処理を実行する際に、前記排出順番に従って前記特定領域から特定データを読み出し、符号化データとして排出するように制御する手段と、
を有することを特徴とする画像符号化装置。
【請求項９】
符号化データを復号化処理し、再構成画像を生成する画像符号化装置であって、
前記復号化処理を実行する際に、符号化データから特定データを検出する手段と、
前記検出された特定データを特定領域に格納する手段と、
前記特定領域に格納された特定データの検出順番を記憶する手段と、
を有することを特徴とする画像符号化装置。
【請求項１０】
コンピュータを請求項８又は請求項９に記載の画像符号化装置として機能させるためのプログラム。
【請求項１１】
請求項１０に記載のプログラムが記録されたコンピュータ読み取り可能な記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像データを符号化処理し、符号化データとして排出する又は符号化データを復号化処理し、再構成画像として格納する画像符号化装置の符号化技術及び復号化技術に関するものである。
【背景技術】
【０００２】
従来、ＣＤ−ＲＯＭやハードディスク（ＨＤ）等の蓄積媒体に静止画像を保存又は表示するための符号化方式として、ＩＳＯ（国際標準化機構）によって標準化されたＪＰＥＧ（Joint Photographic Experts Group）方式が広く用いられている。また、動画像を同様な蓄積媒体に保存又は表示、或いは通信路を介して放送又は双方向通信を行うための符号化方式として、ＩＳＯによって標準化されたＭＰＥＧ（Moving Picture Experts Group）方式が広く用いられている。
【０００３】
ＪＰＥＧ方式、ＭＰＥＧ方式の何れにおいても、画像の符号化処理や復号化処理に必須ではないが、操作者の意向によりその画像と共に記憶しておきたい属性情報などを符号化データ内に含めることができるように、ＪＰＥＧ方式では、ＡＰＰマーカ・セグメントとＣＯＭマーカ・セグメントが用意されており、ＭＰＥＧ方式では、ユーザ・データ領域が用意されている。
【０００４】
図１１は、従来の画像符号化装置の概略構成を示すブロック図である。図１１において、１はコーデック部であり、画像データを符号化し、符号化データの生成、或いは符号化データを復号化して再構成画像データの生成を行う。２は主記憶部であり、画像データや符号化データを記憶する。３はＤＭＡコントローラ部であり、コーデック部１と主記憶部２との間におけるデータ転送を制御する。４はＣＰＵ部であり、コーデック部１と主記憶部２とを制御する。
【０００５】
図１１に示した従来の画像符号化装置の符号化処理において、ＡＰＰ／ＣＯＭマーカ・セグメントやユーザ・データを含む符号化データを生成する際に、まずコーデック部１がそれらを含まない符号化データを生成する符号化処理を実行し、生成した符号化データを主記憶部２に記憶する。次に、ＣＰＵ部４が主記憶部２から符号化データを順次読み出し、符号化データ内の所望の位置にＡＰＰ／ＣＯＭマーカ・セグメントやユーザ・データを挿入し、再び主記憶部２に書き込み、符号化データを生成している。
【０００６】
また、図１１に示した従来の画像符号化装置の復号化処理において、符号化データに含まれるＡＰＰ／ＣＯＭマーカ・セグメントやユーザ・データを抽出する際に、まずＣＰＵ部４が主記憶部２に記憶された符号化データを順次読み出し、それらのデータを探索し、検出できた当該データ部分を抽出して別途主記憶部２に記憶する。その後、コーデック部１が符号化データの復号化処理を実行し、生成された再構成画像を主記憶部２に記憶している。
【特許文献１】特開平１０−４２２３２号公報
【発明の開示】
【発明が解決しようとする課題】
【０００７】
即ち、上記従来の画像符号化装置では、ＡＰＰ／ＣＯＭマーカ・セグメントやユーザ・データを含む符号化処理を行う場合、コーデック部１による符号化処理後に別途ＣＰＵ部４によるＡＰＰ／ＣＯＭマーカ・セグメントやユーザ・データを生成された符号化データへ挿入するという処理が必要であり、これは挿入箇所を特定するために、符号化データの先頭からバイト毎にその値を調べていかなければならず、長い処理時間を要していた。
【０００８】
また、従来の画像符号化装置において、ＡＰＰ／ＣＯＭマーカ・セグメントやユーザ・データを含む復号化処理を行う場合も、コーデック部１による復号化処理を行う前に別途ＣＰＵ部４による符号化データからＡＰＰ／ＣＯＭマーカ・セグメントやユーザ・データを探索して抽出する処理が必要であり、この探索では符号化データの先頭からバイト毎にその値を調べていかなければならず、長い処理時間を要していた。
【０００９】
本発明は、符号化処理又は復号化処理に要する処理時間を短縮し、高速に処理することを目的とする。
【課題を解決するための手段】
【００１０】
本発明は、画像データを符号化処理し、符号化データとして排出する画像符号化装置の符号化制御方法であって、予め設定された特定データを特定領域に格納する工程と、前記特定領域に格納した特定データの排出順番を指定する工程と、前記符号化処理を実行する際に、前記排出順番に従って前記特定領域から特定データを読み出し、符号化データとして排出するように制御する工程とを有することを特徴とする。
【００１１】
また、本発明は、符号化データを復号化処理し、再構成画像を生成する画像符号化装置の復号化制御方法であって、前記復号化処理を実行する際に、符号化データから特定データを検出する工程と、前記検出された特定データを特定領域に格納する工程と、前記特定領域に格納された特定データの検出順番を記憶する工程とを有することを特徴とする。
【発明の効果】
【００１２】
本発明によれば、符号化処理又は復号化処理に要する処理時間を短縮でき、高速に処理を行うことができる。
【発明を実施するための最良の形態】
【００１３】
以下、図面を参照しながら発明を実施するための最良の形態について詳細に説明する。尚、本実施例では、カラーファクシミリやディジタルカメラ等に適用され、ＪＰＥＧ符号化方式で符号化処理或いは復号化処理を行う画像符号化装置を例に説明する。
【００１４】
［装置の概略構成］
図１は、本実施例における画像符号化装置の概略構成を示すブロック図である。図１において、１０００はコーデック部であり、画像データを符号化し、符号化データの生成、或いは符号化データを復号化して再構成画像データの生成を行う。２０００は主記憶部であり、画像データや符号化データを記憶する。３０００はＤＭＡコントローラ部であり、コーデック部１０００と主記憶部２０００との間におけるデータ転送を制御する。そして、４０００はＣＰＵ部であり、コーデック部１０００と主記憶部２０００を制御する。
【００１５】
コーデック部１０００内において、１１００は制御部であり、コーデック部１０００の制御を行う。１２００は演算処理部であり、コーデック部１０００内において画像データの符号化処理及び符号化データの復号化処理を行う。１３００はデータ多重・分離部であり、コーデック部１０００内においてＤＭＡコントローラ部３０００から入力されるデータをそのアドレスに従って制御部１１００又は演算処理部１２００に振り分けたり、逆に制御部１１００と演算処理部１２００とから出力されるデータを多重化してＤＭＡコントローラ部３０００へ出力する。
【００１６】
コーデック部１０００内の制御部１１００において、１１０１はＡ記憶部であり、符号化処理の際に排出するマーカ・セグメントの排出順番を記憶する一方、復号化処理の際に符号化データ内に出現したマーカ・セグメントの種類とその出現順番を記憶する。１１０２はＢ記憶部であり、符号化処理の際に排出されるＡＰＰ／ＣＯＭマーカ・セグメントを予め設定しておき、復号化処理の際に符号化データから抽出されたＡＰＰ／ＣＯＭマーカ・セグメントが格納される主記憶部２０００上の領域の開始アドレスを記憶する。
【００１７】
尚、以下の説明において、Ｂ記憶部１１０２にその開始アドレスが記憶された主記憶部２０００上の領域を「ストリーム・バッファ」と呼ぶ。
【００１８】
［画像符号化処理］
次に、図１〜図７を用いて本実施例における画像符号化装置の動作形態について、その符号化処理に関する一連の動作、特に主記憶部２０００上のストリーム・バッファの構築手順とそれを用いた符号化処理の手順を中心に説明する。
【００１９】
図２は、主記憶部２０００に設けられたストリーム・バッファを示すメモリ・マップである。図３は、符号化処理におけるストリーム・バッファの構成を示すメモリ・マップである。図４は、符号化処理において排出される各種マーカ・セグメントの排出順番を示すＡ記憶部１１０１のアドレス・マップである。図５は、符号化処理及び復号化処理における共通の前処理手順を表すフローチャートである。図６は、符号化処理における前処理手順を表すフローチャートである。図７は、本実施例における符号化処理手順を表すフローチャートである。
【００２０】
まず、ステップＳ１０１において、ＣＰＵ部４０００はコーデック部１０００が実際に符号化処理を行う前に、図２に示すように、主記憶部２０００上にストリーム・バッファとして十分な領域を確保する。本実施例では、図２に示した主記憶部２０００のアドレス「０ｘ２０００００００」をストリーム・バッファの開始アドレスとする。また、図３に示すストリーム・バッファで用いられているアドレスは主記憶部２０００の物理アドレス「０ｘ２０００００００」からのオフセット・アドレスであり、各アドレスに４バイトのデータを記憶可能である。
【００２１】
次に、ステップＳ１０２において、図３に示すストリーム・バッファ内のオフセット・アドレス「０ｘ００００」にはストリーム・バッファ全体のバイト長として「０ｘ００００２０００」を書き込み、オフセット・アドレス「０ｘ０００４」にはストリーム・バッファ識別子としてアスキーコードで“ｓｂｕｆ”を書き込む。そして、ステップＳ１０３において、コーデック部１０００内の制御部１１００のＢ記憶部１１０２にストリーム・バッファの開始アドレス「０ｘ２０００００００」を格納する。これにより、符号化処理において用いられる空のストリーム・バッファが主記憶部２０００上に構築される。
【００２２】
次に、ＣＰＵ部４０００は、図６に示す符号化処理専用の前処理を主記憶部２０００とＡ記憶部１１０１に対して行う。ステップＳ２０１において、ストリーム・バッファ上に設定される排出すべき各ＡＰＰ／ＣＯＭマーカ・セグメントに対応したバッファに対するオフセット・アドレスの一覧を格納するストリーム・インデックスを構築する。具体的には、図３に示すストリーム・バッファにおいて、オフセット・アドレス「０ｘ０００８」に４個分のバッファ用インデックスを格納するに十分な領域として、そのバイト長「０ｘ００００００１８」を書き込む。そして、続くオフセット・アドレス「０ｘ０００Ｃ」にストリーム・インデックス識別子としてアスキーコードで“ｓｉｄｘ”を書き込む。
【００２３】
次に、ステップＳ２０２において、排出すべきＡＰＰ／ＣＯＭマーカ・セグメントの数の合計をＮとする。そして、ステップＳ２０３において、パラメータｉを“０”に初期化し、ステップＳ２０４において、パラメータｉが排出すべき合計より小さいか否かを判定する。ここで、パラメータｉが排出すべき合計より小さければステップＳ２０５へ進み、図３に示すストリーム・バッファ＃ｉの先頭アドレス（バイト長が格納されるバッファ）のオフセット・アドレス（ｉ＝０であれば「０ｘ００２０」、ｉ＝１であれば「０ｘ００５０」、…）をストリーム・インデックスとしてオフセット・アドレス（ｉ＝０であれば「０ｘ００１０」、ｉ＝１であれば「０ｘ００１４」、…）に書き込む。
【００２４】
次に、ステップＳ２０６において、ストリーム・バッファ＃ｉへの先頭アドレス（ｉ＝０であれば「０ｘ００２０」、ｉ＝１であれば「０ｘ００５０」、…）にバイト長を書き込み、ストリーム・バッファ＃ｉの次のアドレス（ｉ＝０であれば「０ｘ００２４」、ｉ＝１であれば「０ｘ００５０」、…）にストリーム・バッファ＃ｉ識別子としてアスキーコード（ｉ＝０であれば“ｓｂ００”、ｉ＝１であれば“ｓｂ０１”、…）を書き込み、ストリーム・バッファ＃ｉを構築する。そして、ステップＳ２０７において、ストリーム・バッファ＃ｉの次のアドレスに符号化データへ排出すべきマーカ・セグメント（ｉ＝０であればＣＯＭ、ｉ＝１であればＡＰＰ０、…）を格納し、ストリーム・バッファ＃ｉを完成する。
【００２５】
次に、ステップＳ２０８では、パラメータｉをインクリメントし、ステップＳ２０４に戻り、排出すべきＡＰＰ／ＣＯＭマーカ・セグメントの数だけストリーム・バッファへの設定が完了するとステップＳ２０９へ進み、図４に示すように、ＡＰＰ／ＣＯＭマーカ・セグメントを格納したストリーム・バッファ番号を所望の順番でＡ記憶部１１０１に他のマーカ・セグメントの排出順番と共に指定する。
【００２６】
図４において、Ａ記憶部１１０１はアドレス毎に１バイトのデータが格納可能であり、各種マーカ・セグメントに対応したマーカ・コードの下位１バイトが格納され、アドレスの若い番号に設定されたマーカ・コードに対応したマーカ・セグメントから順次符号処理の際に符号化データとして排出される。また、ストリーム・バッファに格納されたＡＰＰ／ＣＯＭマーカ・セグメントの排出を指定するには、「０ｘＢ０」〜「０ｘＢＦ」の１６種類の番号によってストリーム・バッファ＃０〜＃１５を指定することが可能である。
【００２７】
尚、「０ｘＢ０」〜「０ｘＢＦ」に対応するマーカ・コードはＪＰＥＧ符号化方式では使用されていないことに注意されたい。
【００２８】
例えば、図４に示す排出順番指定では、ＳＯＩ（Start of Image）マーカ・セグメントが排出された後、ＡＰＰ／ＣＯＭマーカ・セグメントの排出を指定する「０ｘＢ０」からストリーム・バッファ＃０に格納されたＣＯＭマーカ・セグメントが排出され、その次にＤＲＩ（Define Reset Interval）マーカ・セグメント、更にストリーム・バッファ＃１に格納されたＡＰＰ０マーカ・セグメントが排出され、その後、ＤＨＴ（Define Huffman Table）マーカ・セグメント→ＤＱＴ（Define Quantization Table）マーカ・セグメント→ＳＯＦ（Start of Frame）０マーカ・セグメント→ＳＯＳ（Start of Scan）マーカ・セグメント→ＥＯＩ（End of Image）マーカ・コードと順次排出される。
【００２９】
次に、図５及び図６に示す共通前処理及び符号化前処理が終了すると、図７に示す符号化処理がコーデック部１０００によって行われる。
【００３０】
まず、ステップＳ３０１において、コーデック部１０００の制御部１１００は、Ａ記憶部１１０１に格納されたマーカ・セグメントの数の合計をＭとする。そして、ステップＳ３０２において、パラメータｊを“０”に初期化し、ステップＳ３０３において、パラメータｊがマーカ・セグメントの合計より小さいか否かを判定する。ここで、パラメータｊが合計より小さければステップＳ３０４へ進み、排出順番に従って演算処理部１２００と協働しながら、各種マーカ・セグメントを符号化データとして排出していく。ここでは、ステップＳ３０４において、パラメータｊでインデックスされるＡ記憶部１１０１に格納されたバイト・データがストリーム・バッファを指定する「０ｘＢ０」〜「０ｘＢＦ」の何れかであるか否かを判定し、ストリーム・バッファを指定するバイト・データであった場合はステップＳ３０５へ進み、ストリーム・バッファ上のストリーム・インデックスから所望の番号のストリーム・バッファに対する開始アドレスを得て、設定されたＡＰＰ／ＣＯＭマーカ・セグメントを符号化データとして排出する。そして、ステップＳ３０７において、パラメータｊをインクリメントし、ステップＳ３０３に戻り、Ａ記憶部１１０１に格納されたマーカ・セグメントの数だけ、上述の処理を繰り返す。
【００３１】
一方、ステップＳ３０４において、パラメータｊでインデックスされるＡ記憶部１１０１に格納されたバイト・データがストリーム・バッファを指定する「０ｘＢ０」〜「０ｘＢＦ」以外であった場合はステップＳ３０６へ進み、図４に示した各マーカ・セグメントの種類に適した処理を行い、符号化データとして排出する。そして、ステップＳ３０７において、パラメータｊをインクリメントし、ステップＳ３０３に戻り、Ａ記憶部１１０１に格納されたマーカ・セグメントの数だけ、上述の処理を繰り返す。
【００３２】
［復号化処理］
次に、図１、図２、図５、図８〜図１０を用いて本実施例における画像符号化装置の動作形態について、その復号化処理に関する一連の動作、特に主記憶部２０００上へのストリーム・バッファの構築手順とそれを用いた復号化処理手順を中心に説明する。
【００３３】
図８は、復号化処理におけるストリーム・バッファの構成を示すメモリ・マップである。図９は、復号化処理における前処理手順を表すフローチャートである。図１０は、本実施例における復号化処理手順を表すフローチャートである。
【００３４】
まず、ステップＳ１０１において、ＣＰＵ部４０００はコーデック部１０００が実際の復号化処理を行う前に、図８に示すように、主記憶部２０００上にストリーム・バッファとして十分な領域を確保する。実施例２では、図８に示した主記憶部２０００のアドレス「０ｘ２０００００００」をストリーム・バッファの開始アドレスとする。また、図８に示すストリーム・バッファで用いられているアドレスは主記憶部２０００の物理アドレス「０ｘ２０００００００」からのオフセット・アドレスであり、各アドレスに４バイトのデータを記憶可能である。
【００３５】
次に、ステップＳ１０２において、ストリーム・バッファのアドレス「０ｘ００００」にはストリーム・バッファ全体のバイト長として「０ｘ００００２０００」を書き込み、続くアドレス「０ｘ０００４」にはストリーム・バッファ識別子としてアスキーコードで“ｓｂｕｆ”を書き込む。そして、ステップＳ１０３において、制御部１１００のＢ記憶部１１０２にストリーム・バッファの開始アドレス「０ｘ２０００００００」を格納する。これにより、復号化処理において用いられる空のストリーム・バッファが主記憶部２０００上に構築される。
【００３６】
次に、ＣＰＵ部４０００は、図９に示す復号化処理専用の前処理を主記憶部２０００に対して行う。ステップＳ４０１において、復号化処理対象の符号化データに含まれるＡＰＰ／ＣＯＭマーカ・セグメントを抽出し格納するために十分な数のバッファに対するオフセット・アドレスの一覧を格納するストリーム・インデックスを構築する。尚、本実施例では、４個までのＡＰＰ／ＣＯＭマーカ・セグメントを格納するバッファを設けることで十分とする。即ち、図８に示すストリーム・バッファにおいて、オフセット・アドレス「０ｘ０００８」に４個分のバッファ用インデックスを格納するに十分な領域として、そのバイト長「０ｘ００００００１８」を書き込む。そして、続くアドレス「０ｘ０００Ｃ」にストリーム・インデックス識別子としてアスキーコードで“ｓｉｄｘ”を書き込む。
【００３７】
次に、ステップＳ４０２において、格納可能な最大のストリーム・バッファの数をＮ＿ＭＡＸとする。そして、ステップＳ４０３において、パラメータｉを“０”に初期化し、ステップＳ４０４において、パラメータｉが最大のバッファの数より小さいか否かを判定する。ここで、パラメータｉが小さければステップＳ４０５へ進み、パラメータｉ番目のストリーム・バッファ＃ｉに対応するオフセット・アドレス（この例では、ストリーム・バッファ＃０〜３に対応する「０ｘ００１０」〜「０ｘ００１Ｃ」）に値“０ｘ００００００００”を書き込む。そして、ステップＳ４０６において、パラメータｉをインクリメントし、ステップＳ４０４に戻り、最大のストリーム・バッファの数だけ書き込みを終了すると、この処理を終了する。
【００３８】
次に、図５及び図９に示す共通前処理及び復号化前処理が終了すると、図１０に示す復号化処理がコーデック部１０００によって行われる。
【００３９】
まず、ステップＳ５０１において、コーデック部１０００の制御部１１００は格納可能な最大ストリーム・バッファの数をＮ＿ＭＡＸとし、ステップＳ５０２において、Ａ記憶部１１０１に格納可能な最大マーカ・セグメントの数をＭ＿ＭＡＸとする。そして、ステップＳ５０３において、パラメータｊ、ｋを共に“０”に初期化し、ステップＳ５０４において、入力される符号化データに対して、その先頭からマーカ・コードを検出する処理を実行する。
【００４０】
このマーカ・コード検出処理において、制御部１１００がＥＯＩマーカ・コードを検出すると（ステップＳ５０５のＹｅｓ）、実行中の復号化処理を完了する。また、Ａ記憶部１１０１に格納可能な最大マーカ・セグメント数を超える数のマーカ・セグメントが検出されると（ステップＳ５０６のＮｏ）、実行中の復号化処理を完了する。
【００４１】
ここで、ＡＰＰマーカ・コード又はＣＯＭマーカ・コードが検出されると（ステップＳ５０７のＹｅｓ）、格納可能な最大ストリーム・バッファの数以内であれば（ステップＳ５０８のＹｅｓ）、検出されたＡＰＰ／ＣＯＭマーカ・セグメントをストリーム・バッファへ格納する（ステップＳ５０９）。そして、そのＡＰＰ／ＣＯＭマーカ・セグメントに対応するストリーム・バッファの番号（０ｘＢ０〜０ｘＢ３）をＡ記憶部１１０１に格納し（ステップＳ５１０）、パラメータｋ、ｊをインクリメントして（ステップＳ５１１，Ｓ５１４）再びマーカ・コード検出処理を実行する（ステップＳ５０４）。尚、マーカ・コード検出処理において、図９に示す復号化前処理で確保した４個を超える数のＡＰＰ／ＣＯＭマーカ・セグメントが検出された場合（ステップＳ５０８のＮｏ）は当該マーカ・セグメントを読み捨て、ストリーム・バッファに格納しない。
【００４２】
一方、ＡＰＰマーカ・コード及びＣＯＭマーカ・コード以外のマーカ・コードが検出されると（ステップＳ５０７のＮｏ）、制御部１１００と演算処理部１２００はその種別に応じて適切な復号化処理を実行する（ステップＳ５１２）。そして、検出されたマーカ・セグメントに対するマーカ・コードの下位１バイトをＡ記憶部１１０１に格納し（ステップＳ５１３）、パラメータｊをインクリメントして（ステップＳ５１４）制御部１１００は再びマーカ・コード検出処理を実行する（ステップＳ５０４）。
【００４３】
尚、本実施例ではＪＰＥＧ符号化方式を適用して説明したが、本発明はＭＰＥＧ符号化方式の符号化処理におけるユーザ・データの排出及び復号化処理におけるユーザ・データの抽出に対しても同様に適用可能である。
【００４４】
他の実施例として、本発明は複数の機器（例えばホストコンピュータ、インタフェース機器、リーダ、プリンタなど）から構成されるシステムに適用しても良いし、一つの機器からなる装置（例えば、複写機、ファクシミリ装置など）に適用しても良い。
【００４５】
また、本発明の目的は、前述した実施形態の機能を実現するソフトウェアのプログラムコードを記録した記憶媒体（又は記録媒体）を、システム或いは装置に供給し、そのシステム或いは装置のコンピュータ（又はＣＰＵやＭＰＵ）が記憶媒体に格納されたプログラムコードを読み出し実行することによっても、達成されることは言うまでもない。
【００４６】
この場合、記憶媒体から読み出されたプログラムコード自体が前述した実施形態の機能を実現することになり、そのプログラムコードが記憶された記憶媒体は本発明を構成することになる。また、コンピュータが読み出したプログラムコードを実行することにより、前述した実施形態の機能が実現されるだけでなく、そのプログラムコードの指示に基づき、コンピュータ上で稼働しているオペレーティングシステム（ＯＳ）などが実際の処理の一部又は全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【００４７】
更に、記憶媒体から読み出されたプログラムコードが、コンピュータに挿入された機能拡張カードやコンピュータに接続された機能拡張ユニットに備わるメモリに書込まれた後、そのプログラムコードの指示に基づき、その機能拡張カードや機能拡張ユニットに備わるＣＰＵなどが実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【図面の簡単な説明】
【００４８】
【図１】本実施例における画像符号化装置の概略構成を示すブロック図である。
【図２】主記憶部２０００に設けられたストリーム・バッファを示すメモリ・マップである。
【図３】符号化処理におけるストリーム・バッファの構成を示すメモリ・マップである。
【図４】符号化処理において排出される各種マーカ・セグメントの排出順番を示すＡ記憶部１１０１のアドレス・マップである。
【図５】符号化処理及び復号化処理における共通の前処理手順を表すフローチャートである。
【図６】符号化処理における前処理手順を表すフローチャートである。
【図７】本実施例における符号化処理手順を表すフローチャートである。
【図８】復号化処理におけるストリーム・バッファの構成を示すメモリ・マップである。
【図９】復号化処理における前処理手順を表すフローチャートである。
【図１０】本実施例における復号化処理手順を表すフローチャートである。
【図１１】従来の画像符号化装置の概略構成を示すブロック図である。
【符号の説明】
【００４９】
１０００  コーデック部
１１００  制御部
１１０１  Ａ記憶部
１１０２  Ｂ記憶部
１２００  演算処理部
１３００  データ多重・分離部
２０００  主記憶部
３０００  ＤＭＡコントローラ部
４０００  ＣＰＵ部
【図１】
2005167631.tif 000003
【図２】
2005167631.tif 000004
【図３】
2005167631.tif 000005
【図４】
2005167631.tif 000006
【図５】
2005167631.tif 000007
【図６】
2005167631.tif 000008
【図７】
2005167631.tif 000009
【図８】
2005167631.tif 000010
【図９】
2005167631.tif 000011
【図１０】
2005167631.tif 000012
【図１１】
2005167631.tif 000013