IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ エルジー エレクトロニクス インコーポレイティドの特許一覧

特許7173961映像符号化/復号化方法及びそのための装置
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2022-11-08
(45)【発行日】2022-11-16
(54)【発明の名称】映像符号化/復号化方法及びそのための装置
(51)【国際特許分類】
   H04N 19/117 20140101AFI20221109BHJP
   H04N 19/86 20140101ALI20221109BHJP
   H04N 19/96 20140101ALI20221109BHJP
   H04N 19/176 20140101ALI20221109BHJP
   H04N 19/136 20140101ALI20221109BHJP
【FI】
H04N19/117
H04N19/86
H04N19/96
H04N19/176
H04N19/136
【請求項の数】 11
(21)【出願番号】P 2019510414
(86)(22)【出願日】2017-08-21
(65)【公表番号】
(43)【公表日】2019-09-05
(86)【国際出願番号】 KR2017009106
(87)【国際公開番号】W WO2018038492
(87)【国際公開日】2018-03-01
【審査請求日】2020-08-20
(31)【優先権主張番号】62/377,671
(32)【優先日】2016-08-21
(33)【優先権主張国・地域又は機関】US
(73)【特許権者】
【識別番号】502032105
【氏名又は名称】エルジー エレクトロニクス インコーポレイティド
【氏名又は名称原語表記】LG ELECTRONICS INC.
【住所又は居所原語表記】128, Yeoui-daero, Yeongdeungpo-gu, 07336 Seoul,Republic of Korea
(74)【代理人】
【識別番号】100099759
【弁理士】
【氏名又は名称】青木 篤
(74)【代理人】
【識別番号】100123582
【弁理士】
【氏名又は名称】三橋 真二
(74)【代理人】
【識別番号】100165191
【弁理士】
【氏名又は名称】河合 章
(74)【代理人】
【識別番号】100114018
【弁理士】
【氏名又は名称】南山 知広
(74)【代理人】
【識別番号】100159259
【弁理士】
【氏名又は名称】竹本 実
(72)【発明者】
【氏名】チャン ヒョンムン
(72)【発明者】
【氏名】ナム チョンハク
【審査官】清山 昂平
(56)【参考文献】
【文献】特表2013-524715(JP,A)
【文献】特表2014-516219(JP,A)
【文献】特表2014-525193(JP,A)
【文献】特表2014-511632(JP,A)
【文献】Thomas Wiegand, et al.,WD1: Working Draft 1 of High-Efficiency Video Coding,Joint Collaborative Team on Video Coding (JCT-VC) of ITU-T SG16 WP3 and ISO/IEC JTC1/SC29/WG11,JCTVC-C403,2011年01月06日
(58)【調査した分野】(Int.Cl.,DB名)
H04N19/00-19/98
IEEE Xplore
(57)【特許請求の範囲】
【請求項1】
復号化装置が映像をフィルタリングする方法において
記映像のブロックの境界の内のデブロッキングフィルタが適用されるエッジを決定する段階と、
前記ブロックの幅又は高さに基づいて、前記決定されたエッジのための前記デブロッキングフィルタのタイプを決定する段階と、
前記デブロッキングフィルタの前記タイプに基づいて、復元されたピクチャのサンプルに対してデブロッキングフィルタリングを実行する段階と、を含み、
前記デブロッキングフィルタの前記タイプは、前記デブロッキングフィルタが使用される前のピクセルに基づいて決定され、
色彩ブロックがイントラ予測ブロックであることに基づいて、前記デブロッキングフィルタが適用される前記エッジ及び前記デブロッキングフィルタの前記タイプは、前記色彩ブロックに対して決定される、方法。
【請求項2】
前記エッジのタイプが垂直エッジである場合、前記幅が8以上であるブロックの境界の内でのみ、前記デブロッキングフィルタが適用される前記エッジが決定される、請求項1に記載の方法。
【請求項3】
前記エッジのタイプが水平エッジである場合、前記高さが8以上であるブロックの境界の内でのみ、前記デブロッキングフィルタが適用される前記エッジが決定される、請求項1に記載の方法。
【請求項4】
前記エッジのタイプが垂直エッジであり、前記ブロックの幅が4以下である場合、前記デブロッキングフィルタの前記タイプは、弱いフィルタに決定される、請求項1に記載の方法。
【請求項5】
前記エッジのタイプが水平エッジであり、前記ブロックの高さが4以下である場合、前記デブロッキングフィルタの前記タイプは、弱いフィルタに決定される、請求項1に記載の方法。
【請求項6】
前記エッジのタイプが垂直エッジであり、前記ブロックの幅が4以下である場合、前記デブロッキングフィルタの前記タイプは、強いフィルタに決定され、
前記強いフィルタは、前記エッジの左側及び右側の2つの隣接するピクセル列のみに使用される、請求項1に記載の方法。
【請求項7】
前記エッジのタイプが水平エッジであり、前記ブロックの高さが4以下である場合、前記デブロッキングフィルタの前記タイプは、強いフィルタに決定され、
前記強いフィルタは、前記エッジの上側及び下側の2つの隣接するピクセル列のみに使用される、請求項1に記載の方法。
【請求項8】
前記デブロッキングフィルタリングが使用される前に、ピクセルに基づいて、前記デブロッキングフィルタが適用される前記エッジが決定される、請求項1に記載の方法。
【請求項9】
映像をフィルタリングする復号化装置において
記映像のブロックの境界の内のデブロッキングフィルタが適用されるエッジを決定するエッジ決定部と、
前記ブロックの幅又は高さに基づいて、前記決定されたエッジのための前記デブロッキングフィルタのタイプを決定するフィルタリングタイプ決定部と、
前記デブロッキングフィルタの前記タイプに基づいて、復元されたピクチャのサンプルに対してデブロッキングフィルタリングを実行するフィルタリング部と、を含み、
前記デブロッキングフィルタの前記タイプは、前記デブロッキングフィルタが使用される前のピクセルに基づいて決定され、
色彩ブロックがイントラ予測ブロックであることに基づいて、前記デブロッキングフィルタが適用される前記エッジ及び前記デブロッキングフィルタの前記タイプは、前記色彩ブロックに対して決定される、装置。
【請求項10】
符号化装置が映像をフィルタリングする方法において
記映像のブロックの境界の内のデブロッキングフィルタが適用されるエッジを決定する段階と、
前記ブロックの幅又は高さに基づいて、前記決定されたエッジのための前記デブロッキングフィルタのタイプを決定する段階と、
前記デブロッキングフィルタの前記タイプに基づいて、復元されたピクチャのサンプルに対してデブロッキングフィルタリングを実行する段階と、を含み、
前記デブロッキングフィルタの前記タイプは、前記デブロッキングフィルタが使用される前のピクセルに基づいて決定され、
色彩ブロックがイントラ予測ブロックであることに基づいて、前記デブロッキングフィルタが適用される前記エッジ及び前記デブロッキングフィルタの前記タイプは、前記色彩ブロックに対して決定される、方法。
【請求項11】
映像のためのビットストリームを含むデータの送信の方法において、
前記映像のための前記ビットストリームを取得する段階と、
前記ビットストリームの前記データを送信する段階と、を含み、
前記ビットストリームは
記映像のブロックの境界の内のデブロッキングフィルタが適用されるエッジを決定する段階と、
前記ブロックの幅又は高さに基づいて、前記決定されたエッジのための前記デブロッキングフィルタのタイプを決定する段階と、
前記デブロッキングフィルタの前記タイプに基づいて、復元されたピクチャのサンプルに対してデブロッキングフィルタリングを実行する段階と、
を実行することによって生成され、
前記デブロッキングフィルタの前記タイプは、前記デブロッキングフィルタが使用される前のピクセルに基づいて決定され、
色彩ブロックがイントラ予測ブロックであることに基づいて、前記デブロッキングフィルタが適用される前記エッジ及び前記デブロッキングフィルタの前記タイプは、前記色彩ブロックに対して決定される、方法。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、静止映像または動映像の処理方法に関し、さらに詳細にはデブロッキング(de-blocking)フィルタリングを実行する方法と、これを支援する装置に関する。
【背景技術】
【0002】
圧縮符号化とは、デジタル化した情報を通信回線を介して送信したり、格納媒体に適した形態で格納するための一連の信号処理技術を意味する。画像、イメージ、音声等のメディアが圧縮符号化の対象になることができ、特に、画像を対象として圧縮符号化を行う技術をビデオ画像圧縮と称する。
【0003】
次世代ビデオコンテンツは、高解像度(high spatial resolution)、高フレーム率(high frame rate)、及び画像表現の高次元化(high dimensionality of scenerepresentation)という特徴を有するようになるであろう。そのようなコンテンツを処理するためには、メモリ格納(memory storage)、メモリアクセス率(memory access rate)、及び処理電力(processing power)の側面で莫大な増加を有してくるであろう。
【0004】
したがって、次世代ビデオコンテンツをより効率的に処理するためのコーディングツールをデザインする必要がある。
【発明の概要】
【発明が解決しようとする課題】
【0005】
本発明の目的は、クワッドツリーとバイナリツリー(QTBT:Quad-Tree Binary-Tree)構造において後フィルタ(またはインループフィルタ)を効果的に実行するための方法及びこれを支援する装置を提案する。
【0006】
また、本発明の目的は、明暗(輝度)成分だけでなく、色差成分で条件に応じてデブロッキングフィルタリングを適応的に適用する方法及びこれを支援する装置を提案する。
【0007】
本発明で解決しようとする技術的課題は、以上で言及した技術的課題に限定されるものではなく、言及しないまた他の技術的課題は、下の記載から、本発明が属する技術分野で通常の知識を有する者に明確に理解されることができる。
【課題を解決するための手段】
【0008】
本発明の一様相は、復号化装置が映像をフィルタリングする方法において、クワッドツリー(quad-tree)とバイナリツリー(binary-tree)構造に分割されたブロックの境界を導出する段階と、前記ブロックの境界の内、デブロッキング(de-blocking)フィルタリングが適用されるエッジ(edge)を決定する段階と、前記エッジに適用されるデブロッキングフィルタリングのタイプを決定する段階及び、前記デブロッキングフィルタリングのタイプに応じて、復元されたピクチャのサンプルにデブロッキングフィルタリングを実行する段階を含み、前記ブロックの幅(width)または高さ(height)を考慮して前記エッジ(edge)または前記デブロッキングフィルタリングのタイプが決定されることができる。
【0009】
本発明の他の一様相は、映像をフィルタリングする復号化装置において、クワッドツリー(quad-tree)とバイナリツリー(binary-tree)構造に分割されたブロックの境界を導出するブロック境界導出部、前記ブロックの境界の内、デブロッキング(de-blocking)フィルタリングが適用されるエッジ(edge)を決定するエッジ決定部と、前記エッジに適用されるデブロッキングフィルタリングのタイプを決定するフィルタリングのタイプ決定部及び、前記デブロッキングフィルタリングのタイプに応じて、復元されたピクチャのサンプルにデブロッキングフィルタリングを実行するフィルタリング部とを含み、前記ブロックの幅(width)または高さ(height)を考慮して前記エッジまたは前記デブロッキングフィルタリングのタイプが決定されることができる。
【0010】
好ましくは、前記エッジのタイプが垂直エッジ(vertical edge)である場合、前記ブロックの幅が4以下であれば、既にデブロッキングフィルタリングが適用されたピクセルに基づいて、前記エッジが決定されることができる。
【0011】
好ましくは、前記エッジのタイプが水平エッジ(horizontal edge)である場合、前記ブロックの高さが4以下であれば、既にデブロッキングフィルタリングが適用されたピクセルに基づいて、前記エッジが決定されることができる。
【0012】
好ましくは、前記エッジのタイプが垂直エッジ(vertical edge)である場合、前記ブロックの幅が4以下であれば、既にデブロッキングフィルタリングが適用されたピクセルに基づいて、前記デブロッキングフィルタリングのタイプが決定されることができる。
【0013】
好ましくは、前記エッジのタイプが水平エッジ(horizontal edge)である場合、前記ブロックの高さが4以下であれば、既にデブロッキングフィルタリングが適用されたピクセルに基づいて、前記デブロッキングフィルタリングのタイプが決定されることができる。
【0014】
好ましくは、前記エッジのタイプが垂直エッジ(vertical edge)である場合、前記ブロックの幅が8以上のブロックの境界の内にのみ、前記エッジが決定されることができる。
【0015】
好ましくは、前記エッジのタイプが水平エッジである場合、前記ブロックの高さが8以上のブロックの境界の内にのみ、前記エッジが決定されることができる。
【0016】
好ましくは、前記エッジのタイプが垂直エッジである場合、前記ブロックの幅が4以下であれば、前記デブロッキングフィルタリングのタイプは、弱いフィルタリングに決定することができる。
【0017】
好ましくは、前記エッジのタイプが水平エッジである場合、前記ブロックの高さが4以下であれば、前記デブロッキングフィルタリングのタイプは、弱いフィルタリングに決定することができる。
【0018】
好ましくは、前記エッジのタイプが垂直エッジである場合、前記ブロックの幅が4以下であれば、前記デブロッキングフィルタリングのタイプは、強いフィルタリングで決定され、前記強いフィルタリングは、前記エッジの左側及び右側にそれぞれ隣接する2つのピクセル列にのみ適用することができる。
【0019】
好ましくは、前記エッジのタイプが水平エッジである場合、前記ブロックの高さが4以下であれば、前記デブロッキングフィルタリングのタイプは、強いフィルタリングで決定され、前記強いフィルタリングは、前記エッジの上側及び下側にそれぞれ隣接する2つのピクセル列にのみ適用することができる。
【0020】
好ましくは、デブロッキングフィルタリングが適用される前に、ピクセルに基づいて、前記エッジが決定されることができる。
【0021】
好ましくは、デブロッキングフィルタリングが適用される前に、ピクセルに基づいて、前記デブロッキングフィルタリングのタイプが決定されることができる。
【0022】
好ましくは、前記ブロックが属するスライスがイントラスライス(I-slice:Intra slice)である場合、前記ブロックが色彩ブロック(chroma block)かどうかとは無関係に、前記エッジ及び前記デブロッキングフィルタリングのタイプが決定されることができる。
【発明の効果】
【0023】
本発明の実施形態に係れば、QTBT構造でデブロッキングフィルタを効率的に適用することにより、静止映像または動映像の主観的画質と客観的画質を向上させることができる。
【0024】
また、本発明の実施形態に係れば、並列化を介してデブロッキングフィルタリングの高速化を達成することができる。
【0025】
本発明で得られる効果は、以上で言及した効果に制限されず、言及しないまた他の効果は以下の記載から、本発明が属する技術分野で通常の知識を有する者に明確に理解される。
【図面の簡単な説明】
【0026】
本発明に関する理解を助けるために、詳細な説明の一部として含まれる添付図面は、本発明に対する実施形態を提供し、詳細な説明とともに本発明の技術的特徴を説明する。
図1図1は、本発明が適用される実施形態として、ビデオ信号のエンコードが行われるエンコーダの概略的なブロック図である。
図2図2は、本発明が適用される実施形態として、ビデオ信号のデコードが行われるデコーダの概略的なブロック図を示す図である。
図3図3は、本発明が適用される実施形態として、コーディングユニットの分割構造を説明するための図である。
図4図4は、本発明が適用される実施形態として、コーディングユニットの分割構造の内、クワッドツリーバイナリツリーを説明するための図である。
図5図5は、本発明が適用される実施形態として、インループフィルタリング部の概略的な内部ブロック図を示す。
図6図6は、HEVCのデブロッキングフィルタのフィルタリングを実行する方法を例示する図である。
図7図7は、HEVCのデブロッキングフィルタリングのフィルタリングの実行境界を例示する図である。
図8図8は、HEVCのフィルタリングを実行するかどうかを決定する方法を説明するための図である。
図9図9は、HEVCのデブロッキングフィルタリングが適用されるピクセル領域を例示する図である。
図10図10は、本発明が適用される実施形態として、QTBT分割構造を例示する図である。
図11図11図21は、QTBT分割構造にHEVCデブロッキングフィルタリング方法を適用する場合の問題点を説明するための図である。
図12図11図21は、QTBT分割構造にHEVCデブロッキングフィルタリング方法を適用する場合の問題点を説明するための図である。
図13図11図21は、QTBT分割構造にHEVCデブロッキングフィルタリング方法を適用する場合の問題点を説明するための図である。
図14図11図21は、QTBT分割構造にHEVCデブロッキングフィルタリング方法を適用する場合の問題点を説明するための図である。
図15図11図21は、QTBT分割構造にHEVCデブロッキングフィルタリング方法を適用する場合の問題点を説明するための図である。
図16図11図21は、QTBT分割構造にHEVCデブロッキングフィルタリング方法を適用する場合の問題点を説明するための図である。
図17図11図21は、QTBT分割構造にHEVCデブロッキングフィルタリング方法を適用する場合の問題点を説明するための図である。
図18図11図21は、QTBT分割構造にHEVCデブロッキングフィルタリング方法を適用する場合の問題点を説明するための図である。
図19図11図21は、QTBT分割構造にHEVCデブロッキングフィルタリング方法を適用する場合の問題点を説明するための図である。
図20図11図21は、QTBT分割構造にHEVCデブロッキングフィルタリング方法を適用する場合の問題点を説明するための図である。
図21図11図21は、QTBT分割構造にHEVCデブロッキングフィルタリング方法を適用する場合の問題点を説明するための図である。
図22図22は、本発明の一実施形態に係るデブロッキングフィルタの種類を決定するための方法を例示する図である。
図23図23は、本発明の一実施形態に係るデブロッキングフィルタリング方法を例示する図である。
図24図24は、本発明の一実施形態に係るデブロッキングフィルタリング方法を例示する図である。
図25図25は、本発明の一実施形態に係るデブロッキングフィルタリング方法を例示する図である。
図26図26は、本発明の一実施形態に係るデブロッキングフィルタリング方法を例示する図である。
図27図27は、本発明の一実施形態に係る強いフィルタリング方法を例示する図である。
図28図28は、本発明の一実施形態に係る強いフィルタリング方法を例示する図である。
図29図29は、垂直エッジ(vertical edge)フィルタリング時に横の長さが4以下のブロックでフィルタリングの実行結果を例示する図である。
図30図30は、本発明の一実施形態に係るフィルタリングを実行するかどうか、及びフィルタの選択方法を例示する図である。
図31図31は、本発明の一実施形態に係るデブロッキングフィルタリング方法を例示する図である。
図32図32は、QTBTブロック分割構造でHEVCデブロッキングフィルタリングを同様に適用する時に発生する問題点を説明するための図である。
図33図33は、本発明の一実施形態に係るデブロッキングフィルタリング方法を例示する図である。
図34図34は、本発明の一実施形態に係るデブロッキングフィルタリング処理部を例示する図である。
図35図35は、本発明の一実施形態に係るデブロッキングフィルタリング処理部を例示する図である。
【発明を実施するための形態】
【0027】
以下、本発明に係る好ましい実施形態を添付された図面を参照して詳細に説明する。添付された図面とともに以下に開示される詳細な説明は、本発明の例示的な実施形態を説明しようとするものであり、本発明が実施され得る唯一の実施形態を表そうとするものではない。以下の詳細な説明は、本発明の完全な理解を提供するために具体的な細部事項を含む。しかしながら、当業者は、本発明がこのような具体的な細部事項がなくとも実施され得ることが分かる。
【0028】
いくつかの場合、本発明の概念が曖昧になることを避けるために、公知の構造及び装置は省略されるか、各構造及び装置の核心機能を中心としたブロック図形式で図示されることができる。
【0029】
合わせて、本発明で使用される用語は、なるべく現在広く使用される一般的な用語を選択したが、特定の場合は、出願人が任意に選定した用語を使用して説明する。そのような場合には、当該部分の詳細説明でその意味を明確に記載するので、本発明の説明で使用された用語の名称だけで単純に解釈されてはならず、その当該用語の意味まで把握して解釈されなければならないことを明かしておく。
【0030】
以下の説明で使用される特定用語等は、本発明の理解を助けるために提供されたものにおいて、このような特定用語の使用は、本発明の技術的思想を逸脱しない範囲で他の形態に変更されることができる。例えば、信号、データ、サンプル、ピクチャ、フレーム、ブロックなどの場合、各コーディング過程で適宜代替されて解釈され得るであろう。
【0031】
以下、本明細書において「ブロック」または「ユニット」は、予測、変換及び/又は量子化などのようなエンコード/デコードの過程が行われる単位を意味し、サンプル(または、ピクセル、ピクセル)の多次元配列で構成されることができる。
【0032】
「ブロック」または「ユニット」は、輝度(luma)成分に対するサンプルの多次元配列を意味することができ、色差(chroma)成分に対するサンプルの多次元配列を意味することもできる。また、輝度(luma)成分に対するサンプルの多次元配列と色差(chroma)成分に対するサンプルの多次元配列とを全て含むように総称することもできる。
【0033】
例えば、「ブロック」または「ユニット」は、エンコード/デコードの実行対象になるサンプルの配列を意味するコーディングブロック(CB:Coding Block)、複数のコーディングブロックで構成されるコーディングツリーブロック(CTB:Coding Tree Block)、同じ予測が適用されるサンプルの配列を意味する予測ブロック(PB:Prediction Block)(または、予測ユニット(PU:Prediction Unit))、同じ変換が適用されるサンプルの配列を意味する変換ブロック(TB:Transform Block)(または、変換ユニット(TU:Transform Unit))を全て含む意味と解釈されることができる。
【0034】
また、本明細書で別の言及がない限り、「ブロック」または「ユニット」は、輝度(luma)成分及び/又は色差(chroma)成分に対するサンプルの配列をエンコード/デコードする過程で利用されるシンタックス構造(syntax structure)を含む意味と解釈されることができる。ここで、シンタックス構造は、特定の順序でビットストリーム内に存在する0またはそれ以上のシンタックス要素(syntax element)を意味し、シンタックス要素は、ビットストリーム内で表現されるデータの要素を意味する。
【0035】
例えば、「ブロック」または「ユニット」は、コーディングブロックCBと当該コーディングブロックCBのエンコードのために利用されるシンタックス構造を含むコーディングユニット(CU:Coding Unit)、複数のコーディングユニットで構成されるコーディングツリーユニット(CU:Coding Tree Unit)、予測ブロックPBと当該予測ブロックPBの予測のために利用されるシンタックス構造を含む予測ユニット(PU:Prediction Unit)、変換ブロックTBと当該変換ブロックTBの変換のために利用されるシンタックス構造を含む変換ユニット(TU:Transform Unit)を全て含む意味と解釈されることができる。
【0036】
また、本明細書で「ブロック」または「ユニット」は、必ずしも正方形または長方形の形態のサンプル(または、ピクセル、ピクセル)の配列に限定されるものではなく、3個以上の頂点を有する多角形の形態のサンプル(または、ピクセル、ピクセル)の配列を意味することもできる。この場合、ポリゴン(Polygon)ブロックまたはポリゴンユニットと呼ばれることもできる。
【0037】
図1は、本発明が適用される実施形態として、ビデオ信号のエンコードが行われるエンコーダの概略的なブロック図を示す。
【0038】
図1を参照すると、エンコーダ100は、映像分割部110、変換部120、量子化部130、逆量子化部140、逆変換部150、フィルタリング部160、復号ピクチャバッファ(DPB:Decoded picture Buffer)170、インター予測部180、イントラ予測部185及びエントロピーエンコード部190を含んで構成されることができる。
【0039】
映像分割部110は、エンコーダ100に入力された入力映像(または、ピクチャ、フレーム)を1つ以上の処理ユニットに分割することができる。例えば、前記の処理ユニットは、コーディングツリーユニット(CTU:Coding Tree Unit)、コーディングユニット(CU:Coding Unit)、予測ユニット(PU:Prediction Unit)または変換ユニット(TU:Transform Unit)で有り得る。
【0040】
エンコーダ100は、入力映像信号からインター予測部180またはイントラ予測部185から出力された予測信号を減算して残りの信号(residual signal)を生成することができ、生成された残りの信号は、変換部120に伝送される。
【0041】
変換部120は、残りの信号に変換技法を適用して変換係数(transform coefficient)を生成することができる。たとえば、変換技法は、DCT(Discrete Cosine Transform)、DST(Discrete Sine Transform)、KLT(Karhunen-LoeveTransform)、GBT(Graph-Based Transform)、またはCNT(Conditionally Non-linear Transform)の内、少なくとも一つを含むことができる。ここで、GBTは、ピクセル間の関係情報をグラフで表現するとしたときに、このグラフから得られた変換を意味する。CNTは、以前に復元されたすべてのピクセル(all previously reconstructed pixel)を用いて予測信号を生成し、それに基づいて獲得される変換を意味する。また、変換過程は、正方形の同じサイズを有するピクセルブロックに適用されることもあり、正方形ではない可変サイズのブロックにも適用することができる。
【0042】
量子化部130は、変換係数を量子化してエントロピーエンコード部190に伝送し、エントロピーエンコード部190は、量子化された信号をエントロピーエンコードしてビットストリームに出力することができる。
【0043】
量子化部130から出力された量子化された信号は、予測信号を生成するために利用されることがある。例えば、量子化された信号は、ループ内の逆量子化部140及び逆変換部150を介して逆量子化及び逆変換を適用することにより、残りの信号を復元することができる。復元された残りの信号をインター予測部180またはイントラ予測部185から出力された予測信号に加えることで復元信号が生成されることができる。
【0044】
フィルタリング部160は、復元信号にフィルタリングを適用して、これを再生装置に出力したり、復号ピクチャバッファ170に伝送する。復号ピクチャバッファ170に伝送されたフィルタリングされた信号は、インター予測部180から参照ピクチャとして使用することができる。このように、フィルタリングされたピクチャを画面間予測モードで参照ピクチャとして利用することにより、画質だけでなく、符号化効率も向上させることができる。
【0045】
復号ピクチャバッファ170は、フィルタリングされたピクチャをインター予測部180からの参照ピクチャとして使用するために格納することができる。
【0046】
インター予測部180は、復元ピクチャを参照して時間的重複性及び/または空間的重複性を除去するために時間的予測、及び/または空間的予測を行う。このとき、インター予測モードで伝送される動き情報の量を減らすために周囲のブロックと現在のブロックの間の動き情報の相関性に基づいて動き情報を予測することができる。
【0047】
イントラ予測部185は、現在符号化を進行しようとするブロックの周辺にあるサンプルを参照して、現在のブロックを予測することができる。前記イントラ予測部185は、イントラ予測を実行するために、次のような過程を実行することができる。まず、予測信号を生成するために必要な参照サンプルを準備することができる。そして、準備された参照サンプルを用いて予測信号を生成することができる。以後、予測モードを符号化することになる。このとき、参照サンプルは、参照サンプルパディング及び/または参照サンプルのフィルタリングを介して準備することができる。参照サンプルは、予測及び復元の過程を経たため、量子化誤差が存在することができる。したがって、このようなエラーを減らすためにイントラ予測に利用される各予測モードに対して参照サンプルのフィルタリング過程が実行されることができる。
【0048】
前記インター予測部180または前記イントラ予測部185を介して生成された予測信号は、復元信号を生成するために利用されるか、または残りの信号を生成するために用いることができる。
【0049】
図2は、本発明が適用される実施形態として、ビデオ信号のデコードが行われるデコーダの概略的なブロック図を示す。
【0050】
図2を参照すると、デコーダ200は、エントロピーデコード部210、逆量子化部220)、逆変換部230、フィルタリング部240、復号ピクチャバッファ(DPB:Decoded picture Buffer Unit)250、インター予測部260及びイントラ予測部265を含んで構成されることができる。
【0051】
そして、デコーダ200を介して出力された復元映像信号は、再生装置を介して再生することができる。
【0052】
デコーダ200は、図1のエンコーダ100から出力された信号を受信することができ、受信された信号は、エントロピーデコード部210を介して、エントロピーデコードすることができる。
【0053】
逆量子化部220においては、量子化段階サイズ情報を用いて、エントロピーデコードされた信号から変換係数(transform coefficient)を獲得する。
【0054】
逆変換部230では、変換係数を逆変換して残りの信号を獲得することになる。
【0055】
獲得された残りの信号をインター予測部260またはイントラ予測部265から出力された予測信号に加えることで復元信号が生成される。
【0056】
フィルタリング部240は、復元信号にフィルタリングを適用して、これを再生装置に出力したり、復号ピクチャバッファ部250に伝送する。復号ピクチャバッファ部250に伝送されたフィルタリングされた信号は、インター予測部260から参照ピクチャとして使用することができる。
【0057】
本明細書において、エンコーダ100のフィルタリング部160、インター予測部180及びイントラ予測部185で説明された実施形態は、それぞれデコーダのフィルタリング部240、インター予測部260及びイントラ予測部265にも同様に適用することができる。
【0058】
映像分割(image patitioning)
【0059】
図3は、本発明が適用される実施形態として、コーディングユニットの分割構造を説明するための図である。
【0060】
エンコーダは、一つの映像(またはピクチャ)を四角形の形のコーディングツリーユニット(CTU:Coding Tree Unit)単位に分割することができる。そして、ラスタースキャン順(raster scan order)に応じて1つのCTUずつ順次エンコードする。
【0061】
一つのCTUは、クワッドツリー(quadtree、以下「QT」と称する)の構造に分解することができる。例えば、一つのCTUは正方形の形を有しながら、各辺の長さが半分ずつ減少する4つのユニットに分割されることができる。このようなQT構造の分解は、再帰的に実行されることができる。
【0062】
図3を参照すると、QTのルートノード(root node)は、CTUと関連することができる。QTはリーフノード(leaf node)に到達するまで分割することができ、この時、前記リーフノードは、コーディングユニット(CU:Coding Unit)と称することができる。
【0063】
図3を参照すると、CTUは、ルートノード(root node)に対応し、最小の深さ(depth)(即ち、レベル0)の値を有する。入力映像の特性に応じてCTUが分割されないことがあり、この場合、CTUはCUに相当する。
【0064】
CTUはQT形で分解されることができ、その結果、レベル1の深さを有する下位ノードが生成されることができる。そして、レベル1の深さを有する下位ノードでこれ以上分割されないノード(即ち、リーフノード)は、CUに相当する。例えば、図3(b)でノードa、b及びjに対応するCU(a)、CU(b)、CU(j)は、CTUで一度分割されており、レベル1の深さを有する。
【0065】
一つのCUに対して、当該CUが分割されるかどうかを示す情報がデコーダに伝達されることができる。例えば、前記情報は、分割フラグとして定義することができ、シンタックス要素(syntax element)「split_CU_flag」で表現されることができる。前記分割フラグはSCUを除外したすべてのCUに含まれることができる。例えば、前記分割フラグの値が「1」であれば、当該CUは再び4つのCUに分かれ、前記分割フラグの値が「0」であれば、そのCUは、これ以上分かれないで、そのCUのコーディング(符号化)過程が実行されることができる。
【0066】
先に図3の実施形態においては、CUの分割過程について例に挙げて説明したが、変換を実行する基本単位である変換ユニット(TU:Transform Unit)の分割過程に対しても、前述したQT構造を適用することができる。
【0067】
TUはコーディングしようとするCUからQT構造に階層的に分割することができる。たとえば、CUは変換ユニット(TU)のツリーのルートノード(root node)に対応することがある。
【0068】
TUはQT構造に分割されるので、CUから分割されたTUは再びさらに小さな下位TUに分割されることができる。たとえば、TUのサイズは32x32、16x16、8x8、4x4の内、いずれか1つに決まることがあるが、本発明はこれに限定されず、高解像度の映像である場合、TUのサイズはさらに大きくなるか、多様化することがある。
【0069】
一つのTUに対して、当該TUが分割されるかどうかを示す情報がデコーダに伝達されることができる。例えば、前記情報は、分割変換フラグとして定義されることができ、シンタックス要素「split_transform_flag」で表現されることができる。
【0070】
前記で説明したように、CUは、イントラ予測またはインター予測が行われるコーディングの基本単位である。入力映像をより効果的にコーディングするためにCUを予測ユニット(PU:Prediction Unit)単位に分割することができる。
【0071】
PUは予測ブロックを生成する基本単位として、1つのCU内でもPU単位で互いに異なるように予測ブロックを生成することができる。PUはPUが属するCUのコーディングモードでイントラ予測モードが使用されるかインター予測モードが使用されるかに応じて異なるように分割することができる。
【0072】
図4は、本発明が適用される実施形態として、コーディングユニットの分割構造の内、クワッドツリーバイナリツリーを説明するための図である。
【0073】
エンコーダは、一つの映像(またはピクチャ)を四角形の形のコーディングツリーユニット(CTU:Coding Tree Unit)単位に分割することができる。そして、ラスタースキャン順(raster scan order)に応じて1つのCTUずつ順次エンコードする。
【0074】
一つのCTUは、クワッドツリー(quadtree、以下「QT」と称する)の構造とバイナリツリー(binarytree、以下BTと称する)に分解されることができる。例えば、一つのCTUは正方形の形を有しながら、各辺の長さが半分ずつ減少する4つのユニットに分割したり、長方形の形を有しながら、幅または高さの長さが半分ずつ減少する2つのユニットに分割することができる。このようなQTBT構造の分解は、再帰的に実行されることができる。
【0075】
図4を参照すると、QTのルートノード(root node)は、CTUと関連することができる。QTはQTリーフノード(QT leaf node)に到達するまで分割することができ、QTのリーフノードは、BTに分割することができ、BTリーフノードに到達するまでに分割されることができる。
【0076】
図4を参照すると、CTUは、ルートノード(root node)に対応し、最小の深さ(depth)(つまり、レベル0)の値を有する。入力映像の特性に応じてCTUが分割されないことがあり、この場合、CTUはCUに相当する。
【0077】
CTUはQT形で分解されることがあり、QTリーフノードはBT形で分割されることができる。その結果、レベルnの深さを有する下位ノードが生成されることができる。そして、レベルnの深さを有するサブノードでこれ以上分割されないノード(つまり、リーフノード)は、CUに相当する。
【0078】
一つのCUに対して、当該CUが分割されるかどうかを示す情報がデコーダに伝達されることができる。例えば、前記情報は、分割フラグとして定義することができ、シンタックス要素「split_CU_flag」で表現されることができる。また、QTリーフノードからBTに分割されるかどうかを示す情報がデコーダに伝達されることができる。例えば、前記情報は、BT分割フラグとして定義することができ、シンタックス要素(syntax element)「bt_split_flag」で表現されることができる。さらにsplit_bt_flaghによってBTに分割される場合、半分のサイズの幅を有する長方形または半分のサイズの高さを有する長方形の形に分割されるようにBT分割形状がデコーダに伝達することができる。例えば、前記情報は、BT分割モードで定義することができ、シンタックス要素「bt_split_mode」で表現されることができる。
【0079】
図5は、本発明が適用される実施形態として、インループフィルタリング部の概略的な内部ブロック図を示す。
【0080】
インループフィルタリング部はデブロッキングフィルタリング部510、適応的オフセットフィルタリング部520と適応的ループフィルタリング部530の内、少なくとも一つを含むことができる。
【0081】
前記インループフィルタリング部は復元ピクチャにフィルタリングを適用して再生装置に出力したり、バッファに格納してインター予測モードで参照ピクチャとして用いることができる。
【0082】
デブロッキングフィルタリング部510は、復元ピクチャの境界で発生する歪みを改善する機能を実行する。たとえば、予測ユニットや変換ユニットの境界で発生するブロッキング劣化を改善することができる。
【0083】
まず、デブロッキングフィルタリング部510は、ブロック境界で復元ピクセル値が不連続かどうかを確認し、ブロッキング劣化が発生した場合、そのエッジ境界でデブロッキングフィルタリングを実行することができる。例えば、ブロック境界が8x8ブロック境界でありながら、予測ユニットや変換ユニットの境界であるのかを判断し、それに基づいて境界強度(BS:Boundary Strength)値を算出することができる。前記境界強度(BS)値に基づいてフィルタリングを実行するかどうかを決定することができ、この時、フィルタリングパラメータを一緒に用いることができる。
【0084】
デブロッキングフィルタリング部510のフィルタリングを実行する方法について、より詳細な説明は後述する。
【0085】
適応的オフセットフィルタリング部520は、復元ピクセルにオフセットを加算して復元映像と元映像との間のエラーを最小化する機能を実行することができる。ここで、前記復元映像は、デブロッキングフィルタリングされた映像を意味することができる。エンコーダの場合、復元映像と元映像との間の誤差を補正するためのオフセットパラメータを算出して、これをデコーダに伝送し、デコーダの場合、伝送されたオフセットパラメータをエントロピー復号化した後、それに基づいてピクセル単位でフィルタリングを行うことができる。
【0086】
適応的ループフィルタリング部530は、元の映像と復元映像との誤差を最小化させる最適な係数を算出してフィルタリングを行うことができる。エンコーダの場合、元映像と復元映像との誤差を最小にするフィルタ係数を誘導し、適応的にブロックごとに適応的ループフィルタリングを適用するかどうかについての情報及びフィルタ係数をデコーダに伝送することができる。デコーダの場合、伝送された適応的ループフィルタリングを適用するかどうかについての情報及びフィルタ係数に基づいてフィルタリングを行うことができる。
【0087】
図6は、HEVCのデブロッキングフィルタのフィルタリングを実行する方法を例示する図である。
【0088】
図6を参照すると、デブロッキングフィルタは、デブロッキングフィルタリングを適用するための境界を決定する。
【0089】
ただし、このとき、境界の決定は、デブロッキングフィルタリングが必要な位置(つまり、境界)だけを決定するものであり、実際のフィルタリングを実行するかは、S604段階でフィルタオン/オフ(filter on/off)段階で決定される。
【0090】
デブロッキングフィルタのための境界の種類は、CU(Coding Unit)境界、PU(Prediction Unit)境界、TU(Transform Unit)境界の3つで区分されることができる。一つのCU境界はPUまたはTU境界に対応することができるので、フィルタリングを実行すべき警戒対象に該当することができる。
【0091】
デブロッキングフィルタリングは、BSを計算する(S602)。つまり、デブロッキングフィルタは、境界に隣接するブロックの特性に応じて、他の強度のデブロッキングフィルタを実行するために、境界強度BS(Boundary Strength)を決定する。
【0092】
デブロッキングフィルタリングは、フィルタリングを実行するかどうか、及びフィルタリングの選択などのしきい値として使用されるパラメータであるβ、t_cを決定する(S603)。
【0093】
デブロッキングフィルタリングは、フィルタのオン/オフ(Filter on/off decision)を行う(S604)。つまり、デブロッキングフィルタは、フィルタユニット単位でフィルタリングを実行するかどうかを決定する。
【0094】
デブロッキングフィルタは、フィルタリングが実行される境界で強いフィルタ(strong filter)を適用するか、弱いフィルタ(weak filter)を適用するかを決定する(S605)。
【0095】
デブロッキングフィルタは、ピクセルを決まったフィルタでフィルタリングを実行する(S606、S607)。
【0096】
QTBT(Quad-Tree Binary-Tree)構造のためのデブロッキング(De-Blocking)フィルタリング方法
【0097】
本発明の実施形態を説明する前に、HEVCのデブロッキングフィルタの特性とQTBT構造でデブロッキングフィルタの動作を説明しQTBTのデブロッキングフィルタの問題点について注意深く見る。
【0098】
まずHEVCのデブロッキングフィルタは、予測ブロック(PB:Prediction Block)の境界と変換ブロック(TB:Transform Block)の境界でフィルタリングを行う。しかし、QTBTの場合、変換ブロックと予測ブロックの境界が別にないので、コーディングブロック(CB:Coding Block)境界面でフィルタリングを行うことができる。
【0099】
もちろんHEVCとQTBTのデブロッキングフィルタは、すべての境界面で無条件にフィルタリングを実行するのではなく、特定の条件が満たされた場合にのみ、(先の図6のS604段階で判断)強いフィルタリング(strong filtering)と弱いフィルタリング(weak filtering)を選択的に実行する。反面、条件が満たされない場合、境界面がこれに該当してもフィルタリングを実行しない。
【0100】
図7は、HEVCのデブロッキングフィルタのフィルタリングの実行境界を例示する図である。
【0101】
図7(a)は、デブロッキングフィルタのフィルタリングの実行境界として垂直エッジ(vertical edge)を例示し、図7(b)は、デブロッキングフィルタのフィルタリングの実行境界として水平エッジ(horizontal edge)を例示する。
【0102】
図7から分かるようにHEVCのデブロッキングフィルタは、予測ブロックの境界と変換ブロックの境界で実行される。しかし、すべての予測ブロック境界や変換ブロック境界でフィルタリングが実行されるものではなく、8x8以上のブロック境界でのみ実行される。これはデブロッキングフィルタの並列処理が考慮したと見られる。
【0103】
前述したように、ブロック境界でフィルタリングを実行するかどうかを決定し、フィルタリングの実行条件が満たされる時、強いフィルタと弱いフィルタを選択的に実行する。
【0104】
このとき、フィルタリングを実行するかどうかを決定するために、ブロック境界面に隣接するピクセルの値を確認する。これに対して、以下の図8を参照して、さらに注意深くに見る。
【0105】
図8は、HEVCのフィルタリングを実行するかどうかを決定する方法を説明するための図である。
【0106】
図8で実線は、ブロックの境界を示し、それぞれの円は一つのピクセル(例えば、輝度(luma)成分のサンプルまたは色差(chroma)成分のサンプル)を示す。
【0107】
図8を参照すると、ブロック境界面に隣接する各々3ピクセル(図8の陰影表示されたピクセル)をX軸とY軸成分をブロック境界に基づいてp(x、y)(またはq(x、y))とのような形で表記して図8のように表すことができる。そして、フィルタリングを実行条件を示す下の数式1に基づいて変数(パラメータ)dp0、dp3、dq0、dq3、dpq0、dpq3、dの値が計算されることができる。
【0108】
【数1】
【0109】
数式1によって計算された変数(パラメータ)dの値は、量子化パラメータ(Q)に基づいて決まる変数(パラメータ)β値と比較してd値がβより小さい場合にのみ、デブロッキングフィルタリングが行われる。
【0110】
ここで、量子化パラメータ(Q)及び変数(パラメータ)βを決定する方法に関連して、ITU-T H.265文書が、本明細書で参照として併合(incorporated by reference)される。
【0111】
前述したように、特定の条件によって、当該ブロック境界のピクセルがフィルタリングが実行される条件に該当すると、以下の数式2に基づいて強いフィルタ(strong filter)を適用するか、弱いフィルタ(weak filter)を適用するかが決定される。
【0112】
下数式2の条件に基づいて数式2のすべての条件が満足すれば、強いフィルタが、そうでない場合には、弱いフィルタが適用される。
【0113】
【数2】
【0114】
数式2で、変数(パラメータ)tc(つまり、t_c)は量子化パラメータ(Q)に基づいて決まられる。
【0115】
ここで、変数(パラメータ)tc(つまり、t_c)を決定する方法に関連して、ITU-T H.265文書が、本明細書で参照として引用(incorporated by reference)される。
【0116】
数式2の条件によって決まるフィルタの種類(つまり、強いフィルタまたは弱いフィルタ)に基づいてフィルタリングが適用されるピクセル領域は、以下のも異なる。
【0117】
図9は、HEVCのデブロッキングフィルタリングが適用されるピクセル領域を例示する図である。
【0118】
図9のように、強いフィルタまたは弱いフィルタが適用されるそれぞれのピクセル領域は、ブロック境界に基づいて異なる。
【0119】
前述したように、ブロック境界に基づいて左右または上下の3ピクセルを用いて、デブロッキングフィルタリングを適用するかどうかが決定される。そして、デブロッキングフィルタリングが適用される境界面で再びブロック境界に基づいて左右または上下の4ピクセルを用いて、デブロッキングフィルタの種類が決定される。
【0120】
前述したHEVCデブロッキングフィルタリング方法に関連して、ITU-T H.265文書は、本明細書で参照として引用される。
【0121】
このような理由から、HEVCは4x4予測ブロックまたは変換ブロック、8x4と4x8サイズの予測ブロックが発生することができるにもかかわらず、並列化のために8x8以上のブロック境界面でのみデブロッキングフィルタリングが適用される。
【0122】
反面、QTBTの場合、イントラスライス(I-slice:Intra slice)(つまり、イントラ予測のみが使用されてデコードされるスライス)で輝度(luma)と色差(chroma)のブロック構造が互いに違って、クワッドツリーとバイナリツリーによって、さまざまな形やサイズの符号化ブロックが発生することができる。
【0123】
図10は、本発明が適用される実施形態として、QTBT分割構造を例示する図である。
【0124】
図10に見られるように、すべてのブロック境界面でフィルタリングを実行しHEVCのデブロッキング方法を同様に使用しているために並列化だけでなく、chroma成分のフィルタリングが効果的に行われていない。
【0125】
図10によると、QTBTによって映像は、さまざまなサイズと形状の構造に分割されることができる。
【0126】
これにより、本発明においては、様々なブロック分割構造(つまり、様々なブロックのサイズと形状を有する分割構造)でデブロッキングフィルタを並列的に実行するための方法を提案する。
【0127】
図10で例示されたように、QTBTのデブロッキングフィルタは、HEVCのデブロッキングフィルタを同様に適用するが、8x8以上のブロック境界だけでなく、4x4、4x8、8x4、4x16などのブロック境界でもデブロッキングフィルタが実行されることができる。
【0128】
ただし、この場合、当該ブロック境界でのフィルタリングは、隣接するブロックの境界でのフィルタリングによるピクセル値の変化によって並列化条件が成立しなくなる問題が発生することができる。
【0129】
図11図21は、QTBT分割構造にHEVCデブロッキングフィルタリング方法を適用する場合の問題点を説明するための図である。
【0130】
QTBTによって、図11のような構造に分割された場合、図12のように4x16ブロックの垂直エッジ(vertical edge)に対して例を挙げて問題点を説明する。
【0131】
この時、図12に示すように最初の4x16ブロックの垂直エッジ(つまり、ブロック境界1)に強いフィルタリングが行われたと仮定する。
【0132】
この場合、フィルタリングによってブロック境界に隣接する3つのピクセル(図12の陰影表示されたピクセル)は、ピクセル値の変化が生じることになる。そして、ブロック境界1からフィルタリングによってノイズが除去されたと仮定する。
【0133】
次に、隣接するブロック境界(つまり、ブロック境界2)でフィルタリングを実行するために、まず、図13で点線で示されたピクセルを介してフィルタリングを実行するかどうかを決定する。
【0134】
しかし、図12の例によってフィルタリングされたピクセル(図12の陰影表示されたピクセル)とフィルタリングされないピクセル(図12で陰影が表示されないピクセル)を参照して、フィルタリングを実行するかどうかを決定しなければならない問題が生じる。
【0135】
まず、並列化の問題に焦点を当ててみると、図13のようにブロック境界1とブロック境界2のフィルタリングは、同時に実行されることができないため、並列パイプラインが崩れるという問題が発生する。
【0136】
もちろん、図13の並列化を考慮しないとしても、図14のように、重畳してフィルタリングされる問題が発生する。
【0137】
図14で見られるように、ブロック境界2でフィルタリングが実行される条件に該当し、また、強いフィルタリングが適用される条件を満たせば、図14の黒ピクセルはデブロッキングフィルタのローパスフィルタが2回適用になるのである。
【0138】
また、図15のように、ブロック境界2で強いフィルタリングではなく、弱いフィルタリングが適用されるとしても、図15の黒ピクセルは二回のローパスフィルタが適用される問題が発生する。
【0139】
さらに、図16のようにブロック境界1で弱いフィルタリングが適用されたと仮定する。
【0140】
この場合、図17のようにブロック境界2でフィルタリングを実行するかどうかを決定するために点線で示されたピクセルを参照する。
【0141】
また、ブロック境界2でフィルタリングが実行されるように決定されたとしても、強いフィルタあるいは弱いフィルタの内、どのフィルタを適用するかどうかを決定するために図18の点線で示されたピクセルを参照して、数式2の式を介して決定しなければならない。
【0142】
もし、ブロック境界2で強いフィルタリングの実行条件が満たされなくてブロック境界2で弱いフィルタリングが行われれば、図19のように重畳してフィルタリングされる問題は発生しないが、強いフィルタリングの実行条件が満たされて、ブロック境界2で強いフィルタリングが行われれば図20のように濃く陰影表示されたピクセルは、重畳してフィルタリングされる問題が発生する。
【0143】
以下、本発明の説明において、主に垂直エッジ(vertical edge)を例示して説明するが、これは説明の便宜のためであり、本発明がこれに限定されるものではない。つまり、水平エッジ(horizontal edge)である場合、ピクセルがブロック境界に基づいて上下に位置する違いがあるだけで過程は同じように実行されることがある。
【0144】
実施形態1
【0145】
本発明の一実施形態は、QTBT構造のデブロッキングフィルタを効果的に実行するための方法を提案する。
【0146】
前述のように、QTBTブロック構造でHEVCで定義されたデブロッキングフィルタリング方法をそのまま適用すれば、QTBTはブロック境界でフィルタリングされたピクセルを参照して、フィルタリングするかどうかを計算する問題により並列処理がされない場合が発生する問題点が発生する。
【0147】
これを防止するために、本発明は、垂直エッジの場合、ブロックの横幅/長さが4以下であるブロック(つまり、横のサンプルの数が4以下であるブロック)境界では、水平エッジの場合、ブロックの縦サイズが4以下であるブロック(つまり、縦サンプルの数が4以下であるブロック)境界でデブロッキングフィルタリングを実行する方法を提案する。
【0148】
実施形態1-1
【0149】
本発明の一実施形態に係れば、QTBT構造のデブロッキングフィルタで垂直エッジ(Vertival edge)のために横の長さが4以下であるブロック、水平エッジ(Horizontal edge)のために縦の長さが4以下であるブロックのフィルタリング方法を提案する。
【0150】
前述のように、QTBT構造でデブロッキングフィルタリングを実行するときに発生することができる問題は、並列化の問題とフィルタリングするかどうか、及び適応的フィルタの選択する際の参照ピクセルのフィルタリングに区分することができる。
【0151】
前述したHEVCのデブロッキングフィルタリングのように、特定の条件のブロック境界(例えば、横の長さが4以下であるブロックの境界または縦の長さが4以下であるブロックの境界)でフィルタリングを実行しないのは、並列化を可能にするが、これと同時に当該ブロック境界でのフィルタリングは実行されないので、客観的及び主観的画質劣化を起こすという問題が発生することができる。
【0152】
このような理由から、本発明の一実施形態においては、特定の条件を満たす場合、ブロック境界でフィルタリングする方法を提案する。
【0153】
ここで、特定の条件は、垂直エッジ(Vertical edge)をフィルタリングする過程でブロック横の長さが4以下及び/または水平エッジ(Horizontal edge)をフィルタリングする過程でブロック縦の長さが4以下の場合を意味する。
【0154】
上のような特定の条件ではフィルタリングによりフィルタリングされたピクセルを参照して図13のようにフィルタリングを実行するかどうかを決定するとき、すでにフィルタリングがされてノイズが消えたピクセルが用いられる。
【0155】
図21は、本発明の一実施形態に係るデブロッキングフィルタリングを実行するかどうかを決定するための方法を例示する図である。
【0156】
図21及び下の数式参を参照すると、dはブロック境界のピクセル値の変化量の合計を意味するとすることができる。
【0157】
この時、Pブロックのピクセル(すなわち、図22の点線で示されるピクセルの内、陰影処理されたピクセル)は、既にフィルタリングが適用されて平滑化が行われた状態なので、フィルタリングされないピクセルの値の差分値に比べて小さい値が出てくる確率が高い。
【0158】
したがって、数式3に基づいて、最終的に計算されるd値が小さくなることができ、結局フィルタリングを実行するかどうかを検査する際に確率的にフィルタリングを行うべき割合が高くなることができる。
【0159】
【数3】
【0160】
また、前記のような特定の条件では、フィルタリングによってフィルタリングされたピクセルを参照して、フィルタの種類が決定されることができる。
【0161】
図22は、本発明の一実施形態に係るデブロッキングフィルタの種類を決定するための方法を例示する図である。
【0162】
図22及び数式4を参照すると、強いフィルタと弱いフィルタを適応的に選択するために参照する数式もまたブロック境界のピクセル値の変化量を考慮することになる。
【0163】
この際、Pブロックのピクセル(すなわち、図22で点線で示されたピクセルの内、陰影処理されたピクセル)は、フィルタリングが既に実行されたので、ピクセルが平滑化され、変化量が減少することができる。これにより数式4で例示される強いフィルタリングを実行するようにする条件を満足するようになるので、結果的に弱いフィルタよりは、強いフィルタが実行される場合が多く発生することができる。
【0164】
これは、既にフィルタリングされたピクセルに強いフィルタを適用するようになりブロック境界でむしろエッジが潰れる現象が発生することができる。
【0165】
【数4】
【0166】
実施形態1-2
【0167】
本発明の一実施形態は、QTBT構造の場合、デブロッキングフィルタで垂直エッジ(Vertival edge)フィルタリングのために横の長さが4以下のブロックまたは水平エッジ(Horizontal edge)フィルタリングのために縦の長さが4以下であるブロックのフィルタリングを実行しない方法を提案する。
【0168】
前述したように、現在QTBTでデブロッキングフィルタは、特定のサイズのブロックの境界をフィルタリングする過程で多くの問題点がある。このような問題を避け、デブロッキングフィルタの並列化を可能にするために、本発明の一実施形態では、図23のような方法を提案する。
【0169】
図23は、本発明の一実施形態に係るデブロッキングフィルタリング方法を例示する図である。
【0170】
図23を参照すると、デコーダは、コーディングユニット(またはコーディングブロック)の境界に該当するか判断する(S2301)。
【0171】
もし、S2301段階でコーディングユニット(またはコーディングブロック)の境界に該当しなければ、デコーダは、デブロッキングフィルタリングを終了する。
【0172】
一方、S2301段階ではコーディングユニット(またはコーディングブロック)の境界に該当すると、当該境界が垂直エッジに該当するか判断する(S2302)。
【0173】
もし、S2302段階で、境界が垂直エッジに該当すると、当該コーディングユニット(またはコーディングブロック)の幅(width)が8以上であるか判断する(S2303)。
【0174】
反面、S2302段階において、境界が垂直エッジに該当しなければ(つまり、水平エッジに該当する場合)、そのコーディングユニット(またはコーディングブロック)の高さが8以上であるか判断する(S2304)。
【0175】
S2303段階で、当該コーディングユニット(またはコーディングブロック)の幅が8以上である場合、またはS2304段階で、当該コーディングユニット(またはコーディングブロック)の高さが8以上である場合、デコーダは、従来(conventional)のデブロッキングフィルタリングを行う(S2305)。
【0176】
例えば、デコーダは、先の図6の例示のように、従来のデブロッキングフィルタリングを行うことができる。
【0177】
ここで、従来のデブロッキングフィルタリング方法に関連して、ITU-T H.265文書が、本明細書で参照として併合(incorporated by reference)される。
【0178】
反面、S2303段階において、コーディングユニット(またはコーディングブロック)の幅が8以上ではない場合、またはS2304段階で、コーディングユニット(またはコーディングブロック)の高さが8以上ではない場合、デコーダは、デブロッキングフィルタリングを終了する。
【0179】
図23で例示されたように、垂直エッジ(vertical edge)である場合、コーディングユニット(またはコーディングブロック)の横の長さが8以上のコーディングユニット(またはコーディングブロック)にのみ、水平エッジ(horizontal edge)である場合、コーディングユニット(またはコーディングブロック)の縦の長さが8以上のコーディングユニット(またはコーディングブロック)にのみフィルタリングを行い、8以上ではない、コーディングユニット(またはコーディングブロック)には、フィルタリングを実行しないことがある。
【0180】
前述したように、本実施形態においては、ブロックサイズだけを考慮してフィルタリングを適用するかどうかを決定するために最も簡単にデブロッキングフィルタリングを並列化することができる効果がある。
【0181】
実施形態1-3
【0182】
本発明の一実施形態に係れば、QTBT構造のデブロッキングフィルタで垂直エッジ(vertical edge)フィルタリングのために横の長さが4以下のブロックまたは水平エッジ(horizontal edge)フィルタリングのために縦の長さが4以下であるブロックに対して弱いフィルタリングを実行する方法を提案する。
【0183】
図24は、本発明の一実施形態に係るデブロッキングフィルタリング方法を例示する図である。
【0184】
図24を参照すると、デコーダは、コーディングユニット(またはコーディングブロック)の境界に該当するか判断する(S2401)。
【0185】
もし、S2401段階でコーディングユニット(またはコーディングブロック)の境界に該当しなければ、デコーダは、デブロッキングフィルタリングを終了する。
【0186】
一方、S2401段階においてコーディングユニット(またはコーディングブロック)の境界に該当すると、当該境界が垂直エッジに該当するか判断する(S2402)。
【0187】
もしS2402の段階で、当該境界が垂直エッジに該当すると、当該コーディングユニット(またはコーディングブロック)の幅が8以上であるか判断する(S2403)。
【0188】
一方、S2402段階において、当該境界が垂直エッジに該当しなければ(つまり、水平エッジに該当する場合)は、そのコーディングユニット(またはコーディングブロック)の高さが8以上であるか判断する(S2404)。
【0189】
S2403段階で、コーディングユニット(またはコーディングブロック)の幅が8以上である場合、またはS2404段階で、当該コーディングユニット(またはコーディングブロック)の高さが8以上であれば、デコーダは、従来のデブロッキングフィルタリングを行う(S2405)。
【0190】
例えば、デコーダは、先の図6の例示のように、従来のデブロッキングフィルタリングを行うことができる。
【0191】
ここで、従来(conventional)のデブロッキングフィルタリング方法に関連して、ITU-T H.265文書が、本明細書で参照として併合される。
【0192】
一方、S2403段階で、当該コーディングユニット(またはコーディングブロック)の幅(width)が8以上でない場合、デコーダは、その垂直エッジに弱いフィルタを適用することができる(S2406)
【0193】
また、S2404段階で、当該コーディングユニット(またはコーディングブロック)の高さ(height)が8以上でない場合、デコーダは、その水平エッジに弱いフィルタを適用することができる(S2407)。
【0194】
ここで、例えば、弱いフィルタを適用する方法に関連して、ITU-T H.265文書が、本明細書で参照として併合(incorporated by reference)されることができる。
【0195】
図24で例示されたように、垂直エッジである場合、コーディングユニット(またはコーディングブロック)の横の長さが8以上のコーディングユニット(またはコーディングブロック)にのみ、水平エッジである場合、コーディングユニット(またはコーディングブロック)の縦の長さが8以上のコーディングユニット(またはコーディングブロック)については、従来のデブロッキングフィルタリングが適用され、8以上ではない、コーディングユニット(またはコーディングブロック)にたいしては、弱いフィルタが適用されることができる。
【0196】
前述したように、本実施形態によれば、実施形態1-2で小さなブロックサイズでフィルタリングが適用されず、主観的画質が劣化することを最小化することができるという効果がある。
【0197】
実施形態1-4
【0198】
本発明の一実施形態においては、QTBT構造のデブロッキングフィルタで垂直エッジ(Vertival edge)のために横の長さが4以下であるブロックの境界の左右、水平エッジ(Horizotal edge)のために縦の長さが4以下のブロック境界の上下それぞれ2ピクセルだけ強いフィルタを実行する方法を提案する。
【0199】
このとき、下の図25のように横の長さが4以下であるブロック、縦の長さが4以下のブロックには、フィルタセットを選択せずに強いフィルタリングを適用する方法を提案する。
【0200】
図25は、本発明の一実施形態に係るデブロッキングフィルタリング方法を例示する図である。
【0201】
図25を参照すると、デコーダは、コーディングユニット(またはコーディングブロック)の境界に該当するか判断する(S2501)。
【0202】
もし、S2501段階でコーディングユニット(またはコーディングブロック)の境界に該当しなければ、デコーダは、デブロッキングフィルタリングを終了する。
【0203】
一方、S2501段階でコーディングユニット(またはコーディングブロック)の境界に該当する場合、デブロッキングフィルタを適用する条件をチェックし(S2502)、デコーダは、デブロッキングフィルタを適用する条件に基づいて、その境界でデブロッキングフィルタを適用するかどうかを決定する(S2503)。
【0204】
このとき、デブロッキングフィルタの適用条件として先の数式1が用いられる。
【0205】
もし、S2503段階でコーディングユニット(またはコーディングブロック)の境界でデブロッキングフィルタを適用しないように決定すると(つまり、デブロッキングフィルタの適用条件に満足していない)、デコーダは、デブロッキングフィルタリングを終了する。
【0206】
一方、S2503段階でコーディングユニット(またはコーディングブロック)の境界でデブロッキングフィルタリングを適用するように決定すると(つまり、デブロッキングフィルタリングの適用条件に満足)、デコーダは、その境界が垂直エッジに該当するか判断する(S2504)。
【0207】
S2504段階で、当該境界が垂直エッジに該当すると、当該コーディングユニット(またはコーディングブロック)の幅(width)が8以上であるか判断する(S2505)。
【0208】
一方、S2504段階で、当該境界が垂直エッジに該当しなければ(つまり水平エッジに該当する場合)は、そのコーディングユニット(またはコーディングブロック)の高さが8以上であるか判断する(S2506)。
【0209】
S2505段階で、当該コーディングユニット(またはコーディングブロック)の幅が8以上ではない場合、またはS2506段階で、当該コーディングユニット(またはコーディングブロック)の高さが8以上でない場合、デコーダは、本実施形態で提案された強いフィルタを適用することにより、デブロッキングフィルタリングを実行する(S2507)。
【0210】
本実施形態で提案された強いフィルタを適用すると、ブロック境界の左右(垂直エッジの場合)、または上下(水平エッジの場合)、それぞれ2ピクセルだけ強いフィルタを実行することになり、これに対するより詳細な説明は後述する。
【0211】
一方、S2505段階で、コーディングユニット(またはコーディングブロック)の幅が8以上である場合、またはS2506段階で、当該コーディングユニット(またはコーディングブロック)の高さが8以上である場合、デコーダは、フィルタセットの選択条件をチェックし(S2508)、デコーダは、フィルタセットの選択条件に基づいて、そのエッジで強いフィルタを適用するかどうかを決定する(S2509)。
【0212】
このとき、デブロッキングフィルタのセットの選択条件として数式2が用いられる。
【0213】
もし、S2509段階で強いフィルタを適用するように決定した場合(例えば、先の数式2の条件がすべて満たされる場合)、デコーダは、そのエッジで、従来の強いフィルタを適用することができる(S2510)。
【0214】
ここで、例えば、強いフィルタを適用する方法に関連して、ITU-T H.265文書が、本明細書で参照として併合されることができる。
【0215】
反面、S2509段階で強いフィルタを適用しないように決定したら(例えば、先に数式2の条件の内、いずれか1つでも満足していなければ)、デコーダは、当該エッジで弱いフィルタを適用することができる(S2511)。
【0216】
ここで、例えば、弱いフィルタを適用する方法に関連して、ITU-T H.265文書が、本明細書で参照として併合(incorporated by reference)されることができる。
【0217】
また、下記図26のように、従来の実行構造を維持したまま、強いフィルタを適用しなければならない、ブロック境界については、本発明で提案する強いフィルタを適用する方法を提案する。
【0218】
図26は、本発明の一実施形態に係るデブロッキングフィルタリング方法を例示する図である。
【0219】
図26を参照すると、デコーダは、コーディングユニット(またはコーディングブロック)の境界に該当するか判断する(S2601)。
【0220】
もし、S2601段階でコーディングユニット(またはコーディングブロック)の境界に該当しなければ、デコーダは、デブロッキングフィルタリングを終了する。
【0221】
一方、S2601段階でコーディングユニット(またはコーディングブロック)の境界に該当すると、デブロッキングフィルタの適用条件をチェックし(S2602)、デコーダは、デブロッキングフィルタの適用条件に基づいて、当該境界でデブロッキングフィルタを適用するかどうかを決定する(S2603)。
【0222】
このとき、デブロッキングフィルタを適用する条件で先の数式1が用いられる。
【0223】
もし、S2603段階でコーディングユニット(またはコーディングブロック)の境界でデブロッキングフィルタを適用しないように決定したら(つまり、デブロッキングフィルタの適用条件に満足しない)、デコーダは、デブロッキングフィルタリングを終了する。
【0224】
一方、S2603段階でコーディングユニット(またはコーディングブロック)の境界でデブロッキングフィルタを適用するように決定したら(つまり、デブロッキングフィルタの適用条件に満足)、デコーダは、フィルタセットの選択条件をチェックして(S2604)、デコーダは、フィルタセットの選択条件に基づいて、当該境界で強いフィルタを適用するかどうかを決定する(S2605)。
【0225】
このとき、デブロッキングフィルタのセットの選択条件として数式2が用いられる。
【0226】
もし、S2605段階で強いフィルタを適用しないように決定したら(例えば、先の数式2の条件の内、いずれか1つでも満足しなければ)、デコーダは、当該境界で弱いフィルタを適用することができる(S2606)。
【0227】
ここで、例えば、弱いフィルタを適用する方法に関連して、ITU-T H.265文書が、本明細書で参照として併合されることができる。
【0228】
一方、S2605段階で強いフィルタを適用するように決定したら(例えば、先の数式2の条件がすべて満たされる場合)、デコーダは、当該境界が垂直エッジに該当するか判断する(S2607)。
【0229】
S2607段階で、当該境界が垂直エッジに該当すると、当該コーディングユニット(またはコーディングブロック)の幅(width)が8以上であるか判断する(S2608)。
【0230】
反面、S2607段階で、当該境界が垂直エッジに該当しなければ(つまり、水平エッジに該当する場合)は、当該コーディングユニット(またはコーディングブロック)の高さ(height)が8以上であるか判断する(S2609)。
【0231】
S2609段階で、コーディングユニット(またはコーディングブロック)の幅が8以上ではない場合、またはS2608段階で、当該コーディングユニット(またはコーディングブロック)の高さが8以上でない場合、デコーダは、本実施形態で提案された強いフィルタを適用することにより、デブロッキングフィルタリングを実行する(S2610)。
【0232】
本実施形態で提案された強いフィルタを適用すると、ブロック境界の左右(垂直エッジの場合)、または上下(水平エッジの場合)、それぞれ2ピクセルだけ強いフィルタを実行することになり、これに対するさらに詳細な説明は後述する。
【0233】
一方、S2609段階で、当該コーディングユニット(またはコーディングブロック)の幅が8以上である場合、またはS2608段階で、当該コーディングユニット(またはコーディングブロック)の高さが8以上である場合には、デコーダは、当該エッジで、従来の強いフィルタを適用することができる(S2611)。
【0234】
ここで、例えば、強いフィルタを適用する方法に関連して、ITU-T H.265文書が、本明細書で参照として併合されることができる。
【0235】
以下、本発明の一実施形態に係る、強いフィルタリング方法について注意深く見る。
【0236】
本発明で提案する強いフィルタリング方法は、以下の図27のように、従来のHEVCのフィルタを利用するが、境界(またはエッジ)に基づいて、左右それぞれ2ピクセルだけ(垂直エッジの場合)フィルタリングを適用することができる。逆に、水平エッジの場合、境界に基づいて左右それぞれ2ピクセルのみフィルタリングを適用することができる。
【0237】
図27は、本発明の一実施形態に係る強いフィルタリング方法を例示する図である。
【0238】
図27(a)は、本発明の一実施形態に係るフィルタリング前のピクセルを例示し、図27(b)は、本発明の一実施形態に係るフィルタリング後のピクセル(陰影表示されたピクセル)を例示する。
【0239】
図27及び下数式5を参照すると、垂直エッジに基づいて左右それぞれ2ピクセルだけ(つまり、P(0、0)、P(1、0)、P(0、1)、P(1、1)、P(0、2)、P(1、2)、P(0、3)、P(1、3)、Q(0、0)、Q(1、0)、Q(0、1)、Q(1、1)、Q(0、2)、Q(1、2)、Q(0、3)、Q(1、3))フィルタリングを適用することができる。
【0240】
【数5】
【0241】
数式5においては説明の便宜のためにP(0、0)、P(1、0)、Q(0、0)、Q(1、0)への強いフィルタリング結果、すなわちP‘(0、0)、P’(1、0)、Q‘(0、0)、Q’(1、0)だけを例示しているが、同様の方法で、P(0、1)、P(1、1)、P(0、2)、P(1、2)、P(0、3)、P(1、3)、Q(0、1)、Q(1、1)、Q(0、2)、Q(1、2)、Q(0、3)、Q(1、3)にも強いフィルタリングが適用されることでP’(0、1)、P’(1、1)、P’(0、2)、P’(1、2)、P’(0、3)、P’(1、3)、Q’(0、1)、Q’(1、1)、Q’(0、2)、Q’(1、2)、Q’(0、3)、Q’(1、3)が導出されることができる。
【0242】
または、本発明で提案する強いフィルタリング方法は、図28のように、新しいフィルタセットを使用する方法を提案する。
【0243】
図28は、本発明の一実施形態に係る強いフィルタリング方法を例示する図である。
【0244】
図28(a)は、本発明の一実施形態に係るフィルタリング前のピクセルを例示し、図28(b)は、本発明の一実施形態に係るフィルタリング後のピクセル(陰影表示されたピクセル)を例示する。
【0245】
図28及び下の数式6を参照すると、垂直エッジに基づいて左右それぞれ2ピクセルだけ(つまり、P(0、0)、P(1、0)、P(0、1)、P(1、1)、P(0、2)、P(1、2)、P(0、3)、P(1、3)、Q(0、0)、Q(1、0)、Q(0、1)、Q(1、1)、Q(0、2)、Q(1、2)、Q(0、3)、Q(1、3))フィルタリングを適用することができる。
【0246】
【数6】
【0247】
数式6においては説明の便宜のためにP(0、0)、P(1、0)、Q(0、0)、Q(1、0)の強いフィルタリング結果、すなわちP’(0、0)、P’(1、0)、Q’(0、0)、Q’(1、0)だけ例示しているが、同様の方法で、P(0、1)、P(1、1)、P(0、2)、P(1、2)、P(0、3)、P(1、3)、Q(0、1)、Q(1、1)、Q(0、2)、Q(1、2)、Q(0、3)、Q(1、3)にも強いフィルタリングが適用されることでP’(0、1)、P’(1、1)、P’(0、2)、P’(1、2)、P’(0、3)、P’(1、3)、Q’(0、1)、Q’(1、1)、Q’(0、2)、Q’(1、2)、Q’(0、3)、Q’(1、3)が導出されることができる。
【0248】
数式5及び数式6において、p0、p1、p2は、それぞれP(0、0)、P(1、0)、P(2、0)に該当して、q1、q2、q3は、それぞれQ(0、0)、Q(1、0)、Q(2、0)に該当することができる。
【0249】
また、数式5及び数式6において、クリップ3(Clip3)は、数式7のように計算することができる。
【0250】
【数7】
【0251】
また、数式5及び数式6において、x>>yはxの2の補数(two's complement)整数表現をy2進数(binary digit)だけ算出、右側シフト(Arithmetic right shift)を意味する。この関数は、yの負でない整数値(non-negative integer value)に対してのみ定義される。右側シフトの結果として、最上位ビット(MSB:Most Significant Byte)にシフトされたビットは、シフト演算の前にxの最上位ビット(MSB:Most Significant Byte)と同じ値を有する。
【0252】
また、数式5及び数式6において、変数(パラメータ)tc(つまり、t_c)は量子化パラメータ(Q)に基づいて決まる。
【0253】
ここで、変数(パラメータ)tc(つまり、t_c)を決定する方法に関連して、ITU-T H.265文書が、本明細書で参照として引用(incorporated by reference)される。
【0254】
前述したように、本実施形態もまた、従来の小さなブロックでデブロッキングフィルタが適用されないで発生することがある主観的画質劣化を最小化することができる効果があり、また、実施形態1-3とは違って、適応的にフィルタを適用できるようにすることで、画質劣化を最小化することができるという効果がある。
【0255】
実施形態2
【0256】
QTBTブロック分割構造でフィルタリングを実行するかどうかの検査及びフィルタリングを選択する際、前のブロック境界でフィルタリングされたピクセル値を参照して、条件を検査するため、問題が発生することになる。
【0257】
これにより、本発明の一実施形態では、QTBT構造のデブロッキングフィルタで垂直エッジ(Vertival edge)フィルタリングのために横の長さが4以下であるブロック、水平エッジ(Horizontal edge)フィルタリングのために縦の長さ4以下のブロックの境界でフィルタリングされないピクセルを参照して、フィルタリングを実行するかどうかを決定する方法及び適応的フィルタ決定の方法を提案する。
【0258】
本発明の一実施形態においては、垂直エッジ(vertical edge)をフィルタリングする過程に基づいて説明する。水平エッジ(Horizontal edge)のフィルタリング過程は、ブロック境界に基づいて、上下ピクセルを参照する差と縦の長さを考慮する差があるだけで実行過程は同じである。
【0259】
図29は、垂直エッジ(vertical edge)フィルタリング時に横の長さが4以下のブロックでフィルタリングの実行結果を例示する図である。
【0260】
図29(a)においては、垂直エッジ(vertical edge)フィルタリング時に横の長さが4以下のブロックでフィルタリング前のピクセルを例示し、図29(b)では、フィルタリングによってフィルタリングされたピクセル(陰影表示されたピクセル)を例示する。
【0261】
本発明の一実施形態においては、フィルタリングを実行するかどうか、及びフィルタを選択するため、図30のようにフィルタリングされないピクセルを用いる方法を提案する。
【0262】
図30は、本発明の一実施形態に係るフィルタリングを実行するかどうか、及びフィルタの選択方法を例示する図である。
【0263】
デコーダは、隣接するブロックの境界の間の横の長さが4以下のブロックは、図30(a)のようにフィルタリングされないピクセルを用いて、(b)のフィルタリングを実行するかどうかの条件と(c)の適応的フィルタの選択条件を検査する。
【0264】
つまり、デコーダは、垂直エッジ(vertical edge)フィルタリングの時、横の長さが4以下のブロックでは、フィルタリングが実行される前にピクセルを用いて、以下の数式8のようにフィルタリングを実行するかどうかを決定することができる。
【0265】
【数8】
【0266】
また、デコーダは、垂直エッジ(vertical edge)フィルタリング時、横の長さが4以下のブロックでは、他の隣接するブロックの境界でのフィルタリングが実行される前にピクセルを用いて、以下の数式9のようにフィルタリングの種類を決定することができる。
【0267】
【数9】
【0268】
一方、フィルタリングされたピクセルを参照して、フィルタリングを実行するかどうか、及びフィルタの種類を判断することになる隣接するブロックの境界の間の横の長さが4以下のブロック境界にのみ該当する。
【0269】
このような理由から、ブロックサイズに応じて、(例えば、横の長さが4以下のブロックの場合、または縦の長さが4以下のブロックの場合)、フィルタリングを実行するかどうか、及びフィルタの種類を判断する時、参照するピクセルを決定するよりも、下の図31のようにすべてのブロック境界に対してフィルタリングを実行するかどうか、及びフィルタの種類を判断する時、フィルタリングされないピクセルを参照する方法を提案する。
【0270】
図31は、本発明の一実施形態に係るデブロッキングフィルタリング方法を例示する図である。
【0271】
図31を参照すると、デコーダは、コーディングユニット(またはコーディングブロック)の境界に該当するか判断する(S3101)。
【0272】
もし、S3101段階でコーディングユニット(またはコーディングブロック)の境界に該当しなければ、デコーダは、デブロッキングフィルタリングを終了する。
【0273】
反面、S3101段階でコーディングユニット(またはコーディングブロック)の境界に該当すると、デブロッキングフィルタの適用条件をチェックし(S3102)、デコーダは、デブロッキングフィルタ適用条件に基づいて、当該境界でデブロッキングフィルタを適用するかどうかを決定する(S3103)。
【0274】
このとき、デブロッキングフィルタを適用するかどうかを決定するために、デコーダはフィルタリングされないピクセルのピクチャを入力として用いられる。
【0275】
このとき、デブロッキングフィルタを適用する条件で先の数式8を用いることができる。
【0276】
もし、S3103段階でコーディングユニット(またはコーディングブロック)の境界でデブロッキングフィルタを適用しないように決定したら(つまり、デブロッキングフィルタの適用条件に満足しない)、デコーダは、デブロッキングフィルタリングを終了する。
【0277】
一方、S3103段階でコーディングユニット(またはコーディングブロック)の境界でデブロッキングフィルタを適用するように決定したら(つまり、デブロッキングフィルタの適用条件に満足)、デコーダは、フィルタセットの選択条件をチェックし(S3104)、デコーダは、フィルタセットの選択条件に基づいて、その境界で強いフィルタを適用するかどうかを決定する(S3105)。
【0278】
このとき、強いフィルタを適用するかどうかを決定するために、デコーダはフィルタリングされないピクセルのピクチャを入力として用いられる。
【0279】
このとき、デブロッキングフィルタのセットの選択条件として数式9が用いられる。
【0280】
もし、S3105段階で強いフィルタを適用するように決定すると(例えば、先の数式9の条件がすべて満たされる場合)、デコーダは、該当境界で強いフィルタを適用することができる(S3106)。
【0281】
このとき、強いフィルタを適用するために、デコーダは、復元ピクチャ(reconstructed picture)を入力として用いることができる。
【0282】
このとき、強いフィルタの適用に関連して先の実施形態1-4で提案した方法を用いることができる。
【0283】
または、例えば、強いフィルタを適用する方法に関連して、ITU-T H.265文書が、本明細書で参照として併合されることができる。
【0284】
一方、S3105段階で強いフィルタを適用しないように決定したら(例えば、先の数式9の条件の内、いずれか1つでも満足しなければ)、デコーダは、その境界で弱いフィルタを適用することができる(S3107)。
【0285】
このとき、弱いフィルタを適用するために、デコーダは、復元ピクチャ(reconstructed picture)を入力として用いることができる。
【0286】
ここで、例えば、弱いフィルタを適用する方法に関連して、ITU-T H.265文書が、本明細書で参照として併合されることができる。
【0287】
S3106段階及びS3107段階で強いフィルタが適用されたピクセル、弱いフィルタが適用されたピクセルは、出力として復元ピクチャに反映されることができる。
【0288】
このように、図31の例示のように、デコーダは、フィルタ適用をするかどうかと、フィルタセットを選択する条件に満足するかを決定するために、フィルタリングされないピクセルを参照して決定し、実際のフィルタリングは、復号化されたピクセルをフィルタリングすることができる。
【0289】
前述したように、本実施形態に係れば、デブロッキングフィルタリングの並列化のためにブロック境界でフィルタリングを決定するとき、隣接するブロック境界で既にフィルタリングが適用されたピクセルを参照せずにフィルタリングが適用されないピクセルを参照して、フィルタリングするかどうかを決定することにより並列化を可能にする効果がある。
【0290】
実施形態3
【0291】
本発明の一実施形態は、QTBT構造で色彩成分でデブロッキングフィルタを適応的に実行する方法を提案する。
【0292】
QTBT分割構造では、I-Sliceで輝度(luma)領域と色彩(Chroma)領域のブロック構造が互いに異なるように分割されることができる。このように色差成分と輝度成分の間の互いに異なるブロックエッジを有しているのでフィルタリングが適用されるブロック境界を別に確認してフィルタリングが行われる。
【0293】
しかし、従来のHEVCデブロッキングフィルタリング方法をそのまま使用すると、輝度成分と同じ条件でBSを計算した後、BSが2である条件に該当するブロックの境界は、フィルタリングを実行することになる問題が発生する。
【0294】
図32は、QTBTブロック分割構造でHEVCデブロッキングフィルタリングを同様に適用する時に発生する問題点を説明するための図である。
【0295】
図32を参照すると、デコーダは、ピクチャループフィルタ(loopFilterPic)過程を開始し、チャンネルタイプの輝度(luma)であれば(S3201)、CUデブロッキング(xDeblockCU)過程を実行する(S3202、S3203)。
【0296】
図32で点線で示されているボックス内の過程がxDeblockCUを例示する。
【0297】
デコーダは、スライスタイプがI-Sliceかどうかを判断する(S3204)。
【0298】
もし、S3204段階でスライスタイプがI-Sliceであり、チャンネルタイプが色彩(chroma)であれば(S3205)、CUデブロッキング(xDeblockCU)過程を実行する(S3202、S3203)。
【0299】
一方、S3204段階でスライスタイプがI-Sliceでなければ、デコーダは、ピクチャループフィルタ(loopFilterPic)過程を終了する。
【0300】
デコーダは、現在のブロック(例えば、CTUまたはCTUからQTBTに分割されたブロック)がクワッドツリー(QT)構造に分割されるか判断する(S3206)
【0301】
もし、S3206段階で、現在のブロックがクワッドツリー(QT)構造に分割される場合、幅の値を1だけ右側シフトし(幅>>1)、また、高さの値を1だけ右側シフトする(高さ>>1)(S3207)。つまり、縦と横方向に現在のブロックを半分に分割する。
【0302】
デコーダは、4つに分割されたブロックのそれぞれを対象にCUデブロッキング(xDeblockCU)過程を実行する(S3208、3209)。
【0303】
一方、S3206段階において、現在のブロックがクワッドツリー(QT)構造に分割されない場合、デコーダは、現在のブロックがバイナリツリー(BT)の構造に分割されるか判断する(S3210)。
【0304】
S3210段階で、現在ブロックがバイナリツリー(BT)構造に分割される場合、デコーダは、BTモードが水平分割かを判断する(S3211)。
【0305】
もし、S3211段階でBTモードが水平分割である場合、デコーダは、高さの値だけを1だけ右側にシフトする(高さ>>1)(S3212)。つまり、横方向に、現在のブロックを半分に分割する。そして、デコーダは、2つに分割されたブロックのそれぞれを対象にCUデブロッキング(xDeblockCU)過程を実行する(S3213、S3214)。
【0306】
一方、S3211段階でBTモードが水平分割でない場合、デコーダは、幅(width)の値だけを1だけ右側シフトする(幅>>1)(S3215)。つまり、縦方向に、現在のブロックを半分に分割する。そして、デコーダは、2つに分割されたブロックのそれぞれを対象にCUデブロッキング(xDeblockCU)過程を実行する(S3216、S3217)。
【0307】
一方、S3210段階で、現在のブロックがバイナリツリー(BT)の構造に分割されない場合、デコーダは、境界強度(BS)または境界フィルタリング強度(boundary filtering strength)を計算する(S3218)。
【0308】
デコーダは、現在のブロックが輝度ブロックであるかを判断する(S3219)。
【0309】
もし、S3219段階で、現在のブロックが輝度(luma)ブロックである場合、デコーダは、輝度ブロックのエッジのフィルタリング(xEdgeFilterLuma)を実行する(S3220)。
【0310】
つまり、先の式1及び2と同様に、デコーダは、デブロッキングフィルタを適用するかを決定し、デブロッキングフィルタを適用する場合、フィルタの種類を決定した後、決定されたフィルタの種類に応じてデブロッキングフィルタを実行することができる。
【0311】
反面、S3219段階で、現在のブロックが輝度ブロックではない場合、現在のブロックが色彩(Chroma)ブロックであるかI-Sliceではなく、また、色彩成分フォーマットが4:0:0でなければ(!400)(S3221)、デコーダは色彩ブロックのエッジのフィルタリング(xEdgeFilterChroma)を実行する(S3222)。
【0312】
つまり、先の数式1及び2と同様に、デコーダは、デブロッキングフィルタを適用するかを決定し、デブロッキングフィルタを適用する場合は、フィルタの種類を決定した後、決定されたフィルタの種類に応じてデブロッキングフィルタリングを実行することができる。
【0313】
図32で例示されたように、輝度成分と同じ条件で計算されたBSの値が2である場合、色彩ブロックのエッジに対して別々のフィルタリングを実行するかどうかの計算なしで、色彩ブロックのエッジに対するフィルタリング(xEdgeFilterChroma)過程が実行される。
【0314】
したがって、I-Sliceで色彩成分のデブロッキングフィルタが効率的に適用されない問題が発生する。
【0315】
このような問題を解決するために、本発明の一実施形態においては、図33のように色彩(Chroma)成分のデブロッキングフィルタを適用する方法を提案する。
【0316】
図33は、本発明の一実施形態に係るデブロッキングフィルタリング方法を例示する図である。
【0317】
図33を参照すると、デコーダは、ピクチャループフィルタ(loopFilterPic)過程を開始し、チャンネルタイプの輝度であれば(S3301)、CUデブロッキング(xDeblockCU)過程を実行する(S3302、S3303)。
【0318】
図33で点線で示されているボックス内の過程がxDeblockCUを例示する。
【0319】
デコーダは、スライスタイプがI-Sliceかを判断する(S3304)。
【0320】
もし、S3304段階でスライスタイプがI-Sliceであり、チャンネルタイプが色彩(chroma)であれば(S3305)、CUデブロッキング(xDeblockCU)過程を実行する(S3302、S3303)。
【0321】
一方、S3304段階でスライスタイプがI-Sliceでなければ、デコーダは、ピクチャループフィルタ(loopFilterPic)過程を終了する。
【0322】
デコーダは、現在のブロック(例えば、CTUまたはCTUからQTBTに分割されたブロック)がクワッドツリー(QT)構造に分割されるか判断する(S3306)
【0323】
もし、S3306段階で、現在のブロックがクワッドツリー(QT)構造に分割される場合、幅の値を1だけ右側シフトして(幅>>1)、また、高さの値を1だけ右側シフトする(高さ>>1)(S3307)。つまり、縦と横方向に現在ブロックを半分に分割する。
【0324】
デコーダは、4つに分割されたブロックのそれぞれを対象にCUデブロッキング(xDeblockCU)過程を実行する(S3308、3309)。
【0325】
一方、S3306段階で、現在のブロックがクワッドツリー(QT)構造に分割されない場合、デコーダは、現在のブロックがバイナリツリー(BT)の構造に分割されるか判断する(S3310)。
【0326】
S3310段階で、現在のブロックがバイナリツリー(BT)の構造に分割される場合、デコーダは、BTモードが水平分割かどうかを判断する(S3311)。
【0327】
もし、S3311段階でBTモードが水平分割である場合、デコーダは、高さ(height)の値だけを1だけ右側シフトする(高さ>>1)(S3312)。つまり、横方向に、現在のブロックを半分に分割する。そして、デコーダは、2つに分割されたブロックのそれぞれを対象にCUデブロッキング(xDeblockCU)過程を実行する(S3313、S3314)。
【0328】
一方、S3311段階でBTモードが水平分割でない場合、デコーダは、幅(width)の値だけを1だけ右側シフトする(幅>>1)(S3315)。つまり、縦方向に、現在のブロックを半分に分割する。そして、デコーダは、2つに分割されたブロックのそれぞれを対象にCUデブロッキング(xDeblockCU)過程を実行する(S3316、S3317)。
【0329】
反面、S3310段階で、現在のブロックがバイナリツリー(BT)の構造に分割されない場合、デコーダは、境界強度(BS)または境界フィルタリング強度(boundary filtering strength)を計算する(S3318)。
【0330】
デコーダは、現在のブロックが属するスライスがI-Sliceかどうかを判断する(S3319)。
【0331】
もし、S3319段階で、現在のブロックが属するスライスがI-Sliceではない場合、デコーダは、現在のブロックが輝度ブロックであるかを判断する(S3320)。
【0332】
S3319段階で、現在のブロックが属するスライスがI-Sliceである場合、またはS3320段階で、現在のブロックが輝度ブロックである場合、デコーダは、輝度(luma)ブロックのエッジのフィルタリング(xEdgeFilterLuma)を実行する(S3221)。
【0333】
つまり、現在のブロックが属するスライスがI-スライスの場合の色彩チャンネルである場合にもかかわらず、従来の輝度成分と同様にデコーダは、ブロック境界でフィルタリングを実行するかどうかをさらに計算(判断)し、強いフィルタリングと弱いフィルタリングを選択的に適用することができる。
【0334】
このとき、フィルタリングを実行するかどうかの判断方法及び/またはフィルタリングのタイプ(例えば、強いフィルタリングと弱いフィルタリング)を決定する方法は、先に説明した実施形態1及び/または実施形態2で説明した方法を用いることができる。
【0335】
または、フィルタリングを実行するかどうかの判断方法及び/またはフィルタリングのタイプ(例えば、強いフィルタリングと弱いフィルタリング)を決定する方法に関連して、ITU-T H.265文書が、本明細書で参照として併合(incorporated by reference)されることがある。
【0336】
一方、S3320段階で、現在のブロックが輝度ブロックではない場合、現在のブロックが色彩(Chroma)ブロックであり、また、色彩成分フォーマットが4:0:0でなければ(つまり、!400)(S3322)、デコーダは色彩(Chroma)ブロックのエッジのフィルタリング(xEdgeFilterChroma)を実行する(S3223)。
【0337】
つまり、輝度と色彩のブロック構造が同じである、B-スライスの場合、従来と同様にBSが2以上のブロック境界でフィルタリングが実行されることができる。
【0338】
図33は、本発明の一実施形態に係るデブロッキングフィルタリング方法を例示する図である。
【0339】
図33を参照すると、デコーダは、クワッドツリー(quad-tree)とバイナリツリー(binary-tree)構造に分割されたブロックの境界を導出する(S3301)。
【0340】
デコーダは、ブロックの境界の内、デブロッキング(de-blocking)フィルタリングが適用されるエッジを決定する(S3302)。
【0341】
つまり、デコーダは、ブロックの境界でデブロッキングフィルタリングが適用されるエッジを決定する。
【0342】
この際、ブロックの幅(width)または高さ(height)を考慮して、エッジ(edge)が決定されることができる。
【0343】
例えば、先の実施形態1-1と同様に、エッジのタイプが垂直エッジである場合、ブロックの幅が4以下であれば、既にデブロッキングフィルタリングが適用されたピクセルに基づいてエッジが決定されることができる。また、エッジのタイプが水平エッジである場合、ブロックの高さが4以下であれば、既にデブロッキングフィルタリングが適用されたピクセルに基づいてエッジが決定されることができる。
【0344】
また他の例として、実施形態1-2のように、エッジのタイプが垂直エッジ(vertical edge)である場合、ブロックの幅が8以上のブロックの境界の内にのみエッジが決定されることができる(つまり、ブロックの幅が4以下であるブロックの境界では、フィルタリングが適用されない)。また、エッジのタイプが水平エッジである場合、ブロックの高さが8以上のブロックの境界の内にのみエッジが決定されることができる(つまり、ブロックの高さが4以下であるブロックの境界では、フィルタリングが適用されない)。
【0345】
また他の例として、実施形態2のように、デブロッキングフィルタリングが適用される前、ピクセルに基づいてエッジが決定されることがある。
【0346】
デコーダは、エッジに適用されるデブロッキングフィルタリングのタイプを決定する(S3303)。
【0347】
例えば、デコーダは、エッジに強いフィルタリングが適用されるか、弱いフィルタリングが適用されるかを決定することができる。
【0348】
この際、ブロックの幅または高さを考慮して、デブロッキングフィルタリングのタイプが決定されることができる。
【0349】
例えば、先の実施形態1-1と同様に、エッジのタイプが垂直エッジである場合、ブロックの幅が4以下であれば、既にデブロッキングフィルタリングが適用されたピクセルに基づいてデブロッキングフィルタリングのタイプが決定されることができる。また、エッジのタイプが水平エッジ(horizontal edge)である場合、ブロックの高さが4以下であれば、既にデブロッキングフィルタリングが適用されたピクセルに基づいてデブロッキングフィルタリングのタイプが決定されることができる。
【0350】
また他の例として、実施形態1-3と同様に、エッジのタイプが垂直エッジである場合、ブロックの幅が4以下であれば、デブロッキングフィルタのタイプは、弱いフィルタリングに決定することができる。また、エッジのタイプが水平エッジである場合、ブロックの高さが4以下であれば、デブロッキングフィルタのタイプは、弱いフィルタリングに決定することができる。
【0351】
また他の例として、実施形態1-4のように、エッジのタイプが垂直エッジ(vertical edge)である場合、ブロックの幅(width)が4以下であれば、デブロッキングフィルタのタイプは、強いフィルタリングで決定され、強いフィルタリングはエッジの左右にそれぞれ隣接する2つのピクセル列にのみ適用することができる。また、エッジのタイプが水平エッジである場合、ブロックの高さが4以下であれば、デブロッキングフィルタのタイプは、強いフィルタリングで決定され、強いフィルタリングは、エッジの上側及び下側にそれぞれ隣接する2つのピクセル列にのみ適用することができる。
【0352】
また他の例として、実施形態2のように、デブロッキングフィルタリングが適用される前、ピクセルに基づいてデブロッキングフィルタリングのタイプが決定されることもある。
【0353】
また他の例として、実施形態3のように、ブロックが属するスライスがI-sliceである場合、ブロックが色彩ブロックかどうかとは無関係にS3302段階でエッジが決定され、S3303段階でデブロッキングフィルタリングのタイプが決定されることができる。
【0354】
デコーダは、デブロッキングフィルタリングのタイプに応じて、復元されたピクチャのサンプルにデブロッキングフィルタリングを実行する(S3304)。
【0355】
図35は、本発明の一実施形態に係るデブロッキングフィルタリング部を例示する図である。
【0356】
図35を参照すると、デブロッキングフィルタリング部は前に、図6図34で提案された機能、過程及び/または方法を実現する。また、デブロッキングフィルタリング部は前に、図1で例示されたエンコーダの構成要素の内、全体または一部と結合して、エンコード装置に実現されることができ、または先に図2で例示されたデコーダの構成要素の内、全体または一部と結合されてデコード装置に実現されることができる。
【0357】
具体的に、デブロッキングフィルタリング部はブロック境界導出部3501、エッジ決定部3502、フィルタリングタイプ決定部3503及びフィルタリング部3504を含んで構成されることができる。
【0358】
ブロック境界導出部3501は、クワッドツリー(quad-tree)及びバイナリツリー(binary-tree)構造に分割されたブロックの境界を導出する。
【0359】
エッジ決定部3502は、ブロックの境界の内、デブロッキング(de-blocking)フィルタリングが適用されるエッジを決定する。
【0360】
つまり、エッジ決定部3502は、ブロックの境界でデブロッキングフィルタリングが適用されるエッジを決定する。
【0361】
この際、ブロックの幅または高さを考慮して、エッジが決定されることができる。
【0362】
例えば、先の実施形態1-1と同様に、エッジのタイプが垂直エッジである場合、ブロックの幅が4以下であれば、既にデブロッキングフィルタリングが適用されたピクセルに基づいてエッジが決定されることができる。また、エッジのタイプが水平エッジ(horizontal edge)である場合には、ブロックの高さ(height)が4以下であれば、既にデブロッキングフィルタリングが適用されたピクセルに基づいてエッジ(edge)が決定されることができる。
【0363】
また他の例として、実施形態1-2のように、エッジのタイプが垂直エッジである場合、ブロックの幅が8以上のブロックの境界の内にのみエッジが決定されることができる(つまり、ブロックの幅が4以下であるブロックの境界では、フィルタリングが適用されない)。また、エッジのタイプが水平エッジである場合、ブロックの高さが8以上のブロックの境界の内にのみエッジが決定されることができる(つまり、ブロックの高さが4以下であるブロックの境界では、フィルタリングが適用されない)。
【0364】
また他の例として、実施形態2のように、デブロッキングフィルタリングが適用される前に、ピクセルに基づいてエッジが決定されることもある。
【0365】
フィルタリングタイプ決定部3503は、エッジに適用されるデブロッキングフィルタリングのタイプを決定する。
【0366】
例えば、フィルタリングタイプ決定部3503は、エッジに強いフィルタリングが適用されるか、弱いフィルタリングが適用されるかを決定することができる。
【0367】
この際、ブロックの幅または高さを考慮して、デブロッキングフィルタリングのタイプが決定されることができる。
【0368】
例えば、先の実施形態1-1のように、エッジのタイプが垂直エッジ(vertical edge)である場合、ブロックの幅が4以下であれば、既にデブロッキングフィルタリングが適用されたピクセルに基づいてデブロッキングフィルタリングのタイプが決定されることができる。また、エッジのタイプが水平エッジである場合、ブロックの高さが4以下であれば、既にデブロッキングフィルタリングが適用されたピクセルに基づいてデブロッキングフィルタリングのタイプが決定されることができる。
【0369】
また他の例として、実施形態のように、エッジのタイプが垂直エッジである場合、ブロックの幅が4以下であれば、デブロッキングフィルタのタイプは、弱いフィルタリングに決定することができる。また、エッジのタイプが水平エッジである場合、ブロックの高さが4以下であれば、デブロッキングフィルタのタイプは、弱いフィルタリングに決定することができる。
【0370】
また他の例として、実施形態1-4のように、エッジのタイプが垂直エッジの場合には、ブロックの幅が4以下であれば、デブロッキングフィルタのタイプは、強いフィルタリングで決定され、強いフィルタリングはエッジの左右にそれぞれ隣接する2つのピクセル列にのみ適用することができる。また、エッジのタイプが水平エッジである場合、ブロックの高さが4以下であれば、デブロッキングフィルタのタイプは、強いフィルタリングで決定され、強いフィルタリングは、エッジの上側と下側にそれぞれ隣接する2つのピクセル列にのみ適用することができる。
【0371】
また他の例として、実施形態2のように、デブロッキングフィルタリングが適用される前にピクセルに基づいてデブロッキングフィルタリングのタイプが決定されることもある。
【0372】
また他の例として、実施形態3のように、ブロックが属するスライスがI-sliceである場合、ブロックが色彩ブロックかどうかとは無関係にS3302段階でエッジが決定され、S3303段階でデブロッキングフィルタリングのタイプが決定されることができる。
【0373】
フィルタリング部3504は、デブロッキングフィルタリングのタイプに応じて、復元されたピクチャのサンプルにデブロッキングフィルタリングを実行する。
【0374】
以上で説明された実施形態等は、本発明の構成要素等と特徴が所定形態に結合されたものなどである。各構成要素または特徴は、別の明示的言及がない限り、選択的なものと考慮されなければならない。各構成要素または特徴は、他の構成要素や特徴と結合されなかった形態で実施されることができる。また、一部構成要素等及び/又は特徴を結合して本発明の実施形態を構成することも可能である。本発明の実施形態等で説明される動作の順序は変更されることができる。ある実施形態の一部構成や特徴は、他の実施形態に含まれることができ、または、他の実施形態の対応する構成または特徴と交替されることができる。特許請求の範囲において明示的な引用関係がない請求項等を結合して実施形態を構成したり、出願後の補正により新しい請求項として含め得ることは自明である。
【0375】
本発明に係る実施形態は、様々な手段、例えば、ハードウェア、ファームウェア(firmware)、ソフトウェア、またはそれらの組み合わせなどにより実現されることができる。ハードウェアによる実現の場合、本発明の一実施形態は、1つまたはそれ以上のASICs(application specific integrated circuits)、DSPs(digital signal processors)、DSPDs(digital signal processing devices)、PLDs(programmable logic devices)、FPGAs(field programmable gate arrays)、プロセッサ、コントローラ、マイクロコントローラ、マイクロプロセッサなどにより実現されることができる。
【0376】
ファームウェアやソフトウェアによる実現の場合、本発明の一実施形態は、以上で説明された機能または動作を行うモジュール、手順、関数などの形態で実現されることができる。ソフトウェアコードは、メモリに格納されてプロセッサにより駆動されることができる。前記メモリは、前記プロセッサの内部または外部に位置し、既に公知の様々な手段により前記プロセッサとデータをやり取りすることができる。
【0377】
本発明は、本発明の必須的特徴を逸脱しない範囲で他の特定の形態で具体化され得ることは当業者に自明である。したがって、前述した詳細な説明は、あらゆる面で制限的に解釈されてはならず、例示的なことと考慮されなければならない。本発明の範囲は、添付された請求項の合理的解釈により決定されなければならず、本発明の等価的範囲内でのあらゆる変更は、本発明の範囲に含まれる。
【産業上の利用可能性】
【0378】
以上、前述した本発明の好ましい実施形態は、例示の目的のために開示されたものにおいて、当業者であれば、以下に添付された特許請求の範囲に開示された本発明の技術的思想とその技術的範囲内で、様々な他の実施形態の改良、変更、代替、または付加などが可能であろう。
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10
図11
図12
図13
図14
図15
図16
図17
図18
図19
図20
図21
図22
図23
図24
図25
図26
図27
図28
図29
図30
図31
図32
図33
図34
図35