WO2024079984A1 - メッシュ復号装置、メッシュ符号化装置、メッシュ復号方法及びプログラム - Google Patents

メッシュ復号装置、メッシュ符号化装置、メッシュ復号方法及びプログラム Download PDF

Info

Publication number
WO2024079984A1
WO2024079984A1 PCT/JP2023/029764 JP2023029764W WO2024079984A1 WO 2024079984 A1 WO2024079984 A1 WO 2024079984A1 JP 2023029764 W JP2023029764 W JP 2023029764W WO 2024079984 A1 WO2024079984 A1 WO 2024079984A1
Authority
WO
WIPO (PCT)
Prior art keywords
context
syntax
value
generate
coefficient
Prior art date
Application number
PCT/JP2023/029764
Other languages
English (en)
French (fr)
Inventor
仁志 西村
圭 河村
Original Assignee
Kddi株式会社
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Kddi株式会社 filed Critical Kddi株式会社
Publication of WO2024079984A1 publication Critical patent/WO2024079984A1/ja

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T9/00Image coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/13Adaptive entropy coding, e.g. adaptive variable length coding [AVLC] or context adaptive binary arithmetic coding [CABAC]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/176Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a block, e.g. a macroblock
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • H04N19/537Motion estimation other than block-based
    • H04N19/54Motion estimation other than block-based using feature points or meshes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/70Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by syntax aspects related to video coding, e.g. related to compression standards

