JP2021182728A - Image encoding device and image decoding device, method, and program - Google Patents
Image encoding device and image decoding device, method, and program Download PDFInfo
- Publication number
- JP2021182728A JP2021182728A JP2020098885A JP2020098885A JP2021182728A JP 2021182728 A JP2021182728 A JP 2021182728A JP 2020098885 A JP2020098885 A JP 2020098885A JP 2020098885 A JP2020098885 A JP 2020098885A JP 2021182728 A JP2021182728 A JP 2021182728A
- Authority
- JP
- Japan
- Prior art keywords
- image
- sps
- sub
- unit
- picture
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Abstract
Description
本発明は、動画像の符号化技術に関するものである。 The present invention relates to a moving image coding technique.
デジタルビデオカメラ等に代表される撮像装置は、H.264(非特許文献1)、H.265(非特許文献2)等の圧縮符号化技術を利用して、撮像して得た動画像データを符号化する。この符号化では、1ピクチャを複数画素で構成されるブロックを単位に符号化して得た符号化データと、ブロックの再現に係るパラメータをSPS(Sequence Parameter Set)やPPS(Picture Parameter Set)に格納したデータとを多重化したビットストリームを生成する。 An image pickup device represented by a digital video camera or the like is described by H. 264 (Non-Patent Document 1), H. et al. The moving image data obtained by imaging is encoded by using a compression coding technique such as 265 (Non-Patent Document 2). In this coding, the coded data obtained by coding one picture in units of blocks composed of a plurality of pixels and the parameters related to the reproduction of the blocks are stored in SPS (Sequence Parameter Set) and PPS (Picture Parameter Set). Generate a bitstream that is multiplexed with the data.
近年、HEVCの後継としてさらに高効率な符号化方式の国際標準化を行う活動が開始された。JVET(Joint Video Experts Team)がISO/IECとITU−Tの間で設立され、VVC(Versatile Video Coding)符号化方式(以下、VVC)として標準化が進められている。VVCでは、1つ以上のスライスを包含するように構成され、矩形を形成するサブピクチャがある。このサブピクチャはピクチャを1つ以上に分割することができ、サブピクチャ毎に独立した符号データとして処理することが可能となっている。 In recent years, as a successor to HEVC, activities to carry out international standardization of more efficient coding methods have been started. JVET (Joint Video Experts Team) was established between ISO / IEC and ITU-T, and is being standardized as a VVC (Versatile Video Coding) coding method (hereinafter referred to as VVC). In VVC, there are subpictures that are configured to contain one or more slices and form a rectangle. This sub-picture can be divided into one or more, and each sub-picture can be processed as independent code data.
しかしながら、多重化されるパラメータ情報には冗長な部分があり、改善の余地がある。 However, the parameter information to be multiplexed has a redundant part, and there is room for improvement.
この課題を解決するため、例えば本発明の画像符号化装置は以下の構成を備える。すなわち、
N個(N>1)の矩形により構成された画像を、各々の矩形が独立して復号できるように符号化する画像符号化装置であって、
画像をN個の前記矩形に分割する分割手段と、
前記矩形の位置及び大きさの情報を符号化する符号化手段とを有し、
前記符号化手段は、2番目からN−1番目の矩形の位置に関する情報を符号化し、1番目及びN番目の矩形の位置に関する情報を符号化しないことを特徴とする。
In order to solve this problem, for example, the image coding apparatus of the present invention has the following configuration. That is,
An image coding device that encodes an image composed of N (N> 1) rectangles so that each rectangle can be independently decoded.
A dividing means for dividing an image into N rectangles, and
It has a coding means for encoding information on the position and size of the rectangle.
The coding means encodes information about the positions of the second to N-1th rectangles and does not encode information about the positions of the first and Nth rectangles.
本発明によれば、パラメータ情報の情報量を、これまでよりも削減することが可能になる。 According to the present invention, the amount of parameter information can be reduced more than before.
以下、添付図面を参照して実施形態を詳しく説明する。尚、以下の実施形態は特許請求の範囲に係る発明を限定するものでない。実施形態には複数の特徴が記載されているが、これらの複数の特徴の全てが発明に必須のものとは限らず、また、複数の特徴は任意に組み合わせられてもよい。さらに、添付図面においては、同一若しくは同様の構成に同一の参照番号を付し、重複した説明は省略する。 Hereinafter, embodiments will be described in detail with reference to the accompanying drawings. The following embodiments do not limit the invention according to the claims. Although a plurality of features are described in the embodiment, not all of the plurality of features are essential for the invention, and the plurality of features may be arbitrarily combined. Further, in the attached drawings, the same or similar configurations are given the same reference numbers, and duplicate explanations are omitted.
図7は、実施形態が適用する撮像装置100のブロック構成を示す図である。撮像装置100は、CPU101、メモリ102、不揮発性メモリ103、操作部104、撮像レンズ111、撮像部112、画像処理部113、符号化処理部114、表示制御部115、表示部116、通信制御部117、通信部118、記録媒体制御部119、記録媒体120、検出部140、及び内部バス130を有する。
FIG. 7 is a diagram showing a block configuration of the
CPU101は、不揮発性メモリ103に記憶されているコンピュータプログラムを実行することによって、撮像装置100の各部の動作を制御する。メモリ102は、書き換え可能な揮発性メモリ(RAM)であり、一時的に撮像装置100の各部の動作を制御するコンピュータプログラム、各部の動作に関するパラメータ等の情報、通信制御部117によって受信した情報等を記憶する。メモリ102は、撮像部112、画像処理部113、符号化処理部114等で処理した画像や情報を一時的に記憶するワークメモリとしても機能する。
The
不揮発性メモリ103は、電気的に消去・記録可能なメモリであり、例えばEEPROMやSDメモリカード等の記憶媒体が用いられる。不揮発性メモリ103は、撮像装置100の各部の動作を制御するコンピュータプログラム及び各部の動作に関するパラメータ等の情報を記憶する。ここでいう、コンピュータプログラムとは、本実施形態にて後述する各種処理を実行するためのプログラムが含まれる。
The non-volatile memory 103 is a memory that can be electrically erased and recorded, and a storage medium such as an EEPROM or an SD memory card is used. The non-volatile memory 103 stores information such as a computer program that controls the operation of each part of the
操作部104は、撮像装置100を操作するためのユーザインターフェースを提供する。操作部104は、撮像装置100の電源ボタン及びメニューボタン、シャッターボタン、モード切り替えボタン等を有し、各ボタンはスイッチ、タッチパネル等により構成される。CPU101は、操作部104を介して入力されたユーザの指示に従って撮像装置100を制御する。なお、操作部104は、不図示のリモートコントローラから受信したリモコン信号や、不図示の携帯端末から通信制御部117を介して通知された要求に応じて撮像装置100を制御してもよい。
The
撮像レンズ111は、ズームレンズ、フォーカスレンズを含むレンズ群、レンズ制御部、絞りなどにより構成される。撮像レンズ111は図示しないレンズ制御部を有し、CPU101から送信される制御信号により、焦点の調整や絞り値(F値)を制御する。撮像部112は、被写体の光学像を電気信号に変換する撮像素子を備える。撮像素子は、例えばCCD(電荷結合素子)やCMOS(相補型金属酸化膜半導体)素子等で構成されるエリアイメージセンサである。撮像部112は、例えば30FPSのフレームレートで撮像し、この撮像で得た画像を画像処理部113またはメモリ102に出力する。
The
画像処理部113は、撮像部112から出力されるデータ、又は、メモリ102から読み出されたデータに対し所定の画素補間、縮小といったリサイズ処理、アスペクト比を合わせるための画像の付与、色変換処理等を行う。また、画像処理部113では、撮像した画像データを用いて所定の演算処理が行われ、得られた演算結果に基づいてCPU101が露光制御、測距制御を行う。これにより、AE(自動露出)処理、AWB(オートホワイトバランス)処理、AF(オートフォーカス)処理が行われる。
The
また、画像処理部113では、画像データの位置合わせを行い、位置合わせした複数枚の画像を合成して、広角な合成画像を生成する広角合成を行う。本実施形態における広角合成の詳細は後述する。
Further, the
符号化処理部114は、入力された画像データを、CPU101からの設定に従って複数の矩形領域に分割し、各領域の画像を圧縮符号化する。実施形態における符号化処理部114は、例えばVVC方式に従って圧縮処理を行うものとする。ただし、後述する点については、現段階において提案されているVVC方式とは異なる。
The
表示制御部115は、表示部116を制御するための制御部である。表示制御部115は表示部116で表示可能な画像になるようにリサイズ処理や色変換処理等を行い、画像信号を表示部116に出力する。
The
表示部116は、液晶ディスプレイや有機EL等で構成されており、表示制御部115からの画像データに基づく画像を表示する。なお、表示部116の前面にはタッチパネルが設けられ、ユーザからの操作を受け付ける操作部も兼ねる。
The
通信制御部117は、CPU101に制御され、IEEE802.11等で予め定められた無線通信規格に適用した変調信号を生成して、通信部118へ出力する。また、通信制御部117は、通信部118より無線通信規格に適用した変調信号を受信して復号することでアナログ信号をデジタル信号変換してCPU101に通知する。また、通信制御部117は通信を設定するためのレジスタを持っており、CPU101から制御されることで通信時の送受信感度を調整し、所定の変調方式で送受信をおこなうことができる。通信部118は、通信制御部117から送られてくる変調信号を外部へ出力、もしくは外部からの変調信号を受信するアンテナ及び、アナログ回路等により構成される。
The
記録媒体制御部119は、記録媒体120を制御するための制御部であり、CPU101から要求を受けて、記録媒体120を制御するための制御信号を出力する。記録媒体120は、撮像され符号化された画像データを記録するための着脱式、または内蔵式の不揮発性メモリや磁気ディスク等から構成される。なお、CPU101が記録媒体120に記録する場合には、記録媒体のファイルシステムに適応した形式でファイルデータとして保存する。
The recording
検出部140は、GPSセンサ、ジャイロセンサや加速度センサ等を含む。
The
内部バス130は、CPU101とメモリ102に各処理部がアクセスするための内部バスである。
The
上記構成においてCPU101は、符号化処理部114を制御し、ピクチャを複数の矩形領域に分割し、各矩形領域の符号化処理を行わせる。また、CPU101は、各矩形領域を再現するための情報(後述するSPS等)を生成する。そして、CPU101は、符号化処理部114が生成した画像の符号化データと、SPS等の情報とを多重化して、ビットストリームを生成する。そして、CPU101は、記録媒体制御部119を制御し、記録媒体120に動画像ファイルとして記録する。
In the above configuration, the
次に、実施形態における符号化処理部114による符号化処理と矩形領域の分割について説明する。符号化処理部114は、CPU101の制御の下、符号化対象の1ピクチャ(フレーム画像)を1以上のタイル行、1以上のタイル列に分割し、符号化を行う。
Next, the coding process by the
ここで1つのタイルは、複数画素で構成される矩形の領域をカバーするブロック(CTU: Coding Tree Unit)の集合体である。また、以下の説明でのスライスとは、複数個のタイルで構成される領域、或いは、1つのタイルにおける1つ以上のCTU行の領域を言う。 Here, one tile is an aggregate of blocks (CTU: Coding Tree Unit) covering a rectangular area composed of a plurality of pixels. Further, the slice in the following description means an area composed of a plurality of tiles or an area of one or more CTU rows in one tile.
図1、図2は、CTU,タイル(Tile)、スライス(Slice)の関係の例である。図1の例では、1ピクチャが4行6列のタイルに分割され、そのタイルを集合的にカバーする3×3の計9つのスライスが定義された例を示している。また、図2は、1ピクチャが2行2列の4個のタイルに分割され、右上のタイルが2つのスライスに分けられ、左側の垂直に隣り合う2つのタイルが1つのスライスを構成し、そして、右下のタイルが1つのスライスとなり、計4つのスライスが定義された例を示している。 1 and 2 are examples of the relationship between CTU, Tile, and Slice. In the example of FIG. 1, one picture is divided into tiles of 4 rows and 6 columns, and a total of 9 slices of 3 × 3 that collectively cover the tiles are defined. Further, in FIG. 2, one picture is divided into four tiles of 2 rows and 2 columns, the upper right tile is divided into two slices, and two vertically adjacent tiles on the left side form one slice. Then, the tile at the lower right becomes one slice, and an example in which a total of four slices are defined is shown.
また、実施形態では、フレーム画像内の矩形領域を集合的にカバーする1以上のスライスから構成され、独立して復号可能な領域をサブピクチャ(subpicture)とする。図3は、CTU,タイル、サブピクチャの関係の例を示している。同図では、1ピクチャが3行6列の18個のタイルに分割され、それぞれのタイルを集合的にカバーする計24個のスライス及びサブピクチャが設定された例を示している。 Further, in the embodiment, a region composed of one or more slices collectively covering a rectangular region in a frame image and which can be independently decoded is referred to as a subpicture. FIG. 3 shows an example of the relationship between the CTU, tiles, and subpictures. The figure shows an example in which one picture is divided into 18 tiles in 3 rows and 6 columns, and a total of 24 slices and sub-pictures that collectively cover each tile are set.
なお、ピクチャをいくつの、そして、どのようなサイズにサブピクチャに分割するか等の設定は、CPU101が行うものとする。この設定は、例えば、動画像を記録するに先立って撮像して映像から導出した色分布が、予め登録した色パターンのいずれに最も近いかに基づいて決定するものとする。
It should be noted that the
VVCでは、図1乃至図3に示すような、タイル、スライス、サブピクチャを用いたピクチャ分割を実現するためのパラメータ等の情報(復号側にとっては再現するための情報)を、画像の符号化で得たビットストリームのシーケンスのヘッダ部(SPS:Sequence Parameter Set)や、ピクチャに対するヘッダ部(PPS:Picture Parameter Set)に格納することになっている。 In VVC, information such as parameters for realizing picture division using tiles, slices, and sub-pictures (information for reproduction for the decoding side) as shown in FIGS. 1 to 3 is encoded in the image. It is supposed to be stored in the header part (SPS: Sequence Parameter Set) of the sequence of the bitstream obtained in 1 and the header part (PPS: Picture Parameter Set) for the picture.
例えば、SPSには、各サブピクチャの左上端を示すx、y座標を表すsps_subpic_ctu_top_left_x、y座標sps_subpic_ctu_top_left_yを格納する。しかしながら、例えばピクチャ内の右下端に位置する、最後のサブピクチャの左上の座標は、それ以前の各サブピクチャの座標から算出できる。つまり、最後のサブピクチャに係る位置を示す情報は冗長であると言える。 For example, the SPS stores sps_subpic_ctu_top_left_x and y-coordinates sps_subpic_ctu_top_left_y indicating the upper left end of each sub-picture. However, for example, the coordinates of the upper left of the last sub-picture located at the lower right of the picture can be calculated from the coordinates of each of the previous sub-pictures. That is, it can be said that the information indicating the position related to the last sub-picture is redundant.
そこで、本実施形態のCPU101は、最後のサブピクチャに係るパラメータ情報を省略したSPSを生成し、そのSPSの情報量をこれまでよりも削減する。
Therefore, the
図4A〜図4Fは、実施形態で生成されるSPSの情報のシンタックスを示している。なお、図4A〜図4Fはこの順番に連続させることで、SPSのシンタックスを表している点に注意されたい。 4A-4F show the syntax of the SPS information generated in the embodiment. It should be noted that FIGS. 4A to 4F represent the syntax of SPS by making them continuous in this order.
図示されている参照符号401、402の行の記述における“sps_num_subpics_minus1”は、「1ピクチャに含まれるサブピクチャの個数−1」を表している。そして、条件「i<sps_num_subpics_minus1」を新たに追加することで、1ピクチャに含まれるサブピクチャの個数をNとしたとき、それよりも1つ少ないN−2個のサブピクチャの位置{sps_subpic_ctu_top_left_x[i],sps_subpic_ctu_top_left_y[i]}と、サイズ{sps_subpic_width_minus1[i],sps_subpic_hight_minus1[i]}がSPSに含まれるようにした。本実施形態では参照符号401及び402の行に条件式を追加する構成としたが、本発明はこれに限定されるものではない。例えば401の上の行のfor文の条件式をi<=sps_num_subpics_minus1から、i<sps_num_subpics_minus1に変更してもよい。
"Sps_num_subpics_minus1" in the description of the lines of
なお、復号側では、図4A〜図4Fに示すSPSのシンタックスに従って復号する過程で、最後(N個目)のサブピクチャの位置やサイズは、それ以前のサブピクチャの復号結果から自動的に求めることができるので、求めた位置に従ってサブピクチャの画像を再現できるので、問題は発生しない。 On the decoding side, in the process of decoding according to the SPS syntax shown in FIGS. 4A to 4F, the position and size of the last (Nth) sub-picture are automatically set from the decoding results of the previous sub-pictures. Since it can be obtained, the image of the sub-picture can be reproduced according to the obtained position, so that no problem occurs.
CTUの縦及び横の画素数であるCtbSizeYは、1<<CtbSize(ここで、CtbSize=sps_log2_ctu_size_minus5+5)で示される。画像の水平方向のCTU数であるPicCtbNumHは、(sps_pic_width_max_in_luma_samples+CtbSizeY−1)>>CtbLog2SizeYで求める事ができる。同様に垂直方向のCTU数であるPicCtbNumVは、(sps_pic_height_max_in_luma_samples+CtbSizeY−1)>>CtbLog2SizeYで求める事ができる。なお、基本ブロック(CTU)の縦及び横の画素数であるCtbSizeYは、1<<CtbSize(ここで、CtbLog2SizeY=sps_log2_ctu_size_minus5+5)で示される。また、以下の説明において、基本ブロックとはCTUであるものとして説明するが必ずしもそれに限られない。また、各実施形態で示す基本ブロックやCTUのサイズについては一例である。各実施形態で示すタイルやスライス等の領域のサイズについても同様に一例である。 CtbSizeY, which is the number of vertical and horizontal pixels of the CTU, is represented by 1 << CtbSize (here, CtbSize = sps_log2_ctu_size_minus5 + 5). PicCtbNumH, which is the number of CTUs in the horizontal direction of the image, can be obtained by (sps_pic_width_max_in_luma_samples + CtbSizeY-1) >> CtbLog2SizeY. Similarly, PicCtbNumV, which is the number of CTUs in the vertical direction, can be obtained by (sps_pic_height_max_in_luma_samples + CtbSizeY-1) >> CtbLog2SizeY. The number of vertical and horizontal pixels of the basic block (CTU), CtbSizeY, is indicated by 1 << CtbSize (here, CtbLog2SizeY = sps_log2_ctu_size_minus5 + 5). Further, in the following description, the basic block will be described as being a CTU, but the basic block is not necessarily limited to that. Moreover, the size of the basic block and the CTU shown in each embodiment is an example. The size of the area such as tiles and slices shown in each embodiment is also an example.
sps_num_subpics_minus1番目(最後)のサブピクチャの左上のCTUの座標の導出に関して説明する。初めにX座標の求め方について説明する。まず、最後のサブピクチャの左に隣接するサブピクチャを求める。画像の下端のCTUを含むサブピクチャの中で、サブピクチャの右端CTUが最大のX座標を持つサブピクチャが、最後のサブピクチャの左に隣接するサブピクチャである。まず下記の式が成り立つサブピクチャが下端のCTUを含むサブピクチャである。
PicCtbNumV==sps_subpic_ctu_top_left_y[i]+sps_subpic_height_minus1[i]+1
sps_num_subpics_minus The derivation of the coordinates of the CTU on the upper left of the first (last) subpicture will be described. First, how to obtain the X coordinate will be described. First, the subpicture adjacent to the left of the last subpicture is obtained. Among the sub-pictures including the CTU at the lower end of the image, the sub-picture having the maximum X coordinate at the right end CTU of the sub-picture is the sub-picture adjacent to the left of the last sub-picture. First, the sub-picture for which the following equation holds is a sub-picture including the CTU at the lower end.
PicCtbNumV == sps_subpic_ctu_top_left_y [i] + sps_subpic_height_minus1 [i] + 1
画像内で上記条件を満たす全てのサブピクチャの中で、最も右に位置するサブピクチャ、即ちsps_subpic_ctu_top_left_x[i]が最も大きいサブピクチャが左に隣接するサブピクチャになる。従って、最後のサブピクチャの左に隣接するサブピクチャがN番目のサブピクチャだとすると、最後のサブピクチャの左上のCTUのX座標は以下の式で求める事ができる。
sps_subpic_ctu_top_left_x[N]+sps_subpic_width_minus1[N]+1
Among all the sub-pictures satisfying the above conditions in the image, the sub-picture located on the rightmost side, that is, the sub-picture having the largest sps_subpic_ctu_top_left_x [i] is the sub-picture adjacent to the left side. Therefore, assuming that the sub-picture adjacent to the left of the last sub-picture is the Nth sub-picture, the X coordinate of the CTU on the upper left of the last sub-picture can be obtained by the following equation.
sps_subpic_ctu_top_left_x [N] + sps_subpic_width_minus1 [N] + 1
次に、最後のサブピクチャの左上のCTUのY座標の求め方について説明する。まず、最後のサブピクチャの上に隣接するサブピクチャを求める。画像の右端のCTUを含むサブピクチャの中で、サブピクチャの下端のCTUが最大のY座標を持つサブピクチャが、最後のサブピクチャの上に隣接するサブピクチャである。まず下記の式が成り立つサブピクチャが右端のCTUを含むサブピクチャである。
PicCtbNumH==sps_subpic_ctu_top_left_x[i]+sps_subpic_width_minus1[i]+1
Next, how to obtain the Y coordinate of the CTU on the upper left of the last subpicture will be described. First, the sub-pictures adjacent to the last sub-picture are obtained. Among the sub-pictures including the CTU at the right end of the image, the sub-picture having the maximum Y coordinate of the CTU at the lower end of the sub-picture is the sub-picture adjacent to the last sub-picture. First, the sub-picture for which the following equation holds is a sub-picture including the CTU at the right end.
PicCtbNumH == sps_subpic_ctu_top_left_x [i] + sps_subpic_width_minus1 [i] + 1
画像内で上記条件を満たす全てのサブピクチャの中で、最も下に位置するサブピクチャ、即ちsps_subpic_ctu_top_left_y[i]が最も大きいサブピクチャが上に隣接するサブピクチャになる。従って、最後のサブピクチャの上に隣接するサブピクチャがM番目のサブピクチャだとすると、最後のサブピクチャの左上のCTUのY座標は以下の式で求める事ができる。
sps_subpic_ctu_top_left_y[M]+sps_subpic_height_minus1[M]+1
Among all the sub-pictures satisfying the above conditions in the image, the sub-picture located at the bottom, that is, the sub-picture having the largest sps_subpic_ctu_top_left_y [i] is the sub-picture adjacent to the top. Therefore, assuming that the sub-picture adjacent to the last sub-picture is the M-th sub-picture, the Y coordinate of the CTU on the upper left of the last sub-picture can be obtained by the following equation.
sps_subpic_ctu_top_left_y [M] + sps_subpic_height_minus1 [M] + 1
また、これまでの技術におけるSPS、PPS、並びに、スライスヘッダは、1つのピクチャに、2以上のサブピクチャが存在することを許容する記述を採用している。換言すれば、これまでは、1つのピクチャ内に2つ以上のサブピクチャが存在している場合にのみ意味がある情報が含まれていることになる。 Further, the SPS, PPS, and slice header in the conventional techniques employ a description that allows two or more sub-pictures to exist in one picture. In other words, so far, information that is meaningful only when two or more sub-pictures exist in one picture is included.
しかしながら、1ピクチャ内に1つのサブピクチャしか含まれない場合もあり、このようなケースの場合には、SPS、PPS、並びに、スライスヘッダは冗長な情報を含むことになり、符号量の削減という観点からまだ改善の余地がある。 However, there are cases where only one sub-picture is included in one picture, and in such a case, the SPS, PPS, and slice header contain redundant information, which means that the amount of code is reduced. There is still room for improvement from the point of view.
そこで、本実施形態では、SPSのシンタックスを示す図4A〜図4Fにおける、参照符号403、404の行は、1ピクチャ内に2以上のサブピクチャが存在する場合にのみ有効であるとして{}内のシンタクスが符号化され、1ピクチャ内に1つのサブピクチャのみが存在する場合には{}内のシンタクスは符号化されない。
Therefore, in the present embodiment, the lines of
また、図5Aの501の行の上の行に存在するpps_no_pic_partition_flagは、画像がサブピクチャ、タイル、スライスに分割されていないか否かを示すフラグである。当該シンタクスが1の時は、画像が単一のサブピクチャ、タイル、スライスで構成されている事を示す。図5A〜図5C(この順番にPPSのシンタックスを表す)が示すPPS(Picture Parameter Set)のシンタックスにおける参照符号501が示す行、並びに、参照符号503が示す行中の条件「&& (pps_num_subpics_minus1 > 0」は、1ピクチャ内に2以上のサブピクチャが存在する場合にのみ有効であるとして{}内のシンタクスが符号化される。そして、1ピクチャ内に1つのサブピクチャのみが存在する場合には{}内のシンタクスが符号化されない。
Further, the pps_no_pic_partition_flag present in the line above the line 501 in FIG. 5A is a flag indicating whether or not the image is divided into subpictures, tiles, and slices. When the syntax is 1, it indicates that the image is composed of a single subpicture, tile, or slice. The line indicated by reference numeral 501 in the syntax of PPS (Picture Parameter Set) shown in FIGS. 5A to 5C (in this order representing the syntax of PPS), and the condition "&& (pps_num_subpics_minus1" in the line indicated by
そして、図6A〜図6C(この順番にスライスヘッダのシンタックスを表す)が示すスライスヘッダのシンタックスおける参照符号601が示す行中の条件「sps_num_subpics_minus1>0」は、1ピクチャ内に2以上のサブピクチャが存在する場合にのみ有効であるとして{}内のシンタクスが符号化される。そして、1ピクチャ内に1つのサブピクチャのみが存在する場合には{}内のシンタクスが符号化されない。
Then, the condition "sps_num_subpix_minus1> 0" in the line indicated by the
上記の結果、CPU101は、1ピクチャ内に2以上のサブピクチャが存在する場合のみ、サブピクチャを特定するインデックス番号を符号化する。そして、CPU101は、1ピクチャ内に1つのサブピクチャしか存在しない場合には、サブピクチャのインデックス番号の符号を生成しなくなり、その分だけ符号量を削減できるようになる。
As a result of the above, the
上記の結果、特に、1ピクチャ内に含まれるサブピクチャの数が1つの場合に、SPS,PPS,スライスヘッダの情報量を削減できることになる。 As a result of the above, the amount of information in the SPS, PPS, and slice header can be reduced, especially when the number of sub-pictures contained in one picture is one.
なお、上記実施形態では、画像符号化装置として撮像装置に適用する例を説明したが、符号化対象の画像を入力もしくは受信し、符号化する装置であれば良いので、撮像装置のみに限定されるものではない。 In the above embodiment, an example of applying to an image pickup device as an image coding device has been described, but the device is limited to the image pickup device as long as it is a device that inputs or receives an image to be coded and encodes it. It's not something.
また、実施形態では、撮像装置が、図7の構成を有するものとして説明したが、同図の幾つかの構成、例えば画像処理部113、符号化処理部114等は、CPU101がプログラムを実行することで実現しても構わない。
Further, in the embodiment, the image pickup apparatus has been described as having the configuration of FIG. 7, but the
次に、図10、図12〜図15を参照して、これまで説明してきた画像符号化装置について、更に詳細に説明する。なお、以下の説明では、撮像部112等で行う撮像処理については説明を省略し、主に符号化処理部114における処理として説明してきた処理の更なる詳細について説明する。
Next, the image coding apparatus described so far will be described in more detail with reference to FIGS. 10 and 12 to 15. In the following description, the image pickup process performed by the
図15は本実施形態の画像符号化装置を示すブロック図である。図15は、符号化処理部114等を更に詳細に記した機能ブロック図である。
FIG. 15 is a block diagram showing an image coding apparatus of this embodiment. FIG. 15 is a functional block diagram showing the
本装置は、画像分割部802、ブロック分割部803、予測部804、変換・量子化部805、逆量子化・逆変換部806、画像再生部807、フレームメモリ808、インループフィルタ部809、符号化部810、統合符号化部811を有する。
This device has an
画像分割部802は、入力端子801を介して入力した入力画像を一つもしくは複数のタイル行および一つもしくは複数のタイル列に分割する。タイルは画像内の矩形領域を覆う、連続する基本ブロック(CTU:Coding Tree Unit)の集合である。画像分割部802はさらに、画像をスライスに分割する。スライスは、画像内の一つまたは複数のタイルを包含する形で構成されるか、あるいは一つのタイル内の一つ以上の基本ブロック行で構成される。スライスは符号化の基本単位であり、スライス毎にスライスの種類を示す情報等のヘッダ情報が付加される。画像分割部802はさらに、入力画像を一つもしくは複数のサブピクチャを定義する。サブピクチャは複数のスライスの集合(矩形状)で構成される。入力画像を4個のタイル、4個のサブピクチャ、11個のスライスに分割する例を図13に示す。左上のタイルは1個のスライス、左下のタイルは2個のスライス、右上のタイルは5個のスライス、右下のタイルは3個のスライスにそれぞれ分割されている。そして左のサブピクチャは3個のスライス、右上のサブピクチャは2個のスライス、右中央のサブピクチャは3個のスライス、右下のスライスは3個のスライスを包含するように構成されている。
The
ブロック分割部803は、画像分割部802から出力された基本ブロックで構成される行画像を複数の基本ブロックに分割し、基本ブロック単位の画像を後段に出力する。
The
予測部804は、基本ブロック単位の画像データに対し、サブブロック分割を決定し、サブブロック単位でフレーム内予測であるイントラ予測やフレーム間予測であるインター予測などを行い、予測画像データを生成する。ここで予測部804は、サブピクチャを跨いだイントラ予測、動きベクトルの予測は行われない。さらに、予測部804は、入力された画像データと予測画像データから予測誤差を算出し、出力する。また、予測部804は、予測に必要な情報、例えばサブブロック分割、予測モードや動きベクトル等の情報も予測誤差と併せて出力する。以下ではこの予測に必要な情報を予測情報と呼称する。
The
変換・量子化部805は、予測誤差をサブブロック単位で直交変換して変換係数を得、さらに量子化を行い、量子化係数を生成する。
The conversion /
逆量子化・逆変換部806は、変換・量子化部805から出力された量子化係数を逆量子化して変換係数を再生し、さらに逆直交変換して予測誤差を再生する。
The inverse quantization /
画像再生部807は、予測部804から出力された予測情報に基づいて、フレームメモリ808を適宜参照して予測画像データを生成し、これと入力された予測誤差から再生画像データを生成する。画像再生部807は、生成した再生画像データをフレームメモリ807に再格納する。
Based on the prediction information output from the
インループフィルタ部809は、フレームメモリ808に格納された再生画像データに対し、デブロッキングフィルタやサンプルアダプティブオフセットなどのインループフィルタ処理を行い、フィルタ処理後の画像データを、フレームメモリ808に再格納する。
The in-
符号化部810は、変換・量子化部804から出力された量子化係数および予測部804から出力された予測情報を符号化して、符号データを生成し出力する。
The
統合符号化部811は、画像分割部802から分割情報を受け取り、ヘッダ符号データを生成する。さらに統合符号化部811は、符号化部810から出力された符号データと合わせて、ビットストリームを形成して、形成したビットストリームを出力端子812を介して出力する。
The
実施形態における画像符号化装置における画像の符号化動作を以下に説明する。本実施形態では動画像データをフレーム単位に入力する構成とするが、1フレーム分の静止画像データを入力する構成としても構わない。また、本実施形態では、説明を容易にするため、イントラ予測符号化の処理のみを説明するが、これに限定されずインター予測符号化の処理においても適用可能である。さらに本実施形態では説明のため、ブロック分割部803においては64×64画素の基本ブロックに分割するものとして説明するが、これはあくまで例示であり、これに限定されるものではない。
The image coding operation in the image coding device according to the embodiment will be described below. In the present embodiment, the moving image data is input in frame units, but the still image data for one frame may be input. Further, in the present embodiment, for the sake of facilitation of explanation, only the intra-predictive coding process will be described, but the present invention is not limited to this and can be applied to the inter-predictive coding process. Further, in the present embodiment, for the sake of explanation, the
本実施形態では、まず端子801から入力された1フレーム分の画像データが画像分割部802において、図14(a),(b)のようにタイルとスライスに分割され、サブピクチャが定義される。図14(a)はタイルの分割とIDを示す図である。本実施形態では画像データは384×384画素の9つのタイルに分割される。タイルは左上からラスタ順にIDが付与され、左上のタイルIDは0、右下のタイルIDは8である。
In the present embodiment, first, one frame of image data input from the terminal 801 is divided into tiles and slices in the
図14(b)はタイル、サブピクチャの定義及びスライスの分割例を示す。タイルID0及びタイルID7のタイルは更に384×192画素の2つのスライスに分割される。タイルID2のタイルは、384×128、384×256画素の2つのスライスに分割される。タイルID3のタイルは384×128の3つのスライスに分割される。それら以外のタイルは単一のスライスで構成される。各スライスにはラスタ順のタイルの中で上から順にIDが付与される。図14(b)に示すSIDがスライスのIDである。サブピクチャは、夫々SID=0〜2を含むサブピクチャ0、SID=3を含むサブピクチャ1、SID=4を含むスサブピクチャ2、SID=5〜8及び10〜12を含むサブピクチャ3、SID=9及び13を含むサブピクチャ4と定義される。これらの、タイル、サブピクチャ、スライスの大きさに関する情報は、分割情報として、統合符号化部811に送られる。また、各スライスは基本ブロック行単位の画像データである基本ブロック行画像に分割され、ブロック分割部803に送られる。
FIG. 14B shows definitions of tiles and subpictures and an example of dividing slices. The tiles with
ブロック分割部803は、入力された基本ブロックで構成される行画像を複数の基本ブロックに分割し、基本ブロック単位の画像を予測部804に出力する。本実施形態のブロック分割部803は、64×64画素の基本ブロック単位の画像を出力する。
The
予測部804は、ブロック分割部803から入力された基本ブロック単位の画像データに対し予測処理を実行する。具体的には、基本ブロックをさらに細かいサブブロックに分割するサブブロック分割を決定し、さらにサブブロック単位で水平予測や垂直予測などのイントラ予測モードを決定する。
The
予測部804は、決定したイントラ予測モードおよび符号化済の画素から予測画像データを生成し、さらに入力された画像データと前記予測画像データの差分である予測誤差を生成し、変換・量子化部805に出力する。また、予測部804は、サブブロック分割やイントラ予測モードなどの情報は予測情報として、符号化部810、画像再生部807に供給する。
The
変換・量子化部805は、入力された予測誤差に対して、直交変換、及び、量子化を行い、量子化係数を生成する。変換・量子化部805は、まずはサブブロックのサイズに対応した直交変換処理が施されて直交変換係数を生成する。次に変換・量子化部805は、直交変換係数を量子化し、量子化係数を生成する。そして、変換・量子化部805は、生成された量子化係数を符号化部810および逆量子化・逆変換部806に出力する。
The conversion /
逆量子化・逆変換部806は、入力された量子化係数を逆量子化して変換係数を再生する。逆量子化・逆変換部806は、さらに、再生された変換係数を逆直交変換して予測誤差を再生する。そして、逆量子化・逆変換部806は、再生された予測誤差を画像再生部807に出力する。
The inverse quantization /
画像再生部807は、予測部804から入力される予測情報に基づいて、フレームメモリ808を適宜参照し、予測画像を再生する。そして、画像再生部807は、再生された予測画像と逆量子化・逆変換部806から入力した予測誤差から画像データを再生し、再生した画像をフレームメモリ808に格納する。
The
インループフィルタ部809は、フレームメモリ808から再生画像を読み出し、デブロッキングフィルタなどのインループフィルタ処理を行う。そして、インループフィルタ部809は、フィルタ処理された画像をフレームメモリ808に再格納する。
The in-
符号化部810は、ブロック単位で、変換・量子化部805で生成された量子化係数、予測部804から入力された予測情報をエントロピー符号化し、符号データを生成する。エントロピー符号化の種類は特に問わないが、ゴロム符号化、算術符号化、ハフマン符号化などを用いることができる。符号化部810は、生成した符号データを統合符号化部811に出力する。
The
統合符号化部811は、画像分割部802より分割情報を受け取り、ヘッダの符号化データを生成する。そして、統合符号化部811は、ヘッダの符号化データと、符号化部810から受信した符号化データとを多重化してビットストリームを形成する。そして、統合符号化部811は、形成したビットストリームを、出力端子812を介して外部に出力する。
The
本画像符号化装置が符号化するVVCによる符号化データのフォーマットを図12に示す。図12の符号化データには、まずシーケンスの符号化に関わる情報が含まれたヘッダ情報であるシーケンス・パラメータ・セット(SPS)が存在する。さらに、ピクチャの符号化に関わる情報が含まれたヘッダ情報であるピクチャ・パラメータ・セット(PPS)、スライスの符号化に関わる情報が含まれたヘッダ情報であるスライスヘッダ及び各スライスの符号化データが続く。 FIG. 12 shows the format of the VVC-encoded data encoded by the image coding apparatus. In the coded data of FIG. 12, first, there is a sequence parameter set (SPS) which is header information including information related to the coding of the sequence. Further, a picture parameter set (PPS) which is header information including information related to picture coding, a slice header which is header information including information related to slice coding, and coding data of each slice. Followed by.
シーケンス・パラメータ・セット(SPS)には、画像サイズ情報として、sps_pic_width_max_in_luma_samples及びsps_pic_height_max_in_luma_samplesが存在する。これらはそれぞれ、画像の輝度の水平方向の画素数、垂直方向の画素数を表す。本実施形態では図14の画像を符号化するため、sps_pic_width_max_in_luma_samplesは“1152”、sps_pic_height_max_in_luma_samplesは“1152”となる。また、基本ブロック分割情報として、基本ブロックの大きさを示すsps_log2_ctu_size_minus5が存在する。前述のように、基本ブロックの縦及び横の画素数であるCtbSizeYは、1<<CtbSize(ここで、CtbLog2SizeY=sps_log2_ctu_size_minus5+5)で示される。画像の水平方向の基本ブロック数であるPicCtbNumHは、(sps_pic_width_max_in_luma_samples+CtbSizeY−1)>>CtbLog2SizeYで求める事ができる。同様に垂直方向の基本ブロック数であるPicCtbNumVは、(sps_pic_height_max_in_luma_samples+CtbSizeY−1)>>CtbLog2SizeYで求める事ができる。本実施形態では基本ブロックは64×64画素であるため、sps_log2_ctu_size_minus5の値は1となる。 In the sequence parameter set (SPS), sps_pic_width_max_in_luma_samples and sps_pic_height_max_in_luma_samples are present as image size information. These represent the number of pixels in the horizontal direction and the number of pixels in the vertical direction of the brightness of the image, respectively. In this embodiment, since the image of FIG. 14 is encoded, sps_pic_width_max_in_luma_samples is "1152" and sps_pic_height_max_in_luma_samples is "1152". Further, as basic block division information, sps_log2_ctu_size_minus5 indicating the size of the basic block exists. As described above, CtbSizeY, which is the number of vertical and horizontal pixels of the basic block, is indicated by 1 << CtbSize (here, CtbLog2SizeY = sps_log2_ctu_size_minus5 + 5). PicCtbNumH, which is the number of basic blocks in the horizontal direction of the image, can be obtained by (sps_pic_width_max_in_luma_samples + CtbSizeY-1) >> CtbLog2SizeY. Similarly, PicCtbNumV, which is the number of basic blocks in the vertical direction, can be obtained by (sps_pic_height_max_in_luma_samples + CtbSizeY-1) >> CtbLog2SizeY. In this embodiment, since the basic block has 64 × 64 pixels, the value of sps_log2_ctu_size_minus5 is 1.
さらにサブピクチャ定義情報S(SPS)として、サブピクチャの定義に関する情報があるか否かを示すsps_subpic_info_present_flagが存在する。このsps_subpic_info_present_flagが1の時は、サブピクチャの定義に関する情報を統合符号化部811が符号化していることを示し、0の時は符号化していないことを示す。このsps_subpic_info_present_flagが1の時はサブピクチャ数−1を表すsps_num_subpics_minus1を統合符号化部811が符号化する。更に統合符号化部811は、i番目のサブピクチャの左上の基本ブロックの座標を示すsps_subpic_ctu_top_left_x[i](X座標)及びsps_subpic_ctu_top_left_y[i](Y座標)を符号化する。ただし統合符号化部811は、0番目のサブピクチャの座標情報に関しては必ず画像の左上であり、座標が(0、0)である事が確定しているため符号化しない。また、sps_num_subpics_minus1番目(最後&右下)のサブピクチャの座標も後述の通り求められるため符号化しない。また統合符号化部811は、座標と同様にi番目のサブピクチャの水平及び垂直方向の基本ブロック数−1を示す、sps_subpic_width_minus1[i]及びsps_subpic_height_minus1[i]も符号化する。統合符号化部811は、sps_num_subpics_minus1番目のサブピクチャに関しては水平方向及び垂直方向の基本ブロック数は自明であるため符号化しない。
Further, as the sub-picture definition information S (SPS), there is sps_subpic_info_present_flag indicating whether or not there is information regarding the definition of the sub-picture. When sps_subpic_info_present_flag is 1, it indicates that the
本実施形態では5個のサブピクチャを定義するので、sps_subpic_info_present_flagは1になり、sps_num_subpics_minus1は4となる。0番目のサブピクチャは基本ブロック数が12×6なので、sps_subpic_width_minus1[0]は11、sps_subpic_height_minus1[0]は5になる。1番目のサブピクチャの左上の基本ブロックの座標は(12、0)なので、sps_subpic_ctu_top_left_x[1]は12、sps_subpic_ctu_top_left_y[1]は0となる。1番目のサブピクチャは基本ブロック数が6×2なので、sps_subpic_width_minus1[1]は5、sps_subpic_height_minus1[1]は1になる。2番目のサブピクチャの左上の基本ブロックの座標は(12、2)なので、sps_subpic_ctu_top_left_x[2]は12、sps_subpic_ctu_top_left_y[2]は2となる。2番目のサブピクチャは基本ブロック数が6×4なので、sps_subpic_width_minus1[2]は5、sps_subpic_height_minus1[2]は3になる。3番目のサブピクチャの左上の基本ブロックの座標は(0、6)なので、sps_subpic_ctu_top_left_x[3]は0、sps_subpic_ctu_top_left_y[3]は6となる。3番目のサブピクチャは基本ブロック数が12×12なので、sps_subpic_width_minus1[3]は11、sps_subpic_height_minus1[3]は11になる。4番目のサブピクチャの左上の基本ブロックの座標は(12、6)、基本ブロック数が6×12だが、統合符号化部811はこれらの情報を符号化しない。
Since five subpictures are defined in this embodiment, sps_subpic_info_present_flag is 1, and sps_num_subpics_minus1 is 4. Since the number of basic blocks of the 0th subpicture is 12 × 6, sps_subpic_width_minus1 [0] is 11, and sps_subpic_height_minus1 [0] is 5. Since the coordinates of the upper left basic block of the first subpicture are (12, 0), sps_subpic_ctu_top_left_x [1] is 12, and sps_subpic_ctu_top_left_y [1] is 0. Since the number of basic blocks of the first subpicture is 6 × 2, sps_subpic_width_minus1 [1] is 5, and sps_subpic_height_minus1 [1] is 1. Since the coordinates of the upper left basic block of the second subpicture are (12, 2), sps_subpic_ctu_top_left_x [2] is 12, and sps_subpic_ctu_top_left_y [2] is 2. Since the number of basic blocks of the second subpicture is 6 × 4, sps_subpic_width_minus1 [2] is 5, and sps_subpic_height_minus1 [2] is 3. Since the coordinates of the upper left basic block of the third subpicture are (0, 6), sps_subpic_ctu_top_left_x [3] is 0, and sps_subpic_ctu_top_left_y [3] is 6. Since the number of basic blocks of the third subpicture is 12 × 12, sps_subpic_width_minus1 [3] is 11, and sps_subpic_height_minus1 [3] is 11. The coordinates of the upper left basic block of the fourth subpicture are (12, 6), and the number of basic blocks is 6 × 12, but the
sps_num_subpics_minus1番目(最後)のサブピクチャの左上の基本ブロックの座標の導出に関して説明する。初めにX座標の求め方について説明する。まず、最後のサブピクチャの左に隣接するサブピクチャを求める。画像の下端の基本ブロックを含むサブピクチャの中で、サブピクチャの右端基本ブロックが最大のX座標を持つサブピクチャが、最後のサブピクチャの左に隣接するサブピクチャである。まず下記の式が成り立つサブピクチャが下端の基本ブロックを含むサブピクチャである。
PicCtbNumV==sps_subpic_ctu_top_left_y[i]+sps_subpic_height_minus1[i]+1
sps_num_subpics_minus The derivation of the coordinates of the upper left basic block of the first (last) subpicture will be described. First, how to obtain the X coordinate will be described. First, the subpicture adjacent to the left of the last subpicture is obtained. Among the sub-pictures including the basic block at the lower end of the image, the sub-picture in which the right-most basic block of the sub-picture has the maximum X coordinate is the sub-picture adjacent to the left of the last sub-picture. First, the sub-picture for which the following formula holds is a sub-picture including the basic block at the lower end.
PicCtbNumV == sps_subpic_ctu_top_left_y [i] + sps_subpic_height_minus1 [i] + 1
画像内で上記条件を満たす全てのサブピクチャの中で、最も右に位置するサブピクチャ、即ちsps_subpic_ctu_top_left_x[i]が最も大きいサブピクチャが左に隣接するサブピクチャになる。従って、最後のサブピクチャの左に隣接するサブピクチャがN番目のサブピクチャだとすると、最後のサブピクチャの左上の基本ブロックのX座標は以下の式で求める事ができる。
sps_subpic_ctu_top_left_x[N]+sps_subpic_width_minus1[N]+1
Among all the sub-pictures satisfying the above conditions in the image, the sub-picture located on the rightmost side, that is, the sub-picture having the largest sps_subpic_ctu_top_left_x [i] is the sub-picture adjacent to the left side. Therefore, assuming that the subpicture adjacent to the left of the last subpicture is the Nth subpicture, the X coordinate of the upper left basic block of the last subpicture can be obtained by the following equation.
sps_subpic_ctu_top_left_x [N] + sps_subpic_width_minus1 [N] + 1
本実施形態においては、PicCtbNumVが18であり、sps_subpic_ctu_top_left_y[i]+sps_subpic_height_minus1[i]+1==18を満たすのは、サブピクチャ3である。sps_subpic_ctu_top_left_x[3]+sps_subpic_width_minus1[3]+1=12であり、最後のサブピクチャの左上の基本ブロックのX座標は12となる。 In the present embodiment, PicCtbNumV is 18, and it is subpicture 3 that satisfies sps_subpic_ctu_top_left_y [i] + sps_subpic_height_minus1 [i] +1 == 18. sps_subpic_ctu_top_left_x [3] + sps_subpic_width_minus1 [3] + 1 = 12, and the X coordinate of the upper left basic block of the last subpicture is 12.
次に、最後のサブピクチャの左上の基本ブロックのY座標の求め方について説明する。まず、最後のサブピクチャの上に隣接するサブピクチャを求める。画像の右端の基本ブロックを含むサブピクチャの中で、サブピクチャの下端の基本ブロックが最大のY座標を持つサブピクチャが、最後のサブピクチャの上に隣接するサブピクチャである。まず下記の式が成り立つサブピクチャが、右端の基本ブロックを含むサブピクチャである。
PicCtbNumH==sps_subpic_ctu_top_left_x[i]+sps_subpic_width_minus1[i]+1
Next, how to obtain the Y coordinate of the basic block on the upper left of the last subpicture will be described. First, the sub-pictures adjacent to the last sub-picture are obtained. Among the sub-pictures including the basic block at the right end of the image, the sub-picture in which the basic block at the lower end of the sub-picture has the maximum Y coordinate is the sub-picture adjacent to the last sub-picture. First, the sub-picture for which the following equation holds is a sub-picture including the rightmost basic block.
PicCtbNumH == sps_subpic_ctu_top_left_x [i] + sps_subpic_width_minus1 [i] + 1
画像内で上記条件を満たす全てのサブピクチャの中で、最も下に位置するサブピクチャ、即ちsps_subpic_ctu_top_left_y[i]が最も大きいサブピクチャが上に隣接するサブピクチャになる。従って、最後のサブピクチャの上に隣接するサブピクチャがM番目のサブピクチャだとすると、最後のサブピクチャの左上の基本ブロックのY座標は以下の式で求める事ができる。
sps_subpic_ctu_top_left_y[M]+sps_subpic_height_minus1[M]+1
Among all the sub-pictures satisfying the above conditions in the image, the sub-picture located at the bottom, that is, the sub-picture having the largest sps_subpic_ctu_top_left_y [i] is the sub-picture adjacent to the top. Therefore, assuming that the sub-picture adjacent to the last sub-picture is the M-th sub-picture, the Y coordinate of the upper left basic block of the last sub-picture can be obtained by the following equation.
sps_subpic_ctu_top_left_y [M] + sps_subpic_height_minus1 [M] + 1
本実施形態においては、PicCtbNumHが18であり、sps_subpic_ctu_top_left_x[i]+sps_subpic_width_minus1[i]+1==18を満たすのは、サブピクチャ1と2である。その中でsps_subpic_ctu_top_left_y[i]が最も大きいのはサブピクチャ2である。sps_subpic_ctu_top_left_y[2]+sps_subpic_height_minus1[2]+1=6であり、最後のサブピクチャの左上の基本ブロックのY座標は6となる。
In the present embodiment, PicCtbNumH is 18, and it is subpictures 1 and 2 that satisfy sps_subpic_ctu_top_left_x [i] + sps_subpic_width_minus1 [i] +1 == 18. Among them,
このようにして、従来手法では最後のサブピクチャの左上の基本ブロックの座標情報を符号化していたが、それを用いずに他のサブピクチャの情報から最後のサブピクチャの左上の基本ブロックの座標を求める事ができる。これによってビットストリームの符号量を削減する事が可能になる。 In this way, in the conventional method, the coordinate information of the upper left basic block of the last subpicture was encoded, but without using it, the coordinates of the upper left basic block of the last subpicture from the information of other subpictures. Can be asked. This makes it possible to reduce the amount of code in the bitstream.
図12の符号化データのフォーマットの説明に戻る。統合符号化部811は、次にサブピクチャのIDに関する情報を符号化する。更に統合符号化部811は、SPSのサブピクチャIDのビット長−1を示すsps_subpic_id_len_minus1を符号化する。統合符号化部811は、次にサブピクチャのIDを明示的に示すか否かを示すsps_subpic_id_mapping_explicitly_signaled_flagを符号化する。統合符号化部811は、sps_subpic_id_mapping_explicitly_signaled_flagが1の時のみ、SPSにIDを示すか否かを示すsps_subpic_id_mapping_present_flagを符号化する。sps_subpic_id_mapping_present_flagが1の時のみ、統合符号化部811は、i番目のサブピクチャのIDを示すsps_subpic_id[i]を符号化する。本実施形態では、統合符号化部811は、これらのサブピクチャのIDに関する情報を、sps_num_subpics_minus1が1以上の時のみ(サブピクチャの数が2以上の時のみ)符号化する。従来はsps_subpic_info_present_flagが1ならばサブピクチャの数が1の時にも符号化していたが、本実施形態ではサブピクチャの数が1の時には、サブピクチャのIDを0とする事で、IDに関する以下のシンタクスは符号化しない。
・sps_subpic_id_len_minus1
・sps_subpic_id_mapping_explicitly_signaled_flag
・sps_subpic_id_mapping_present_flag
・sps_subpic_id
Returning to the description of the coded data format of FIG. The
・ Sps_subpic_id_len_minus1
・ Sps_subpic_id_mapping_explicity_signaled_flag
・ Sps_subpic_id_mapping_present_flag
・ Sps_subpic_id
これによってサブピクチャの数が1の時に符号量を削減する事ができる。また、本実施形態では、サブピクチャの数が1の時にはサブピクチャのIDを0としたが、本発明はこれに限定されるものではない。例えば1でもよい。また統合符号化部811は、sps_subpic_id_mapping_explicitly_signaled_flagはサブピクチャの数に関係なく常に符号化しなくてもよい。
As a result, the amount of code can be reduced when the number of sub-pictures is 1. Further, in the present embodiment, when the number of sub-pictures is 1, the ID of the sub-pictures is set to 0, but the present invention is not limited to this. For example, it may be 1. Further, the
本実施形態のサブピクチャは5個なので、ビット長は3ビットで表す事ができる。そのためsps_subpic_id_len_minus1は3から1を減じて2となる。本実施形態では、sps_subpic_id_mapping_explicitly_signaled_flagは0とする。 Since there are five sub-pictures in this embodiment, the bit length can be represented by 3 bits. Therefore, sps_subpic_id_len_minus1 is obtained by subtracting 1 from 3 to become 2. In this embodiment, sps_subpic_id_mapping_explicity_signaled_flag is set to 0.
統合符号化部811は、ピクチャ・パラメータ・セットにおいて、画像が分割されているか否かを示すpps_no_pic_partition_flagを符号化する。pps_no_pic_partition_flagが1の時は、画像が複数のタイル、スライス、サブピクチャに分割されておらずそれぞれ単一のタイル、スライス、サブピクチャであることを示す。pps_no_pic_partition_flagが0の時のみ、タイル分割情報、サブピクチャ定義情報P(PPS)、スライス分割情報P(PPS)が含まれる。統合符号化部811は、サブピクチャ定義情報Pとして、まずPPSにサブピクチャのIDを明示的に示すか否かを示すpps_subpic_id_mapping_present_flagを符号化する。pps_subpic_id_mapping_present_flagが1の時のみ、統合符号化部811は以下の3種類のシンタクスを符号化する。
・サブピクチャの数−1を示すpps_num_subpics_minus1
・サブピクチャIDのビット長−1を示すpps_subpic_id_len_minus1
・i番目のサブピクチャのIDを示すpps_subpic_id[i]
The
-Pps_num_subpics_minus1 indicating the number of sub-pictures-1
Pps_subpic_id_len_minus1 indicating the bit length -1 of the sub-picture ID.
-Pps_subpic_id [i] indicating the ID of the i-th subpicture.
従来手法ではpps_subpic_id_mapping_present_flagは常に符号化されるが、本実施形態ではpps_no_pic_partition_flagが0の時のみ符号化している。これにより画像が分割されていない際の符号量を削減する事ができる。 In the conventional method, pps_subpic_id_mapping_present_flag is always encoded, but in this embodiment, it is encoded only when pps_no_pic_partition_flag is 0. This makes it possible to reduce the amount of code when the image is not divided.
本実施形態では画像が分割されているためpps_no_pic_partition_flagは0である。またpps_subpic_id_mapping_present_flagは0とする。 In this embodiment, since the image is divided, pps_no_pic_partition_flag is 0. Further, pps_subpic_id_mapping_present_flag is set to 0.
図12のフォーマットの説明に戻る。統合符号化部811は、スライス分割情報Pとして、pps_num_subpics_minus1が存在しない、あるいは1以上の時のみ、pps_single_slice_per_subpic_flagを符号化する。pps_single_slice_per_subpic_flagは、画像内の全てのサブピクチャが単一のスライスで符号化されているか否かを示す。本実施形態では複数のスライスを包含するサブピクチャが存在するため、pps_single_slice_per_subpic_flagは0である。しかしpps_num_subpics_minus1が存在し、かつ1以上の時のみ統合符号化部811がpps_single_slice_per_subpic_flagを符号化する構成となっている。そのため、pps_num_subpics_minus1が存在し、かつ1以上の時には符号量の削減が可能になる。
Returning to the description of the format of FIG. The
スライスヘッダにはスライス分割情報SHなどが含まれ、その後に各スライスの符号化データが続く。統合符号化部811は、スライス分割情報SHとして、サブピクチャの数が2以上の時のみ、当該スライスのサブピクチャIDを示すsh_subpic_idを符号化する。従来はsps_subpic_info_present_flagが1ならばサブピクチャの数が1の時にも符号化していたが、本実施形態ではサブピクチャの数が1の時には、サブピクチャのIDを0としているため符号化する必要がない。これによって符号量を削減する事ができる。
The slice header includes slice division information SH and the like, followed by the coded data of each slice. The
本実施形態の場合、SID=0〜2のスライスのsh_subpic_idは0である。SID=3のスライスのsh_subpic_idは1である。SID=4のスライスのsh_subpic_idは2である。SID=5〜8及びSID=10〜12のスライスのsh_subpic_idは3である。SID=9及び13のスライスのsh_subpic_idは4である。 In the case of this embodiment, the sh_subpic_id of the slice with SID = 0 to 2 is 0. The sh_subpic_id of the slice with SID = 3 is 1. The sh_subpic_id of the slice with SID = 4 is 2. The sh_subpic_id of slices with SID = 5-8 and SID = 10-12 is 3. The sh_subpic_id of slices with SID = 9 and 13 is 4.
図10は、実施形態に係る画像符号化装置における1フレームの画像に対する符号化処理を示すフローチャートである。 FIG. 10 is a flowchart showing a coding process for a one-frame image in the image coding apparatus according to the embodiment.
まず、S1001にて、画像分割部802は、前述のように画像をタイル、スライスに分割し、サブピクチャを定義し、分割情報を統合符号化部811に送る。S1009にて、統合符号化部811は、分割情報をヘッダ情報に変換した上で、ビットストリームに符号化する。また画像分割部802は、画像を基本ブロック行画像に分割してブロック分割部803に送る。
First, in S1001, the
S1002にて、ブロック分割部803は基本ブロックで構成される行画像を基本ブロック単位に分割する。
In S1002, the
S1003にて、予測部804は、S1002にて生成された基本ブロック単位の画像データに対して、予測処理を実行する。また、予測部804は、サブブロック分割情報やイントラ予測モードなどの予測情報および予測画像データを生成する。さらに予測部804は、入力された画像データと予測画像データから予測誤差を算出する。
In S1003, the
S1004にて、変換・量子化部805は、S1003で算出された予測誤差を直交変換して変換係数を生成する。そして、変換・量子化部805は、生成した変換係数に対して量子化を行い、量子化係数を生成する。
In S1004, the conversion /
S1005にて、逆量子化・逆変換部806は、S1004で生成された量子化係数を、逆量子化を行い、変換係数を再生する。逆量子化・逆変換部806は、更に再生した変換係数に対して逆直交変換し、予測誤差を再生する。
In S1005, the inverse quantization /
S1006にて、画像再生部807は、S1003で生成された予測情報に基づいて予測画像を再生する。画像再生部807は、さらに、再生された予測画像とS1005で生成された予測誤差から画像データを再生する。
In S1006, the
S1007にて、符号化部810は、S1003で生成された予測情報およびS1004で生成された量子化係数を符号化し、符号データを生成する。
In S1007, the
S1008にて、画像符号化装置は、スライス内の全ての基本ブロックの符号化が終了したか否かの判定を行い、終了していれば処理をS1009に進め、そうでなければ次の基本ブロックを対象とするため、処理をS1002に戻す。 In S1008, the image coding apparatus determines whether or not the coding of all the basic blocks in the slice is completed, and if it is completed, the process proceeds to S1009, and if not, the next basic block. The process is returned to S1002 in order to target.
S1009にて、統合符号化部811は、画像分割部802から送られた分割情報に基づいて、ヘッダ情報を生成し、符号化する。
In S1009, the
以下これらサブピクチャの情報を元にサブピクチャを構成するスライスの符号データを接合し、サブピクチャの符号データを作成する。 Hereinafter, based on the information of these sub-pictures, the code data of the slices constituting the sub-picture are joined to create the code data of the sub-picture.
S1010にて、画像符号化装置は、フレーム内の全ての基本ブロックの符号化が終了したか否かの判定を行い、終了していればS1011に処理を進め、そうでなければ次の基本ブロックを符号化するため、処理をS1002に戻す。 In S1010, the image coding apparatus determines whether or not the coding of all the basic blocks in the frame is completed, and if it is completed, the process proceeds to S1011, otherwise the next basic block. Is returned to S1002 in order to encode.
S1011にて、インループフィルタ部809は、S1006で再生された画像データに対し、インループフィルタ処理を行い、フィルタ処理された画像を生成し、処理を終了する。
In S1011, the in-
以上の構成と動作により、特にS1009において、複数のサブピクチャが定義された場合に、最後のサブピクチャの左上の座標を符号化しないことで、サブピクチャに関するシンタクスを効率よく符号化する事ができる。 With the above configuration and operation, especially in S1009, when a plurality of subpictures are defined, the syntax related to the subpictures can be efficiently encoded by not encoding the upper left coordinates of the last subpicture. ..
なお本実施形態では、画像を9個のタイル、5個のサブピクチャ、14個のスライスで構成されるものとしたが、これに限定されない。画像は如何様に分割してもよいし、分割しなくてもよい。例えば複数のサブピクチャを定義せず、更に複数のタイル、スライスに分割せず、画像が単一のサブピクチャ、タイル、スライスで構成されてもよい。その場合は、sps_subpic_info_present_flagが1であっても、sps_num_subpics_minus1が0となり、以下のシーケンス・パラメータ・セット及びスライスヘッダのシンタクスを符号化する必要がない。
・sps_subpic_id_len_minus1
・sps_subpic_id_mapping_explicitly_signaled_flag
・sps_subpic_id_mapping_present_flag
・sps_subpic_id
・sh_subpic_id
In the present embodiment, the image is composed of 9 tiles, 5 subpictures, and 14 slices, but the image is not limited to this. The image may or may not be divided in any way. For example, an image may be composed of a single subpicture, tile, or slice without defining a plurality of subpictures and further dividing the image into a plurality of tiles or slices. In that case, even if sps_subpic_info_present_flag is 1, sps_num_subpics_minus1 becomes 0, and it is not necessary to encode the following sequence parameter set and slice header syntax.
・ Sps_subpic_id_len_minus1
・ Sps_subpic_id_mapping_explicity_signaled_flag
・ Sps_subpic_id_mapping_present_flag
・ Sps_subpic_id
・ Sh_subpic_id
同様に画像が分割されていないため、pps_no_pic_partition_flagが1となり、以下のピクチャ・パラメータ・セットのシンタクスを符号化する必要がない。
・pps_subpic_id_mapping_present_flag
・pps_num_subpics_minus1
・pps_subpic_id_len_minus1
・pps_subpic_id
以上により不要なシンタクスを符号化しないため従来よりも符号量の削減が可能となる。
Similarly, since the image is not divided, pps_no_pic_partition_flag is 1, and it is not necessary to encode the syntax of the following picture parameter set.
・ Pps_subpic_id_mapping_present_flag
・ Pps_num_subpics_minus1
・ Pps_subpic_id_len_minus1
・ Pps_subpic_id
As a result, unnecessary syntax is not encoded, so that the amount of code can be reduced as compared with the conventional case.
次に、これまで説明してきた画像符号化装置(撮像装置100)で生成されたビットストリームを取得して、それを復号する画像復号装置に200ついて説明する。画像復号装置200は、基本的に、これまで説明してきた画像符号化装置(撮像装置100)の逆の動作を行うこととなる。
Next, 200 will be described for an image decoding device that acquires a bit stream generated by the image coding device (imaging device 100) described so far and decodes the bit stream. The
図8は、本実施形態に係る画像復号装置200の構成を示すブロック図である。本実施形態における画像復号装置200は、画像符号化装置(撮像装置100)で符号化された符号化データ(ビットストリーム)を取得する取得部218と、取得されたビットストリームを復号する復号処理部214と、CPU201と、メモリ202と、不揮発性メモリ203と、内部バス230とを有する。
FIG. 8 is a block diagram showing the configuration of the
取得部218は、前述のように、画像符号化装置(撮像装置100)で符号化された符号化データ(ビットストリーム)を取得する。取得部218は、例えば、ネットワークを介して符号化データを取得することもできる。
As described above, the
CPU201は、不揮発性メモリ203に記憶されているコンピュータプログラムを実行することによって、画像復号装置200の各部の動作を制御する。メモリ202は、書き換え可能な揮発性メモリ(RAM)であり、一時的に画像復号装置200の各部の動作を制御するコンピュータプログラムや、各部の動作に関するパラメータ等の情報、取得部218によって取得したデータ等を記憶する。メモリ202は、各部で処理した画像や情報を一時的に記憶するワークメモリとしても機能する。
The
不揮発性メモリ203は、電気的に消去・記録可能なメモリであり、例えばEEPROMやSDメモリカード等の記憶媒体が用いられる。不揮発性メモリ203は、画像復号装置200の各部の動作を制御するコンピュータプログラム及び各部の動作に関するパラメータ等の情報を記憶する。ここでいう、コンピュータプログラムとは、本実施形態にて後述する各種処理を実行するためのプログラムが含まれる。
The non-volatile memory 203 is a memory that can be electrically erased and recorded, and a storage medium such as an EEPROM or an SD memory card is used. The non-volatile memory 203 stores information such as a computer program that controls the operation of each part of the
内部バス230は、CPU201とメモリ202に各処理部がアクセスするための内部バスである。
The internal bus 230 is an internal bus for each processing unit to access the
前述のように、取得部218によって取得されるビットストリームは、ピクチャを複数の矩形領域に分割することによって符号化されている。ビットストリームには、各矩形領域を再現するための情報(後述するSPS等)が含まれている。復号処理部214は、符号化データから、画像自体の符号化データと、SPS等の情報とを分離して、これらを復号する。そして復号したそれらのデータに基づいてピクチャを再生する。
As described above, the bitstream acquired by the
復号処理部214は、例えばVVC方式に従って復号処理を行うものとする。ただし、後述する点については、現段階において提案されているVVC方式とは異なる。
The
次に、実施形態における復号処理部214が復号するピクチャにおける矩形領域の分割について説明する。復号処理部214は、CPU101の制御の下、復号対象の1ピクチャ(フレーム画像)を1以上のタイル行、1以上のタイル列ごとに復号処理を行う。
Next, the division of the rectangular region in the picture decoded by the
ここで1つのタイルは、複数画素で構成される矩形の領域をカバーするブロック(CTU: Coding Tree Unit)の集合体である。また、以下の説明でのスライスとは、複数個のタイルで構成される領域、或いは、1つのタイルにおける1つ以上のCTU行の領域を言う。 Here, one tile is an aggregate of blocks (CTU: Coding Tree Unit) covering a rectangular area composed of a plurality of pixels. Further, the slice in the following description means an area composed of a plurality of tiles or an area of one or more CTU rows in one tile.
図1、図2は、CTU,タイル(Tile)、スライス(Slice)の関係の例である。図1の例では、1ピクチャが4行6列のタイルに分割され、そのタイルを集合的にカバーする3×3の計9つのスライスが定義された例を示している。また、図2は、1ピクチャが2行2列の4個のタイルに分割され、右上のタイルが2つのスライスに分けられ、左側の垂直に隣り合う2つのタイルが1つのスライスを構成し、そして、右下のタイルが1つのスライスとなり、計4つのスライスが定義された例を示している。 1 and 2 are examples of the relationship between CTU, Tile, and Slice. In the example of FIG. 1, one picture is divided into tiles of 4 rows and 6 columns, and a total of 9 slices of 3 × 3 that collectively cover the tiles are defined. Further, in FIG. 2, one picture is divided into four tiles of 2 rows and 2 columns, the upper right tile is divided into two slices, and two vertically adjacent tiles on the left side form one slice. Then, the tile at the lower right becomes one slice, and an example in which a total of four slices are defined is shown.
また、本実施形態では、フレーム画像内の矩形領域を集合的にカバーする1以上のスライスから構成され、独立して復号可能な領域をサブピクチャ(subpicture)とする。図3は、CTU,タイル、サブピクチャの関係の例を示している。同図では、1ピクチャが3行6列の18個のタイルに分割されており、それぞれのタイルを集合的にカバーする計24個のスライス及びサブピクチャが設定された例を示している。 Further, in the present embodiment, a region that is composed of one or more slices that collectively cover a rectangular region in a frame image and can be independently decoded is referred to as a subpicture. FIG. 3 shows an example of the relationship between the CTU, tiles, and subpictures. The figure shows an example in which one picture is divided into 18 tiles in 3 rows and 6 columns, and a total of 24 slices and sub-pictures that collectively cover each tile are set.
なお、ピクチャをいくつの、そして、どのようなサイズにサブピクチャに分割するか等の設定は、符号化装置100において行われているものとする。この設定は、例えば、動画像を記録するに先立って撮像して映像から導出した色分布が、予め登録した色パターンのいずれに最も近いかに基づいて決定するものとする。
It is assumed that the setting of how many pictures are divided into sub-pictures and what size the pictures are divided into is performed in the
VVCでは、図1乃至図3に示すような、タイル、スライス、サブピクチャを用いたピクチャ分割を実現するためのパラメータ等の情報(復号側にとっては再現するための情報)を、画像の符号化で得たビットストリームのシーケンスのヘッダ部(SPS:Sequence Parameter Set)や、ピクチャに対するヘッダ部(PPS:Picture Parameter Set)に格納することになっている。これらのヘッダ部に格納されているパラメータ等の情報は復号処理部214によって復号される。
In VVC, information such as parameters for realizing picture division using tiles, slices, and sub-pictures (information for reproduction for the decoding side) as shown in FIGS. 1 to 3 is encoded in the image. It is supposed to be stored in the header part (SPS: Sequence Parameter Set) of the sequence of the bitstream obtained in 1 and the header part (PPS: Picture Parameter Set) for the picture. Information such as parameters stored in these header units is decoded by the
例えば、SPSには、各サブピクチャの左上端を示すx、y座標を表すsps_subpic_ctu_top_left_x、y座標sps_subpic_ctu_top_left_yを格納する。しかしながら、例えばピクチャ内の右下端に位置する、最後のサブピクチャの左上の座標は、それ以前の各サブピクチャの座標から算出できる。つまり、最後のサブピクチャに係る位置を示す情報は冗長であると言える。 For example, the SPS stores sps_subpic_ctu_top_left_x and y-coordinates sps_subpic_ctu_top_left_y indicating the upper left end of each sub-picture. However, for example, the coordinates of the upper left of the last sub-picture located at the lower right of the picture can be calculated from the coordinates of each of the previous sub-pictures. That is, it can be said that the information indicating the position related to the last sub-picture is redundant.
そこで、本実施形態の復号処理部214は、最後のサブピクチャに係るパラメータ情報を省略されたSPSを復号する。よって、そのSPSの情報量はこれまでよりも削減されている。
Therefore, the
図4A〜図4Fは、画像符号化装置(撮像装置100)で生成されたSPSの情報のシンタックスを示している。なお、図4A〜図4Fはこの順番に連続させることで、SPSのシンタックスを表している点に注意されたい。図4A〜図4Fで記されたシンタックスは図4A〜図4Fで記される順番で復号処理部214によって復号される。
4A to 4F show the syntax of the SPS information generated by the image coding device (imaging device 100). It should be noted that FIGS. 4A to 4F represent the syntax of SPS by making them continuous in this order. The syntaxes shown in FIGS. 4A to 4F are decoded by the
図示されている参照符号401、402の行の記述における“sps_num_sibpics_minus1”は、「1ピクチャに含まれるサブピクチャの個数−1」を表している。そして、条件「i<sps_num_sibpics_minus1」を新たに追加することで、1ピクチャに含まれるサブピクチャの個数をNとしたとき、それよりも1つ少ないN−1個のサブピクチャの位置{sps_subpic_ctu_top_left_x[i],sps_subpic_ctu_top_left_y[i]}と、サイズ{sps_subpic_width_minus1[i],sps_subpic_hight_minus1[i]}がSPSに含まれるようにしてある。本実施形態では参照符号401及び402の行に条件式を追加される構成としたが、本発明はこれに限定されるものではない。例えば401の上の行のfor文の条件式をi<=sps_num_subpics_minus1から、i<sps_num_subpics_minus1に変更してもよい。
"Sps_num_sibics_minus1" in the description of the line of
なお、復号処理部214は、図4A〜図4Fに示すSPSのシンタックスに従って復号処理を行う過程で、最後のサブピクチャの位置やサイズは、それ以前のサブピクチャの復号結果から求める。よって、求めた位置に従ってサブピクチャの画像を再現できるので、問題は発生しない。
The
CTUの縦及び横の画素数であるCtbSizeYは、1<<CtbSize(ここで、CtbSize=sps_log2_ctu_size_minus5+5)で示される。復号処理部214は、画像の水平方向のCTU数であるPicCtbNumHについては、(sps_pic_width_max_in_luma_samples+CtbSizeY−1)>>CtbLog2SizeYで求める。同様に、復号処理部214は、垂直方向のCTU数であるPicCtbNumVは、(sps_pic_height_max_in_luma_samples+CtbSizeY−1)>>CtbLog2SizeYで求める。
CtbSizeY, which is the number of vertical and horizontal pixels of the CTU, is represented by 1 << CtbSize (here, CtbSize = sps_log2_ctu_size_minus5 + 5). The
次に、sps_num_subpics_minus1番目(最後)のサブピクチャの左上のCTUの座標の導出に関して説明する。初めにX座標の求め方について説明する。まず、復号処理部214は、最後のサブピクチャの左に隣接するサブピクチャを求める。画像の下端のCTUを含むサブピクチャの中で、サブピクチャの右端CTUが最大のX座標を持つサブピクチャが、最後のサブピクチャの左に隣接するサブピクチャであると判断する。下記の式が成り立つサブピクチャが下端のCTUを含むサブピクチャである。
PicCtbNumV==sps_subpic_ctu_top_left_y[i]+sps_subpic_height_minus1[i]+1
Next, the derivation of the coordinates of the CTU on the upper left of the first (last) subpicture of sps_num_subpics_minus will be described. First, how to obtain the X coordinate will be described. First, the
PicCtbNumV == sps_subpic_ctu_top_left_y [i] + sps_subpic_height_minus1 [i] + 1
復号処理部214は、画像内で上記条件を満たす全てのサブピクチャの中で、最も右に位置するサブピクチャ、即ちsps_subpic_ctu_top_left_x[i]が最も大きいサブピクチャが左に隣接するサブピクチャであると判断する。従って、復号処理部214は、最後のサブピクチャの左に隣接するサブピクチャがN番目のサブピクチャだとすると、最後のサブピクチャの左上のCTUのX座標は以下の式で求める事ができる。
sps_subpic_ctu_top_left_x[N]+sps_subpic_width_minus1[N]+1
The
sps_subpic_ctu_top_left_x [N] + sps_subpic_width_minus1 [N] + 1
次に、最後のサブピクチャの左上のCTUのY座標の求め方について説明する。まず、復号処理部214は、最後のサブピクチャの上に隣接するサブピクチャを求める。復号処理部214は、画像の右端のCTUを含むサブピクチャの中で、サブピクチャの下端のCTUが最大のY座標を持つサブピクチャが、最後のサブピクチャの上に隣接するサブピクチャであると判断する。下記の式が成り立つサブピクチャが右端のCTUを含むサブピクチャである。
PicCtbNumH==sps_subpic_ctu_top_left_x[i]+sps_subpic_width_minus1[i]+1
Next, how to obtain the Y coordinate of the CTU on the upper left of the last subpicture will be described. First, the
PicCtbNumH == sps_subpic_ctu_top_left_x [i] + sps_subpic_width_minus1 [i] + 1
復号処理部214は、画像内で上記条件を満たす全てのサブピクチャの中で、最も下に位置するサブピクチャ、即ち、復号処理部214は、sps_subpic_ctu_top_left_y[i]が最も大きいサブピクチャが上に隣接するサブピクチャであると判断する。従って、最後のサブピクチャの上に隣接するサブピクチャがM番目のサブピクチャだとすると、復号処理部214は、最後のサブピクチャの左上のCTUのY座標は以下の式で求める事ができる。
sps_subpic_ctu_top_left_y[M]+sps_subpic_height_minus1[M]+1
The
sps_subpic_ctu_top_left_y [M] + sps_subpic_height_minus1 [M] + 1
また、これまでの技術におけるSPS、PPS、並びに、スライスヘッダは、1つのピクチャに、2以上のサブピクチャが存在することを許容する記述を採用している。換言すれば、これまでは、1つのピクチャ内に2つ以上のサブピクチャが存在している場合にのみ意味がある情報が含まれていることになる。 Further, the SPS, PPS, and slice header in the conventional techniques employ a description that allows two or more sub-pictures to exist in one picture. In other words, so far, information that is meaningful only when two or more sub-pictures exist in one picture is included.
しかしながら、1ピクチャ内に1つのサブピクチャしか含まれない場合もあり、このようなケースの場合には、SPS、PPS、並びに、スライスヘッダは冗長な情報を含むことになり、符号量の削減という観点からまだ改善の余地がある。 However, there are cases where only one sub-picture is included in one picture, and in such a case, the SPS, PPS, and slice header contain redundant information, which means that the amount of code is reduced. There is still room for improvement from the point of view.
そこで、本実施形態では、SPSのシンタックスを示す図4A〜図4Fにおける、参照符号403、404の行は、1ピクチャ内に2以上のサブピクチャが存在する場合にのみ有効であるとして{}内のシンタクスが符号化され、1ピクチャ内に1つのサブピクチャのみが存在する場合には{}内のシンタクスは符号化されていない。
Therefore, in the present embodiment, the lines of
また、図5Aの参照符号501の行の上の行に存在するpps_no_pic_partition_flagは、画像がサブピクチャ、タイル、スライスに分割されていないか否かを示すフラグである。当該シンタクスが1の時は、画像が単一のサブピクチャ、タイル、スライスで構成されている事を示す。図5A〜図5C(この順番にPPSのシンタックスを表す)が示すPPS(Picture Parameter Set)のシンタックスにおける参照符号501が示す行、並びに、参照符号503が示す行中の条件「&& (pps_num_subpics_minus1 > 0」は、1ピクチャ内に2以上のサブピクチャが存在する場合にのみ有効であるとして{}内のシンタクスが符号化されている。そして、1ピクチャ内に1つのサブピクチャのみが存在する場合には{}内のシンタクスが符号化されていない。図5A〜5Cで記されたシンタックスは、図5A〜5Cで記された順番で復号処理部214によって復号される。
Further, the pps_no_pic_partition_flag existing in the line above the line of reference numeral 501 in FIG. 5A is a flag indicating whether or not the image is divided into subpictures, tiles, and slices. When the syntax is 1, it indicates that the image is composed of a single subpicture, tile, or slice. The line indicated by reference numeral 501 in the syntax of PPS (Picture Parameter Set) shown in FIGS. 5A to 5C (in this order representing the syntax of PPS), and the condition "&& (pps_num_subpics_minus1" in the line indicated by reference numeral 503). The syntax in {} is encoded as "> 0" is valid only when there are two or more subpictures in one picture, and there is only one subpicture in one picture. In some cases, the syntax in {} is not encoded. The syntaxes shown in FIGS. 5A-5C are decoded by the
そして、図6A〜図6C(この順番にスライスヘッダのシンタックスを表す)が示すスライスヘッダのシンタックスおける参照符号601が示す行中の条件「sps_num_subpics_minus1>0」は、1ピクチャ内に2以上のサブピクチャが存在する場合にのみ有効であるとして{}内のシンタクスが符号化されている。そして、1ピクチャ内に1つのサブピクチャのみが存在する場合には{}内のシンタクスが符号化されていない。図6A〜6Cで記されたシンタックスは、図6A〜6Cで記された順番で復号処理部214によって復号される。
Then, the condition "sps_num_subpix_minus1> 0" in the line indicated by the
上記の結果、CPU101は、1ピクチャ内に2以上のサブピクチャが存在する場合のみ、サブピクチャを特定するインデックス番号が復号される。そして、CPU101は、1ピクチャ内に1つのサブピクチャしか存在しない場合には、サブピクチャのインデックス番号の符号を復号しなくなり、その分だけ符号量を削減できるようになる。
As a result of the above, the
上記の結果、特に、1ピクチャ内に含まれるサブピクチャの数が1つの場合に、SPS,PPS,スライスヘッダの情報量を削減できることになる。また、冗長な情報がない分、画像復号装置200における処理速度も向上することができる。
As a result of the above, the amount of information in the SPS, PPS, and slice header can be reduced, especially when the number of sub-pictures contained in one picture is one. Further, since there is no redundant information, the processing speed of the
次に、図9、図11〜図14を用いて、これまで説明してきた画像復号装置について、更に詳細に説明する。なお、以下の説明では、主に復号処理部214における処理として説明してきた処理の更なる詳細について説明する。
Next, the image decoding apparatus described so far will be described in more detail with reference to FIGS. 9 and 11 to 14. In the following description, further details of the processing described mainly as the processing in the
最初に、図9を用いて画像復号装置について説明する。図9は、復号処理部214等を更に詳細に記した機能ブロック図である。
First, the image decoding apparatus will be described with reference to FIG. FIG. 9 is a functional block diagram showing the
画像復号装置(復号処理部214)は、分離復号部902、復号部903、逆量子化・逆変換部904、画像再生部905、フレームメモリ906、及び、インループフィルタ部907を有する。
The image decoding device (decoding processing unit 214) includes a
分離復号部902は、入力端子901を介して入力したビットストリームから、復号処理に関する情報や係数に関する符号データに分離し、復号部903へ送る。また分離復号部902は、ビットストリームのヘッダ部に存在する符号データを復号する。本実施形態お分離復号部902は、サブピクチャ、タイル、スライス、基本ブロックの大きさ等の画像の分割・定義に関するヘッダ情報を復号して分割情報を生成し、画像再生部905に出力する。つまり、分離復号部902は、図15の統合符号化部811の逆の動作を行うことになる。
The separation /
復号部903は、分離復号部902から入力した符号データを復号し、量子化係数および予測情報を再生する。
The
逆量子化・逆変換部904は、復号部903によって再生された量子化係数を逆量子化して変換係数を得、さらに変換係数を逆直交変換して予測誤差を再生する。
The inverse quantization /
画像再生部905は、分離復号部902から入力した予測情報に基づいて、フレームメモリ906を適宜参照して、予測画像データを生成する。そして、画像再生部905は、この予測画像データと、逆量子化・逆変換部904で再生された予測誤差から再生画像データを生成する。画像再生部905は、分離復号部902より入力された分割情報に基づいてサブピクチャ、タイル、スライスのフレーム中の位置を特定し、生成された再生画像データをフレームメモリ906に出力する。
The
インループフィルタ部907は、図15におけるインループフィルタ部809と同様、再生画像に対し、デブロッキングフィルタなどのインループフィルタ処理を行い、フィルタ処理された画像を出力する。
Similar to the in-
フレームメモリ906に生成、格納された1フレーム分の画像データは、出力端子908を介して外部に出力される。
The image data for one frame generated and stored in the
画像復号装置における画像の復号動作を以下に説明する。本実施形態では、先に説明した画像符号化装置で生成されたビットストリームをフレーム単位で入力する構成となっているが、1フレーム分の静止画像ビットストリームを入力する構成としても構わない。また、本実施形態では説明を容易にするため、イントラ予測復号処理のみを説明するが、これに限定されずインター予測復号処理においても適用可能である。 The image decoding operation in the image decoding device will be described below. In the present embodiment, the bitstream generated by the image coding apparatus described above is input in frame units, but a still image bitstream for one frame may be input. Further, in the present embodiment, only the intra-predictive decoding process will be described for the sake of simplicity, but the present embodiment is not limited to this and can be applied to the inter-predictive decoding process.
図9において、入力端子901から入力された1フレーム分のビットストリームは分離復号部902に入力される。分離復号部902は、ビットストリームから復号処理に関する情報や係数に関する符号データに分離し、ビットストリームのヘッダ部に存在する符号データを復号する。より具体的には、図12における画像サイズ情報、基本ブロック分割情報、サブピクチャ定義情報S、サブピクチャ定義情報P、タイル分割情報、スライス分割情報P、スライス分割情報SHを復号し、分割情報を生成して画像再生部905へ送る。続いて、ピクチャデータの基本ブロック単位の符号データを再生し、復号部903に出力する。
In FIG. 9, one frame of bitstream input from the
復号部903は、符号データを復号し、量子化係数および予測情報を再生する。復号部903は、再生された量子化係数については逆量子化・逆変換部904に出力し、再生された予測情報については画像再生部905に出力する。
The
逆量子化・逆変換部904は、復号部903から入力した量子化係数に対し、逆量子化を行って直交変換係数を生成する。そして、逆量子化・逆変換部904は、生成した直交変換係数に対して逆直交変換を施して予測誤差を再生する。逆量子化・逆変換部904は、再生された予測誤差を画像再生部905に出力する。
The inverse quantization /
画像再生部905は、復号部903から入力した予測情報に基づいて、フレームメモリ906を適宜参照し、予測画像を再生する。画像再生部905は、この予測画像と、逆量子化・逆変換部904から入力した予測誤差とから画像データを再生する。そして、画像再生部905は、生成された再生画像データを、分離復号部902より入力された分割情報に基づいて、例えば図5のような、タイル、スライス、サブピクチャの形状及びフレーム中の位置を特定した上で、フレームメモリ906における該当する位置に格納する。このフレームメモリ906に格納された画像データは、予測の際の参照に用いられることになる。
The
インループフィルタ部907は、図15のインループフィルタ部809と同様、フレームメモリ906から再生画像を読み出し、デブロッキングフィルタなどのインループフィルタ処理を行う。そして、インループフィルタ部907は、フィルタ処理された画像を再びフレームメモリ906に格納する。
Similar to the in-
フレームメモリ906に格納された再生画像は、最終的には出力端子908から外部に出力される。
The reproduced image stored in the
図11は、実施形態に係る画像復号装置における1フレーム分の画像の復号処理を示すフローチャートである。 FIG. 11 is a flowchart showing an image decoding process for one frame in the image decoding apparatus according to the embodiment.
まず、S1101にて、分離復号部902は、ビットストリームから復号処理に関する情報や係数に関する符号データに分離し、ヘッダ部分の符号データを復号する。分離復号部902は、図12におけるサブピクチャ定義情報S、サブピクチャ定義情報P、タイル分割情報、スライス分割情報P、スライス分割情報SHなどを復号し、復号のための情報を生成して画像再生部905へ送る。本実施形態におけるビットストリーム内に格納されている画像の分割は図14の通りである。
First, in S1101, the separation /
まず画像サイズ情報のsps_pic_width_max_in_luma_samples及びsps_pic_height_max_in_luma_samplesの値から、画像が1152×1152画素であることが導かれる。 First, from the values of sps_pic_width_max_in_luma_samples and sps_pic_height_max_in_luma_samples of the image size information, it is derived that the image is 1152 × 1152 pixels.
次に基本ブロック分割情報のsps_log2_ctu_size_minus5の値が1であることから、CtbLog2SizeY=6である事がわかる。そして基本ブロックの大きさが、1<<CtbLog2SizeYより、64×64画素(CtbSizeY=64)と導かれる。画像の水平方向の基本ブロック数であるPicCtbNumHは、(sps_pic_width_max_in_luma_samples+CtbSizeY−1)>>CtbLog2SizeYより18と導かれる。垂直方向の基本ブロック数であるPicCtbNumVも同様に、18と導かれる。 Next, since the value of sps_log2_ctu_size_minus5 of the basic block division information is 1, it can be seen that CtbLog2SizeY = 6. Then, the size of the basic block is derived from 1 << CtbLog2SizeY to be 64 × 64 pixels (CtbSizeY = 64). PicCtbNumH, which is the number of basic blocks in the horizontal direction of the image, is derived from (sps_pic_width_max_in_luma_samples + CtbSizeY-1) >> CtbLog2SizeY. Similarly, PicCtbNumV, which is the number of basic blocks in the vertical direction, is also derived as 18.
次にサブピクチャ定義情報Sを取得する。まずsps_subpic_info_present_flagが1であることからサブピクチャの定義に関する情報が存在することがわかる。続いてsps_num_subpics_minus1で示されるサブピクチャの数−1の情報を取得する。本実施形態では値4を取得し、この値に1を加えることで、サブピクチャの数は5であることが分かる。sps_subpic_width_minus1[0]は11、sps_subpic_height_minus1[0]は5なので、画像の左上端のサブピクチャ0の水平方向の基本ブロック数は12、垂直方向の基本ブロック数は6な事がわかる。sps_subpic_ctu_top_left_x[1]は12、sps_subpic_ctu_top_left_y[1]は0なので、サブピクチャ1の左上の基本ブロックの座標は(12、0)である事がわかる。sps_subpic_width_minus1[1]は5、sps_subpic_height_minus1[1]は1なので、サブピクチャ1の水平方向の基本ブロック数は6、垂直方向の基本ブロック数は2な事がわかる。sps_subpic_ctu_top_left_x[2]は12、sps_subpic_ctu_top_left_y[2]は2なので、サブピクチャ2の左上の基本ブロックの座標は(12、2)である事がわかる。sps_subpic_width_minus1[2]は5、sps_subpic_height_minus1[2]は3なので、サブピクチャ2の水平方向の基本ブロック数は6、垂直方向の基本ブロック数は4な事がわかる。sps_subpic_ctu_top_left_x[3]は0、sps_subpic_ctu_top_left_y[3]は6なので、サブピクチャ3の左上の基本ブロックの座標は(0、6)である事がわかる。sps_subpic_width_minus1[3]は11、sps_subpic_height_minus1[3]は11なので、サブピクチャ3の水平方向の基本ブロック数は12、垂直方向の基本ブロック数は12な事がわかる。
Next, the sub-picture definition information S is acquired. First, since sps_subpic_info_present_flag is 1, it can be seen that there is information regarding the definition of the sub-picture. Subsequently, the information of the number -1 of the sub-pictures represented by sps_num_subpics_minus1 is acquired. In the present embodiment, by acquiring the
サブピクチャ4(最後のサブピクチャ)の左上の基本ブロックの座標を導出する。PicCtbNumVが18であり、sps_subpic_ctu_top_left_y[i]+sps_subpic_height_minus1[i]+1==18を満たすのは、サブピクチャ3である。sps_subpic_ctu_top_left_x[3]+sps_subpic_width_minus1[3]+1=12であり、最後のサブピクチャの左上の基本ブロックのX座標は12となる。PicCtbNumHが18であり、sps_subpic_ctu_top_left_x[i]+sps_subpic_width_minus1[i]+1==18を満たすのは、サブピクチャ1と2である。その中でsps_subpic_ctu_top_left_y[i]が最も大きいのはサブピクチャ2である。sps_subpic_ctu_top_left_y[2]+sps_subpic_height_minus1[2]+1=6であり、最後のサブピクチャの左上の基本ブロックのY座標は6となる。サブピクチャ4の水平方向の基本ブロック数は、PicCtbNumH−12で6、垂直方向の基本ブロック数は、PicCtbNumV−6で12となる。
The coordinates of the upper left basic block of subpicture 4 (last subpicture) are derived. It is subpicture 3 that PicCtbNumV is 18, and sps_subpic_ctu_top_left_y [i] + sps_subpic_height_minus1 [i] + 1 == 18 is satisfied. sps_subpic_ctu_top_left_x [3] + sps_subpic_width_minus1 [3] + 1 = 12, and the X coordinate of the upper left basic block of the last subpicture is 12. It is subpictures 1 and 2 that have a PicCtbNumH of 18 and satisfy sps_subpic_ctu_top_left_x [i] + sps_subpic_width_minus1 [i] + 1 == 18. Among them,
このようにして、従来手法では最後のサブピクチャの左上の基本ブロックの座標情報を符号化していたが、それを用いずに他のサブピクチャの情報から最後のサブピクチャの左上の基本ブロックの座標を求める事ができる。これによって符号量を削減したビットストリームを復号する事が可能になる。 In this way, in the conventional method, the coordinate information of the upper left basic block of the last subpicture was encoded, but without using it, the coordinates of the upper left basic block of the last subpicture from the information of other subpictures. Can be asked. This makes it possible to decode a bitstream with a reduced amount of code.
次に、sps_subpic_id_len_minus1の値が2のため、サブピクチャのIDのビット長が3である事がわかる。また、本実施形態ではsps_subpic_id_mapping_explicitly_signaled_flagが0のため、明示的なサブピクチャのIDのマッピングがない事がわかる。 Next, since the value of sps_subpic_id_len_minus1 is 2, it can be seen that the bit length of the ID of the subpicture is 3. Further, in the present embodiment, since sps_subpic_id_mapping_explicity_signed_flag is 0, it can be seen that there is no explicit mapping of sub-picture IDs.
従来はsps_subpic_info_present_flagが1ならばサブピクチャの数が1の時にも符号化していたが、本実施形態のフォーマットではサブピクチャの数が1の時には、サブピクチャのIDを0とする事でIDに関する以下のシンタクスを復号しない。
・sps_subpic_id_len_minus1
・sps_subpic_id_mapping_explicitly_signaled_flag
・sps_subpic_id_mapping_present_flag
・sps_subpic_id
Conventionally, if sps_subpic_info_present_flag is 1, encoding is performed even when the number of sub-pictures is 1, but in the format of this embodiment, when the number of sub-pictures is 1, the ID of the sub-pictures is set to 0 to describe the following. Do not decrypt the syntax of.
・ Sps_subpic_id_len_minus1
・ Sps_subpic_id_mapping_explicity_signaled_flag
・ Sps_subpic_id_mapping_present_flag
・ Sps_subpic_id
これによってサブピクチャの数が1の時に符号量を削減したビットストリームを復号する事ができる。また、本実施形態では、サブピクチャの数が1の時にはサブピクチャのIDを0としたが、本発明はこれに限定されるものではない。例えば1でもよい。また分離復号部902は、sps_subpic_id_mapping_explicitly_signaled_flagはサブピクチャの数に関係なく常に復号しなくてもよい。
As a result, when the number of sub-pictures is 1, it is possible to decode the bit stream in which the code amount is reduced. Further, in the present embodiment, when the number of sub-pictures is 1, the ID of the sub-pictures is set to 0, but the present invention is not limited to this. For example, it may be 1. Further, the separation /
分離復号部902は次に、ピクチャ・パラメータ・セットにおいてpps_no_pic_partition_flagを復号し、0の値を取得する。これによって、画像が単一のサブピクチャ、タイル、スライスで構成されているわけではない事がわかる。
The
pps_no_pic_partition_flagが0なので、分離復号部902は続いてタイル分割情報、サブピクチャ定義情報P(PPS)、スライス分割情報P(PPS)を復号する。本実施形態では、pps_subpic_id_mapping_present_flagの値が0のため、PPSにサブピクチャのIDに関するシンタクスは符号化されない。
Since pps_no_pic_partition_flag is 0, the separation /
従来手法ではpps_subpic_id_mapping_present_flagは常に符号化されるが、本実施形態のフォーマットではpps_no_pic_partition_flagが0の時のみ復号する。これにより画像が分割されていない際の符号量を削減したビットストリームを復号する事ができる。 In the conventional method, pps_subpic_id_mapping_present_flag is always encoded, but in the format of this embodiment, it is decoded only when pps_no_pic_partition_flag is 0. As a result, it is possible to decode a bit stream in which the amount of code is reduced when the image is not divided.
分離復号部902は、スライス分割情報Pとしてpps_single_slice_per_subpic_flagを復号し、0の値を取得する。これにより、複数のスライスを包含するサブピクチャが存在する可能性がある事がわかる。本実施形態のフォーマットでは、pps_num_subpics_minus1が存在し、かつ1以上の時のみ分離復号部902がpps_single_slice_per_subpic_flagを復号する構成となっているため条件に合致した際は符号量の削減が可能になる。
The separation /
分離復号部902は次に、スライスヘッダにおいてスライス分割情報SHとしてsh_subpic_idを復号する。本実施形態ではsh_subpic_idが0のスライスがSID=0〜2のスライスであるため、サブピクチャ0を構成するスライスがSID=0〜2のスライスである事がわかる。sh_subpic_idが1のスライスがSID=3のスライスであるため、サブピクチャ1を構成するスライスがSID=3のスライスである事がわかる。sh_subpic_idが2のスライスがSID=4のスライスであるため、サブピクチャ2を構成するスライスがSID=4のスライスである事がわかる。sh_subpic_idが3のスライスがSID=5〜8及び10〜12のスライスであるため、サブピクチャ3を構成するスライスである事がわかる。sh_subpic_idが4のスライスがSID=9及び13のスライスであるため、サブピクチャ4を構成するスライスがSID=9及び13のスライスである事がわかる。
Next, the separation /
従来はsps_subpic_info_present_flagが1ならばサブピクチャの数が1の時にも符号化していたが、本実施形態ではサブピクチャの数が1の時には、サブピクチャのIDを0としているため復号する必要がない。これによって符号量を削減したビットストリームを復号する事ができる。 Conventionally, if sps_subpic_info_present_flag is 1, encoding is performed even when the number of subpictures is 1, but in this embodiment, when the number of subpictures is 1, the ID of the subpicture is 0, so there is no need to decode. This makes it possible to decode a bit stream with a reduced amount of code.
これらの復号に必要な情報を取得し分離復号部902より導出された分割情報は画像再生部905に送られ、S1104で処理しているデータの画像内の位置の特定に用いられる。
The divided information obtained from the information necessary for decoding and derived from the separation /
S1102にて、復号部903は、S1101で分離された符号データを復号し、量子化係数および予測情報を再生する。
In S1102, the
S1103にて、逆量子化・逆変換部904は、復号部903より入力した量子化係数に対し逆量子化を行って変換係数を得、さらに変換係数に対して逆直交変換を行い、予測誤差を再生する。
In S1103, the inverse quantization /
S1104にて、画像再生部905は、S1103で生成された予測情報や予測画像を再生する。さらに、画像再生部905は、再生された予測画像とS1104で生成された予測誤差から画像データを再生する。そして、画像再生部905は、再生された画像データは、S1101で生成された分割情報に基づいて、画像中の適切な位置に合成する。
In S1104, the
S1105にて、画像復号装置はフレーム内の全ての基本ブロックの復号が終了したか否かの判定を行い、終了していればS1106に処理を進め、そうでなければ次の基本ブロックの復号のために処理をS1102に戻す。 In S1105, the image decoding device determines whether or not the decoding of all the basic blocks in the frame is completed, and if it is completed, the process proceeds to S1106, and if not, the decoding of the next basic block is performed. Therefore, the process is returned to S1102.
S1106にて、インループフィルタ部907は、S1104で再生された画像データに対し、インループフィルタ処理を行い、フィルタ処理された画像を生成し、処理を終了する。
In S1106, the in-
以上の構成と動作により、特にS1101において、複数のサブピクチャが定義された場合に、最後のサブピクチャの左上の座標を算出することで、サブピクチャに関するシンタクスを効率よく符号化したビットストリームを復号する事ができる。 With the above configuration and operation, especially in S1101, when a plurality of subpictures are defined, the coordinates of the upper left of the last subpicture are calculated to decode the bitstream in which the syntax related to the subpicture is efficiently encoded. Can be done.
なお本実施形態では、画像を9個のタイル、5個のサブピクチャ、14個のスライスで構成されるものとしたが、これに限定されない。画像は如何様に分割してもよいし、分割しなくてもよい。例えば複数のサブピクチャを定義せず、更に複数のタイル、スライスに分割せず、画像が単一のサブピクチャ、タイル、スライスで構成されてもよい。その場合は、sps_subpic_info_present_flagが1であっても、sps_num_subpics_minus1が0となり、以下のシーケンス・パラメータ・セット及びスライスヘッダのシンタクスを復号する必要がない。
・sps_subpic_id_len_minus1
・sps_subpic_id_mapping_explicitly_signaled_flag
・sps_subpic_id_mapping_present_flag
・sps_subpic_id
・sh_subpic_id
In the present embodiment, the image is composed of 9 tiles, 5 subpictures, and 14 slices, but the image is not limited to this. The image may or may not be divided in any way. For example, an image may be composed of a single subpicture, tile, or slice without defining a plurality of subpictures and further dividing the image into a plurality of tiles or slices. In that case, even if sps_subpic_info_present_flag is 1, sps_num_subpics_minus1 becomes 0, and it is not necessary to decode the following sequence parameter set and slice header syntax.
・ Sps_subpic_id_len_minus1
・ Sps_subpic_id_mapping_explicity_signaled_flag
・ Sps_subpic_id_mapping_present_flag
・ Sps_subpic_id
・ Sh_subpic_id
同様に画像が分割されていないため、pps_no_pic_partition_flagが1となり、以下のピクチャ・パラメータ・セットのシンタクスを復号する必要がない。
・pps_subpic_id_mapping_present_flag
・pps_num_subpics_minus1
・pps_subpic_id_len_minus1
・pps_subpic_id
以上により不要なシンタクスが符号化されていない、従来よりも符号量が削減されたビットストリームの復号が可能となる。
Similarly, since the image is not divided, pps_no_pic_partition_flag is 1, and it is not necessary to decode the syntax of the following picture parameter set.
・ Pps_subpic_id_mapping_present_flag
・ Pps_num_subpics_minus1
・ Pps_subpic_id_len_minus1
・ Pps_subpic_id
As described above, it is possible to decode a bit stream in which unnecessary syntax is not encoded and the amount of code is reduced as compared with the conventional case.
(その他の実施例)
本発明は、上述の実施形態の1以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける1つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、1以上の機能を実現する回路(例えば、ASIC)によっても実現可能である。
(Other examples)
The present invention supplies a program that realizes one or more functions of the above-described embodiment to a system or device via a network or storage medium, and one or more processors in the computer of the system or device reads and executes the program. It can also be realized by the processing to be performed. It can also be realized by a circuit (for example, ASIC) that realizes one or more functions.
発明は上記実施形態に制限されるものではなく、発明の精神及び範囲から離脱することなく、様々な変更及び変形が可能である。従って、発明の範囲を公にするために請求項を添付する。 The invention is not limited to the above embodiment, and various modifications and modifications can be made without departing from the spirit and scope of the invention. Therefore, a claim is attached to publicize the scope of the invention.
100…撮像装置、101…CPU101、102…メモリ、103…不揮発性メモリ、104…操作部、111…撮像レンズ、112…撮像部、113…画像処理部、114…符号化処理部、115…表示制御部、116…表示部、117…通信制御部、118…通信部、119…記録媒体制御部、120…記録媒体、140…検出部、130…内部バス
100 ... image pickup device, 101 ...
Claims (5)
画像をN個の前記矩形に分割する分割手段と、
前記矩形の位置及び大きさの情報を符号化する符号化手段とを有し、
前記符号化手段は、2番目からN−1番目の矩形の位置に関する情報を符号化し、1番目及びN番目の矩形の位置に関する情報を符号化しない
ことを特徴とする画像符号化装置。 An image coding device that encodes an image composed of N (N> 1) rectangles so that each rectangle can be independently decoded.
A dividing means for dividing an image into N rectangles, and
It has a coding means for encoding information on the position and size of the rectangle.
The coding means is an image coding device that encodes information about the positions of the second to N-1st rectangles and does not encode information about the positions of the first and Nth rectangles.
前記N個の矩形の位置および大きさを、前記複数の矩形を構成するブロック単位で取得する取得手段を有し、
前記取得手段は、前記N個の矩形のうちN−2個の矩形の位置およびN−1個の矩形の大きさに関する情報を、前記ビットストリームを復号し取得することを特徴とし、
前記取得手段は、前記N個の矩形のうちの最後(N個目)の矩形の位置および大きさに関する情報を、前記N−1個の矩形の位置および大きさに関する情報を用いて算出することで取得する
ことを特徴とする画像復号装置。 An image decoding device that decodes a bit stream encoded so that each rectangle can independently decode an image composed of N (N> 1) rectangles.
It has an acquisition means for acquiring the positions and sizes of the N rectangles in block units constituting the plurality of rectangles.
The acquisition means is characterized in that information regarding the positions of N-2 rectangles and the size of N-1 rectangles among the N rectangles is obtained by decoding the bitstream.
The acquisition means calculates information on the position and size of the last (Nth) rectangle among the N rectangles by using the information on the position and size of the N-1 rectangles. An image decoding device characterized by being acquired by.
画像をN個の前記矩形に分割する分割工程と、
前記矩形の位置及び大きさの情報を符号化する符号化工程とを有し、
前記符号化工程は、2番目からN−1番目の矩形の位置に関する情報を符号化し、1番目及びN番目の矩形の位置に関する情報を符号化しない
ことを特徴とする画像符号化方法。 An image coding method for encoding an image composed of N (N> 1) rectangles so that each rectangle can be independently decoded.
A division step of dividing an image into N rectangles, and
It has a coding step for coding information on the position and size of the rectangle.
The coding step is an image coding method comprising encoding information regarding the positions of the second to N-1th rectangles and not encoding information regarding the positions of the first and Nth rectangles.
前記N個の矩形の位置および大きさを、前記複数の矩形を構成するブロック単位で取得する取得工程を有し、
前記取得工程では、前記N個の矩形のうちN−2個の矩形の位置及びN−1個の矩形の大きさに関する情報を、前記ビットストリームを復号し取得することを特徴とし、
前記取得工程では、前記N個の矩形のうちの最後(N個目)の矩形の位置および大きさに関する情報を、前記N−1個の矩形の位置および大きさに関する情報を用いて算出することで取得する
ことを特徴とする画像復号方法。 An image decoding method for decoding an image composed of N (N> 1) rectangles by decoding a bit stream encoded so that each rectangle can be independently decoded.
It has an acquisition step of acquiring the positions and sizes of the N rectangles in block units constituting the plurality of rectangles.
The acquisition step is characterized in that the bit stream is decoded and acquired with information regarding the positions of N-2 rectangles and the size of N-1 rectangles among the N rectangles.
In the acquisition step, information on the position and size of the last (Nth) rectangle among the N rectangles is calculated using the information on the position and size of the N-1 rectangles. An image decoding method characterized by being acquired by.
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2020087610 | 2020-05-19 | ||
JP2020087610 | 2020-05-19 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2021182728A true JP2021182728A (en) | 2021-11-25 |
Family
ID=78606830
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2020098885A Pending JP2021182728A (en) | 2020-05-19 | 2020-06-05 | Image encoding device and image decoding device, method, and program |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2021182728A (en) |
-
2020
- 2020-06-05 JP JP2020098885A patent/JP2021182728A/en active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6459005B2 (en) | Image processing apparatus and image processing method | |
KR102227485B1 (en) | Image processing device and image processing method | |
KR101661436B1 (en) | Method, apparatus and system for encoding and decoding video | |
KR20210077799A (en) | Coding apparatus, coding method and program | |
US10674110B2 (en) | Image encoding apparatus, and control method thereof | |
TWI815969B (en) | Video coding and decoding | |
JP7345051B2 (en) | Video encoding with support for subpictures, slices, and tiles | |
JP2018078620A (en) | Encoder and encoding method | |
CN112532976A (en) | Moving image decoding device and moving image encoding device | |
JP2021182728A (en) | Image encoding device and image decoding device, method, and program | |
JP2021182729A (en) | Image encoding device and image decoding device, method, and program | |
JP2022082596A (en) | Image decoding device, image decoding method, and image decoding program | |
JP7148236B2 (en) | Encoding device and its control method and program | |
JP2020057898A (en) | Image coding device | |
JP2023030585A (en) | Image encoder, method and program | |
JP2021044708A (en) | Image encoding device, image encoding method and program, image decoding device, and image decoding method and program |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
RD01 | Notification of change of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7421 Effective date: 20210103 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20210113 |