(57)【特許請求の範囲】
【請求項１】
画素データの予測値である予測値データを順次生成する予測値データ生成部と、
前記画素データと前記予測値データとの差である予測誤差データを順次生成する予測誤差データ生成部と、
前記予測誤差データを順次符号化して、設定される最大符号長以下で符号長が可変である可変長符号データを順次生成する符号化部と、
前記符号化部を順次制御する符号化制御部と、を備え、
所定数の前記画素データを順次処理して、前記所定数の前記可変長符号データを順次生成する間、
前記符号化制御部が、
前記符号化部が生成した前記可変長符号データの符号長と、前記所定数の前記画素データに対して設定される目標圧縮率を前記画素データの符号長に乗じて得られる目標符号長と、の差分を累積することで、累積値を順次算出し、
前記所定数の前記可変長符号データが生成された時点での前記累積値が、０以下になるように、
前記累積値と、前記可変長符号データの生成の進捗度を示す符号化回数とに基づいて、前記最大符号長を順次設定することを特徴とする符号化装置。
【請求項２】
前記符号化制御部が、前記符号化回数に応じて決定される前記累積値の限界値と、前記累積値との差分に応じた長さの前記最大符号長を、設定することを特徴とする請求項１に記載の符号化装置。
【請求項３】
前記累積値が前記限界値よりも大きい場合、前記符号化制御部が、前記目標符号長よりも短い前記最大符号長を設定することを特徴とする請求項２に記載の符号化装置。
【請求項４】
前記限界値が、前記符号化回数の増大に伴い、連続的または段階的に減少するものであり、少なくとも前記符号化回数が前記所定数に達するまでには０になることを特徴とする請求項２または３に記載の符号化装置。
【請求項５】
前記符号化制御部が、前記累積値及び前記符号化回数に基づいて成否が決まる第１条件を、少なくとも１つ有し、
前記符号化制御部が、前記第１条件を満たさない状態から満たす状態へと遷移した場合、遷移前よりも短い前記最大符号長を設定することを特徴とする請求項１〜４のいずれか１項に記載の符号化装置。
【請求項６】
前記符号化制御部が、前記累積値及び前記符号化回数に基づいて成否が決まる第２条件を、少なくとも１つ有し、
前記符号化制御部が、前記第２条件を満たさない状態から満たす状態へと遷移した場合、遷移前よりも長い前記最大符号長を設定することを特徴とする請求項１〜５のいずれか１項に記載の符号化装置。
【請求項７】
前記符号化制御部が、前記累積値及び前記符号化回数に基づいて成否が決まる第１条件及び第２条件を、それぞれ少なくとも１つずつ有し、
前記符号化制御部が、前記第１条件を満たさない状態から満たす状態へと遷移した場合、遷移前よりも短い前記最大符号長を設定し、前記第２条件を満たさない状態から満たす状態へと遷移した場合、遷移前よりも長い前記最大符号長を設定するものであり、
前記符号化回数が所定の値であるとき、
前記累積値が第１閾値よりも大きくなることで、前記第１条件の１つを満たさない状態から満たす状態へと遷移する場合は、前記符号化制御部が設定する前記最大符号長が、第１符号長から第２符号長になり、
前記累積値が第２閾値よりも小さくなることで、前記第２条件の１つを満たさない状態から満たす状態へと遷移する場合は、前記符号化制御部が設定する前記最大符号長が、前記第２符号長から前記第１符号長へと短くなり、
前記第１閾値は、前記第２閾値よりも大きいことを特徴とする請求項１〜６のいずれか１項に記載の符号化装置。
【請求項８】
前記符号化部が、
前記予測誤差データを、所定の量子化係数で量子化することによって、量子化予測誤差データを順次生成する量子化部と、
所定の符号化方式に従って、前記量子化予測誤差データに対応した前記可変長符号データを順次生成する可変長符号データ生成部と、
を備えることを特徴とする請求項１〜７のいずれか１項に記載の符号化装置。
【請求項９】
前記符号化制御部が、前記累積値及び前記符号化回数に基づいて、前記量子化部に適用される前記量子化係数を選択し、選択された当該量子化係数と、前記符号化方式とに応じて、前記最大符号長が設定されることを特徴とする請求項８に記載の符号化装置。
【請求項１０】
１つの前記画素データが、複数の成分データを含み、
前記予測値データ生成部が、前記成分データ毎の前記予測値データを生成し、
前記予測誤差データ生成部が、前記成分データ毎の前記予測誤差データを生成し、
前記量子化部が、前記成分データ毎の前記量子化係数で、前記成分データ毎の前記予測誤差データをそれぞれ量子化することによって、前記成分データ毎の前記量子化予測誤差データを生成し、
前記可変長符号データ生成部が、前記成分データ毎の前記量子化予測誤差データに対応した前記成分データ毎の前記可変長符号データを生成し、
前記符号化制御部が、前記成分データ毎の前記可変長符号データの全体の符号長と、前記目標符号長との差分を累積することで前記累積値を算出し、当該累積値及び前記符号化回数に基づいて、前記量子化部に適用される前記成分データ毎の前記量子化係数をそれぞれ選択することを特徴とする請求項９に記載の符号化装置。
【請求項１１】
前記符号化制御部が、前記累積値及び前記符号化回数に基づいて、前記可変長符号データ生成部に適用する前記符号化方式を選択し、選択された前記符号化方式と前記量子化係数とに応じて、前記最大符号長が設定されることを特徴とする請求項８〜１０のいずれか１項に記載の符号化装置。
【請求項１２】
前記可変長符号データ生成部が、
前記量子化予測誤差データの絶対値が大きくなるほど大きな値になり、前記量子化予測誤差データの絶対値が０である場合に０であり、かつ前記量子化予測誤差データと１対１で対応する符号化用変数へ、前記量子化予測誤差データを変換し、
前記符号化用変数が小さいほど、符号長が短い前記可変長符号データを生成することを特徴とする請求項８〜１１のいずれか１項に記載の符号化装置。
【請求項１３】
前記予測値データ生成部が、
順次生成する前記予測値データを一時的に順次保持し、
前記量子化部が生成する前記量子化予測誤差データに前記量子化係数を乗じることで得られる逆量子化予測誤差データと、予測対象の画素データに近接する画素データに対して生成した予め保持する少なくとも１つの前記予測値データと、を用いて新たな予測値データを生成することを特徴とする請求項８〜１２のいずれか１項に記載の符号化装置。
【請求項１４】
前記予測値データ生成部が、
順次生成する前記予測値データを一時的に順次保持し、
前記量子化部が生成する前記量子化予測誤差データに前記量子化係数を乗じることで得られる逆量子化予測誤差データに、直近に保持した前記予測値データを加算することで、新たな予測値データを生成することを特徴とする請求項８〜１３のいずれか１項に記載の符号化装置。
【請求項１５】
前記符号化制御部が、
前記予測誤差データが０になる状況が、所定の条件を満たして発生することを確認すると、
前記予測誤差データが０であるときに、前記符号化部が１ビットの符号長の前記可変長符号データを生成するように制御することを特徴とする請求項１〜１４のいずれか１項に記載の符号化装置。
【請求項１６】
請求項１〜１５のいずれか１項に記載の符号化装置によって生成された前記可変長符号データに対し、設定された復号化処理を施すことで復号化して、復号予測誤差データを順次生成する復号化部と、
復号画素データの予測値である復号予測値データを順次生成する復号予測値データ生成部と、
前記復号予測誤差データと前記復号予測値データとの和である前記復号画素データを順次生成する復号画素データ生成部と、
前記復号化部を順次制御する復号化制御部と、を備え、
前記所定数の前記可変長符号データを順次処理して、前記所定数の前記復号画素データを順次生成する間、
前記復号化制御部が、
前記復号化部が復号化した前記可変長符号データの符号長と、前記符号化装置で用いられた前記目標符号長との差分を累積することで、復号累積値を順次算出し、
当該復号累積値と、前記復号画素データの生成の進捗度を示す復号化回数とに基づいて、前記復号化部が復号化する前記可変長符号データに施されている符号化処理を推定し、当該符号化処理とは逆の処理である復号化処理が当該可変長符号データに施されるように、前記復号化部を設定することを特徴とする復号化装置。
【請求項１７】
前記復号化制御部が、前記可変長符号データの一部または全部を構成するヘッダ部を、連続的に入力されるデータの中から順次検出することで、前記可変長符号データを順次認識することを特徴とする請求項１６に記載の復号化装置。
【請求項１８】
前記復号予測値データ生成部が、
前記復号画素データ生成部が順次生成する前記復号画素データを一時的に順次保持し、
予測対象の復号画素データに近接するとともに予め保持する少なくとも１つの前記復号画素データを用いて、新たな前記復号予測値データを生成することを特徴とする請求項１６または１７に記載の復号化装置。
【請求項１９】
前記復号予測値データ生成部が、
前記復号画素データ生成部が順次生成する前記復号画素データを一時的に順次保持し、
直近に保持した前記復号画素データを、新たな前記復号予測値データとして生成することを特徴とする請求項１６〜１８のいずれか１項に記載の復号化装置。
【請求項２０】
請求項１〜１５のいずれか１項に記載の符号化装置と、
請求項１６〜１９のいずれか１項に記載の復号化装置と、
所定の記憶容量の記憶装置と、を備え、
前記記憶装置に、前記符号化装置が生成する前記可変長符号データが書き込まれ、
前記記憶装置から読み出される前記可変長符号データを用いて、前記復号化装置が前記復号画素データを生成することを特徴とする符復号化システム。
【請求項２１】
画素データの予測値である予測値データを生成する予測値データ生成ステップと、
前記画素データと、前記予測値データ生成ステップによって生成された前記予測値データとの差である予測誤差データを生成する予測誤差データ生成ステップと、
前記予測誤差データ生成ステップによって生成された前記予測誤差データを符号化することで、設定される最大符号長以下で符号長が可変である可変長符号データを生成する符号化ステップと、
前記符号化ステップによって生成された前記可変長符号データの符号長と、目標符号長との差分を累積することで、累積値を算出する累積値算出ステップと、
前記累積値算出ステップによって算出された前記累積値と、符号化回数とに基づいて、次の前記符号化ステップにおける前記最大符号長を設定する最大符号長設定ステップと、を備え、
前記予測値データ生成ステップと、前記予測誤差データ生成ステップと、前記符号化ステップと、前記累積値算出ステップと、前記最大符号長設定ステップと、を繰り返し行うことで、所定数の前記画素データを順次処理して、前記所定数の前記可変長符号データを順次生成し、
前記目標符号長は、前記所定数の前記画素データに対して設定される目標圧縮率を前記画素データの符号長に乗じて得られるものであり、
前記符号化回数は、前記可変長符号データの生成の進捗度を示すものであり、
前記最大符号長設定ステップで、前記所定数の前記可変長符号データが生成された時点での前記累積値が０以下になるような、前記最大符号長が設定されることを特徴とする符号化方法。
【請求項２２】
請求項２１に記載の符号化方法によって生成された前記可変長符号データに対し、設定された復号化処理を施すことで復号化して、復号予測誤差データを生成する復号化ステップと、
前記復号化ステップによって復号化された前記可変長符号データの符号長と、前記符号化方法で用いられた前記目標符号長との差分を累積することで、復号累積値を算出する復号累積値算出ステップと、
前記復号累積値算出ステップによって算出された前記復号累積値と、復号化回数とに基づいて、次の前記復号化ステップで復号化される前記可変長符号データに施されている符号化処理を推定し、当該符号化処理の逆変換に相当する復号化処理を、次の前記復号化ステップにおける前記復号化処理として設定する復号化処理設定ステップと、
復号画素データの予測値である復号予測値データを生成する復号予測値データ生成ステップと、
前記復号化ステップによって生成された前記復号予測誤差データと、前記復号予測値データ生成ステップによって生成された前記復号予測値データとの和である前記復号画素データを生成する復号画素データ生成ステップと、を備え、
前記復号化ステップと、前記復号累積値算出ステップと、前記復号化処理設定ステップと、前記復号予測値データ生成ステップと、前記復号画素データ生成ステップと、を繰り返し行うことで、前記所定数の前記可変長符号データを順次処理して、前記所定数の前記復号画素データを順次生成し、
前記復号化回数は、前記復号画素データの生成の進捗度を示すものであることを特徴とする復号化方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画素データを符号化する符号化装置や符号化方法に関するものであり、具体的に例えば、フレームメモリ等に記憶するデータを符号化する符号化装置や符号化方法に関する。また、本発明は、当該符号化装置や当該符号化方法により符号化されたデータを復号化する復号化装置や復号化方法に関する。さらに、本発明は、当該符号化装置と当該復号化装置とを備えた符復号化システムに関する。
【背景技術】
【０００２】
テレビ等に適用される画像処理装置の中には、処理対象の画像データを処理する際に、過去に処理した画像データ（画像データに対して、加算や差分などの所定の演算を施したデータをも含み得る。以下同じ。）を用いるものがある。例えば、このような画像処理装置では、フレームメモリ等を用いて処理した画像データを順次記憶する必要がある。
【０００３】
一方、近年の急速な画像データの高精細化や高速処理化に伴い、画像処理装置が処理すべき画像データのデータ量が増大し続けている。そのため、フレームメモリに要求される記憶容量や転送能力も増大し続け、当該要求を満たすフレームメモリの実現が困難になりつつある。
【０００４】
そこで、例えば特許文献１では、固定長符号化（符号化後のデータの符号長（ビット数）が均一である符号化方法）を行うことで、フレームメモリに記憶するデータのデータ量を削減する符号化装置が提案されている。
【０００５】
しかしながら、フレームメモリの簡素化や低コスト化の観点から、今日ではさらなるデータ量の削減が求められている。例えば、特許文献２〜５には、固定長符号化よりもデータ量を削減し得る可変長符号化（符号化後のデータの符号長が異なり得る符号化方法）を採用した符号化装置が、提案されている。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開２０１０−４５１４号公報
【特許文献２】特開２００９−０１７５０５号公報
【特許文献３】特開２００６−１３５３７０号公報
【特許文献４】特開平０８−０８４３３８号公報
【特許文献５】特開平０６−０２２１５２号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
ただし、可変長符号化では、符号化後のデータの符号長が一定ではないため、場合によってはデータ量が十分に低減されない（最低限の圧縮率を達成することができない）ことが生じ得る。このような場合、符号化後のデータのデータ量が、フレームメモリの記憶容量を超え得るため、問題となる。
【０００８】
この問題について、例えば特許文献２で提案される符号化装置では、予測誤差が所定値以上になるデータについて、一部を除外した上で符号化することにより、符号化後のデータ量を低減する。しかしながら、当該符号化装置では、必要以上に符号化後のデータ量が低減されることで、画像データが無用に劣化することがあるため、問題となる。具体的に例えば、当該符号化装置では、通常の可変長符号化によってデータ量を十分に低減することができる画像データであっても、予測誤差が大きくなる部分ではデータの一部を除外した上で符号化するため、当該部分が劣化する。
【０００９】
また、例えば特許文献３で提案される符号化装置では、圧縮率を精度良く予測して設定することで、画像の劣化を抑制している。しかしながら、圧縮率の推定に時間を要するため、リアルタイムでの符号化が困難になったり、符号化後のデータ量が十分に低減されなかったりするため、問題となる。
【００１０】
また、例えば特許文献４で提案される符号化装置では、システム内の他の機器の状況に応じて決定される単位時間当たりの転送量に基づき、リアルタイムに量子化（圧縮）を行うことで、システムの高速動作を可能にしている。しかしながら、画像データとは無関係に量子化が行われることで、画像データが無用に劣化することがあるため、問題となる。
【００１１】
また、例えば特許文献５で提案される符号化装置では、画像データをブロック単位で符号化する際に、当該ブロック毎にデータ量を制限することで、符号化後のデータが確実にメモリに記憶されるようにしている。しかしながら、ブロック単位で符号化するためにラインメモリ等が必要になることから回路規模が大きくなったり、特定のブロックのみが劣化したりするため、問題となる。
【００１２】
本発明は、上記の問題点に鑑み、目標圧縮率を保証しながらも画像データの劣化を抑制することが可能な符号化装置や符号化方法を提供することを目的とする。また、本発明は、当該符号化装置や当該符号化方法により符号化されたデータを復号化する復号化装置や復号化方法を提供することを目的とする。さらに、本発明は、当該符号化装置と当該復号化装置とを備えた符復号化システムを提供することを目的とする。
【課題を解決するための手段】
【００１３】
上記目的を達成するため、本発明は、画素データの予測値である予測値データを順次生成する予測値データ生成部と、
前記画素データと前記予測値データとの差である予測誤差データを順次生成する予測誤差データ生成部と、
前記予測誤差データを順次符号化して、設定される最大符号長以下で符号長が可変である可変長符号データを順次生成する符号化部と、
前記符号化部を順次制御する符号化制御部と、を備え、
所定数の前記画素データを順次処理して、前記所定数の前記可変長符号データを順次生成する間、
前記符号化制御部が、
前記符号化部が生成した前記可変長符号データの符号長と、前記所定数の前記画素データに対して設定される目標圧縮率を前記画素データの符号長に乗じて得られる目標符号長と、の差分を累積することで、累積値を順次算出し、
前記所定数の前記可変長符号データが生成された時点での前記累積値が、０以下になるように、
前記累積値と、前記可変長符号データの生成の進捗度を示す符号化回数とに基づいて、前記最大符号長を順次設定することを特徴とする符号化装置を提供する。
【００１４】
さらに、上記特徴の符号化装置は、前記符号化制御部が、前記符号化回数に応じて決定される前記累積値の限界値と、前記累積値との差分に応じた長さの前記最大符号長を、設定すると、好ましい。
このように構成することで、符号化の進行に応じて累積値を順次制御することが可能になる。
【００１５】
さらに、上記特徴の符号化装置は、前記累積値が前記限界値よりも大きい場合、前記符号化制御部が、前記目標符号長よりも短い前記最大符号長を設定すると、好ましい。
このように構成すると、累積値が限界値を超えた場合に、累積値を確実に小さくすることが可能になる。
【００１６】
さらに、上記特徴の符号化装置は、前記限界値が、前記符号化回数の増大に伴い、連続的または段階的に減少するものであり、少なくとも前記符号化回数が前記所定数に達するまでには０になると、好ましい。
このように構成すると、符号化の進行に応じて累積値の上限（限界値）が制限されるため、最終的な累積値を確実に０にすることが可能になる。
【００１７】
さらに、上記特徴の符号化装置は、前記符号化制御部が、前記累積値及び前記符号化回数に基づいて成否が決まる第１条件を、少なくとも１つ有し、
前記符号化制御部が、前記第１条件を満たさない状態から満たす状態へと遷移した場合、遷移前よりも短い前記最大符号長を設定すると、好ましい。
【００１８】
さらに、上記特徴の符号化装置は、前記符号化制御部が、前記累積値及び前記符号化回数に基づいて成否が決まる第２条件を、少なくとも１つ有し、
前記符号化制御部が、前記第２条件を満たさない状態から満たす状態へと遷移した場合、遷移前よりも長い前記最大符号長を設定すると、好ましい。
【００１９】
さらに、上記特徴の符号化装置は、前記符号化制御部が、前記累積値及び前記符号化回数に基づいて成否が決まる第１条件及び第２条件を、それぞれ少なくとも１つずつ有し、
前記符号化制御部が、前記第１条件を満たさない状態から満たす状態へと遷移した場合、遷移前よりも短い前記最大符号長を設定し、前記第２条件を満たさない状態から満たす状態へと遷移した場合、遷移前よりも長い前記最大符号長を設定するものであり、
前記符号化回数が所定の値であるとき、
前記累積値が第１閾値よりも大きくなることで、前記第１条件の１つを満たさない状態から満たす状態へと遷移する場合は、前記符号化制御部が設定する前記最大符号長が、第１符号長から第２符号長になり、
前記累積値が第２閾値よりも小さくなることで、前記第２条件の１つを満たさない状態から満たす状態へと遷移する場合は、前記符号化制御部が設定する前記最大符号長が、前記第２符号長から前記第１符号長へと短くなり、
前記第１閾値は、前記第２閾値よりも大きいと、好ましい。
このように構成すると、割り当てられる最大符号長の変化に、ヒステリシスを持たせることが可能になる。
【００２０】
さらに、上記特徴の符号化装置は、前記符号化部が、
前記予測誤差データを、所定の量子化係数で量子化することによって、量子化予測誤差データを順次生成する量子化部と、
所定の符号化方式に従って、前記量子化予測誤差データに対応した前記可変長符号データを順次生成する可変長符号データ生成部と、
を備えると、好ましい。
【００２１】
さらに、上記特徴の符号化装置は、前記符号化制御部が、前記累積値及び前記符号化回数に基づいて、前記量子化部に適用される前記量子化係数を選択し、選択された当該量子化係数と、前記符号化方式とに応じて、前記最大符号長が設定されると、好ましい。
このように構成すると、量子化係数を選択することで、量子化予測誤差データの符号長が取り得る範囲を制御し、それによって最大符号長を制御することが可能になる。
【００２２】
さらに、上記特徴の符号化装置は、１つの前記画素データが、複数の成分データを含み、
前記予測値データ生成部が、前記成分データ毎の前記予測値データを生成し、
前記予測誤差データ生成部が、前記成分データ毎の前記予測誤差データを生成し、
前記量子化部が、前記成分データ毎の前記量子化係数で、前記成分データ毎の前記予測誤差データをそれぞれ量子化することによって、前記成分データ毎の前記量子化予測誤差データを生成し、
前記可変長符号データ生成部が、前記成分データ毎の前記量子化予測誤差データに対応した前記成分データ毎の前記可変長符号データを生成し、
前記符号化制御部が、前記成分データ毎の前記可変長符号データの全体の符号長と、前記目標符号長との差分を累積することで前記累積値を算出し、当該累積値及び前記符号化回数に基づいて、前記量子化部に適用される前記成分データ毎の前記量子化係数をそれぞれ選択すると、好ましい。
このように構成すると、画素データに含まれる成分データ毎に量子化係数を設定し、当該成分データ毎に符号長を制御することが可能になる。そのため、人の視覚の特性（例えば、知覚の程度）などに応じて、量子化係数を設定することが可能になる。
【００２３】
さらに、上記特徴の符号化装置は、前記符号化制御部が、前記累積値及び前記符号化回数に基づいて、前記可変長符号データ生成部に適用する前記符号化方式を選択し、選択された前記符号化方式と前記量子化係数とに応じて、前記最大符号長が設定されると、好ましい。
このように構成すると、符号化方式を選択することで、可変長符号データの最大符号長を制御することが可能になる。
【００２４】
さらに、上記特徴の符号化装置は、前記可変長符号データ生成部が、
前記量子化予測誤差データの絶対値が大きくなるほど大きな値になり、前記量子化予測誤差データの絶対値が０である場合に０であり、かつ前記量子化予測誤差データと１対１で対応する符号化用変数へ、前記量子化予測誤差データを変換し、
前記符号化用変数が小さいほど、符号長が短い前記可変長符号データを生成すると、好ましい。
このように構成すると、例えば一般的な自然の画像データを構成する画素データのように、量子化予測誤差データの絶対値が０または０に近い値になる確率が高い場合に、符号化用変数を効果的に小さくすることができる。そのため、可変長符号データの符号長を、効果的に短くすることが可能になる。
【００２５】
さらに、上記特徴の符号化装置は、前記予測値データ生成部が、
順次生成する前記予測値データを一時的に順次保持し、
前記量子化部が生成する前記量子化予測誤差データに前記量子化係数を乗じることで得られる逆量子化予測誤差データと、予測対象の画素データに近接する画素データに対して生成した予め保持する少なくとも１つの前記予測値データと、を用いて新たな予測値データを生成すると、好ましい。
このように構成すると、予測誤差データの量子化に伴う誤差がリセットされるため、当該誤差が予測誤差データに累積することを、抑制することが可能になる。また、近接する画素データの予測値データを用いて、予測対象の画素データの予測値データを生成するため、予測誤差データを小さくすることが可能になる。
【００２６】
さらに、上記特徴の符号化装置は、前記予測値データ生成部が、
順次生成する前記予測値データを一時的に順次保持し、
前記量子化部が生成する前記量子化予測誤差データに前記量子化係数を乗じることで得られる逆量子化予測誤差データに、直近に保持した前記予測値データを加算することで、新たな予測値データを生成すると、好ましい。
このように構成すると、予測値データ生成部が保持しなければならない予測値データを、１つにすることが可能になる。したがって、回路規模を小さくすることができる。
【００２７】
さらに、上記特徴の符号化装置は、前記符号化制御部が、
前記予測誤差データが０になる状況が、所定の条件を満たして発生することを確認すると、
前記予測誤差データが０であるときに、前記符号化部が１ビットの符号長の前記可変長符号データを生成するように制御すると、好ましい。
このように構成すると、圧縮率を効果的に高めることが可能になる。
【００２９】
また、本発明は、上記特徴の符号化装置によって生成された前記可変長符号データに対し、設定された復号化処理を施すことで復号化して、復号予測誤差データを順次生成する復号化部と、
復号画素データの予測値である復号予測値データを順次生成する復号予測値データ生成部と、
前記復号予測誤差データと前記復号予測値データとの和である前記復号画素データを順次生成する復号画素データ生成部と、
前記復号化部を順次制御する復号化制御部と、を備え、
前記所定数の前記可変長符号データを順次処理して、前記所定数の前記復号画素データを順次生成する間、
前記復号化制御部が、
前記復号化部が復号化した前記可変長符号データの符号長と、前記符号化装置で用いられた前記目標符号長との差分を累積することで、復号累積値を順次算出し、
当該復号累積値と、前記復号画素データの生成の進捗度を示す復号化回数とに基づいて、前記復号化部が復号化する前記可変長符号データに施されている符号化処理を推定し、当該符号化処理とは逆の処理である復号化処理が当該可変長符号データに施されるように、前記復号化部を設定することを特徴とする復号化装置を提供する。
【００３０】
さらに、上記特徴の復号化装置は、前記復号化制御部が、前記可変長符号データの一部または全部を構成するヘッダ部を、連続的に入力されるデータの中から順次検出することで、前記可変長符号データを順次認識すると、好ましい。
このように構成すると、ヘッダ部を検出するという簡易な方法で、連続的に入力されるデータの中から可変長符号データを認識することが可能になる。
【００３１】
さらに、上記特徴の復号化装置は、前記復号予測値データ生成部が、
前記復号画素データ生成部が順次生成する前記復号画素データを一時的に順次保持し、
予測対象の復号画素データに近接するとともに予め保持する少なくとも１つの前記復号画素データを用いて、新たな前記復号予測値データを生成すると、好ましい。
このように構成すると、符号化装置が符号化した画素データに対応する復号画素データを、生成することが可能になる。
【００３２】
さらに、上記特徴の復号化装置は、前記復号予測値データ生成部が、
前記復号画素データ生成部が順次生成する前記復号画素データを一時的に順次保持し、
直近に保持した前記復号画素データを、新たな前記復号予測値データとして生成すると、好ましい。
このように構成すると、復号予測値データ生成部が保持しなければならない復号画素データを、１つにすることが可能になる。したがって、回路規模を小さくすることができる。
【００３３】
また、本発明は、上記特徴の符号化装置と、
上記特徴の復号化装置と、
所定の記憶容量の記憶装置と、を備え、
前記記憶装置に、前記符号化装置が生成する前記可変長符号データが書き込まれ、
前記記憶装置から読み出される前記可変長符号データを用いて、前記復号化装置が前記復号画素データを生成することを特徴とする符復号化システムを提供する。
【００３４】
また、本発明は、画素データの予測値である予測値データを生成する予測値データ生成ステップと、
前記画素データと、前記予測値データ生成ステップによって生成された前記予測値データとの差である予測誤差データを生成する予測誤差データ生成ステップと、
前記予測誤差データ生成ステップによって生成された前記予測誤差データを符号化することで、設定される最大符号長以下で符号長が可変である可変長符号データを生成する符号化ステップと、
前記符号化ステップによって生成された前記可変長符号データの符号長と、目標符号長との差分を累積することで、累積値を算出する累積値算出ステップと、
前記累積値算出ステップによって算出された前記累積値と、符号化回数とに基づいて、次の前記符号化ステップにおける前記最大符号長を設定する最大符号長設定ステップと、を備え、
前記予測値データ生成ステップと、前記予測誤差データ生成ステップと、前記符号化ステップと、前記累積値算出ステップと、前記最大符号長設定ステップと、を繰り返し行うことで、所定数の前記画素データを順次処理して、前記所定数の前記可変長符号データを順次生成し、
前記目標符号長は、前記所定数の前記画素データに対して設定される目標圧縮率を前記画素データの符号長に乗じて得られるものであり、
前記符号化回数は、前記可変長符号データの生成の進捗度を示すものであり、
前記最大符号長設定ステップで、前記所定数の前記可変長符号データが生成された時点での前記累積値が０以下になるような、前記最大符号長が設定されることを特徴とする符号化方法を提供する。
【００３５】
また、本発明は、上記特徴の符号化方法によって生成された前記可変長符号データに対し、設定された復号化処理を施すことで復号化して、復号予測誤差データを生成する復号化ステップと、
前記復号化ステップによって復号化された前記可変長符号データの符号長と、前記符号化方法で用いられた前記目標符号長との差分を累積することで、復号累積値を算出する復号累積値算出ステップと、
前記復号累積値算出ステップによって算出された前記復号累積値と、復号化回数とに基づいて、次の前記復号化ステップで復号化される前記可変長符号データに施されている符号化処理を推定し、当該符号化処理の逆変換に相当する復号化処理を、次の前記復号化ステップにおける前記復号化処理として設定する復号化処理設定ステップと、
復号画素データの予測値である復号予測値データを生成する復号予測値データ生成ステップと、
前記復号化ステップによって生成された前記復号予測誤差データと、前記復号予測値データ生成ステップによって生成された前記復号予測値データとの和である前記復号画素データを生成する復号画素データ生成ステップと、を備え、
前記復号化ステップと、前記復号累積値算出ステップと、前記復号化処理設定ステップと、前記復号予測値データ生成ステップと、前記復号画素データ生成ステップと、を繰り返し行うことで、前記所定数の前記可変長符号データを順次処理して、前記所定数の前記復号画素データを順次生成し、
前記復号化回数は、前記復号画素データの生成の進捗度を示すものであることを特徴とする復号化方法を提供する。
【発明の効果】
【００３６】
上記特徴の符号化装置や符号化方法によれば、累積値が最終的に０以下になるように、可変長符号データの最大符号長が順次制御される。そのため、目標圧縮率を保証しながらも、累積値に余裕があれば可変長符号データの最大符号長を長くし得ることで、画像データの劣化を抑制することが可能になる。
【図面の簡単な説明】
【００３７】
【図１】本発明の実施形態に係る符復号化システムを適用した画像処理システムの構成例を示すブロック図。
【図２】本発明の実施形態に係る符号化装置の構成例を示すブロック図。
【図３】量子化係数が１であり予測値データが１００である場合における、画像データ及び量子化予測誤差データと符号化用変数との関係を示す表。
【図４】図３に示す表の値を、予測される出現確率とともに示したグラフ。
【図５】量子化係数が１、２または４であり予測値データが１００である場合における、量子化予測誤差データと符号化用変数とのそれぞれの関係を示す表。
【図６】符号化テーブルの具体例を示す表。
【図７】状態変数を増大させる条件を示したグラフ。
【図８】状態変数を減少させる条件を示したグラフ。
【図９】符号化処理選択部による量子化係数の選択方法の一例について示す表。
【図１０】順次生成される可変長符号データの全ての符号長が、図９に示す最大符号長になる場合における、累積値の変化を示すグラフ。
【図１１】種々の画像における符号化用変数の出現確率を示す表。
【図１２】図１１に示す画像データを構成する画素データについて、図６に示す符号化テーブル１〜３のそれぞれを用いて可変長符号データを生成した場合のそれぞれの符号長の期待値を示す表。
【図１３】本発明の実施形態に係る復号化装置の構成の一例を示すブロック図。
【図１４】符号化テーブルの別例を示す表。
【発明を実施するための形態】
【００３８】
＜＜符復号化システム＞＞
最初に、本発明の実施形態に係る符復号化システムについて、図面を参照して説明する。図１は、本発明の実施形態に係る符復号化システムを適用した画像処理システムの構成例を示すブロック図である。
【００３９】
図１に示すように、画像処理システムＰＳは、画像データが入力される入力端子ＩＮと、入力端子ＩＮから入力される画像データを処理して処理後の画像データを出力する画像処理装置Ｐと、画像処理装置Ｐが出力する処理後の画像データを外部に出力する出力端子ＯＵＴと、画像処理装置Ｐが画像処理を行う際に必要となるデータを記憶する符復号化システムＣＤと、を備える。
【００４０】
画像処理装置Ｐは、例えばオーバーシュート処理（ＯＳ処理、オーバードライブ処理とも呼ばれ、液晶表示装置等で表示する動画像の応答速度を向上させるために画像データの階調値を調整する処理）などの、過去に処理した画像データを用いた処理を行う。なお、画像処理装置Ｐが行う処理は、過去に処理した画像データを用いたものである限り、どのようなものであってもよい。
【００４１】
符復号化システムＣＤは、画像処理装置Ｐから供給される所定数単位（例えば、１フレーム単位）のデータ（後述する画素データ）を、目標圧縮率以上の圧縮率で圧縮して符号化する符号化装置１と、符号化装置１が符号化したデータ（後述する可変長符号データ）が書き込まれる記憶装置２と、記憶装置２から読み出したデータ（後述する可変長符号データ）を復号化して得られるデータ（後述する復号画素データ）を画像処理装置Ｐに入力する復号化装置３と、を備える。なお、記憶装置２は、例えばフレームメモリなどのデータを一時的に記憶可能な装置から成る。
【００４２】
このように、本発明の実施形態に係る符復号化システムＣＤは、符号化装置１が符号化したデータを記憶装置２に記憶させるとともに、記憶装置２に記憶させたデータを復号化装置３で復号化することで、記憶装置２に記憶させるデータのデータ量を低減することが可能である。
【００４３】
また、以下において、上記の符復号化システムＣＤに適用可能な、本発明の実施形態に係る符号化装置１及びその符号化方法と、復号化装置３及びその復号化方法と、についてそれぞれ説明する。
【００４４】
＜＜符号化装置及び符号化方法＞＞
本発明の実施形態に係る符号化装置１及びその符号化方法について、以下図面を参照して説明する。最初に、符号化装置１の構成について、図２を参照して説明する。図２は、本発明の実施形態に係る符号化装置の構成の一例を示すブロック図である。
【００４５】
図２に示すように、符号化装置１は、画素データｄｉと画素座標データｄｚとが順次入力される第１入力端子ｉｔ１と、設定情報ｄｍが入力される第２入力端子ｉｔ２と、画素データｄｉの予測値である予測値データｄｉｐを順次生成する予測値データ生成部１１と、画素データｄｉと予測値データｄｉｐとを用いて予測誤差データｄｐを順次生成する予測誤差データ生成部１２と、予測誤差データｄｐを符号化することで可変長符号データｄｃを順次生成する符号化部１３と、可変長符号データｄｃを順次出力する出力端子ｏｔ１と、可変長符号データｄｃと設定情報ｄｍと画像座標データｄｚとに基づいて符号化部１３を順次制御する符号化制御部１４と、を備える。
【００４６】
予測値データ生成部１１は、生成した予測値データｄｉｐを一時的に順次保持可能な予測値バッファ１１１を備える。
【００４７】
符号化部１３は、予測誤差データｄｐを量子化係数ｒで量子化することで量子化予測誤差データｄｑを順次生成する量子化部１３１と、量子化予測誤差データｄｑに対応した可変長符号データｄｃを順次生成する可変長符号データ生成部１３２と、を備える。
【００４８】
符号化制御部１４は、量子化係数ｒを設定する量子化係数設定部１４１と、量子化予測誤差データｄｑと可変長符号データｄｃとの対応関係を示す符号化テーブルｔを設定（符号化方式の選択に該当）する符号化テーブル設定部１４２と、可変長符号データｄｃと設定情報ｄｍと画像座標データｄｚとに基づいて設定すべき量子化係数ｒを指示する量子化係数指示データｒｓを出力するとともに設定すべき符号化テーブルｔを指示する符号化テーブル指示データｔｓを出力する符号化処理選択部１４３と、を備える。
【００４９】
次に、符号化装置１の具体的な動作について、図面を参照して説明する。なお、以下では説明の具体化のため、階調値が８ビット（２５６通り）でありＹＵＶの成分データ（Ｙは輝度成分データ、Ｕ，Ｖのそれぞれは色差成分データ）で表現されたＦｕｌｌＨＤ（水平方向の画素数１９２０個、垂直方向の画素数１０８０個）の画像データを、符号化装置１がＹＵＶの成分データ毎に符号化する場合について例示する。また、以下では説明の簡略化のために、Ｙ，Ｕ，Ｖのそれぞれの成分が予めすべて正規化されており、Ｙ、Ｕ、Ｖのそれぞれが０以上２５５以下の整数値を取り得る場合を例示する。さらに、設定情報ｄｍが、上記の画像サイズ（１９２０×１０８０）と、目標圧縮率（例えば、画像データを構成する全ての画素データなど、所定数の画素データ全体に対して設定される、圧縮率の目標値。具体的に例えば、５０％、１／２圧縮。）とを示す情報である場合を例示する。
【００５０】
第１入力端子ｉｔ１には、画像データを構成する画素データｄｉが、順次入力される。画素データｄｉが入力される順番は、どのようなものであってもよいが、画像データ中で隣接する画素データが連続して入力される順番であると、予測誤差データｄｐの絶対値が小さくなり可変長符号データｄｃの符号長が短くなり得るため、好ましい（詳細は後述）。例えば、画像データのラスタスキャンの順番（水平方向に並ぶ一端の画素データから他端の画素データまで連続し、これを垂直方向に一段ずつずれながら繰り返す順番）であってもよい。以下では説明の具体化のため、第１入力端子ｉｔ１に、画像データのラスタスキャンの順番で、画素データｄｉが順次入力される場合を例示する。
【００５１】
また、第１入力端子ｉｔ１には、入力された画素データｄｉの画像データ中の座標位置を示す画素座標データｄｚが入力される。なお、画素座標データｄｚは、後述する符号化処理選択部１４３が、入力された画素データｄｉの画像データ中の座標位置を把握し得る情報であれば、どのようなものであってもよい。例えば、画像データを構成する画素データｄｉが、所定の順番（例えば、ラスタスキャンの順番）で第１入力端子ｉｔ１に入力される場合、画素座標データｄｚは、第１入力端子ｉｔ１に入力された画素データｄｉの数をカウントした情報であってもよい。
【００５２】
予測誤差データ生成部１２は、下記式（１）に示すように、第１入力端子ｉｔ１から得られるｋ番目の画素データｄｉｋから、予測値データ生成部１１の予測値バッファ１１１から得られるｋ番目の予測値データｄｉｐｋを減ずることで、ｋ番目の予測誤差データｄｐｋを生成する。なお、ｋは符号化回数を示し、１以上１９２０×１０８０以下の自然数を取り得る。また、予測値データ生成部１１による、ｋ番目の予測値データｄｉｐｋの生成方法については、後述する。
【００５３】
〈数１〉
ｄｐｋ＝ｄｉｋ−ｄｉｐｋ      ・・・（１）
【００５４】
次に、符号化部１３が、予測誤差データ生成部１２から得られるｋ番目の予測誤差データｄｐｋを符号化して、ｋ番目の可変長符号データｄｃｋを生成する。
【００５５】
まず、量子化部１３１が、下記式（２）に示すように、ｋ番目の予測誤差データｄｐｋを、ｋ番目の量子化係数ｒｋで量子化して、ｋ番目の量子化予測誤差データｄｑｋを生成する。具体的には、ｋ番目の予測誤差データｄｐｋを、ｋ番目の量子化係数ｒｋで除し、さらにその商の小数点以下を四捨五入することで、ｋ番目の量子化予測誤差データｄｑｋを生成する。
【００５６】
このように、商の小数点以下を四捨五入してｋ番目の量子化予測誤差データｄｑｋを生成することで、ｋ番目の量子化予測誤差データｄｑｋの０付近の誤差が大きくなることを、抑制することができる。なお、下記式（２）中のｓｉｇｎ（ｘ）は、ｘの正負の符号を表し、［ｘ］は、ｘの整数部分（小数点以下を切り捨てた値）を表している（以下同じ）。また、ｋ番目の量子化係数ｒｋの設定方法については、後述する。
【００５７】
〈数２〉
ｄｑｋ＝ｓｉｇｎ（ｄｐｋ）［（｜ｄｐｋ｜＋ｒｋ／２）／ｒｋ］      ・・・（２）
【００５８】
上記式（２）において、ｋ番目の量子化係数ｒｋが１である場合、ｋ番目の量子化予測誤差データｄｑｋは、ｋ番目の予測誤差データｄｐｋと等しくなる。一方、ｋ番目の量子化係数ｒｋが１よりも大きい場合、ｋ番目の量子化予測誤差データｄｑｋが取り得る値の数（［２５５／ｒ］＋２）を、ｋ番目の予測誤差データｄｐｋが取り得る値の数（２５６）よりも、小さくすることが可能になる。ただし、この場合、ｋ番目の予測誤差データｄｐｋの値が異なっても、ｋ番目の量子化予測誤差データｄｑｋの値が同じになることが生じ得る（即ち、誤差が生じ得る）。
【００５９】
ところで、予測値データ生成部１１は、下記式（３）に示すように、量子化部１３１から得られるｋ−１番目の量子化予測誤差データｄｑｋ−１をｋ−１番目の量子化係数ｒ−１で逆量子化して得られる予測誤差データｄｑｋ−１×ｒｋ−１を、ｋ−１番目の予測値データｄｉｐｋ−１に加算することで、ｋ番目の予測値データｄｉｐｋを生成する。したがって、ｋ番目の予測値データｄｉｐｋは、ｋ−１番目の画素データｄｉｋ−１に近い値になる（ｋ−１番目の予測誤差データｄｐｋ−１の量子化及び逆量子化を行っているため、これらが一致するとは限らない）。また、予測値データ生成部１１は、下記式（３）により生成したｋ番目の予測値データｄｉｐｋを、上述のように予測値バッファ１１１に一時的に保持する。
【００６０】
〈数３〉
ｄｉｐｋ=ｄｉｐｋ−１＋ｄｑｋ−１×ｒｋ−１      ・・・（３）
【００６１】
一般的な自然の画像データであれば、画像データ中で近接（特に、隣接）する画素データは、相関が高いことが多い。そのため、予測値データ生成部１１が、上記式（３）に示すようにｋ番目の予測値データｄｉｐｋを生成することで、ｋ番目の予測誤差データｄｐｋを０に近づけることが可能になる。なお、詳細については後述するが、本発明の実施形態に係る符号化装置１では、ｋ番目の予測誤差データｄｐｋを０に近づけるほど、生成されるｋ番目の可変長符号データｄｃｋの符号長を短くすることができる。
【００６２】
また、予測値データ生成部１１は、ｋ番目の予測値データｄｉｐｋを生成する際に、ｋ−１番目の予測誤差データｄｐｋ−１の量子化及び逆量子化を行うことで、当該予測誤差データｄｐｋ−１の量子化に伴う誤差をリセットする。そのため、ｋ番目の予測誤差データｄｐｋに、量子化に伴う誤差が累積することを、抑制することが可能になる。
【００６３】
なお、予測値データ生成部１１が、上記式（３）とは異なる方法で、ｋ番目の予測値データｄｉｐｋを生成してもよい。例えば、上記式（３）において、ｋ−ａ番目の予測値データｄｉｐｋ−ａを、ｋ番目の予測値データｄｉｐｋの算出時に用いてもよい。具体的に例えば、ａ＝１９２０として、画像データ中でｋ番目の画素データｄｉｋと垂直方向に隣接する画素データｄｉｋ−１９２０に対する予測値データｄｉｐｋ−１９２０を、ｋ番目の予測値データｄｉｐｋの算出時に用いてもよい。また具体的に例えば、ａ＝２として、ｋ番目の画素データｄｉｋの２つ前の画素データｄｉｋ−２に対する予測値データｄｉｐｋ−２を、ｋ番目の予測値データｄｉｐｋの算出時に用いてもよい。また例えば、ｋ−ａ番目の予測値データｄｉｋ−ａの複数（例えば、ａ＝１，２）を平均化したものを、ｋ番目の予測値データｄｉｐｋの算出時に用いてもよい。ただし、これらの方法を採用する場合、画素データｄｉｋ−ａを記憶するラインメモリ等が必要になるため、回路規模が大きく成り得る。また、画素データのスキャンの方法にもよるが、予測しようとする画素データの、画像データ中の位置（例えば、画像データ中の端部か否か）に応じて、用いる予測値データが異なってもよい。
【００６４】
一方、可変長符号データ生成部１３２は、ｋ番目の可変長符号データｄｃｋを生成する演算の簡略化や、ｋ番目の可変長符号データｄｃｋの符号長の短縮化を図るべく、量子化部１３１から得られるｋ番目の量子化予測誤差データｄｑｋを、下記式（４）に示すようなｋ番目の符号化用変数ｎｋに変換する。
【００６５】
下記式（４）中のｍｋは、ｋ番目の量子化係数ｒｋが１であるとき、ｋ番目の予測値データｄｉｐｋと２５５−ｄｉｐｋとの小さい方の値となる。即ち、ｍｋ＝ｍｉｎ（ｄｉｐｋ，２５５−ｄｉｐｋ）となる。一方、ｋ番目の量子化係数ｒｋが１よりも大きいとき、下記式（４）中のｍｋは、ｋ番目の予測値データｄｉｐｋを上記式（２）におけるｋ番目の予測値データｄｐｋに代入することで得られるｋ番目の量子化予測値データｄｉｑｋと［２５５／ｒｋ］＋１−ｄｉｑｋとの小さい方の値となる。即ち、ｍｋ＝ｍｉｎ（ｄｉｑｋ，［２５５／ｒｋ］＋１−ｄｉｑｋ）となる。
【００６６】
また、下記式（４）中のｓは、ｄｑｋ≧０のときｓ＝０、ｄｑｋ＜０のときｓ＝１となる数である。また、ｋ番目の符号化用変数ｎｋは、量子化係数ｒｋが１であるとき、量子化予測誤差データｄｑｋと１対１で対応する、０以上２５５以下の連続した整数値となる。一方、量子化係数ｒｋが１よりも大きいとき、量子化予測誤差データｄｑｋと１対１で対応する、０以上［２５５／ｒｋ］＋１以下の連続した整数値となる。
【００６７】
〈数４〉
｜ｄｑｋ｜≦ｍｋのとき、ｎｋ＝２｜ｄｑｋ｜−ｓ
｜ｄｑｋ｜＞ｍｋのとき、ｎｋ＝ｄｑｋ＋ｍｋ      ・・・（４）
【００６８】
ここで、符号化用変数ｎについて、図面を参照して説明する。図３は、量子化係数が１であり予測値データが１００である場合における、画像データ及び量子化予測誤差データと符号化用変数との関係を示す表である。図４は、図３に示す表の値を、予測される出現確率とともに示したグラフである。図５は、量子化係数が１、２または４であり予測値データが１００である場合における、量子化予測誤差データと符号化用変数とのそれぞれの関係を示す表である。なお、図４に示すグラフの横軸は、予測誤差データｄｐ及び符号化用変数ｎであり、縦軸は出現確率ｆである。
【００６９】
図３に示すように、量子化係数ｒが１である場合、量子化予測値データｄｉｑは予測値データｄｉｐと等しく、量子化予測誤差データｄｑは予測誤差データｄｐと等しくなる。また、可変長符号データ生成部１３２は、量子化予測誤差データｄｑの絶対値が大きくなるほど大きな値になり、量子化予測誤差データｄｑの絶対値が０である場合に０になるように、量子化予測誤差データｄｑを符号化用変数ｎに変換する。
【００７０】
上述のように、一般的な自然の画像データでは、隣接する画素データの相関が高い。そのため、図４に示すように、量子化予測誤差データｄｑの絶対値が０に近づくほど、出現確率ｆが大きくなる分布（例えば、ラプラス分布に近い分布）に成り得る。したがって、上記式（４）を用いて量子化予測誤差データｄｑを符号化用変数ｎに変換すると、符号化用変数ｎが０のときに出現確率ｆが最大となり、符号化用変数ｎの増大に応じて出現確率ｆが単調減少する分布になる。
【００７１】
また、図５に示すように、量子化係数ｒが大きくなるに従って、量子化予測誤差データｄｑが取り得る値（整数値）の数が少なくなる。そのため、量子化予測誤差データｄｑと１対１で対応する符号化用変数ｎが取り得る値の数も、少なくなる。そして、量子化係数ｒが大きくなるに従って、符号化用変数ｎが取り得る最大値が、小さくなる。
【００７２】
可変長符号データ生成部１３２は、ｋ番目の符号化テーブルｔｋに従って、ｋ番目の符号化用変数ｎｋに対応するｋ番目の可変長符号データｄｃｋを生成する。なお、以下では説明の具体化のため、可変長符号データ生成部１３２が、図６に示す３つの符号化テーブル１〜３を利用し得る場合について例示する。図６は、符号化テーブルの具体例を示す表である。また、ここではｋ番目の符号化テーブルｔｋを用いたｋ番目の可変長符号データｄｃｋの生成方法について説明し、ｋ番目の符号化テーブルｔｋの選択方法については後述する。
【００７３】
図６に示す符号化テーブル１〜３のそれぞれは、所定のビットで表示しているヘッダ部と、アスタリスクで表示している本体部とを含み得る。ヘッダ部は、複数の符号化用変数ｎを大別した各範囲に対応し、本体部は、大別された範囲内における符号化用変数ｎの値に対応している。
【００７４】
例えば、図６に示す符号化テーブル１が、ｋ番目の符号化テーブルｔｋとして選択され、可変長符号データ生成部１３２が求めたｋ番目の符号化用変数ｎｋが、「１０」である場合、可変長符号データ生成部１３２は、ｋ番目の符号化用変数ｎｋが「１０」であるため、「８以上１５以下」の範囲に属し、生成すべきｋ番目の可変長符号データｄｃｋのヘッダ部が「１１１０」（本体部＊＊＊）になることを認識する。
【００７５】
さらに、可変長符号データ生成部１３２は、「１０」が「８以上１５以下」の範囲において３番目に小さいため、本体部「＊＊＊」が、３を３ビットの２進数で示したもの、即ち「０１０」であることを認識する。したがって、この場合、可変長符号データ生成部１３２は、ｋ番目の可変長符号データｄｃｋとして、「１１１００１０」を生成する。また、このｋ番目の可変長符号データｄｃｋは、出力端子ｏｔ１から出力される。
【００７６】
符号化制御部１４は、上述のように順次生成される可変長符号データｄｃを監視することで、符号化部１３の動作を制御する。以下、符号可制御部１４による符号化部１３の制御方法について、説明する。
【００７７】
ｋ番目の可変長符号データｄｃｋが生成されると、符号化処理選択部１４３は、下記式（５）に示すようなｋ番目の累積値Ｃｋを算出する。ｋ番目の累積値Ｃｋは、ｋ−１番目の累積値Ｃｋ−１に対して、ｋ番目の可変長符号データｄｃｋの符号長Ｂｋを加算して、さらに目標符号長Ｔを減算することで得られる。即ち、累積値Ｃは、符号化部１３が順次生成する可変長符号データの符号長Ｂと目標符号長Ｔとの差分を、順次累積して得られる値である。なお、目標符号長Ｔを、１つの画素データの符号長（８ビット×３＝２４ビット）に対して目標圧縮率（５０％）を乗算した値（１２ビット）にすると、後述するように、符号化装置１が当該目標圧縮率を達成することを保証することができる。また、１番目の累積値Ｃ１は、１番目の可変長符号データｄｃ１の符号長Ｂ１から目標符号長Ｔを減算した値とする。
【００７８】
〈数５〉
Ｃｋ＝Ｃｋ−１＋Ｂｋ−Ｔ      ・・・（５）
【００７９】
符号化処理選択部１４３は、ｋ番目の累積値Ｃｋに基づいて、ｋ番目の状態変数ＳＴｋを以下のように設定する。状態変数ＳＴは、例えば０以上１０以下の整数値をとり得るものであり、符号化処理選択部１４３は、ｋ番目の状態変数ＳＴｋに従って、ｋ＋１番目の予測誤差データｄｐｋの符号化を行う際の量子化係数ｒｋ＋１や符号化テーブルｔｋ＋１を選択する。なお、下記式（６）〜（８）中のｈは、画像データの垂直方向の大きさ（画素数、例えば１０８０）であり、ｊｋ＋１は、ｋ＋１番目の画素データｄｉｋ＋１の画像データ中における垂直方向の座標（０以上ｈ−１以下、例えば０以上１０７９以下）である。また、ＳＴ０は０とする。
【００８０】
ｋ−１番目の状態変数ＳＴｋ−１が０以上９以下のとき、下記式（６）を満たすと、ｋ番目の状態変数ＳＴｋの値が、ｋ−１番目の状態変数ＳＴｋ−１から１増大させた値となる。また、下記式（６）を図７に示す。図７は、状態変数を増大させる条件を示したグラフである。なお、図７に示すグラフの縦軸は累積値Ｃ、横軸は画像データ中における画素データの垂直方向の座標ｊである。
【００８１】
〈数６〉
Ｃｋ＞（２×ＳＴｋ−１＋２）×（ｈ−１）−２０×ｊｋ＋１      ・・・（６）
【００８２】
ｋ−１番目の状態変数ＳＴｋ−１が１以上９以下のとき、下記式（７）を満たすと、ｋ番目の状態変数ＳＴｋの値が、ｋ−１番目の状態変数ＳＴｋ−１から１減少させた値となる。
【００８３】
〈数７〉
Ｃｋ＜（２×ＳＴｋ−１−１）×（ｈ−１）−２０×ｊｋ＋１      ・・・（７）
【００８４】
また、ｋ−１番目の状態変数ＳＴｋ−１が１０のとき、下記式（８）を満たすと、ｋ番目の状態変数ＳＴｋの値が、ｋ−１番目の状態変数ＳＴｋ−１から１減少させた値（即ち、９）となる。また、上記式（７）及び下記式（８）を図８に示す。図８は、状態変数を減少させる条件を示したグラフである。なお、図８に示すグラフの縦軸は累積値Ｃ、横軸は画像データ中における画素データの垂直方向の座標ｊである。
【００８５】
〈数８〉
Ｃｋ≦（２×９＋２）×（ｈ−１）−２０×ｊｋ＋１      ・・・（８）
【００８６】
上記式（６）〜（８）は、状態変数ＳＴが等しくなる各小領域の境界として、解釈されうる。ただし、この境界は一例に過ぎず、どのように境界を設定してもよい。上記例では、状態変数ＳＴの変化にヒステリシスを持たせるために、上記式（６）及び（７）に示す境界線を異ならせる（境界が所定の不感幅を有する）ようにしているが、これらを一致させてもよい。
【００８７】
具体的に例えば、状態変数ＳＴを増大させるための境界線と、状態変数ＳＴを減少させるための境界線と、をともに上記式（６）に示す境界線としてもよい。また、上記式（６）〜（８）に示す境界線は、画像データ中における画素データの垂直方向の座標ｊを変数とするものであるが、符号化回数ｋなどの、符号化装置１による符号化の進捗度を示す他の数を変数としてもよい。
【００８８】
符号化処理選択部１４３は、上述のように算出したｋ番目の状態変数ＳＴｋに基づいて、ｋ＋１番目の予測誤差データｄｐｋ＋１の量子化を行う際に用いるｋ＋１番目の量子化係数ｒｋ＋１を選択する。そして、符号化処理選択部１４３が、選択したｋ＋１番目の量子化係数ｒｋ＋１を設定するように指示する量子化係数指示データｒｓｋ＋１を、量子化係数設定部１４１に入力する。これにより、量子化係数設定部１４１が、量子化部１３１がｋ＋１番目の予測誤差データｄｐｋ＋１を量子化する際に用いるｋ＋１番目の量子化係数ｒｋ＋１を設定する。
【００８９】
符号化処理選択部１４３による、量子化係数ｒの選択方法の一例について、図面を参照して説明する。図９は、符号化処理選択部による量子化係数の選択方法の一例について示す表である。なお、図９に示す「可変長符号データの最大符号長」は、可変長符号データ生成部１３２が、図６に示す符号化テーブル１のみを用いた場合を例示したものである。
【００９０】
図９に示すように、符号化処理選択部１４３は、状態変数ＳＴが大きくなるほど（累積値Ｃが大きくなるほど）、量子化係数ｒを大きくする。これにより、符号化用変数ｎの取り得る値の範囲が小さくなるため、可変長符号データの最大符号長を短くすることが可能になる（上記式（２）及び（４）参照）。
【００９１】
このとき、図９に示すように、ＹＵＶの成分データに応じて個別的に量子化係数を設定すると、好ましい。例えば、人の視覚が、輝度成分Ｙに対する感度が高く、色差成分Ｕ，Ｖに対しての感度が低いことを考慮して、色差成分Ｕ，Ｖに対して設定する量子化係数ｒが、輝度成分Ｙに対して設定する量子化係数ｒに比べて、大きくなるようにしてもよい。
【００９２】
このように量子化係数を設定すると、量子化係数ｒの増大（可変長符号データｄｃの符号長の短縮化）に伴う画像データの劣化を、人に感知されにくくすることが可能になる。
【００９３】
また、本発明の実施形態に係る符号化装置１では、図７に示した状態変数ＳＴが最大値１０になるとき、可変長符号データｄｃの最大符号長（１０ビット）が、目標符号長Ｔ（１２ビット）よりも短くなるように設定する。さらに、状態変数ＳＴが９から最大値１０に増大する際の境界における累積値Ｃ（限界値。図７において太線で表示。）が、少なくとも最後（ｊ＝１０７９）には０以下になるように設定する。これにより、圧縮率が低く状態変数ＳＴが最大値１０になるときに、目標圧縮率（５０％）よりも高い圧縮率が実現されるようにして、最終的に少なくとも目標圧縮率が達成されるようにすることが可能になる。
【００９４】
上記のように、本発明の実施形態に係る符号化装置１が目標圧縮率を保証可能であることについて、図面を参照して具体的に説明する。図１０は、順次生成される可変長符号データの全ての符号長が、図９に示す最大符号長になる場合における、累積値の変化を示すグラフである。なお、図１０では図示の簡略化のため、状態変数ＳＴを増大させるための境界線（上記式（６）参照）のみを表示している。
【００９５】
図１０に示すように、状態変数ＳＴが９になるまでは、状態変数ＳＴの増大に伴い累積値Ｃの増大幅が次第に小さくなるものの、累積値Ｃは増大し続ける。そして、状態変数ＳＴが９になった時点で、図９に示すように可変長符号データｄｃの最大符号長が目標符号長Ｔと同じ１２ビットになるため、累積値Ｃが変動しなくなる。なお、この時点では累積値Ｃが依然として０より大きく、目標圧縮率は達成されていない。
【００９６】
その後、累積値Ｃは変動しないが、画素データｄｉの符号化は進行し、画像データ中における画素データｄｉ（符号化対象）の垂直方向の座標ｊが、増大する。そのため、累積値Ｃが変動しなかったとしても、画素データｄｉの符号化の進行とともに限界値を超えるため、状態変数ＳＴが１０に増大する。
【００９７】
すると、順次生成される可変長符号データｄｃの最大符号長が、目標符号長Ｔよりも短い１０ビットになる。そのため、その後は累積値Ｃが次第に減少していく。本例の場合、状態変数ＳＴが１０に増大する際の境界線に沿って、累積値Ｃが減少していく。そして、最終的に限界値が０になり、累積値Ｃが０以下の数となるため、目標圧縮率を保証することが可能になる。
【００９８】
また、符号化処理選択部１４３は、上述のように算出したｋ番目の状態変数ＳＴｋや累積値Ｃｋに基づいて、ｋ＋１番目の可変長符号データｋ＋１を生成する際に用いるｋ＋１番目の符号化テーブルｔｋ＋１を選択する。そして、符号化処理選択部１４３が、選択したｋ＋１番目の符号化テーブルｔｋ＋１を設定するように指示する符号化テーブル指示データｔｓｋ＋１を符号化テーブル設定部１４２に入力する。これにより、符号化テーブル設定部１４２が、可変長符号データ生成部１３２がｋ＋１番目の可変長符号データｄｃｋ＋１を生成する際に用いるｋ＋１番目の符号化テーブルｔｋ＋１を、設定する。
【００９９】
符号化処理選択部１４３による符号化テーブルｔの選択方法の一例について、図面を参照して説明する。図１１は、種々の画像における符号化用変数ｎの出現確率（％）を示す表である。図１２は、図１１に示す画像データを構成する画素データについて、図６に示す符号化テーブル１〜３のそれぞれを用いて可変長符号データを生成した場合のそれぞれの符号長の期待値を示す表である。
【０１００】
図１１に示す「画像」は、画像データの全体としても解釈され得るが、画像データの一部としても解釈され得る。また、図１１及び図１２では、同じ画像で量子化係数ｒが異なる（本例では１と４）それぞれの場合を示している。また、量子化係数ｒが異なると、図５に示したように、符号化用変数ｎの取りうる値の範囲が異なる。
【０１０１】
図１１に示すように、画像１は、小さい符号化用変数ｎに出現確率が偏ったものである。一方、画像２は、小さい符号化用変数ｎに対する出現確率の偏りが小さく、大きい符号化用変数ｎの出現確率が比較的大きい画像である。即ち、画像１は、隣接する画素データの変化が比較的小さく滑らかなものであり、画像２は、隣接する画素データの変化（明るさや色の変化）が比較的大きい画像である。
【０１０２】
画像３は、画像１の特徴をより強く表現した特殊な画像であり、画像４は、画像２の特徴をより強く表現した特殊な画像である。即ち、画像３は、隣接する画素データの変化がない単一（ベタ）な画像であり、画像４は、例えば垂直方向に伸びる１画素毎のストライプのような、隣接する画素データが激しく変化する画像である。なお、上述のように、状態変数ＳＴに応じて量子化係数ｒは変動し得るが、ここでは符号化テーブル１〜３の差異について説明するために、量子化係数ｒを１または４で固定した場合を例示する。
【０１０３】
図１１に示す画像１〜４のそれぞれについて、図６に示す符号化テーブル１〜３を用いて可変符号長データｄｃを生成した場合、符号長の期待値は図１２に示すものとなる。なお、図１２に示す符号化テーブル１〜３に対応する符号長の期待値は、図６に示す符号化テーブル１〜３のそれぞれの符号長と、図１１に示す画像１〜４のそれぞれの出現確率と、を対応する符号化用変数ｎ毎に乗算して合算することで得られる。
【０１０４】
図６に示すように、符号化テーブル１を用いて得られる可変符号長データｄｃの符号長は、符号化用変数ｎが小さい場合は符号化テーブル２よりも小さくなるが、符号化用変数ｎが大きい場合は符号化テーブル２よりも大きくなる。そのため、図１２に示すように、画像１については、符号化テーブル１を用いて得られる可変符号長データｄｃの符号長の期待値の方が、符号化テーブル２を用いて得られる可変符号長データｄｃの符号長の期待値よりも小さくなる。即ち、符号化テーブル１を用いた方が、符号化テーブル２を用いるよりも、圧縮率を高くすることができる。なお、画像３についても同様である。
【０１０５】
一方、画像２については上記の場合の逆になり、符号化テーブル２を用いて得られる可変符号長データｄｃの符号長の期待値の方が、符号化テーブル１を用いて得られる可変符号長データｄｃの符号長の期待値よりも小さくなる。即ち、符号化テーブル２を用いた方が、符号化テーブル１を用いるよりも、圧縮率を高くすることができる。なお、画像４についても同様である。
【０１０６】
符号化処理選択部１４３は、例えば状態変数ＳＴや累積値Ｃなどに基づいて、符号化用変数ｎの出現確率の傾向を認識し、上述のように可変長符号データｄｃの符号長が短くなると期待される符号化テーブルを、適応的に選択することができる。このように符号化処理選択部１４３が符号化テーブルを選択することで、可変長符号データｄｃの符号長を短くして、圧縮率を高くすることが可能になる。
【０１０７】
さらに、符号化処理選択部１４３は、目標圧縮率を保証する観点から、符号化用変数ｎが特に大きくなる場合（例えば、画像４を符号化する場合）に、可変長符号データｄｃの符号長を短くし得る符号化テーブル３を選択すると、好ましい。例えば、符号化処理選択部１４３は、状態変数ＳＴや累積値Ｃが所定の値よりも大きくなる場合に、符号化テーブル３を選択する。これにより、圧縮率を効果的に高くすることが可能になる。なお、同様の観点から、符号化処理選択部１４３が、状態変数ＳＴや累積値Ｃの値に応じて、符号化テーブル１〜３を選択してもよい。
【０１０８】
以上のように、本発明の実施形態に係る符号化装置１及びその符号化方法は、累積値Ｃが最終的に０以下になるように、可変長符号データｄｃの最大符号長を順次制御する。そのため、目標圧縮率を保証しながらも、累積値Ｃに余裕があれば可変長符号データｄｃの最大符号長を長くし得ることで、画像データの劣化を抑制することが可能になる。
【０１０９】
＜＜復号化装置及び復号化方法＞＞
本発明の実施形態に係る復号化装置３及びその復号化方法について、以下図面を参照して説明する。最初に、復号化装置３の構成について、図１３を参照して説明する。図１３は、本発明の実施形態に係る復号化装置の構成の一例を示すブロック図である。なお、図１３において、図２に示した符号化装置１と同様になる部分については同じ符号を付し、その詳細な説明について省略する。また、説明の具体化のために、符号化装置１で述べた各種設定については、以下の説明においても適用されるものとする。
【０１１０】
図１３に示すように、復号化装置３は、可変長符号データｄｃと画素座標データｄｚとが順次入力される第１入力端子ＩＴ１と、設定情報ｄｍが入力される第２入力端子ＩＴ２と、可変長符号データを順次復号化することで復号化予測画素データｄｄｐを順次生成する復号化部３１と、可変長符号データｄｃと設定情報ｄｍと画像座標データｄｚとに基づいて復号化部３１を順次制御する復号化制御部３２と、復号画素データｄｏの予測値である復号予測値データｄｏｐを順次生成する復号予測値データ生成部３３と、復号予測誤差データｄｄｐと復号予測値データｄｏｐとを用いて復号画素データｄｏを順次生成する復号画素データ３４と、復号画素データｄｏを順次出力する出力端子ＯＴ１と、を備える。
【０１１１】
復号予測値データ生成部３３は、生成した復号予測値データｄｏｐを一時的に順次保持可能な復号予測値バッファ３３１を備える。
【０１１２】
復号化部３１は、可変長符号データｄｃに対応した量子化予測誤差データｄｑを順次生成する可変長符号データ復号部３１１と、量子化予測誤差データｄｑを逆量子化係数Ｒで逆量子化することで復号予測誤差データｄｄｐを順次生成する逆量子化部３１２と、を備える。
【０１１３】
復号化制御部３２は、可変長符号データｄｃと量子化予測誤差データｄｑとの対応関係を示す復号化テーブルＴを設定する復号化テーブル設定部３２１と、逆量子化係数Ｒを設定する逆量子化係数設定部３２２と、可変長符号データｄｃと設定情報ｄｍと画像座標データｄｚとに基づいて設定すべき復号化テーブルＴを指示する復号化テーブル指示データＴｓを出力するとともに設定すべき逆量子化係数Ｒを指示する逆量子化係数指示データＲｓを出力する復号化処理選択部３２３と、を備える。
【０１１４】
次に、復号化装置３の具体的な動作について、図面を参照して説明する。まず、第１入力端子ＩＴ１に、可変長符号データｄｃが順次入力される。可変長符号データｄｃが入力される順番は、符号化装置１から出力された順番と同じであると、好ましい。また、第１入力端子ＩＴ１には、画素座標データｄｚが順次入力される。
【０１１５】
復号化処理選択部３２３は、上述の符号化処理選択部１４３と同様の方法（累積値Ｃ及び状態変数ＳＴに基づいた選択方法）で、符号化テーブルｔと同じ対応関係を示す復号化テーブルＴと、量子化係数ｒと等しい逆量子化係数Ｒと、をそれぞれ選択する。そして、復号化テーブル設定部３２１に、選択した復号化テーブルＴの設定を指示する復号化テーブル指示データＴｓを出力し、逆量子化係数設定部３２２に、選択した逆量子化係数Ｒの設定を指示する逆量子化係数指示データＲｓを出力する。
【０１１６】
可変長符号データ復号部３１１は、復号化テーブル設定部３２１によって設定される復号化テーブルＴに基づいて、入力されるデータ中から上述したヘッダ部を特定することにより、ｕ番目の可変長符号データｄｃｕを特定するとともに、ｕ番目の符号化用変数ｎｕを求める。なお、ｕは復号化回数を示し、符号化回数のｋと同様に、１以上１９２０×１０８０以下の自然数を取り得る。
【０１１７】
具体的に例えば、図６に示した符号化テーブル１と同じ対応関係を示す復号化テーブルＴが設定され、逆量子化係数Ｒ＝１が設定されている場合において、第１入力端子ＩＴ１に順番に入力されるデータ中から「１１１０」が確認されれば、「１１１０＊＊＊」の７ビットが可変長符号データｄｃであることが分かる。さらに、ヘッダ部に続く「＊＊＊」が、例えば「０１０」であれば、符号化用変数ｎが「８以上１５以下」の範囲において３番目に小さい「１０」であると、求めることができる。
【０１１８】
次に、可変長符号データ復号部３１１は、特定したｕ番目の符号化用変数ｎｕに対して、上述の可変長符号データ生成部１３２と逆の動作（即ち、上記式（４）の逆変換）を行うことで、ｕ番目の量子化予測誤差データｄｑｕを生成する。
【０１１９】
さらに、逆量子化部３１２は、下記式（９）に示すように、ｕ番目の量子化予測誤差データｄｑｕを、ｕ番目の逆量子化係数Ｒｕで逆量子化して、ｕ番目の復号予測誤差データｄｄｐｕを生成する。具体的には、ｕ番目の量子化予測誤差データｄｑｕの絶対値にｕ番目の逆量子化係数Ｒｋを乘じ、さらにその積から１を減じてｕ番目の量子化予測誤差データｄｑｕの符号を付すことで、ｕ番目の復号予測誤差データｄｄｐｕを生成する。
【０１２０】
〈数９〉
ｄｄｐｕ＝ｓｉｇｎ（ｄｑｕ）（｜ｄｑ｜×ｒ−１）      ・・・（９）
【０１２１】
復号予測値データ生成部３３は、下記式（１０）に示すように、ｕ−１番目の復号画素データｄｏｕ−１を、そのままｕ番目の復号予測値データｄｏｐｕとする。ｕ−１番目の復号画素データｄｏｕ−１は、復号予測値バッファ３１１で一時的に保持される。なお、符号化装置１における予測値データｄｉｐの算出と同様に、復号予測値データ生成部３３が、下記式（１０）とは異なる方法で、ｕ番目の復号予測値データｄｏｐｕを生成してもよい。ただし、復号予測値データ生成部３３は、予測値データ生成部１１と対応した方法を採用すると、好ましい。具体的に例えば、予測値データ生成部１１が、ｋ−ａ番目の予測値データｄｉｐｋ−ａをｋ番目の予測値データｄｉｐｋの算出時に用いる場合、復号予測値データ生成部３３も、ｕ−ａ番目の復号画素データｄｏｕ−ａを、ｕ番目の復号予測値データｄｏｐｕとすると、好ましい。
【０１２２】
〈数１０〉
ｄｏｐｕ＝ｄｏｕ−１      ・・・（１０）
【０１２３】
そして、復号画素データ生成部３４が、下記式（１１）に示すように、ｕ番目の復号予測誤差データｄｄｐｕにｕ番目の復号予測値データｄｏｐｕを加算することで、ｕ番目の復号画素データｄｏｕを算出する。
【０１２４】
〈数１１〉
ｄｏｕ=ｄｄｐｕ＋ｄｏｐｕ      ・・・（１１）
【０１２５】
以上のように、復号化装置３及びその符号化方法は、符号化装置１及びその符号化方法によって符号化された可変長符号データｄｃを復号化することで、復号画素データｄｏを生成することが可能である。
【０１２６】
＜＜変形例＞＞
＜１＞  符号化装置１の符号化処理選択部１４３が選択可能な符号化テーブルに、図１４に示す符号化テーブル４が含まれてもよい。図１４は、符号化テーブルの別例を示す表である。
【０１２７】
可変長データ生成部１３２が、図１４に示す符号化テーブルを用いる場合、符号化用変数ｎが０であるときに、「０」である１ビットの可変長符号データｄｃを生成する。一方、符号化用変数ｎが０以外であるときは、「１」と「ｎ−１の符号」とを組み合わせた符号である、１＋（「ｎ−１の符号」の符号長）ビットの可変長符号データｄｃを生成する。なお、「ｎ−１の符号」は、例えば、図６に示す符号化テーブル１〜３のいずれかによって得られる符号であってもよい。
【０１２８】
この符号化テーブル４を用いると、符号化用変数ｎが０であるときに、圧縮率を効果的に高めることができる。そのため、例えば符号化用変数ｎが所定数（例えば、２回）以上連続することが確認されるような場合に、符号化処理選択部１４３がこの符号化テーブル４を選択するようにすると、好ましい。
【０１２９】
＜２＞  符号化装置１の可変長データ生成部１３２が、量子化部１３１の量子化に加えて（または代えて）、量子化を行ってもよい。具体的に例えば、符号化テーブル１が選択されて符号化用変数ｎが１０であるとき、上述の例であればヘッダ部「１１１０」に本体部「０１０」を組み合わせた可変長符号データｄｃが生成されるが、ここで本体部が取り得る３ビット（８通り）の値をさらに２で量子化して、２ビット（４通り）にしてもよい。この場合、ヘッダ部「１１１０」に本体部「０１」を組み合わせた可変長符号データｄｃが生成される。
【０１３０】
このように構成すると、可変長符号データｄｃの符号長を、効率良く短くすることが可能になる。なお、可変長データ生成部１３２が、累積値Ｃや状態変数ＳＴが所定の値以上となるような特定の場合にのみ上記の量子化を行ってもよいし、常時行ってもよい。
【０１３１】
＜３＞  符号化装置１の符号化処理選択部１４３が、量子化係数ｒ及び符号化テーブルｔの双方を選択することで、可変長符号データｄｃの符号長（圧縮率）を制御する場合について説明したが、量子化係数ｒのみを選択して符号化テーブルｔを固定するように構成してもよい。ただし、符号化処理選択部１４３が符号化テーブルｔを選択する構成であると、効果的に圧縮率を高めるとともに画像の劣化を抑制することができるため、好ましい。また、符号化処理選択部１４３が、符号化テーブルｔを選択する代わりに、符号化方式を示す演算式などを選択してもよい。
【０１３２】
＜４＞  符号化装置１の符号化処理選択部１４３が、状態変数ＳＴに基づいて量子化係数ｒや符号化テーブルｔを選択するものとして説明したが、状態変数ＳＴを算出することなく、累積値Ｃ及び座標ｊ（または、累積値Ｃ及び符号化回数ｋ）に直接的に基づいて、これらを選択してもよい。
【０１３３】
また、上記式（６）〜（８）及び図７及び図８では、ｊの増大に伴って累積値が減少する等間隔の境界線について例示したが、境界線はどのように設定してもよい。例えば、座標ｊが画像データの垂直方向の中間座標（例えば、１０７９の半分である５３９）付近であるときに累積値が大きくなるような境界線を設定してもよいし、等間隔にしなくてもよい。
【０１３４】
＜５＞  画像データを構成する画素データが、ＹＵＶの各成分を含む場合について例示したが、画素データはＲ（赤）Ｇ（緑）Ｂ（青）の各成分データを含むものであってもよいし、これ以外であってもよい。また、画素データに含まれる成分データの種類は３種類に限られず、４種類以上であってもよいし、２種類以下であってもよい。なお、ＹＵＶとＲＧＢは、下記式（１１）及び（１２）によって相互に変換可能である。
【０１３５】
〈数１１〉
Ｙ＝［（Ｒ＋２Ｇ＋Ｂ）／４］
Ｕ＝Ｂ−Ｇ
Ｖ＝Ｒ−Ｇ                ・・・（１１）
【０１３６】
〈数１２〉
Ｇ＝Ｙ−［（Ｕ＋Ｖ）／４］
Ｒ＝Ｖ＋Ｇ
Ｂ＝Ｕ＋Ｇ                ・・・（１２）
【０１３７】
＜６＞  符号化装置１が、画像データを構成する全て（１９２０×１０８０個）の画素データに対して、一連の圧縮率を保証した符号化を行う場合について例示したが、これ以外の所定数の画素データに対して、当該符号化を行ってもよい。具体的に例えば、画像データの水平方向の１行分の画素データや、画像データの上半分や下半分を構成する画素データなどに対して、この一連の圧縮率を保証した符号化を行ってもよい。
【産業上の利用可能性】
【０１３８】
本発明は、テレビ等で再生する画像データをフレームメモリ等に記憶する場合において、当該画像データを構成する画素データを符号化する符号化装置や符号化方法に利用可能である。また、当該フレームメモリ等から読み出した符号化された画素データを復号化する復号化装置や復号化方法に利用可能である。さらに、本発明は、当該符号化装置と当該復号化装置とを備えた符復号化システムに利用可能である。
【符号の説明】
【０１３９】
１      符号化装置
１１    予測値データ生成部
１１１  予測値バッファ
１２    予測値誤差データ生成部
１３    符号化部
１３１  量子化部
１３２  可変長符号データ生成部
１４    符号化制御部
１４１  量子化係数設定部
１４２  符号化テーブル設定部
１４３  符号化処理選択部
２      記憶装置
３      復号化装置
３１    復号化部
３１１  可変長符号データ復号部
３１２  逆量子化部
３２    復号化制御部
３２１  復号化テーブル設定部
３２２  逆量子化係数設定部
３２３  復号化処理選択部
３３    復号予測値データ生成部
３３１  復号予測値バッファ
３４    復号画素データ生成部
【図１】
0005149427.tif 000002
【図２】
0005149427.tif 000003
【図３】
0005149427.tif 000004
【図４】
0005149427.tif 000005
【図５】
0005149427.tif 000006
【図６】
0005149427.tif 000007
【図７】
0005149427.tif 000008
【図８】
0005149427.tif 000009
【図９】
0005149427.tif 000010
【図１０】
0005149427.tif 000011
【図１１】
0005149427.tif 000012
【図１２】
0005149427.tif 000013
【図１３】
0005149427.tif 000014
【図１４】
0005149427.tif 000015