Definitions

  • the present invention relates to a mesh decoding device, a mesh encoding device, a mesh decoding method, and a program.
  • Non-Patent Document 1 discloses a technique for encoding meshes using Non-Patent Document 2.
  • Non-Patent Document 1 has the problem that the original mesh data is simplified before being encoded, resulting in poor encoding performance.
  • the present invention has been made in consideration of the above-mentioned problems, and aims to provide a mesh decoding device, mesh encoding device, mesh decoding method, and program that can improve the efficiency of mesh encoding.
  • the first feature of the present invention is a mesh decoding device comprising a displacement amount decoding unit configured to decode a displacement amount bit stream to generate and output a displacement amount, the displacement amount decoding unit comprising an arithmetic decoding unit configured to generate a binarization syntax by performing arithmetic decoding on the displacement amount bit stream, a context value updating unit configured to update a context value using the binarization syntax, a context buffer configured to acquire and store the context value, the bit position, and the syntax, a context selection unit configured to generate an output context value using the context value, the bit position, and the syntax read from the context buffer, a multi-value unit configured to generate a syntax by multi-valueizing the binarization syntax and output it to the context buffer, a coefficient level value decoding unit configured to generate a coefficient level value from the syntax, an inverse quantization unit configured to generate a transform coefficient by inverse quantizing the coefficient level value, and an inverse wavelet transform unit configured to generate a prediction residual by performing an inverse wavelet transform on the transform
  • the second feature of the present invention is a mesh decoding method comprising a step of decoding a displacement amount bit stream to generate and output a displacement amount, the step including a step of generating a binarization syntax by performing arithmetic decoding on the displacement amount bit stream, a step of updating a context value using the binarization syntax, a step of acquiring the context value, the bit position, and the syntax and storing them in a context buffer, a step of generating an output context value using the context value, the bit position, and the syntax read from the context buffer, a step of generating a syntax by multi-value-coding the binarization syntax and outputting it to the context buffer, a step of generating a coefficient level value from the syntax, a step of generating a transform coefficient by inverse quantizing the coefficient level value, and a step of generating a prediction residual by performing an inverse wavelet transform on the transform coefficient.
  • a third feature of the present invention is a program for causing a computer to function as a mesh decoding device, the mesh decoding device comprising a displacement amount decoding unit configured to decode a displacement amount bit stream to generate and output a displacement amount, the displacement amount decoding unit comprising an arithmetic decoding unit configured to generate a binarization syntax by performing arithmetic decoding on the displacement amount bit stream, a context value updating unit configured to update a context value using the binarization syntax, a context buffer configured to acquire and store the context value, bit position, and syntax, and a context value read from the context buffer.
  • the gist of the present invention is that the decoder includes a context selection unit configured to generate an output context value using the context value, the bit position, and the syntax, a multi-value conversion unit configured to convert the binarized syntax into a multi-value to generate a syntax and output the syntax to the context buffer, a coefficient level value decoding unit configured to generate a coefficient level value from the syntax, an inverse quantization unit configured to generate a transform coefficient by inverse quantizing the coefficient level value, and an inverse wavelet transform unit configured to generate a prediction residual by performing an inverse wavelet transform on the transform coefficient.
  • a context selection unit configured to generate an output context value using the context value, the bit position, and the syntax
  • a multi-value conversion unit configured to convert the binarized syntax into a multi-value to generate a syntax and output the syntax to the context buffer
  • a coefficient level value decoding unit configured to generate a coefficient level value from the syntax
  • an inverse quantization unit configured to generate a transform coefficient by inverse quantizing the coefficient level value
  • the present invention provides a mesh decoding device, a mesh encoding device, a mesh decoding method, and a program that can improve mesh encoding efficiency.
  • FIG. 1 is a diagram showing an example of a configuration of a mesh processing system 1 according to an embodiment.
  • FIG. 2 is a diagram showing an example of functional blocks of a mesh decoding device 200 according to an embodiment.
  • FIG. 3 is a diagram showing an example of functional blocks of the displacement amount decoding unit 206 of the mesh decoding device 200 according to an embodiment.
  • FIG. 4 is a diagram illustrating an example of a syntax configuration.
  • FIG. 5 is a diagram showing a prefix code string and a suffix code string when the maximum value is 32.
  • FIG. 6 is a diagram showing a prefix code sequence and a suffix code sequence formed by kth order exponential-Golomb coding.
  • FIG. 7 is a diagram showing a specific example of a syntax configuration.
  • FIG. 1 is a diagram showing an example of a configuration of a mesh processing system 1 according to an embodiment.
  • FIG. 2 is a diagram showing an example of functional blocks of a mesh decoding device 200 according to an embodiment.
  • FIG. 8 is a diagram showing a specific example of a syntax configuration.
  • FIG. 9 is a diagram for explaining the operation of the context selection unit 206E of the mesh decoding device 200 according to an embodiment.
  • FIG. 10 is a diagram for explaining the operation of the context selection unit 206E of the mesh decoding device 200 according to an embodiment.
  • FIG. 11 is a diagram for explaining the operation of the context selection unit 206E of the mesh decoding device 200 according to an embodiment.
  • FIG. 12 is a flowchart showing an example of the operation of the coefficient level value decoding unit 206F2.
  • FIG. 13 is a flowchart showing an example of the operation of the arithmetic decoding unit 206B, the context selecting unit 206E, the context value updating unit 206C, and the multi-value conversion unit 206F.
  • FIG. 14 is a diagram illustrating an example of a configuration of a bit stream of a displacement amount.
  • FIG. 1 is a diagram showing an example of the configuration of a mesh processing system 1 according to this embodiment.
  • the mesh processing system 1 includes a mesh encoding device 100 and a mesh decoding device 200.
  • FIG. 2 is a diagram showing an example of functional blocks of a mesh decoding device 200 according to this embodiment.
  • the mesh decoding device 200 includes a demultiplexing unit 201, a basic mesh decoding unit 202, a subdivision unit 203, a mesh decoding unit 204, a patch integration unit 205, a displacement amount decoding unit 206, and an image decoding unit 207.
  • the demultiplexing unit 201 is configured to separate the multiplexed bit stream into a basic mesh bit stream, a displacement amount bit stream, and a texture bit stream.
  • the base mesh decoding unit 202 is configured to decode the base mesh bitstream and generate and output a base mesh.
  • the subdivision unit 203 is configured to generate and output the added subdivision vertices and their connection information from the basic mesh decoded by the basic mesh decoding unit 202 using the subdivision method indicated by the control information.
  • the base mesh the added subdivision vertices, and their connection information are collectively referred to as the "subdivision mesh.”
  • the mesh decoding unit 204 is configured to generate and output a decoded mesh using the subdivision mesh generated by the subdivision unit 203 and the displacement amount decoded by the displacement amount decoding unit 206.
  • the patch integration unit 205 is configured to integrate and output the decoded mesh generated by the mesh decoding unit 206 for multiple patches.
  • the displacement amount decoding unit 206 is configured to decode the displacement amount bit stream to generate and output the displacement amount.
  • the video decoding unit 207 is configured to decode and output the texture by video encoding.
  • the video decoding unit 207 may use HEVC in Non-Patent Document 1.
  • the displacement amount decoding unit 206 includes a control information decoding unit 206A, an arithmetic decoding unit 206B, a context value updating unit 206C, a context buffer... 206D, a context selection unit 206E, a multi-value conversion unit 206F, a coefficient level value decoding unit F2, an inter prediction unit 206G, a frame buffer 206H, an adder 206I, an inverse quantization unit 206J, and an inverse wavelet transform unit 206K.
  • a control information decoding unit 206A includes a control information decoding unit 206A, an arithmetic decoding unit 206B, a context value updating unit 206C, a context buffer... 206D, a context selection unit 206E, a multi-value conversion unit 206F, a coefficient level value decoding unit F2, an inter prediction unit 206G, a frame buffer 206H, an adder 206I, an inverse quantization unit 206J, and an inverse wavelet transform unit
  • the control information decoding unit 206A is configured to output control information by performing variable length decoding on the received displacement amount bit stream.
  • the arithmetic decoding unit 206B is configured to output a binarization syntax by performing arithmetic decoding on the received displacement amount bit stream. Details will be described later.
  • the context value update unit 206C is configured to update the context value using a binarization syntax and output it to the frame buffer 206D. Details will be described later.
  • the context selection unit 206E is configured to generate and output a context value (output context value) using the context value, bit position, and syntax read from the context buffer 206D. Details will be described later.
  • the context buffer 206D is configured to acquire and store context values, bit positions, and syntax.
  • the context buffer 206D is configured to output these in response to control information (not shown).
  • the multi-value conversion unit 206F is configured to generate and output a syntax by converting the binary syntax into a multi-value.
  • the generated (calculated) syntax is also output to the context buffer 206D as a bit position and syntax.
  • the coefficient level value decoding unit 206F2 is configured to generate and output coefficient level values from the syntax.
  • the inter prediction unit 206G is configured to generate and output a predicted displacement amount using a reference frame read from the frame buffer 206D.
  • the frame buffer H is configured to acquire and store the decoded displacement amount.
  • the frame buffer H is configured to output the decoded displacement amount at the corresponding vertex in the reference frame in accordance with control information (not shown).
  • the adder 206I is configured to obtain a prediction residual and a prediction displacement amount.
  • the adder 206I is configured to add these to generate and output a decoded displacement amount.
  • the generated (calculated) decoded displacement amount is also output to the frame buffer 206H.
  • the inverse quantization unit 206J is configured to generate and output transform coefficients by inverse quantizing the coefficient level values.
  • the inverse wavelet transform unit 206K is configured to generate and output prediction residuals by performing an inverse wavelet transform on the transform coefficients.
  • the inverse wavelet transform is the inverse transform of the wavelet transform.
  • the wavelet transform is a method that uses a wavelet function as a base, expands the base for low-frequency components, and contracts the base for high-frequency components, making it possible to simultaneously analyze spatial and frequency information.
  • the coefficient level values of the displacement are represented in each frame by a matrix of size 3xN.
  • 3 indicates the dimension in the spatial domain, and N indicates the total number of subdivision vertices.
  • This matrix is divided into blocks and encoded on a block-by-block basis.
  • n may be variable for each block. For example, n may be determined based on the subdivision level indicated by the control information and the total number of coefficient level values at each level (n1, n2, ).
  • the subdivision level indicates the number of subdivisions. For example, if the subdivision level is 4, the block may be composed of four blocks: 3xn1, 3xn2, 3xn3, and 3xn4.
  • Figure 4 shows an example of a syntax configuration. There are syntaxes that are defined in matrix units and syntaxes that are defined in block units.
  • last_sig_coeff_prefix represents the prefix of the coordinate position of the first nonzero coefficient in scan order.
  • last_sig_coeff_suffix represents the suffix of the coordinate position of the first nonzero coefficient in scan order.
  • the prefix is represented by truncated Rice binarization
  • the suffix is represented with a fixed length.
  • Figure 5 shows the prefix code sequence and the suffix code sequence when the maximum value is 32.
  • the coded_block_flag is a flag that indicates that the block contains a nonzero coefficient. Only one such flag is defined for each block.
  • last_sig_coeff_block_prefix represents the prefix of the coordinate position of the first nonzero coefficient in the block in scan order.
  • last_sig_coeff_block_suffix represents the suffix of the coordinate position of the first nonzero coefficient in the block in scan order.
  • sig_coeff_flag is a flag indicating whether it is a nonzero coefficient.
  • coeff_abs_level_greater1_flag is a flag indicating whether the absolute value of the coefficient (non-zero coefficient) is 2 or greater.
  • the total number of coefficients represented by this flag may be limited to an upper limit, such as 8.
  • coeff_abs_level_greater2_flag is a flag that indicates whether the absolute value of the first coefficient (non-zero coefficient) in the scan order whose absolute value is 2 or greater is 3 or greater.
  • coeff_sign_flag is a flag that indicates the positive or negative sign of the coefficient.
  • coeff_abs_level_remaining represents the absolute value of the coefficient minus the value represented by the flag described above.
  • coeff_abs_level_remaining is expressed, for example, by kth order exponential Golomb coding.
  • Figure 6 shows a prefix code sequence and a suffix code sequence using kth order exponential Golomb coding.
  • FIGS. 7 and 8 show specific examples of syntax configurations. As shown in FIG. 7, coefficient level values are decoded from each syntax, and then, as shown in FIG. 8, the decoded coefficient level values are rearranged.
  • the arithmetic decoding unit 206B processes binary values.
  • the arithmetic decoding unit 206B defines a number line from 0 to 1, and divides the interval for use. The interval is divided according to the occurrence probability of the binary values (hereinafter, referred to as a context value).
  • the arithmetic decoding unit 206B receives a binary decimal and decodes the original value depending on which section on the number line the binary decimal falls within.
  • the context value may be fixed or may be changed for each bit of the input signal.
  • the arithmetic decoding unit 206B receives the context value from the context selection unit 206E.
  • the context value update unit 206C updates the context value every time one bit is decoded.
  • the context value update unit 206C sets the symbol with the highest probability of occurrence, between 0 and 1, as the Most Probable Symbol (MPS), and the symbol with the lowest probability of occurrence as the Least Probable Symbol (LPS).
  • MPS Most Probable Symbol
  • LPS Least Probable Symbol
  • the context value update unit 206C may use a probability update table that updates the probability value slightly when an MPS occurs and updates the probability value significantly when an LPS occurs.
  • Context selection unit 206E The following syntax elements are decoded by the arithmetic decoding unit 206B and selected by the context selection unit 206E. Note that since the selection method differs depending on each syntax element, an example of such a selection method will be described below.
  • the context selection unit 206E may create a context number table according to the matrix size and bit position, as shown in FIG. 9.
  • the context selection unit 206E may create a context number table according to the block size and bit position, as shown in FIG. 9.
  • the context selection unit 206E sets the context number to a value obtained by correcting a certain reference value based on the position of the coefficient and the coded_block_flag of the decoded right adjacent block. For example, the context selection unit 206E sets the reference value to 0 for the leftmost block and 3 for the other blocks.
  • the context selection unit 206E may set the context number to 0 if there is a coefficient whose absolute value (level value) is 2 or more in the decoded right adjacent block, and may set the context number to 1 if not.
  • step S101 the coefficient level value decoding unit 206F2 decodes all coefficients after the position indicated by last_sig_coeff_prefix and last_sig_coeff_suffix as 0. The subsequent processing is performed on a block-by-block basis.
  • step S102 the coefficient level value decoding unit 206F2 performs decoding on coded_block_flag.
  • step S103 the coefficient level value decoding unit 206F2 determines whether coded_block_flag is 0 or 1.
  • step S104 the coefficient level value decoding unit 206F2 decodes all coefficients in the currently processed block after the position indicated by last_sig_coeff_block_prefix and last_sig_coeff_block_suffix as 0.
  • step S105 the coefficient level value decoding unit 206F2 performs decoding on sig_coeff_flag.
  • step S106 the coefficient level value decoding unit 206F2 determines whether sig_coeff_flag is 0 or 1.
  • step S107 the coefficient level value decoding unit 206F2 performs decoding for coeff_abs_level_greater1_flag.
  • step S108 the coefficient level value decoding unit 206F2 determines whether coeff_abs_level_greater1_flag is 0 or 1.
  • step S109 the coefficient level value decoding unit 206F2 performs decoding for coeff_abs_level_greater2_flag.
  • step S110 the coefficient level value decoding unit 206F2 determines whether coeff_abs_level_greater2_flag is 0 or 1.
  • step S112 the coefficient level value decoding unit 206F2 performs decoding on coeff_abs_level_remaining.
  • the coefficient level value decoding unit 206F2 performs exponential Golomb decoding and then adds 3 to it, which becomes the decoded coefficient level value.
  • step S113 the coefficient level value decoding unit 206F2 performs decoding on coeff_sign_flag.
  • step S114 the coefficient level value decoding unit 206F2 determines whether coeff_sign_flag is 0 or 1.
  • step S115 the coefficient level value decoding unit 206F2 converts the decoded coefficients into negative values.
  • step S116 the coefficient level value decoding unit 206F2 determines whether the block currently being processed is the final block.
  • step S111 If the answer is Yes, the operation ends; if the answer is No, the operation proceeds to step S111.
  • step S111 the coefficient level value decoding unit 206F2 proceeds to process the next block, and the operation returns to step S102.
  • the arithmetic decoding unit 206B is initialized in step S201, and sets an initial context value in step S202.
  • the arithmetic decoding unit 206B selects a context in step S203, and performs arithmetic decoding in step S204.
  • step S205 the context value update unit 206C and the context selection unit 206E update the context values, and in step S206, the multi-value conversion unit 206F performs multi-value conversion.
  • step S207 the multi-value conversion unit 206F determines whether all decoding is complete. If Yes, the operation proceeds to step S208; if No, the operation returns to step S203.
  • step S208 the multi-value conversion unit 206F saves the context values.
  • Bitstream configuration An example of the configuration of a bit stream of the amount of displacement will be described below with reference to FIG.
  • the bitstream may include a displacement parameter set (DPS), which is a collection of control information related to decoding of the displacement amount.
  • DPS displacement parameter set
  • the bitstream may include a frame header, which is a collection of control information corresponding to a frame.
  • bitstream may contain, following the frame header, the coded displacement amounts that make up the frame.
  • bitstream is structured so that each encoded displacement amount corresponds to one frame header and one DPS.
  • the configuration shown in FIG. 14 is merely an example. As long as the frame header and DPS correspond to each encoded displacement amount, elements other than those described above may be added as components of the bitstream.
  • the bitstream may include an SPS (sequence parameter set).
  • the mesh decoding device 200 divides the coefficient level value sequence of the displacement amount in the frequency domain, introduces a syntax that indicates coefficients with small absolute values, and further constructs different context models in each frequency domain, thereby making it possible to improve the coding efficiency.
  • the above-mentioned mesh encoding device 100 and mesh decoding device 200 may be realized as a program that causes a computer to execute each function (each process).

