(57)【要約】【課題】  ブロック内の有意係数の個数を周辺ブロックの有意係数の個数に応じて適応的に符号化する高速な符号化装置を提供する。【解決手段】  符号化対象ブロックの周辺ブロックのブロック情報を保持する周辺ブロック情報保持手段を備える。周辺ブロック情報に基づいて符号テーブルを選択しブロック情報を符号化する。ブロックデータの符号化処理と並行して、次の符号化対象ブロックの周辺ブロックのブロック情報を予め取得し、前記周辺ブロック情報保持手段へ入力する。【選択図】  図１
2009303151.tif 000002
【特許請求の範囲】
【請求項１】
画像を複数のブロックに分割し、前記ブロックを単位として、ブロック情報とブロックデータの符号化を行う際に用いる可変長符号化装置であって、
符号化対象ブロックの周辺ブロックのブロック情報を保持する周辺ブロック情報保持手段と、
符号化対象ブロックのブロック情報を符号化する際に用いる可変長符号化テーブルを、前記符号化対象ブロックの周辺ブロックのブロック情報に応じて選択して符号化するブロック情報符号化手段と、
符号化対象ブロックのブロックデータを符号化するブロックデータ符号化手段と、
前記ブロックデータ符号化手段による符号化処理と並行して、次の符号化対象ブロックの周辺ブロックのブロック情報を取得し、前記周辺ブロック情報保持手段へ入力する周辺ブロック情報取得手段とを備えることを特徴とする可変長符号化装置。
【請求項２】
前記ブロック情報は、ブロック内の非零データの個数であり、
前記ブロックデータは、ブロック内の非零データの値と、零データの連続数であることを特徴とする請求項１に記載の可変長符号化装置。
【請求項３】
画像を複数のブロックに分割し、前記ブロックを単位として、ブロック情報とブロックデータの符号化または復号化を行う際に用いる可変長符号化復号化装置であって、
符号化または復号化対象ブロックの周辺ブロックのブロック情報を保持する周辺ブロック情報保持手段と、
符号化対象ブロックのブロック情報を符号化する際に用いる可変長符号化テーブルを、前記符号化対象ブロックの周辺ブロックのブロック情報に応じて選択して符号化するブロック情報符号化手段と、
符号化対象ブロックのブロックデータを符号化するブロックデータ符号化手段と、
復号化対象ブロックのブロック情報を符号化する際に用いる可変長復号化テーブルを、前記復号化対象ブロックの周辺ブロックのブロック情報に応じて選択して復号化するブロック情報復号化手段と、
復号化対象ブロックのブロックデータを復号化するブロックデータ復号化手段と、
前記ブロックデータ符号化手段による符号化処理または前記ブロックデータ復号化手段による復号化処理と並行して、次の符号化対象ブロックまたは復号化対象ブロックの周辺ブロックのブロック情報を取得し、前記周辺ブロック情報保持手段へ入力する周辺ブロック情報取得手段とを備えることを特徴とする可変長符号化復号化装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像信号を圧縮伸張する際に用いる、可変長符号化装置および可変長符号化復号化装置に関する。
【背景技術】
【０００２】
静止画像や動画像などの画像信号の伝送や蓄積再生を行うために、画像信号の符号化技術が用いられる。そのような技術として、ITU-T Rec. H.264 Advanced Video Coding | ISO/IEC International Standard 14496-10 (MPEG-4 AVC)、以下Ｈ．２６４と呼ぶ、が知られている。
【０００３】
Ｈ．２６４では、可変長符号化方法として、コンテキスト適応型可変長符号化（以下ＣＡＶＬＣ）方式とコンテキスト適応型２値算術符号化（以下ＣＡＢＡＣ）方式の２つの方法が定義されている。
【０００４】
ＣＡＶＬＣ方式においては、ブロック内の直交変換係数のうち、有意係数の個数及び絶対値が１の有意係数の個数の組み合わせと、絶対値が１より大きい有意係数の値と、非有意係数の個数と、非有意係数の連続数を各々別のテーブルで符号化する。ここで有意係数とは、係数値が０でない直交変換係数のことである。ブロック内の有意係数の個数の符号化においては、周辺ブロックの情報を用いて符号テーブルを適応的に切り替えることにより、符号化効率を向上させている。（特許文献１及び特許文献２参照）。
【０００５】
ブロック内の有意係数の個数を符号化する方法について説明する。図４において、ブロックＣが可変長符号化を施そうとしているブロックであり、ブロックＡ、ＢはそれぞれブロックＣの左および上に位置するブロックである。
【０００６】
ブロックＡ、Ｂが両者とも画面内にあり、かつ同じスライス内であるとすると、ブロックＡ、Ｂの有意係数の個数（各々nA,nB）の平均値nCを求め、その値によって用いる符号テーブルを選択する。図６に符号テーブルの例を示す。図中、TrailingOnes はブロック内において絶対値が１の有意係数の個数を表し、TotalCoeffはブロック内の有意係数の個数を表す。例えば、平均値nCが０または１の場合は図６の符号テーブル０を、平均値が２または３の場合は符号テーブル１を、平均値が５以上の場合は符号テーブル２を、というように選択する。また、ブロックＡまたはＢが画面内に無いかまたは同じスライス内に無い場合は、当該ブロックの有意係数の個数を０とみなして、平均値nCを算出する。
【特許文献１】特開２００４−７５０６号公報
【特許文献２】特開２００４−６４７２５号公報
【発明の開示】
【発明が解決しようとする課題】
【０００７】
しかしながら、ブロック内の有意係数の個数を高速に符号化するための具体的な符号化装置の構成については、未だ確立されていない。例えば、特許文献１に開示されている処理フロー通りに符号化装置を実装した場合について考える。具体的には、符号化対象ブロックの周辺ブロックの有意係数の個数を取得した後、平均値を求めてから、該平均値に基づいて符号テーブルを選択するという処理フローである。この場合、図３の動作タイミング図、図３（a）に示すように、ブロックＡ、Ｂの有意係数の個数（各々nA,nB）をメモリから読み出す処理、平均値nCを求める処理、ブロックＣの有意係数の個数をメモリに書き込む処理が必要となる。よって、符号テーブルを選択する処理だけで４サイクルを必要とし、その間は符号化処理が行われないデッドサイクルとなる。
【０００８】
そこで、本発明は、周辺ブロックの有意係数の個数に応じて適応的に符号テーブルを選択しブロック内の有意係数の個数を可変長符号化する、高速な可変長符号化装置を提供することを目的とする。
【０００９】
また、本発明は、周辺ブロックの有意係数の個数に応じて適応的に符号テーブルを選択し、ブロック内の有意係数の個数を可変長符号化及び可変長復号化する装置の回路実装コストを、低減することを目的とする。
【課題を解決するための手段】
【００１０】
以上に説明した課題を解決するため、本発明の可変長符号化装置は、
画像を複数のブロックに分割し、前記ブロックを単位として、ブロック情報とブロックデータの符号化を行う際に用いる可変長符号化装置であって、
符号化対象ブロックの周辺ブロックのブロック情報を保持する周辺ブロック情報保持手段と、
符号化対象ブロックのブロック情報を符号化する際に用いる可変長符号化テーブルを、前記符号化対象ブロックの周辺ブロックのブロック情報に応じて選択して符号化するブロック情報符号化手段と、
符号化対象ブロックのブロックデータを符号化するブロックデータ符号化手段と、
前記ブロックデータ符号化手段による符号化処理と並行して、次の符号化対象ブロックの周辺ブロックのブロック情報を取得し、前記周辺ブロック情報保持手段へ入力する周辺ブロック情報取得手段とを備えることを特徴とする。
【００１１】
また、本発明の可変長符号化復号化装置は、
画像を複数のブロックに分割し、前記ブロックを単位として、ブロック情報とブロックデータの符号化または復号化を行う際に用いる可変長符号化復号化装置であって、
符号化または復号化対象ブロックの周辺ブロックのブロック情報を保持する周辺ブロック情報保持手段と、
符号化対象ブロックのブロック情報を符号化する際に用いる可変長符号化テーブルを、前記符号化対象ブロックの周辺ブロックのブロック情報に応じて選択して符号化するブロック情報符号化手段と、
符号化対象ブロックのブロックデータを符号化するブロックデータ符号化手段と、
復号化対象ブロックのブロック情報を符号化する際に用いる可変長復号化テーブルを、前記復号化対象ブロックの周辺ブロックのブロック情報に応じて選択して復号化するブロック情報復号化手段と、
復号化対象ブロックのブロックデータを復号化するブロックデータ復号化手段と、
前記ブロックデータ符号化手段による符号化処理または前記ブロックデータ復号化手段による復号化処理と並行して、次の符号化対象ブロックまたは復号化対象ブロックの周辺ブロックのブロック情報を取得し、前記周辺ブロック情報保持へ入力する周辺ブロック情報取得手段とを備えることを特徴とする。
【発明の効果】
【００１２】
本発明の可変長符号化装置は、ブロック情報の符号テーブル選択のための処理と、ブロックデータの符号化とが並行に行われるため、高速な可変長符号化処理が可能となる。
【００１３】
また、本発明の可変長符号化復号化装置は、ブロック情報の符号テーブル選択のための処理を行う部分が、符号化部と復号化部で共有されるため、回路実装コストを削減できる。
【発明を実施するための最良の形態】
【００１４】
次に、本発明の詳細を実施例の記述に従って説明する。
【実施例１】
【００１５】
本発明の実施形態１における可変長符号化装置の構成について、図１のブロック図を参照して説明する。
【００１６】
図１において、１０１は、符号化対象のブロック内の直交変換係数のうち、有意係数の値(level)と、非有意係数の個数(total_zeros)と、非有意係数の連続数(run_before)を各々符号化するブロックデータ符号化部である。１０２はブロック内の直交変換係数のうち、有意係数の個数（TotalCoeff）及び絶対値が１の有意係数の個数（TrailingOnes）の組み合わせ（CoeffToken）を符号化するブロック情報符号化部である。１０３は、ブロックデータ符号化部１０１とブロック情報符号化部１０２から出力された符号化されたデータを結合する符号結合部である。１０４は、符号化対象ブロックの周辺ブロックの有意係数の個数を保持するブロック情報管理部である。１０５は、ブロックの有意係数の個数を格納するブロック情報メモリである。１０６は、ブロックデータ符号化部１０１、ブロック情報符号化部１０２、ブロック情報管理部１０４を制御する制御部である。以下、図１のブロック図及び図３の動作タイミング図を用いて、本実施形態の可変長符号化装置の動作を説明する。
【００１７】
本実施形態の可変長符号化装置の外部から、図５に示す位置関係にあるブロック０の直交変換係数が入力される。なお、ブロックの大きさは本発明では規定されるものではないが、ここでは４画素×４画素とする。
【００１８】
まず、制御部１０６はブロック情報符号化部１０２に動作開始を指示する。
【００１９】
ブロック情報符号化部１０２は、制御部１０６から動作開始を指示されると、ブロック０のTotalCoeff及びTrailingOnesを各々測定し、CoeffTokenを求める。次に、ブロック情報管理部１０４が予め保持しているパラメータnCを基に図６に示す符号テーブルのうち一つを選択し、CoeffTokenを符号化する。同時に、ブロック情報管理部１０４へ、ブロック０のTotalCoeffを出力し、動作を終了する。
【００２０】
次に、制御部１０６はブロックデータ符号化部１０１とブロック情報管理部１０４に動作開始を同時に指示する。
【００２１】
ブロックデータ符号化部１０１は、制御部１０６から動作開始を指示されると、ブロック０のlevel、total_zeros、run_beforeを各々符号化する。
【００２２】
ブロック情報管理部１０４は、図５に示す位置関係にあるブロック１の上に位置するブロックの有意係数の個数nAを、ブロック情報メモリ１０５から読み出す。次に、ブロック１の左に位置するブロックの有意係数の個数nBを読み出す。なお、上または左のブロックが画面内に無いかまたは同じスライス内に無い場合は、ブロック情報メモリ１０５からは読み出さず、当該ブロックの有意係数の個数を０とする。次に、有意係数の個数nAとnBの平均値nCを算出し、ブロック情報符号化部１０２へnCを出力する。最後に、ブロック情報符号化部１０２から出力されたブロック０のTotalCoeffをブロック情報メモリ１０５へ書き込み、動作を終了する。
【００２３】
本実施形態の可変長符号化装置は、以上に説明した処理を、ピクチャの終了まで行う。
【００２４】
図３の動作タイミング図、図３（ｂ）から明らかなように、本実施形態の可変長符号化装置は、level、total_zeros及びrun_beforeの符号化と、CoeffTokenの符号テーブルを選択するための処理が並行して行われる。よって、CoeffTokenの符号テーブルを選択するための処理によるデッドサイクルが発生せず、高速な符号化処理が可能となる。
【００２５】
これにより、例えばデジタルカメラやデジタルビデオカメラなど本実施形態の可変長符号化装置を搭載する製品において、従来よりも単位時間あたりの録画フレーム数を増やしたり、画面サイズを大きくすることが可能となる。
【実施例２】
【００２６】
本発明の実施形態２における可変長符号化復号化装置の構成について、図２のブロック図を参照して説明する。
【００２７】
図２において、２０１は、符号化対象のブロック内の直交変換係数のうち、絶対値が１より大きい有意係数の値(level)と、非有意係数の個数(total_zeros)と、非有意係数の連続数(run_before)を各々符号化するブロックデータ符号化部である。２０２はブロック内の直交変換係数のうち、有意係数の個数（TotalCoeff）及び絶対値が１の有意係数の個数（TrailingOnes）の組み合わせ（CoeffToken）を符号化するブロック情報符号化部である。２０３は、ブロックデータ符号化部２０１とブロック情報符号化部２０２から出力された符号化されたデータを結合する符号結合部である。２０４は、符号化対象ブロックまたは復号化対象ブロックの周辺ブロックの有意係数の個数を保持するブロック情報管理部である。２０５は、ブロックの有意係数の個数を格納するブロック情報メモリである。２０６は、符号頭出し部２０８から出力された符号のうち、CoeffTokenを復号化するブロック情報復号化部である。２０７は、符号頭出し部２０８から出力された符号のうち、level、total_zeros、run_beforeを復号化するブロックデータ復号化部である。２０８は、外部から入力された符号化データ列から、所定の長さの符号を頭出しする符号頭出し部である。２０９は、ブロック情報符号化部２０２またはブロック情報復号化部２０６のいずれかのブロック情報を選択するブロック情報選択部である。２１０は、ブロックデータ符号化部２０１、ブロック情報符号化部２０２、ブロック情報管理部２０４、ブロック情報復号化部２０６、ブロックデータ復号化部２０７、ブロック情報選択部２０９を制御する制御部である。
【００２８】
本実施形態の可変長符号化復号化装置は、符号化動作と復号化動作は排他的に行われる。即ち、図２の２０１〜２０３と、２０６〜２０８が同時動作することはない。
【００２９】
以下、図２のブロック図を用いて、本実施形態の可変長符号化復号化装置の動作を説明する。
【００３０】
まず、符号化処理時の動作を説明する。ブロックデータ符号化部２０１〜ブロック情報メモリ２０５は各々、実施形態１の符号化装置のブロックデータ符号化部１０１〜ブロック情報メモリ１０５に対応しており、同様の動作を行う。制御部２１０は、選択部２０９に対し、常にブロック情報符号化部２０２からの情報を選択するように指示を送る。制御部２１０は、ブロックデータ符号化部２０１、ブロック情報符号化部２０２、ブロック情報管理部２０４に対しては、第１の実施形態の符号化装置と同様の制御を行う。制御部２１０は、ブロック情報復号化部２０６及びブロックデータ復号化部２０７に対しては、動作を行わせない。
【００３１】
次に、復号化処理時の動作を説明する。まず、制御部２１０は、ブロック情報選択部２０９に対し、常にブロック情報復号化部２０６からの情報を選択するように指示を送る。
【００３２】
符号頭出し部２０８は、外部から入力された符号化データ列をブロック情報復号化部２０６及びブロックデータ復号化部２０７に供給する。
【００３３】
次に、制御部２１０はブロック情報復号化部２０６に動作開始を指示する。
【００３４】
ブロック情報復号化部２０６は、現時点で図５に示すブロック０を復号化対象としているものとする。ブロック情報復号化部２０６は、制御部２１０から動作開始を指示されると、ブロック情報管理部２０４が予め保持しているパラメータnCを基に図６に示す符号テーブルのうち一つを選択する。選択されたテーブルを基に、ブロック０のCoeffTokenを復号化する。同時に、ブロック情報選択部２０９を介して、ブロック情報管理部２０４にTotalCoeffを出力する。また、ブロックデータ復号化部２０７にTotalCoeff及びTrailingOnesを出力し、符号頭出し部２０８に復号化した符号長を出力し、動作を終了する。
【００３５】
次に、制御部２１０はブロックデータ復号化部２０７とブロック情報管理部２０４に動作開始を同時に指示する。
【００３６】
ブロックデータ復号化部２０７は、制御部２１０から動作開始を指示されると、ブロック情報復号化部２０６から出力されたTotalCoeff及びTrailingOnesを基にブロック０内の復号化対象となるlevelの総数を決定する。そして、level、total_zeros、run_beforeを各々復号化する。各々の符号を復号化しながら符号頭出し部２０８に復号化した符号長を出力し、動作を終了する。
【００３７】
符号頭出し部２０８は、ブロック情報復号化部２０６及びブロックデータ復号化部２０７から出力された符号長を基に、次に復号化する符号化データ列の先頭の頭出しを行う。
【００３８】
ブロック情報管理部２０４は、図５に示す位置関係にあるブロック１の上に位置するブロックの有意係数の個数nAを、ブロック情報メモリ２０５から読み出す。次に、ブロック１の左に位置するブロックの有意係数の個数nBを読み出す。なお、上または左のブロックが画面内に無いかまたは同じスライス内に無い場合は、ブロック情報メモリ２０５からは読み出さず、当該ブロックの有意係数の個数を０とする。次に、有意係数の個数nAとnBの平均値nCを算出し、ブロック情報復号化部２０６へnCを出力する。最後に、ブロック情報復号化部２０６からブロック情報選択部２０９を介して入力されたブロック０のTotalCoeffをブロック情報メモリ２０５へ書き込み、動作を終了する。
【００３９】
図２に示すブロック図および以上の説明から明らかなように、本実施形態の可変長符号化復号化装置は、符号化動作と復号化動作の両方で同一のブロック情報管理部２０４及びブロック情報メモリ２０５が使われる。よって、回路規模を削減することができるので、例えばデジタルカメラやデジタルビデオカメラなど本実施形態の可変長符号化復号化装置を搭載する製品の実装コストを削減することができる。
【図面の簡単な説明】
【００４０】
【図１】本発明の実施形態１の可変長符号化装置の構成を示すブロック図。
【図２】本発明の実施形態２の可変長符号化復号化装置の構成を表すブロック図。
【図３】可変長符号化装置の動作タイミングを表す図。
【図４】符号化対象ブロックと周辺ブロックとの関係を表す図。
【図５】符号化対象ブロックと周辺ブロックとの関係を表す図。
【図６】符号テーブル。
【符号の説明】
【００４１】
１０１  ブロックデータ符号化部
１０２  ブロック情報符号化部
１０３  符号結合部
１０４  ブロック情報管理部
１０５  ブロック情報メモリ
１０６  制御部
２０１  ブロックデータ符号化部
２０２  ブロック情報符号化部
２０３  符号結合部
２０４  ブロック情報管理部
２０５  ブロック情報メモリ
２０６  ブロック情報復号化部
２０７  ブロックデータ復号化部
２０８  符号頭出し部
２０９  ブロック情報選択部
２１０  制御部
【図１】
2009303151.tif 000003
【図２】
2009303151.tif 000004
【図３】
2009303151.tif 000005
【図４】
2009303151.tif 000006
【図５】
2009303151.tif 000007
【図６】
2009303151.tif 000008