(57)【要約】【課題】復号処理を低遅延化すること。【解決手段】少なくとも１つの符号化ブロックラインからなる複数のスライスを、Ｎ個の算術復号部とＭ個の映像復号部とによって並列に復号処理する復号装置において、前記Ｎ個の算術復号部は、任意の連続するＮ個のスライスに含まれる符号化ブロックライン数の合計と、前記任意の連続するＮ個のスライスとは異なる連続するＮ個のスライスに含まれる符号化ブロックライン数の合計との差が１以下であるという条件と、各スライスの符号量が所定の上限符号量未満であるという条件と、を満たすストリームに対して、各スライスサイズに応じた時間間隔で順に算術復号処理を開始する。【選択図】図１
2020072369.tif 000002
【特許請求の範囲】
【請求項１】
少なくとも１つの符号化ブロックラインからなるスライスであって、画像が分割された複数の前記スライスを、Ｎ個の算術復号部とＭ個の映像復号部とによって並列に復号処理を行う復号装置であって、
前記Ｎ個の算術復号部は、
任意の連続するＮ個のスライスに含まれる符号化ブロックライン数の合計と、前記任意の連続するＮ個のスライスとは異なる連続するＮ個のスライスに含まれる符号化ブロックライン数の合計との差が１以下であるという条件と、各スライスの符号量が所定の上限符号量未満であるという条件と、を満たすストリームに対して、各スライスサイズに応じた時間間隔で順に算術復号処理を開始する
復号装置。
【請求項２】
前記算術復号部は、
前記上限符号量と同一のサイズのバッファに記憶された画像に対してスライス単位での符号量制御を行ったストリームに対し、各スライスの先頭部分を取得した後、処理可能な状態であるならば算術復号処理を開始する
請求項１に記載の復号装置。
【請求項３】
前記上限符号量の大きさに応じて、画像内の最初のスライスの算術復号処理の開始時刻から前記スライスの最初の符号化ブロックラインの映像復号処理の開始時刻までの時間を決定する制御部
をさらに備える請求項１又は請求項２に記載の復号装置。
【請求項４】
前記Ｍ個の映像復号部は、
画像の上端からＸ番目の符号化ブロックラインのインター符号化において、直前に符号化された画像である参照画像の下端からＭ−Ｘ番目の符号化ブロックラインを参照しないという条件を満たしている場合に、各符号化ブロックラインに対して所定の時間間隔で順に映像復号処理を開始する
請求項１から請求項３のうちいずれか一項に記載の復号装置。
【請求項５】
前記符号化ブロックラインに含まれるフラグの値を識別し、前記フラグの値に基づいて前記復号処理を行うか否かを判定する制御部
をさらに備える請求項１から請求項４のうちいずれか一項に記載の復号装置。
【請求項６】
任意の連続するＮ個のスライスに含まれる符号化ブロックライン数の合計と、前記任意の連続するＮ個のスライスとは異なる連続するＮ個のスライスに含まれる符号化ブロックライン数の合計との差が１以下であるという第１条件と、各スライスの符号量が所定の上限符号量未満であるという第２条件と、画像の上端からＸ番目の符号化ブロックラインのインター符号化において、直前に符号化された画像である参照画像の下端からＭ−Ｘ番目の符号化ブロックラインを参照しないという第３条件のうち、少なくとも前記第１条件と前記第２条件とを満たすように符号化されたストリームを生成し、少なくとも前記第１条件と前記第２条件とを満たすことを示すフラグを前記ストリームに付与する、
符号化装置。
【請求項７】
少なくとも１つの符号化ブロックラインからなるスライスであって、画像が分割された複数の前記スライスを、Ｎ個の算術復号部とＭ個の映像復号部とによって並列に復号処理を行う復号方法であって、
前記Ｎ個の算術復号部が、任意の連続するＮ個のスライスに含まれる符号化ブロックライン数の合計と、前記任意の連続するＮ個のスライスとは異なる連続するＮ個のスライスに含まれる符号化ブロックライン数の合計との差が１以下であるという条件と、各スライスの符号量が所定の上限符号量未満であるという条件と、を満たすストリームに対して、各スライスサイズに応じた時間間隔で順に算術復号処理を開始するステップ
を有する復号方法。
【請求項８】
任意の連続するＮ個のスライスに含まれる符号化ブロックライン数の合計と、前記任意の連続するＮ個のスライスとは異なる連続するＮ個のスライスに含まれる符号化ブロックライン数の合計との差が１以下であるという第１条件と、各スライスの符号量が所定の上限符号量未満であるという第２条件と、画像の上端からＸ番目の符号化ブロックラインのインター符号化において、直前に符号化された参照画像の下端からＭ−Ｘ番目の符号化ブロックラインを参照しないという第３条件のうち、少なくとも前記第１条件と前記第２条件とを満たすように符号化されたストリームを生成し、少なくとも前記第１条件と前記第２条件とを満たすことを示すフラグを前記ストリームに付加する
符号化方法。
【請求項９】
請求項１から請求項５のうちいずれか一項に記載の復号装置又は請求項６に記載の符号化装置としてコンピュータを機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、復号装置、符号化装置、復号方法、符号化方法、及びプログラムに関する。
【背景技術】
【０００２】
映像符号化の国際標準規格に基づく符号化装置（エンコーダ）及び復号装置（デコーダ）において、処理の低遅延化が大きな課題となっている。映像符号化の国際標準規格とは、例えば、Ｈ．２６５（ISO/IEC 23008-2 HEVC（High Efficiency Video Coding））（以下、「ＨＥＶＣ」という。）、及び、Ｈ．２６４（ISO/IEC 14496-10 MPEG4-AVC（Moving Picture Experts Group 4-Advanced Video Coding）（以下、「Ｈ．２６４」という。）である。昨今、処理の低遅延化を可能にする高い処理能力を有する符号化装置及び復号装置を実現するためには、処理の並列化が不可欠になっている。
【０００３】
従来、入力ストリームを複数のスライスに分割し、分割されたスライスを予め用意された複数の復号回路にそれぞれ分配して、並列に復号処理を行うことによって、処理速度の向上を図る技術がある（例えば特許文献１）。また、復号処理を、算術復号処理と映像復号部処理とに分けて行う方法が知られている。算術復号処理は、入力ストリームを算術復号によって２値データ列である符号化データに復号する。映像復号処理は、当該符号化データに対し、動き補償による予測画像生成、及び予測残差信号の復号処理を行うことによって、復号映像を生成する。
【０００４】
ＨＥＶＣ及びＨ．２６４等の規格上の理由から、算術復号処理では、スライス内での並列化が困難であるため、一般的にはスライス単位で並列処理が行われる。一方、映像復号処理では、符号化ブロック間の処理の依存関係を考慮して、符号化ブロックライン単位で処理を遅らせながら並列処理を行う方法が一般的に知られている（例えば特許文献２）。ここでいう符号化ブロックとは、ＨＥＶＣにおいてはＣＴＵ（Coding Tree Unit）に相当し、Ｈ．２６４においてはＭＢ（Macro Block）に相当する。また、ここでいう符号化ブロックラインとは、画面内の同一の垂直位置のブロックの並びを意味する。
【０００５】
ＨＥＶＣでは、符号化ブロックライン（ＣＴＵライン）単位での算術復号処理の並列化を考慮したＷＰＰ（Wave-front Parallel Processing）モードが規格されている。ＷＰＰモードでは、スライス内であっても符号化ブロックライン単位で並列に算術復号処理を行うことが可能であり、１ライン上の２ＣＴＵ目までの復号が終わっていれば、その符号化ブロックラインの復号を開始することができる。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特許第３９６１６５４号公報
【特許文献２】特許第６０８０３７５号公報
【非特許文献】
【０００７】
【非特許文献１】ＮＴＴ持株会社ニュースリリース、”専用ＬＳＩによる世界最高性能の８Ｋ  ＨＥＶＣリアルタイムエンコーダを開発  〜８５Ｍｂｐｓで臨場感あふれる高画質な８Ｋ映像伝送を実現〜”、［online］、2016年2月15日、日本電信電話株式会社、［平成30年10月30日検索］、インターネット〈URL：http://www.ntt.co.jp/news2016/1602/160215b.html〉
【発明の概要】
【発明が解決しようとする課題】
【０００８】
しかしながら、規格上、入力ストリームの先頭部分を受信した時点では、画像内のスライス分割数や分割サイズについては不明の状態である。さらには、そもそも画像が複数のスライスに分割されているか否かについても不明の状態である。そのため、画像が複数スライスに分割されていない可能性までを考慮して復号処理を行う必要がある。一般的な算術復号処理では、例えば１画像が１スライスからなる場合には、画像単位で復号処理を並列化することしかできない。そのため、復号処理の低遅延化を図ることが難しいという課題がある。
【０００９】
また、上述したＷＰＰモードは、符号化ブロックライン単位での算術復号処理の並列化を考慮しているものの、符号化装置側において空間分割方式による並列符号化が行われる場合には実装が困難であるという課題がある。特に、高い処理能力が要求される符号化装置は、複数モジュール構成によるハードウェアエンコーダが用いられる場合が多い。この構成においては、疎結合な空間分割方式による並列符号化が採用されることが多いため、ＷＰＰモードを利用することができない場合が多い。また、上述したＷＰＰモードでは、規格上、映像復号処理において動きベクトル（ＭＶ）の参照範囲を事前に限定することができない。そのため、一つ前の画像の全ての符号化ブロックラインの復号が完了してからでなければ、画像内の最初の符号化ブロックラインを復号することができない。これにより、復号処理の並列度が低下するため、復号処理の低遅延化を図ることが難しいという課題がある。
【００１０】
本発明はこのような状況を鑑みてなされたもので、復号処理を低遅延化することができる技術の提供を目的としている。
【課題を解決するための手段】
【００１１】
本発明の一態様は、少なくとも１つの符号化ブロックラインからなるスライスであって、画像が分割された複数の前記スライスを、Ｎ個の算術復号部とＭ個の映像復号部とによって並列に復号処理を行う復号装置であって、前記Ｎ個の算術復号部は、任意の連続するＮ個のスライスに含まれる符号化ブロックライン数の合計と、前記任意の連続するＮ個のスライスとは異なる連続するＮ個のスライスに含まれる符号化ブロックライン数の合計との差が１以下であるという条件と、各スライスの符号量が所定の上限符号量未満であるという条件と、を満たすストリームに対して、各スライスサイズに応じた時間間隔で順に算術復号処理を開始する復号装置である。
【００１２】
また、本発明の一態様は、上記の復号装置であって、前記算術復号部は、前記上限符号量と同一のサイズのバッファに記憶された画像に対してスライス単位での符号量制御を行ったストリームに対し、各スライスの先頭部分を取得した後、処理可能な状態であるならば算術復号処理を開始する。
【００１３】
また、本発明の一態様は、上記の復号装置であって、前記上限符号量の大きさに応じて、画像内の最初のスライスの算術復号処理の開始時刻から前記スライスの最初の符号化ブロックラインの映像復号処理の開始時刻までの時間を決定する制御部をさらに備える。
【００１４】
また、本発明の一態様は、上記の復号装置であって、前記Ｍ個の映像復号部は、画像の上端からＸ番目の符号化ブロックラインのインター符号化において、直前に符号化された画像である参照画像の下端からＭ−Ｘ番目の符号化ブロックラインを参照しないという条件を満たしている場合に、各符号化ブロックラインに対して所定の時間間隔で順に映像復号処理を開始する。
【００１５】
また、本発明の一態様は、上記の復号装置であって、前記符号化ブロックラインに含まれるフラグの値を識別し、前記フラグの値に基づいて前記復号処理を行うか否かを判定する制御部をさらに備える。
【００１６】
また、本発明の一態様は、任意の連続するＮ個のスライスに含まれる符号化ブロックライン数の合計と、前記任意の連続するＮ個のスライスとは異なる連続するＮ個のスライスに含まれる符号化ブロックライン数の合計との差が１以下であるという第１条件と、各スライスの符号量が所定の上限符号量未満であるという第２条件と、画像の上端からＸ番目の符号化ブロックラインのインター符号化において、直前に符号化された画像である参照画像の下端からＭ−Ｘ番目の符号化ブロックラインを参照しないという第３条件のうち、少なくとも前記第１条件と前記第２条件とを満たすように符号化されたストリームを生成し、少なくとも前記第１条件と前記第２条件とを満たすことを示すフラグを前記ストリームに付与す符号化装置である。
【００１７】
また、本発明の一態様は、少なくとも１つの符号化ブロックラインからなるスライスであって、画像が分割された複数の前記スライスを、Ｎ個の算術復号部とＭ個の映像復号部とによって並列に復号処理を行う復号方法であって、前記Ｎ個の算術復号部が、任意の連続するＮ個のスライスに含まれる符号化ブロックライン数の合計と、前記任意の連続するＮ個のスライスとは異なる連続するＮ個のスライスに含まれる符号化ブロックライン数の合計との差が１以下であるという条件と、各スライスの符号量が所定の上限符号量未満であるという条件と、を満たすストリームに対して、各スライスサイズに応じた時間間隔で順に算術復号処理を開始するステップを有する復号方法である。
【００１８】
また、本発明の一態様は、任意の連続するＮ個のスライスに含まれる符号化ブロックライン数の合計と、前記任意の連続するＮ個のスライスとは異なる連続するＮ個のスライスに含まれる符号化ブロックライン数の合計との差が１以下であるという第１条件と、各スライスの符号量が所定の上限符号量未満であるという第２条件と、画像の上端からＸ番目の符号化ブロックラインのインター符号化において、直前に符号化された参照画像の下端からＭ−Ｘ番目の符号化ブロックラインを参照しないという第３条件のうち、少なくとも前記第１条件と前記第２条件とを満たすように符号化されたストリームを生成し、少なくとも前記第１条件と前記第２条件とを満たすことを示すフラグを前記ストリームに付加する符号化方法である。
【００１９】
また、本発明の一態様は、上記の復号装置又は上記の符号化装置としてコンピュータを機能させるためのプログラムである。
【発明の効果】
【００２０】
本発明により、復号処理を低遅延化することができる。
【図面の簡単な説明】
【００２１】
【図１】本発明の第１の実施形態に係る映像復号装置１の機能構成を示すブロック図である。
【図２】本発明の第１の実施形態におけるスライス分割パターンの一例を示す図である。
【図３】本発明の第１の実施形態における算術復号処理及び映像復号処理の実行タイミングの一例を示す図である。
【図４】本発明の第１の実施形態に係る映像符号化装置２の機能構成を示すブロック図である。
【図５】本発明の第１の実施形態に係る映像復号装置１の動作を示すフローチャートである。
【図６】本発明の第２の実施形態における算術復号処理及び映像復号処理の実行タイミングの一例を示すである。
【発明を実施するための形態】
【００２２】
＜第１の実施形態＞
以下、本発明の第１の実施形態について、図面を参照しながら説明する。
【００２３】
以下、本実施形態に係る映像復号装置１及び映像符号化装置２について説明する。
図１は、本発明の第１の実施形態に係る映像復号装置１の機能構成を示すブロック図である。また、図２は、本発明の第１の実施形態におけるスライス分割パターンの一例を示す図である。また、本発明の第１の実施形態における算術復号処理及び映像復号処理の実行タイミングの一例を示す図である。
【００２４】
映像符号化装置２は、１つの画像が分割された複数のスライスからなる入力ストリームに対して、下記の３つの所定の条件（以下、「制約条件」という。）を満たすように符号化処理（エンコード）を行う。これに対し、映像復号装置１は、下記の制約条件が成立する場合、自装置が備える各処理部の利用効率を高めて、低遅延化された復号処理（デコード）を行う。なお、制約条件は、スライス分割パターン、発生符号量、及び動きベクトル参照範囲に関する条件である。
【００２５】
［第１条件］
各スライスが１又は複数の符号化ブロックラインからなり、後述する算術復号部１０３の並列数がＮ［個］である場合に、任意の連続するＮ［個］のスライスの符号化ブロックライン数の合計と、その他の連続するＮ［個］のスライスの符号化ブロックライン数の合計と、の差が１以下（すなわち、１又は０）であること。
［第２条件］
各スライスの算術復号処理に要する時間、又は、各スライスの到着遅延時間と算術復号処理に要する時間との和が、所定の時間内に収まるように符号量が制御されていること。
［第３条件］
後述する映像復号部１０４の並列数がＭ［個］である場合に、上からＸ（Ｘ＜Ｍ）番目の符号化ブロックラインは、下からＭ−Ｘ番目の符号化ブロックラインから最も下の符号化ブロックラインまでの復号画像を参照しないこと。
【００２６】
映像復号装置１は、上記制約条件を満たす入力ストリームに対して、算術復号部１０３による算術復号処理と、映像復号部１０４による映像復号処理とを遅滞なく開始させる。これにより、復号処理の低遅延化が図られる。
【００２７】
まず、第１条件では、スライスの個数を符号化ブロックラインの整数倍の個数とすることによって、算術復号後に符号化ブロックライン単位で並列に映像復号処理を行う映像復号部１０４において、処理開始までの待ち時間が短くなる。また、算術復号部１０３が受信したスライスに対して並列に算術復号処理が行う場合、算術復号部１０３があるスライスに対して算術復号処理を行った後、次に当該算術復号部１０３によって算術復号処理がなされるのは、Ｎ個分のスライス（以下、「Ｎスライス」という。）の分だけ離れたスライスである。そのため、任意のＮスライスの符号化ブロックライン数の合計が一定である場合、各算術復号部１０３で処理される符号化ブロックライン数、及び処理時間が均等になるため、最も復号効率がよい。
【００２８】
しかしながら、実際には、全スライスを同じサイズに分割しなければ上記の制約条件を満たすことはできず、画像サイズによっては全スライスを同じサイズに分割することは不可能である。そのため、１符号化ブロックライン分の差を許容し、任意の連続するＮスライスの符号化ブロックライン数の合計と、その他の連続するＮスライスの符号化ブロックライン数の合計と、の差が１以下であることとする。
【００２９】
映像符号化装置２の後述する各算術符号化部２０６によりスライスサイズに応じた（例えば、比例した）時間間隔で各スライスの符号化が開始される場合、その次のスライスの符号化開始までの時間は（Ａ−１）／Ｐ／Ｌ［秒］、又は、Ａ／Ｐ／Ｌ［秒］となる。ここで、Ａ及びＡ−１は任意の連続するＮスライスの符号化ブロックライン数［個］の合計を示す。また、Ｐは、フレームレート［フレーム／秒］を示す。また、Ｌは、画像内の符号化ブロックライン数［個］を示す。
【００３０】
条件２では、上記のその次のスライスの符号化開始までの時間のうち短い方の時間である、（Ａ−１）／Ｐ／Ｌ［秒］を上限時間として、算術復号処理が終わるように、各スライスの発生符号量を制御することを条件とする。
算術復号部１０３全体の最大スループット（すなわちストリームの内容に依存せず安定的に復号可能な最大のビットレート）をＲｍａｘ、各算術復号部１０３の最大スループットをＲｍａｘ／Ｎとすると、スライスの最大上限符号量Ｔｍａｘ［ビット］は、以下の式（１）にようになる。
【００３１】
Ｔｍａｘ＝Ｒｍａｘ＊（Ａ−１）／Ｎ／Ｐ／Ｌ  ・・・（１）
【００３２】
ここで、符号化ビットレートが低く、ストリームに記されたＣＰＢ（Coded Picture Buffer；符号化ピクチャバッファ）サイズ等から、スライスの上限符号量が、上記スライス最大上限符号量Ｔｍａｘ未満であることが復号開始時に明らかな場合には、その分、映像復号部１０４の処理開始時間を早くすることで、復号遅延を削減することができる。また、所定の符号化ビットレートの条件下では、スライスの先頭部分の到着遅延時間と算術復号に要する時間との和が所定の時間以下であることをＣＰＢサイズに基づいて判定することにより、さらに映像復号部１０４の処理開始時間を早くすることもできる。
【００３３】
条件３は、インター符号化が用いられる場合における制約条件である。そのため、条件３は、全てＩピクチャで符号化する符号化モードの場合には不要である。各映像復号部１０４は、後述する参照画像バッファ１０５に、各スライスの復号画像である参照画像を蓄積する。各映像復号部１０４は、後段のスライスのインター符号化ブロックの復号において、動きベクトルに応じて参照画像バッファ１０５から直前に符号化された参照画像を取得する。
【００３４】
映像復号部１０４の個数がＭ［個］である場合、あるスライスに対して映像復号処理が行われた後、次に同一の映像復号部１０４において映像復号処理がなされるのは、Ｍスライス分だけ離れたスライスである。ここで、１画像前のＭスライス以上離れていないスライスに対しては、復号が完了していないため参照を禁止する必要がある。この条件により、画像を跨いでも、均等な時間間隔で各スライスの復号処理を開始することができるようになる。これにより、復号処理の低遅延化が図られる。
【００３５】
映像符号化装置２は、上記の制約条件を満たすように符号化制御を実施する。そして、映像符号化装置２は、低遅延復号が有効であるか否かを示すフラグ（以下、「低遅延化フラグ」という。）を、入力ストリーム内のユーザデータ領域、又は未使用領域に記述（付与）する。映像符号化装置２は、上記の制約条件を満たしている場合には、低遅延化フラグとして、低遅延復号が有効であることを示す値を記述する。また、映像符号化装置２は、上記の制約条件を満たしていない場合には、低遅延化フラグとして、低遅延復号が無効であることを示す値を記述する。
【００３６】
以下、低遅延化フラグとして、低遅延化された復号処理を行うことが有効であることを示す値が記述されていることを「低遅延化フラグが有効である」という。また、以下、低遅延化フラグとして、低遅延化された復号処理を行うことが無効であることを示す値が記述されていることを「低遅延化フラグが無効である」という。
【００３７】
映像復号装置１は、入力ストリーム内のユーザデータ領域、又は未使用領域に記述された低遅延化フラグを識別する。映像復号装置１は、低遅延化フラグが有効である場合に、上述した低遅延化された復号処理を行う。この低遅延化フラグにより、映像符号化装置２及び映像復号装置１を、制約条件を満たさない場合には通常の（低遅延化されていない）符号化処理及び復号処理をそれぞれ行うようにすることも可能である。そのため、この低遅延化フラグを設けることで、映像符号化装置２及び映像復号装置１を、汎用的な装置として構成することができる。
【００３８】
また、映像符号化装置２及び映像復号装置１の間においては、算術復号部１０３の並列数（Ｎ［個］、図１においてはＮ＝６）、映像復号部１０４の並列数（Ｍ［個］、図１においてはＭ＝８）、算術復号部１０３全体のスループット（Ｒｍａｘ）、及びスライス分割パターンに関する情報について事前に共有されているものとする。なお、映像符号化装置２及び映像復号装置１が、複数種類の上記情報を共有していてもよい。この場合、映像復号装置１が、低遅延化フラグの値によって当該種類を判別することができるようにしておくことで、低遅延化フラグの値に基づいて、複数種類の動作の中から動作を切り替えて復号処理を行うようにすることも可能である。
【００３９】
［映像復号装置の構成］
以下、映像復号装置１の構成について説明する。
図１に示すように、映像復号装置１は、ストリーム入力部１０１と、６つの算術復号部（第１算術復号部１０３−１、第２算術復号部１０３−２、・・・、第６算術復号部１０３−６）と、８つの映像復号部（第１映像復号部１０４−１、第２映像復号部１０４−２、・・・、第８映像復号部１０４−８）と、参照画像バッファ１０５と、映像出力部１０６と、を含んで構成される。
【００４０】
なお、以下の説明において、第１算術復号部１０３−１、第２算術復号部１０３−２、・・・、第６算術復号部１０３−６を互いに区別して説明する必要がない場合には、「算術復号部１０３」という。また、以下の説明において、第１映像復号部１０４−１、第２映像復号部１０４−２、・・・、第８映像復号部１０４−８を互いに区別して説明する必要がない場合には、「映像復号部１０４」という。
【００４１】
なお、本実施形態では、算術復号部１０３及び映像復号部１０４の個数がそれぞれ６［個］及び８［個］であるものとしたが、これに限られるものではない。算術復号部１０３及び映像復号部１０４の個数はそれぞれ複数であるならば、任意の個数で構わない。
【００４２】
ストリーム入力部１０１は、映像符号化装置２により出力された入力ストリームの入力を受け付ける。ストリーム入力部１０１は、入力ストリームを解析し、当該入力ストリームに含まれるユーザデータ領域又は未使用領域に定義された、低遅延化フラグの値を取得する。
【００４３】
全体制御部１０２は、低遅延化フラグが有効であるか、又は無効であるかを判定する。全体制御部１０２は、低遅延化フラグが無効である場合には復号処理を停止し、低遅延化フラグが有効である場合には後述する低遅延化された復号処理を各機能部に実行させる。なお、全体制御部１０２は、低遅延化フラグが無効である場合には、通常の（低遅延化されていない）復号処理を各機能部に実行させるようにしてもよい。
【００４４】
次に、ストリーム入力部１０１は、復号開始可能な画像の先頭部分のストリームを受信すると、当該画像の復号開始時刻を取得する。例えば、ＭＰＥＧ−２  ＴＳ（Transport Stream）（H.222, ISO/IEC13818-1）である場合、復号開始時刻はＰＥＳ（Packetized Elementary Stream）ヘッダのＤＴＳ（Decoding Time Stamp）の値に相当する。別途再生されて参照可能なＳＴＣ等の基準時刻に基づいて、復号開始時刻になった時に、第１算術復号部１０３−１は、最初のスライスであるスライス０の算術復号処理を開始する。以降、受信順に、第２算術復号部１０３−２〜第６算術復号部１０３−６は、各スライスの算術復号処理を開始する。
【００４５】
復号開始からｎ番目のスライスであるスライスｎの復号開始時刻ｄ（ｎ）は、以下の式（２）によって計算される。
【００４６】
ｄ（ｎ）＝ｌ／Ｌ／Ｐ＋Ｄ（ｎ）  ・・・（２）
【００４７】
ここで、Ｐは、フレームレート［ｆｒａｍｅ／ｓ］を示す。また、Ｌは、１画像あたりの符号化ブロックライン（ＣＴＵライン）数［個］を示す。また、ｌ（ｌ＝０〜Ｌ−１）は、当該スライスの先頭の符号化ブロックラインを示す。また、Ｄ（ｎ）は、当該スライスが属する画像の復号開始時刻を示す。
【００４８】
スライスｎに対しては、第（ｎ％６）＋１算術復号部（例えばｎ＝１である場合、第２算術復号部１０３−２）によって、時刻ｄ（ｎ）に算術復号処理が開始される。
スライス分割サイズに関する制約（上記、第１条件）と、スライス符号量に関する制約（上記、第２条件）が満たされているならば、どの算術復号部１０３においても、後段のスライスの復号開始時刻の前までに算術復号処理を完了させることが可能である。また、ｄ（ｎ）＋α時間までに、算術復号部１０３はスライスｎの算術復号処理を完了させ、後段の映像復号部１０４は映像復号処理を開始することができる。
【００４９】
ここで、ストリーム内のＣＰＢ（Coded Picture Buffer）サイズ等から、スライスの符号量が必ずＴ以下であることが分かっている場合には、上記αは、上述した映像復号装置１のスライス上限符号量Ｔｍａｘに基づく、Ｔ／Ｔｍａｘ＊αに変更されてもよい。これにより、さらに低遅延化を図ることができる。
【００５０】
映像復号部１０４は、符号化ブロックライン単位で映像復号処理を行う。映像復号部１０４は、ＨＥＶＣの映像復号処理の依存関係を考慮して映像復号処理を行う。具体的には、映像復号部１０４は、右上に位置するＣＴＵの復号が完了してから次のＣＴＵの復号が行われるように、下段の符号化ブロックラインに対する映像復号処理を、上段の符号化ブロックラインに対する映像復号処理の実行時刻から１符号化ブロックライン分の入力時間に相当する時間だけ遅らせて実行する。
【００５１】
各映像復号部１０４は、共通の参照画像バッファ１０５を参照することができる。また、復号済みの復号画像は、ＨＥＶＣであればＤＰＢ（Decoding Picture Buffer）の規定に従い、当該参照画像バッファ１０５に蓄積されている。
【００５２】
映像復号部１０４は、動き補償の参照範囲に関する制約（上記、第３条件）を満たしているならば、画像の上端の符号化ブロックラインを復号する際に、画像の下端の復号画像を必要とすることがない。そのため、映像復号部１０４は、画像の下端の符号化ブロックラインの復号が終了する前に、後段の画像の上端の符号化ブロックラインの復号を開始することができる。
【００５３】
各符号化ブロックライン単位の映像復号処理は、一定の時間内に終了する。スライスｎの復号映像は、ｄ（ｎ）＋α＋β時間までに映像出力部１０６に入力される。映像出力部１０６は、入力されたスライスｎの復号映像を、ＳＤＩフォーマット等の所定の映像フォーマットに合わせて整形及び変換したうえで、復号映像として出力する。
【００５４】
上記のような構成により、映像復号装置１は、算術復号部１０３と映像復号部１０４の双方において、余分な待ち時間を発生させることがない。これにより、本実施形態によれば、従来と同程度の処理能力を有する映像復号装置を用いつつも、復号処理の低遅延化を図ることができる。
【００５５】
［映像符号化装置の構成］
以下、上記の制約条件を満たす入力ストリームを出力する映像符号化装置２の構成について説明する。
［映像符号化装置の構成］
図４は、本発明の第１の実施形態に係る映像符号化装置２の機能構成を示すブロック図である。図４に示すように、映像符号化装置２は、映像分割部２０１と、全体制御部２０２と、レート制御部２０３と、第１部分エンコーダ２０４−１と、第２部分エンコーダ２０４−２と、ストリーム連結部２０８と、を含んで構成される。また、第１部分エンコーダ２０４−１は、第１映像符号化部２０５−１と、第１算術符号化部２０６−１と、第１ストリーム出力部２０７−１と、を含んで構成される。また、第２部分エンコーダ２０４−２は、第２映像符号化部２０５−２と、第２算術符号化部２０６−２と、第２ストリーム出力部２０７−２と、を含んで構成される。
【００５６】
なお、以下の説明において、第１部分エンコーダ２０４−１と第２部分エンコーダ２０４−２とを互いに区別して説明する必要がない場合には、「部分エンコーダ２０４」という。また、以下の説明において、第１映像符号化部２０５−１と第２映像符号化部２０５−２とを互いに区別して説明する必要がない場合には、「映像符号化部２０５」という。また、以下の説明において、第１算術符号化部２０６−１と第２算術符号化部２０６−２とを互いに区別して説明する必要がない場合には、「算術符号化部２０６」という。また、以下の説明において、第１ストリーム出力部２０７−１と、第２ストリーム出力部２０７−２とを互いに区別して説明する必要がない場合には、「ストリーム出力部２０７」という。
【００５７】
図４に示すように、映像符号化装置２は、２つの部分エンコーダ２０４を備える。入力映像は、映像分割部２０１によって空間的に上下の位置関係となる２つの部分画像（第１分割映像及び第２分割映像）に分割される。第１分割映像及び第２分割映像は、第１部分エンコーダ２０４−１及び第２部分エンコーダ２０４−２にそれぞれ入力される。それぞれの部分エンコーダ２０４においては、第１分割映像又は第２分割映像は、映像符号化部２０５によりスライス符号化データに、さらに算術符号化部２０６によりスライスデータに符号化され、ストリーム出力部２０７により第１分割ストリーム又は第２分割ストリームとしてそれぞれ出力される。ストリーム連結部２０８は、上下の位置関係となる２つの部分ストリーム（上記、第１分割ストリーム及び第２分割ストリーム）を連結して１つの出力ストリームとして出力する。
【００５８】
全体制御部２０２は、スライスの分割サイズについて、映像復号装置１側のスライス分割に関する制約（上記、第１条件）を満たすように、映像符号化部２０５及び算術符号化部２０６を制御する。例えば、映像符号化装置２が、３８４０×２１６０画素の４Ｋ映像を符号化する場合には、各画像を図２に示すような１８［個］のスライスに分割して符号化を行う。図２に示すように、スライス＃８及びスライス＃１７は１つの符号化ブロックラインからなり、残りの１６［個］のスライスは２つの符号化ブロックラインによって構成される。第１映像符号化部２０５−１及び第１算術符号化部２０６−１は、スライス＃０からスライス＃８までに対して、順に符号化処理を行う。これと同時に、第２映像符号化部２０５−２及び第２算術符号化部２０６−２は、スライス＃９からスライス＃１７までに対して、順に符号化処理を行う。
【００５９】
スライスサイズが小さい場合、符号化効率や符号量制御の安定性の低下につながる一方で、スライスサイズが大きい場合、符号化処理における遅延及び復号処理における遅延の増加につながる。そのため、本実施形態にでは、両者のバランスを取り、１符号化ブロックライン又は２符号化ブロックラインのスライスサイズに分割する構成としている。また、１符号化ブロックラインからなるスライスは互いに９スライス分だけ離れており、任意の連続する６スライスに含まれる符号化ブロックライン数は１１［個］又は１２［個］である。このように、符号化ブロックライン数の差は最大１［個］であることにより、映像復号装置１の算術復号部１０３における待ち時間が最低限に抑えられる。
【００６０】
レート制御部２０３は、それぞれのスライスデータの符号量が映像復号装置１側の発生符号量に関する制約（上記、第２条件）を満たすように、それぞれの映像符号化部２０５に与える量子化パラメータを決定する。上述したスライス分割サイズの場合、レート制御部２０３は、各スライス符号化前・後のバッファ占有量が、以下の式（３）に示すＣＰＢサイズＢｍａｘを満たすように、各スライスの符号量を制御する。
【００６１】
Ｂｍａｘ＝２／３４＊Ｒ’ｍａｘ／Ｐ  ・・・（３）
【００６２】
ここで、Ｒ’ｍａｘは、本スライス分割パターンにおいて映像復号装置１が算術復号部１０３の並列処理によって復号可能な最大ビットレートを示す。また、２／３４＊Ｒ’ｍａｘ／Ｐは、１つの算術復号部１０３が後段のスライスの算術復号の開始時刻までに１つのスライスの復号を完了させることが可能な最大のスライスデータの符号量を示す。
【００６３】
上記ＣＰＢサイズでスライス単位でのバッファ制御を行うことにより、映像復号装置１の算術復号部１０３は、いずれも所定の時間内に算術復号処理を完了させることができる。これにより、算術復号部１０３は、スライス単位での算術復号処理の並列処理を効率的に行うことができる。
【００６４】
実際には、算術復号部１０３が所定の時間内に算術復号処理を完了させるためには、全てのスライスの符号量が、上記式（３）に示したＣＰＢサイズＢｍａｘを下回ればよい。そのため、同条件を満たすことができるならば、ＣＰＢサイズをより小さい値やより大きい値に設定することも可能であるが、本実施形態においては簡素化のため同じ値としている。
【００６５】
符号化ビットレートがＲ’ｍａｘである場合、２符号化ブロックラインの大きさのストリームについては、ほぼ均一な符号量に収まるように制御する必要があるが、符号化ビットレートが低い場合には、スライス間において符号量の貸し借りがあってもよい。
【００６６】
また、本実施形態においては、スライス＃０からスライス＃８までと、スライス＃９からスライス＃１７までとが並列符号化される。そのため、上記の符号量制御を実現するためには、例えば、スライス＃９の符号化開始時のＣＰＢ占有量をＢｍａｘ／２等に仮決めし、スライス＃８の符号化終了時の占有量がＢｍａｘ／２を必ず上回るように、スライス＃０からスライス＃８までの符号量を制御すればよい。
【００６７】
本実施形態においては、映像符号化装置２は、２つの部分エンコーダ２０４の間において境界に接する参照画像を相互に一定の垂直幅（例えば、１２８画素）まで転送し、２つの分割画像を跨ぐ動きに対してもある程度の動き補償が可能であるように動作する。これは、ＡＲＩＢ  ＳＴＤ−Ｂ３２に規定された８Ｋ映像ストリームに対する規定と同等であり、並列符号化において一般的に用いられる方法である。このような符号化装置の構成の場合、復号装置側の動き補償の参照範囲に関する制約（上記、第３条件）については満たされることが保証される。
【００６８】
ストリーム出力部２０７は、算術符号化部２０６により入力されたスライスデータに対して、ユーザデータ領域又は未使用領域に低遅延化フラグの値を付加して、第１分割ストリーム及び第２分割ストリームとしてストリーム連結部２０８へ出力する。また、復号開始時刻及び基準時刻再生のための情報としては、例えばＭＰＥＧ−２  ＴＳのＤＴＳ等のように標準的に用いられる情報を用いればよい。
【００６９】
上記のような構成により、映像符号化装置２は、上述した映像復号装置１において低遅延化された復号処理を行うことができるストリームを生成することができる。
【００７０】
［映像復号装置の動作］
以下、映像復号装置１の全体制御部１０２の動作の一例について説明する。
図５は、本発明の第１の実施形態に係る映像復号装置１の全体制御部１０２の動作を示すフローチャートである。なお、別途、ストリーム入力部１０１、算術復号部１０３、映像復号部１０４、及び映像出力部１０６が並列に動作するが、これらの機能ブロックの動作ステップについては記載を省略する。
【００７１】
まず、全体制御部１０２が、内部パラメータｘ、ｙ、ｚをそれぞれ０に初期化することにより、復号処理が開始される。全体制御部１０２は、入力ストリームのユーザデータ領域又は未使用領域に記述された低遅延化フラグの値を取得する（ステップＳ００１）。全体制御部１０２は、低遅延化フラグが有効であるか無効であるかを判定する。全体制御部１０２は、低遅延化フラグが無効である場合（ステップＳ００２・ＮＯ）、通常の（低遅延化されていない）復号処理を実行する（ステップＳ００３）。以上で図５のフローチャートが示す全体制御部１０２の動作が終了する。
【００７２】
一方、全体制御部１０２は、低遅延化フラグが有効である場合（ステップＳ００２・ＹＥＳ）、全体制御部１０２は、復号開始可能な画像の受信を待ちうける。全体制御部１０２は、復号開始可能な画像を受信していない場合（ステップＳ００４・ＮＯ）、引き続き復号開始可能な画像の受信を待ちうける。
【００７３】
一方、全体制御部１０２は、復号開始可能な画像を受信した場合（ステップＳ００４・ＹＥＳ）、以下の式（４）に示す、復号開始からｘ番目のスライスであるスライスｘの復号時刻ｄ（ｘ）を計算する（ステップＳ００５）。
【００７４】
ｄ（ｘ）＝Ｄ（ｘ）＋ｌ／Ｌ／Ｐ  ・・・（４）
【００７５】
ここで、Ｐは、フレームレート［ｆｒａｍｅ／ｓ］を示す。また、Ｌは、１画像あたりの符号化ブロックライン数を示す。また、ｌ（ｌ＝０〜Ｌ−１）は、スライスの先頭の符号化ブロックラインを示す。また、Ｄ（ｘ）は、スライスが属する画像の復号時刻を示す。
【００７６】
スライスｘの復号時刻ｄ（ｘ）になった場合（ステップＳ００６・ＹＥＳ）、全体制御部１０２は、第ｘ％Ｎ算術復号部１０３（例えば、ｘ＝１かつＮ＝６である場合、第１算術復号部１０３−１）に、スライスｘに対する算術復号処理を開始させる。ここで、Ｎは算術復号部１０３の並列数［個］である。また以降の処理のため、全体制御部１０２は、ｘに１を加算する（ステップＳ００７）。一方、スライスｘの復号時刻ｄ（ｘ）になっていない場合（ステップＳ００６・ＮＯ）、全体制御部１０２は何もしない。
【００７７】
次に、スライスｙの復号時刻ｄ（ｙ）＋αになった場合（ステップＳ００８・ＹＥＳ）、全体制御部１０２は、第ｙ％Ｍ映像復号部１０４（例えば、ｙ＝１かつＭ＝８である場合、第１映像復号部１０４−１）に、スライスｙに対する映像復号処理を開始させる。ここで、αは定数、及びＭは映像復号部の並列数［個］である。また以降の処理のため、全体制御部１０２は、ｙに１を加算する（ステップＳ００９）。一方、スライスｙの復号時刻ｄ（ｙ）＋αになっていない場合（ステップＳ００８・ＮＯ）、全体制御部１０２は何もしない。
【００７８】
次に、スライスｚの復号時刻ｄ（ｚ）＋α＋βになった場合（ステップＳ０１０・ＹＥＳ）、全体制御部１０２は、映像出力部１０６にスライスｚの復号映像を出力させる。ここで、βは定数である。また以降の処理のため、全体制御部１０２は、ｚに１を加算する（ステップＳ０１１）。一方、スライスｚの復号時刻ｄ（ｚ）＋α＋βになっていない場合（ステップＳ０１０・ＮＯ）、全体制御部１０２は何もしない。
【００７９】
全体制御部１０２は、引き続きストリームを受信しているかを判定する。全体制御部１０２は、引き続きストリームを受信していると判定した場合（ステップＳ０１２・ＹＥＳ）、ステップＳ００５以降の処理を繰り返す。一方、全体制御部１０２は、引き続きストリームを受信していないと判定した場合（ステップＳ０１２・ＮＯ）、復号処理を終了させる。以上で、図５のフローチャートが示す全体制御部１０２の動作が終了する。
【００８０】
＜第２の実施形態＞
第２の実施形態では第１の実施形態とは異なり、各スライスｎの受信後、該当する算術復号部１０３は、処理が可能な状態であるならば復号開始時刻ｄ（ｎ）を待たずに算術復号処理を開始する。
【００８１】
特に、符号化ビットレートＲが、各算術復号部１０３の最大スループットＲｍａｘ／Ｎ以上である条件においては、映像復号装置１の上限符号量Ｔｍａｘ未満であるＣＰＢサイズＴでスライス単位でのＣＰＢ制御を行ったストリームに対して、映像復号処理の開始時刻をｄ（ｎ）＋Ｔ＊（Ｎ／Ｒｍａｘ−１／Ｒ）＋γに決定する。ここで、γは、調整可能なパラメータを示す。これにより、第２の実施形態によれば、さらに低遅延化を図ることが可能である。
【００８２】
第１の実施形態においては、スライスｎの復号開始時刻ｄ（ｎ）は、以下の式（５）によって表される。
【００８３】
ｄ（ｎ）＝ｅ（ｎ）＋Ｔ／Ｒ  ・・・（５）
【００８４】
ここで、ｅ（ｎ）は、符号化終了時刻を示す。また、Ｔ／Ｒは、ＣＰＢによる固定遅延を示す。
【００８５】
一方、第２の実施形態では、算術復号部１０３は、ＣＰＢによる固定遅延を待たずに、スライスの先頭部分の取得直後のｅ（ｎ）＋｛Ｔ−ｂ’（ｎ）｝／Ｒの時点から、算術復号処理を開始する。ここで、ｂ’（ｎ）は、スライスｎ符号化前のＣＰＢ占有量である。ｂ（ｎ）をスライスｎ符号化後のＣＰＢ占有量とすると、算術復号処理が終了する時刻は、ｅ（ｎ）＋｛Ｔ−ｂ’（ｎ）｝／Ｒ＋｛ｂ’（ｎ）−ｂ（ｎ）｝＊Ｎ／Ｒｍａｘとなる。これは、ｅ（ｎ）＋｛Ｔ−ｂ（ｎ）｝＊Ｎ／Ｒｍａｘ以下の値であり、さらには、ｅ（ｎ）＋Ｔ＊Ｎ／Ｒｍａｘ以下の値であることから、ｅ（ｎ）＝ｄ（ｎ）−Ｔ／Ｒを代入することによって、算術復号処理の完了時刻を、ｄ（ｎ）＋Ｔ＊（Ｎ／Ｒｍａｘ−１／Ｒ）以下であると見積もることができる。
【００８６】
以上説明したように、上述した実施形態に係る映像復号装置１は、少なくとも１つの符号化ブロックラインからなる複数のスライスを、Ｎ個の算術復号部１０３とＭ個の映像復号部１０４とによって並列に復号処理する。Ｎ個の算術復号部１０３は、任意の連続するＮ個のスライスに含まれる符号化ブロックライン数の合計と、任意の連続するＮ個のスライスとは異なる連続するＮ個のスライスに含まれる符号化ブロックライン数の合計との差が１以下であるという条件と、各スライスの符号量が所定の上限符号量未満であるという条件と、を満たすストリームに対して、各スライスサイズに応じた時間間隔で順に算術復号処理を開始する。
【００８７】
また、以上説明したように、上述した実施形態に係る映像符号化装置２は、任意の連続するＮ個のスライスに含まれる符号化ブロックライン数の合計と、当該任意の連続するＮ個のスライスとは異なる連続するＮ個のスライスに含まれる符号化ブロックライン数の合計との差が１以下であるという第１条件と、各スライスの符号量が所定の上限符号量未満であるという第２条件と、画像の上端からＸ番目の符号化ブロックラインのインター符号化において、直前に符号化された画像である参照画像の下端からＭ−Ｘ番目の符号化ブロックラインを参照しないという第３条件のうち、少なくとも第１条件と第２条件とを満たすように符号化された出力ストリームを生成し、少なくとも第１条件と第２条件とを満たすことを示す低遅延化フラグを当該出力ストリームに付与する。
【００８８】
映像復号装置１と映像符号化装置２とが上記の構成を備えることで、符号化側と復号側において所定の条件（制約条件）を共有し、符号化の対象及び復号の対象であるストリームが所定の条件を満たした場合、当該ストリームは、例えば図２のようなスライス分割パターンで分割される。これにより、復号側において並列に算術復号処理及び映像復号処理を行うことができるため、上述した実施形態に係る映像復号装置１及び映像符号化装置２は、復号処理を低遅延化することができる。
【００８９】
上述した実施形態における映像復号装置１及び映像符号化装置２の一部又は全部を、コンピュータで実現するようにしてもよい。その場合、この機能を実現するためのプログラムをコンピュータ読み取り可能な記録媒体に記録して、この記録媒体に記録されたプログラムをコンピュータシステムに読み込ませ、実行することによって実現してもよい。なお、ここでいう「コンピュータシステム」とは、ＯＳや周辺機器等のハードウェアを含むものとする。また、「コンピュータ読み取り可能な記録媒体」とは、フレキシブルディスク、光磁気ディスク、ＲＯＭ、ＣＤ−ＲＯＭ等の可搬媒体、コンピュータシステムに内蔵されるハードディスク等の記憶装置のことをいう。さらに「コンピュータ読み取り可能な記録媒体」とは、インターネット等のネットワークや電話回線等の通信回線を介してプログラムを送信する場合の通信線のように、短時間の間、動的にプログラムを保持するもの、その場合のサーバやクライアントとなるコンピュータシステム内部の揮発性メモリのように、一定時間プログラムを保持しているものも含んでもよい。また上記プログラムは、上述した機能の一部を実現するためのものであっても良く、さらに上述した機能をコンピュータシステムにすでに記録されているプログラムとの組み合わせで実現できるものであってもよく、ＰＬＤ（Programmable Logic Device)やＦＰＧＡ（Field Programmable Gate Array）等のハードウェアを用いて実現されるものであってもよい。
【００９０】
以上、図面を参照して本発明の実施形態を説明してきたが、上記実施形態は本発明の例示に過ぎず、本発明が上記実施形態に限定されるものではないことは明らかである。したがって、本発明の技術思想及び要旨を逸脱しない範囲で構成要素の追加、省略、置換、及びその他の変更を行ってもよい。
【符号の説明】
【００９１】
１…映像復号装置、２…映像符号化装置、１０１…ストリーム入力部、１０２…全体制御部、１０３…算術復号部、１０４…映像復号部、１０５…参照画像バッファ、１０６…映像出力部、２０１…映像分割部、２０２…全体制御部、２０３…レート制御部、２０４…部分エンコーダ、２０５…映像符号化部、２０６…算術符号化部、２０７…ストリーム出力部、２０８…ストリーム連結部
【図１】
2020072369.tif 000003
【図２】
2020072369.tif 000004
【図３】
2020072369.tif 000005
【図４】
2020072369.tif 000006
【図５】
2020072369.tif 000007
【図６】
2020072369.tif 000008