Abstract

本発明に係るメッシュ復号装置200の変位量復号部206は、変位量ビットストリームに対して算術復号を行うことによって2値化シンタックスを生成するように構成されている算術復号部206Bと、2値化シンタックスを用いてコンテキスト値を更新するように構成されているコンテキスト値更新部206Cと、コンテキストバッファ206Dから読み出されたコンテキスト値、ビット位置及びシンタックスを用いて、出力用コンテキスト値を生成するように構成されているコンテキスト選択部206Eと、2値化シンタックスを多値化することによってシンタックスを生成してコンテキストバッファ206Dに出力するように構成されている多値化部206Fと、シンタックスから係数レベル値を生成するように構成されている係数レベル値復号部206F2とを備える。

Description

メッシュ復号装置、メッシュ符号化装置、メッシュ復号方法及びプログラム
 本発明は、メッシュ復号装置、メッシュ符号化装置、メッシュ復号方法及びプログラムに関する。
 非特許文献1のアンカーソフトには、非特許文献2を用いてメッシュを符号化する技術が開示されている。
Cfp for Dynamic Mesh Coding、ISO/IEC JTC1/SC29/WG7 N00231、MPEG136 - Online Google Draco、2022年5月26日アクセス[Online]、https://google.github.io/draco
 しかしながら、非特許文献1のアンカーソフトでは、元のメッシュデータを簡略化してから符号化するため、符号化性能が悪いという問題点があった。 そこで、本発明は、上述の課題に鑑みてなされたものであり、メッシュの符号化効率を向上させることができるメッシュ復号装置、メッシュ符号化装置、メッシュ復号方法及びプログラムを提供することを目的とする。
 本発明の第1の特徴は、メッシュ復号装置であって、変位量ビットストリームを復号して変位量を生成して出力するように構成されている変位量復号部を備え、前記変位量復号部は、前記変位量ビットストリームに対して算術復号を行うことによって、2値化シンタックスを生成するように構成されている算術復号部と、前記2値化シンタックスを用いて、コンテキスト値を更新するように構成されているコンテキスト値更新部と、前記コンテキスト値、ビット位置及びシンタックスを取得して蓄積するように構成されているコンテキストバッファと、前記コンテキストバッファから読み出された前記コンテキスト値、前記ビット位置及び前記シンタックスを用いて、出力用コンテキスト値を生成するように構成されているコンテキスト選択部と、前記2値化シンタックスを多値化することによって、シンタックスを生成して前記コンテキストバッファに出力するように構成されている多値化部と、前記シンタックスから係数レベル値を生成するように構成されている係数レベル値復号部と、前記係数レベル値を逆量子化することによって、変換係数を生成するように構成されている逆量子化部と、前記変換係数に対して逆ウェーブレット変換を施すことによって予測残差を生成するように構成されている逆ウェーブレット変換部と、を備えることを要旨とする。
 本発明の第2の特徴は、メッシュ復号方法であって、変位量ビットストリームを復号して変位量を生成して出力する工程を備え、前記工程は、前記変位量ビットストリームに対して算術復号を行うことによって、2値化シンタックスを生成する工程と、前記2値化シンタックスを用いて、コンテキスト値を更新する工程と、前記コンテキスト値、ビット位置及びシンタックスを取得してコンテキストバッファに蓄積する工程と、前記コンテキストバッファから読み出された前記コンテキスト値、前記ビット位置及び前記シンタックスを用いて、出力用コンテキスト値を生成する工程と、前記2値化シンタックスを多値化することによって、シンタックスを生成して前記コンテキストバッファに出力する工程と、前記シンタックスから係数レベル値を生成する工程と、前記係数レベル値を逆量子化することによって、変換係数を生成する工程と、前記変換係数に対して逆ウェーブレット変換を施すことによって予測残差を生成する工程と、を有することを要旨とする。
 本発明の第3の特徴は、コンピュータを、メッシュ復号装置として機能させるプログラムであって、前記メッシュ復号装置は、変位量ビットストリームを復号して変位量を生成して出力するように構成されている変位量復号部を備え、前記変位量復号部は、前記変位量ビットストリームに対して算術復号を行うことによって、2値化シンタックスを生成するように構成されている算術復号部と、前記2値化シンタックスを用いて、コンテキスト値を更新するように構成されているコンテキスト値更新部と、前記コンテキスト値、ビット位置及びシンタックスを取得して蓄積するように構成されているコンテキストバッファと、前記コンテキストバッファから読み出された前記コンテキスト値、前記ビット位置及び前記シンタックスを用いて、出力用コンテキスト値を生成するように構成されているコンテキスト選択部と、前記2値化シンタックスを多値化することによって、シンタックスを生成して前記コンテキストバッファに出力するように構成されている多値化部と、前記シンタックスから係数レベル値を生成するように構成されている係数レベル値復号部と、前記係数レベル値を逆量子化することによって、変換係数を生成するように構成されている逆量子化部と、前記変換係数に対して逆ウェーブレット変換を施すことによって予測残差を生成するように構成されている逆ウェーブレット変換部と、を備えることを要旨とする。
 本発明によれば、メッシュの符号化効率を向上させることができるメッシュ復号装置、メッシュ符号化装置、メッシュ復号方法及びプログラムを提供することができる。
