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

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

▶ ソニーセミコンダクタソリューションズ株式会社の特許一覧

<図1>
  • 特許-画像処理装置および方法 図1
  • 特許-画像処理装置および方法 図2
  • 特許-画像処理装置および方法 図3
  • 特許-画像処理装置および方法 図4
  • 特許-画像処理装置および方法 図5
  • 特許-画像処理装置および方法 図6
  • 特許-画像処理装置および方法 図7
  • 特許-画像処理装置および方法 図8
  • 特許-画像処理装置および方法 図9
  • 特許-画像処理装置および方法 図10
  • 特許-画像処理装置および方法 図11
  • 特許-画像処理装置および方法 図12
  • 特許-画像処理装置および方法 図13
  • 特許-画像処理装置および方法 図14
  • 特許-画像処理装置および方法 図15
  • 特許-画像処理装置および方法 図16
  • 特許-画像処理装置および方法 図17
  • 特許-画像処理装置および方法 図18
  • 特許-画像処理装置および方法 図19
  • 特許-画像処理装置および方法 図20
  • 特許-画像処理装置および方法 図21
  • 特許-画像処理装置および方法 図22
  • 特許-画像処理装置および方法 図23
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-08-02
(45)【発行日】2024-08-13
(54)【発明の名称】画像処理装置および方法
(51)【国際特許分類】
   H04N 19/70 20140101AFI20240805BHJP
   H04N 19/172 20140101ALI20240805BHJP
   H04N 19/174 20140101ALI20240805BHJP
