JPWO2019003676A1 - 画像処理装置と画像処理方法およびプログラム - Google Patents

画像処理装置と画像処理方法およびプログラム Download PDF

Info

Publication number
JPWO2019003676A1
JPWO2019003676A1 JP2019526663A JP2019526663A JPWO2019003676A1 JP WO2019003676 A1 JPWO2019003676 A1 JP WO2019003676A1 JP 2019526663 A JP2019526663 A JP 2019526663A JP 2019526663 A JP2019526663 A JP 2019526663A JP WO2019003676 A1 JPWO2019003676 A1 JP WO2019003676A1
Authority
JP
Japan
Prior art keywords
unit
data
image
transform
image data
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2019526663A
Other languages
English (en)
Inventor
雄介 宮城
雄介 宮城
義崇 森上
義崇 森上
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Sony Corp
Original Assignee
Sony Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Sony Corp filed Critical Sony Corp
Publication of JPWO2019003676A1 publication Critical patent/JPWO2019003676A1/ja
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/60Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
    • H04N19/61Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding in combination with predictive coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/124Quantisation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/176Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a block, e.g. a macroblock
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/18Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being a set of transform coefficients
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/70Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by syntax aspects related to video coding, e.g. related to compression standards
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/80Details of filtering operations specially adapted for video compression, e.g. for pixel interpolation
    • H04N19/82Details of filtering operations specially adapted for video compression, e.g. for pixel interpolation involving filtering within a prediction loop

Abstract

画像処理装置は、演算部12で算出された原画像データと予測画像データとの差を示す残差データについて、変換処理ブロック毎に複数種類の係数の量子化を行う。例えば直交変換部14で生成された変換係数を量子化部15で量子化して変換量子化データと、直交変換をスキップする変換スキップを用いることにより残差データを量子化部16で量子化して変換スキップ量子化データを生成する。エントロピー符号化部28は、変換量子化データと変換スキップ量子化データを符号化して符号化ストリームを生成する。変換スキップを用いることで生じる復号画像の画質低下を、変換係数量子化データの復号結果を用いて抑制できるようになる。

Description