図1は、一実施形態に係るメッシュ処理システム1の構成の一例を示す図である。 図2は、一実施形態に係るメッシュ復号装置200の機能ブロックの一例を示す図である。 図3は、一実施形態に係るメッシュ復号装置200の変位量復号部206の機能ブロックの一例を示す図である。 図4は、シンタックス構成の一例について示す図である。 図5は、最大値が32である場合のプリフィックス符号列及びサフィックス符号列を示す図である。 図6は、k次指数ゴロム符号によるプリフィックス符号列及びサフィックス符号列を示す図である。 図7は、シンタックス構成の具体例について示す図である。 図8は、シンタックス構成の具体例について示す図である。 図9は、一実施形態に係るメッシュ復号装置200のコンテキスト選択部206Eの動作を説明するための図である。 図10は、一実施形態に係るメッシュ復号装置200のコンテキスト選択部206Eの動作を説明するための図である。 図11は、一実施形態に係るメッシュ復号装置200のコンテキスト選択部206Eの動作を説明するための図である。 図12は、係数レベル値復号部206F2の動作の一例について示すフローチャートである。 図13は、算術復号部206B、コンテキスト選択部206E、コンテキスト値更新部206C及び多値化部206Fの動作の一例について示すフローチャートである。 図14は、変位量のビットストリームの構成の一例について説明するための図である。
 以下、本発明の実施の形態について、図面を参照しながら説明する。なお、以下の実施形態における構成要素は、適宜、既存の構成要素等との置き換えが可能であり、また、他の既存の構成要素との組み合わせを含む様々なバリエーションが可能である。したがって、以下の実施形態の記載をもって、特許請求の範囲に記載された発明の内容を限定するものではない。