【FI】
H04N19/70
H04N19/172
H04N19/174
【請求項の数】 10
(21)【出願番号】P 2021527613
(86)(22)【出願日】2020-06-08
(86)【国際出願番号】 JP2020022487
(87)【国際公開番号】W WO2020255771
(87)【国際公開日】2020-12-24
【審査請求日】2023-04-14
(31)【優先権主張番号】P 2019114623
(32)【優先日】2019-06-20
(33)【優先権主張国・地域又は機関】JP
(73)【特許権者】
【識別番号】316005926
【氏名又は名称】ソニーセミコンダクタソリューションズ株式会社
(74)【代理人】
【識別番号】100121131
【弁理士】
【氏名又は名称】西川 孝
(74)【代理人】
【氏名又は名称】稲本 義雄
(74)【代理人】
【識別番号】100168686
【弁理士】
【氏名又は名称】三浦 勇介
(72)【発明者】
【氏名】木村 剛士
【審査官】久保 光宏
(56)【参考文献】
【文献】国際公開第2016/111199(WO,A1)
【文献】Rajan Joshi, et al.,"High Efficiency Video Coding (HEVC) Screen Content Coding: Draft 4",Document: JCTVC-U1005, [online],JCTVC-V0031 (version 1),Joint Collaborative Team on Video Coding (JCT-VC) of ITU-T SG 16 WP 3 and ISO/IEC JTC 1/SC 29/WG 11,2015年10月17日,Pages 43-45,94,95,280-282,298-300,364,[令和6年3月13日検索], インターネット, <URL: http://phenix.it-sudparis.eu/jct/doc_end_user/current_document.php?id=10223> and <URL: http://phenix.it-sudparis.eu/jct/doc_end_user/documents/22_Geneva/wg11/JCTVC-V0031-v1.zip>.,(See document file "JCTVC-U1005-v1-V0031.doc" in the zip file "JCTVC-V0031-v1.zip".)
【文献】Yongjun Wu, et al.,"Indication of the end of coded data for pictures and partial-picture regions",Document: JCTVC-S0148, [online],JCTVC-S0148 (version 1),Joint Collaborative Team on Video Coding (JCT-VC) of ITU-T SG 16 WP 3 and ISO/IEC JTC 1/SC 29/WG 11,2014年10月07日,Pages 1-3,[令和6年3月13日検索], インターネット, <URL: http://phenix.int-evry.fr/jct/doc_end_user/current_document.php?id=9594> and <URL: http://phenix.int-evry.fr/jct/doc_end_user/documents/19_Strasbourg/wg11/JCTVC-S0148-v1.zip>.,(See document file "JCTVC-S0148.doc" in the zip file "JCTVC-S0148-v1.zip".)
(58)【調査した分野】(Int.Cl.,DB名)
H04N19/00-19/98
CSDB(日本国特許庁)
学術文献等データベース(日本国特許庁)
IEEEXplore(IEEE)
(57)【特許請求の範囲】
【請求項1】
第1のAU(Access Unit)のSEI(Supplemental Enhancement Information)に、前記第1のAUの次に処理される第2のAUのヘッダ情報の少なくとも一部、または前記ヘッダ情報の少なくとも一部に関する情報を付加して、符号化ストリームを生成する符号化ストリーム生成部を備え
前記第1のAUは、GOP(Group Of Pictures)の先頭のAUであり、
前記符号化ストリーム生成部は、前記第1のAUの前記SEIに、前記GOP内のAUの前記ヘッダ情報の少なくとも一部を生成するための生成パターンを付加する
画像処理装置。
【請求項2】
前記符号化ストリーム生成部は、前記第1のAUの前記SEIに、前記GOP内の前記第2のAU以降のAUの前記ヘッダ情報の少なくとも一部を付加する
請求項1に記載の画像処理装置。
【請求項3】
前記符号化ストリーム生成部は、前記第2のAUの前記ヘッダ情報の少なくとも一部を前記第1のAUの前記SEIに付加する
請求項1に記載の画像処理装置。
【請求項4】
前記ヘッダ情報の少なくとも一部は、復号処理の前処理に必要な情報である
請求項に記載の画像処理装置。
【請求項5】
前記前処理に必要な情報は、POC(Picture Order Count)の生成に必要な情報である
請求項に記載の画像処理装置。
【請求項6】
前記前処理に必要な情報は、ピクチャ毎に変化するパラメータである
請求項に記載の画像処理装置。
【請求項7】
前記前処理は、前記ヘッダ情報のパース処理、POC生成処理、およびRefPicListの生成処理を含む
請求項に記載の画像処理装置。
【請求項8】
画像処理装置が、
第1のAU(Access Unit)のSEI(Supplemental Enhancement Information)に、前記第1のAUの次に処理される第2のAUのヘッダ情報の少なくとも一部、または前記ヘッダ情報の少なくとも一部に関する情報を付加して、符号化ストリームを生成し、
前記第1のAUは、GOP(Group Of Pictures)の先頭のAUであり、
前記符号化ストリームには、前記第1のAUの前記SEIに、前記GOP内のAUの前記ヘッダ情報の少なくとも一部を生成するための生成パターンが付加される
画像処理方法。
【請求項9】
第1のAUのSEIに、前記第1のAUの次に処理される第2のAUのヘッダ情報の少なくとも一部、または前記ヘッダ情報の少なくとも一部に関する情報を付加して生成された符号化ストリームが受信されて処理された前記ヘッダ情報に基づいて、前記第2のAUを復号する復号部を備え
前記第1のAUは、GOPの先頭のAUであり、
前記復号部は、前記第1のAUの前記SEIに付加された、前記GOP内のAUの前記ヘッダ情報の少なくとも一部を生成するための生成パターンを用いて前記第2のAUを復号する
画像処理装置。
【請求項10】
画像処理装置が、
第1のAUのSEIに、前記第1のAUの次に処理される第2のAUのヘッダ情報の少なくとも一部、または前記ヘッダ情報の少なくとも一部に関する情報を付加して生成された符号化ストリームが受信されて処理された前記ヘッダ情報に基づいて、前記第2のAUを復号
前記第1のAUは、GOPの先頭のAUであり、
前記第1のAUの前記SEIに付加された、前記GOP内のAUの前記ヘッダ情報の少なくとも一部を生成するための生成パターンが用いられて前記第2のAUが復号される
画像処理方法。
【発明の詳細な説明】
【技術分野】
【0001】
本技術は、画像処理装置および方法に関し、特に、ストリームが入力されてから復号画像が生成されるまでの遅延を短縮することができるようにした画像処理装置および方法に関する。
【背景技術】
【0002】
画像の圧縮手法として、MPEG2、AVC(Advanced Video Coding)、HEVC(High Efficiency Video Coding)などが広く利用されている(非特許文献1参照)。
【0003】
これらの圧縮手法により圧縮されたデータを復号する際、復号装置は、まず、前処理として、ヘッダをパースして、復号対象であるピクチャの情報を抽出する。復号装置は、次に、抽出した情報を用いて復号画像を生成し、次のピクチャの復号処理の入力となる情報を、後処理によって生成する。
【0004】
この一連の処理は、シーケンシャルに行われる必要がある。
【先行技術文献】
【非特許文献】
【0005】
【文献】T-REC-H.265-201802、[online]、2018-02-13、ITU、[2019,5,30検索]、インターネット、<https://www.itu.int/rec/T-REC-H.265-201802-I/en>
【発明の概要】
【発明が解決しようとする課題】
【0006】
低遅延化が要求されるストリーミングなどのシステムにおいて、ヘッダを解釈する前処理と復号画像生成処理がシーケンシャルに行われる場合、前処理の実行中は復号画像を生成することが困難であった。
【0007】
したがって、入力されたストリームを即時復号して表示するシステムの場合、前処理の実行にかかる時間分、表示の遅延を持たせる必要があり、これが低遅延化の妨げになっていた。
【0008】
本技術はこのような状況に鑑みてなされたものであり、ストリームが入力されてから復号画像が生成されるまでの遅延を短縮することができるようにするものである。
【課題を解決するための手段】
【0009】
本技術の一側面の画像処理装置は、第1のAU(Access Unit)のSEI(Supplemental Enhancement Information)に、前記第1のAUの次に処理される第2のAUのヘッダ情報の少なくとも一部、または前記ヘッダ情報の少なくとも一部に関する情報を付加して、符号化ストリームを生成する符号化ストリーム生成部を備え、前記第1のAUは、GOP(Group Of Pictures)の先頭のAUであり、前記符号化ストリーム生成部は、前記第1のAUの前記SEIに、前記GOP内のAUの前記ヘッダ情報の少なくとも一部を生成するための生成パターンを付加する
【0010】
本技術の一側面においては、第1のAU(Access Unit)のSEI(Supplemental Enhancement Information)に、前記第1のAUの次に処理される第2のAUのヘッダ情報の少なくとも一部、または前記ヘッダ情報の少なくとも一部に関する情報を付加して、符号化ストリームが生成される。第1のAUは、GOP(Group Of Pictures)の先頭のAUであり、前記第1のAUの前記SEIに、前記GOP内のAUの前記ヘッダ情報の少なくとも一部を生成するための生成パターンが付加される
【0011】
本技術の他の側面の画像処理装置は、第1のAUのSEIに、前記第1のAUの次に処理される第2のAUのヘッダ情報の少なくとも一部、または前記ヘッダ情報の少なくとも一部に関する情報を付加して生成された符号化ストリームが受信されて処理された前記ヘッダ情報に基づいて、前記第2のAUを復号する復号部を備え、前記第1のAUは、GOPの先頭のAUであり、前記復号部は、前記第1のAUの前記SEIに付加された、前記GOP内のAUの前記ヘッダ情報の少なくとも一部を生成するための生成パターンを用いて前記第2のAUを復号する
【0012】
本技術の他の側面においては、第1のAUのSEIに、前記第1のAUの次に処理される第2のAUのヘッダ情報の少なくとも一部、または前記ヘッダ情報の少なくとも一部に関する情報を付加して生成された符号化ストリームが受信されて処理された前記ヘッダ情報に基づいて、前記第2のAUが復号される。第1のAUは、GOPの先頭のAUであり、前記第1のAUの前記SEIに付加された、前記GOP内のAUの前記ヘッダ情報の少なくとも一部を生成するための生成パターンが用いられ前記第2のAUが復号される
【図面の簡単な説明】
【0013】
図1】一般的な符号化装置の構成例を示すブロック図である。
図2】一般的な復号装置の構成例を示すブロック図である。
図3】復号装置における各処理のタイミングを示す図である。
図4図2の復号装置の復号処理の例を示すフローチャートである。
図5】復号装置の処理シーケンスの例を示す図である。
図6】復号装置の処理シーケンスの他の例を示す図である。
図7】本技術を適用したストリームの構成例を示す図である。
図8】本技術を適用したストリームの他の構成例を示す図である。
図9】本技術を適用した符号化装置の構成例を示すブロック図である。
図10】VCL符号化部の構成例を示すブロック図である。
図11図9の符号化装置の符号化処理を説明するフローチャートである。
図12図11のステップS109のVCL符号化処理を説明するフローチャートである。
図13】AVCの場合にSEI化が必要な情報の例を示す図である。
図14】HEVCの場合にSEI化が必要な情報の例を示す図である。
図15】AVCの場合にRefPicList生成に必須であるシンタックスパラメータの例を示す図である。
図16】本技術を適用した復号装置の構成例を示すブロック図である。
図17】VCL復号部の構成例を示すブロック図である。
図18図16の復号装置の復号処理を説明するフローチャートである。
図19図18のステップS204のVCL復号処理を説明するフローチャートである。
図20】本技術の復号装置における各処理のタイミングを示す図である。
図21】従来の復号装置における各処理のタイミングを示す図である。
図22】本技術の復号装置における各処理のタイミングを示す図である。
図23】コンピュータの構成例を示すブロック図である。
【発明を実施するための形態】
【0014】
以下、本技術を実施するための形態について説明する。説明は以下の順序で行う。
1.概要
2.符号化装置
3.復号装置
4.その他
【0015】
<<1.概要>>
<一般的な符号化装置の構成>
図1は、一般的な符号化装置の構成例を示すブロック図である。
【0016】
符号化装置1は、画像取り込み部21、ピクチャタイプ決定部22、GOP(Group Of Pictures)構造生成部23、符号化順並び替え部24、上位ヘッダ生成部25、上位ヘッダ符号化部26、VCL(Video Coding Layer)符号化部27、および演算器28から構成される。
【0017】
画像取り込み部21は、前段から入力される画像を取り込み、取り込んだ画像を、ピクチャタイプ決定部22に出力する。
【0018】
ピクチャタイプ決定部22は、GOP構造生成部23から供給されるGOP構造を示すGOP情報に基づいて、画像取り込み部21から供給される画像のピクチャタイプを決定する。ピクチャタイプ決定部22は、各画像に対して、POC(Picture Order Count)も付与する。ピクチャタイプ決定部22は、ピクチャタイプが決定され、POCが付与された画像を、符号化順並び替え部24に出力する。
【0019】
GOP構造生成部23は、GOP構造を決定し、決定したGOP構造を示すGOP情報を、ピクチャタイプ決定部22と符号化順並べ替え部24に出力する。
【0020】
符号化順並び替え部24は、表示順の画像を、符号化順に並び替える。符号化順並び替え部24は、並び替えた画像を上位ヘッダ生成部25に出力する。
【0021】
上位ヘッダ生成部25は、符号化順並び替え部24から供給される画像を参照して、上位シンタックスのヘッダである上位ヘッダを生成する。上位シンタックスは、例えば、SPS(Sequence Parameter Set)、PPS(Picture Parameter Set)、SEI(Supplemental Enhancement Information)などである。上位ヘッダ生成部25は、生成した上位ヘッダを、上位ヘッダ符号化部26に出力する。上位ヘッダ生成部25は、画像を、VCL符号化部27に出力する。
【0022】
上位ヘッダ符号化部26は、上位ヘッダ生成部25から供給された上位ヘッダを符号化する。上位ヘッダ符号化部26は、符号化された上位ヘッダを、演算器28に出力する。
【0023】
VCL符号化部27は、上位ヘッダ生成部25から供給された画像を符号化し、VCLを生成する。VCLは、ヘッダを除いた画像そのものの圧縮データのことである。VCL符号化部27は、生成したVCLを演算器28に出力する。
【0024】
演算器28は、上位ヘッダ符号化部26から供給される上位ヘッダと、VCL符号化部27から供給されるVCLを加算する。演算器28は、上位ヘッダとVCLからなるビットストリームを、後段の復号装置などに出力する。
【0025】
<一般的な復号装置の構成>
図2は、一般的な復号装置の構成例を示すブロック図である。
【0026】
復号装置31は、ビットストリーム入力部41、ヘッダ復号部42、参照関係復号部43、VCL復号部44、および画像出力部45から構成される。
【0027】
前段からのビットストリームは、ビットストリーム入力部41に供給される。
【0028】
ビットストリーム入力部41は、ビットストリームをヘッダ復号部42とVCL復号部44に出力する。
【0029】
ヘッダ復号部42および参照関係復号部43は、ビットストリームに対して、ヘッダのパース、パラメータの算出、およびRefPicList(参照画像情報)の生成などからなる前処理を行う。
【0030】
ヘッダ復号部42は、ヘッダのパースとして、ピクチャのヘッダ情報(ピクチャヘッダやスライスヘッダ)を解釈する。ヘッダ復号部42は、解釈したヘッダ情報を、参照関係復号部43に出力する。
【0031】
参照関係復号部43は、ヘッダ復号部42から供給されるヘッダ情報に基づいて、例えば、POCなど、画像の復号過程で必要となるパラメータの算出を行い、RefPicListを生成する。
【0032】
VCL復号部44は、前処理において生成された情報を随時参照しながら、画像を復号し、復号画像を再構成する。VCL復号部44は、再構成した復号画像を、画像出力部45に出力する。VCL復号部44は、また、DPB(Decoded Picture Buffer)更新部51を有している。
【0033】
DPB更新部51は、後処理として、DPBを更新し、DPB更新情報を、参照関係復号部43に出力する。参照関係復号部43は、DPB更新情報に基づいて、RefPicListを更新する。
【0034】
画像出力部45は、VCL復号部44から供給された復号画像を、後段の表示部などに出力する。
【0035】
<復号装置における各処理のタイミング>
図3は、図2の復号装置31における各処理のタイミングを示す図である。横軸は、時間の流れを表している。なお、frame-1の枝番は、1番目を意味する。よって、frame-1は、1番目のフレームを表す。以降の図においても同様である。
【0036】
時刻t1において、frame-1ストリームの入力が開始される。
【0037】
時刻t2において、frame-1に対する前処理-1が開始され、時刻t3において、前処理-1が終了する。前処理-1が終了した時刻t3において、VCL復号-1が開始され、その後の時刻t4で、ようやくframe-1の出力が開始される。
【0038】
時刻t5において、frame-1ストリームの入力が終了される。その直後の時刻t6において、frame-2ストリームの入力が開始されるとともに、VCL復号-1が終了され、後処理-1が開始される。
【0039】
時刻t7において、後処理-1が終了されるとともに、frame-2に対する前処理-2が開始される。前処理-2が終了された時刻t8において、VCL復号-2が開始される。その後の時刻t9で、frame-1の出力が終了され、時刻t10において、ようやくframe-2の出力が開始される。
【0040】
時刻t11において、frame-2ストリームの入力が終了される。その直後の時刻t12において、VCL復号-2が終了される。そして、時刻t13において、後処理-2が終了され、時刻t14において、frame-2の出力が終了となる。
【0041】
以上のように、一般的な復号装置31においては、ストリーム入力の時刻t1または復号の開始の時刻t2から、出力開始の時刻t4までの遅延を、少なくとも前処理-1の時間が含まれるほど、大きく取る必要があった。
【0042】
<復号装置の動作>
図4は、図2の復号装置31の復号処理の例を示すフローチャートである。
【0043】
ステップS11において、ヘッダ復号部42は、前処理として、ビットストリームに対して、ヘッダをパースする。ヘッダ復号部42は、ヘッダのパースにより解釈したヘッダ情報を、参照関係復号部43に出力する。
【0044】
ステップS12において、参照関係復号部43は、前処理として、POCを算出する。
【0045】
ステップS13において、参照関係復号部43は、前処理として、RefPicListを生成する。
【0046】
ステップS14において、VCL復号部44は、前処理において生成された情報を随時参照しながら、画像(VCL)を復号し、再構成する。
【0047】
ステップS15において、VCL復号部44は、後処理として、RefPicのmarking処理を行う。
【0048】
ステップS16において、DPB更新部51は、後処理として、DPB(Decoded Picture Buffer)の更新を行い、画像出力部45は、後処理として、Picture(復号画像)の出力を行う。ステップS16において更新したDPBの更新情報は、次の前処理において用いられる。
【0049】
ステップS16の後、処理はステップS11に戻り、次のピクチャに対して、以降の処理が繰り返される。
【0050】
以上のように、図4のステップS11乃至S13が前処理である。前処理が終わらないと、ステップS14のVCL復号が開始できない。また、図4のステップS15およびS16が後処理である。後処理は、VCL復号が終わる前に進めてしまうことも可能である。なお、1つ前のピクチャの後処理が終らないと、次のピクチャの前処理は開始できない。
【0051】
<復号装置の処理のシーケンスの例>
図5は、図2の復号装置31の処理シーケンスの例を示す図である。
【0052】
復号装置31は、フレーム1の前処理-1の次に、フレーム1のVCL復号-1を行う。復号装置31は、フレーム1のVCL復号-1の後に、フレーム1の後処理-1を行う。また、復号装置31は、フレーム1の後処理-1の後に、フレーム2の前処理-2を行う。復号装置31は、フレーム2の前処理-2の後に、フレーム2のVCL復号-2を行う。復号装置31は、フレーム2のVCL復号-2の後に、フレーム2の後処理-2を行う。
【0053】
このように、復号装置31においては、各処理が連続して行われる。
【0054】
図6は、図2の復号装置31の処理シーケンスの他の例を示す図である。
【0055】
図6には、VCL復号が終了する前に、後処理を進めてしまう例が示されている。
【0056】
復号装置31は、フレーム1の前処理-1が終った後、フレーム1のVCL復号-1を行う。復号装置31は、フレーム1のVCL復号-1の途中で、フレーム1の後処理-1を、フレーム1のVCL復号-1と並列に行う。したがって、復号装置31は、フレーム1のVCL復号-1が終った後、フレーム2の前処理-2をすぐに行うことができる。
【0057】
同様に、復号装置31は、フレーム2の前処理-2が終った後、フレーム2のVCL復号-2を行う。復号装置31は、フレーム2のVCL復号-2の途中で、フレーム2の後処理-2を、フレーム2のVCL復号-2と並列に行う。したがって、復号装置31は、フレーム2のVCL復号-2が終った後、図示されないが、次のフレーム3の前処理-3をすぐに行うことができる。
【0058】
以上のように、低遅延化が要求されるストリーミングなどのシステムにおいて、ヘッダを解釈する前処理と復号画像生成処理がシーケンシャルに行われる場合、前処理の実行中は復号画像の生成が停止してしまう。
【0059】
入力されたストリームを即時復号して表示するシステムの場合、前処理の実行にかかる時間分、表示の遅延を持たせる必要があり、これが低遅延化の妨げになっていた。
【0060】
ここで、各AU(Access Unit)の処理順で次のAU(各AUの次に処理されるAU)のヘッダ情報には、復号側が各AUの前処理を行う際に事前にほしい情報が含まれている。この情報は、符号化側で、遅くとも各AUの上位ヘッダを作る際に前倒しで生成可能な情報である。
【0061】
なお、AUは、1枚の実効的なピクチャ(フレーム)を生成できる、NAL(Network Abstraction Layer)ユニットの集まりである。すなわち、AUは、ピクチャ(フレーム)のことを表す。以下、ピクチャ(フレーム)のことをAUとも称する。
【0062】
したがって、本技術においては、第1のAUのSEIに、第1のAUの次に処理される第2のAUのヘッダ情報の少なくとも一部、またはヘッダ情報の少なくとも一部に関する情報が付加されて、符号化ストリームが生成される。このようにすることで、復号の遅延を短くすることができる。
【0063】
<本技術のストリームの構成>
図7は、本技術を適用したストリームの構成例を示す図である。
【0064】
図7においては、左から順に、1番目のAUと2番目のAUが示されている。
【0065】
1番目のAUは、AUD(Access Unit Delimiter)、SPS/PPS、SEI、SliceHdr(Header)-1、およびVCL-1から構成される。2番目のAUは、AUD、SEI、SliceHdr-2、およびVCL-2から構成される。
【0066】
本技術においては、図7の破線矢印に示されるように、2番目のAUのSliceHdr-2が、1番目のAUのSEIに付加される。すなわち、N(N>1)番目のAUのSliceHdr-2が、N-1番目のAUのSEIに付加される。
【0067】
なお、低遅延システムにおいては、変化のあるシンタックスパラメータは殆ど限定される。したがって、符号化装置は、SliceHdr-2のパラメータうち、ピクチャ毎に変化のあるパラメータだけを抽出し、抽出した最小限のパラメータを、SEIに付加するようにしてもよい。また、図13乃至図15に後述するパラメータなどであってもよい。
【0068】
図8は、本技術を適用したストリームの他の構成例を示す図である。
【0069】
図8においては、左から順に、GOPの1番目(先頭)のAUと2番目のAUが示されている。
【0070】
1番目のAUは、AU、SPS/PPS、SEI、SliceHdr-1、およびVCL-1から構成される。2番目のAUは、AUD、SliceHdr-2、およびVCL-2から構成される。
【0071】
図8の場合のストリームでは、1GOP分の各ピクチャの前処理に必要となる情報が、GOP先頭のSEIにまとめて付加される。
【0072】
前処理に必要となる情報としては、図13乃至図15に後述するパラメータなどが考えられるが、上述したピクチャ毎に変化のあるパラメータだけであってもよいし、ピクチャの先頭スライスのスライスヘッダすべてであってもよい。また、それらのスライスヘッダの中から、前処理に必要な情報を絞りこんでもいい。なお、これは、図7の場合も同様である。
【0073】
限定された運用の場合、符号化装置は、パラメータを事前に作ることが可能である。すなわち、符号化装置は、必要なパラメータの生成パターン(生成ルール)を事前に用意しておくことができる。
【0074】
したがって、符号化側で、前処理に必要な情報そのものが先行して送られるのではなく、事前に用意した生成パターンが、1番目、すなわち、GOPの先頭のAUのSEIに付加されて送られるようにしてもよい。
【0075】
なお、この場合、AUのSliceHdrは、答え合わせに後追いで用いられるだけであり、実際の前処理には用いられない。
【0076】
以上のようにすることで、ビットストリームを入力してから、VCL復号にとりかかるまでの待ち時間が短くなる。これにより、復号装置は、各処理を効率的に行うことができる。
【0077】
<<2.符号化装置>>
<符号化装置の構成例>
図9は、本技術を適用した符号化装置の構成例を示すブロック図である。図9に示す構成のうち、図1を参照して説明した構成と同じ構成には同じ符号を付してある。重複する説明については適宜省略する。
【0078】
図9の符号化装置101は、画像取り込み部21、ピクチャタイプ決定部22、GOP構造生成部23、符号化順並び替え部24、上位ヘッダ生成部25、上位ヘッダ符号化部26、VCL符号化部27、および演算器28から構成される。さらに、符号化装置101は、上位ヘッダ保持メモリ111、上位ヘッダSEI化部112、SEI符号化部113、および演算器114から構成される。
【0079】
符号化装置101は、上位ヘッダ保持メモリ111、上位ヘッダSEI化部112、SEI符号化部113、および演算器114が追加された点が図1の符号化装置1と異なる。
【0080】
図9の符号化装置101は、生成するストリームのGOP構造を事前に知った上で、もしくは、予め決めて、それに従って符号化処理を行う。そのため、符号化装置101は、各AUを符号化する際、ピクチャの参照関係やヘッダ情報を事前に生成しておくことが可能である。
【0081】
上位ヘッダ生成部25は、ピクチャの参照関係やヘッダ情報を事前に生成する。上位ヘッダ生成部25は、生成した上位ヘッダを、上位ヘッダ保持メモリ111に保持させる。
【0082】
上位ヘッダ保持メモリ111は、上位ヘッダを保持する。
【0083】
上位ヘッダ符号化部26は、上位ヘッダ保持メモリ111に保持されている上位ヘッダを用いて、現在符号化するピクチャの上位ヘッダを符号化する。上位ヘッダ符号化部26は、符号化された上位ヘッダを、演算器28に出力する。
【0084】
上位ヘッダSEI化部112は、上位ヘッダ保持メモリ111に保持されている上位ヘッダから、次のピクチャの上位ヘッダを、SEIの、例えば、UserdataとしてSEI化する。上位ヘッダSEI化部112は、SEI化された上位ヘッダであるSEIを、SEI符号化部113に出力する。
【0085】
SEI符号化部113は、SEIを符号化する。SEI符号化部113は、符号化したSEIである符号化SEIを、演算器114に出力する。
【0086】
演算器28は、上位ヘッダ符号化部26から供給される上位ヘッダと、VCL符号化部27から供給されるVCLを加算する。演算器28は、上位ヘッダとVCLからなるビットストリームを生成し、演算器114に出力する。
【0087】
演算器114は、上位ヘッダとVCLからなるビットストリームに、符号化SEIを加算する。演算器114は、上位ヘッダ、符号化SEI、およびVCLからなるビットストリームを、例えば、後段の復号装置に出力する。
【0088】
符号化装置101が、符号化処理の先頭で、GOP構造を決める符号化装置である場合、符号化装置101は、1GOP分のヘッダ情報をGOPの先頭で生成し、生成した1GOP分のヘッダ情報を、シーケンスもしくはGOPの先頭に、Userdataとして付加してもよい。この場合、復号側において、1GOP分のヘッダ情報が、GOP先頭の復号タイミングで再構成されることになる。
【0089】
<VCL符号化部の構成>
図10は、VCL符号化部27の構成例を示すブロック図である。
【0090】
図10において、VCL符号化部27は、演算器151、DCT変換/量子化部152、エントロピー符号化部153、逆量子化/逆DCT変換部154、演算器155、デブロッキングフィルタ156、および、アダプティブループフィルタ157から構成される。さらに、VCL符号化部27は、フレームメモリ158、動き検出部159、動き補償部160、空間予測部161、およびセレクタ162から構成される。
【0091】
前段から入力された入力画像は、演算器151、空間予測部161、および動き検出部159に供給される。
【0092】
演算器151は、入力画像と、セレクタ162から供給される予測画像との差分を演算し、演算後の差分画像を、DCT変換/量子化部152に出力する。
【0093】
DCT変換/量子化部152は、演算器151から供給された差分画像に対して、DCT変換を行う。DCT変換/量子化部152は、DCT変換後の画像に対して、量子化を行い、量子化後の画像を、エントロピー符号化部153および逆量子化/逆DCT変換部154に出力する。
【0094】
エントロピー符号化部153は、DCT変換/量子化部152から供給される量子化後の画像を、エントロピー符号化し、符号化結果の画像であるVCLを、後段の演算器28に出力する。
【0095】
逆量子化/逆DCT変換部154は、DCT変換/量子化部152から供給される量子化後の画像に対して、逆量子化を行い、DCT変換後の画像を得る。逆量子化/逆DCT変換部154は、DCT変換後の画像に対して、逆DCT変換を行い、差分画像を得る。差分画像は、演算器155に供給される。
【0096】
演算器155は、逆量子化/逆DCT変換部154から供給される差分画像と、セレクタ162から供給される予測画像とを加算し、復号画像を生成する。演算器155は、生成した復号画像をデブロッキングフィルタ156に出力する。
【0097】
デブロッキングフィルタ156は、演算器155から供給される復号画像に対して、デブロッキングフィルタ処理を施し、デブロッキングフィルタ処理後の復号画像を、アダプティブループフィルタ157に出力する。
【0098】
アダプティブループフィルタ(ALF)157は、デブロッキングフィルタ処理後の復号画像に対して、ALF処理を施し、ALF処理後の画像を、フレームメモリ158に供給する。
【0099】
動き検出部159および動き補償部160は、入力画像に対して、インター予測を行う。
【0100】
動き検出部159は、入力画像と、フレームメモリ158の参照画像とを用いて、動きベクトルを検出する。動き検出部159は、検出した動きベクトルを、動き補償部160に出力する。
【0101】
動き補償部160は、動き検出部159から供給される動きベクトルを用いて、動き補償を行い、インター予測画像を生成する。インター予測画像は、セレクタ162に出力される。
【0102】
空間予測部161は、入力画像に対して、イントラ予測を行い、イントラ予測画像を生成する。イントラ予測画像は、セレクタ162に出力される。
【0103】
セレクタ162は、インター予測画像とイントラ予測画像のうち、所定のコスト関数が最適な値を示す予測画像を選択する。セレクタ162は、選択した予測画像を、演算器151および演算器155に出力する。
【0104】
<符号化装置の動作>
図11は、図9の符号化装置101の符号化処理を説明するフローチャートである。
【0105】
ステップS101において、画像取り込み部21は、前段から入力される画像を取り込み、取り込んだ画像を、ピクチャタイプ決定部22に出力する。
【0106】
ステップS102において、GOP構造生成部23は、GOP構造を決定する。GOP構造生成部23は、決定したGOP構造を示すGOP情報を、ピクチャタイプ決定部22と符号化順並べ替え部24に出力する。
【0107】
ステップS103において、ピクチャタイプ決定部22は、GOP構造生成部23から供給されるGOP情報に基づいて、画像取り込み部21から供給される画像のピクチャタイプを決定する。
【0108】
ステップS104において、符号化順並び替え部24は、表示順の画像を、符号化順に並び替える。符号化並び替え部24は、並び替えた画像を上位ヘッダ生成部25に出力する。
【0109】
ステップS105において、上位ヘッダ生成部25は、符号化並び替え部24から供給される画像を参照して、上位ヘッダを生成する。
【0110】
ステップS106において、上位ヘッダ保持メモリ111は、上位ヘッダ生成部25により生成された上位ヘッダを保持する。
【0111】
ステップS107において、上位ヘッダ符号化部26は、上位ヘッダ保持メモリ111に保持されている上位ヘッダを用いて、符号化対象となるAU(以下、現在のAUと称する)の上位ヘッダを符号化する。上位ヘッダ符号化部26は、符号化された上位ヘッダを、演算器28に出力する。
【0112】
ステップS108において、上位ヘッダSEI化部112は、上位ヘッダ保持メモリ111に保持されている上位ヘッダから、現在のAUより処理順で次のAUの上位ヘッダを、SEIのUserdataとしてSEI化する。上位ヘッダSEI化部112は、SEI化された上位ヘッダであるSEIを、SEI符号化部113に出力する。
【0113】
ステップS109において、SEI符号化部113は、SEIを符号化する。SEI符号化部113は、符号化したSEIである符号化SEIを、演算器114に出力する。
【0114】
ステップS110において、VCL符号化部27は、符号化順並び替え部24から供給される画像をVCL符号化し、VCLを生成する。このVCL符号化処理の詳細は、図12を参照して後述される。VCL符号化部27は、生成したVCLを演算器28に出力する。
【0115】
ステップS111において、演算器28と演算器114は、ビットストリームを生成する。すなわち、演算器28は、上位ヘッダ符号化部26から供給される上位ヘッダと、VCL符号化部27から供給されるVCLを加算する。演算器28は、上位ヘッダとVCLからなるビットストリームを生成し、演算器114に出力する。演算器114は、上位ヘッダとVCLからなるビットストリームに、符号化SEIを加算する。演算器114は、上位ヘッダ、符号化SEI、およびVCLからなるビットストリームを、例えば、後段の復号装置に出力する。
【0116】
図12は、図11のステップS110のVCL符号化処理を説明するフローチャートである。
【0117】
前段の符号化順並び替え部24から入力された入力画像は、演算器151、空間予測部161、および動き検出部159に供給される。
【0118】
ステップS151において、演算器151は、入力画像と、セレクタ162から供給される予測画像との差分画像を求める。演算器151は、求めた差分画像を、DCT変換/量子化部152に出力する。
【0119】
ステップS152において、DCT変換/量子化部152は、演算器151から供給された差分画像に対して、DCT変換を行う。DCT変換/量子化部152は、DCT変換後の画像に対して、量子化を行い、量子化後の画像を、エントロピー符号化部153および逆量子化/逆DCT変換部154に出力する。
【0120】
ステップS153において、エントロピー符号化部153は、DCT変換/量子化部152から供給される量子化後の画像を、エントロピー符号化し、符号化結果の画像であるVCLを、後段の演算器28に出力する。
【0121】
ステップS154において、逆量子化/逆DCT変換部154は、DCT変換/量子化部152から供給される量子化後の画像に対して、逆量子化を行い、DCT変換後の画像を得る。逆量子化/逆DCT変換部154は、DCT変換後の画像に対して、逆DCT変換を行い、差分画像を得る。差分画像は、演算器155に供給される。
【0122】
ステップS155において、演算器155は、逆量子化/逆DCT変換部154から供給される差分画像と、セレクタ162から供給される予測画像とを加算する。演算器155は、加算結果である画像をデブロッキングフィルタ156に出力する。
【0123】
ステップS156において、デブロッキングフィルタ156は、演算器155から供給される画像に対して、デブロッキングフィルタ処理を施し、デブロッキングフィルタ処理後の画像を、アダプティブループフィルタ157に出力する。
【0124】
ステップS157において、アダプティブループフィルタ157は、デブロッキングフィルタ処理後の画像に対して、ALF処理を施し、ALF処理後の画像を、フレームメモリ158に供給する。
【0125】
ステップS158において、フレームメモリ158は、ALF処理後の画像を蓄積する。
【0126】
ステップS159において、動き検出部159および動き補償部160は、入力画像に対して、インター予測を行い、インター予測画像を生成する。インター予測画像は、セレクタ162に出力される。
【0127】
ステップS160において、空間予測部161は、入力画像に対して、イントラ予測を行い、イントラ予測画像を生成する。イントラ予測画像は、セレクタ162に出力される。
【0128】
ステップS161において、セレクタ162は、インター予測画像とイントラ予測画像のうち、所定のコスト関数が最適な値を示す予測画像を選択する。セレクタ162は、選択した予測画像を、演算器151および演算器155に出力する。
【0129】
<SEI化が必要な情報>
図13は、画像の圧縮方式がAVCの場合に、AUの上位ヘッダにおいて、処理順で次のAUのヘッダ情報のうち、SEI化が必要な情報の例を示す図である。
【0130】
AUの上位ヘッダにおいてSEI化が必要な情報は、必ずしも処理順で次のAUのヘッダ情報のすべてとは限らず、ヘッダ情報の一部である場合もある。なお、AUの上位ヘッダにおいてSEI化が必要な情報は、復号側が事前にほしい情報であり、また、符号化側が前倒しで生成可能な情報である。
【0131】
AVCの場合、AUの上位ヘッダにおいてSEI化が必要な情報は、図13に示されるように、少なくとも、nal_unit_type、pic_parameter_set_id、frame_num、field_pic_flag、bottom_field_flag、およびPOCの生成に必要な情報である。
【0132】
nal_unit_typeは、IDR(Instantaneous Decoder Refresh)か否かを示す情報である。POCの生成に必要な情報は、例えば、pic_order_cnt_lsb、delta_pic_order_cnt_bottom、delta_pic_order_cnt[2]である。
【0133】
これらのGOP構造、frame/field、POC生成パターンに関するデータは、事前に定義ができるため、符号化装置101が前倒しで生成することが可能である。
【0134】
図14は、画像の圧縮方式がHEVCの場合に、AUの上位ヘッダにおいて、処理順で次のAUのヘッダ情報のうち、SEI化が必要な情報の例を示す図である。
【0135】
HEVCの場合、AUの上位ヘッダにおいてSEI化が必要な情報は、図14に示されるように、少なくとも、nal_unit_type、slice_pic_order_cnt_lsb、short_term_ref_pic_set_sps_flag、short_term_ref_pic_set_idx、num_long_term_sps、num_long_term_picsである。
【0136】
short_term_ref_pic_set_sps_flagについては、st_ref_pic_set(num_short_term_ref_pic_sets)も必要な情報である。また、SPSのRPS(レイヤ間参照ピクチャセット)を上書きする場合、st_ref_pic_set(num_short_term_ref_pic_sets)の中で抽出するパラメータも必要な情報である。
【0137】
num_long_term_picsについては、LongTermが有効、かつ、Pictureで追加する場合、lt_idx_sps[i]、poc_lsb_lt[i]、usd_by_curr_pic_lt_flag[i]、deita_poc_msb_present_flag[i]、およびdelta_poc_msb_cycle_lt[i]が、必要な情報である。
【0138】
HEVCの場合、通常、GOP構造を決めてSPSに必要なRPSセットが入れられるため、AUの上位ヘッダにおいてSEI化が必要な情報は、ほぼPOC生成に必要な情報だけでよいため、符号化装置101が前倒しで生成することが可能である。
【0139】
図15は、画像の圧縮方式がAVCの場合、ヘッダ情報のシンタックスパラメータ(Syntax Parameter)のうち、RefPicListの生成に必須であるパラメータの例を示す図である。
【0140】
図15においては、左から順に、シンタックスパラメータ、RefPicListの生成に必須か否かを示すレベル、必須である理由が記載されている。
【0141】
nal_unit_typeは、RefPicListの生成に必須なパラメータである。必須である理由は、IDRか否かを知る必要があるためである。
【0142】
pic_parameter_set_idは、RefPicListの処理生成に必須なパラメータである。必須である理由は、PPSおよびSPSを特定するためである。bottom_field_pic_order_in_frame_present_flagは、PPSに含まれるパラメータであり、SliceHeaderのdelta_pic_order_cnt_bottomの有無の判断に必要となる。
【0143】
frame_numは、RefPicListの生成に必須なパラメータである。必須である理由は、frame_numがRefPicListの生成に必要だからである。
【0144】
field_pic_flagとbottom_field_flagは、RefPicList生成に必須なパラメータである。必須である理由は、Field Coding時のRefPicListの生成に必要だからである。なお、field_pic_flagとbottom_field_flagは、シンタックスに存在する限り、RefPicListの生成に必要なパラメータであるが、シンタックスに存在しなければ、RefPicListの生成に不要なパラメータである。
【0145】
pic_order_cnt_lsbは、RefPicListの生成に必須なパラメータである。必須である理由は、PocType=0のとき、POCがRefPicListの生成に必要だからである。
【0146】
delta_pic_order_cnt_bottomは、RefPicListの生成に必須なパラメータである。必須である理由は、PocType=0のとき、POCがRefPicListの生成に必要だからである。
【0147】
delta_pic_order_cnt[0]およびdelta_pic_order_cnt[1]は、RefPicListの生成に必須なパラメータである。必須である理由は、PocType=1のとき、POCがRefPicListの生成に必要だからである。
【0148】
なお、上記パラメータは、RefPicListの生成には必要なパラメータであるが、運用条件によっては、不要となる場合もある。
【0149】
例えば、PPSが固定の運用の場合、pps_idは不要となる。Progressive限定(frame_mbs_only_flag=1)の運用の場合、field_pic_flagとbottom_field_flagは不要となる。PocType=0である運用の場合、delta_pic_order_cnt[0]およびdelta_pic_order_cnt[1]は不要となる。PocType=1である運用の場合、pic_order_cnt_lsb、delta_pic_order_cnt_bottomは不要となる。PocType=2である運用の場合、delta_pic_order_cnt[0]、delta_pic_order_cnt[1]、pic_order_cnt_lsb、delta_pic_order_cnt_bottomは不要となる。
【0150】
<<3.復号装置>>
<復号装置の構成例>
図16は、本技術を適用した復号装置の構成例を示すブロック図である。図16に示す構成のうち、図2を参照して説明した構成と同じ構成には同じ符号を付してある。重複する説明については適宜省略する。
【0151】
図16の復号装置201は、ビットストリーム入力部41、ヘッダ復号部42、次AU参照関係復号部211、参照画像情報保持部212、VCL復号部44、および画像出力部45から構成される。
【0152】
復号装置201は、次AU参照関係復号部211が、参照関係復号部43と入れ替わった点と、参照画像情報保持部212が追加された点が、図2の復号装置31と異なる。
【0153】
ヘッダ復号部42は、ヘッダのパースとして、ピクチャのヘッダ情報を復号し、解釈する。さらに、図16のヘッダ復号部42は、SEI化された次のAUのヘッダ情報を復号し、抽出する。ヘッダ復号部42は、解釈したヘッダ情報と、抽出された次のAUのヘッダ情報を、次AU参照関係復号部211に出力する。
【0154】
次AU参照関係復号部211は、DPB更新部51から供給される、復号対象となっているAU(以下、現在のAUと称する)の後処理で更新されたDPB更新情報を参照して、次のAUの復号過程で必要となるパラメータの算出を行う。次AU参照関係復号部211は、次のAUの復号過程で必要となるパラメータの算出の結果、次のAUのRefPicList(参照画像情報)を生成する。次AU参照関係復号部211は、次のAUのRefPicListを、参照画像情報保持部212に出力する。
【0155】
参照画像情報保持部212には、前のAUの前処理において生成された現在のAUのRefPicListが保持されている。参照画像情報保持部212は、次AU参照関係復号部211から供給される次のAUのRefPicListを保持する。
【0156】
VCL復号部44は、現在の1つ前のAUの復号時に処理され、参照画像情報保持部212に保持されている現在のAUのRefPicListを参照して、現在のAUの前処理を待つことなく、画像を復号し、復号画像を生成(再構成)する。VCL復号部44は、生成した復号画像を、画像出力部45に出力する。
【0157】
DPB更新部51は、後処理として、DPBを更新し、DPB更新情報を、次AU参照関係復号部211に出力する。
【0158】
<VCL復号部の構成例>
図17は、VCL復号部44の構成例を示すブロック図である。
【0159】
VCL復号部44は、エントロピー復号部251、逆量子化/逆DCT変換部252、演算器253、デブロッキングフィルタ254、アダプティブループフィルタ255、およびフレームメモリ256から構成される。また、VCL復号部44は、空間予測部257、動き補償部258、セレクタ259、およびDPB更新部51から構成される。
【0160】
エントロピー復号部251は、ビットストリーム入力部41から供給されるビットストリームを復号し、復号結果の差分画像を、逆量子化/逆DCT変換部252に出力する。復号結果の画像は、符号化装置101において、予測画像との差分画像が量子化されて、DCT変換されたものである。
【0161】
逆量子化/逆DCT変換部252は、エントロピー復号部251から供給される復号結果の差分画像に対して、逆量子化を行う。逆量子化/逆DCT変換部252は、逆量子化の結果に対して、逆DCT変換を行い、逆DCT変換後の差分画像を得る。逆量子化/逆DCT変換部252は、差分画像を演算器253に出力する。
【0162】
演算器253は、差分画像に、セレクタ259から供給される予測画像を加算して、復号画像を生成し、生成した復号画像を、デブロッキングフィルタ254と空間予測部257に出力する。
【0163】
デブロッキングフィルタ254は、演算器253から供給される復号画像に対して、デブロッキングフィルタ処理を行い、デブロッキングフィルタ処理後の復号画像を、アダプティブループフィルタ255に出力する。
【0164】
アダプティブループフィルタ255は、デブロッキングフィルタ処理後の復号画像に対して、ALF処理を行う。アダプティブループフィルタ255は、ALF処理後の復号画像を、画像出力部45およびフレームメモリ256に出力する。
【0165】
フレームメモリ256は、アダプティブループフィルタ255から供給される復号画像を蓄積する。
【0166】
ビットストリームに含まれる画像がイントラ予測画像の場合、ビットストリームには、イントラ予測を示す情報が含まれる。イントラ予測を示す情報は、エントロピー復号部251から空間予測部257に供給される。
【0167】
空間予測部257は、ビットストリームに含まれる画像がイントラ予測画像であった場合、演算器253から供給される復号画像を用いて、イントラ予測を行い、予測画像を生成する。空間予測部257は、生成したイントラ予測画像をセレクタ259に出力する。
【0168】
ビットストリームに含まれる画像がインター予測画像の場合、ビットストリームには、インター予測を示す情報と、符号化装置101においてインター予測画像の生成に用いられた動きベクトルを示す動き情報が含まれる。インター予測を示す情報と動き情報は、エントロピー復号部251から動き補償部258に供給される。
【0169】
動き補償部258は、ビットストリームに含まれる画像がインター予測画像であった場合、エントロピー復号部251から供給される動き情報を用いて、動き補償を行い、インター予測画像を生成する。このとき、動き補償には、参照画像情報保持部212に保持されている現在のAUのRefPicListが参照されて、フレームメモリ256に記憶された復号画像が用いられる。動き補償部258は、生成したインター予測画像をセレクタ259に出力する。
【0170】
セレクタ259は、空間予測部257により生成されるイントラ予測画像、動き補償部258により生成されるインター予測画像のうち、供給された方の予測画像を、演算器253に出力する。
【0171】
DPB更新部51は、フレームメモリ256を参照して、現在のAUの後処理として、RefPicmarking処理およびDPBの更新処理を行い、DPBの更新情報を、次AU参照関係復号部211に出力する。
【0172】
<復号装置の動作>
図18は、図16の復号装置の復号処理を説明するフローチャートである。
【0173】
ステップS201において、ヘッダ復号部42は、ヘッダのパースとして、ピクチャのヘッダ情報を復号し、解釈する。また、ヘッダ復号部42は、SEI化された次のAUのヘッダ情報を復号し、抽出する。ヘッダ復号部42は、解釈したヘッダ情報と、抽出された次のAUのヘッダ情報を、次AU参照関係復号部211に出力する。
【0174】
ステップS202において、次AU参照関係復号部211は、DPB更新部51から供給される現在のAUの後処理で更新されたDPB更新情報を参照して、次のAUの復号過程で必要となるパラメータの算出を行い、次のAUのRefPicListを生成する。
【0175】
ステップS203において、参照画像情報保持部212は、次AU参照関係復号部211から供給される次のAUのRefPicListを保持する。
【0176】
ステップS204において、VCL復号部44は、参照画像情報保持部212に保持されている現在のAUのRefPicListを参照して、VCL復号処理を行う。このVCL復号処理の詳細は、次の図19を参照して説明される。このとき、現在のAUの前処理は、1つ前のAUの復号処理において終了している。VCL復号部44は、画像を復号し、復号画像を生成(再構成)する。VCL復号部44は、生成した復号画像を、画像出力部45に出力する。
【0177】
なお、上述したステップS202とS204は、図20を参照して後述するように、並列に行われる処理である。
【0178】
図19は、図18のステップS204のVCL復号処理を説明するフローチャートである。
【0179】
ステップS251において、エントロピー復号部251は、ビットストリーム入力部41から供給されるビットストリームをエントロピー復号し、復号結果の差分画像を、逆量子化/逆DCT変換部252に出力する。
【0180】
ステップS252において、逆量子化/逆DCT変換部252は、エントロピー復号部251から供給される復号結果の差分画像に対して、逆量子化を行う。逆量子化/逆DCT変換部252は、逆量子化の結果に対して、逆DCT変換を行い、逆DCT変換後の差分画像を得る。逆量子化/逆DCT変換部252は、差分画像を演算器253に出力する。
【0181】
ステップS253において、空間予測部257および動き補償部258は、ビットストリームに含まれる現在のAUの画像がインター予測画像であるか否かを判定する。インター予測画像であると、ステップS253において判定された場合、処理は、ステップS254に進む。
【0182】
ステップS254において、動き補償部258は、ビットストリームに含まれる動き情報を用いて、動き補償を行い、インター予測画像を生成する。このとき、動き補償には、参照画像情報保持部212に保持されている現在のAUのRefPicListが参照されて、フレームメモリ256に記憶された復号画像が用いられる。動き補償部258は、生成したインター予測画像をセレクタ259に出力する。
【0183】
ステップS253において、イントラ予測画像であると判定された場合、処理は、ステップS255に進む。
【0184】
ステップS255において、空間予測部257は、演算器253から供給される復号画像を用いて、イントラ予測を行い、予測画像を生成する。空間予測部257は、生成したイントラ予測画像をセレクタ259に出力する。
【0185】
セレクタ259は、ステップS254またはS255において供給された方の予測画像を演算器253に出力し、ステップS256に進む。
【0186】
ステップS256において、演算器253は、逆量子化/逆DCT変換部252から供給された差分画像に、セレクタ259から供給された予測画像を加算して、復号画像を生成する。演算器253は、生成した復号画像を、デブロッキングフィルタ254と空間予測部257に出力する。
【0187】
ステップS257において、デブロッキングフィルタ254は、演算器253から供給される復号画像に対して、デブロッキングフィルタ処理を行う。デブロッキングフィルタ254は、デブロッキングフィルタ処理後の復号画像を、アダプティブループフィルタ255に出力する。
【0188】
ステップS258において、アダプティブループフィルタ255は、デブロッキングフィルタ処理後の復号画像に対して、ALF処理を行う。アダプティブループフィルタ255は、ALF処理後の復号画像を、フレームメモリ256および画像出力部45に出力する。
【0189】
ステップS259において、アダプティブループフィルタ255は、ALF処理後の復号画像を、画像出力部45およびフレームメモリ256に出力する。
【0190】
ステップS260において、フレームメモリ256は、アダプティブループフィルタ255から供給される復号画像を蓄積する。ステップS260の後、VCL復号処理は終了となる。
【0191】
<本技術の復号装置における各処理のシーケンス>>
図20は、本技術の復号装置における各処理のシーケンスを示す図である。
【0192】
図20においては、左側から、ビットストリーム入力部41が行うストリーム入力、ヘッダ復号部42が行うSliceヘッダ処理、次AU参照関係復号部211が行うRefPicList生成、VCL復号部44が行うVCL復号、DPB更新部51が行うDPB更新、および画像出力部45が行う画像出力の各シーケンスが示されている。
【0193】
また、各シーケンスにおいて、白の矩形は、現在のAU-1に関する処理であることを示す。チェックのハッチがなされている矩形は、現在のAU-1の次のAUであるAU-2に関する処理であることを示す。黒の矩形は、AU-2の次のAUであるAU-3に関する処理であることを示す。
【0194】
まず、ビットストリーム入力部41が、AU-1のSliceHeaderとAU-2のSEIとを入力後、AU-1のSliceDataがまだ入力されていない状態で、矢印A1に示されるように、ヘッダ復号部42は、AU-1のSliceヘッダ処理を開始する。
【0195】
AU-1のSliceヘッダ処理の後半において、矢印A2に示されるように、VCL復号部44は、AU-1のVCL復号を開始する。
【0196】
また、ヘッダ復号部42によるSliceヘッダ処理後、矢印A3に示されるように、DPB更新部51によるAU-1のDPB更新が開始される。
【0197】
AU-1のDPB更新の後半において、矢印A4に示されるように、DPB更新部51により生成されたAU-2のためのDPB更新情報が、次AU参照関係復号部211に供給される。
【0198】
ヘッダ復号部42による、AU-1のSliceヘッダ処理終了後に開始されたAU-2のSEIの復号の終了後、矢印A5に示されるように、次AU参照関係復号部211は、RefPicListの生成を開始する。
【0199】
また、VCL復号部44によるAU-1のVCL復号の終了後、矢印A6に示されるように、画像出力部45によるAU-1の復号画像の出力が開始される。
【0200】
一方、ビットストリーム入力部41は、AU-1のSliceDataの入力を終了後、AU-2のSliceHeaderとAU-3のSEIの入力を開始する。ビットストリーム入力部41は、AU-2のSliceHeaderとAU-3のSEIとを入力後、AU-2のSliceDataがまだ入力されていない状態で、矢印A7に示されるように、ヘッダ復号部42は、AU-2のSliceヘッダ処理を開始する。
【0201】
AU-2のSliceヘッダ処理の後半において、矢印A8に示されるように、VCL復号部44は、AU-2のVCL復号を開始する。
【0202】
また、ヘッダ復号部42によるSliceヘッダ処理後、矢印A9に示されるように、DPB更新部51によるAU-2のDPB更新が開始される。
【0203】
AU-2のDPB更新の後半において、矢印A10に示されるように、DPB更新部51により生成されたAU-3のためのDPB更新情報が、次AU参照関係復号部211に供給される。
【0204】
ヘッダ復号部42による、AU-2のSliceヘッダ処理終了後に開始されたAU-3のSEIの復号の終了後、矢印A11に示されるように、次AU参照関係復号部211は、RefPicListの生成を開始する。
【0205】
また、VCL復号部44によるAU-2のVCL復号の終了後、矢印A12に示されるように、画像出力部45によるAU-2の復号画像の出力が開始される。
【0206】
以上のように、復号装置201は、上述した各処理を、1つのAUに対するシーケンスの完了を待つことなしに、並列に行うことができる。特に、RefPicListの生成が、前のAUの処理の際に終了しているので、復号装置201は、RefPicListの生成を待つことなしに、VCL復号を行うことができる。これにより、入力から出力までの復号処理を効率よく行うことができる。
【0207】
<従来の復号装置における各処理のシーケンス>
図21は、図20と比較するための従来の一般的な復号装置における各処理のシーケンスを示す図である。
【0208】
図21においては、左側から、ビットストリーム入力部41が行うストリーム入力、ヘッダ復号部42が行うSliceヘッダ処理、参照関係復号部43が行うRefPicList生成、VCL復号部44が行うVCL復号、DPB更新部51が行うDPB更新、および画像出力部45が行う画像出力の各シーケンスが示されている。
【0209】
また、各シーケンスにおいて、白の矩形は、現在のAU-1に関する処理であることを示す。チェックのハッチがなされている矩形は、現在のAU-1の次のAUであるAU-2に関する処理であることを示す。黒の矩形は、AU-2の次のAUであるAU-3に関する処理であることを示す。
【0210】
まず、ビットストリーム入力部41が、AU-1のSliceHeaderを入力後、AU-1のSliceDataがまだ入力されていない状態で、矢印B1に示されるように、ヘッダ復号部42は、AU-1のSliceヘッダ処理を開始する。
【0211】
また、ヘッダ復号部42によるSliceヘッダ処理後、矢印B2に示されるように、参照関係復号部43は、AU-1のRefPicListの生成を開始する。
【0212】
AU-1のRefPicListの生成の後半において、矢印B3に示されるように、VCL復号部44は、AU-1のVCL復号を開始する。
【0213】
参照関係復号部43によるAU-1のRefPicListの生成後、矢印B4に示されるように、DPB更新部51によるAU-1のDPB更新が開始される。
【0214】
AU-1のDPB更新の終了後、矢印B5に示されるように、DPB更新部51により生成されたAU-2のためのDPB更新情報が、参照関係復号部43に供給される。
【0215】
また、VCL復号部44によるAU-1のVCL復号の終了後、矢印B6に示されるように、画像出力部45によるAU-1の復号画像の出力が開始される。
【0216】
一方、ビットストリーム入力部41は、AU-1のSliceDataの入力を終了後、AU-2のSliceHeaderの入力を開始する。ビットストリーム入力部41は、AU-2のSliceHeaderを入力後、AU-2のSliceDataがまだ入力されていない状態で、矢印B7に示されるように、ヘッダ復号部42は、AU-2のSliceヘッダ処理を開始する。
【0217】
ヘッダ復号部42によるSliceヘッダ処理後、矢印B8に示されるように、参照関係復号部43は、AU-2のRefPicListの生成を開始する。
【0218】
AU-2のRefPicListの生成の後半において、矢印B9に示されるように、VCL復号部44は、AU-2のVCL復号を開始する。
【0219】
参照関係復号部43によるAU-2のRefPicListの生成後、矢印B10に示されるように、DPB更新部51によるAU-2のDPB更新が開始される。
【0220】
AU-2のDPB更新の終了後、矢印B11に示されるように、DPB更新部51により生成されたAU-3のためのDPB更新情報が、参照関係復号部43に供給される。
【0221】
また、VCL復号部44によるAU-2のVCL復号の終了後、矢印B12に示されるように、画像出力部45によるAU-2の復号画像の出力が開始される。
【0222】
以上のように、復号装置31は、1つのAUに対する1つの処理が完了しないと、次の処理を開始することができない。したがって、復号装置31の各処理間において遅延が生じてしまうことがあった。
【0223】
これに対して、本技術においては、AUのSEIに、AUの処理順に次のAUのヘッダ情報またはヘッダ情報に関する情報を付加して、符号化ストリームが生成される。これにより、復号装置201は、1つのAUに対するシーケンスの完了を待つことなしに、復号に関する各処理を並列に行うことができる。これにより、入力から出力までの復号処理を効率よく行うことができる。
【0224】
<本技術の復号装置における各処理のタイミング>
図22は、本技術の復号装置における各処理のタイミングを示す図である。
【0225】
時刻t1において、frame-1ストリームの入力が開始される。時刻t2において、frame-1のVCL復号-1が開始されるので、その後の時刻t3でframe-1の出力がすぐに開始される。
【0226】
frame-1のVCL復号-1が行われている間の時刻t4において、frame-1の後処理-1が開始される。後処理-1が終了した後の時刻t5において、frame-2の前処理-2が開始され、frame-1ストリームの入力が終了する前の時刻t6に、前処理-2が終了する。
【0227】
時刻t7において、frame-1ストリームの入力が終了し、frame-1のVCL復号-1が終了する。
【0228】
frame-1ストリームの入力の後、時刻t8において、frame-2ストリームの入力が開始される。前処理-2は、時刻t6において終了しているので、frame-2ストリームの入力直後の時刻t9において、frame-2のVCL復号-2が開始される。また、その後の時刻t10でFrame-2の出力がすぐに開始される。
【0229】
frame-2のVCL復号-2が行われている間の時刻t11において、frame-2の後処理-2が開始される。後処理-2が終了した後の時刻t12において、frame-3の前処理-3が開始される。その後、frame-2ストリームの入力が終了する前の時刻t13に、前処理-3が終了する。
【0230】
時刻t14において、frame-2ストリームの入力が終了し、時刻t15において、frame-2のVCL復号-2が終了する。そして、時刻t16において、frame-2ストリームの出力が終了となる。
【0231】
以上のように、復号装置201の場合、図3を参照して上述した例のように、現在のフレームの前処理、すなわち、現在のフレームのRefPicListの生成を、現在のフレームの復号時に行う必要がない。したがって、時刻t2において、frame-1のVCL復号-1が開始されるので、その後の時刻t3でframe-1がすぐに出力される。
【0232】
これにより、ストリームが入力されてから、復号画像が生成されるまでの遅延を短縮することができる。
【0233】
<<3.その他>>
< 効 果 >
本技術においては、各AUのSEIに、処理順で次のAUのヘッダ情報を付加して、符号化ストリームが生成される。
【0234】
本技術によれば、VCL復号(復号画像生成)を、従来より早いタイミングで開始できる。すなわち、ストリームが入力されてから、復号画像が生成されるまでの遅延を短縮することができる。
【0235】
また、本技術によれば、VCL復号部の性能を低く(動作周波数低減や回路規模の縮小)することができる。
【0236】
したがって、従来のリアルタイムデコーダのように、前処理にかかるオーバーヘッドの分と復号処理を合わせてリアルタイム性能を満たすように設計する必要をなくすことができる。
【0237】
なお、本技術により生成されるストリームは既存のCodec規格に準拠した範囲で実現されるものである。よって、本技術に適用した復号装置は効果を得ることができるが、本技術に適用していない復号装置には、何ら影響を及ぼさない。
【0238】
<コンピュータの構成例>
上述した一連の処理は、ハードウェアにより実行することもできるし、ソフトウェアにより実行することもできる。一連の処理をソフトウェアにより実行する場合には、そのソフトウェアを構成するプログラムが、専用のハードウェアに組み込まれているコンピュータ、または汎用のパーソナルコンピュータなどに、プログラム記録媒体からインストールされる。
【0239】
図23は、上述した一連の処理をプログラムにより実行するコンピュータのハードウェアの構成例を示すブロック図である。
【0240】
CPU(Central Processing Unit)301、ROM(Read Only Memory)302、RAM(Random Access Memory)303は、バス304により相互に接続されている。
【0241】
バス304には、さらに、入出力インタフェース305が接続されている。入出力インタフェース305には、キーボード、マウスなどよりなる入力部306、ディスプレイ、スピーカなどよりなる出力部307が接続される。また、入出力インタフェース305には、ハードディスクや不揮発性のメモリなどよりなる記憶部308、ネットワークインタフェースなどよりなる通信部309、リムーバブルメディア311を駆動するドライブ310が接続される。
【0242】
以上のように構成されるコンピュータでは、CPU301が、例えば、記憶部308に記憶されているプログラムを入出力インタフェース305及びバス304を介してRAM303にロードして実行することにより、上述した一連の処理が行われる。
【0243】
CPU301が実行するプログラムは、例えばリムーバブルメディア311に記録して、あるいは、ローカルエリアネットワーク、インターネット、デジタル放送といった、有線または無線の伝送媒体を介して提供され、記憶部308にインストールされる。
【0244】
なお、コンピュータが実行するプログラムは、本明細書で説明する順序に沿って時系列に処理が行われるプログラムであっても良いし、並列に、あるいは呼び出しが行われたとき等の必要なタイミングで処理が行われるプログラムであっても良い。
【0245】
なお、本明細書において、システムとは、複数の構成要素(装置、モジュール(部品)等)の集合を意味し、すべての構成要素が同一筐体中にあるか否かは問わない。したがって、別個の筐体に収納され、ネットワークを介して接続されている複数の装置、及び、1つの筐体の中に複数のモジュールが収納されている1つの装置は、いずれも、システムである。
【0246】
また、本明細書に記載された効果はあくまで例示であって限定されるものでは無く、また他の効果があってもよい。
【0247】
本技術の実施の形態は、上述した実施の形態に限定されるものではなく、本技術の要旨を逸脱しない範囲において種々の変更が可能である。
【0248】
例えば、本技術は、1つの機能を、ネットワークを介して複数の装置で分担、共同して処理するクラウドコンピューティングの構成をとることができる。
【0249】
また、上述のフローチャートで説明した各ステップは、1つの装置で実行する他、複数の装置で分担して実行することができる。
【0250】
さらに、1つのステップに複数の処理が含まれる場合には、その1つのステップに含まれる複数の処理は、1つの装置で実行する他、複数の装置で分担して実行することができる。
【0251】
<構成の組み合わせ例>
本技術は、以下のような構成をとることもできる。
(1)
第1のAU(Access Unit)のSEI(Supplemental Enhancement Information)に、前記第1のAUの次に処理される第2のAUのヘッダ情報の少なくとも一部、または前記ヘッダ情報の少なくとも一部に関する情報を付加して、符号化ストリームを生成する符号化ストリーム生成部を備える
画像処理装置。
(2)
前記第1のAUは、GOP(Group Of Pictures)の先頭のAUであり、
前記符号化ストリーム生成部は、前記第1のAUの前記SEIに、前記GOP内の前記第2のAU以降のAUの前記ヘッダ情報の少なくとも一部を付加する
前記(1)に記載の画像処理装置。
(3)
前記第1のAUは、GOPの先頭のAUであり、
前記符号化ストリーム生成部は、前記第1のAUの前記SEIに、前記GOP内のAUの前記ヘッダ情報の少なくとも一部を生成するための生成パターンを付加する
前記(1)に記載の画像処理装置。
(4)
前記符号化ストリーム生成部は、前記第2のAUの前記ヘッダ情報の少なくとも一部を前記第1のAUの前記SEIに付加する
前記(1)に記載の画像処理装置。
(5)
前記ヘッダ情報の少なくとも一部は、復号処理の前処理に必要な情報である
前記(1)乃至(4)のいずれかに記載の画像処理装置。
(6)
前記前処理に必要な情報は、POC生成に必要な情報である
前記(5)に記載の画像処理装置。
(7)
前記前処理に必要な情報は、ピクチャ毎に変化するパラメータである
前記(5)に記載の画像処理装置。
(8)
前記前処理は、前記ヘッダ情報のパース処理、POC生成処理、およびRefPicListの生成処理である
(5)乃至(7)のいずれかに記載の画像処理装置。
(9)
画像処理装置が、
第1のAU(Access Unit)のSEI(Supplemental Enhancement Information)に、前記第1のAUの次に処理される第2のAUのヘッダ情報の少なくとも一部、または前記ヘッダ情報の少なくとも一部に関する情報を付加して、符号化ストリームを生成する
画像処理方法。
(10)
第1のAUのSEIに、前記第1のAUの次に処理される第2のAUのヘッダ情報の少なくとも一部、または前記ヘッダ情報の少なくとも一部に関する情報を付加して生成された符号化ストリームが受信されて処理された前記ヘッダ情報に基づいて、前記第2のAUを復号する復号部を備える
画像処理装置。
(11)
画像処理装置が、
第1のAUのSEIに、前記第1のAUの次に処理される第2のAUのヘッダ情報の少なくとも一部、または前記ヘッダ情報の少なくとも一部に関する情報を付加して生成された符号化ストリームが受信されて処理された前記ヘッダ情報に基づいて、前記第2のAUを復号する
画像処理方法。
【符号の説明】
【0252】
21 画像取り込み部, 22 ピクチャタイプ決定部, 23 GOP構造生成部, 24 符号化並び替え部, 25 上位ヘッダ生成部, 26 上位ヘッダ符号化部, 27 VCL符号化部, 28 演算器, 41 ビットストリーム入力部, 42 ヘッダ復号部, 44 VCL復号部, 45 画像出力部, 51 DPB更新部, 101 符号化装置, 111 上位ヘッダ保持メモリ, 112 上位ヘッダSEI化部, 113 SEI符号化部, 114 演算器, 201 復号装置, 211 次AU参照関係復号部, 212 参照画像情報保持部
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10
図11
図12
図13
図14
図15
図16
図17
図18
図19
図20
図21
図22
図23