この技術は、画像処理装置と画像処理方法およびプログラムに関し、復号画像の画質低下を抑制できるようにする。
従来、動画像を効率的に伝送または記録するために、動画像データの符号化を行い符号化ストリームを生成する符号化装置、および符号化ストリームの復号を行い動画像データを生成する復号装置が広く用いられている。また、動画像符号化方式として、例えば非特許文献1,2で示すように、HEVC(High Efficiency Video Coding、すなわちITU−T H.265またはISO/IEC 23008−2)が規格化されている。
HEVCでは、CTU(Coding Tree Unit)と呼ばれるブロックの単位でピクチャ分割が行われる。CTUは16の倍数で最大64×64画素のいずれかの固定ブロックサイズとされている。各CTUは、四分木ベースで可変サイズの符号化ユニット(Coding Unit:CU)に分割される。また、CTUを分割しない場合は、CTUがCUとなる。各CUは予測ユニット(Prediction Unit:PU)と呼ばれるブロック、及び変換ユニット(Transform Unit:TU)と呼ばれるブロックに分割される。PUとTUは、CU内で独立に定義される。HEVCでは、急峻なエッジの保持のため、TUに対して予測誤差の直交変換をスキップして量子化する変換スキップモードが設けられている。
また、特許文献1では、予測誤差の特性を示す特徴量に基づいて直交変換のスキップが選択されている。
特開2014−131270号公報
ITU-T Recommendation H.265:"High efficiency video coding," 2013. ISO/IEC 23008-2:"High Efficiency Video Coding," 2013.
ところで、残差データ(予測誤差)にDC成分(直流成分)が含まれる場合、直交変換をスキップして残差データを量子化すると、逆量子化後の残差データではDC成分を再現することができない場合がある。また、直交変換をスキップしたことで残差データにDCずれを生じると、直交変換が行われたTUと直交変換がスキップされたTUのブロック境界部分で不連続を生じて、復号画像は画質の低下した画像となってしまう。
そこで、本技術では、復号画像の画質低下を抑制できる画像処理装置と画像処理方法およびプログラムを提供する。
この技術の第1の側面は、
画像データから各変換処理ブロックで生成された複数種類の係数を種類毎に量子化して量子化データを生成する量子化部と、
前記量子化部で生成された前記複数種類毎の量子化データを符号化して符号化ストリームを生成する符号化部と
を備える画像処理装置にある。
この技術においては、画像データ例えば符号化対象の画像データと予測画像データとの差を示す残差データから、各変換処理ブロックで生成された複数種類の係数、例えば直交変換処理によって得られる変換係数と直交変換をスキップする変換スキップ処理によって得られる変換スキップ係数のそれぞれの量子化データが量子化部で生成される。符号化部は、変換スキップ係数の量子化データと変換係数における例えばDC成分(直流成分)の係数の量子化データとを符号化する。また、画像データの成分分離処理を周波数領域または空間領域で行うフィルタ部を設けて、符号化部は、フィルタ部の成分分離処理で得られた第1の分離データに対して直交変換を行うことにより得られた変換係数の量子化データと、成分分離処理で得られた第1の分離画像データと異なる第2分離データに対して変換スキップ処理を行うことにより得られた変換スキップ係数の量子化データを符号化する。
また、符号化部は、直交変換を画像データに対して行うことにより得られた変換係数の量子化データと、変換係数の係数データの量子化と逆量子化および逆直交変換を行うことにより得られた復号データと画像データとの差に対して変換スキップ処理を行うことにより得られた変換スキップ係数の量子化データを符号化してもよい。また、符号化部は、変換スキップ処理を画像データに対して行うことにより得られた変換スキップ係数の量子化データと、変換スキップ係数の係数データの量子化と逆量子化を行うことにより得られた復号データと画像データとの差に対して直交変換処理を行うことにより得られた変換係数の量子化データを符号化してもよい。
量子化部は、係数の種類毎に設定された量子化パラメータに基づいて係数の量子化を行い、符号化部は、係数の種類毎に設定された量子化パラメータを示す情報を符号化して符号化ストリームに含める。
この技術の第2の側面は、
画像データから各変換処理ブロックで生成された複数種類の係数を種類毎に量子化して量子化データを生成することと、
前記量子化部で生成された前記複数種類毎の量子化データを符号化して符号化ストリームを生成することと
を含む画像処理方法にある。
この技術の第3の側面は、
画像符号化処理をコンピュータで実行させるプログラムであって、
画像データから各変換処理ブロックで生成された複数種類の係数を種類毎に量子化して量子化データを生成する手順と、
前記生成された前記複数種類毎の量子化データを符号化して符号化ストリームを生成する手順と
を前記コンピュータで実行させるプログラム。
この技術の第4の側面は、
符号化ストリームの復号を行い、複数種類の係数の種類毎の量子化データを取得する復号部と、
前記復号部で取得された量子化データの逆量子化を行い前記種類毎の係数を生成する逆量子化部と、
前記逆量子化部で得られた係数から前記係数の種類毎に画像データを生成する逆変換部と、
前記逆変換部で得られた前記係数の種類毎の画像データを用いた演算処理を行い復号画像データを生成する演算部と
を備える画像処理装置にある。
この技術においては、符号化ストリームの復号を復号部で行い、例えば複数種類の係数の種類毎の量子化データと複数種類の係数の種類毎の量子化パラメータを示す情報を取得する。逆量子化部は、復号部で取得された量子化データの逆量子化を行い種類毎の係数を生成する。また、逆量子化では、係数の種類毎に対応する量子化パラメータの情報を用いて対応する量子化データの逆量子化を行う。逆変換部は、逆量子化部で得られた係数から係数の種類毎に画像データを生成する。演算部は、逆変換部で得られた係数の種類毎の画像データを用いた演算処理を行い、逆変換部で得られた係数の種類毎の画像データと予測画像データを、画素位置を合わせて加算して復号画像データを生成する。
この技術の第5の側面は、
符号化ストリームの復号を行い、複数種類の係数の種類毎の量子化データを取得することと、
前記取得された量子化データの逆量子化を行い前記種類毎の係数を生成することと、
前記生成された係数から前記係数の種類毎に画像データを生成することと、
前記係数の種類毎の画像データを用いた演算処理を行い復号画像データを生成することと
を含む画像処理方法にある。
この技術の第6の側面は、
画像復号処理をコンピュータで実行させるプログラムであって、
符号化ストリームの復号を行い、複数種類の係数の種類毎の量子化データを取得する手順と、
前記取得された量子化データの逆量子化を行い前記種類毎の係数を生成する手順と、
前記生成された係数から前記係数の種類毎に画像データを生成する手順と
前記係数の種類毎の画像データを用いた演算処理を行い復号画像データを生成する手順と
を前記コンピュータで実行させるプログラムにある。
なお、本技術のプログラムは、例えば、様々なプログラム・コードを実行可能な汎用コンピュータに対して、コンピュータ可読な形式で提供する記憶媒体、通信媒体、例えば、光ディスクや磁気ディスク、半導体メモリなどの記憶媒体、あるいは、ネットワークなどの通信媒体によって提供可能なプログラムである。このようなプログラムをコンピュータ可読な形式で提供することにより、コンピュータ上でプログラムに応じた処理が実現される。
この技術によれば、画像データから各変換処理ブロックで生成された複数種類の係数を種類毎に量子化して量子化データが生成されて、この複数種類毎の量子化データを符号化して符号化ストリームが生成される。また、符号化ストリームの復号を行い、複数種類の係数の種類毎の量子化データを取得して、取得した量子化データの逆量子化を行い種類毎の係数が生成される。また、生成された係数から係数の種類毎に画像データが生成されて、係数の種類毎の画像データを用いた演算処理によって復号画像データが生成される。このため、復号画像の画質低下を抑制できるようになる。なお、本明細書に記載された効果はあくまで例示であって限定されるものではなく、また付加的な効果があってもよい。
画像符号化装置の第1の実施の形態の構成を例示した図である。 第1の実施の形態の動作を例示したフローチャートである。 画像符号化装置の第2の実施の形態の構成を例示した図である。 第2の実施の形態の動作を例示したフローチャートである。 画像符号化装置の第3の実施の形態の構成を例示した図である。 第3の実施の形態の動作を例示したフローチャートである。 画像符号化装置の第4の実施の形態の構成を例示した図である。 周波数領域で成分分離処理を行う場合のフィルタ部の構成を例示した図である。 空間領域で成分分離処理を行う場合のフィルタ部の構成を例示した図である。 空間フィルタを例示した図である。 第4の実施の形態の動作を例示したフローチャートである。 画像復号装置の第1の実施の形態の構成を例示した図である。 第1の実施の形態の動作を例示したフローチャートである。 画像復号装置の第2の実施の形態の構成を例示した図である。 第2の実施の動作を例示したフローチャートである。 動作例を示す図である。 原画像と復号画像を例示した図である。 複数種類の係数の伝送に関するシンタックスを示す図(その1)である。 複数種類の係数の伝送に関するシンタックスを示す図(その2)である。 複数の量子化パラメータを用いる場合のシンタックスを示す図である。 テレビジョン装置の概略的な構成の一例を示す図である。 携帯電話機の概略的な構成の一例を示す図である。 記録再生装置の概略的な構成の一例を示す図である。 撮像装置の概略的な構成の一例を示す図である。
以下、本技術を実施するための形態について説明する。なお、説明は以下の順序で行う。
1.画像処理装置の概要
2.画像符号化装置について
2−1.第1の実施の形態
2−1−1.画像符号化装置の構成
2−1−2.画像符号化装置の動作
2−2.第2の実施の形態
2−2−1.画像符号化装置の構成
2−2−2.画像符号化装置の動作
2−3.第3の実施の形態
2−3−1.画像符号化装置の構成
2−3−2.画像符号化装置の動作
2−4.第4の実施の形態
2−4−1.画像符号化装置の構成
2−4−2.画像符号化装置の動作
3.画像復号装置について
3−1.第1の実施の形態
3−1−1.画像復号装置の構成
3−1−2.画像復号装置の動作
3−2.第2の実施の形態
3−2−1.画像復号装置の構成
3−2−2.画像復号装置の動作
4.画像処理装置の動作例
5.複数種類の係数の伝送に関するシンタックスについて
6.複数種類の係数を伝送する場合の量子化パラメータについて
7.応用例
<1.画像処理装置の概要>
本技術の画像処理装置では、画像データから各変換処理ブロックで生成された複数種類の係数を種類毎に量子化して量子化データを生成して、複数種類毎の量子化データを符号化して符号化ストリーム(ビットストリーム)を生成する。また、画像処理装置は、符号化ストリームの復号を行い、複数種類の係数の種類毎の量子化データを取得して、取得した量子化データの逆量子化を行い種類毎の係数を生成する。画像処理装置は、生成された係数から係数の種類毎に画像データを生成して、この画像データを用いた演算処理を行い復号画像データを生成する。
次に、複数種類の係数として、直交変換を行うことにより得られる変換係数と、直交変換をスキップする変換スキップ処理を行うことによって得られる変換スキップ係数を用いる場合について、画像データの符号化を行い符号化ストリームを生成する画像符号化装置と、符号化ストリームの復号を行い復号画像データを生成する画像復号装置のそれぞれについて説明する。
<2.画像符号化装置について>
<2−1.第1の実施の形態>
画像符号化装置の第1の実施の形態では、符号化対象の画像データと予測画像データとの差を示す残差データに対して、変換処理ブロック毎(例えばTU毎)に直交変換と変換スキップ処理を行う。また、画像符号化装置は、直交変換により得られた変換係数の量子化データと、変換スキップ処理を行うことにより得られた変換スキップ係数の量子化データとを符号化して、符号化ストリームを生成する。
<2−1−1.画像符号化装置の構成>
図1は、画像符号化装置の第1の実施の形態の構成を例示している。画像符号化装置10-1は、入力画像データの符号化を行い符号化ストリームを生成する。
画像符号化装置10-1は、画面並べ替えバッファ11、演算部12、直交変換部14、量子化部15,16、エントロピー符号化部28、蓄積バッファ29、レート制御部30を有する。また、画像符号化装置10-1は、逆量子化部31,33、逆直交変換部32、演算部34,41、ループ内フィルタ42、フレームメモリ43、選択部44を有している。さらに、画像符号化装置10-1は、イントラ予測部45、動き予測・補償部46、予測選択部47を有する。
画面並べ替えバッファ11は、入力画像の画像データを記憶して、記憶した表示順序のフレーム画像を、GOP(Group of Picture)構造に応じて、符号化のための順序(符号化順)に並べ替える。画面並べ替えバッファ11は、符号化順とされた符号化対象の画像データ(原画像データ)を、演算部12へ出力する。また、画面並べ替えバッファ11は、イントラ予測部45および動き予測・補償部46へ出力する。
演算部12は、画面並べ替えバッファ11から供給された原画像データから、予測選択部47を介してイントラ予測部45若しくは動き予測・補償部46から供給される予測画像データを画素位置毎に減算して、予測残差を示す残差データを生成する。演算部12は生成した残差データを直交変換部14と量子化部16へ出力する。
例えば、イントラ符号化が行われる画像の場合、演算部12は原画像データから、イントラ予測部45で生成された予測画像データを減算する。また、例えば、インター符号化が行われる画像の場合、演算部12は原画像データから、動き予測・補償部46で生成された予測画像データを減算する。
直交変換部14は、演算部12から供給される残差データに対して、離散コサイン変換、カルーネン・レーベ変換等の直交変換を施し、その変換係数を量子化部15へ出力する。
量子化部15は、直交変換部14から供給される変換係数を量子化して、エントロピー符号化部28と逆量子化部31へ出力する。なお、変換係数の量子化データを変換量子化データとする。
量子化部16は、演算部12で生成された残差データの直交変換をスキップする変換スキップ処理を行うことにより得られた変換スキップ係数、すなわち残差データを示す変換スキップ係数を量子化して、エントロピー符号化部28と逆量子化部33へ出力する。なお、変換スキップ係数の量子化データを変換スキップ量子化データとする。
エントロピー符号化部28は、量子化部15から供給された変換量子化データと、量子化部16から供給された変換スキップ量子化データに対して、エントロピー符号化処理、例えばCABAC(Context-Adaptive Binary Arithmetic Coding)等の算術符号化処理を行う。また、エントロピー符号化部28は、予測選択部47で選択された予測モードのパラメータ、例えばイントラ予測モードを示す情報などのパラメータ、またはインター予測モードを示す情報や動きベクトル情報などのパラメータを取得する。さらに、エントロピー符号化部28は、ループ内フィルタ42からフィルタ処理に関するパラメータを取得する。エントロピー符号化部28は、変換量子化データと変換スキップ量子化データをエントロピー符号化するとともに、取得した各パラメータ(シンタックス要素)をエントロピー符号化してヘッダ情報の一部として(多重化して)蓄積バッファ29に蓄積させる。
蓄積バッファ29は、エントロピー符号化部28から供給された符号化データを一時的に保持し、所定のタイミングにおいて、符号化データを例えば後段の図示せぬ記録装置や伝送路などに符号化ストリームとして出力する。
レート制御部30は、蓄積バッファ29に蓄積された圧縮画像に基づいて、オーバーフローあるいはアンダーフローが発生しないように、量子化部15,16の量子化動作のレートを制御する。
逆量子化部31は、量子化部15から供給された変換量子化データを、量子化部15で行われた量子化に対応する方法で逆量子化する。逆量子化部31は、得られた逆量子化データすなわち変換係数を逆直交変換部32へ出力する。
逆直交変換部32は、逆量子化部31から供給された変換係数を直交変換部14で行われた直交変換処理に対応する方法で逆直交変換する。逆直交変換部32は、逆直交変換結果すなわち復号された残差データを、演算部34へ出力する。
逆量子化部33は、量子化部16から供給された変換スキップ量子化データを、量子化部16で行われた量子化に対応する方法で逆量子化する。逆量子化部33は、得られた逆量子化データすなわち残差データを演算部34へ出力する。
演算部34は、逆直交変換部32から供給された残差データと、逆量子化部33から供給された残差データを加算して、加算結果を復号残差データとして演算部41へ出力する。
演算部41は、演算部34から供給された復号残差データに、予測選択部47を介してイントラ予測部45若しくは動き予測・補償部46から供給される予測画像データを加算して、局部的に復号された画像データ(復号画像データ)を得る。例えば、残差データが、イントラ符号化が行われる画像に対応する場合、演算部41は、残差データにイントラ予測部45から供給される予測画像データを加算する。また、例えば、残差データが、インター符号化が行われる画像に対応する場合、演算部34は、残差データに動き予測・補償部46から供給される予測画像データを加算する。加算結果である復号画像データは、ループ内フィルタ42へ出力する。また、復号画像データは参照画像データとしてフレームメモリ43へ出力する。
ループ内フィルタ42は、例えばデブロッキングフィルタや適応オフセットフィルタおよび適応ループフィルタの少なくともいずれかを用いて構成されている。デブロッキングフィルタは、デブロッキングフィルタ処理を行うことにより復号画像データのブロック歪を除去する。適応オフセットフィルタは、適応オフセットフィルタ処理(SAO(Sample Adaptive Offset)処理)を行い、リンギングの抑制やグラデーション画像等で生じる復号画像における画素値の誤差を低減させる。ループ内フィルタ42は、例えば2次元のウィナーフィルタ(Wiener Filter)等を用いて構成されており、適応ループフィルタ(ALF:Adaptive Loop Filter)処理を行い符号化歪みを除去する。ループ内フィルタ42は、フィルタ処理後の復号画像データを参照画像データとしてフレームメモリ43へ出力する。また、ループ内フィルタ42は、フィルタ処理に関するパラメータをエントロピー符号化部28へ出力する。
フレームメモリ43に蓄積されている参照画像データは、所定のタイミングで選択部44を介してイントラ予測部45または動き予測・補償部46に出力される。例えば、イントラ符号化が行われる画像の場合、フレームメモリ43からループ内フィルタ42によるフィルタ処理が行われていない参照画像データが読み出されて、選択部44を介してイントラ予測部45へ出力される。また、例えば、インター符号化が行われる場合、フレームメモリ43からループ内フィルタ42でフィルタ処理が行われている参照画像データが読み出されて、選択部44を介して動き予測・補償部46へ出力される。
イントラ予測部45は、画面内の画素値を用いて予測画像データを生成するイントラ予測(画面内予測)を行う。イントラ予測部45は、演算部41で生成されてフレームメモリ43に記憶されている復号画像データを参照画像データとして用いて全てのイントラ予測モード毎に予測画像データを生成する。また、イントラ予測部45は、画面並べ替えバッファ11から供給された原画像データと予測画像データを用いて各イントラ予測モードのコスト(例えばレート歪みコスト)の算出等を行い、算出したコストが最小となる最適なモードを選択する。イントラ予測部45は、最適なイントラ予測モードを選択すると、選択したイントラ予測モードの予測画像データと、選択したイントラ予測モードを示すイントラ予測モード情報等のパラメータ、コスト等を予測選択部47へ出力する。
動き予測・補償部46は、インター符号化が行われる画像について、画面並べ替えバッファ11から供給された原画像データと、フィルタ処理が行われてフレームメモリ43に記憶されている復号画像データを参照画像データとして用いて動き予測を行う。また、動き予測・補償部46は、動き予測により検出された動きベクトルに応じて動き補償処理を行い、予測画像データを生成する。
動き予測・補償部46は、候補となる全てのインター予測モードのインター予測処理を行い、全てのイントラ予測モード毎に予測画像データを生成してコスト(例えばレート歪みコスト)の算出等を行い、算出したコストが最小となる最適なモードを選択する。動き予測・補償部46は、最適なインター予測モードを選択すると、選択したインター予測モードの予測画像データと、選択したインター予測モードを示すインター予測モード情報や算出した動きベクトルを示す動きベクトル情報などのパラメータ、コスト等を予測選択部47へ出力する。
予測選択部47は、イントラ予測モードとインター予測モードのコストに基づき最適な予測処理を選択する。予測選択部47は、イントラ予測処理を選択した場合、イントラ予測部45から供給された予測画像データを演算部12や演算部41へ出力して、イントラ予測モード情報等のパラメータをエントロピー符号化部28へ出力する。予測選択部47は、インター予測処理を選択した場合、動き予測・補償部46から供給された予測画像データを演算部12や演算部41へ出力して、インター予測モード情報や動きベクトル情報等のパラメータをエントロピー符号化部28へ出力する。
<2−1−2.画像符号化装置の動作>
次に、画像符号化装置の第1の実施の形態の動作について説明する。図2は、画像符号化装置の動作を例示したフローチャートである。
ステップST1において画像符号化装置は画面並べ替え処理を行う。画像符号化装置10-1の画面並べ替えバッファ11は、表示順のフレーム画像を符号化順に並べ替えて、イントラ予測部45と動き予測・補償部46へ出力する。
ステップST2において画像符号化装置はイントラ予測処理を行う。画像符号化装置10-1のイントラ予測部45は、フレームメモリ43から読み出した参照画像データを用いて、処理対象のブロックの画素を候補となる全てのイントラ予測モードでイントラ予測して予測画像データを生成する。また、イントラ予測部45は、生成した予測画像データと原画像データを用いてコストを算出する。なお、参照画像データとしては、ループ内フィルタ42によるフィルタ処理が行われていない復号画像データが用いられる。イントラ予測部45は、算出されたコストに基づいて、最適イントラ予測モードを選択して、最適イントラ予測モードのイントラ予測により生成された予測画像データとパラメータやコストを予測選択部47に出力する。
ステップST3において画像符号化装置は動き予測・補償処理を行う。画像符号化装置10-1の動き予測・補償部46は、処理対象のブロックの画素を、候補となる全てのインター予測モードでインター予測を行い予測画像データを生成する。また、動き予測・補償部46は、生成した予測画像データと原画像データを用いてコストを算出する。なお、参照画像データとしては、ループ内フィルタ42よりフィルタ処理が行われた復号画像データが用いられる。動き予測・補償部46は、算出したコストに基づいて、最適インター予測モードを決定して、最適インター予測モードにより生成された予測画像データとパラメータとコストを予測選択部47へ出力する。
ステップST4において画像符号化装置は予測画像選択処理を行う。画像符号化装置10-1の予測選択部47は、ステップST2およびステップST3で算出されたコストに基づいて、最適イントラ予測モードと最適インター予測モードのうちの一方を、最適予測モードに決定する。そして、予測選択部47は、決定した最適予測モードの予測画像データを選択して、演算部12,41へ出力する。なお、予測画像データは、後述するステップST5,ST10の演算に利用される。また、予測選択部47は、最適予測モードに関するパラメータを、エントロピー符号化部28へ出力する。
ステップST5において画像符号化装置は差分演算処理を行う。画像符号化装置10-1の演算部12は、ステップST1で並べ替えられた原画像データと、ステップST4で選択された予測画像データとの差分を算出して、差分結果である残差データを直交変換部14と量子化部16へ出力する。
ステップST6において画像符号化装置は直交変換処理を行う。画像符号化装置10-1の直交変換部14は、演算部12から供給された残差データを直交変換する。具体的には、離散コサイン変換、カルーネン・レーベ変換等の直交変換を行い、得られた変換係数を量子化部15へ出力する。
ステップST7において画像符号化装置は量子化処理を行う。画像符号化装置10-1の量子化部15は、直交変換部14から供給された変換係数を量子化して、変換量子化データを生成する。量子化部15は、生成した変換量子化データをエントロピー符号化部28と逆量子化部31へ出力する。また、量子化部16は、演算部12で生成された残差データの変換スキップ処理を行うことにより得られた変換スキップ係数(残差データ)を量子化して、変換スキップ量子化データを生成する。量子化部16は、生成した変換スキップ量子化データをエントロピー符号化部28と逆量子化部33へ出力する。この量子化に際しては、後述するステップST15の処理で説明されるようにレート制御が行われる。
以上のようにして生成された量子化データは、次のようにして局部的に復号される。すなわち、ステップST8において画像符号化装置は逆量子化処理を行う。画像符号化装置10-1の逆量子化部31は、量子化部15から供給された変換量子化データを量子化部15に対応する特性で逆量子化して、得られた変換係数を逆直交変換部32へ出力する。また、画像符号化装置10-1の逆量子化部33は、量子化部16から供給された変換スキップ量子化データを量子化部16に対応する特性で逆量子化して、得られた残差データを演算部34へ出力する。
ステップST9において画像符号化装置は逆直交変換処理を行う。画像符号化装置10-1の逆直交変換部32は、逆量子化部31で得られた逆量子化データすなわち変換係数を直交変換部14に対応する特性で逆直交変換して、得られた残差データを演算部34へ出力する。
ステップST10において画像符号化装置は画像加算処理を行う。画像符号化装置10-1の演算部34は、ステップST8において逆量子化部33で逆量子化を行うことにより得られた残差データと、ステップST9において逆直交変換部32で逆直交変換を行うことにより得られた残差データを加算することで、局部的に復号された残差データを生成する。また、演算部41は、局部的に復号された残差データとステップST4で選択された予測画像データを加算することで局部的に復号された(すなわち、ローカルデコードされた)復号画像データを生成して、ループ内フィルタ42とフレームメモリ43へ出力する。
ステップST11において画像符号化装置はループ内フィルタ処理を行う。画像符号化装置10-1のループ内フィルタ42は、演算部41で生成された復号画像データに対して、例えばデブロッキングフィルタ処理とSAO処理および適応ループフィルタ処理の少なくともいずれかのフィルタ処理を行う。ループ内フィルタ42は、フィルタ処理後の復号画像データをフレームメモリ43へ出力する。
ステップST12において画像符号化装置は記憶処理を行う。画像符号化装置10-1のフレームメモリ43は、演算部41から供給されたループ内フィルタ処理前の復号画像データと、ステップST11でループ内フィルタ処理が行われたループ内フィルタ42からの復号画像データを参照画像データとして記憶する。
ステップST13において画像符号化装置はエントロピー符号化処理を行う。画像符号化装置10-1のエントロピー符号化部28は、量子化部15,16から供給された変換量子化データと変換スキップ量子化データ、およびループ内フィルタ42や予測選択部47から供給されたパラメータ等を符号化して蓄積バッファ29へ出力する。
ステップST14において画像符号化装置は蓄積処理を行う。画像符号化装置10-1の蓄積バッファ29は、エントロピー符号化部28から供給された符号化データを蓄積する。蓄積バッファ29に蓄積された符号化データは、適宜読み出されて伝送路等を介して復号側に供給される。
ステップST15において画像符号化装置はレート制御を行う。画像符号化装置10-1のレート制御部30は、蓄積バッファ29に蓄積された符号化データがオーバーフローあるいはアンダーフローを生じないように量子化部15,16の量子化動作のレート制御を行う。
このように、第1の実施の形態では、直交変換後の変換係数と変換スキップ係数を符号化ストリームに含めて画像符号化装置から画像復号装置に伝送される。したがって、直交変換後の変換係数の量子化および逆量子化等を行い復号された復号画像に比べてモスキートノイズ等による画質低減を抑制できる。また、変換スキップ係数の量子化および逆量子化等を行い復号された復号画像に比べてグラデーションの破綻を少なくできる。したがって、変換係数または変換スキップ係数のいずれかを符号化ストリームに含める場合に比べて、復号画像の高画質低下を抑制できるようになる。
また、第1の実施の形態では、変換係数と変換スキップ係数を独立に並列して算出して量子化することから、変換係数と変換スキップ係数を符号化ストリームに含める場合でも符号化処理を高速に行うことができる。
<2−2.第2の実施の形態>
次に、画像符号化装置の第2の実施の形態について説明する。画像符号化装置は、符号化対象画像と予測画像との差を示す残差データに対して、変換処理ブロック毎に直交変換を行う。また、画像符号化装置は、直交変換により得られた変換係数の量子化と逆量子化および逆直交変換を行うことにより復号された残差データに生じた誤差を算出する。さらに、算出した誤差残差データに対する直交変換をスキップして変換スキップ係数として、変換係数と変換スキップ係数とを符号化して、符号化ストリームを生成する。
<2−2−1.画像符号化装置の構成>
図3は、画像符号化装置の第2の実施の形態の構成を例示している。画像符号化装置10-2は、原画像データの符号化を行い符号化ストリームを生成する。
画像符号化装置10-2は、画面並べ替えバッファ11、演算部12,24、直交変換部14、量子化部15、逆量子化部22、逆直交変換部23、量子化部25、エントロピー符号化部28、蓄積バッファ29、レート制御部30を有する。また、画像符号化装置10-2は、逆量子化部35、演算部36,41、ループ内フィルタ42、フレームメモリ43、選択部44を有している。さらに、画像符号化装置10-2は、イントラ予測部45、動き予測・補償部46、予測選択部47を有する。
画面並べ替えバッファ11は、入力画像の画像データを記憶して、記憶した表示順序のフレーム画像を、GOP(Group of Picture)構造に応じて、符号化のための順序(符号化順)に並べ替える。画面並べ替えバッファ11は、符号化順とされた符号化対象の画像データ(原画像データ)を、演算部12へ出力する。また、画面並べ替えバッファ11は、イントラ予測部45および動き予測・補償部46へ出力する。
演算部12は、画面並べ替えバッファ11から供給された原画像データから、予測選択部47を介してイントラ予測部45若しくは動き予測・補償部46から供給される予測画像データを画素位置毎に減算して、予測残差を示す残差データを生成する。演算部12は生成した残差データを直交変換部14へ出力する。
直交変換部14は、演算部12から供給される残差データに対して、離散コサイン変換、カルーネン・レーベ変換等の直交変換を施し、その変換係数を量子化部15へ出力する。
量子化部15は、直交変換部14から供給される変換係数を量子化して、逆量子化部22とエントロピー符号化部28へ出力する。
逆量子化部22は、量子化部15から供給された変換量子化データを、量子化部15で行われた量子化に対応する方法で逆量子化する。逆量子化部22は、得られた逆量子化データすなわち変換係数を逆直交変換部23へ出力する。
逆直交変換部23は、逆量子化部22から供給された変換係数を直交変換部14で行われた直交変換処理に対応する方法で逆直交変換する。逆直交変換部23は、逆直交変換結果すなわち復号された残差データを、演算部24,36へ出力する。
演算部24は、逆直交変換部23から供給された復号残差データを、演算部12から供給された差分データから減算して、直交変換と量子化および逆量子化と逆直交変換を行ったことによって生じる誤差を示すデータ(以下「変換誤差データ」という)を算出して、直交変換がスキップされた変換スキップ係数として量子化部25へ出力する。
量子化部25は、演算部24から供給される変換スキップ係数を量子化して、変換誤差量子化データを生成する。量子化部25は、生成した変換スキップ量子化データをエントロピー符号化部28と逆量子化部35へ出力する。
エントロピー符号化部28は、量子化部15から供給された変換量子化データと、量子化部25から供給された変換スキップ量子化データに対して、エントロピー符号化処理、例えばCABAC(Context-Adaptive Binary Arithmetic Coding)等の算術符号化処理を行う。また、エントロピー符号化部28は、予測選択部47で選択された予測モードのパラメータ、例えばイントラ予測モードを示す情報などのパラメータ、またはインター予測モードを示す情報や動きベクトル情報などのパラメータを取得する。さらに、エントロピー符号化部28は、ループ内フィルタ42からフィルタ処理に関するパラメータを取得する。エントロピー符号化部28は、変換量子化データと変換スキップ量子化データをエントロピー符号化するとともに、取得した各パラメータ(シンタックス要素)をエントロピー符号化してヘッダ情報の一部として(多重化して)蓄積バッファ29に蓄積させる。
蓄積バッファ29は、エントロピー符号化部28から供給された符号化データを一時的に保持し、所定のタイミングにおいて、符号化データを例えば後段の図示せぬ記録装置や伝送路などに符号化ストリームとして出力する。
レート制御部30は、蓄積バッファ29に蓄積された圧縮画像に基づいて、オーバーフローあるいはアンダーフローが発生しないように、量子化部15,25の量子化動作のレートを制御する。
逆量子化部35は、量子化部25から供給された変換スキップ量子化データを、量子化部25で行われた量子化に対応する方法で逆量子化する。逆量子化部35は、得られた復号変換誤差データを演算部36へ出力する。
演算部36は、逆直交変換部23で復号された残差データと、逆量子化部35で復号された変換誤差データを加算して、加算結果を復号残差データとして演算部41へ出力する。
演算部41は、演算部36から供給された復号残差データに、予測選択部47を介してイントラ予測部45若しくは動き予測・補償部46から供給される予測画像データを加算して、局部的に復号された画像データ(復号画像データ)を得る。演算部41は、加算結果である復号画像データを、ループ内フィルタ42へ出力する。また、復号画像データは参照画像データとしてフレームメモリ43へ出力する。
ループ内フィルタ42は、例えばデブロッキングフィルタや適応オフセットフィルタおよび適応ループフィルタの少なくともいずれかを用いて構成されている。ループ内フィルタ42は、復号画像データのフィルタ処理を行い、フィルタ処理後の復号画像データを参照画像データとしてフレームメモリ43へ出力する。また、ループ内フィルタ42は、フィルタ処理に関するパラメータをエントロピー符号化部28へ出力する。
フレームメモリ43に蓄積されている参照画像データは、所定のタイミングで選択部44を介してイントラ予測部45または動き予測・補償部46に出力される。
イントラ予測部45は、画面内の画素値を用いて予測画像データを生成するイントラ予測(画面内予測)を行う。イントラ予測部45は、演算部41で生成されてフレームメモリ43に記憶されている復号画像データを参照画像データとして用いて全てのイントラ予測モード毎に予測画像データを生成する。また、イントラ予測部45は、画面並べ替えバッファ11から供給された原画像データと予測画像データを用いて各イントラ予測モードのコストの算出等を行い、算出したコストが最小となる最適なモードを選択する。イントラ予測部45は、選択したイントラ予測モードの予測画像データと、選択したイントラ予測モードを示すイントラ予測モード情報等のパラメータ、コスト等を予測選択部47へ出力する。
動き予測・補償部46は、インター符号化が行われる画像について、画面並べ替えバッファ11から供給された原画像データと、フィルタ処理が行われてフレームメモリ43に記憶されている復号画像データを参照画像データとして用いて動き予測を行う。また、動き予測・補償部46は、動き予測により検出された動きベクトルに応じて動き補償処理を行い、予測画像データを生成する。
動き予測・補償部46は、候補となる全てのインター予測モードのインター予測処理を行い、全てのイントラ予測モード毎に予測画像データを生成してコストの算出等を行い、算出したコストが最小となる最適なモードを選択する。動き予測・補償部46は、選択したインター予測モードの予測画像データと、選択したインター予測モードを示すインター予測モード情報や算出した動きベクトルを示す動きベクトル情報などのパラメータ、コスト等を予測選択部47へ出力する。
予測選択部47は、イントラ予測モードとインター予測モードのコストに基づき最適な予測処理を選択する。予測選択部47は、イントラ予測処理を選択した場合、イントラ予測部45から供給された予測画像データを演算部12や演算部41へ出力して、イントラ予測モード情報等のパラメータをエントロピー符号化部28へ出力する。予測選択部47は、インター予測処理を選択した場合、動き予測・補償部46から供給された予測画像データを演算部12や演算部41へ出力して、インター予測モード情報や動きベクトル情報等のパラメータをエントロピー符号化部28へ出力する。
<2−2−2.画像符号化装置の動作>
次に、画像符号化装置の第2の実施の形態の動作について説明する。図4は、画像符号化装置の動作を例示したフローチャートである。なお、第1の実施の形態と同一の処理については簡単に説明する。
ステップST21において画像符号化装置は画面並べ替え処理を行う。画像符号化装置10-2の画面並べ替えバッファ11は、表示順のフレーム画像を符号化順に並べ替えて、イントラ予測部45と動き予測・補償部46へ出力する。
ステップST22において画像符号化装置はイントラ予測処理を行う。画像符号化装置10-2のイントラ予測部45は、最適イントラ予測モードで生成された予測画像データとパラメータやコストを予測選択部47に出力する。
ステップST23において画像符号化装置は動き予測・補償処理を行う。画像符号化装置10-2の動き予測・補償部46は、最適インター予測モードにより生成された予測画像データとパラメータとコストを予測選択部47へ出力する。
ステップST24において画像符号化装置は予測画像選択処理を行う。画像符号化装置10-2の予測選択部47は、ステップST22およびステップST23で算出されたコストに基づいて、最適イントラ予測モードと最適インター予測モードのうちの一方を、最適予測モードに決定する。そして、予測選択部47は、決定した最適予測モードの予測画像データを選択して、演算部12,41へ出力する。
ステップST25において画像符号化装置は差分演算処理を行う。画像符号化装置10-2の演算部12は、ステップST21で並べ替えられた原画像データと、ステップST24で選択された予測画像データとの差分を算出して、差分結果である残差データを直交変換部14と演算部24へ出力する。
ステップST26において画像符号化装置は直交変換処理を行う。画像符号化装置10-2の直交変換部14は、演算部12から供給された残差データを直交変換して、得られた変換係数を量子化部15へ出力する。
ステップST27において画像符号化装置は量子化処理を行う。画像符号化装置10-2の量子化部15は、直交変換部14から供給された変換係数を量子化して変換量子化データを生成する。量子化部15は、生成した変換量子化データを逆量子化部22とエントロピー符号化部28へ出力する。
ステップST28において画像符号化装置は逆量子化処理を行う。画像符号化装置10-2の逆量子化部22は、量子化部15から出力された変換量子化データを量子化部15に対応する特性で逆量子化して、得られた変換係数を逆直交変換部23へ出力する。
ステップST29において画像符号化装置は逆直交変換処理を行う。画像符号化装置10-2の逆直交変換部23は、逆量子化部22で生成された逆量子化データすなわち変換係数を直交変換部14に対応する特性で逆直交変換して、得られた残差データを演算部24と演算部36へ出力する。
ステップST30において画像符号化装置は誤差算出処理を行う。画像符号化装置10-2の演算部24は、ステップST25で算出した残差データからステップST29で得られた残差データを減算して変換誤差データを生成して、量子化部25へ出力する。
ステップST31において画像符号化装置は誤差の量子化・逆量子化処理を行う。画像符号化装置10-2の量子化部25は、ステップST30で生成された変換誤差データである変換スキップ係数を量子化して変換スキップ量子化データを生成してエントロピー符号化部28と逆量子化部35へ出力する。また、逆量子化部35は変換スキップ量子化データの逆量子化を行う。逆量子化部35は量子化部25から供給された変換スキップ量子化データを量子化部25に対応する特性で逆量子化して、得られた変換誤差データを演算部36へ出力する。
ステップST32において画像符号化装置は残差復号処理を行う。画像符号化装置10-2の演算部36は、逆量子化部35で得られた変換誤差データとステップST29において逆直交変換部23で得られた残差データを加算して復号残差データを生成して演算部41へ出力する。
ステップST33において画像符号化装置は画像加算処理を行う。画像符号化装置10-2の演算部41は、ステップST32によって、局部的に復号された復号残差データとステップST24で選択された予測画像データを加算することで局部的に復号された復号画像データを生成して、ループ内フィルタ42とフレームメモリ43へ出力する。
ステップST34において画像符号化装置はループ内フィルタ処理を行う。画像符号化装置10-2のループ内フィルタ42は、演算部41で生成された復号画像データに対して、例えばデブロッキングフィルタ処理とSAO処理および適応ループフィルタ処理の少なくともいずれかのフィルタ処理を行い、フィルタ処理後の復号画像データをフレームメモリ43へ出力する。
ステップST35において画像符号化装置は記憶処理を行う。画像符号化装置10-2のフレームメモリ43は、ステップST34のループ内フィルタ処理後の復号画像データと、ループ内フィルタ処理前の復号画像データを参照画像データとして記憶する。
ステップST36において画像符号化装置はエントロピー符号化処理を行う。画像符号化装置10-2のエントロピー符号化部28は、量子化部15,25から供給された変換量子化データと変換スキップ量子化データ、およびループ内フィルタ42や予測選択部47から供給されたパラメータ等を符号化する。
ステップST37において画像符号化装置は蓄積処理を行う。画像符号化装置10-2の蓄積バッファ29は、符号化データを蓄積する。蓄積バッファ29に蓄積された符号化データは適宜読み出されて、伝送路等を介して復号側に伝送される。
ステップST38において画像符号化装置はレート制御を行う。画像符号化装置10-2のレート制御部30は、蓄積バッファ29に蓄積された符号化データがオーバーフローあるいはアンダーフローを生じないように量子化部15,25の量子化動作のレート制御を行う。
このような第2の実施の形態によれば、残差データの直交変換および直交変換によって得られた変換係数の量子化と逆量子化さらに逆量子化により得られた変換係数の逆直交変換を行うことで、復号された残差データに誤差を生じても、この誤差を示す変換誤差データが変換スキップ係数として量子化されて符号化ストリームに含められる。したがって、後述するように変換係数と変換スキップ係数を用いた復号処理を行うことで、誤差の影響を受けることなく復号画像データを生成できるようになる。
また、第2の実施の形態によれば、グラデーションなど中低域部を直交変換係数によって再現して、直交変換係数で再現できないようなインパルス等の高周波部分を変換スキップ係数すなわち変換誤差データで再現できる。このため、残差データの再現性が良好となり、復号画像の画質低下を抑制できる。
<2−3.第3の実施の形態>
次に、画像符号化装置の第3の実施の形態について説明する。画像符号化装置は、符号化対象画像と予測画像との差を示す残差データに対して、変換処理ブロック毎に変換スキップを行う。また、画像符号化装置は、変換スキップ後である変換スキップ係数の量子化と逆量子化を行うことにより復号された残差データに生じた誤差を算出する。さらに、画像符号化装置は、算出した誤差残差データに対する直交変換を行い変換係数を生成して、変換スキップ係数と変換係数とを符号化して、符号化ストリームを生成する。
<2−3−1.画像符号化装置の構成>
図5は、画像符号化装置の第3の実施の形態の構成を例示している。画像符号化装置10-3は、原画像データの符号化を行い符号化ストリームを生成する。
画像符号化装置10-3は、画面並べ替えバッファ11、演算部12,19、量子化部17,27、逆量子化部18,37、直交変換部26、エントロピー符号化部28、蓄積バッファ29、レート制御部30を有する。また、画像符号化装置10-3は、逆量子化部37、逆直交変換部38、演算部39,41、ループ内フィルタ42、フレームメモリ43、選択部44を有している。さらに、画像符号化装置10-3は、イントラ予測部45、動き予測・補償部46、予測選択部47を有する。
画面並べ替えバッファ11は、入力画像の画像データを記憶して、記憶した表示順序のフレーム画像を、GOP(Group of Picture)構造に応じて、符号化のための順序(符号化順)に並べ替える。画面並べ替えバッファ11は、符号化順とされた符号化対象の画像データ(原画像データ)を、演算部12へ出力する。また、画面並べ替えバッファ11は、イントラ予測部45および動き予測・補償部46へ出力する。
演算部12は、画面並べ替えバッファ11から供給された原画像データから、予測選択部47を介してイントラ予測部45若しくは動き予測・補償部46から供給される予測画像データを画素位置毎に減算して、予測残差を示す残差データを生成する。演算部12は生成した残差データを量子化部17と演算部19へ出力する。
量子化部17は、演算部12から供給される残差データの直交変換をスキップする変換スキップ処理を行うことにより得られた変換スキップ係数、すなわち残差データを示す変換スキップ係数を量子化して、逆量子化部18とエントロピー符号化部28へ出力する。
逆量子化部18は、量子化部17から供給された変換スキップ量子化データを、量子化部17で行われた量子化に対応する方法で逆量子化する。逆量子化部18は、得られた逆量子化データを演算部19,39へ出力する。
演算部19は、逆量子化部18から供給された復号残差データを、演算部12から供給された差分データから減算して、変換スキップ係数の量子化および逆量子化を行ったことによって生じる誤差を示すデータ(以下「変換スキップ誤差データ」という)を算出して、直交変換部26へ出力する。
直交変換部26は、演算部19から供給される変換スキップ残差データに対して、離散コサイン変換、カルーネン・レーベ変換等の直交変換を施し、その変換係数を量子化部27へ出力する。
量子化部27は、直交変換部26から供給される変換係数を量子化して、変換量子化データをエントロピー符号化部28と逆量子化部37へ出力する。
エントロピー符号化部28は、量子化部17から供給された変換スキップ量子化データと、量子化部27から供給された変換量子化データに対して、エントロピー符号化処理、例えばCABAC(Context-Adaptive Binary Arithmetic Coding)等の算術符号化処理を行う。また、エントロピー符号化部28は、予測選択部47で選択された予測モードのパラメータ、例えばイントラ予測モードを示す情報などのパラメータ、またはインター予測モードを示す情報や動きベクトル情報などのパラメータを取得する。さらに、エントロピー符号化部28は、ループ内フィルタ42からフィルタ処理に関するパラメータを取得する。エントロピー符号化部28は、変換量子化データと変換スキップ量子化データをエントロピー符号化するとともに、取得した各パラメータ(シンタックス要素)をエントロピー符号化してヘッダ情報の一部として(多重化して)蓄積バッファ29に蓄積させる。
蓄積バッファ29は、エントロピー符号化部28から供給された符号化データを一時的に保持し、所定のタイミングにおいて、符号化データを例えば後段の図示せぬ記録装置や伝送路などに符号化ストリームとして出力する。
レート制御部30は、蓄積バッファ29に蓄積された圧縮画像に基づいて、オーバーフローあるいはアンダーフローが発生しないように、量子化部17,27の量子化動作のレートを制御する。
逆量子化部37は、量子化部27から供給された変換量子化データを、量子化部27で行われた量子化に対応する方法で逆量子化する。逆量子化部37は、得られた逆量子化データすなわち変換係数を逆直交変換部38へ出力する。
逆直交変換部38は、逆量子化部37から供給された変換係数を直交変換部26で行われた直交変換処理に対応する方法で逆直交変換する。逆直交変換部38は、逆直交変換結果すなわち復号された変換スキップ誤差データを演算部39へ出力する。
演算部39は、逆量子化部18から供給された残差データと逆直交変換部38から供給された変換スキップ誤差データを加算して、加算結果を復号残差データとして演算部41へ出力する。
演算部41は、演算部39から供給された復号残差データに、予測選択部47を介してイントラ予測部45若しくは動き予測・補償部46から供給される予測画像データを加算して、局部的に復号された画像データ(復号画像データ)を得る。演算部41は、加算結果である復号画像データを、ループ内フィルタ42へ出力する。また、復号画像データは参照画像データとしてフレームメモリ43へ出力する。
ループ内フィルタ42は、例えばデブロッキングフィルタや適応オフセットフィルタおよび適応ループフィルタの少なくともいずれかを用いて構成されている。ループ内フィルタ42は、復号画像データのフィルタ処理を行い、フィルタ処理後の復号画像データを参照画像データとしてフレームメモリ43へ出力する。また、ループ内フィルタ42は、フィルタ処理に関するパラメータをエントロピー符号化部28へ出力する。
フレームメモリ43に蓄積されている参照画像データは、所定のタイミングで選択部44を介してイントラ予測部45または動き予測・補償部46に出力される。
イントラ予測部45は、画面内の画素値を用いて予測画像データを生成するイントラ予測(画面内予測)を行う。イントラ予測部45は、演算部41で生成されてフレームメモリ43に記憶されている復号画像データを参照画像データとして用いて全てのイントラ予測モード毎に予測画像データを生成する。また、イントラ予測部45は、画面並べ替えバッファ11から供給された原画像データと予測画像データを用いて各イントラ予測モードのコストの算出等を行い、算出したコストが最小となる最適なモードを選択する。イントラ予測部45は、選択したイントラ予測モードの予測画像データと、選択したイントラ予測モードを示すイントラ予測モード情報等のパラメータ、コスト等を予測選択部47へ出力する。
動き予測・補償部46は、インター符号化が行われる画像について、画面並べ替えバッファ11から供給された原画像データと、フィルタ処理が行われてフレームメモリ43に記憶されている復号画像データを参照画像データとして用いて動き予測を行う。また、動き予測・補償部46は、動き予測により検出された動きベクトルに応じて動き補償処理を行い、予測画像データを生成する。
動き予測・補償部46は、候補となる全てのインター予測モードのインター予測処理を行い、全てのイントラ予測モード毎に予測画像データを生成してコストの算出等を行い、算出したコストが最小となる最適なモードを選択する。動き予測・補償部46は、選択したインター予測モードの予測画像データと、選択したインター予測モードを示すインター予測モード情報や算出した動きベクトルを示す動きベクトル情報などのパラメータ、コスト等を予測選択部47へ出力する。
予測選択部47は、イントラ予測モードとインター予測モードのコストに基づき最適な予測処理を選択する。予測選択部47は、イントラ予測処理を選択した場合、イントラ予測部45から供給された予測画像データを演算部12や演算部41へ出力して、イントラ予測モード情報等のパラメータをエントロピー符号化部28へ出力する。予測選択部47は、インター予測処理を選択した場合、動き予測・補償部46から供給された予測画像データを演算部12や演算部41へ出力して、インター予測モード情報や動きベクトル情報等のパラメータをエントロピー符号化部28へ出力する。
<2−3−2.画像符号化装置の動作>
次に、画像符号化装置の第3の実施の形態の動作について説明する。図6は、画像符号化装置の動作を例示したフローチャートである。
ステップST41において画像符号化装置は画面並べ替え処理を行う。画像符号化装置10-3の画面並べ替えバッファ11は、表示順のフレーム画像を符号化順に並べ替えて、イントラ予測部45と動き予測・補償部46へ出力する。
ステップST42において画像符号化装置はイントラ予測処理を行う。画像符号化装置10-3のイントラ予測部45は、最適イントラ予測モードで生成された予測画像データとパラメータやコストを予測選択部47に出力する。
ステップST43において画像符号化装置は動き予測・補償処理を行う。画像符号化装置10-3の動き予測・補償部46は、最適インター予測モードにより生成された予測画像データとパラメータとコストを予測選択部47へ出力する。
ステップST44において画像符号化装置は予測画像選択処理を行う。画像符号化装置10-3の予測選択部47は、ステップST42およびステップST43で算出されたコストに基づいて、最適イントラ予測モードと最適インター予測モードのうちの一方を、最適予測モードに決定する。そして、予測選択部47は、決定した最適予測モードの予測画像データを選択して、演算部12,41へ出力する。
ステップST45において画像符号化装置は差分演算処理を行う。画像符号化装置10-3の演算部12は、ステップST41で並べ替えられた原画像データと、ステップST44で選択された予測画像データとの差分を算出して、差分結果である残差データを量子化部17と演算部19へ出力する。
ステップST46において画像符号化装置は量子化処理を行う。画像符号化装置10-3の量子化部17は、演算部12で生成された残差データの変換スキップ処理を行うことにより得られた変換スキップ係数を量子化して、変換スキップ量子化データを逆量子化部18とエントロピー符号化部28へ出力する。この量子化に際しては、後述するステップST58の処理で説明されるようにレート制御が行われる。
ステップST47において画像符号化装置は逆量子化処理を行う。画像符号化装置10-3の逆量子化部18は、量子化部17から出力された変換スキップ量子化データを量子化部17に対応する特性で逆量子化して得られた残差データを演算部19と演算部39へ出力する。
ステップST48において画像符号化装置は誤差算出処理を行う。画像符号化装置10-3の演算部19は、ステップST45で算出した残差データからステップST47で得られた残差データを減算して、変換スキップ係数の量子化と逆量子化を行うことによって生じた誤差を示す変換スキップ誤差データを生成して直交変換部26へ出力する。
ステップST49において画像符号化装置は直交変換処理を行う。画像符号化装置10-3の直交変換部14は、演算部12から供給された変換スキップ誤差データを直交変換して、得られた変換係数を量子化部27へ出力する。
ステップST50において画像符号化装置は量子化処理を行う。画像符号化装置10-3の量子化部27は、直交変換部26から供給された変換係数を量子化して、得られた変換量子化データをエントロピー符号化部28と逆量子化部37へ出力する。この量子化に際しては、後述するステップST58の処理で説明されるようにレート制御が行われる。
ステップST51において画像符号化装置は誤差の逆量子化・逆直交変換処理を行う。画像符号化装置10-3の逆量子化部37は、ステップST50で得られた変換量子化データを量子化部27に対応する特性で逆量子化して逆直交変換部38へ出力する。また、画像符号化装置10-3の逆直交変換部38は、逆量子化部37で得られた変換係数を直交変換部26に対応する特性で逆直交変換して、得られた変換スキップ誤差データを演算部39へ出力する。
ステップST52において画像符号化装置は残差復号処理を行う。画像符号化装置10-3の演算部39は、逆量子化部18で得られた変換スキップ誤差データとステップST51において逆直交変換部38で得られた復号残差データを加算して復号残差データを生成して演算部41へ出力する。
ステップST53において画像符号化装置は画像加算処理を行う。画像符号化装置10-3の演算部41は、ステップST52によって、局部的に復号された復号残差データとステップST44で選択された予測画像データを加算することで局部的に復号された復号画像データを生成して、ループ内フィルタ42へ出力する。
ステップST54において画像符号化装置はループ内フィルタ処理を行う。画像符号化装置10-3のループ内フィルタ42は、演算部41で生成された復号画像データに対して、例えばデブロッキングフィルタ処理とSAO処理および適応ループフィルタ処理の少なくともいずれかのフィルタ処理を行い、フィルタ処理後の復号画像データをフレームメモリ43へ出力する。
ステップST55において画像符号化装置は記憶処理を行う。画像符号化装置10-3のフレームメモリ43は、ステップST54のループ内フィルタ処理後の復号画像データと、ループ内フィルタ処理前の復号画像データを参照画像データとして記憶する。
ステップST56において画像符号化装置はエントロピー符号化処理を行う。画像符号化装置10-3のエントロピー符号化部28は、量子化部17から供給された変換スキップ量子化データと、量子化部27から供給された変換量子化データおよび予測選択部47等から供給されたパラメータを符号化して蓄積バッファ29へ出力する。
ステップST57において画像符号化装置は蓄積処理を行う。画像符号化装置10-3の蓄積バッファ29は、エントロピー符号化部28から供給された符号化データを蓄積する。蓄積バッファ29に蓄積された符号化データは、適宜読み出されて伝送路等を介して復号側に伝送される。
ステップST58において画像符号化装置はレート制御を行う。画像符号化装置10-3のレート制御部30は、蓄積バッファ29に蓄積された符号化データがオーバーフローあるいはアンダーフローを生じないように量子化部17,27の量子化動作のレート制御を行う。
このような第3の実施の形態によれば、残差データの変換スキップ処理と量子化および逆量子化を行うことで、復号された残差データに誤差を生じても、この誤差を示す変換スキップ誤差データを直交変換して得られた変換係数が量子化されて符号化ストリームに含められる。したがって、後述するように変換係数と変換スキップ係数を用いた復号処理を行うことで、誤差の影響を受けることなく復号画像データを生成できるようになる。
また、第3の実施の形態では、インパルス等の高周波部分を変換スキップ係数によって再現して、変換スキップ係数で再現できないようなグラデーション等の中低域を直交変換係数で再現できるので残差データの再現性が良好となり、復号画像の画質低下を抑制できる。
<2−4.第4の実施の形態>
次に、画像処理装置の第4の実施の形態について、画像符号化装置は、領域分離データを用いて第1の実施の形態と同様な処理を行う。画像符号化装置は、周波数領域の分離または空間領域の分離を行い、一方の分離データについて直交変換を用いて符号化処理を行い、他方の分離データについて変換スキップを用いて符号化処理を行う。なお、第4の実施の形態において、第1の実施の形態と対応する構成については同一符号を付している。
<2−4−1.画像符号化装置の構成>
図7は、画像符号化装置の第4の実施の形態の構成を例示している。画像符号化装置10-4は、原画像データの符号化を行い符号化ストリームを生成する。
画像符号化装置10-4は、画面並べ替えバッファ11、演算部12、フィルタ部13、直交変換部14、量子化部15,16、エントロピー符号化部28、蓄積バッファ29、レート制御部30を有する。また、画像符号化装置10-4は、逆量子化部31,33、逆直交変換部32、演算部34,41、ループ内フィルタ42、フレームメモリ43、選択部44を有している。さらに、画像符号化装置10-4は、イントラ予測部45、動き予測・補償部46、予測選択部47を有する。
画面並べ替えバッファ11は、入力画像の画像データを記憶して、記憶した表示順序のフレーム画像を、GOP(Group of Picture)構造に応じて、符号化のための順序(符号化順)に並べ替える。画面並べ替えバッファ11は、符号化順とされた符号化対象の画像データ(原画像データ)を、演算部12へ出力する。また、画面並べ替えバッファ11は、イントラ予測部45および動き予測・補償部46へ出力する。
演算部12は、画面並べ替えバッファ11から供給された原画像データから、予測選択部47を介してイントラ予測部45若しくは動き予測・補償部46から供給される予測画像データを画素位置毎に減算して、予測残差を示す残差データを生成する。演算部12は生成した残差データをフィルタ部13へ出力する。
フィルタ部13は残差データの成分分離処理を行い分離データを生成する。フィルタ部13は、例えば残差データを用いて周波数領域または空間領域での分離を行い分離データを生成する。
図8は周波数領域で成分分離処理を行う場合のフィルタ部の構成を例示している。フィルタ部13は、図8の(a)に示すように、直交変換部131と周波数分離部132と逆直交変換部133,134を有している。
直交変換部131は、残差データに対して、離散コサイン変換、カルーネン・レーベ変換等の直交変換を施し、残差データを空間領域から周波数領域に変換する。直交変換部131は、直交変換によって得られた変換係数を周波数分離部132へ出力する。
周波数分離部132は、直交変換部131から供給された変換係数を、低い周波数である第1帯域と第1帯域よりも高い周波数である第2帯域に分離する。周波数分離部132は第1帯域の変換係数を逆直交変換部133へ出力して、第2帯域の変換係数を逆直交変換部134へ出力する。
逆直交変換部133は、周波数分離部132から供給された第1帯域の変換係数に対して逆直交変換を行い、変換係数を周波数領域から空間領域に変換する。逆直交変換部133は、逆直交変換によって得られた画像データを分離データとして直交変換部14へ出力する。
逆直交変換部134は、周波数分離部132から供給された第2帯域の変換係数に対して逆直交変換を行い、変換係数を周波数領域から空間領域に変換する。逆直交変換部134は、逆直交変換によって得られた画像データを分離データとして量子化部16へ出力する。
このように、フィルタ部13は、残差データの領域分離を行い、例えば低い周波数である第1帯域の周波数成分の画像データを分離データとして直交変換部14へ出力して、第1帯域よりも高い周波数である第2帯域の周波数成分の画像データを分離データとして量子化部16へ出力する。
ところで、直交変換部131で行われる直交変換が直交変換部14で行われる直交変換と等しい場合、直交変換部14として直交変換部131を用いるようにしてもよい。図8の(b)は、直交変換部131を直交変換部14として用いる場合の構成を例示している。
フィルタ部13は、直交変換部131と周波数分離部132と逆直交変換部134を有している。
直交変換部131は、残差データに対して、離散コサイン変換、カルーネン・レーベ変換等の直交変換を施し、残差データを空間領域から周波数領域に変換する。直交変換部131は、直交変換によって得られた変換係数を周波数分離部132へ出力する。
周波数分離部132は、直交変換部131から供給された変換係数を、低い周波数である第1帯域と第1帯域よりも高い周波数である第2帯域に分離する。周波数分離部132は第1帯域の変換係数を量子化部15へ出力して、第2帯域の変換係数を逆直交変換部134へ出力する。
逆直交変換部134は、周波数分離部132から供給された第2帯域の変換係数に対して逆直交変換を行い、変換係数を周波数領域から空間領域に変換する。逆直交変換部134は、逆直交変換によって得られた画像データを分離データとして量子化部16へ出力する。
このように、フィルタ部13は、残差データの領域分離を行い、低い周波数である第1帯域の周波数成分を示す変換係数を量子化部15へ出力して、第1帯域よりも高い周波数である第2帯域の周波数成分の画像データを分離データとして量子化部16へ出力する。
次に、残差データを用いて空間領域で成分分離処理を行い分離データを生成する場合について説明する。フィルタ部13は空間フィルタを用いて例えば残差データが示す画像を平滑化画像とテクスチャ成分画像に分離する。図9は空間領域で成分分離処理を行う場合のフィルタ部の構成を例示している。フィルタ部13は、図9の(a)に示すように、空間フィルタ135,136を有している。
空間フィルタ135は、残差データを用いて平滑化処理を行い平滑化画像を生成する。空間フィルタ135は例えば移動平均フィルタ等を用いて残差データのフィルタ処理を行い、平滑化画像の画像データを生成して直交変換部14へ出力する。なお、図10は空間フィルタを例示しており、図10の(a)は、3×3の移動平均フィルタを例示している。
空間フィルタ136は、残差データを用いてテクスチャ成分抽出処理を行いテクスチャ成分画像を生成する。空間フィルタ136は、例えばラプラシアンフィルタや微分フィルタ等を用いて、残差データのフィルタ処理を行い、エッジ等を示すテクスチャ成分画像の画像データを量子化部16へ出力する。なお、図10の(b)は、3×3のラプラシアンフィルタを例示している。
また、フィルタ部13は、平滑化画像の画像データを用いてテクスチャ成分画像の画像データを生成してもよい。図9の(b)は、平滑化画像の画像データを用いてテクスチャ成分画像の画像データを生成する場合のフィルタ部の構成を例示している。フィルタ部13は、空間フィルタ135と減算部137を有している。
空間フィルタ135は、残差データを用いて平滑化処理を行い平滑化画像を生成する。空間フィルタ135は例えば移動平均フィルタ等を用いて残差データのフィルタ処理を行い、平滑化画像の画像データを生成して、減算部137と直交変換部14へ出力する。
減算部137は、空間フィルタ135で生成された平滑化画像の画像データを残差データから減算して、減算結果をテクスチャ成分画像の画像データとして量子化部16へ出力する。
また、図9に示す空間フィルタでは、移動平均フィルタやラプラシアンフィルタ等の線形フィルタを用いる場合について説明したが、フィルタ部13は、非線形フィルタを用いてもよい。例えば、インパルス状画像等は直交変換での表現が困難であることから、インパルス状の画像データの除去能力が高いメディアンフィルタを空間フィルタ135として用いる。したがって、インパルス状画像が除かれた画像データを直交変換部14へ出力できる。また、空間フィルタ135で生成されたフィルタ処理後の画像データを残差データから減算して、インパルス状画像を示す画像データを量子化部16へ出力する。
また、空間領域の分離を行う場合のフィルタ部の構成は、図9に示す場合に限られない。例えば、ラプラシアンフィルタや微分フィルタ等を用いて生成したテクスチャ成分画像の画像データを量子化部16へ出力する。また、テクスチャ成分画像の画像データを残差データから減算して得られた画像データを平滑化画像の画像データとして直交変換部14へ出力してもよい。
このように、フィルタ部13は、残差データが示す画像を特性が異なる2つの画像に分離して、一方の画像の画像データを分離データとして直交変換部14へ出力して、他方の画像の画像データを分離データとして量子化部16へ出力する。
直交変換部14は、フィルタ部13から供給される分離データに対して、離散コサイン変換、カルーネン・レーベ変換等の直交変換を施し、その変換係数を量子化部15へ出力する。
量子化部15は、直交変換部14(またはフィルタ部13)から供給される変換係数を量子化して、エントロピー符号化部28と逆量子化部31へ出力する。なお、変換係数の量子化データを変換量子化データとする。
量子化部16は、フィルタ部13から供給される分離データを変換スキップ係数として量子化を行い、得られた変換スキップ量子化データをエントロピー符号化部28と逆量子化部33へ出力する。
エントロピー符号化部28は、量子化部15から供給された変換量子化データと、量子化部16から供給された変換スキップ量子化データに対して、算術符号化等のエントロピー符号化処理を行う。また、エントロピー符号化部28は、予測選択部47で選択された予測モードのパラメータ、例えばイントラ予測モードを示す情報などのパラメータ、またはインター予測モードを示す情報や動きベクトル情報などのパラメータを取得する。さらに、エントロピー符号化部28は、ループ内フィルタ42からフィルタ処理に関するパラメータを取得する。エントロピー符号化部28は、変換量子化データと変換スキップ量子化データを符号化するとともに、取得した各パラメータ(シンタックス要素)を符号化してヘッダ情報の一部として(多重化して)蓄積バッファ29に蓄積させる。
蓄積バッファ29は、エントロピー符号化部28から供給された符号化データを一時的に保持し、所定のタイミングにおいて、符号化データを例えば後段の図示せぬ記録装置や伝送路などに符号化ストリームとして出力する。
レート制御部30は、蓄積バッファ29に蓄積された圧縮画像に基づいて、オーバーフローあるいはアンダーフローが発生しないように、量子化部15,16の量子化動作のレートを制御する。
逆量子化部31は、量子化部15から供給された変換量子化データを、量子化部15で行われた量子化に対応する方法で逆量子化する。逆量子化部31は、得られた逆量子化データすなわち変換係数を逆直交変換部32へ出力する。
逆直交変換部32は、逆量子化部31から供給された変換係数を直交変換部14で行われた直交変換処理に対応する方法で逆直交変換する。逆直交変換部32は、逆直交変換結果すなわち復号された残差データを、演算部34へ出力する。
逆量子化部33は、量子化部16から供給された変換スキップ量子化データを、量子化部16で行われた量子化に対応する方法で逆量子化する。逆量子化部33は、得られた逆量子化データすなわち残差データを演算部34へ出力する。
演算部34は、逆直交変換部32から供給された残差データと、逆量子化部33から供給された残差データを加算して、加算結果を復号残差データとして演算部41へ出力する。
演算部41は、演算部34から供給された復号残差データに、予測選択部47を介してイントラ予測部45若しくは動き予測・補償部46から供給される予測画像データを加算して、局部的に復号された復号画像データを得る。演算部41は、復号画像データをループ内フィルタ42へ出力する。また、演算部41は、復号画像データを参照画像データとしてフレームメモリ43へ出力する。
ループ内フィルタ42は、例えばデブロッキングフィルタや適応オフセットフィルタおよび適応ループフィルタの少なくともいずれかを用いて構成されている。ループ内フィルタ42は、復号画像データのフィルタ処理を行い、フィルタ処理後の復号画像データを参照画像データとしてフレームメモリ43へ出力する。また、ループ内フィルタ42は、フィルタ処理に関するパラメータをエントロピー符号化部28へ出力する。
フレームメモリ43に蓄積されている参照画像データは、所定のタイミングで選択部44を介してイントラ予測部45または動き予測・補償部46に出力される。
イントラ予測部45は、画面内の画素値を用いて予測画像を生成するイントラ予測(画面内予測)を行う。イントラ予測部45は、演算部41で生成されてフレームメモリ43に記憶されている復号画像データを参照画像データとして用いて全てのイントラ予測モード毎に予測画像データを生成する。また、イントラ予測部45は、画面並べ替えバッファ11から供給された原画像データと予測画像データを用いて各イントラ予測モードのコストの算出等を行い、算出したコストが最小となる最適なモードを選択する。イントラ予測部45は、選択したイントラ予測モードの予測画像データと、選択したイントラ予測モードを示すイントラ予測モード情報等のパラメータ、コスト等を予測選択部47へ出力する。
動き予測・補償部46は、インター符号化が行われる画像について、画面並べ替えバッファ11から供給された原画像データと、フィルタ処理が行われてフレームメモリ43に記憶されている復号画像データを参照画像データとして用いて動き予測を行う。また、動き予測・補償部46は、動き予測により検出された動きベクトルに応じて動き補償処理を行い、予測画像データを生成する。
動き予測・補償部46は、候補となる全てのインター予測モードのインター予測処理を行い、全てのイントラ予測モード毎に予測画像データを生成してコストの算出等を行い、算出したコストが最小となる最適なモードを選択する。動き予測・補償部46は、選択したインター予測モードの予測画像データと、選択したインター予測モードを示すインター予測モード情報や算出した動きベクトルを示す動きベクトル情報などのパラメータ、コスト等を予測選択部47へ出力する。
予測選択部47は、イントラ予測モードとインター予測モードのコストに基づき最適な予測処理を選択する。予測選択部47は、イントラ予測処理を選択した場合、イントラ予測部45から供給された予測画像データを演算部12や演算部41へ出力して、イントラ予測モード情報等のパラメータをエントロピー符号化部28へ出力する。予測選択部47は、インター予測処理を選択した場合、動き予測・補償部46から供給された予測画像データを演算部12や演算部41へ出力して、インター予測モード情報や動きベクトル情報等のパラメータをエントロピー符号化部28へ出力する。
<2−4−2.画像符号化装置の動作>
次に、画像符号化装置の第4の実施の形態の動作について説明する。図11は、画像符号化装置の動作を例示したフローチャートである。なお、ステップST61乃至ステップST65およびステップST66乃至ステップST76は、図2に示す第1の実施の形態のステップST1乃至ステップST15に相当する。
ステップST61において画像符号化装置は画面並べ替え処理を行う。画像符号化装置10-4の画面並べ替えバッファ11は、表示順のフレーム画像を符号化順に並べ替えて、イントラ予測部45と動き予測・補償部46へ出力する。
ステップST62において画像符号化装置はイントラ予測処理を行う。画像符号化装置10-4のイントラ予測部45は、最適イントラ予測モードで生成された予測画像データとパラメータやコストを予測選択部47に出力する。
ステップST63において画像符号化装置は動き予測・補償処理を行う。画像符号化装置10-4の動き予測・補償部46は、最適インター予測モードにより生成された予測画像データとパラメータとコストを予測選択部47へ出力する。
ステップST64において画像符号化装置は予測画像選択処理を行う。画像符号化装置10-4の予測選択部47は、ステップST62およびステップST63で算出されたコストに基づいて、最適イントラ予測モードと最適インター予測モードのうちの一方を、最適予測モードに決定する。そして、予測選択部47は、決定した最適予測モードの予測画像データを選択して、演算部12,41へ出力する。
ステップST65において画像符号化装置は差分演算処理を行う。画像符号化装置10-4の演算部12は、ステップST61で並べ替えられた原画像データと、ステップST64で選択された予測画像データとの差分を算出して、差分結果である残差データをフィルタ部13へ出力する。
ステップST66において画像符号化装置は成分分離処理を行う。画像符号化装置10-4のフィルタ部13は、演算部12から供給された残差データの成分分離処理を行い第1の分離データを直交変換部14に出力して、第2の分離データを量子化部16へ出力する。
ステップST67において画像符号化装置は直交変換処理を行う。画像符号化装置10-4の直交変換部14は、ステップST66の成分分離処理によって得られた第1の分離データを直交変換する。具体的には、離散コサイン変換、カルーネン・レーベ変換等の直交変換を行い、得られた変換係数を量子化部15へ出力する。
ステップST68において画像符号化装置は量子化処理を行う。画像符号化装置10-4の量子化部15は、直交変換部14から供給された変換係数を量子化して、変換量子化データを生成する。量子化部15は、生成した変換量子化データをエントロピー符号化部28と逆量子化部31へ出力する。また、量子化部16は、フィルタ部13から供給された第2の分離データを、変換スキップ処理を行うことにより得られた変換スキップ係数として量子化して、変換スキップ量子化データを生成する。量子化部16は、生成した変換スキップ量子化データをエントロピー符号化部28と逆量子化部33へ出力する。この量子化に際しては、後述するステップST76の処理で説明されるようにレート制御が行われる。
ステップST68において画像符号化装置は量子化処理を行う。画像符号化装置10-4の量子化部15は、直交変換部14から供給された変換係数を量子化して、変換量子化データを生成する。量子化部15は、生成した変換量子化データをエントロピー符号化部28と逆量子化部31へ出力する。また、量子化部16は、フィルタ部13から供給された第2の分離データを、変換スキップ処理を行うことにより得られた変換スキップ係数として量子化して、変換スキップ量子化データを生成する。量子化部16は、生成した変換スキップ量子化データをエントロピー符号化部28と逆量子化部33へ出力する。この量子化に際しては、後述するステップST76の処理で説明されるようにレート制御が行われる。
以上のようにして生成された量子化データは、次のようにして局部的に復号される。すなわち、ステップST69において画像符号化装置は逆量子化処理を行う。画像符号化装置10-4の逆量子化部31は、量子化部15から出力された変換量子化データを量子化部15に対応する特性で逆量子化する。また、画像符号化装置10-4の逆量子化部33は、量子化部16から出力された変換スキップ量子化データを量子化部16に対応する特性で逆量子化して残差データを得る。
ステップST70において画像符号化装置は逆直交変換処理を行う。画像符号化装置10-4の逆直交変換部32は、逆量子化部31で得られた逆量子化データすなわち変換係数を直交変換部14に対応する特性で逆直交変換して残差データを生成する。
ステップST71において画像符号化装置は画像加算処理を行う。画像符号化装置10-4の演算部34は、ステップST69において逆量子化部33で逆量子化を行うことにより得られた残差データと、ステップST70において逆直交変換部32で逆直交変換を行うことにより得られた残差データを加算する。また、演算部41は、局部的に復号された残差データとステップST65で選択された予測画像データを加算して、局部的に復号された復号画像データを生成する。
ステップST72において画像符号化装置はループ内フィルタ処理を行う。画像符号化装置10-4のループ内フィルタ42は、演算部41で生成された復号画像データに対して、例えばデブロッキングフィルタ処理とSAO処理および適応ループフィルタ処理の少なくともいずれかのフィルタ処理を行い、フィルタ処理後の復号画像データをフレームメモリ43へ出力する。
ステップST73において画像符号化装置は記憶処理を行う。画像符号化装置10-4のフレームメモリ43は、ステップST72のループ内フィルタ処理後の復号画像データと、ループ内フィルタ処理前の復号画像データを参照画像データとして記憶する。
ステップST74において画像符号化装置はエントロピー符号化処理を行う。画像符号化装置10-4のエントロピー符号化部28は、量子化部15,25から供給された変換量子化データと変換スキップ量子化データ、およびループ内フィルタ42や予測選択部47から供給されたパラメータ等を符号化する。
ステップST75において画像符号化装置は蓄積処理を行う。画像符号化装置10-4の蓄積バッファ29は、符号化データを蓄積する。蓄積バッファ29に蓄積された符号化データは適宜読み出されて、伝送路等を介して復号側に伝送される。
ステップST76において画像符号化装置はレート制御を行う。画像符号化装置10-4のレート制御部30は、蓄積バッファ29に蓄積された符号化データがオーバーフローあるいはアンダーフローを生じないように量子化部15,25の量子化動作のレート制御を行う。
このような第4の実施の形態によれば、残差データが直交変換用の周波数帯域と変換スキップ用の周波数帯域に分割されて、直交変換係数と変換スキップ係数の生成が並行して行われる。このため、直交変換係数と変換スキップ係数の量子化データを符号化ストリームに含める場合でも符号化処理を高速に行うことができる。また、フィルタ部における成分分離処理を最適化すれば、復号画像におけるリンギングやバンディングの発生を抑制できる。
<3.画像復号装置について>
<3−1.第1の実施の形態>
画像復号装置の第1の実施の形態では、上述の画像符号化装置で生成された符号化ストリームの復号を行い、変換係数の量子化データと変換スキップ係数の量子化データを同時に取得する。また、画像処理装置は、取得した変換係数の逆量子化と逆直交変換および取得した変換スキップ係数の逆量子化を並列に行い、変換係数と変換スキップ係数に基づく画像データをそれぞれ生成して、生成された画像データを用いた演算処理を行い復号画像データを生成する。
<3−1−1.画像復号装置の構成>
図12は、画像復号装置の第1の実施の形態の構成を例示している。画像符号化装置で生成された符号化ストリームは、所定の伝送路または記録媒体等を介して画像復号装置60-1に供給されて復号される。
画像復号装置60-1は、蓄積バッファ61、エントロピー復号部62、逆量子化部63,67、逆直交変換部65、演算部68、ループ内フィルタ69、画面並べ替えバッファ70を有する。また、画像復号装置60-1は、フレームメモリ71、選択部72、イントラ予測部73、動き補償部74を有する。
蓄積バッファ61は、伝送されてきた符号化ストリーム例えば図1に示す画像符号化装置で生成された符号化ストリームを受け取り蓄積する。この符号化ストリームは、所定のタイミングで読み出されてエントロピー復号部62へ出力される。
エントロピー復号部62は、符号化ストリームをエントロピー復号して、得られたイントラ予測モードを示す情報などのパラメータをイントラ予測部73へ出力し、インター予測モードを示す情報や動きベクトル情報などのパラメータを動き補償部74へ出力する。また、エントロピー復号部62は、フィルタに関するパラメータをループ内フィルタ69へ出力する。さらに、エントロピー復号部62は、変換量子化データと変換量子化データに関するパラメータを逆量子化部63へ出力して、差分量子化データを差分量子化データに関するパラメータを逆量子化部67へ出力する。
逆量子化部63は、エントロピー復号部62によって復号された変換量子化データを、復号されたパラメータを用いて図1の量子化部15の量子化方式に対応する方式で逆量子化する。逆量子化部63は、逆量子化によって得られた変換係数を逆直交変換部65へ出力する。
逆量子化部67は、エントロピー復号部62で復号された変換スキップ量子化データを、復号されたパラメータを用いて図1に示す量子化部16の量子化方式に対応する方式で逆量子化する。逆量子化部67は、逆量子化によって得られた変換スキップ係数である復号残差データを演算部68へ出力する。
逆直交変換部65は、図1の直交変換部14の直交変換方式に対応する方式で逆直交変換を行い、画像符号化装置における直交変換前の残差データに対応する復号残差データを得て演算部68へ出力する。
演算部68には、イントラ予測部73若しくは動き補償部74から予測画像データが供給される。演算部68は、逆直交変換部65と逆量子化部67のそれぞれから供給された復号残差データと予測画像データとを加算して、画像符号化装置の演算部12によって予測画像データが減算される前の原画像データに対応する復号画像データを得る。演算部68は、その復号画像データをループ内フィルタ69とフレームメモリ71へ出力する。
ループ内フィルタ69は、エントロピー復号部62から供給されるパラメータを用いて、デブロッキングフィルタ処理やSAO処理および適応ループフィルタ処理の少なくともいずれかを画像符号化装置のループ内フィルタ42と同様に行い、フィルタ処理結果を画面並べ替えバッファ70とフレームメモリ71へ出力する。
画面並べ替えバッファ70は、画像の並べ替えを行う。すなわち、画像符号化装置の画面並べ替えバッファ11により符号化の順番のために並べ替えられたフレームの順番を、元の表示の順番に並べ替えられて、出力画像データを生成する。
フレームメモリ71、選択部72、イントラ予測部73、動き補償部74は、画像符号化装置のフレームメモリ43、選択部44、イントラ予測部45、動き予測・補償部46にそれぞれ対応する。
フレームメモリ71は、演算部68から供給された復号画像データとループ内フィルタ69から供給された復号画像データを参照画像データとして記憶する。
選択部72は、イントラ予測に用いる参照画像データをフレームメモリ71から読み出し、イントラ予測部73へ出力する。また、選択部72は、インター予測に用いる参照画像データをフレームメモリ71から読み出して、動き補償部74へ出力する。
イントラ予測部73には、ヘッダ情報を復号して得られたイントラ予測モードを示す情報等がエントロピー復号部62から適宜供給される。イントラ予測部73は、この情報に基づいて、フレームメモリ71から取得した参照画像データから予測画像データを生成して演算部68へ出力する。
動き補償部74には、ヘッダ情報を復号して得られた情報(予測モード情報、動きベクトル情報、参照フレーム情報、フラグ、および各種パラメータ等)がエントロピー復号部62から供給される。動き補償部74は、エントロピー復号部62から供給されるそれらの情報に基づいて、フレームメモリ71から取得した参照画像データから予測画像データを生成して演算部68へ出力する。
<3−1−2.画像復号装置の動作>
次に、画像復号装置の第1の実施の形態の動作について説明する。図13は、画像復号装置の動作を例示したフローチャートである。
復号処理が開始されると、ステップST81において画像復号装置は蓄積処理を行う。画像復号装置60-1の蓄積バッファ61は、符号化ストリームを受け取り蓄積する。
ステップST82において画像復号装置はエントロピー復号処理を行う。画像復号装置60-1のエントロピー復号部62は、蓄積バッファ61から符号化ストリームを取得して復号処理を行い、画像符号化装置のエントロピー符号化処理で符号化されたIピクチャ、Pピクチャ、並びにBピクチャを復号する。また、エントロピー復号部62は、ピクチャの復号に先立ち、動きベクトル情報、参照フレーム情報、予測モード情報(イントラ予測モード、またはインター予測モード)やループ内フィルタ処理などのパラメータの情報も復号する。予測モード情報がイントラ予測モード情報である場合、予測モード情報はイントラ予測部73へ出力される。予測モード情報がインター予測モード情報である場合、予測モード情報と対応する動きベクトル情報などは、動き補償部74へ出力される。また、ループ内フィルタ処理に関するパラメータはループ内フィルタ69へ出力される。量子化パラメータに関する情報は、逆量子化部63,67へ出力される。
ステップST83において画像復号装置は予測画像生成処理を行う。画像復号装置60-1のイントラ予測部73または動き補償部74は、エントロピー復号部62から供給される予測モード情報に対応して、それぞれ予測画像生成処理を行う。
すなわち、エントロピー復号部62からイントラ予測モード情報が供給された場合、イントラ予測部73はフレームメモリ71に記憶されている参照画像データを用いてイントラ予測モードのイントラ予測画像データを生成する。エントロピー復号部62からインター予測モード情報が供給された場合、動き補償部74は、フレームメモリ71に記憶されている参照画像データを用いてインター予測モードの動き補償処理を行い、インター予測画像データを生成する。この処理により、イントラ予測部73により生成されたイントラ予測画像データ、または動き補償部74により生成されたインター予測画像データが演算部68へ出力される。
ステップST84において画像復号装置は逆量子化処理を行う。画像復号装置60-1の逆量子化部63は、エントロピー復号部62で得られた変換量子化データを、復号されたパラメータを用いて画像符号化装置の量子化処理に対応する方式で逆量子化して、得られた変換係数を逆直交変換部65へ出力する。また、逆量子化部67は、エントロピー復号部62で得られた変換スキップ量子化データを、復号されたパラメータを用いて画像符号化装置の量子化処理に対応する方式で逆量子化して、得られた変換スキップ係数すなわち復号残差データを演算部68へ出力する。
ステップST85において画像復号装置は逆直交変換処理を行う。画像復号装置60-1の逆直交変換部65は、逆量子化部63から供給された逆量子化データすなわち変換係数を、画像符号化装置の直交変換処理に対応する方式で逆直交変換処理を行い、画像符号化装置における直交変換前の残差データに対応する復号残差データを得て演算部68へ出力する。
ステップST86において画像復号装置は画像加算処理を行う。画像復号装置60-1の演算部68は、イントラ予測部73若しくは動き補償部74から供給された予測画像データと、逆直交変換部65から供給された復号残差データと逆量子化部67から供給された残差データを加算して復号画像データを生成する。演算部68は、生成した復号画像データをループ内フィルタ69とフレームメモリ71へ出力する。
ステップST87において画像復号装置はループ内フィルタ処理を行う。画像復号装置60-1のループ内フィルタ69は、演算部68より出力された復号画像データに対して、デブロッキングフィルタ処理とSAO処理および適応ループ内フィルタ処理の少なくともいずれかを画像符号化装置のループ内フィルタ処理と同様に行う。ループ内フィルタ69は、フィルタ処理後の復号画像データを画面並べ替えバッファ70およびフレームメモリ71へ出力する。
ステップST88において画像復号装置は記憶処理を行う。画像復号装置60-1のフレームメモリ71は、演算部68から供給されたフィルタ処理前の復号画像データと、ループ内フィルタ69によってフィルタ処理が行われた復号画像データを参照画像データとして記憶する。
ステップST89において画像復号装置は画面並べ替え処理を行う。画像復号装置60-1の画面並べ替えバッファ70は、ループ内フィルタ69から供給された復号画像データを蓄積して、蓄積した復号画像データを画像符号化装置の画面並べ替えバッファ11で並べ替えられる前の表示順序に戻して、出力画像データとして出力する。
このように、第1の実施の形態では、例えば変換係数と変換スキップ係数が含められた符号化ストリームの復号処理を行うことができるので、変換係数と変換スキップ係数のいずれかを含む符号化ストリームの復号処理を行う場合に比べて、復号画像の高画質低下を抑制できるようになる。
<3−2.第2の実施の形態>
画像復号装置の第2の実施の形態では、上述の画像符号化装置で生成された符号化ストリームの復号を行い、変換係数の量子化データと変換スキップ係数の量子化データの逆量子化を順に行う。また、逆量子化を行うことにより得られた変換係数の逆直交変換を行う。さらに、変換スキップ係数の量子化データの逆量子化を行うことによって生成された画像データ、または変換係数の逆直交変換を行うことによって生成された画像データの一方をバッファに一時格納したのち、他方の画像データと同期して用いて演算処理を行い復号画像データを生成する。なお、第2の実施の形態では、変換スキップ係数の量子化データの逆量子化の後に変換係数の量子化データの逆量子化が行われて、変換スキップ係数についての逆量子化によって生成された画像データをバッファに格納する場合を例示している。また、第1の実施の形態と対応する構成については同一符号を付している。
<3−2−1.画像復号装置の構成>
図14は、画像復号装置の第2の実施の形態の構成を例示している。上述の画像符号化装置で生成された符号化ストリームは、所定の伝送路または記録媒体等を介して画像復号装置60-2に供給されて復号される。
画像復号装置60-2は、蓄積バッファ61、エントロピー復号部62、逆量子化部63,選択部64、逆直交変換部65、バッファ66、演算部68、ループ内フィルタ69、画面並べ替えバッファ70を有する。また、画像復号装置60-2は、フレームメモリ71、選択部72、イントラ予測部73、動き補償部74を有する。
蓄積バッファ61は、伝送されてきた符号化ストリーム例えば図3に示す画像符号化装置で生成された符号化ストリームを受け取り蓄積する。この符号化ストリームは、所定のタイミングで読み出されてエントロピー復号部62へ出力される。
エントロピー復号部62は、符号化ストリームをエントロピー復号して、得られたイントラ予測モードを示す情報などのパラメータをイントラ予測部73へ出力し、インター予測モードを示す情報や動きベクトル情報などのパラメータを動き補償部74へ出力する。また、エントロピー復号部62は、フィルタに関するパラメータをループ内フィルタ69へ出力する。さらに、エントロピー復号部62は、変換量子化データと変換量子化データに関するパラメータを逆量子化部63へ出力する。
逆量子化部63は、エントロピー復号部62で復号された変換量子化データを、復号されたパラメータを用いて図3の量子化部15の量子化方式に対応する方式で逆量子化する。また、逆量子化部63は、エントロピー復号部62で復号された変換スキップ量子化データを、復号されたパラメータを用いて図3の量子化部25の量子化方式に対応する方式で逆量子化する。逆量子化部63は、逆量子化によって得られた変換係数と変換スキップ英数を選択部64へ出力する。
選択部64は、逆量子化によって得られた変換係数を逆直交変換部65へ出力する。また、選択部64は、逆量子化によって得られた変換スキップ係数すなわち変換誤差データをバッファ66へ出力する。
逆直交変換部65は、変換係数に対して図3の直交変換部14の直交変換方式に対応する方式で逆直交変換を行い、得られた残差データを演算部68へ出力する。
演算部68には、イントラ予測部73若しくは動き補償部74から予測画像データが供給される。また、演算部68には、逆直交変換部65から残差データとバッファ66から変換誤差データが供給される。演算部68は、画素毎に残差データと変換誤差データと予測画像データを加算して、画像符号化装置の演算部12により予測画像データが減算される前の原画像データに対応する復号画像データを得る。演算部68は、その復号画像データをループ内フィルタ69とフレームメモリ71へ出力する。
ループ内フィルタ69は、エントロピー復号部62から供給されるパラメータを用いて、デブロッキングフィルタ処理やSAO処理および適応ループフィルタ処理の少なくともいずれかを画像符号化装置のループ内フィルタ42と同様に行い、フィルタ処理結果を画面並べ替えバッファ70とフレームメモリ71へ出力する。
画面並べ替えバッファ70は、画像の並べ替えを行う。すなわち、画像符号化装置の画面並べ替えバッファ11により符号化の順番のために並べ替えられたフレームの順番を、元の表示の順番に並べ替えられて、出力画像データを生成する。
フレームメモリ71、選択部72、イントラ予測部73、動き補償部74は、画像符号化装置のフレームメモリ43、選択部44、イントラ予測部45、動き予測・補償部46にそれぞれ対応する。
フレームメモリ71は、演算部68から供給された復号画像データとループ内フィルタ69から供給された復号画像データを参照画像データとして記憶する。
選択部72は、イントラ予測に用いる参照画像データをフレームメモリ71から読み出し、イントラ予測部73へ出力する。また、選択部72は、インター予測に用いる参照画像データをフレームメモリ71から読み出して、動き補償部74へ出力する。
イントラ予測部73には、ヘッダ情報を復号して得られたイントラ予測モードを示す情報等がエントロピー復号部62から適宜供給される。イントラ予測部73は、この情報に基づいて、フレームメモリ71から取得した参照画像データから予測画像データを生成し、生成した予測画像データを演算部68へ出力する。
動き補償部74には、ヘッダ情報を復号して得られた情報(予測モード情報、動きベクトル情報、参照フレーム情報、フラグ、および各種パラメータ等)がエントロピー復号部62から供給される。動き補償部74は、エントロピー復号部62から供給されるそれらの情報に基づいて、フレームメモリ71から取得した参照画像データから予測画像データを生成して演算部68へ出力する。
<3−2−2.画像復号装置の動作>
次に、画像復号装置の第2の実施の形態の動作について説明する。図15は、画像復号装置の動作を例示したフローチャートである。
復号処理が開始されると、ステップST91において画像復号装置は蓄積処理を行う。画像復号装置60-2の蓄積バッファ61は、符号化ストリームを受け取り蓄積する。
ステップST92において画像復号装置はエントロピー復号処理を行う。画像復号装置60-2のエントロピー復号部62は、蓄積バッファ61から符号化ストリームを取得して復号処理を行い、画像符号化装置のエントロピー符号化処理で符号化されたIピクチャ、Pピクチャ、並びにBピクチャを復号する。また、エントロピー復号部62は、ピクチャの復号に先立ち、動きベクトル情報、参照フレーム情報、予測モード情報(イントラ予測モード、またはインター予測モード)やループ内フィルタ処理などのパラメータの情報も復号する。予測モード情報がイントラ予測モード情報である場合、予測モード情報はイントラ予測部73へ出力される。予測モード情報がインター予測モード情報である場合、予測モード情報と対応する動きベクトル情報などは、動き補償部74へ出力される。また、ループ内フィルタ処理に関するパラメータはループ内フィルタ69へ出力される。量子化パラメータに関する情報は、逆量子化部63へ出力される。
ステップST93において画像復号装置は予測画像生成処理を行う。画像復号装置60-2のイントラ予測部73または動き補償部74は、エントロピー復号部62から供給される予測モード情報に対応して、それぞれ予測画像生成処理を行う。
すなわち、エントロピー復号部62からイントラ予測モード情報が供給された場合、イントラ予測部73はフレームメモリ71に記憶されている参照画像データを用いてイントラ予測モードのイントラ予測画像データを生成する。エントロピー復号部62からインター予測モード情報が供給された場合、動き補償部74は、フレームメモリ71に記憶されている参照画像データを用いてインター予測モードの動き補償処理を行い、インター予測画像データを生成する。この処理により、イントラ予測部73により生成された予測画像データまたは動き補償部74により生成された予測画像データが演算部68へ出力される。
ステップST94において画像復号装置は逆量子化処理を行う。画像復号装置60-2の逆量子化部63は、エントロピー復号部62で得られた変換量子化データを、復号されたパラメータを用いて画像符号化装置の量子化処理に対応する方式で逆量子化して、得られた変換係数を逆直交変換部65へ出力する。また、逆量子化部67は、エントロピー復号部62で得られた変換スキップ量子化データを、復号されたパラメータを用いて画像符号化装置の量子化処理に対応する方式で逆量子化して、得られた変換スキップ係数すなわち復号変換誤差データを演算部68へ出力する。
ステップST95において画像復号装置は逆直交変換処理を行う。画像復号装置60-2の逆直交変換部65は、逆量子化部63から供給された逆量子化データすなわち変換係数を、画像符号化装置の直交変換処理に対応する方式で逆直交変換処理を行い、残差データを得て演算部68へ出力する。
ステップST96において画像復号装置は残差復号処理を行う。画像復号装置60-2の演算部68は、逆直交変換部65から供給された残差データとバッファ66から供給された変換誤差データを画素毎に加算して、画像符号化装置における直交変換前の残差データに対応する復号残差データを生成する。
ステップST97において画像復号装置は画像加算処理を行う。画像復号装置60-2の演算部68は、イントラ予測部73若しくは動き補償部74から供給された予測画像データと、ステップST96で生成した復号残差データを加算して復号画像データを生成する。演算部68は、生成した復号画像データをループ内フィルタ69とフレームメモリ71へ出力する。
ステップST98において画像復号装置はループ内フィルタ処理を行う。画像復号装置60-2のループ内フィルタ69は、演算部68より出力された復号画像データに対して、デブロッキングフィルタ処理とSAO処理および適応ループ内フィルタ処理の少なくともいずれかを画像符号化装置のループ内フィルタ処理と同様に行う。ループ内フィルタ69は、フィルタ処理後の復号画像データを画面並べ替えバッファ70およびフレームメモリ71へ出力する。
ステップST99において画像復号装置は記憶処理を行う。画像復号装置60-2のフレームメモリ71は、演算部68から供給されたフィルタ処理前の復号画像データと、ループ内フィルタ69によってフィルタ処理が行われた復号画像データを参照画像データとして記憶する。
ステップST100において画像復号装置は画面並べ替え処理を行う。画像復号装置60-2の画面並べ替えバッファ70は、ループ内フィルタ69から供給された復号画像データを蓄積して、蓄積した復号画像データを画像符号化装置の画面並べ替えバッファ11で並べ替えられる前の表示順序に戻して、出力画像データとして出力する。
また、図示せずも、変換係数の量子化データの逆量子化後に変換スキップ係数の量子化データの逆量子化が行われる場合、逆直交変換部65で生成された画像データをバッファに一時格納したのち、変換スキップ係数についての逆量子化を行うことによって生成された画像データと同期して用いて演算処理を行い復号画像データを生成する。
このように、第2の実施の形態では、変換係数と変換スキップ係数が含められた符号化ストリームの復号処理を行うことができるので、変換係数と変換スキップ係数のいずれかを含む符号化ストリームの復号処理を行う場合に比べて、復号画像の高画質低下を抑制できるようになる。また、変換係数の量子化データと変換スキップ係数の量子化データを同時に取得して、取得した変換係数の逆量子化と逆直交変換および取得した変換スキップ係数の逆量子化を並列に行うことができない場合でも、復号画像を生成できるようになる。
<4.画像処理装置の動作例>
次に、画像処理装置の動作例について説明する。図16は動作例を示している。図16の(a)は原画像データを例示しており、図16の(b)は予測画像データを例示している。また、図16の(c)は残差データを示している。図17は原画像と復号画像を例示しており、図17の(a)は図16の(a)に示す原画像データに対応する原画像である。
残差データに対して直交変換を用いて符号化処理を行うことにより生成した符号化ストリームの復号処理を行うと図16の(d)に示す復号残差データを得ることができる。この復号残差データに予測画像データを加算することで、図16の(e)に示す復号画像データが得られる。なお、図17の(b)は図16の(e)に示す復号画像データに対応する復号画像である。
また、残差データに対して変換スキップを用いて符号化処理を行うことにより生成した符号化ストリームの復号処理を行うと図16の(f)に示す復号残差データを得ることができる。この復号残差データに予測画像データを加算することで、図16の(g)に示す復号画像データが得られる。なお、図17の(c)は図16の(g)に示す復号画像データに対応する復号画像である。
ここで、符号化ストリームに含まれる係数が変換係数のみである場合、図16の(e)および図17の(b)に示すように、復号時にインパルスを再現できず、モスキートノイズが発生する。また、符号化ストリームに含まれる係数が変換スキップ係数のみである場合、図16の(g)および図17の(c)に示すように、復号時にインパルスを再現できるが、グラデーションを正しく再現できない。
これらに対して、本技術では符号化ストリームに変換係数と変換スキップ係数を含める。したがって、符号化ストリームの復号処理を行うと、図16の(h)に示す復号残差データを得ることができる。この復号残差データに予測画像データを加算することで、図16の(i)に示す復号画像データが得られる。なお、図17の(d)は図16の(i)に示す復号画像データに対応する復号画像である。このように、符号化ストリームに変換係数と変換スキップ係数を含める場合、図16の(i)および図17の(d)に示すように、復号時にモスキートノイズを発生することがなく、インパルスとグラデーションを再現できる。すなわち、変換係数と変換スキップ係数を符号化ストリームに含めることで、変換係数または変換スキップ係数の一方を符号化ストリームに含める場合に比べて高画質の復号画像を得られるようになる。
また、図16および図17から明らかなように、変換スキップ係数のみを符号化ストリームに含める場合、復号画像では低域周波数成分の画像再現性が低下している。したがって、変換係数と変換スキップ係数を符号化ストリームに含める場合、復号画像における低域周波数成分の画像再現性の低下の防止と符号量の削減のため、変換係数における例えば直流成分(DC成分のみ)を符号化ストリームに含めるようにしてもよい。
<5.複数種類の係数の伝送に関するシンタックスについて>
上述の画像符号化装置における第1乃至第4の実施の形態では、変換係数と変換スキップ係数を符号化ストリームに含めることから、次に、変換係数と変換スキップ係数を符号化ストリームに含めるためのシンタックスについて説明する。
図18,19は、複数種類の係数の伝送に関するシンタックスを例示している。図18の(a)は、係数の伝送における第1例のシンタックスを例示している。なお、第1例では、1つ目の係数を変換スキップ係数として、2つ目の係数を変換係数の直流成分(DC成分)とした場合のシンタックスを例示している。
「additional_dc_offset_flag[x0][y0][cIdx]」は当該TUについてのDC成分を含むか否かを示すフラグの追加を示しており、DC成分を含めない場合にフラグを「0」、DC成分を含める場合にフラグを「1」とする。「additional_dc_offset_sign」はDC成分の符号、「additional_dc_offset_level」はDC成分の値を示す。
図18の(b)は、係数の伝送における第2例のシンタックスを例示している。なお、第2例では、伝送する2つ目の係数がTUサイズである場合のシンタックスを例示している。
「additional_coeff_flag[x0][y0][cIdx]」は、当該TUについて2つ目の係数を含むか否かを示すフラグの追加を示しており、2つ目の係数を含めない場合にフラグを「0」、2つ目の係数を含める場合にフラグを「1」とする。「additional_last_sig_coeff_x_prefix,additional_last_sig_coeff_y_prefix,additional_last_sig_coeff_x_suffix,additional_last_sig_coeff_y_suffix」は、2つ目の係数に関する係数位置のプレフィックスやサフィックスを示す。
「additional_coded_sub_block_flag[xS][yS]」は、4×4単位のサブブロック内に非零係数があるか否かを示すフラグである。「additional_sig_coeff_flag[xC][yC]」は、4×4単位のサブブロック内の各係数が非零係数があるか否かを示すフラグである。
「additional_coeff_abs_level_greater1_flag[n]」は、係数の絶対値が2以上かどうかを示すフラグである。「additional_coeff_abs_level_greater2_flag[n]」は係数の絶対値が3以上かどうかを示すフラグである。「additional_coeff_sign_flag[n]」は、係数の正負符号を示すフラグである。「additional_coeff_abs_level_remaining[n]」は、係数の絶対値からフラグで表現した値を引いた値を示す。
図19の(a)は、係数の伝送における第3例のシンタックスを例示している。なお、第3例では、伝送する2つ目の係数が低域4×4のサイズである場合のシンタックスを例示している。
「additional_coeff_flag[x0][y0][cIdx]」は、当該TUについて2つ目の係数を含むか否かを示すフラグの追加を示しており、2つ目の係数を含めない場合にフラグを「0」、2つ目の係数を含める場合にフラグを「1」とする。
「additional_last_sig_coeff_x_prefix,additional_last_sig_coeff_y_prefix」は、2つ目の係数に関する係数位置のプレフィックスを示す。「additional_sig_coeff_flag[xC][yC]」は、4×4単位のサブブロック内の各係数が非零係数があるか否かを示すフラグである。
「additional_coeff_abs_level_greater1_flag[n]」は、係数の絶対値が2以上かどうかを示すフラグである。「additional_coeff_abs_level_greater2_flag[n]」は係数の絶対値が3以上かどうかを示すフラグである。「additional_coeff_sign_flag[n]」は、係数の正負符号を示すフラグである。「additional_coeff_abs_level_remaining[n]」は、係数の絶対値からフラグで表現した値を引いた値を示す。
図19の(b)は、係数の伝送における第4例のシンタックスを例示している。なお、第4例では、第1例乃至第3例のいずれかを選択可能とする場合のシンタックスを例示している。
「additional_coeff_mode[x0][y0][cIdx]」は、当該TUについて2つ目の係数を含むか否かおよび伝送モードを示すフラグの追加を示しており、2つ目の係数を含めない場合はフラグを「0」、伝送する2つ目の係数がDC成分である場合はフラグを「1」、2つ目の係数について低域4×4の係数のみを伝送する場合はフラグを「2」、伝送する2つ目の係数がTUサイズである場合はフラグを「3」とする。
「additional_last_sig_coeff_x_prefix,additional_last_sig_coeff_y_prefix,additional_last_sig_coeff_x_suffix,additional_last_sig_coeff_y_suffix」は、2つ目の係数に関する係数位置のプレフィックスやサフィックスを示す。
「additional_coded_sub_block_flag[xS][yS]」は、4×4単位のサブブロック内に非零係数があるか否かを示すフラグである。「additional_sig_coeff_flag[xC][yC]」は、4×4単位のサブブロック内の各係数が非零係数があるか否かを示すフラグである。
「additional_coeff_abs_level_greater1_flag[n]」は、係数の絶対値が2以上かどうかを示すフラグである。「additional_coeff_abs_level_greater2_flag[n]」は係数の絶対値が3以上かどうかを示すフラグである。「additional_coeff_sign_flag[n]」は、係数の正負符号を示すフラグである。「additional_coeff_abs_level_remaining[n]」は、係数の絶対値からフラグで表現した値を引いた値を示す。「additional_dc_offset_sign」はDC成分の符号、「additional_dc_offset_level」はDC成分の値を示す。
このようなシンタックスを用いることで、画像符号化装置は2つ目の係数を符号化ストリームに含めることが可能となり、画像復号装置はシンタックスに基づき2つ目の係数を用いて復号処理を行うことで、変換係数または変換スキップ係数のいずれか一方を伝送する場合に比べて、復号画像の画質低下を抑制できるようになる。
<6.複数種類の係数を伝送する場合の量子化パラメータについて>
ところで、画像符号化装置では、量子化パラメータ(QP:Quantization Parameter)に応じて量子化ステップの設定を行い、量子化パラメータが大きくなるに伴いステップ幅を広くすることが行われている。ここで、上述の実施の形態のように複数種類の係数を量子化して符号化ストリームに含める場合、各種類の係数に対して等しい量子化パラメータを用いる場合に限らず、種類毎に量子化パラメータを設定してもよい。例えばいずれかの係数を重視して符号化ストリームを生成する場合、重視する係数に対する量子化パラメータの値を小さくして量子化ステップのステップ幅を狭くして、重視する係数のデータ量を多くする。このように、種類毎に量子化パラメータを設定すれば、自由度の高い符号化処理が可能となり、等しい量子化パラメータを用いるに比べて復号画像を高画質とすることが可能となる。
図20は、複数の量子化パラメータを用いる場合のシンタックスを例示している。例えばHEVCのシンタックスを使用する場合、「Pic_parameter_set_rbsp」に図20の(a)に示す「cu_qp_delta_additional_enabled_flag」を設ける。このシンタックスは、2つ目の量子化パラメータを使用するか否かを示すフラグである。
また、「transform_unit」に図20の(b)に示す「cu_qp_delta_additional_abs」と「cu_qp_delta_additional_sign_flag」を設ける。「cu_qp_delta_additional_abs」は1つ目の量子化パラメータに対する2つ目の量子化パラメータの差の絶対値を示しており、「cu_qp_delta_additional_sign_flag」は1つ目の量子化パラメータに対する2つ目の量子化パラメータの差の正負符号を示している。例えば、1つ目の量子化パラメータを変換スキップの係数に対する量子化パラメータとした場合、追加して直交変換の変換係数を符号化ストリームに含める場合には、2つ目の量子化パラメータを直交変換の係数に対する量子化パラメータとする。また、1つ目の量子化パラメータを直交変換の変換係数に対する量子化パラメータとした場合、追加して変換スキップ係数を伝送する場合には、2つ目の量子化パラメータを変換スキップ係数に対する量子化パラメータとする。
このようなシンタックスを用いることで、複数種類の係数を符号化ストリームに含める際に個々に量子化パラメータを設定しても、符号化処理に対応した復号処理を行うことができる。
なお、上述の実施の形態では、直交変換を行うことにより得られる変換係数と、直交変換をスキップする変換スキップ処理を行うことによって得られる変換スキップ係数を符号化ストリームに含める場合について説明したが、複数種類の係数は直交変換の変換係数や変換スキップ係数に限られるものではなく、他の変換係数を用いてもよく、他の係数をさらに含めるようにしてもよい。
<7.応用例>
次に、本技術の画像処理装置の応用例について説明する。
[第1の応用例:テレビジョン受像機]
図21は、上述した画像処理装置を適用したテレビジョン装置の概略的な構成の一例を示している。テレビジョン装置900は、アンテナ901、チューナ902、デマルチプレクサ903、デコーダ904、映像信号処理部905、表示部906、音声信号処理部907、スピーカ908、外部インタフェース909、制御部910、ユーザインタフェース911、及びバス912を備える。
チューナ902は、アンテナ901を介して受信される放送信号から所望のチャンネルの信号を抽出し、抽出した信号を復調する。そして、チューナ902は、復調により得られた符号化ビットストリームをデマルチプレクサ903へ出力する。即ち、チューナ902は、画像が符号化されている符号化ストリームを受信する、テレビジョン装置900における伝送手段としての役割を有する。
デマルチプレクサ903は、符号化ビットストリームから視聴対象の番組の映像ストリーム及び音声ストリームを分離し、分離した各ストリームをデコーダ904へ出力する。また、デマルチプレクサ903は、符号化ビットストリームからEPG(Electronic Program Guide)などの補助的なデータを抽出し、抽出したデータを制御部910へ出力する。なお、デマルチプレクサ903は、符号化ビットストリームがスクランブルされている場合には、デスクランブルを行ってもよい。
デコーダ904は、デマルチプレクサ903から入力される映像ストリーム及び音声ストリームを復号する。そして、デコーダ904は、復号処理により生成される映像データを映像信号処理部905へ出力する。また、デコーダ904は、復号処理により生成される音声データを音声信号処理部907へ出力する。
映像信号処理部905は、デコーダ904から入力される映像データを再生し、表示部906に映像を表示させる。また、映像信号処理部905は、ネットワークを介して供給されるアプリケーション画面を表示部906に表示させてもよい。また、映像信号処理部905は、映像データについて、設定に応じて、例えばノイズ除去(抑制)などの追加的な処理を行ってもよい。さらに、映像信号処理部905は、例えばメニュー、ボタン又はカーソルなどのGUI(Graphical User Interface)の画像を生成し、生成した画像を出力画像に重畳してもよい。
表示部906は、映像信号処理部905から供給される駆動信号により駆動され、表示デバイス(例えば、液晶ディスプレイ、プラズマディスプレイ又はOELD(Organic ElectroLuminescence Display)(有機ELディスプレイ)など)の映像面上に映像又は画像を表示する。
音声信号処理部907は、デコーダ904から入力される音声データについてD/A変換及び増幅などの再生処理を行い、スピーカ908から音声を出力させる。また、音声信号処理部907は、音声データについてノイズ除去(抑制)などの追加的な処理を行ってもよい。
外部インタフェース909は、テレビジョン装置900と外部機器又はネットワークとを接続するためのインタフェースである。例えば、外部インタフェース909を介して受信される映像ストリーム又は音声ストリームが、デコーダ904により復号されてもよい。即ち、外部インタフェース909もまた、画像が符号化されている符号化ストリームを受信する、テレビジョン装置900における伝送手段としての役割を有する。
制御部910は、CPUなどのプロセッサ、並びにRAM及びROMなどのメモリを有する。メモリは、CPUにより実行されるプログラム、プログラムデータ、EPGデータ、及びネットワークを介して取得されるデータなどを記憶する。メモリにより記憶されるプログラムは、例えば、テレビジョン装置900の起動時にCPUにより読み込まれ、実行される。CPUは、プログラムを実行することにより、例えばユーザインタフェース911から入力される操作信号に応じて、テレビジョン装置900の動作を制御する。
ユーザインタフェース911は、制御部910と接続される。ユーザインタフェース911は、例えば、ユーザがテレビジョン装置900を操作するためのボタン及びスイッチ、並びに遠隔制御信号の受信部などを有する。ユーザインタフェース911は、これら構成要素を介してユーザによる操作を検出して操作信号を生成し、生成した操作信号を制御部910へ出力する。
バス912は、チューナ902、デマルチプレクサ903、デコーダ904、映像信号処理部905、音声信号処理部907、外部インタフェース909及び制御部910を相互に接続する。
このように構成されたテレビジョン装置900において、デコーダ904は、上述した画像復号装置の機能を有する。それにより、テレビジョン装置900での画像の復号に際して、画質の低下が抑制された復号画像を表示できる。
[第2の応用例:携帯電話機]
図22は、上述した実施形態を適用した携帯電話機の概略的な構成の一例を示している。携帯電話機920は、アンテナ921、通信部922、音声コーデック923、スピーカ924、マイクロホン925、カメラ部926、画像処理部927、多重分離部928、記録再生部929、表示部930、制御部931、操作部932、及びバス933を備える。
アンテナ921は、通信部922に接続される。スピーカ924及びマイクロホン925は、音声コーデック923に接続される。操作部932は、制御部931に接続される。バス933は、通信部922、音声コーデック923、カメラ部926、画像処理部927、多重分離部928、記録再生部929、表示部930、及び制御部931を相互に接続する。
携帯電話機920は、音声通話モード、データ通信モード、撮影モード及びテレビ電話モードを含む様々な動作モードで、音声信号の送受信、電子メール又は画像データの送受信、画像の撮像、及びデータの記録などの動作を行う。
音声通話モードにおいて、マイクロホン925により生成されるアナログ音声信号は、音声コーデック923へ出力される。音声コーデック923は、アナログ音声信号を音声データへ変換し、変換された音声データをA/D変換し圧縮する。そして、音声コーデック923は、圧縮後の音声データを通信部922へ出力する。通信部922は、音声データを符号化及び変調し、送信信号を生成する。そして、通信部922は、生成した送信信号を、アンテナ921を介して基地局(図示せず)へ送信する。また、通信部922は、アンテナ921を介して受信される無線信号を増幅し及び周波数変換し、受信信号を取得する。そして、通信部922は、受信信号を復調及び復号して音声データを生成し、生成した音声データを音声コーデック923へ出力する。音声コーデック923は、音声データを伸張し及びD/A変換し、アナログ音声信号を生成する。そして、音声コーデック923は、生成した音声信号をスピーカ924に供給して音声を出力させる。
また、データ通信モードにおいて、例えば、制御部931は、操作部932を介するユーザによる操作に応じて、電子メールを構成する文字データを生成する。また、制御部931は、文字を表示部930に表示させる。また、制御部931は、操作部932を介するユーザからの送信指示に応じて電子メールデータを生成し、生成した電子メールデータを通信部922へ出力する。通信部922は、電子メールデータを符号化及び変調し、送信信号を生成する。そして、通信部922は、生成した送信信号を、アンテナ921を介して基地局(図示せず)へ送信する。また、通信部922は、アンテナ921を介して受信される無線信号を増幅し及び周波数変換し、受信信号を取得する。そして、通信部922は、受信信号を復調及び復号して電子メールデータを復元し、復元した電子メールデータを制御部931へ出力する。制御部931は、表示部930に電子メールの内容を表示させると共に、電子メールデータを記録再生部929の記憶媒体に記憶させる。
記録再生部929は、読み書き可能な任意の記憶媒体を有する。例えば、記憶媒体は、RAM又はフラッシュメモリなどの内蔵型の記憶媒体であってもよく、ハードディスク、磁気ディスク、光磁気ディスク、光ディスク、USB(Universal Serial Bus)メモリ、又はメモリカードなどの外部装着型の記憶媒体であってもよい。
また、撮影モードにおいて、例えば、カメラ部926は、被写体を撮像して画像データを生成し、生成した画像データを画像処理部927へ出力する。画像処理部927は、カメラ部926から入力される画像データを符号化し、符号化ストリームを記録再生部929の記憶媒体に記憶させる。
また、テレビ電話モードにおいて、例えば、多重分離部928は、画像処理部927により符号化された映像ストリームと、音声コーデック923から入力される音声ストリームとを多重化し、多重化したストリームを通信部922へ出力する。通信部922は、ストリームを符号化及び変調し、送信信号を生成する。そして、通信部922は、生成した送信信号を、アンテナ921を介して基地局(図示せず)へ送信する。また、通信部922は、アンテナ921を介して受信される無線信号を増幅し及び周波数変換し、受信信号を取得する。これら送信信号及び受信信号には、符号化ビットストリームが含まれ得る。そして、通信部922は、受信信号を復調及び復号してストリームを復元し、復元したストリームを多重分離部928へ出力する。多重分離部928は、入力されるストリームから映像ストリーム及び音声ストリームを分離し、映像ストリームを画像処理部927、音声ストリームを音声コーデック923へ出力する。画像処理部927は、映像ストリームを復号し、映像データを生成する。映像データは、表示部930に供給され、表示部930により一連の画像が表示される。音声コーデック923は、音声ストリームを伸張し及びD/A変換し、アナログ音声信号を生成する。そして、音声コーデック923は、生成した音声信号をスピーカ924に供給して音声を出力させる。
このように構成された携帯電話機920において、画像処理部927は、上述した画像符号化装置及び画像復号装置の機能を有する。それにより、携帯電話機920での画像の符号化及び復号に際して、符号化効率の向上および画質の低下が抑制された復号画像の出力を行えるようになる。
[第3の応用例:記録再生装置]
図23は、上述した実施形態を適用した記録再生装置の概略的な構成の一例を示している。記録再生装置940は、例えば、受信した放送番組の音声データ及び映像データを符号化して記録媒体に記録する。また、記録再生装置940は、例えば、他の装置から取得される音声データ及び映像データを符号化して記録媒体に記録してもよい。また、記録再生装置940は、例えば、ユーザの指示に応じて、記録媒体に記録されているデータをモニタ及びスピーカ上で再生する。このとき、記録再生装置940は、音声データ及び映像データを復号する。
記録再生装置940は、チューナ941、外部インタフェース942、エンコーダ943、HDD(Hard Disk Drive)944、ディスクドライブ945、セレクタ946、デコーダ947、OSD(On−Screen Display)948、制御部949、及びユーザインタフェース950を備える。
チューナ941は、アンテナ(図示せず)を介して受信される放送信号から所望のチャンネルの信号を抽出し、抽出した信号を復調する。そして、チューナ941は、復調により得られた符号化ビットストリームをセレクタ946へ出力する。即ち、チューナ941は、記録再生装置940における伝送手段としての役割を有する。
外部インタフェース942は、記録再生装置940と外部機器又はネットワークとを接続するためのインタフェースである。外部インタフェース942は、例えば、IEEE1394インタフェース、ネットワークインタフェース、USBインタフェース、又はフラッシュメモリインタフェースなどであってよい。例えば、外部インタフェース942を介して受信される映像データ及び音声データは、エンコーダ943へ入力される。即ち、外部インタフェース942は、記録再生装置940における伝送手段としての役割を有する。
エンコーダ943は、外部インタフェース942から入力される映像データ及び音声データが符号化されていない場合に、映像データ及び音声データを符号化する。そして、エンコーダ943は、符号化ビットストリームをセレクタ946へ出力する。
HDD944は、映像及び音声などのコンテンツデータが圧縮された符号化ビットストリーム、各種プログラムおよびその他のデータを内部のハードディスクに記録する。また、HDD944は、映像及び音声の再生時に、これらデータをハードディスクから読み出す。
ディスクドライブ945は、装着されている記録媒体へのデータの記録及び読み出しを行う。ディスクドライブ945に装着される記録媒体は、例えばDVDディスク(DVD−Video、DVD−RAM、DVD−R、DVD−RW、DVD+R、DVD+RW等)又はBlu−ray(登録商標)ディスクなどであってよい。
セレクタ946は、映像及び音声の記録時には、チューナ941又はエンコーダ943から入力される符号化ビットストリームを選択し、選択した符号化ビットストリームをHDD944又はディスクドライブ945へ出力する。また、セレクタ946は、映像及び音声の再生時には、HDD944又はディスクドライブ945から入力される符号化ビットストリームをデコーダ947へ出力する。
デコーダ947は、符号化ビットストリームを復号し、映像データ及び音声データを生成する。そして、デコーダ947は、生成した映像データをOSD948へ出力する。また、デコーダ904は、生成した音声データを外部のスピーカへ出力する。
OSD948は、デコーダ947から入力される映像データを再生し、映像を表示する。また、OSD948は、表示する映像に、例えばメニュー、ボタン又はカーソルなどのGUIの画像を重畳してもよい。
制御部949は、CPUなどのプロセッサ、並びにRAM及びROMなどのメモリを有する。メモリは、CPUにより実行されるプログラム、及びプログラムデータなどを記憶する。メモリにより記憶されるプログラムは、例えば、記録再生装置940の起動時にCPUにより読み込まれ、実行される。CPUは、プログラムを実行することにより、例えばユーザインタフェース950から入力される操作信号に応じて、記録再生装置940の動作を制御する。
ユーザインタフェース950は、制御部949と接続される。ユーザインタフェース950は、例えば、ユーザが記録再生装置940を操作するためのボタン及びスイッチ、並びに遠隔制御信号の受信部などを有する。ユーザインタフェース950は、これら構成要素を介してユーザによる操作を検出して操作信号を生成し、生成した操作信号を制御部949へ出力する。
このように構成された記録再生装置940において、エンコーダ943は、上述した画像符号化装置の機能を有する。また、デコーダ947は、上述した画像復号装置の機能を有する。それにより、記録再生装置940での画像の符号化及び復号に際して、符号化効率の向上および画質の低下が抑制された復号画像の再生を行えるようになる。
[第4の応用例:撮像装置]
図24は、上述した実施形態を適用した撮像装置の概略的な構成の一例を示している。撮像装置960は、被写体を撮像して画像を生成し、画像データを符号化して記録媒体に記録する。
撮像装置960は、光学ブロック961、撮像部962、信号処理部963、画像処理部964、表示部965、外部インタフェース966、メモリ967、メディアドライブ968、OSD969、制御部970、ユーザインタフェース971、及びバス972を備える。
光学ブロック961は、撮像部962に接続される。撮像部962は、信号処理部963に接続される。表示部965は、画像処理部964に接続される。ユーザインタフェース971は、制御部970に接続される。バス972は、画像処理部964、外部インタフェース966、メモリ967、メディアドライブ968、OSD969、及び制御部970を相互に接続する。
光学ブロック961は、フォーカスレンズ及び絞り機構などを有する。光学ブロック961は、被写体の光学像を撮像部962の撮像面に結像させる。撮像部962は、CCD(Charge Coupled Device)又はCMOS(Complementary Metal Oxide Semiconductor)などのイメージセンサを有し、撮像面に結像した光学像を光電変換によって電気信号としての画像信号に変換する。そして、撮像部962は、画像信号を信号処理部963へ出力する。
信号処理部963は、撮像部962から入力される画像信号に対してニー補正、ガンマ補正、色補正などの種々のカメラ信号処理を行う。信号処理部963は、カメラ信号処理後の画像データを画像処理部964へ出力する。
画像処理部964は、信号処理部963から入力される画像データを符号化し、符号化データを生成する。そして、画像処理部964は、生成した符号化データを外部インタフェース966又はメディアドライブ968へ出力する。また、画像処理部964は、外部インタフェース966又はメディアドライブ968から入力される符号化データを復号し、画像データを生成する。そして、画像処理部964は、生成した画像データを表示部965へ出力する。また、画像処理部964は、信号処理部963から入力される画像データを表示部965へ出力して画像を表示させてもよい。また、画像処理部964は、OSD969から取得される表示用データを、表示部965へ出力する画像に重畳してもよい。
OSD969は、例えばメニュー、ボタン又はカーソルなどのGUIの画像を生成して、生成した画像を画像処理部964へ出力する。
外部インタフェース966は、例えばUSB入出力端子として構成される。外部インタフェース966は、例えば、画像の印刷時に、撮像装置960とプリンタとを接続する。また、外部インタフェース966には、必要に応じてドライブが接続される。ドライブには、例えば、磁気ディスク又は光ディスクなどのリムーバブルメディアが装着され、リムーバブルメディアから読み出されるプログラムが、撮像装置960にインストールされ得る。さらに、外部インタフェース966は、LAN又はインターネットなどのネットワークに接続されるネットワークインタフェースとして構成されてもよい。即ち、外部インタフェース966は、撮像装置960における伝送手段としての役割を有する。
メディアドライブ968に装着される記録媒体は、例えば、磁気ディスク、光磁気ディスク、光ディスク、又は半導体メモリなどの、読み書き可能な任意のリムーバブルメディアであってよい。また、メディアドライブ968に記録媒体が固定的に装着され、例えば、内蔵型ハードディスクドライブ又はSSD(Solid State Drive)のような非可搬性の記憶部が構成されてもよい。
制御部970は、CPUなどのプロセッサ、並びにRAM及びROMなどのメモリを有する。メモリは、CPUにより実行されるプログラム、及びプログラムデータなどを記憶する。メモリにより記憶されるプログラムは、例えば、撮像装置960の起動時にCPUにより読み込まれ、実行される。CPUは、プログラムを実行することにより、例えばユーザインタフェース971から入力される操作信号に応じて、撮像装置960の動作を制御する。
ユーザインタフェース971は、制御部970と接続される。ユーザインタフェース971は、例えば、ユーザが撮像装置960を操作するためのボタン及びスイッチなどを有する。ユーザインタフェース971は、これら構成要素を介してユーザによる操作を検出して操作信号を生成し、生成した操作信号を制御部970へ出力する。
このように構成された撮像装置960において、画像処理部964は、上述した実施形態に係る画像符号化装置及び画像復号装置の機能を有する。それにより、撮像装置960での画像の符号化及び復号に際して、符号化効率の向上および画質の低下が抑制された復号画像の出力を行えるようになる。
明細書中において説明した一連の処理はハードウェア、またはソフトウェア、あるいは両者の複合構成によって実行することが可能である。ソフトウェアによる処理を実行する場合は、処理シーケンスを記録したプログラムを、専用のハードウェアに組み込まれたコンピュータ内のメモリにインストールして実行させる。または、各種処理が実行可能な汎用コンピュータにプログラムをインストールして実行させることが可能である。
例えば、プログラムは記録媒体としてのハードディスクやSSD(Solid State Drive)、ROM(Read Only Memory)に予め記録しておくことができる。あるいは、プログラムはフレキシブルディスク、CD−ROM(Compact Disc Read Only Memory),MO(Magneto optical)ディスク,DVD(Digital Versatile Disc)、BD(Blu-Ray Disc(登録商標))、磁気ディスク、半導体メモリカード等のリムーバブル記録媒体に、一時的または永続的に格納(記録)しておくことができる。このようなリムーバブル記録媒体は、いわゆるパッケージソフトウェアとして提供することができる。
また、プログラムは、リムーバブル記録媒体からコンピュータにインストールする他、ダウンロードサイトからLAN(Local Area Network)やインターネット等のネットワークを介して、コンピュータに無線または有線で転送してもよい。コンピュータでは、そのようにして転送されてくるプログラムを受信し、内蔵するハードディスク等の記録媒体にインストールすることができる。
なお、本明細書に記載した効果はあくまで例示であって限定されるものではなく、記載されていない付加的な効果があってもよい。また、本技術は、上述した技術の実施の形態に限定して解釈されるべきではない。この技術の実施の形態は、例示という形態で本技術を開示しており、本技術の要旨を逸脱しない範囲で当業者が実施の形態の修正や代用をなし得ることは自明である。すなわち、本技術の要旨を判断するためには、請求の範囲を参酌すべきである。
また、本技術の画像処理装置は以下のような構成も取ることができる。
(1) 画像データから各変換処理ブロックで生成された複数種類の係数を種類毎に量子化して量子化データを生成する量子化部と、
前記量子化部で生成された前記複数種類毎の量子化データを符号化して符号化ストリームを生成する符号化部と
を備える画像処理装置。
(2) 前記複数種類の係数は、直交変換を行うことにより得られる変換係数と、前記直交変換をスキップする変換スキップ処理を行うことによって得られる変換スキップ係数である(1)に記載の画像処理装置。
(3) 前記符号化部は、
前記画像データに対して前記直交変換を行うことにより得られた変換係数の量子化データと、
前記画像データに対して前記変換スキップ処理を行うことにより得られた変換スキップ係数の量子化データを符号化する(2)に記載の画像処理装置。
(4) 前記変換係数の量子化データは前記変換係数の直流成分を示す(3)に記載の画像処理装置。
(5) 前記画像データの成分分離処理を行うフィルタ部をさらに備え、
前記符号化部は、
前記フィルタ部の成分分離処理で得られた第1の分離データに対して前記直交変換を行うことにより得られた変換係数の量子化データと、
前記フィルタ部の成分分離処理で得られた前記第1の分離データと異なる第2分離データに対して前記変換スキップ処理を行うことにより得られた変換スキップ係数の量子化データを符号化する(3)に記載の画像処理装置。
(6) 前記フィルタ部は、周波数領域での成分分離処理を行い、前記第1の分離データと前記第1の分離データよりも高い周波数成分である前記第2の分離データを生成する(5)に記載の画像処理装置。
(7) 前記フィルタ部は、空間領域での成分分離処理を行い、平滑化処理とテクスチャ成分抽出処理、または平滑化処理とテクスチャ成分抽出処理のいずれかと処理結果を用いた演算処理によって、前記第1の分離データと前記第2の分離データを生成する(5)に記載の画像処理装置。
(8) 前記フィルタ部は、前記平滑化処理によって、または前記テクスチャ成分抽出処理の処理結果と前記画像データを用いた演算処理によって前記第1の分離データを生成して、前記テクスチャ成分抽出処理によって、または前記平滑化処理の処理結果と前記画像データを用いた演算処理によって前記第2の分離データを生成する(7)に記載の画像処理装置。
(9) 前記符号化部は、
前記直交変換を前記画像データに対して行うことにより得られた変換係数の量子化データと、
前記変換係数の量子化と逆量子化および逆直交変換を行うことにより得られた復号データと前記画像データとの差に対して、前記変換スキップ処理を行うことにより得られた変換スキップ係数の量子化データを符号化する(2)に記載の画像処理装置。
(10) 前記符号化部は、
前記変換スキップ処理を前記画像データに対して行うことにより得られた変換スキップ係数の量子化データと、
前記変換スキップ係数の量子化と逆量子化を行うことにより得られた復号データと前記画像データとの差に対して、前記直交変換を行うことにより得られた変換係数の量子化データを符号化する(2)に記載の画像処理装置。
(11) 前記量子化部は、前記係数の種類毎に設定された量子化パラメータに基づいて前記係数の量子化を行い、
前記符号化部は、前記係数の種類毎に設定された量子化パラメータを示す情報を符号化して前記符号化ストリームに含める(1)乃至(10)のいずれかに記載の画像処理装置。
(12) 前記画像データは、符号化対象の画像データと予測画像データとの差を示す残差データである(1)乃至(11)のいずれかに記載の画像処理装置。
さらに、本技術の画像処理装置は以下のような構成も取ることができる。
(1) 符号化ストリームの復号を行い、複数種類の係数の種類毎の量子化データを取得する復号部と、
前記復号部で取得された量子化データの逆量子化を行い前記種類毎の係数を生成する逆量子化部と、
前記逆量子化部で得られた係数から前記係数の種類毎に画像データを生成する逆変換部と、
前記逆変換部で得られた前記係数の種類毎の画像データを用いた演算処理を行い復号画像データを生成する演算部と
を備える画像処理装置。
(2) 前記復号部は、前記符号化ストリームの復号を行い、前記複数種類の係数の種類毎の量子化パラメータを示す情報を取得して、
前記逆量子化部は、前記係数の種類毎に対応する量子化パラメータの情報を用いて対応する量子化データの逆量子化を行う(1)に記載の画像処理装置。
(3) 前記演算部は、前記逆変換部で得られた前記係数の種類毎の画像データと予測画像データを、画素位置を合わせて加算して前記復号画像データを生成する(1)または(2)に記載の画像処理装置。
この技術の画像処理装置と画像処理方法およびプログラムでは、画像データから各変換処理ブロックで生成された複数種類の係数を種類毎に量子化して量子化データが生成されて、この複数種類毎の量子化データを符号化して符号化ストリームが生成される。また、符号化ストリームの復号を行い、複数種類の係数の種類毎の量子化データを取得して、取得した量子化データの逆量子化を行い種類毎の係数が生成される。また、生成された係数から係数の種類毎に画像データが生成されて、係数の種類毎の画像データを用いた演算処理によって復号画像データが生成される。このため、復号画像の画質低下を抑制できるようになる。したがって、画像データの符号化処理または復号処理を行う電子機器に適している。
10-1,10-2,10-3,10-4・・・画像符号化装置
11,70・・・画面並べ替えバッファ
12,19,24,34,36,39,41,68,137・・・演算部
13・・・フィルタ部
14,26,131・・・直交変換部
15,16,17,25,27・・・量子化部
17,18,22,31,33,35,37,63,67・・・逆量子化部
23,32,38,65,133,134・・・逆直交変換部
28・・・エントロピー符号化部
29,61・・・蓄積バッファ
30・・・レート制御部
42,69・・・ループ内フィルタ
43,71・・・フレームメモリ
44,64,72・・・選択部
45,73・・・イントラ予測部
46・・・動き予測・補償部
47・・・予測選択部
60-1,60-2・・・画像復号装置
62・・・エントロピー復号部
66・・・バッファ
74・・・動き補償部
132・・・周波数分離部
135,136・・・空間フィルタ