<第1実施形態>
 以下、図1~図16を参照して、本実施形態に係るメッシュ処理システムについて説明する。
 図1は、本実施形態に係るメッシュ処理システム1の構成の一例を示す図である。図1に示すように、メッシュ処理システム1は、メッシュ符号化装置100及びメッシュ復号装置200を備えている。
 図2は、本実施形態に係るメッシュ復号装置200の機能ブロックの一例を示す図である。
 図2に示すように、メッシュ復号装置200は、多重分離部201と、基本メッシュ復号部202と、細分割部203と、メッシュ復号部204と、パッチ統合部205と、変位量復号部206と、映像復号部207とを有する。
 多重分離部201は、多重化されたビットストリームを、基本メッシュビットストリームと変位量ビットストリームとテクスチャビットストリームとに分離するように構成されている。
 基本メッシュ復号部202は、基本メッシュビットストリームを復号し、基本メッシュを生成して出力するように構成されている。
 細分割部203は、制御情報によって示された細分割手法により、基本メッシュ復号部202によって復号された基本メッシュから、追加された細分割頂点及びそれらの接続情報を生成して出力するように構成されている。
 ここで、基本メッシュ、追加された細分割頂点、及び、それらの接続情報を、併せて「細分割メッシュ」と呼ぶ。
 メッシュ復号部204は、細分割部203で生成された細分割メッシュ及び変位量復号部206で復号された変位量を用いて、復号メッシュを生成して出力するように構成されている。
 パッチ統合部205は、メッシュ復号部206で生成された復号メッシュを、複数のパッチ分だけ統合して出力するように構成されている。
 変位量復号部206は、変位量ビットストリームを復号して変位量を生成して出力するように構成されている。
 映像復号部207は、映像符号化によってテクスチャを復号して出力するように構成されている。例えば、映像復号部207は、非特許文献1のHEVCを用いてもよい。
(変位量復号部206)
 図3に示すように、変位量復号部206は、制御情報復号部206Aと、算術復号部206Bと、コンテキスト値更新部206Cと、コンテキストバッファ…206Dと、コンテキスト選択部206Eと、多値化部206Fと、係数レベル値復号部F2と、インター予測部206Gと、フレームバッファ206Hと、加算器206Iと、逆量子化部206Jと、逆ウェーブレット変換部206Kとを備えている。
 制御情報復号部206Aは、受信した変位量ビットストリームに対して可変長復号を行うことで、制御情報を出力するように構成されている。
 算術復号部206Bは、受信した変位量ビットストリームに対して算術復号を行うことで、2値化シンタックスを出力するように構成されている。詳細については後述する。
 コンテキスト値更新部206Cは、2値化シンタックスを用いて、コンテキスト値を更新し、フレームバッファ206Dに出力するように構成されている。詳細については後述する。
 コンテキスト選択部206Eは、コンテキストバッファ206Dから読み出されたコンテキスト値、ビット位置及びシンタックスを用いて、コンテキスト値(出力用コンテキスト値)を生成して出力するように構成されている。詳細については後述する。
 コンテキストバッファ206Dは、コンテキスト値、ビット位置及びシンタックスを取得して蓄積するように構成されている。コンテキストバッファ206Dは、図示しない制御情報に応じてこれらを出力するように構成されている。
 多値化部206Fは、2値化シンタックスを多値化することによってシンタックスを生成して出力するように構成されている。生成(算出)されたシンタックスは、ビット位置及びシンタックスとしてコンテキストバッファ206Dにも出力される。
 係数レベル値復号部206F2は、シンタックスから係数レベル値を生成して出力するように構成されている。
 インター予測部206Gは、フレームバッファ206Dから読み出された参照フレームを用いて、予測変位量を生成して出力するように構成されている。
 フレームバッファHは、復号変位量を取得して蓄積するように構成されている。フレームバッファHは、図示しない制御情報に応じて、参照フレームにおいて対応する頂点における復号変位量を出力するように構成されている。
 加算器206Iは、予測残差及び予測変位量を取得するように構成されている。加算器206Iは、これらを加算して、復号変位量を生成して出力するように構成されている。生成(算出)された復号変位量は、フレームバッファ206Hにも出力される。
 逆量子化部206Jは、係数レベル値を逆量子化することによって変換係数を生成して出力するように構成されている。
 逆ウェーブレット変換部206Kは、変換係数を逆ウェーブレット変換することによって予測残差を生成して出力するように構成されている。逆ウェーブレット変換は、ウェーブレット変換の逆変換である。ウェーブレット変換は、ウェーブレット関数を基底とし、低周波成分に対しては基底を拡大し、高周波成分に対しては基底を縮小することで、空間と周波数の情報を同時に解析できる手法である。
