(57)【要約】【課題】動画像の動き量の小さいフレームを選択して間引く。【解決手段】フレームベース符号化されたＭｏｔｉｏｎ−ＪＰＥＧ２０００の動画像ファイル１００に対し、符号量算出手段１０１で１ＬＨ，１ＨＬ，２ＬＨ，２ＨＬサブバンドの符号量を算出する。符号量に対し、各フレーム内のサブバンド間、及び、フレーム間の量子化ステップ数・トランケーション量の違いを補正する処理を行う。フレーム選択手段１０２で、符号量比（１ＬＨ／１ＨＬ）／（２ＬＨ／２ＨＬ）を計算し、その値の小さい順に削除フレームを選択する。フレーム削除等処理手段１０３で、動画像ファイル１００から選択された削除フレームを削除することにより、符号量が削減された動画像ファイル１０４を生成する。【選択図】図１２
2005252434.tif 000002
【特許請求の範囲】
【請求項１】
フレーム毎に独立して、インターレース画像をフレームベース符号化してなる動画像を処理する動画像処理装置であって、
各フレームの符号のヘッダ情報に基づいて横方向のエッジ量を反映する符号量を算出する手段と、該手段により算出された符号量に基づき動き量を評価して動き量の小さいフレームを選択する手段とを有することを特徴とする動画像処理装置。
【請求項２】
フレーム毎に独立して、インターレース画像をフレームベース符号化してなる動画像を処理する動画像処理装置であって、
各フレームの符号のヘッダ情報に基づいて横方向のエッジ量を反映する符号量及び縦方向のエッジ量を反映する符号量をそれぞれ算出する手段と、該手段により算出された符号量を用い、
符号量比＝（横方向エッジ量を反映する符号量）／（縦方向エッジ量を反映する符号量）により計算される符号量比に基づき動き量を評価して動き量の小さいフレームを選択する手段とを有することを特徴とする動画像処理装置。
【請求項３】
請求項１に記載の動画像処理装置において、
前記フレームベース符号化では画像の周波数変換係数をサブバンド毎に符号化し、
前記符号量を算出する手段は、横方向のエッジ量を反映するサブバンドの符号量を算出することを特徴する動画像処理装置。
【請求項４】
請求項２に記載の動画像処理装置において、
前記フレームベース符号化では画像の周波数変換係数をサブバンド毎に符号化し、
前記符号量を算出する手段は、横方向のエッジ量を反映するサブバンドの符号量及び縦方向のエッジ量を反映するサブバンドの符号量をそれぞれ算出することを特徴する動画像処理装置。
【請求項５】
請求項３又は４に記載の動画像処理装置において、
前記符号量を算出する手段は、所定の解像度以上のサブバンドの符号量を算出することを特徴とする動画像処理装置。
【請求項６】
請求項３又は４に記載の動画像処理装置において、
前記符号量を算出する手段は、最高解像度レベルのサブバンドの符号量を算出することを特徴とする動画像処理装置。
【請求項７】
請求項３又は４に記載の動画像処理装置において、
前記符号量を算出する手段は、サブバンドより小さなブロックの単位で符号量を算出することを特徴とする動画像処理装置。
【請求項８】
請求項４に記載の動画像処理装置において、
前記フレームベース符号化では周波数変換として２次元ウェーブレット変換を用い、
前記符号量を算出する手段は、１ＬＨサブバンドの符号量及び１ＨＬサブバンドの符号量を算出し、
前記フレームを選択する手段は、前記符号量を算出する手段により算出された符号量を用い、
符号量比＝（１ＬＨサブバンド符号量）／（１ＨＬサブバンド符号量）
により計算される符号量比によってフレームの動き量を評価することを特徴とする動画像処理装置。
【請求項９】
請求項４に記載の動画像処理装置において、
前記フレームベース符号化では周波数変換として２次元ウェーブレット変換を用い、
前記符号量を算出する手段は、１ＬＨサブバンドの符号量、１ＨＬサブバンドの符号量、２ＬＨサブバンドの符号量及び２ＨＬサブバンドの符号量を算出し、
前記フレームを選択する手段は、前記符号量を算出する手段により算出された符号量を用い、
符号量比＝［（１ＬＨサブバンド符号量／１ＨＬサブバンド符号量）／（２ＬＨサブバ
ンド符号量／２ＨＬサブバンド符号量）］
により計算される符号量比によってフレームの動き量を評価することを特徴とする動画像処理装置。
【請求項１０】
請求項４に記載の動画像処理装置において、
前記フレームベース符号化では周波数変換として２次元ウェーブレット変換を用い、
前記符号量を算出する手段は、１ＬＨサブバンドのブロック単位の符号量及び１ＨＬサブバンドのブロック単位の符号量を算出し、
前記フレームを選択する手段は、前記符号量を算出する手段により算出された、位置関係の対応したブロック単位の符号量を用い、
ブロック符号量比＝（１ＬＨサブバンドのブロック単位の符号量／１ＨＬサブバンドの
ブロック単位の符号量）
により算出されるブロック符号量比を全ブロックについて合計した符号量比を求め、この符号量比によってフレームの動き量を評価することを特徴とする動画像処理装置。
【請求項１１】
請求項４に記載の動画像処理装置において、
前記フレームベース符号化では周波数変換として２次元ウェーブレット変換を用い、
前記符号量を算出する手段は、１ＬＨサブバンドのブロック単位の符号量、１ＨＬサブバンドのブロック単位の符号量、２ＬＨサブバンドのブロック単位の符号量及び２ＨＬサブバンドのブロック単位の符号量を算出し、
前記フレームを選択する手段は、前記符号量を算出する手段により算出された、位置関係の対応したブロック単位の符号量を用い、
ブロック符号量比＝
［（１ＬＨサブバンドのブロック単位の符号量／１ＨＬサブバンドのブロック単位の符号
量）／（２ＬＨサブバンドのブロック単位の符号量／２ＨＬサブバンドのブロック単位
の符号量）］
により算出されるブロック符号量比を全ブロックについて合計した符号量比を求め、この符号量比によってフレームの動き量を評価することを特徴とする動画像処理装置。
【請求項１２】
請求項８又は９に記載の動画像処理装置において、
符号量をサブバンド間のトランケート量の違いに応じて補正することを特徴とするを動画像処理装置。
【請求項１３】
請求項８又は９に記載の動画像処理装置において、
符号量をサブバンド間のトランケート量の違い及びフレーム間のトランケート量の違いに応じて補正することを特徴とする動画像処理装置。
【請求項１４】
請求項１０又は１１に記載の動画像処理装置において、
符号量をブロック間のトランケート量の違いに応じて補正することを特徴とする動画像処理装置。
【請求項１５】
請求項１０又は１１に記載の動画像処理装置において、
符号量をブロック間のトランケート量の違い及びフレーム間のトランケート量の違いに応じて補正することを特徴とする動画像処理装置。
【請求項１６】
請求項８乃至１５のいずれか１項に記載の動画像処理装置において、
符号量をサブバンド間の線形量子化ステップ数の違いに応じて補正することを特徴とする動画像処理装置。
【請求項１７】
請求項８乃至１５のいずれか１項に記載の動画像処理装置において、
符号量をサブバンド間の線形量子化ステップ数の違い及びフレーム間の線形量子化ステップ数の違いに応じて補正することを特徴とする動画像処理装置。
【請求項１８】
請求項１乃至１７のいずれか１項に記載の動画像処理装置において、
算出される符号量は輝度成分の符号量であることを特徴とする動画像処理装置。
【請求項１９】
請求項１乃至１８のいずれか１項に記載の動画像処理装置において、
前記フレームを選択する手段は、評価した動き量が所定値より小さいフレームを選択することを特徴とする動画像処理装置。
【請求項２０】
請求項１乃至１８のいずれか１項に記載の動画像処理装置において、
前記フレームを選択する手段は、評価した動き量が小さい順に所定数のフレームを選択することを特徴とする動画像処理装置。
【請求項２１】
請求項１９又は２０に記載の動画像処理装置において、
前記フレームを選択する手段は、動画像の先頭フレームを選択対象から除外することを特徴とする動画像処理装置。
【請求項２２】
前記フレームを選択する手段により選択されたフレームの符号を動画像より削除する手段を有することを特徴とする、請求項１９，２０又は２１に記載の動画像処理装置。
【請求項２３】
フレーム毎に独立して、インターレース画像をフレームベース符号化してなる動画像を処理する動画像処理方法であって、
請求項１乃至２２のいずれか１項に記載の動画像処理装置の各手段の機能に対応する処理ステップを有することを特徴とする動画像処理方法。
【請求項２４】
請求項１乃至２２のいずれか１項に記載の動画像処理装置の各手段として、コンピュータを機能させるプログラム。
【請求項２５】
請求項２４に記載のプログラムが記録された、コンピュータが読み取り可能な情報記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、符号化された動画像の処理に係り、特に、フレーム内符号化された動画像の符号量削減のためのフレーム間引きに関する。
【背景技術】
【０００２】
動画像の符号化方式は、フレーム内符号化とフレーム間符号化の２つに大別することができる。フレーム内符号化は、動画像の個々のフレームを独立に符号化し、各フレームの符号を連結して動画像の符号を生成する方式であり、その代表例はＤＶ，Motion-JPEG，
Motion-JPEG2000である。フレーム間符号化は、動画像の連続した複数のフレームを１つのグループとし、グループ毎に符号化を行い、グループ毎の符号を連結して動画像の符号を生成する方式であり、その代表例はMPEG1，MPEG2，MPEG4である。
【０００３】
また、各フレームの符号化には、インターレース画像である奇数フィールドと偶数フィールドの画像をそれぞれ分けて符号化するフィールド符号化と、奇数フレームと偶数フレームを一括して符号化するフレームベース符号化とがある。
【０００４】
本発明の対象とする動画像は、フレーム毎に独立して、インターレース画像をフレームベース符号化してなる動画像である。
【０００５】
本発明に関連する公知文献としては例えば特許文献１と特許文献２がある。
【０００６】
特許文献１には、符号化側において、隣接するフレーム画像間のブロックマッチングなどによりフレーム間の動きを検出し、動きが変化するフレームのみ符号化し（動きが一様なフレームは間引く）、復号側において、復号したフレーム画像を参照画像とした動き補償フレーム内挿処理により間引かれたフレーム画像を合成する技術が記載されている。
【０００７】
特許文献２には、インターレース画像のフレームベース符号化に関連し、フレームを構成するフィールド間で被写体が移動することによる「櫛形」について記載されている。
【０００８】
【特許文献１】特許第２９１９２１１号公報
【特許文献２】特開２００２−６４８３０号公報
【発明の開示】
【発明が解決しようとする課題】
【０００９】
さて、近年、符号化された動画像を復号することなく、動画像の一部のフレームの符号を取り出すニーズが高まりつつある。例えば、ネットワーク上のサーバにある動画像から、動きの少ないフレームを間引き、動きの大きいフレームの符号のみからなる動画像を作成して送信するならば、ネットワークの負荷や転送時間を低減することができる。しかも、動きの大きなフレームの符号は保存されているため、復号した動画像の動きはそれほど不自然にならない。
【００１０】
フレーム内符号化された動画像は、各フレームの符号の集合として構成されているため、構造上はフレームごとの符号の間引きが可能である。問題は、動画像を復号することなく、動画像を構成するフレーム群から動きの少ないフレームをどのようにして選択するかである。
【００１１】
よって、本発明の目的は、フレーム毎に独立して、インターレース画像をフレームベース符号化してなる動画像に関し、それを復号することなく、動きの少ないフレームを選択し、さらには、選択したフレームの符号を削除して符号量が削減された新たな動画像を生成するための新規な動画像処理装置及び方法を提供することにある。
【課題を解決するための手段】
【００１２】
請求項１の発明は、フレーム毎に独立して、インターレース画像をフレームベース符号化してなる動画像を処理する動画像処理装置であって、各フレームの符号のヘッダ情報に基づいて横方向のエッジ量を反映する符号量を算出する手段と、該手段により算出された符号量に基づき動き量を評価して動き量の小さいフレームを選択する手段とを有することを特徴とする動画像処理装置である。
【００１３】
請求項２の発明は、フレーム毎に独立して、インターレース画像をフレームベース符号化してなる動画像を処理する動画像処理装置であって、各フレームの符号のヘッダ情報に基づいて横方向のエッジ量を反映する符号量及び縦方向のエッジ量を反映する符号量をそれぞれ算出する手段と、該手段により算出された符号量を用い、
符号量比＝（横方向エッジ量を反映する符号量／縦方向エッジ量を反映する符号量）
により計算される符号量比に基づき基づき動き量を評価して動き量の小さいフレームを選択する手段とを有することを特徴とする動画像処理装置である。
【００１４】
請求項３の発明は、請求項１の発明の動画像処理装置において、前記フレームベース符号化では画像の周波数変換係数をサブバンド毎に符号化し、前記符号量を算出する手段は横方向のエッジ量を反映するサブバンドの符号量を算出することを特徴する動画像処理装置である。
【００１５】
請求項４の発明は、請求項２の発明の記載の動画像処理装置において、前記フレームベース符号化では画像の周波数変換係数をサブバンド毎に符号化し、前記符号量を算出する手段は、横方向のエッジ量を反映するサブバンドの符号量及び縦方向のエッジ量を反映するサブバンドの符号量をそれぞれ算出することを特徴する動画像処理装置である。
【００１６】
請求項５の発明は、請求項３又は４の発明の動画像処理装置において、前記符号量を算出する手段は、所定の解像度以上のサブバンドの符号量を算出することを特徴とする動画像処理装置である。
【００１７】
請求項６の発明は、請求項３又は４の発明の動画像処理装置において、前記符号量を算出する手段は、最高解像度レベルのサブバンドの符号量を算出することを特徴とする動画像処理装置である。
【００１８】
請求項７の発明は、請求項３又は４の発明の動画像処理装置において、前記符号量を算出する手段はサブバンドより小さなブロックの単位で符号量を算出することを特徴とする動画像処理装置である。
【００１９】
請求項８の発明は、請求項４の発明の動画像処理装置において、前記フレームベース符号化では周波数変換として２次元ウェーブレット変換を用い、前記符号量を算出する手段は１ＬＨサブバンドの符号量及び１ＨＬサブバンドの符号量を算出し、前記フレームを選択する手段は、前記符号量を算出する手段により算出された符号量を用い、
符号量比＝（１ＬＨサブバンド符号量／１ＨＬサブバンド符号量）
により計算される符号量比によってフレームの動き量を評価することを特徴とする動画像処理装置である。
【００２０】
請求項９の発明は、請求項４の発明の動画像処理装置において、前記フレームベース符号化では周波数変換として２次元ウェーブレット変換を用い、前記符号量を算出する手段は、１ＬＨサブバンドの符号量、１ＨＬサブバンドの符号量、２ＬＨサブバンドの符号量及び２ＨＬサブバンドの符号量を算出し、前記フレームを選択する手段は、前記符号量を算出する手段により算出された符号量を用い、
符号量比＝［（１ＬＨサブバンド符号量／１ＨＬサブバンド符号量）／（２ＬＨサブバ
ンド符号量／２ＨＬサブバンド符号量）］
により計算される符号量比によってフレームの動き量を評価することを特徴とする動画像処理装置である。
【００２１】
請求項１０の発明は、請求項４の発明の動画像処理装置において、前記フレームベース符号化では周波数変換として２次元ウェーブレット変換を用い、前記符号量を算出する手段は、１ＬＨサブバンドのブロック単位の符号量及び１ＨＬサブバンドのブロック単位の符号量を算出し、前記フレームを選択する手段は、前記符号量を算出する手段により算出された、位置関係の対応したブロック単位の符号量を用い、
ブロック符号量比＝（１ＬＨサブバンドのブロック単位の符号量／１ＨＬサブバンドの
ブロック単位の符号量）
により算出されるブロック符号量比を全ブロックについて合計した符号量比を求め、この符号量比によってフレームの動き量を評価することを特徴とする動画像処理装置である。
【００２２】
請求項１１の発明は、請求項４の発明の動画像処理装置において、前記フレームベース符号化では周波数変換として２次元ウェーブレット変換を用い、前記符号量を算出する手段は、１ＬＨサブバンドのブロック単位の符号量、１ＨＬサブバンドのブロック単位の符号量、２ＬＨサブバンドのブロック単位の符号量及び２ＨＬサブバンドのブロック単位の符号量を算出し、前記フレームを選択する手段は、前記符号量を算出する手段により算出された、位置関係の対応したブロック単位の符号量を用い、
ブロック符号量比＝
［（１ＬＨサブバンドのブロック単位の符号量／１ＨＬサブバンドのブロック単位の符号  量）／（２ＬＨサブバンドのブロック単位の符号量／２ＨＬサブバンドのブロック単位  の符号量）］
により算出されるブロック符号量比を全ブロックについて合計した符号量比を求め、この符号量比によってフレームの動き量を評価することを特徴とする動画像処理装置である。
【００２３】
請求項１２の発明は、請求項８又は９の発明の動画像処理装置において、符号量をサブバンド間のトランケート量の違いに応じて補正することを特徴とするを動画像処理装置である。
【００２４】
請求項１３の発明は、請求項８又は９の発明の動画像処理装置において、符号量をサブバンド間のトランケート量の違い及びフレーム間のトランケート量の違いに応じて補正することを特徴とする動画像処理装置である。
【００２５】
請求項１４の発明は、請求項１０又は１１の発明の動画像処理装置において、符号量をブロック間のトランケート量の違いに応じて補正することを特徴とする動画像処理装置である。
【００２６】
請求項１５の発明は、請求項１０又は１１の発明の動画像処理装置において、符号量をブロック間のトランケート量の違い及びフレーム間のトランケート量の違いに応じて補正することを特徴とする動画像処理装置である。
【００２７】
請求項１６の発明は、請求項８乃至１５のいずれか１項の発明の動画像処理装置において、符号量をサブバンド間の線形量子化ステップ数の違いに応じて補正することを特徴とする動画像処理装置である。
【００２８】
請求項１７の発明は、請求項８乃至１５のいずれか１項の発明の動画像処理装置において、符号量をサブバンド間の線形量子化ステップ数の違い及びフレーム間の線形量子化ステップ数の違いに応じて補正することを特徴とする動画像処理装置である。
【００２９】
請求項１８の発明は、請求項１乃至１７のいずれか１項の発明の動画像処理装置において、算出される符号量は輝度成分の符号量であることを特徴とする動画像処理装置である。
【００３０】
請求項１９の発明は、請求項１乃至１８のいずれか１項の発明の動画像処理装置において、前記フレームを選択する手段は、評価した動き量が所定値より小さいフレームを選択することを特徴とする動画像処理装置である。
【００３１】
請求項２０の発明は、請求項１乃至１８のいずれか１項の発明の動画像処理装置において、前記フレームを選択する手段は、評価した動き量が小さい順に所定数のフレームを選択することを特徴とする動画像処理装置である。
【００３２】
請求項２１の発明は、請求項１９又は２０の発明の動画像処理装置において、前記フレームを選択する手段は、動画像の先頭フレームを選択対象から除外することを特徴とする動画像処理装置である。
【００３３】
請求項２２の発明は、前記フレームを選択する手段により選択されたフレームの符号を動画像より削除する手段を有することを特徴とする、請求項１９，２０又は２１の発明の動画像処理装置である。
【００３４】
請求項２３の発明は、フレーム毎に独立して、インターレース画像をフレームベース符号化してなる動画像を処理する動画像処理方法であって、請求項１乃至２２のいずれか１項の発明の動画像処理装置の各手段の機能に対応する処理ステップを有することを特徴とする動画像処理方法である。
【００３５】
請求項２４の発明は、請求項１乃至２２のいずれか１項の発明の動画像処理装置の各手段としてコンピュータを機能させるプログラムである。
【００３６】
請求項２５の発明は、請求項２４の発明のプログラムが記録された、コンピュータが読み取り可能な情報記録媒体である。
【００３７】
上記各請求項に係る発明について以下に順に説明する。
【００３８】
まず、インターレース画像のフレームベース符号化における「櫛形」について、図１により説明する。図１の（ａ）は第（ｎ）フィールドの画像、（ｂ）はその１／６０秒後の第（ｎ＋１）フィールドの画像、（ｃ）はこの２フィールドの画像（インターレース画像）を合成して得られるフレーム画像の例をそれぞれ示している。フレームベース符号化では、２フィールドを合成したフレーム画像をそのまま符号化する。
【００３９】
さて、２イールド間で被写体が図示のように右方向へ移動した場合、２フィールドを合成したフレーム画像上で１走査線毎に被写体の左右エッジ部分が複数画素分だけ櫛形にずれる。（ｄ）は櫛形のエッジ部分を拡大したもので、この横方向エッジの長さＬは２フィールド間（フレーム内）での被写体の動き量に相当する。
【００４０】
すなわち、被写体の動きが大きいほど、フレーム画像の横方向のエッジ量が増加するわけである。ビデオカメラで撮影するような場合、被写体の移動としては、このような横方向の移動が圧倒的に多いため、櫛形のエッジ部に見られるような横方向エッジのエッジ量をフレームの動き量の指標として用いることは合理的である。
【００４１】
一方、被写体の横方向移動により生じる櫛形のエッジ部分の縦方向エッジの長さは、被写体の移動量に拘わらず略一定である。したがって、横方向エッジ量と縦方向エッジ量の比（＝横方向エッジ量／縦方向エッジ量）をフレームの動き量の指標として用いることも合理的である。
【００４２】
そして、フレームベース符号化に、周波数変換（ウェーブレット変換など）を用いる符号化方式が利用される場合、一般に、フレームの符号において横方向のエッジ量、縦方向のエッジ量がそれぞれ符号量に反映される。また、後述のように、ＪＰＥＧ２０００などでは、そのような符号量を、符号中のヘッダ情報から求めることができる。
【００４３】
かかる考察に基づき、請求項１の発明は、フレーム毎に、インターレース画像をフレームベース符号化した動画像において、各フレームの符号のヘッダ情報に基づき横方向エッジ量を反映する符号量を算出し、算出した符号量に基づきフレームの動き量を評価して動き量の小さいフレームを選択しようとするものである。また、請求項２の発明は、フレームベース符号化を用いて符号化された動画像において、各フレームの符号のヘッダ情報に基づいて横方向エッジ量を反映する符号量と縦方向を反映する符号量を算出し、それら符号量の比（＝横方向エッジ量を反映する符号量／縦方向エッジ量を反映する符号量）に基づきフレームの動き量を評価し、動き量の小さいフレームを選択しようとするものである。
【００４４】
さて、周波数変換係数をサブバンド（周波数帯域）毎に符号化する符号化方式（例えばＪＰＥＧ２０００）では、横方向のエッジ量及び縦方向のエッジ量はそれぞれ特定のサブバンドの符号量に反映される。
【００４５】
これに鑑み、請求項３又は４の発明は、横方向エッジ量を反映するサブバンドの符号量、又は、横方向エッジ量を反映するサブバンドの符号量及び縦方向エッジ量を反映するサブバンドの符号量を算出しようとするものである。
【００４６】
多重解像度サブバンド分割を行う符号化方式（例えばＪＰＥＧ２０００）の場合、エッジ成分は最高解像度レベルのサブバンド（周波数変換が適用された回数の最も少ないサブバンド）に顕著に反映され、解像度レベルが下がるとエッジ成分が反映される度合いが減少し、ある解像度レベル以下ではエッジ成分は殆ど反映されなくなる。特に被写体移動による櫛形のエッジ部に表れる１ライン間隔の横方向エッジ成分は、最高解像度レベルの特定サブバンドに反映され、それより低い解像度レベルのサブバンドには実質的に反映されない。
【００４７】
かかる点に鑑み、請求項５又は６の発明は、横方向エッジ量又は縦横各方向のエッジ量を反映する符号量として、所定の解像度レベル以上のサブバンドの符号量又は最高解像度レベルのサブバンドの符号量を算出しようとするものである。
【００４８】
また、小さな被写体が移動するようなフレームでは、サブバンド単位でみると、被写体の移動による（櫛形による）横方向エッジ量を反映する符号量の変化がそれほど大きくならない場合がある。
【００４９】
請求項７の発明は、サブバンドより小さなブロックの単位で、横方向エッジ量又は縦横各方向のエッジ量を反映する符号量を算出することにより、小さな被写体の動き量をより的確に評価できるようにするものである。
【００５０】
請求項８〜１１の発明は、フレームベース符号化に２次元ウェーブレット変換が用いられる場合を想定したものである。そのような符号化方式の代表例がＪＰＥＧ２０００である。Ｍｏｔｉｏｎ−ＪＰＥＧ２０００の動画像においては、各フレームはＪＰＥＧ２０００により符号化されている。ここで、ＪＰＥＧ２０００の概要を説明する。
【００５１】
図２に、ＪＰＥＧ２０００の圧縮（符号化）・伸長（復号化）処理の基本的な流れを示す。
【００５２】
まず、圧縮（符号化）処理について説明する。例えば、ＲＧＢの３コンポ−ネントで構成されるカラー画像は、各コンポーネント毎に１以上の重複しないタイルに分割され、各コンポーネントの各タイル毎に処理が行われる。まず、各タイル毎に、ＤＣレベルシフトと、輝度・色差コンポ−ネントへのコンポ−ネント変換（色変換）がなされ、次に、各コンポーネントの各タイル毎に２次元のウェーブレット変換（離散ウェーブレット変換）がなされる。ウェーブレット係数は、サブバンド毎に、必要に応じて線形量子化された後、ビットプレーンを単位としたエントロピー符号化がなされる（正確には、１つのビットプレーンは３つのサブビットプレーン（符号化パス）に分割されて符号化される）。そして、不要な符号を破棄（トランケート）し、必要な符号をまとめてパケットを生成し、パケットを所定の順序に並べ、必要なタグ及びタグ情報を付加することにより、所定のフォーマットのコードストリームが形成される。
【００５３】
ＪＰＥＧ２０００においては、５×３変換と呼ばれる可逆ウェーブレット変換と９×７変換と呼ばれる非可逆ウェーブレット変換を利用できる。ウェーブレット係数の線形量子化は、９×７ウェーブレット変換が用いられる場合のみ適用できる。線形量子化が適用される場合、ウェーブレット係数の線形量子化後の係数で構成されるビットプレーンをエントロピー符号化する。線形量子化を行わない場合には、不要なビットプレーンの符号を破棄し、あるいは必要なビットプレーンまでを符号化する（以下これらをトランケートと呼ぶ）。５×３ウェーブレット変換を使用する場合は線形量子化は適用できず、トランケートによる符号破棄を行う仕様となっている。
【００５４】
伸長（復号化）処理は圧縮処理と丁度逆の処理である。コードストリームは各コンポーネントの各タイルのコードストリームに分解され、ビットプレーン単位でエントロピー復号され、復号されたウェーブレット係数は逆量子化された後、２次元逆ウェーブレット変換が施され、その後、逆コンポーネント変換（逆色変換）及び逆ＤＣレベルシフトが施されることにより元のＲＧＢの画素値に戻される。
【００５５】
５×３変換と呼ばれるウェーブレット変換と、９×７変換と呼ばれるウェーブレット変換の順変換式と逆変換式を次に示す。
【００５６】
＜５×３変換＞
（順変換）
C(2i+1)=P(2i+1)−floor（(P(2i)+P(2i+2))/2）      [step1]
C(2i)=P(2i)+|_(C(2i-1)+C(2i+1)+2)/4_|            [step2]
（逆変換）
P(2i)=C(2i)−floor（(C(2i-1)+C(2i+1)+2)/4）      [step1]
P(2i+1)=C(2i+1)＋floor（(P(2i)+P(2i+2))/2）      [step2]
ただし、floor（ｘ）はｘのフロア関数（実数ｘを、ｘを越えず、かつ、ｘに最も近い整数に置換する関数）を示している。
【００５７】
＜９×７変換＞
（順変換）
C(2n+1)=P(2n+1)+α*(P(2n)+P(2n+2))    [step1]
C(2n)=P(2n)+β*(C(2n-1)+C(2n+1))      [step2]
C(2n+1)=C(2n+1)+γ*(C(2n)+C(2n+2))    [step3]
C(2n)=C(2n)+δ*(C(2n-1)+C(2n+1))      [step4]
C(2n+1)=K*C(2n+1)                    [step5]
C(2n)=(1/K)*C(2n)                      [step6]
（逆変換）
P(2n)=K*C(2n)                        [step1]
P(2n+1)=(1/K)*C(2n+1)                [step2]
P(2n)=X(2n)-δ*(P(2n-1)+P(2n+1))      [step3]
P(2n+1)=P(2n+1)-γ*(P(2n)+P(2n+2))    [step4]
P(2n)=P(2n)-β*(P(2n-1)+P(2n+2))      [step5]
P(2n)=P(2n+1)-α*(P(2n)+P(2n+2))      [step6]
ただし、α＝-1.586134342059924
β＝-0.052980118572961
γ＝0.882911075530934
δ＝0.443506852043971
Ｋ＝1.230174104914001
【００５８】
図３乃至図７により、16×16画素のモノクロの画像に対して、５x３変換と呼ばれるウェーブレット変換を２次元(垂直方向及び水平方向)で施す過程について説明する。
【００５９】
図３のようにＸＹ座標をとり、あるＸ座標について、Ｙ座標がｙである画素の画素値をP（y）（0≦y≦15）と表す。ＪＰＥＧ２０００では、まず垂直方向（Ｙ座標方向）に、Ｙ座標が奇数（y=2i+1）の画素を中心にハイパスフィルタを施して係数C(2i+1)を得る。次に、Ｙ座標が偶数（y=2i）の画素を中心にローパスフィルタを施して係数C(2i)を得る(これを全てのＸ座標について行う)。前記５×３変換の順変換式中のｓｔｅｐ１の式がハイパスフィルタを表し、ｓｔｅｐ２の式がローパスフィルタを表す。
【００６０】
なお、画像の端部においては、中心となる画素に対して隣接画素が存在しない場合があり、この場合にはミラリングによって画素値を補う。
【００６１】
簡単のため、ハイパスフィルタで得られる係数をＨ、ローパスフィルタで得られる係数をＬ、と表記すれば、前記垂直方向の変換によって図３の画像は図４のようなＬ係数とＨ係数の配列へと変換される。
【００６２】
続いて、図３の係数配列に対して、水平方向に、Ｘ座標が奇数（x=2i+1）の係数を中心にハイパスフィルタを施し，次にＸ座標が偶数（x=2i）の係数を中心にローパスフィルタを施す(これを全てのＹ座標について行う。この場合、変換式中のP(2i)等は係数値を表すものと読み替える。
【００６３】
簡単のため、前記Ｌ係数を中心にローパスフィルタを施して得られる係数をLL、前記Ｌ係数を中心にハイパスフィルタを施して得られる係数をHL、前記Ｈ係数を中心にローパスフィルタを施して得られる係数をLH、前記Ｈ係数を中心にハイパスフィルタを施して得られる係数をHH、と表記すれば、図４の係数配列は、図５の様な係数配列へと変換される。ここで同一の記号を付した係数群はサブバンドと呼ばれる。
【００６４】
以上で、１回のウェーブレット変換（１回のデコンポジション（分解））が終了し、LL係数だけを集めると（図６の様にサブバンド毎に集め、LLサブバンドだけ取り出すと）、ちょうど原画像の１/２の解像度の“画像”が得られる（このように、係数をサブバンド毎に分類することをデインターリーブと呼び、図５のような状態に配置することをインターリーブという）。
【００６５】
２回目のウェーブレット変換は、LLサブバンドを原画像と見なして、上記と同様の変換を行えばよい。２回目のウェーブレット変換を行い、係数をデインターリーブすると、模式的な図７が得られる．
ここで、図６，図７において、係数の接頭の１や２は、何回のウェーブレット変換で該係数が得られたかを示しており、デコンポジションレベルと呼ばれる。ウェーブレット変換においては、このデコンポジションレベルが周波数帯域に相当する。また、デコンポジションレベルとほぼ逆の関係にある解像度レベルの定義を図８に示す。
【００６６】
このような５×３ウェーブレット変換の逆変換においては、図５の様なインターリーブされた係数の配列に対して、まず水平方向に、Ｘ座標が偶数（x=2i）の係数を中心に逆ローパスフィルタを施し、次に、Ｘ座標が奇数（x=2i+1）の係数を中心に逆ハイパスフィルタを施す（これを全てのｙについて行う）。前記５×３変換の逆変換式中のｓｔｅｐ１の式が逆ローパスフィルタを表し、ｓｔｅｐ２の式が逆ハイパスフィルタを表す。順変換の場合と同様、画像の端部においては中心となる係数に対して隣接係数が存在しないことがあり、この場合はミラリングによって適宜係数値を補う。
【００６７】
これにより、図５の係数配列は図４のような係数配列に変換（逆変換）される。続いて、垂直方向に、Ｙ座標が偶数（y=2i）の係数を中心に逆ローパスフィルタを施し、次にＹ座標が奇数（y=2i+1）の係数を中心に逆ハイパスフィルタを施せば（これを全てのＸ座標について行う）、１回のウェーブレット逆変換が終了し、図３の画像に戻る(再構成される)ことになる。なお、ウェーブレット変換が複数回施されている場合は、図３をLLサブバンドとみなし、HL等の他の係数を利用して同様の逆変換を繰り返せばよい。
【００６８】
以上説明したように、５×３ウェーブレット変換は、５画素を用いて１つのローパスフィルタの出力（ローパス係数）が得られ、３画素を用いて１つのハイパスフィルタの出力（ハイパス係数）が得られる変換である。これに対し、９×７ウェーブレット変換は、９画素を用いて１つのローパスフィルタの出力（ローパス係数）が得られ、７画素を用いて１つのハイパスフィルタの出力（ハイパス係数）が得られる変換である。このように、５×３変換と９×７変換の主な違いは、フィルタの範囲の違いであり、偶数位置中心にローパスフィルタが、奇数位置中心にハイパスフィルタが施されるのは同様である。したがって、図４乃至図７は、９×７変換にも同様に当てはまる。
【００６９】
図９はタイル、サブバンド、プリシンクト、コードブロックの関係を示している。ＪＰＥＧ２０００では、サブバンドはプリシンクトに分割される。プリシンクトとは、サブバンドを（ユーザが指定可能なサイズの）矩形に分割したもので、ＨＬ，ＬＨ，ＨＨの３つのサブバンドのプリシンクトは３つで１まとまりを成し（ただし、ＬＬサブバンドを分割したプリシンクトは１つで１まとまりである。)、大まかには画像中の場所（Position）を表すものである。プリシンクトをサブバンドと同じサイズにすることもできる。プリシンクトを（ユーザが指定可能なサイズの）矩形にさらに分割したものがコードブロックである。
【００７０】
サブバンドの係数はビットプレーン符号化されることは前述したが、より具体的にはコードブロック単位でビットプレーン符号化される。
【００７１】
そして、プリシンクトに含まれる全てのコードブロックから、符号の一部を取り出して集めたもの（例えば、全てのコードブロックのMSBから３枚目までのビットプレーンの符号を集めたもの）がパケットである。パケットの中身が符号的には“空(から)”ということもある。
【００７２】
全てのプリシンクト（＝全てコードブロック＝全てのサブバンド）のパケットを集めると、画像全域の符号の一部（例えば、画像全域のウェーブレット係数の、MSBから３枚目までのビットプレーンの符号）ができるが、これをレイヤーと呼ぶ。レイヤーは大まかには画像全体のビットプレーンの符号の一部であるから、復号されるレイヤー数が増えれば画質は上がる。レイヤーはいわば画質の単位である。すべてのレイヤーを集めると、画像全域の全てのビットプレーンの符号になる。
【００７３】
図１０は、ウェーブレット変換の階層数(デコンポジションレベル数)＝２、プリシンクトサイズ＝サブバンドサイズ、としたときのレイヤー構成の例を示す。その一部のレイヤに含まれるパケットを図１１に例示する。図１１中の太線で囲んだものがパケットである。
【００７４】
この例では、プリシンクトサイズ＝サブバンドサイズであり、プリンシンクトの大きさと同じ大きさのコードブロックを採用しているため、デコンポジションレベル２のサブバンドは４つのコードブロックに、デコンポジションレベル１のサブバンドは９個のコードブロックに分割されている。パケットはプリシンクトを単位とするものであるから、プリシンクト＝サブバンドとした場合、パケットはＨＬ〜ＨＨサブバンドをまたいだものとなる。
【００７５】
ここで、パケットは「コードブロックの符号の一部を取り出して集めたもの」であり、不要な符号はパケットとして生成する必要はない。例えば、図１０に示すレイヤ９に含まれるような下位ビットプレーンの符号は破棄（トランケート）されるのが通常である。
【００７６】
コードストリーム上のパケットの並び順をプログレッション順序といい、ＪＰＥＧ２０００では、解像度（Ｒ）、プリシンクト（Ｐ）、コンポーネント（Ｃ）、レイヤ（Ｌ）の組み合わせにより、ＬＲＣＰ、ＲＬＣＰ、ＰＲＣＬ、ＰＣＲＬ、ＣＰＲＬの５種類のプログレッシブ順序が規定されている。
【００７７】
例えば、ＬＲＣＰの場合、
for(レイヤ)｛
for(解像度)｛
for(コンポ−ネント)｛
for(プリシンクト)｛
エンコード時：パケットを配置
デコード時：パケットを解釈
｝
｝
｝
｝
というネストされたｆｏｒループにより決まる順で、パケットの配置（エンコード時）および解釈（デコード時）がなされる。他のプログレッシブ順序においても、同様のネストされたｆｏｒループによりパケットのエンコード時の配置順及びデコード時の解釈順が決まる。
【００７８】
パケットは、その本体である符号とパケットヘッダとからなる。パケットヘッダには符号の長さなどは記述されているが、レイヤ番号や解像度レベル等はパケットヘッダには記述されていない。デコード時には、コードストリームのメインヘッダ中のＣＯＤマーカに指定されたプログレッシブ順序から上記のようなｆｏｒループを形成し、そのパケットがどのｆｏｒループ内でハンドリングされたかで、そのバケットがどのレイヤのどの解像度のものかを判別することになる。レイヤ数、解像度数、プリシンクト数はメインヘッダのＣＯＤマーカから、コンポ−ネント数はメインヘッダのＳＩＺマーカから読みとることができる(ＣＯＤマーカからプリシンクトサイズが分かるためプリシンクト数は計算できる)。あとは、パケットの切れ目さえ判別できればパケットの個数は数えられる。パケットヘッダには、パケットに含まれる符号の長さが書かれているため上記切れ目はカウントが可能となる。
【００７９】
以上の様に、ＪＰＥＧ２０００の符号の場合、プログレッシブ順序を基に全てのパケットのパケットヘッダを読み出せば、パケットに含まれるコードブロックの符号長が得られる。そして、そのサブバンドに含まれる全てのパケットのコードブロックの符号長の和をサブバンド毎にとれば、サブバンド毎の符号量を、復号することなしに得ることができるのである。これが、請求項１，２に関連して述べた、復号することなく、ヘッダ情報から符号量を計算する具体例の一つである。
【００８０】
さて、２次元ウェーブレット変換のサブバンドの中で、横方向エッジ成分すなわち垂直方向の高周波成分は１ＬＨサブバンド（デコンポジションレベル１，垂直方向高周波，水平方向低周波）の係数に最も大きく反映され、一方、縦方向エッジ成分すなわち横方向の高周波成分は１ＨＬサブバンド（デコンポジションレベル１，垂直方向低周波，水平方向高周波）の係数に最も大きく反映される。したがって、横方向のエッジ量は１ＬＨサブバンドのエントロピー符号の符号量に最も大きく反映され、縦方向のエッジ量は１ＨＬサブバンドのエントロピー符号の符号量に最も大きく反映される。
【００８１】
以上に鑑み、請求項８の発明は、フレームベース符号化に２次元ウェーブレット変換を用いる例えばＪＰＥＧ２０００を利用する場合に、１ＬＨサブバンドの符号量と１ＨＬサブバンドの符号量の比、すなわち
符号量比＝１ＬＨサブバンド符号量／１ＨＬサブバンド符号量
によってフレームの動き量を評価しようとするものである。このような請求項８の発明は請求項２，４，５，６の発明に包含される下位概念に相当する。
【００８２】
なお、１ＬＨ，１ＨＬサブバンドの符号量比を用いる場合と同等の評価精度は期待し難いが、符号量比に代えて１ＬＨサブバンドの符号量のみを動き量の評価に用いることも可能である。このような動き量の評価を行う態様は、請求項１，３，５，６の発明に包含されるものである。
【００８３】
さて、被写体の動き量すなわち「櫛形」の横方向エッジ量は１ＬＨサブバンド符号量に反映されるが、櫛形以外の被写体の横方向エッジ量も１ＬＨサブバンド符号量に反映される。したがって、例えば、長い横方向エッジを持つ被写体が含まれるフレームでは、その被写体の移動速度が遅い場合であっても、符号量比（＝１ＬＨサブバンド符号量／１ＨＬサブバンド符号量）が大きな値をとることがある。一方、１ＬＨサブバンドより解像度が１レベル低い２ＬＨサブバンドの符号量は、１ライン置きの「櫛形」の横方向エッジの影響をほとんど受けず、櫛形以外の垂直方向の高周波成分の影響をもっぱら受けるため、被写体の移動によらず安定した値をとる。
【００８４】
そこで、１ＬＨサブバンド符号量／１ＨＬサブバンド符号量の比をＡとし、
２ＬＨサブバンド符号量／２ＨＬサブバンド符号量の比をＢとして、その比Ａ／Ｂを考える。被写体が高速に移動する場合には、櫛形の横方向エッジ量が増加するため分子Ａの値は増加するが、分母Ｂの値は増加しないので、比Ａ／Ｂの値は大きくなる。同じ被写体が静止しているか移動速度が遅い場合、分子Ａの値は減少するが分母Ｂの値は変わらないため、比Ａ／Ｂの値は小さくなる。以上のことは被写体が横方向に長いエッジを持つ場合も同様である。よって、比Ａ／Ｂを用いると、すなわち、１ＬＨと１ＨＬの符号量比を、２ＬＨと１ＨＬの符号量比で正規化した値を用いると、例えば、横方向に長いエッジを持つ被写体が高速で移動する場合と低速で移動する場合とをより確実に識別可能である。
【００８５】
かかる考察に鑑み、請求項９の発明は、上記比Ａ／Ｂに相当する符号量比、すなわち
符号量比＝（１ＬＨサブバンド符号量／１ＨＬサブバンド符号量）／（２ＬＨサブバン
ド符号量／２ＨＬサブバンド符号量）
に基づき、フレームの動き量をより確実に評価しようとするものである。このような請求項９の発明は、請求項２，４，５の発明の下位概念に相当するものである。
【００８６】
移動する被写体が画像サイズに比べて小さい場合、その被写体が高速で移動してもサブバンド単位の符号量比の増加は小さい。１ＬＨサブバンドの符号量にはフレーム全体の横方向エッジ量が反映されるからである。サブバンドより小さなブロックを単位として同様の符号量比を計算するならば、被写体の位置に対応したブロックの符号量比に被写体の動き量が鋭敏に反映される。
【００８７】
かかる考察に基づき、請求項１０及び１１の発明は、小さな被写体の移動をより確実に反映する符号量比を計算し、それに基づいてフレームの動き量を評価しようとするものである。請求項１０，１１の発明における符号量算出単位であるブロックとして、ＪＰＥＧ２０００のプリシンクトや１つ又は複数のコードブロックを用いることができる。
【００８８】
なお、請求項１０の発明における符号量比は次のように表現できる。
符号量比＝
Σ（１LHサブバンドのブロックiの符号量／１HLサブバンドのブロックjの符号量）
ただし、ブロックiとブロックjの係数は略同じ画素位置から派生するものであり、総和は、少なくとも略同じ画素位置から派生する１HLサブバンドのブロックを有する全ての１HLサブバンドのブロックについてとる。
【００８９】
請求項１１の発明における符号量比は次のように表現できる。
符号量比＝
Σ（１LHサブバンドのブロックiの符号量／１HLサブバンドのブロックjの符号量）／（2LHサブバンドのブロックkの符号量／2HLサブバンドのブロックlの符号量）
ただし、ブロックiとブロックjの係数は略同じ画素位置から派生し、ブロックkとブロックlの係数も略同じ画素位置から派生する。また、ブロックiとブロックkの係数は略同じ画素位置から派生した係数を含み、ブロックjとブロックlの係数も略同じ画素位置から派生した係数を含む。総和は，少なくとも、略同じ画素位置から派生する１HLサブバンドのブロックを有する全ての１HLサブバンドのブロックについてとる。
【００９０】
なお、このような請求項１０，１１の発明を包括する上位概念の発明が請求項８の発明であることは明らかである。
【００９１】
さて、前述のように、ＪＰＥＧ２０００では必ずしも全てのビットプレーンが符号化されると限らない。図１及び図１０に関連して述べたように、符号化処理過程において、不要な下位ビットプレーンの符号又は係数のトランケートが行われることはごく普通のことである。
【００９２】
動画像の各フレームに関し、全てのビットプレーンが符号化されている場合は問題とはならないが、そうでない場合は、トランケートされたビットプレーン数（トランケート量）がサブバンドによって異なることがあることに留意しなければならない。例えば、１HLサブバンドと１LHサブバンドとでトランケート量は同一とは限らない。したがって、符号量比を計算するための符号量としては、サブバンドによるトランケート量の違いによる影響を補正したものを用いるのが望ましい。
【００９３】
例えば、１HLサブバンドがビットプレーン３枚分、１LHサブバンドがビットプレーン２枚分のトランケートを受けている場合、１LHサブバンドが有する符号のうちの最下位ビットプレーン（トランケートされなかったビットプレーンのうちの最下位のビットプレーン）分の符号を符号量計算から除外し、１ＨＬサブバンドと同じトランケート量での符号量とすべきである。あるいは、１HLサブバンドが有する最下位ビットプレーンの符号を、１HLサブバンドのトランケートされたビットプレーンのうちの最上位ビットプレーンの符号に等しいとみなし、符号量の計算の際に、１HLサブバンドが有する最下位ビットプレーンの符号を２回加えることも可能である。こうしたトランケート量の調整は、もちろんサブビットプレーン単位で行うことも可能である。
【００９４】
請求項１２の発明は、このようなサブバンド間のトランケート量の違いに応じて１ＬＨサブバンドの符号量及び１ＨＬサブバンドの符号量を補正し、動き量をより的確に評価しようとするものである。なお、このような符号量に対する補正は、符号量の算出の際に行っても符号量比の算出の際に行ってもよい。
【００９５】
また、同一サブバンド内においても、全てのブロックでトランケート量が均一とは限らない。ブロック単位の符号量比を動き量の評価に利用する場合、ブロック間のトランケート量の違いを考慮すべきである。例えば、第nブロックがビットプレーン３枚分、第n+1ブロックがビットプレーン２枚分のトランケートを受けている場合、第n+1ブロックが有する符号のうちの最下位ビットプレーン（トランケートされなかったビットプレーンのうちの最下位のビットプレーン）分の符号を符号量計算から除外し、第nブロックと同じトランケート量での符号量を求めるべきである。あるいは、第nブロックが有する最下位ビットプレーンの符号を、第nブロックが有しないトランケートされたビットプレーンのうちの最上位ビットプレーンの符号と略同一とみなし、符号量計算の際に、第nブロックが有する最下位ビットプレーンの符号を２回加えることも可能である。あるいは、第n+1ブロックが有する最下位ビットプレーンの符号を、第nブロックが有しないトランケートされたビットプレーンのうちの最上位ビットプレーンの符号と略同一とみなし、隣接する第n+1ブロックの符号量を代用したり、近傍のブロックの符号量を利用することも可能である。このようなトランケート量の調整はサブビットプレーン単位で行うことも可能であることはもちろんである。
【００９６】
請求項１４の発明は、このようなブロック間のトランケート量の違いに応じてブロック単位の符号量を補正することにより、動き量をより的確に評価しようとするものである。なお、このような符号量に対する補正は、符号量の算出の際に行っても符号量比の算出の際に行ってもよい。
【００９７】
さて、各サブバンドのトランケートされたビットプレーン数が均一であっても、各サブバンドが異なる線形量子化を受けている場合には、その違いも考慮する必要がある。線形量子化時の量子化ステップ数は１HLサブバンドと１LHサブバンドとで同一とは限らない。例えば、１HLサブバンドがステップ数８で、１LHサブバンドがステップ数４で線形量子化されている場合、１LHサブバンドのビットプレーン数は、もともと１HLサブバンドのビットプレーン数よりも１枚多いことになるため（８／４＝２の１乗、これはビットプレーン１枚に相当する）、１LHサブバンドが有する符号のうちの最下位ビットプレーン（トランケートされなかったビットプレーンのうちの最下位のビットプレーン）分の符号を符号量計算から除外すべきである。あるいは、１HLサブバンドが有する最下位ビットプレーンの符号を、１HLサブバンドが有しないトランケートされたビットプレーンのうちの最上位ビットプレーンの符号と略等しいとみなし、符号量計算時に１HLサブバンドが有する最下位ビットプレーンの符号を２回加えることも可能である。
【００９８】
こうした線形量子化量の調整はサブビットプレーン単位で行うことも可能である。サブビットプレーンｎ枚は、線形量子化のステップ数の比が２のｎ/3乗であることに相当するからである（ビットプレーン１枚＝サブビットプレーン３枚＝２の１乗）。すなわち、サブバンド間の量子化ステップ数の比がＸである場合、それは３log（X）枚のサブビットプレーン数の違いに相当し（logの底は２）、このサブビットプレーン数の差の分だけ符号量を調整してやればよいことになる。
【００９９】
請求項１６の発明は、このようなサブバンド間の線形量子化ステップ数の違いに応じて符号量を補正することにより、動き量をより的確に評価しようとするものである。なお、このような符号量に対する補正は、符号量の算出の際に行っても符号量比の算出の際に行ってもよい。
【０１００】
ここまでは、トランケート量又は量子化ステップ数の違いに対する補正を個々のフレームの中でのみ検討した。しかし、動画像のフレーム間でトランケート量又は量子化ステップ数の違いがある場合には、その違いについても考慮するのが望ましい。特に、各フレームについて符号量比により評価した動き量を小さい順に序列付けし、動き量の小さい方からある枚数のフレームを選択する場合には、符号量比を求めるための符号量の計算の際に、フレーム間でのトランケート量又は量子化ステップ数の違いによる影響を排除するための補正を行うのが望ましい。そのためには、例えば、動画像の先頭フレームにおけるトランケート量又は量子化ステップ数を基準として、各フレームにおけるトランケート量又は量子化ステップ数に関連した符号量の補正を行えばよい。
【０１０１】
請求項１３，１５，１７の発明は、そのようなフレーム間のトランケート量又は線形量子化ステップ数の違いによる影響をも排除するように符号量の補正を行うことにより、動き量をより的確に評価しようとするものである。
【０１０２】
カラー動画像の場合、その符号は輝度成分の符号と色差成分の符号からなるが、色差成分の符号量は被写体の色の違いなどによる変動幅が大きいため、エッジ量を反映する符号量として輝度成分の符号量を用いるのが一般に妥当である。これを考慮したのが請求項１５の発明である。
【０１０３】
動画像のフレームを間引きする場合、動き量の大きいフレームを間引くと復号した際の動画像の動きの不自然さが際だってしまう。請求項２２の発明は、動画像から動き量の小さいフレームを間引くことにより、復号した際の動画像の動きをそれほど不自然にすることなく、動画像の符号量削減を図ろうとするものである。
【０１０４】
この間引きフレームの選び方としては、動き量が基準より小さいフレームを枚数に関係なく選択する方法（１）と、動き量が小さいフレームから順に所定枚数のフレームを選択する方法（２）とが考えられる。前者の選択方法（１）は、基準より動き量が小さいフレームが多い動画像の符号量を大幅に削減できるため、符号量削減を優先したいような場合に効果的であるが、その反面、フレーム総数が元々少ない動画像では間引きフレーム数が過多になるような不都合も懸念される。後者の選択方法（２）は、間引きフレーム数が過多になるような不都合を容易に回避できる利点があるが、動き量の大きいフレームの多い動画像では動き量が比較的大きいフレームが間引かれるおそれがある。
【０１０５】
請求項１９の発明は、上記選択方法（１）による間引きフレームの選択を行うようなケースを想定したものである。請求項２０の発明は、上記選択方法（２）による間引きフレームの選択を行うようなケースを想定したものである。
【０１０６】
なお、選択方法（１）と選択方法（２）を組み合わせた選択方法（３）も可能である。すなわち、動き量が基準以下のフレームの中で、動き量が小さい順に所定数のフレームを選択する方法である。請求項１〜１８の発明の画像処理装置において、かかる選択方法（３）によりフレームを選択するようにしてもよく、かかる構成の画像処理装置及び方法も本発明に包含される。
【０１０７】
動画像を静止画としてアイコン表示するような場合、その表示に先頭フレームが用いられることが多いため、先頭フレームは間引きの対象から除外するのが好ましい。請求項２１の発明によれば動画像の先頭フレームは選択対象から除外されるため、先頭フレームの間引きを回避することができる。
【０１０８】
請求項２０〜２５の発明の内容は以上の説明から明らかであるので、その説明を繰り返さない。
【０１０９】
ここで付言すれば、動画像の符号化装置において、各フレームに対しエントロピー符号化工程まで実行した段階で、請求項１〜２２の発明と同様にしてフレームの動き量を評価し、動き量が小さいと評価したフレームについては処理を打ち切ることにより、符号化処理過程で動き量の小さいフレームの間引きを行うことも可能である。
【０１１０】
ここで、ＪＰＥＧ２０００の説明を補足する。
ＪＰＥＧ２０００のＤＣレベルシフトの変換式は次の通りである。
順変換
I(x,y)←I(x,y)−2^Ssiz(i)
逆変換
I(x,y)←I(x,y)＋2^Ssiz(i)
ただし、Ｓsiz(i)は原画像の各コンポーネントｉ（ＲＧＢ画像ならｉ０，１，２）のビット深さである。このＤＣレベルシフトは、ＲＧＢ信号値のような正の数である場合に、順変換では各信号値から信号のダイナミックレンジの半分を減算するレベルシフトを、逆変換では各信号値に信号のダイナミックレンジの半分を加算するレベルシフトを行うものである。ただし、このレベルシフトはＹＣｂＣｒ信号のＣｂ，Ｃｒ信号のような符号付き整数には適用されない。
【０１１１】
ＪＰＥＧ２０００では色変換（コンポ−ネント変換）として、可逆変換（ＲＣＴ）と非可逆変換（ＩＣＴ）が定義されている。
【０１１２】
ＲＣＴの順変換と逆変換は次式で表される。
順変換
Y0(x,y)=floor（(I0(x,y)+2*(I1(x,y)+I2(x,y))/4）
Y1(x,y)=I2(x,y)-I1(x,y)
Y2(x,y)=I0(x,y)-I1(x,y)
逆変換
I1(x,y)=Y0(x,y)-floor((Y2(x,y)+Y1(x,y))/4)
I0(x,y)=Y2(x,y)+I1(x,y)
I2(x,y)=Y1(x,y)+I1(x,y)
式中のＩは原信号、Ｙは変換後の信号を示す。ＲＧＢ信号ならば、Ｉ信号において０＝Ｒ，１＝Ｇ，２＝Ｂ、Ｙ信号において０＝Ｙ，１＝Ｃｂ，２＝Ｃｒと表される。
【０１１３】
ＩＣＴの順変換と逆変換は次式で表される。
順変換
Y0(x,y)=0.299*I0(x,y)+0.587*I1(x,y)+0.144*I2(x,y)
Y1(x,y)=-0.16875*I0(x,y)-0.33126*I1(x,y)+0.5*I2(x,y)
Y2(x,y)=0.5*I0(x,y)-0.41869*I1(x,y)-0.08131*I2(x,y)
逆変換
I0(x,y)=Y0(x,y)+1.402*Y2(x,y)
I1(x,y)=Y0(x,y)-0.34413*Y1(x,y)-0.71414*Y2(x,y)
I2(x,y)=Y0(x,y)+1.772*Y1(x,y)
式中のＩは原信号、Ｙは変換後の信号を示す。ＲＧＢ信号ならば、Ｉ信号において０＝Ｒ，１＝Ｇ，２＝Ｂ、Ｙ信号において０＝Ｙ，１＝Ｃｂ，２＝Ｃｒと表される。
【０１１４】
前述のように、ＪＰＥＧ２０００で９×７ウェーブレット変換を選択した場合には、各サブバンド毎にウェーブレット係数を線形（スカラー）量子化することができる。量子化式は次の通りである。
qb(u,v)=sign(ab(u,v))*floor(|ab(u,v)|/Δb)
ただし、ab(u,v)はサブバンドｂにおける係数
qb(u,v)はサブバンドｂにおける係数
Δbはサブバンドｂにおける量子化ステップ数
量子化ステップ数Δｂは次式で表される。
Δb=２^(Rb-εb*floor(1+μb/2^11))
ただし、Rbはサブバンドｂにおけるダイナミックレンジ
εbはサブバンドｂにおける量子化の指数
μbはサブバンドｂにおける量子化の仮数
指数εbと仮数μbは、コードストリーム中のメインヘッダ又はタイルパートヘッダのＱＣＤマーカ又はＱＣＣマーカで規定される。
【発明の効果】
【０１１５】
以上の説明から明らかなように、（１）請求項１〜２３の発明によれば、動画像の符号を復号することなく、フレームの動き量を評価して動き量の小さいフレームを選択することができ、さらに動き量の小さなフレームを削除し、復号した際の動画像の動きをそれほど不自然にすることなく動画像の符号量を削減することができる。（２）請求項７，１０，１１の発明によれば、移動する小さな被写体が含まれるフレームの動き量をより的確に評価することができる。（３）請求項９の発明によれば、長い横方向エッジを持つ被写体が含まれるフレームの動き量をより的確に評価することができる。（４）請求項１２〜１７の発明によれば、フレームにおいてサブバンド間又はブロック間、さらにはフレーム間で量子化ステップ数及トランケート量に違いがあっても、フレームの動き量を的確に評価して動き量の小さなフレームを選択することができる。（５）請求項１９の発明によれば、動き量の小さなフレームが多い動画像の符号量を効果的に削減することができる。
（６）請求項２０の発明によれば、動きの小さなフレームが多い動画像における過度なフレーム間引きを防止することができる。（７）先頭フレームが間引かれると、間引き後の動画像の先頭フレームのアイコン表示と間引き前の先頭フレームのアイコン表示とが相違し、別の動画像と誤認しやすくなるが、請求項２１の発明によれば、先頭フレームの動き量が小さい場合でもその間引きを防止することができるため、そのようなアイコン表示時の不都合を回避できる。（８）請求項２４，２５の発明によれば請求項１〜２２の発明をコンピュータを利用し容易に実施可能である、等々の効果を得られる。
【発明を実施するための最良の形態】
【０１１６】
図１２は、本発明の実施の形態を説明するためのブロック図である。図１２において、１００は処理の対象となる動画像ファイルであり、１０１は動画像の各フレームの符号から特定方向のエッジ量を反映する符号量を算出する符号量算出手段である。１０２はフレーム選択手段であり、符号量算出手段１０１により算出された符号量に基づき各フレームの動き量を評価し、動き量の小さいフレームを選択する。１０３はフレーム削除等処理手段であり、動画像ファイル１００からフレーム選択手段１０２で選択されたフレームの符号を削除する等の処理を行って新しい動画像ファイル１０４を生成する。
【０１１７】
本発明の好ましい実施の形態によれば、動画像ファイル１００，１０４はＭｏｔｉｏｎ−ＪＰＥＧ２０００の動画像ファイルである。Ｍｏｔｉｏｎ−ＪＰＥＧ２０００の動画像は、図１３に模式的に示すように、独立して符号化されたフレーム（Ｉ）の系列からなる。フレームレートは３０フレーム／秒である。各フレームはＪＰＥＧ２０００により符号化される。
【０１１８】
Ｍｏｔｉｏｎ−ＪＰＥＧ２０００では、図１４に模式的に示すようにフレームを奇数フィールドと偶数フィールドとに分離してウェーブレット変換以降の処理を実行するフィールドベース符号化と、図１５に模式的に示すようにフィールドを分離せずにウェーブレット変換以降の処理を実行するフレームベース符号化のいずれも可能であるが、本発明が対象とするものはフレームベース符号化による動画像である。
【０１１９】
Ｍｏｔｉｏｎ−ＪＰＥＧ２０００の動画像ファイルは、図１６に模式的に示すように、フレームのコードストリームが格納される”ｍｏｖｉｅ  ｄａｔａ”（略称ｍｄａｔ）と、ｍｄａｔの属性を格納した”ｍｏｖｉｅ  ｒｅｓｏｕｒｃｅ”（略称ｍｏｏｖ）からなる基本構造である。Ｍｏｔｉｏｎ−ＪＰＥＧ２０００のファイルの構成要素はボックス（ｂｏｘ）と呼ばれ、数多くのボックスが階層構造を形成している。このような階層構造を図１７に示す。図１７の表の左側に位置するボックスほど上の階層であり、したがって、”ｍｏｏｖ”と”ｍｄａｔ”は最上位階層のボックスである。
【０１２０】
フレーム削除等処理手段１０３により処理された動画像ファイル１０４は”ｍｄａｔ”から一部のフレームのコードストリームが削除され、それに対応して”ｍｏｏｖ”の内容が更新されたものである。フレーム削除に伴い更新される”ｍｏｏｖ”の内容は、フレーム数とフレーム間隔に関連する”sample-table  box（stbl）”の下位ボックスである、
”Time-to-Sample  Box(stts)”と”Sample-to-Chunk  Box(stsc)”の２つである。ただし、チャンク数が２以上の場合には、”ｓｔｂｌ”中の”Chunk-Offset  Box(stco)”の更新も必要になる。チャンクとは、シーンのひとまとまりのことである。ここではチャンク数を１として説明を続ける。
【０１２１】
Ｍｏｔｉｏｎ−ＪＰＥＧ２０００の標準書によれば、”stts”は
aligned(8)  class  TimeToSampleBox
extends  FullBox('stts',version=0,0){
unsigned  int(32)    entry-count;
int  i;
for(i=1;i≦entry-count;i++){
unsigned int(32)    sample-count;
int(32)    sample-delta;
}
}
と定義されている。
【０１２２】
すなわち、”stts”は図１９に示すような表である。entry-countは、表の行数である。sample-countとsample-daltaは表の構成要素であり、sample-countは各行のフレーム数(ただし同じ行に関するフレーム間隔は同一)、sample-deltaは各行の時間間隔(1/30秒を単位とする)である。
【０１２３】
また、”stsc”は、
aligned(8)  class  SampleToChunkBox
extends  FullBox('stsc',version=0,0){
unsigned  int(32)    entry-count;
for(i=1;i≦entry-count;i++){
unsigned  int(32)    first-chunk;
unsigned  int(32)    samples-per-chunk;
unsigned  int(32)    sample-description-index;
}
}
と定義されている。
【０１２４】
すなわち、”stsc”は図２０に示すような表である。entry-countは表の行数である。
first-chunk，samples-per-chunk，sample-description-indexは、この表の構成要素である。first-chunkはfirst-chunk表を用いるチャンク番号である(ここでは１チャンクとしているので１)。samples-per-chunkは表の各行に対応するチャンクに含まれるフレーム数、sample-description-indexは各行に対応するチャンクに含まれるフレームのID(ここでは１チャンクとしているので１)である。
【０１２５】
本発明の典型的な実施形態によれば、図１２に示した本発明に係る動画像処理装置の各手段１０１，１０２，１０３の機能、換言すれば、本発明に係る動画像処理方法の処理手順における当該各手段に対応した工程は、コンピュータを利用して１以上のプログラムにより実現される。かかる実施形態の一例をについて、図１８を参照し簡単に説明する。図１８において、２００はＣＰＵ、２０１はＲＡＭ、２０２はハードディスク装置であり、これらはバス２０３により相互に接続されている。
【０１２６】
処理フローの概略は次の通りである。まず、ＣＰＵ２００からの命令によって、ハードディスク装置２０２に記録されている動画像ファイルの内容がＲＡＭ２０１に読み込まれる（１）。ＣＰＵ２００は、ＲＡＭ２０１上の動画像ファイルの”ｍｄａｔ”内の個々のフレームに関し、動き量評価に用いる符号量を算出し、それに基づいてフレームの動き量を評価し、動き量の小さいフレームを選択する（２）。次に、ＣＰＵ２０１は、ＲＡＭ２０１上の動画像ファイルの”ｍｄａｔ”より、選択されたフレームの符号を削除し、それに応じて”ｍｏｏｖ”の内容を更新する処理を行う（３）。そして、ＣＰＵ２００の命令により、ＲＡＭ２０１上の動画像ファイルはハードディスク装置２０１へ転送され、元の動画像ファイルとは別の動画像ファイルとして保存される（４）。
【０１２７】
以下、本発明の実施例について説明する。
【実施例１】
【０１２８】
ここに述べる実施例において処理される動画像ファイルはＭｏｔｉｏｎ−ＪＰＥＧ２０００の動画像ファイルであり、各フレームの符号化において９×７ウェーブレット変換が用いられ、またRGBの画素値がYCbCrの輝度・色差値に変換されて処理されたものとする。また、動画像のチャンク数は１とする。また、１ＬＨ，１ＨＬサブバンドの符号量の比を、２ＬＨ，２ＨＬサブバンドの符号量の比で除した値、すなわち請求項９の発明における符号量比をフレームの動き量の評価に用いるものとする。また、この符号量比を計算する元となる１ＬＨ，１ＨＬ，２ＬＨ，２ＨＬ各サブバンドの符号量について、フレーム内のサブバンド間及び先頭フレームとの間での量子化ステップ数の違い及び量子化ステップ数の違いの影響を吸収するための補正を行う。また、先頭フレームは、削除フレームとしての選択の対象外とする。
【０１２９】
図２１は処理の全体的な流れを示すフローチャートである。このフローチャート及び図１２を参照し、処理全体について簡単に説明する。
【０１３０】
まず、ｓｔｅｐ１において、符号量算出手段１０１で各フレーム（本実施例では先頭フレームは除外）の輝度成分の１ＬＨ，１ＨＬ，２ＬＨ，２ＨＬ各サブバンドの符号量を算出し、この際に上記符号量の補正も行う。ｓｔｅｐ２において、求められた符号量を用いて、フレームの動き量を評価するための符号量比の計算をフレーム選択手段１０２で行う。ただし、後述のように、ｓｔｅｐ１とｓｔｅｐ２の処理はひとまとまりの処理として実行するのが効率的である。
【０１３１】
ｓｔｅｐ３において、フレーム選択手段１０２で、算出した符号量比に基づいて評価される動き量の小さなフレーム（削除フレーム）の選択を行う。この選択の方法として、請求項１９又は請求項２０の発明の方法を選択することができる。また、本実施例においては、請求項２１の発明に定義されているように、先頭フレームは削除フレームとしては選択されない。
【０１３２】
ｓｔｅｐ４において、フレーム削除等処理手段１０３で、選択されたフレームの全成分のコードストリームを削除する処理を行う。ｓｔｅｐ５において、フレーム削除等処理手段１０３で、フレーム削除に伴う”ｍｏｏｖ”の必要な更新処理を行う。これで動きの量の小さいフレームを削除した新しい動画像ファイルが生成され、ｓｔｅｐ６において、その動画像ファイルを当該画像処理装置の内部又は外部の記憶装置に保存する処理をフレーム削除処理手段１０３で行い、一連の処理を完了する。
【０１３３】
ｓｔｅｐ１及びｓｔｅｐ２をひとまとまりの処理として実行する場合の処理フローを図２２に示す。図中のｓｔｅｐ１９がｓｔｅｐ２に対応する処理ステップである。
【０１３４】
まず、ｓｔｅｐ１１で、”ｍｏｏｖ”から”ｍｄａｄ”のアドレスとフレーム数が読み出される。ここでは、１チャンク、１０フレームとして説明する。
【０１３５】
ｓｔｅｐ１２で、フレーム数に等しい数のエントリーを持つテーブルが作成される。このテーブルは、図２３に示すように、各フレーム対応にフレーム番号、符号量比、及び、削除／保存フラグを記憶するためのテーブルである。
【０１３６】
ｓｔｅｐ１３において、”ｍｄａｔ”内の先頭フレームのコードストリームのヘッダ情報を参照し、輝度成分の１ＬＨ，１ＨＬ，２ＬＨ，２ＨＬサブバンドの量子化ステップ数及びトランケート量を取得して保持する。本実施例では、符号量の補正をビットプレー単位で行うため、トランケート量としてビットプレーン数を用いる。ただし、前述のようにサブビットプレーン単位での符号量補正を行うことも可能であり、その場合にはトランケートされたサブビットプレーン数をトランケート量として取得することになる。
【０１３７】
ｓｔｅｐ１４において、次フレームのコードストリームを参照し、そのメインヘッダから１ＬＨ，１ＨＬ，２ＬＨ，２ＨＬサブバンドの量子化ステップ数を取得して保持し、次のｓｔｅｐ１５において、当該フレームのパケットヘッダに基づき各サブバンドの符号量とトランケート量を求めて保持する。これら各サブバンドの符号量に対し、ｓｔｅｐ１６で先頭フレームとの間の量子化ステップ数の違い及びトランケート量との違いを補正するためのフレーム間換算処理を行い、次いでｓｔｅｐ１７において当該フレームのサブバンド間の量子化ステップ数の違い及びトランケート量の違いを補正するためのフレーム内換算処理を行う。これら換算処理については後述する。
【０１３８】
そして、ｓｔｅｐ１８で、換算処理後の符号量を用いて符号量比（１ＬＨ／１ＨＬ／２ＬＨ／２ＨＬと略記する）を計算し、その結果をテーブル（図２３）の対応エントリーに書き込む。
【０１３９】
以上のｓｔｅｐ１４〜１８の処理を各フレームについて最後のフレームまで繰り返し実行する。
【０１４０】
次に、符号量比に基づくフレーム選択処理（図２１のｓｔｅｐ３）について説明する。本実施例では、符号量比が所定の閾値より小さいフレーム（先頭フレームを除く）を選択する方法（１）と、符号量比の小さい順に所定数のフレームを選択する方法（２）を選ぶことができる。
【０１４１】
まず、前者の選択方法（１）について、図２４のフローチャートを参照し説明する。ｓｔｅｐ３１で、テーブル（図２３）の先頭エントリーに保存フラグを書き込む。ｓｔｅｐ３２でテーブルの次エントリーから符号量比を読み出し、ｓｔｅｐ３３で符号量比と所定の閾値ＴＨとの比較判定を行う。符号量が閾値ＴＨより小さいときには当該エントリーに削除フラグを書き込む（つまり、当該エントリーに対応するフレームは削除フレームとして選択された）。符号量比が閾値以上ならば当該エントリーに保存フラグを書き込む。同様の処理をテーブルの最終エントリーまで繰り返す。
【０１４２】
次に、後者の選択方法（２）について、図２５のフローチャートを参照し説明する。ｓｔｅｐ４１で、テーブル（図２３）の先頭エントリーに保存フラグを書き込む。ｓｔｅｐ４２で、テーブルの第２エントリーから最後のエントリーまでの符号量比を読み込み、値の小さい順にソートする。すなわち、テーブルのエントリーを符号量比の小さい順に序列化する。そして、ｓｔｅｐ４３で、この序列の先頭のエントリーから所定数のエントリーを選び、その各エントリーに削除フラグを書き込み、残りの各エントリーには保存フラグを書き込む。
【０１４３】
図２１のｓｔｅｐ４においては、テーブル（図２３）の各エントリーに記録されたフラグを参照し、削除フラグが記録されているエントリーに対応したフレームのコードストりーを削除することになる。
【０１４４】
図２６は、”ｍｏｏｖ”の更新処理（図２１のｓｔｅｐ５）のフローチャートである。ｓｔｅｐ５１で”time-to-sample  box(stts)”を更新し、ｓｔｅｐ５２で”sample-to-chunk  box(stsc)”を更新する。本実施例ではチャンク数を１としているので以上で更新は終わりであるが、チャンク数が複数の場合には"chunk-offset  box(stco)”の更新処理（ｓｔｅｐ５３）も必要となる。
【０１４５】
削除フレームの選択方法として図２４を参照して説明した方法が用いられ、符号量比の判定のための閾値ＴＨを１とした場合の処理結果例を図２７乃至図２９に示す。図２７はテーブル（図２３）の処理後の内容を表している。図２８は”ｓｔｔｓ”の更新前と更新後を、また図２９は”ｓｔｓｃ”の更新前と更新後を表している。フレーム番号２〜４，６が削除されるため、均一値１であったsample-delta（フレーム間隔）が３種類の値をとり、entry-countも３になる。これに伴いsample
countも更新される。４フレームが削除されるため、samples-per-chunkが１０−４＝６に減少する。
【０１４６】
削除フレームの選択方法として図２５を参照して説明した方法が用いられ、削除フレーム数を５とした場合の処理結果例を図３０乃至図３２に示す。図３０はテーブル（図２３）の処理後の内容を表している。図３１は”ｓｔｔｓ”の更新前と更新後を、また図３２は”ｓｔｓｃ”の更新前と更新後を表している。５フレームが削除されるため、samples-per-chunkが１０−５＝５に減少する。
【０１４７】
次に、符号量のフレーム間換算処理（図２２のｓｔｅｐ１６）について説明する。この換算処理は量子化ステップ数に関する換算処理とトランケート量に関する換算処理とからなる。
【０１４８】
まず、量子化ステップ数に関するフレーム間換算処理について説明する。図３３は、１ＬＨ，１ＨＬサブバンドの符号量についての換算処理のフローチャートである。２ＬＨ，２ＨＬサブバンドについても同様の換算処理が行われる。
【０１４９】
図３３を参照すると、ｓｔｅｐ１０１で、保持されている先頭フレームの１ＨＬ，１ＬＨサブバンドの量子化ステップ数のうちの大きい方の量子化ステップ数を選び、それをＸとして設定する。このＸを基準として符号量を補正する。すなわち、ｓｔｅｐ１０２において、保持されている処理対象フレームの１ＨＬサブバンドの量子化ステップ数をＢとして設定する。ｓｔｅｐ１０３でＸ，Ｂの比較判定を行い、Ｘ−Ｂ＞０ならば、最初のフレームの方が多く量子化されているということであるので、ｓｔｅｐ１０４で、処理対象フレームの１ＨＬサブバンドの符号量に対し、下位からｌｏｇ（Ｘ−Ｂ）枚（ただし四捨五入により整数する）のビットプレーン分を差し引く補正を行う。Ｘ−Ｂ＜０の場合は処理対象フレームの方が多く量子化されているということであるので、ｓｔｅｐ１０５で、処理対象フレームの１ＨＬサブバンドの符号量に対し、最下位ビットプレーンの符号量を（ｌｏｇ（Ｂ−Ｘ）＋１）倍する補正を行う。なお、上記ｌｏｇの底は２である（以下同様）。Ｘ−Ｂ＝０のときは符号量の補正は行わない。補正後の符号量が改めて符号量として保持される。次に、ｓｔｅｐ１０６において、保持されている処理対象フレームの１ＬＨサブバンドの量子化ステップ数をＢとして設定する。ｓｔｅｐ１０７でＸ，Ｂの比較判定を行い、Ｘ−Ｂ＞０ならば、最初のフレームの方が多く量子化されているということであるので、ｓｔｅｐ１０８で、処理対象フレームの１ＬＨサブバンドの符号量に対し、下位からｌｏｇ（Ｘ−Ｂ）枚（ただし四捨五入により整数する）のビットプレーン分を差し引く補正を行う。Ｘ−Ｂ＜０の場合は処理対象フレームの方が多く量子化されているということであるので、ｓｔｅｐ１０９で、処理対象フレームの１ＬＨサブバンドの符号量に対し、最下位ビットプレーンの符号量を（ｌｏｇ（Ｂ−Ｘ）＋１）倍する補正を行う。Ｘ−Ｂ＝０のときは符号量の補正は行わない。補正後の符号量が改めて符号量として保持される。
【０１５０】
次に、トランケート量の違いを補正するためのフレーム間換算処理について説明する。図３４は、１ＬＨ，１ＨＬサブバンドについての、この換算処理のフローチャートである。２ＬＨ，２ＨＬサブバンドについても同様の換算処理が行われる。
【０１５１】
図３４を参照すると、ｓｔｅｐ１１１で、保持されている先頭フレームの１ＬＨ，１ＨＬサブバンドのトランケート量（ビットプレーン数）のうちの大きい方のトランケート量を選び、それをＸとして設定する。このＸを基準として符号量の補正を行う。すなわち、ｓｔｅｐ１１２において、保持されている処理対象フレームの１ＨＬサブバンドのトランケート量をＢとして設定する。ｓｔｅｐ１１３でＸ，Ｂの比較判定を行い、Ｘ−Ｂ＞０ならば、最初のフレームの方が多くトランケートされているということであるので、ｓｔｅｐ１１４で、処理対象フレームの１ＨＬサブバンドの符号量に対し、下位から（Ｘ−Ｂ）枚のビットプレーン分を差し引く補正を行う。Ｘ−Ｂ＜０の場合は処理対象フレームの方が多くトランケートされているということであるので、ｓｔｅｐ１１５で、処理対象フレームの１ＨＬサブバンドの符号量に対し、最下位ビットプレーンの符号量を（Ｂ−Ｘ＋１）倍する補正を行う。Ｘ−Ｂ＝０のときは符号量の補正を行わない。補正後の符号量が改めて符号量として保持される。次にｓｔｅｐ１１６で、保持されている処理対象フレームの１ＬＨサブバンドのトランケート量をＢとして設定する。ｓｔｅｐ１１７でＸ，Ｂの比較判定を行い、Ｘ−Ｂ＞０ならば、最初のフレームの方が多くトランケートされているということであるので、ｓｔｅｐ１１８で、処理対象フレームの１ＬＨサブバンドの符号量に対し、下位から（Ｘ−Ｂ）枚のビットプレーン分を差し引く補正を行う。Ｘ−Ｂ＜０の場合は処理対象フレームの方が多くトランケートされているということであるので、ｓｔｅｐ１１５で、処理対象フレームの１ＬＨサブバンドの符号量に対し、最下位ビットプレーンの符号量を（Ｂ−Ｘ＋１）倍する補正を行う。Ｘ−Ｂ＝０のときは符号量の補正を行わない。補正後の符号量が改めて符号量として保持される。
【０１５２】
次に、符号量のフレーム内換算処理（図２２のｓｔｅｐ１７）について説明する。この換算処理は量子化ステップ数に関する換算処理とトランケート量に関する換算処理とからなる。
【０１５３】
まず、量子化ステップ数に関するフレーム内換算処理について説明する。図３５は、１ＬＨ，１ＨＬサブバンドの符号量についての換算処理のフローチャートである。２ＬＨ，２ＨＬサブバンドについても同様の換算処理が行われる。
【０１５４】
図３５を参照すると、ｓｔｅｐ１２１で、保持されている処理対象フレームの１ＨＬサブバンドの量子化ステップ数をＡに、１ＬＨサブバンドの量子化ステップ数をＢに設定する。ｓｔｅｐ１２２でＡ，Ｂの比較判定を行い、Ａ−Ｂ＞０ならば、１ＨＬの方が多く量子化されているということであるので、ｓｔｅｐ１２３で、１ＬＨサブバンドの符号量に対し、下位からｌｏｇ（Ａ−Ｂ）枚（ただし四捨五入により整数する）のビットプレーン分を差し引く補正を行う。Ａ−Ｂ＜０の場合は１ＬＨの方が多く量子化されているということであるので、ｓｔｅｐ１２４で、１ＨＬサブバンドの符号量に対し、下位からｌｏｇ（Ｂ−Ａ）枚（ただし四捨五入により整数する）のビットプレーン分を差し引く補正を行う。Ａ−Ｂ＝０のときは符号量の補正は行わない。補正後の符号量が改めて符号量として保持される。
【０１５５】
上に述べた処理では量子化ステップ数の大きい方のサブバンドのビットプレーン数に合わせる符号量補正方法であったが、量子化ステップ数の小さい方のサブバンドのビットプレーン数に合わせる符号量補正方法とすることも可能であり、その方法の場合の処理フローを図３６に示す。
【０１５６】
図３６を参照すると、ｓｔｅｐ１３１で、保持されている処理対象フレームの１ＨＬサブバンドの量子化ステップ数をＡ、１ＬＨサブバンドの量子化ステップ数をＢに設定する。ｓｔｅｐ１３２でＡ，Ｂの比較判定を行い、Ａ−Ｂ＞０ならば、１ＨＬの方が多く量子化されているということであるので、ｓｔｅｐ１３３で、１ＨＬサブバンドの符号量に対し、その最下位ビットプレーンの符号量を（ｌｏｇ（Ａ−Ｂ）＋１）倍する補正を行う。Ａ−Ｂ＜０の場合は１ＬＨの方が多く量子化されているということであるので、ｓｔｅｐ１３４で、１ＬＨサブバンドの符号量に対し、その最下位ビットプレーンの符号量を
（ｌｏｇ（Ｂ−Ａ）＋１）倍する補正を行う。Ａ−Ｂ＝０のときは符号量の補正は行わない。２ＨＬ，２ＬＨサブバンドの符号量に対する補正も同様である。
【０１５７】
次に、トランケート量に関するフレーム内換算処理について説明する。図３７は、１ＬＨ，１ＨＬサブバンドの符号量についての換算処理のフローチャートである。２ＬＨ，２ＨＬサブバンドについても同様の換算処理が行われる。
【０１５８】
図３７を参照すると、ｓｔｅｐ１４１で、保持されている処理対象フレームの１ＨＬサブバンドのトランケート量をＡ、１ＬＨサブバンドのトランケート量をＢに設定する。ｓｔｅｐ１４２でＡ，Ｂの比較判定を行い、Ａ−Ｂ＞０ならば、１ＨＬの方が多くトランケートされているということであるので、ｓｔｅｐ１４３で、１ＬＨサブバンドの符号量に対し、下位から（Ａ−Ｂ）枚のビットプレーン分を差し引く補正を行う。Ａ−Ｂ＜０の場合は１ＬＨの方が多く量子化されているということであるので、ｓｔｅｐ１４４で、１ＨＬサブバンドの符号量に対し、下位から（Ｂ−Ａ）枚のビットプレーン分を差し引く補正を行う。Ａ−Ｂ＝０のときは符号量の補正は行わない。補正後の符号量が改めて符号量として保持される。
【０１５９】
上に述べた処理ではトランケート量の大きい方のサブバンドのビットプレーン数に合わせる符号量補正方法であったが、トランケート量の小さい方のサブバンドのビットプレーン数に合わせる符号量補正方法とすることも可能であり、その方法の場合の処理フローを図３８に示す。
【０１６０】
図３８を参照すると、ｓｔｅｐ１５１で、保持されている処理対象フレームの１ＨＬサブバンドのトランケート量をＡ、１ＬＨサブバンドのトランケート量をＢに設定する。ｓｔｅｐ１５２でＡ，Ｂの比較判定を行い、Ａ−Ｂ＞０ならば、１ＨＬの方が多くトランケートされているということであるので、ｓｔｅｐ１５３で、１ＨＬサブバンドの符号量に対し、最下位ビットプレーンの符号量を（Ａ−Ｂ＋１）倍する補正を行う。Ａ−Ｂ＜０の場合は１ＬＨサブバンドの方が多く量子化されているということであるので、ｓｔｅｐ１５４で、１ＬＨサブバンドの符号量に対し、最下位ビットプレーンの符号量を（Ｂ−Ａ＋１）倍する補正を行う。Ａ−Ｂ＝０のときは符号量の補正は行わない。２ＨＬ，２ＬＨサブバンドの符号量についても同様の補正が行われる。
【０１６１】
なお、符号量比を厳密に計算する必要がない場合には、フレーム内換算処理とフレーム間換算処理の一方又は両方を省き得る。フレームの符号量比の序列に従って削除フレームを一定枚数選択する場合には、フレーム間の符号量比の相対的な大小関係が重要であるためフレーム間換算処理を行うのが望ましい。
【０１６２】
以上に説明した実施例においては、サブバンド全体の符号量の比を用いてフレームの動き量を評価したが、サブバンドより小さなブロック単位の符号量の比を総和した符号量比を用いてフレームの動き量を評価する態様について説明を補充する。
【０１６３】
ここでは、Ｍｏｔｉｏｎ−ＪＰＥＧ２０００の動画像を対象とし、プリシンクトをブロックとして用いる場合を想定する。デコンポジションレベル１，２のＨＬ，ＬＨサブバンドに関して、図３９のようにプリシンクトに番号を付した場合、図４０に示すような位置関係の対応するプリシンクトの符号量を用いたプリシンクト単位（ブロック単位）の符号量比０〜８を計算する。
【０１６４】
符号量比０は、１ＬＨ，１ＨＬサブバンドのプリシンクト０の符号量の比を、２ＬＨ，２ＨＬサブバンドのプリシンクト０の符号量の比で除して求められる。符号量比１は、１ＬＨ，１ＨＬサブバンドのプリシンクト１の符号量の比を、２ＬＨ，２ＨＬサブバンドのプリシンクト０の符号量の比で除して求められる。他のサブバンド単位の符号量比も同様にして求められる。
【０１６５】
このようにして求めたプリシンクト単位の符号量比の総和をとることにより、ブロック（ここではプリシンクト）毎の被写体の動きをより的確に反映した符号量比を求めることができる。この符号量比を用いた削除フレームの選択などの処理は前記実施例と同様でよい。また、符号量に対するフレーム間換算処理及びフレーム内換算処理も、プリシンクトを単位として同様に行えばよい。なお、コードブロックをブロックの単位として同様の符号量比を求めることもでき、より小さな被写体の動きを符号量比に反映させることができる。
【０１６６】
以上、Ｍｏｔｉｏｎ−ＪＰＥＧ２０００の動画像を例して本発明の実施例を説明したが、ウェーブレット変換その他の周波数変換を用いる符号化方式により符号化された動画像に対しても本発明を適用し得ることは明らかである。
【図面の簡単な説明】
【０１６７】
【図１】被写体の動きによる「櫛形」の説明のための図である。
【図２】ＪＰＥＧ２０００を説明するためのブロック図である。
【図３】原画像の例と座標系を示す図である。
【図４】垂直方向へのフィルタリング後の係数の配列を示す図である。
【図５】水平方向へのフィルタリング後の係数の配列を示す図である。
【図６】デインターリーブした係数の配列を示す図である。
【図７】２回の変換後のデインターリーブした係数の配列を示す図である。
【図８】３回の変換後のサブバンドと解像度レベルを示す図である。
【図９】画像、タイル、サブバンド、プリシンクト、コードブロックの関係を示す図である。
【図１０】レイヤ構成の例を示す図である。
【図１１】パレットの例を示す図である。
【図１２】本発明に係る動画像処理装置を説明するためのブロック図である。
【図１３】Ｍｏｔｉｏｎ−ＪＰＥＧ２０００の動画像のピクチャ構造を示す図である。
【図１４】フィールドベース符号化の説明図である。
【図１５】フレームベース符号化の説明図である。
【図１６】Ｍｏｔｉｏｎ−ＪＰＥＧ２０００の動画像ファイルの基本構造を示す図である。
【図１７】Ｍｏｔｉｏｎ−ＪＰＥＧ２０００の動画像ファイルの階層構造を示す図である。
【図１８】本発明をプログラムにより実施する形態を説明するためのブロック図である。
【図１９】Time-to-Sample  Boxの説明図である。
【図２０】Sample-to-Chunk  Boxの説明図である。
【図２１】一実施例における処理全体の流れを示すフローチャートである。
【図２２】符号量の算出から符号量比の算出までの処理を示すフローチャートである。
【図２３】処理のために作成されるテーブルの説明図である。
【図２４】符号量比に基づくフレーム選択処理の一例を示すフローチャートである。
【図２５】符号量比に基づくフレーム選択処理の別の例を示すフローチャートである。
【図２６】フレーム削除に伴うｍｏｏｖの更新処理のフローチャートである。
【図２７】処理後のテーブルの内容を示す図である。
【図２８】Time-to-Sample  Boxの更新前と更新後の内容を示す図である。
【図２９】Sample-to-Chunk  Boxの更新前と更新後の内容を示す図である。
【図３０】処理後のテーブルの内容を示す図である。
【図３１】Time-to-Sample  Boxの更新前と更新後の内容を示す図である。
【図３２】Sample-to-Chunk  Boxの更新前と更新後の内容を示す図である。
【図３３】量子化ステップ数に関するフレーム間換算処理のフローチャートである。
【図３４】トランケート量に関するフレーム間換算処理のフローチャートである。
【図３５】量子化ステップ数に関するフレーム内換算処理のフローチャートである。
【図３６】量子化ステップ数に関するフレーム内換算処理の別の例を示すフローチャートである。
【図３７】トランケート量に関するフレーム内換算処理のフローチャートである。
【図３８】トランケート量に関するフレーム内換算処理の別の例を示すフローチャートである。
【図３９】プリシンクトとその番号を示す図である。
【図４０】ブロック単位の符号量の計算に用いられるプリシンクトを示す図である。
【符号の説明】
【０１６８】
１００  処理前の動画像ファイル
１０１  符号量算出手段
１０２  フレーム選択手段
１０３  フレーム削除等処理手段
１０４  処理後の動画像ファイル
【図１】
2005252434.tif 000003
【図２】
2005252434.tif 000004
【図３】
2005252434.tif 000005
【図４】
2005252434.tif 000006
【図５】
2005252434.tif 000007
【図６】
2005252434.tif 000008
【図７】
2005252434.tif 000009
【図８】
2005252434.tif 000010
【図９】
2005252434.tif 000011
【図１０】
2005252434.tif 000012
【図１１】
2005252434.tif 000013
【図１２】
2005252434.tif 000014
【図１３】
2005252434.tif 000015
【図１４】
2005252434.tif 000016
【図１５】
2005252434.tif 000017
【図１６】
2005252434.tif 000018
【図１７】
2005252434.tif 000019
【図１８】
2005252434.tif 000020
【図１９】
2005252434.tif 000021
【図２０】
2005252434.tif 000022
【図２１】
2005252434.tif 000023
【図２２】
2005252434.tif 000024
【図２３】
2005252434.tif 000025
【図２４】
2005252434.tif 000026
【図２５】
2005252434.tif 000027
【図２６】
2005252434.tif 000028
【図２７】
2005252434.tif 000029
【図２８】
2005252434.tif 000030
【図２９】
2005252434.tif 000031
【図３０】
2005252434.tif 000032
【図３１】
2005252434.tif 000033
【図３２】
2005252434.tif 000034
【図３３】
2005252434.tif 000035
【図３４】
2005252434.tif 000036
【図３５】
2005252434.tif 000037
【図３６】
2005252434.tif 000038
【図３７】
2005252434.tif 000039
【図３８】
2005252434.tif 000040
【図３９】
2005252434.tif 000041
【図４０】
2005252434.tif 000042