Claims (19)

  1. 画像データから各変換処理ブロックで生成された複数種類の係数を種類毎に量子化して量子化データを生成する量子化部と、
    前記量子化部で生成された前記複数種類毎の量子化データを符号化して符号化ストリームを生成する符号化部と
    を備える画像処理装置。
  2. 前記複数種類の係数は、直交変換を行うことにより得られる変換係数と、前記直交変換をスキップする変換スキップ処理を行うことによって得られる変換スキップ係数である
    請求項1に記載の画像処理装置。
  3. 前記符号化部は、
    前記画像データに対して前記直交変換を行うことにより得られた変換係数の量子化データと、
    前記画像データに対して前記変換スキップ処理を行うことにより得られた変換スキップ係数の量子化データを符号化する
    請求項2に記載の画像処理装置。
  4. 前記変換係数の量子化データは前記変換係数の直流成分を示す
    請求項3に記載の画像処理装置。
  5. 前記画像データの成分分離処理を行うフィルタ部をさらに備え、
    前記符号化部は、
    前記フィルタ部の成分分離処理で得られた第1の分離データに対して前記直交変換を行うことにより得られた変換係数の量子化データと、
    前記フィルタ部の成分分離処理で得られた前記第1の分離データと異なる第2分離データに対して前記変換スキップ処理を行うことにより得られた変換スキップ係数の量子化データを符号化する
    請求項3に記載の画像処理装置。
  6. 前記フィルタ部は、周波数領域での成分分離処理を行い、前記第1の分離データと前記第1の分離データよりも高い周波数成分である前記第2の分離データを生成する
    請求項5に記載の画像処理装置。
  7. 前記フィルタ部は、空間領域での成分分離処理を行い、平滑化処理とテクスチャ成分抽出処理、または平滑化処理とテクスチャ成分抽出処理のいずれかと処理結果を用いた演算処理によって、前記第1の分離データと前記第2の分離データを生成する
    請求項5に記載の画像処理装置。
  8. 前記フィルタ部は、前記平滑化処理によって、または前記テクスチャ成分抽出処理の処理結果と前記画像データを用いた演算処理によって前記第1の分離データを生成して、前記テクスチャ成分抽出処理によって、または前記平滑化処理の処理結果と前記画像データを用いた演算処理によって前記第2の分離データを生成する
    請求項7に記載の画像処理装置。
  9. 前記符号化部は、
    前記直交変換を前記画像データに対して行うことにより得られた変換係数の量子化データと、
    前記変換係数の量子化と逆量子化および逆直交変換を行うことにより得られた復号データと前記画像データとの差に対して、前記変換スキップ処理を行うことにより得られた変換スキップ係数の量子化データを符号化する
    請求項2に記載の画像処理装置。
  10. 前記符号化部は、
    前記変換スキップ処理を前記画像データに対して行うことにより得られた変換スキップ係数の量子化データと、
    前記変換スキップ係数の量子化と逆量子化を行うことにより得られた復号データと前記画像データとの差に対して、前記直交変換を行うことにより得られた変換係数の量子化データを符号化する
    請求項2に記載の画像処理装置。
  11. 前記量子化部は、前記係数の種類毎に設定された量子化パラメータに基づいて前記係数の量子化を行い、
    前記符号化部は、前記係数の種類毎に設定された量子化パラメータを示す情報を符号化して前記符号化ストリームに含める
    請求項1に記載の画像処理装置。
  12. 前記画像データは、符号化対象の画像データと予測画像データとの差を示す残差データである
    請求項1に記載の画像処理装置。
  13. 画像データから各変換処理ブロックで生成された複数種類の係数を種類毎に量子化して量子化データを生成することと、
    前記量子化部で生成された前記複数種類毎の量子化データを符号化して符号化ストリームを生成することと
    を含む画像処理方法。
  14. 画像符号化処理をコンピュータで実行させるプログラムであって、
    画像データから各変換処理ブロックで生成された複数種類の係数を種類毎に量子化して量子化データを生成する手順と、
    前記生成された前記複数種類毎の量子化データを符号化して符号化ストリームを生成する手順と
    を前記コンピュータで実行させるプログラム。
  15. 符号化ストリームの復号を行い、複数種類の係数の種類毎の量子化データを取得する復号部と、
    前記復号部で取得された量子化データの逆量子化を行い前記種類毎の係数を生成する逆量子化部と、
    前記逆量子化部で得られた係数から前記係数の種類毎に画像データを生成する逆変換部と、
    前記逆変換部で得られた前記係数の種類毎の画像データを用いた演算処理を行い復号画像データを生成する演算部と
    を備える画像処理装置。
  16. 前記復号部は、前記符号化ストリームの復号を行い、前記複数種類の係数の種類毎の量子化パラメータを示す情報を取得して、
    前記逆量子化部は、前記係数の種類毎に対応する量子化パラメータの情報を用いて対応する量子化データの逆量子化を行う
    請求項15に記載の画像処理装置。
  17. 前記演算部は、前記逆変換部で得られた前記係数の種類毎の画像データと予測画像データを、画素位置を合わせて加算して前記復号画像データを生成する
    請求項15に記載の画像処理装置。
  18. 符号化ストリームの復号を行い、複数種類の係数の種類毎の量子化データを取得することと、
    前記取得された量子化データの逆量子化を行い前記種類毎の係数を生成することと、
    前記生成された係数から前記係数の種類毎に画像データを生成することと、
    前記係数の種類毎の画像データを用いた演算処理を行い復号画像データを生成することと
    を含む画像処理方法。
  19. 画像復号処理をコンピュータで実行させるプログラムであって、
    符号化ストリームの復号を行い、複数種類の係数の種類毎の量子化データを取得する手順と、
    前記取得された量子化データの逆量子化を行い前記種類毎の係数を生成する手順と、
    前記生成された係数から前記係数の種類毎に画像データを生成する手順と
    前記係数の種類毎の画像データを用いた演算処理を行い復号画像データを生成する手順と
    を前記コンピュータで実行させるプログラム。