(シンタックス構成)
 以下、図4~8を参照して、シンタックス構成について説明する。
 まず、符号化時は、変位量の係数レベル値は、各フレームにおいて3×Nサイズの行列で表される。3は、空間領域における次元を示し、Nは、細分割頂点の総数を示す。かかる行列がブロックに分割され、ブロック単位で符号化される。
 ブロックサイズは、3×nサイズ(n<N)であってもよいし、1×nサイズであってもよい。或いは、ブロックサイズとして、1×nサイズ及び2×nサイズを併用してもよい。ブロックサイズに満たない行列要素については、最大となるd×mサイズ(d=1,2,3, m<n)でブロックを構成する。
 nは、ブロックごとに可変にしてもよい。例えば、制御情報によって示された細分割レベル及び各レベルにおける係数レベル値の総数(n1、n2、…)によってnを定めてもよい。ここで、細分割レベルは、細分割の回数を示す。例えば、細分割レベルが4の場合は、3×n1、3×n2、3×n3、3×n4、の4つのブロックで構成してもよい。
 図4は、シンタックス構成の一例について示す図である。シンタックスは、行列単位で定義されるものとブロック単位で定義されるものがある。
 第1に、行列単位で定義されるシンタックスについて説明する。
 last_sig_coeff_prefixは、スキャン順で先頭の非零係数の座標位置のプリフィックスを表す。last_sig_coeff_suffixは、スキャン順で先頭の非零係数の座標位置のサフィックスを表す。
 例えば、プリフィックスは、トランケーテッド・ライス二値化によって表現され、サフィックスは、固定長で表現される。図5は、最大値が32である場合のプリフィックス符号列及びサフィックス符号列を示す図である。
 第2に、ブロック単位で定義されるシンタックスについて説明する。
 coded_block_flagは、ブロック内に非零係数があることを示すフラグである。かかるフラグは、各ブロックに1個だけ定義される。
 last_sig_coeff_block_prefixは、ブロック内においてスキャン順で先頭の非零係数の座標位置のプリフィックスを表す。last_sig_coeff_block_suffixは、ブロック内においてスキャン順で先頭の非零係数の座標位置のサフィックスを表す。sig_coeff_flagは、非零係数かであるかどうかを示すフラグである。
 coeff_abs_level_greater1_flagは、係数(非零係数)の絶対値が2以上であるかどうかを示すフラグである。かかるフラグで表す係数の総数には、例えば、8個のような上限を設けてもよい。
 coeff_abs_level_greater2_flagは、スキャン順で先頭の絶対値が2以上の係数(非零係数)の絶対値が3以上であるかどうかを示すフラグである。coeff_sign_flagは、係数の正負符号を示すフラグである。
 coeff_abs_level_remainingは、係数の絶対値から上述のフラグで表現した値を引いた値を表す。coeff_abs_level_remainingは、例えば、k次指数ゴロム符号によって表現される。図6は、k次指数ゴロム符号によるプリフィックス符号列及びサフィックス符号列を示す図である。
 図7及び図8は、シンタックス構成の具体例について示す図である。図7に示すように、各シンタックスから係数レベル値が復号され、その後、図8に示すように、復号された係数レベル値が並び替えられる。
(算術復号部206B)
 算術復号部206Bは、2値を対象とする。算術復号部206Bは、0から1までの数直線を定義し、その区間を分割して利用する。区間は、2値の発生確率(以降、コンテキスト値と呼ぶ)によって分割される。
 算術復号部206Bには、2進数小数が入力され、算術復号部206Bは、かかる2進数少数が数直線上のどの区間に含まれるかによって元の値を復号する。
 ここで、コンテキスト値は、常に固定とされてもよいし、入力信号1ビットごとに変更されてもよい。コンテキスト値が、1ビットごとに変更される場合は、算術復号部206Bは、コンテキスト選択部206Eからコンテキスト値を受け取る。
(コンテキスト値更新部206C)
 コンテキスト値更新部206Cは、1ビットを復号する度にコンテキスト値を更新する。
 ここで、コンテキスト値更新部206Cは、0及び1のうち、発生確率が高いシンボルをMPS(Most Probable Symbol)とし、発生確率が低いシンボルをLPS(Least Probable Symbol)とする。
 コンテキスト値更新部206Cは、MPSが発生した場合は、少し確率値を更新し、LPSが発生した場合は、大きく確率値を更新するような確率更新テーブルを用いてもよい。
(コンテキスト選択部206E)
 以下のシンタックスは、上述の算術復号部206Bによって復号され、コンテキスト選択部206Eによって選択される。なお、各シンタックスによって選択方法が異なるため、以下、かかる選択方法の一例について説明する。
 last_sig_coeff_prefix:コンテキスト選択部206Eは、図9に示すように、行列サイズやビット位置に応じたコンテキスト番号表を作成してもよい。
 last_sig_coeff_block_prefix:コンテキスト選択部206Eは、図9に示すように、ブロックサイズやビット位置に応じたコンテキスト番号表を作成してもよい。
 coded_block_flag:コンテキスト選択部206Eは、図10に示すような復号済みの右隣接ブロックで、coded_block_flag=0であればコンテキスト番号を0とし、coded_block_flag=1コンテキスト番号を1としてもよい。
 sig_coeff_flag:コンテキスト選択部206Eは、ある基準値を、係数の位置や復号済みの右隣接ブロックのcoded_block_flagによって補正した値をコンテキスト番号とする。例えば、コンテキスト選択部206Eは、基準値について、例えば、最も左のブロックでは0とし、それ以外のブロックでは3とする。コンテキスト選択部206Eは、コンテキスト番号の補正には、復号済みの右隣接ブロックでcoded_block_flag=0の場合は、図11-1及び図11-3に示すような表を用い、coded_block_flag=1の場合には、図11-2に示すような表を用いてもよい。
 coeff_abs_level_greater1_flag、coeff_abs_level_greater2_flag:コンテキスト選択部206Eは、復号済みの右隣接ブロックで、絶対値(レベル値)が2以上の係数がある場合は、コンテキスト番号を0とし、そうでない場合は、コンテキスト番号を1としてもよい。
(係数レベル値復号部206F2の動作)
 以下、図12を参照して、係数レベル値復号部206F2の動作の一例について説明する。
 図12に示すように、ステップS101において、係数レベル値復号部206F2は、last_sig_coeff_prefixとlast_sig_coeff_suffixが示す位置以降の係数は全て0として復号する。この後の処理は、ブロック単位で行われる。
 ステップS102において、係数レベル値復号部206F2は、coded_block_flagについての復号を行う。
 ステップS103において、係数レベル値復号部206F2は、coded_block_flagが0であるか1であるかの判定を行う。
 coded_block_flag=0の場合は、係数レベル値復号部206F2は、現在処理しているブロック内の係数については全て0として復号し、本動作は、ステップS116に進み、coded_block_flag=1の場合は、本動作は、ステップS104に進む。
 ステップS104において、係数レベル値復号部206F2は、現在処理しているブロック内で、last_sig_coeff_block_prefixとlast_sig_coeff_block_suffixが示す位置以降の係数は全て0として復号する。
 ステップS105において、係数レベル値復号部206F2は、sig_coeff_flagについての復号を行う。
 ステップS106において、係数レベル値復号部206F2は、sig_coeff_flagが0であるか1であるかの判定を行う。
 sig_coeff_flag=0の場合は、本動作は、ステップS116に進み、sig_coeff_flag=1の場合は、本動作は、ステップS107に進む。
 ステップS107において、係数レベル値復号部206F2は、coeff_abs_level_greater1_flagについての復号を行う。
 ステップS108において、係数レベル値復号部206F2は、coeff_abs_level_greater1_flagが0であるか1であるかの判定を行う。
 coeff_abs_level_greater1_flag=0の場合は、本動作は、ステップS113に進み、coeff_abs_level_greater1_flag=1の場合は、本動作は、ステップS109に進む。
 ステップS109において、係数レベル値復号部206F2は、coeff_abs_level_greater2_flagについての復号を行う。
 ステップS110において、係数レベル値復号部206F2は、coeff_abs_level_greater2_flagが0であるか1であるかの判定を行う。
 coeff_abs_level_greater2_flag=0の場合は、本動作は、ステップS113に進み、coeff_abs_level_greater1_flag=1の場合は、本動作は、ステップS112に進む。
 ステップS112において、係数レベル値復号部206F2は、coeff_abs_level_remainingについての復号を行う。ここで、係数レベル値復号部206F2は、coeff_abs_level_remainingの復号については、指数ゴロム復号を行った後に3を加算したものを復号後の係数レベル値とする。
 ステップS113において、係数レベル値復号部206F2は、coeff_sign_flagについての復号を行う。
 ステップS114において、係数レベル値復号部206F2は、coeff_sign_flagが0であるか1であるかの判定を行う。
 coeff_sign_flag=0の場合は、本動作は、ステップS116に進み、coeff_sign_flag=1の場合は、本動作は、ステップS115に進む。
 ステップS115において、係数レベル値復号部206F2は、復号済みの係数を負値化する。
 ステップS116において、係数レベル値復号部206F2は、現在処理しているブロックが最終ブロックであるか否かについて判定する。
 Yesの場合、本動作は、終了し、Noの場合、本動作は、ステップS111に進む。
 ステップS111において、係数レベル値復号部206F2は、次のブロックへの処理に進み、本動作は、ステップS102に戻る。
 次に、図13を参照して、算術復号部206B、コンテキスト選択部206E、コンテキスト値更新部206C及び多値化部206Fの動作の一例について説明する。
 図13に示すように、算術復号部206Bは、ステップS201において、算術復号部206Bは、初期化され、ステップS202において、初期コンテキスト値を設定する。
 算術復号部206Bは、ステップS203において、コンテキストを選択し、ステップS204において、算術復号を行う。
 ステップS205において、コンテキスト値更新部206C及びコンテキスト選択部206Eは、コンテキスト値を更新し、ステップS206において、多値化部206Fは、多値化を行う。
 多値化部206Fは、ステップS207において、全ての復号が完了したか否かについて判定する。Yesの場合、本動作は、ステップS208に進み、Noの場合、本動作は、ステップS203に戻る。
 ステップS208において、多値化部206Fは、コンテキスト値を退避させる。
(ビットストリーム構成)
 以下、図14を参照して、変位量のビットストリームの構成の一例について説明する。
 第1に、ビットストリームは、変位量の復号に関する制御情報の集合であるDPS(ディスプレイスメントパラメータセット)を含んでいてもよい。
 第2に、ビットストリームは、フレームに対応する制御情報の集合であるフレームヘッダを含んでいてもよい。
 第3に、ビットストリームは、フレームヘッダの次に、フレームを構成する符号化された変位量を含んでいてもよい。
 以上のように、ビットストリームは、各符号化された変位量に、1つずつフレームヘッダ及びDPSが対応する構成となる。
 なお、図14に示す構成は、あくまで一例である。各符号化された変位量に、フレームヘッダ及びDPSが対応する構成となっていれば、ビットストリームの構成要素として、上述以外の要素が追加されてもよい。例えば、図14に示すように、ビットストリームは、SPS(シーケンスパラメータセット)を含んでいてもよい。
 本実施形態に係るメッシュ復号装置200によれば、変位量の係数レベル値列を周波数領域で分割し、絶対値が小さい係数を示すシンタックスを導入し、さらに、各周波数領域において異なるコンテキストモデルを構築することで、符号化効率の符号化効率を向上させることができる。
 上述のメッシュ符号化装置100及びメッシュ復号装置200は、コンピュータに各機能(各工程)を実行させるプログラムであって実現されていてもよい。
 なお、本実施形態によれば、例えば、動画像通信において総合的なサービス品質の向上を実現できることから、国連が主導する持続可能な開発目標(SDGs)の目標9「レジリエントなインフラを整備し、持続可能な産業化を推進するとともに、イノベーションの拡大を図る」に貢献することが可能となる。
1…メッシュ処理システム
100…メッシュ符号化装置
200…メッシュ復号部
201…多重分離部
202…基本メッシュ復号部
203…細分割部
204…メッシュ復号部
205…パッチ統合部
206…変位量復号部
206A…制御情報復号部
206B…算術復号部
206C…コンテキスト値更新部
206D…コンテキストバッファ
206E…コンテキスト選択部
206F…多値化部
206F2…係数レベル値復号部
206G…インター予測部
206H…フレームバッファ
206I…加算器
206J…逆量子化部
206K…逆ウェーブレット変換部
207…映像復号部
 
 