JP2019526663A 2017-06-29 2018-05-15 画像処理装置と画像処理方法およびプログラム Pending JPWO2019003676A1 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP2017127220 2017-06-29
JP2017127220 2017-06-29
PCT/JP2018/018722 WO2019003676A1 (ja) 2017-06-29 2018-05-15 画像処理装置と画像処理方法およびプログラム

Publications (1)

Publication Number Publication Date
JPWO2019003676A1 true JPWO2019003676A1 (ja) 2020-04-30

Family

ID=64741464

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2019526663A Pending JPWO2019003676A1 (ja) 2017-06-29 2018-05-15 画像処理装置と画像処理方法およびプログラム

Country Status (4)

Country Link
US (1) US20210409770A1 (ja)
JP (1) JPWO2019003676A1 (ja)
CN (1) CN110800296A (ja)
WO (1) WO2019003676A1 (ja)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2021045188A1 (ja) * 2019-09-06 2021-03-11 ソニー株式会社 画像処理装置および方法
JP7358135B2 (ja) * 2019-09-17 2023-10-10 キヤノン株式会社 画像符号化装置、画像符号化方法、及びプログラム、画像復号装置、画像復号方法、及びプログラム
CN116112668A (zh) * 2020-08-21 2023-05-12 腾讯科技(深圳)有限公司 视频编码方法、装置、计算机可读介质及电子设备

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2011016250A1 (ja) * 2009-08-06 2011-02-10 パナソニック株式会社 符号化方法、復号方法、符号化装置及び復号装置
JP2013534795A (ja) * 2010-07-15 2013-09-05 クゥアルコム・インコーポレイテッド ビデオ符号化における固定小数点変換のための可変局所ビット深度増加
JP2015039191A (ja) * 2010-07-09 2015-02-26 クゥアルコム・インコーポレイテッドQualcomm Incorporated サイズとイントラモードとに基づいて又はエッジ検出に基づいてイントラブロック符号化の周波数変換を適応させること
JP2015521826A (ja) * 2012-06-29 2015-07-30 キヤノン株式会社 画像を符号化または復号するための方法およびデバイス

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104335582B (zh) * 2012-06-12 2019-03-08 太阳专利托管公司 动态图像编解码方法以及动态图像编解码装置
TWI627857B (zh) * 2012-06-29 2018-06-21 Sony Corp Image processing device and method
EP3054683A4 (en) * 2013-09-30 2017-06-07 Nippon Hoso Kyokai Image coding device, image decoding device, and programs therefor

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2011016250A1 (ja) * 2009-08-06 2011-02-10 パナソニック株式会社 符号化方法、復号方法、符号化装置及び復号装置
JP2015039191A (ja) * 2010-07-09 2015-02-26 クゥアルコム・インコーポレイテッドQualcomm Incorporated サイズとイントラモードとに基づいて又はエッジ検出に基づいてイントラブロック符号化の周波数変換を適応させること
JP2013534795A (ja) * 2010-07-15 2013-09-05 クゥアルコム・インコーポレイテッド ビデオ符号化における固定小数点変換のための可変局所ビット深度増加
JP2015521826A (ja) * 2012-06-29 2015-07-30 キヤノン株式会社 画像を符号化または復号するための方法およびデバイス

Also Published As

Publication number Publication date
US20210409770A1 (en) 2021-12-30
CN110800296A (zh) 2020-02-14
WO2019003676A1 (ja) 2019-01-03

Similar Documents

Publication Publication Date Title
US10841580B2 (en) Apparatus and method of adaptive block filtering of target slice based on filter control information
RU2656718C1 (ru) Устройство и способ обработки изображений
JP6580648B2 (ja) 画像処理装置および記録媒体
KR102005209B1 (ko) 화상 처리 장치와 화상 처리 방법
US8861848B2 (en) Image processor and image processing method
JP6521013B2 (ja) 画像処理装置および方法、プログラム、並びに記録媒体
WO2014002896A1 (ja) 符号化装置および符号化方法、復号装置および復号方法
JP5884313B2 (ja) 画像処理装置、画像処理方法、プログラム及び記録媒体
US20150036758A1 (en) Image processing apparatus and image processing method
US20120257681A1 (en) Image processing device and method and program
JPWO2019003676A1 (ja) 画像処理装置と画像処理方法およびプログラム
US11039133B2 (en) Image processing apparatus and image processing method for inhibiting application of an offset to pixels of an image
JP2013150164A (ja) 符号化装置および符号化方法、並びに、復号装置および復号方法
WO2013047325A1 (ja) 画像処理装置および方法
JP6217826B2 (ja) 画像処理装置及び画像処理方法
WO2013027472A1 (ja) 画像処理装置および画像処理方法

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20210412

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20220222

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20220823