Claims (6)

  1.  メッシュ復号装置であって、
     変位量ビットストリームを復号して変位量を生成して出力するように構成されている変位量復号部を備え、
     前記変位量復号部は、
      前記変位量ビットストリームに対して算術復号を行うことによって、2値化シンタックスを生成するように構成されている算術復号部と、
      前記2値化シンタックスを用いて、コンテキスト値を更新するように構成されているコンテキスト値更新部と、
      前記コンテキスト値、ビット位置及びシンタックスを取得して蓄積するように構成されているコンテキストバッファと、
      前記コンテキストバッファから読み出された前記コンテキスト値、前記ビット位置及び前記シンタックスを用いて、出力用コンテキスト値を生成するように構成されているコンテキスト選択部と、
      前記2値化シンタックスを多値化することによって、前記シンタックスを生成して前記コンテキストバッファに出力するように構成されている多値化部と、
      前記シンタックスから係数レベル値を生成するように構成されている係数レベル値復号部と、
      前記係数レベル値を逆量子化することによって、変換係数を生成するように構成されている逆量子化部と、
      前記変換係数に対して逆ウェーブレット変換を施すことによって予測残差を生成するように構成されている逆ウェーブレット変換部と、を備えることを特徴とするメッシュ復号装置。
  2.  前記算術復号部は、ブロック単位で、前記2値化シンタックスを復号するように構成されており、
     前記多値化部は、ブロック単位で、前記シンタックスを生成するように構成されており、
     前記係数レベル値復号部は、ブロック単位で、前記係数レベル値を生成するように構成されていることを特徴とする請求項1に記載のメッシュ復号装置。
  3.  前記係数レベル値復号部は、前記ブロック内に非零係数があることを示すフラグ、前記ブロック内においてスキャン順で先頭の非零係数の座標位置、復号対象の係数が前記非零係数かどうかを示すフラグ、前記非零係数の絶対値が2以上であるかどうかを示すフラグ、前記非零係数の絶対値が3以上であるかどうかを示すフラグ、前記非零係数の正負符号を示すフラグ、前記非零係数の絶対値から3を引いた値を用いて、前記係数レベル値を生成するように構成されていることを特徴とする請求項2に記載のメッシュ復号装置。
  4.  前記コンテキスト選択部は、
      復号済みの右隣接ブロック内に非零係数があることを示すフラグに応じて、復号対象ブロックのコンテキスト番号を選択し、
      前記復号済みの右隣接ブロック内に非零係数があることを示すフラグに応じて、前記復号対象ブロック内の前記非零係数の正負符号を示すフラグのコンテキスト番号を選択し、
      前記復号済みの右隣接ブロック内に絶対値が2以上の係数がある場合は、前記復号対象ブロック内の非零係数の絶対値のコンテキスト番号を選択するように構成されていることを特徴とする請求項3に記載のメッシュ復号装置。
  5.  メッシュ復号方法であって、
     変位量ビットストリームを復号して変位量を生成して出力する工程を備え、
     前記工程は、
      前記変位量ビットストリームに対して算術復号を行うことによって、2値化シンタックスを生成する工程と、
      前記2値化シンタックスを用いて、コンテキスト値を更新する工程と、
      前記コンテキスト値、ビット位置及びシンタックスを取得してコンテキストバッファに蓄積する工程と、
      前記コンテキストバッファから読み出された前記コンテキスト値、前記ビット位置及び前記シンタックスを用いて、出力用コンテキスト値を生成する工程と、
      前記2値化シンタックスを多値化することによって、前記シンタックスを生成して前記コンテキストバッファに出力する工程と、
      前記シンタックスから係数レベル値を生成する工程と、
      前記係数レベル値を逆量子化することによって、変換係数を生成する工程と、
      前記変換係数に対して逆ウェーブレット変換を施すことによって予測残差を生成する工程と、を有することを特徴とするメッシュ復号方法。
  6.  コンピュータを、メッシュ復号装置として機能させるプログラムであって、
     前記メッシュ復号装置は、変位量ビットストリームを復号して変位量を生成して出力するように構成されている変位量復号部を備え、
     前記変位量復号部は、
      前記変位量ビットストリームに対して算術復号を行うことによって、2値化シンタックスを生成するように構成されている算術復号部と、
      前記2値化シンタックスを用いて、コンテキスト値を更新するように構成されているコンテキスト値更新部と、
      前記コンテキスト値、ビット位置及びシンタックスを取得して蓄積するように構成されているコンテキストバッファと、
      前記コンテキストバッファから読み出された前記コンテキスト値、前記ビット位置及び前記シンタックスを用いて、出力用コンテキスト値を生成するように構成されているコンテキスト選択部と、
      前記2値化シンタックスを多値化することによって、前記シンタックスを生成して前記コンテキストバッファに出力するように構成されている多値化部と、
     前記シンタックスから係数レベル値を生成するように構成されている係数レベル値復号部と、
      前記係数レベル値を逆量子化することによって、変換係数を生成するように構成されている逆量子化部と、
      前記変換係数に対して逆ウェーブレット変換を施すことによって予測残差を生成するように構成されている逆ウェーブレット変換部と、を備えることを特徴とするプログラム。
PCT/JP2023/029764 2022-10-13 2023-08-17 メッシュ復号装置、メッシュ符号化装置、メッシュ復号方法及びプログラム WO2024079984A1 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2022165086A JP2024058010A (ja) 2022-10-13 2022-10-13 メッシュ復号装置、メッシュ符号化装置、メッシュ復号方法及びプログラム
JP2022-165086 2022-10-13

Publications (1)

Publication Number Publication Date
WO2024079984A1 true WO2024079984A1 (ja) 2024-04-18

Family

ID=90669526

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2023/029764 WO2024079984A1 (ja) 2022-10-13 2023-08-17 メッシュ復号装置、メッシュ符号化装置、メッシュ復号方法及びプログラム

Country Status (2)

Country Link
JP (1) JP2024058010A (ja)
WO (1) WO2024079984A1 (ja)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2013065702A1 (ja) * 2011-11-04 2013-05-10 シャープ株式会社 算術復号装置、画像復号装置、算術符号化装置、画像符号化装置、および、算術復号方法
WO2019176319A1 (ja) * 2018-03-12 2019-09-19 キヤノン株式会社 画像符号化装置、画像復号装置、及び、画像符号化方法、画像復号方法並びにプログラム
US20210209806A1 (en) * 2019-10-07 2021-07-08 Lg Electronics Inc. Point cloud data transmission device, point cloud data transmission method, point cloud data reception device, and point cloud data reception method
JP2021530889A (ja) * 2018-06-26 2021-11-11 ホアウェイ・テクノロジーズ・カンパニー・リミテッド 点群符号化用の高レベルな構文設計

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2013065702A1 (ja) * 2011-11-04 2013-05-10 シャープ株式会社 算術復号装置、画像復号装置、算術符号化装置、画像符号化装置、および、算術復号方法
WO2019176319A1 (ja) * 2018-03-12 2019-09-19 キヤノン株式会社 画像符号化装置、画像復号装置、及び、画像符号化方法、画像復号方法並びにプログラム
JP2021530889A (ja) * 2018-06-26 2021-11-11 ホアウェイ・テクノロジーズ・カンパニー・リミテッド 点群符号化用の高レベルな構文設計
US20210209806A1 (en) * 2019-10-07 2021-07-08 Lg Electronics Inc. Point cloud data transmission device, point cloud data transmission method, point cloud data reception device, and point cloud data reception method

Also Published As

Publication number Publication date
JP2024058010A (ja) 2024-04-25

Similar Documents

Publication Publication Date Title
JP7100836B2 (ja) エントロピー符号化におけるコンテキスト初期化
JP7227283B2 (ja) 変換係数符号化
KR102391908B1 (ko) 비디오 신호를 인코딩, 디코딩하는 방법 및 장치
US7385535B2 (en) Decoding system and method based on context-based adaptive binary arithmetic coding
KR20190091426A (ko) 쿼드 트리를 이용한 블록 정보 부/복호화 방법 및 이러한 방법을 사용하는 장치
WO2013070604A1 (en) Progressive coding of position of last significant coefficient
WO2024079984A1 (ja) メッシュ復号装置、メッシュ符号化装置、メッシュ復号方法及びプログラム
KR100989686B1 (ko) 데이터 소스에 의해 생성된 비트 심볼들을 처리하기 위한 방법 및 장치, 컴퓨터 판독가능 매체, 컴퓨터 프로그램 요소
KR20120071253A (ko) 무손실 부호화를 위한 엔트로피 부호화 방법 및 엔트로피 부호화기