Deprecated: The each() function is deprecated. This message will be suppressed on further calls in /home/zhenxiangba/zhenxiangba.com/public_html/phproxy-improved-master/index.php on line 456
JP7712890B2 - Mesh decoding device, mesh encoding device, mesh decoding method and program - Google Patents
[go: Go Back, main page]

JP7712890B2 - Mesh decoding device, mesh encoding device, mesh decoding method and program - Google Patents

Mesh decoding device, mesh encoding device, mesh decoding method and program

Info

Publication number
JP7712890B2
JP7712890B2 JP2022067448A JP2022067448A JP7712890B2 JP 7712890 B2 JP7712890 B2 JP 7712890B2 JP 2022067448 A JP2022067448 A JP 2022067448A JP 2022067448 A JP2022067448 A JP 2022067448A JP 7712890 B2 JP7712890 B2 JP 7712890B2
Authority
JP
Japan
Prior art keywords
mesh
polygons
patch
post
decoding
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.)
Active
Application number
JP2022067448A
Other languages
Japanese (ja)
Other versions
JP2023157503A (en
Inventor
建鋒 徐
賢史 小森田
恭平 海野
圭 河村
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
KDDI Corp
Original Assignee
KDDI Corp
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 Corp filed Critical KDDI Corp
Priority to JP2022067448A priority Critical patent/JP7712890B2/en
Publication of JP2023157503A publication Critical patent/JP2023157503A/en
Application granted granted Critical
Publication of JP7712890B2 publication Critical patent/JP7712890B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Image Generation (AREA)

Description

本発明は、メッシュ復号装置、メッシュ符号化装置、メッシュ復号方法及びプログラムに関する。 The present invention relates to a mesh decoding device, a mesh encoding device, a mesh decoding method, and a program.

非特許文献1には、ビデオベースの点群を符号化するという非特許文献2の技術を拡張し、非特許文献3で定義したDynamic meshを符号化する技術が開示されている。 Non-Patent Document 1 discloses a technique for encoding the dynamic mesh defined in Non-Patent Document 3 by extending the technique in Non-Patent Document 2, which encodes a video-based point cloud.

Graziosi, Danillo Bracco. "Video-Based Dynamic Mesh Coding." 2021 IEEE International Conference on Image Processing (ICIP). IEEE, 2021.Graziosi, Danillo Bracco. "Video-Based Dynamic Mesh Coding." 2021 IEEE International Conference on Image Processing (ICIP). IEEE, 2021. ISO/IEC FDIS 23090-5:2020, Information technology -Coded representation of immersive media - Part 5: Visual Volumetric Video-based Coding (V3C) and Video-based Point Cloud Compression (V-PCC).ISO/IEC FDIS 23090-5:2020, Information technology -Coded representation of immersive media - Part 5: Visual Volumetric Video-based Coding (V3C) and Video-based Point Cloud Compression (V-PCC). CfP for Dynamic Mesh Coding,ISO/IEC JTC1/SC29/WG7 N00231, MPEG136 - OnLine.CfP for Dynamic Mesh Coding, ISO/IEC JTC1/SC29/WG7 N00231, MPEG136 - OnLine. Rossignac, Jarek. "Edgebreaker: Connectivity compression for triangle meshes." IEEE transactions on visualization and computer graphics 5.1 (1999): 47-61.Rossignac, Jarek. "Edgebreaker: Connectivity compression for triangle meshes." IEEE transactions on visualization and computer graphics 5.1 (1999): 47-61.

しかしながら、非特許文献1に開示されているビデオベースのメッシュ符号化技術では、メッシュのポリゴン数が単一であるので、低ビットレートから高ビットレートまで幅広いビットレート範囲に最適化が困難であるという問題点があった。 そこで、本発明は、上述の課題に鑑みてなされたものであり、メッシュの符号化効率を向上させることができるメッシュ復号装置、メッシュ符号化装置、メッシュ復号方法及びプログラムを提供することを目的とする。 However, the video-based mesh coding technology disclosed in Non-Patent Document 1 has a problem in that the number of polygons in a mesh is uniform, making it difficult to optimize for a wide range of bit rates, from low to high. Therefore, the present invention has been made in consideration of the above-mentioned problems, and aims to provide a mesh decoding device, mesh coding device, mesh decoding method, and program that can improve the efficiency of mesh coding.

本発明の第1の特徴は、メッシュ復号装置であって、符号化されたビットストリームから、各パッチにおいてメッシュを復号し、各パッチにおけるポリゴン数を示す変数に基づいて、前記メッシュにおいて元のポリゴン数を再建するように構成されているメッシュ復号部と、隣接する前記パッチの前記メッシュに対する後処理を実施するように構成されているメッシュ後処理部とを備えることを要旨とする。 The first feature of the present invention is a mesh decoding device comprising a mesh decoding unit configured to decode a mesh in each patch from an encoded bitstream and reconstruct the original number of polygons in the mesh based on a variable indicating the number of polygons in each patch, and a mesh post-processing unit configured to perform post-processing on the mesh of an adjacent patch.

本発明の第2の特徴は、メッシュ符号化装置であって、前記パッチ毎に、ポリゴン数が異なる複数のメッシュを生成するように構成されているメッシュ生成部を備えることを要旨とする。 The second feature of the present invention is a mesh coding device that includes a mesh generation unit configured to generate multiple meshes with different numbers of polygons for each patch.

本発明の第3の特徴は、メッシュ復号方法であって、符号化されたビットストリームから、各パッチにおいてメッシュを復号し、各パッチにおけるポリゴン数を示す変数に基づいて、前記メッシュにおいて元のポリゴン数を再建する工程と、隣接する前記パッチの前記メッシュに対する後処理を実施する工程とを有することを要旨とする。 The third feature of the present invention is a mesh decoding method, which includes the steps of decoding a mesh in each patch from an encoded bitstream, reconstructing the original number of polygons in the mesh based on a variable indicating the number of polygons in each patch, and performing post-processing on the mesh of an adjacent patch.

本発明の第4の特徴は、コンピュータを、メッシュ復号装置として機能させるプログラムであって、前記メッシュ復号装置は、符号化されたビットストリームから、各パッチにおいてメッシュを復号し、各パッチにおけるポリゴン数を示す変数に基づいて、前記メッシュにおいて元のポリゴン数を再建するように構成されているメッシュ復号部と、隣接する前記パッチの前記メッシュに対する後処理を実施するように構成されているメッシュ後処理部とを具備することを要旨とする。 The fourth 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 mesh decoding unit configured to decode a mesh in each patch from an encoded bitstream and reconstruct the original number of polygons in the mesh based on a variable indicating the number of polygons in each patch, and a mesh post-processing unit configured to perform post-processing on the mesh of an adjacent patch.

本発明によれば、メッシュの符号化効率を向上させることができるメッシュ復号装置、メッシュ符号化装置、メッシュ復号方法及びプログラムを提供することができる。 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.

図1は、一実施形態に係るメッシュ符号化装置100の機能ブロックの一例を示す図である。FIG. 1 is a diagram showing an example of functional blocks of a mesh encoding device 100 according to an embodiment. 図2は、一実施形態に係るメッシュ復号装置200のメッシュ生成部202によってメッシュが簡略化されテキスチャー画像及びUV座標が修正される様子の一例を示す図である。FIG. 2 is a diagram showing an example of how a mesh is simplified and a texture image and UV coordinates are modified by a mesh generating unit 202 of a mesh decoding device 200 according to an embodiment. 図3は、一実施形態に係るメッシュ復号装置200のメッシュ生成部202によってedge collapse用いてエッジが削減される様子の一例を示す図である。FIG. 3 is a diagram showing an example of how edges are reduced using edge collapse by the mesh generation unit 202 of the mesh decoding device 200 according to an embodiment. 図4は、一実施形態に係るメッシュ復号装置200の機能ブロックの一例を示す図である。FIG. 4 is a diagram showing an example of functional blocks of a mesh decoding device 200 according to an embodiment. 図5は、一実施形態に係るメッシュ復号装置200のメッシュ後処理部202によって隣接するパッチ間におけるエッジ不足の問題が解決される様子の一例を示す図である。FIG. 5 is a diagram showing an example of how the problem of insufficient edges between adjacent patches is solved by the mesh post-processing unit 202 of the mesh decoding device 200 according to an embodiment. 図6は、一実施形態に係るメッシュ復号装置200のメッシュ後処理部202によってzippering algorithmを用いて境界L1におけるギャップが埋められる様子の一例を示す図である。FIG. 6 is a diagram showing an example of how gaps at the boundary L1 are filled using a zippering algorithm by the mesh post-processing unit 202 of the mesh decoding device 200 according to an embodiment.

以下、本発明の実施の形態について、図面を参照しながら説明する。なお、以下の実施形態における構成要素は、適宜、既存の構成要素等との置き換えが可能であり、また、他の既存の構成要素との組み合わせを含む様々なバリエーションが可能である。したがって、以下の実施形態の記載をもって、特許請求の範囲に記載された発明の内容を限定するものではない。 The following describes embodiments of the present invention with reference to the drawings. Note that the components in the following embodiments can be replaced with existing components as appropriate, and various variations, including combinations with other existing components, are possible. Therefore, the description of the following embodiments does not limit the content of the invention described in the claims.

<第1実施形態>
以下、図1~図6を参照して、本実施形態に係るメッシュ符号化装置100及びメッシュ復号装置200について説明する。図1は、本実施形態に係るメッシュ符号化装置100の機能ブロックの一例について示す図であり、図2は、本実施形態に係るメッシュ復号装置200の機能ブロックの一例について示す図である。
First Embodiment
Hereinafter, a mesh encoding device 100 and a mesh decoding device 200 according to this embodiment will be described with reference to Fig. 1 to Fig. 6. Fig. 1 is a diagram showing an example of a functional block of the mesh encoding device 100 according to this embodiment, and Fig. 2 is a diagram showing an example of a functional block of the mesh decoding device 200 according to this embodiment.

メッシュ符号化装置100は、非特許文献3で定義したDynamic meshを符号化するように構成されている。 The mesh encoding device 100 is configured to encode the dynamic mesh defined in Non-Patent Document 3.

Dynamic meshの特徴は、各フレームのメッシュにおいて頂点の数や三角形の繋がり(Connectivity)が異なることである。 The characteristic of a dynamic mesh is that the number of vertices and the connectivity of triangles are different in the mesh of each frame.

また、低ビットレート(例えば、2Mbps程度)から高ビットレート(例えば、32Mbps程度)までの範囲をカバーするため、非特許文献3のアンカーは、元のメッシュから5K、10K、15K、20K、25Kのメッシュを作って、元のメッシュと合わせて6段階のメッシュを用意し、ビットレートにより最適なメッシュを選ぶ。一般的に、低ビットレートの場合は、ポリゴン数が少ないメッシュを符号化し、逆に、高ビットレートの場合は、ポリゴン数が多いメッシュを符号化する。 In addition, to cover a range from low bit rates (e.g., about 2 Mbps) to high bit rates (e.g., about 32 Mbps), the anchor in Non-Patent Document 3 creates meshes of 5K, 10K, 15K, 20K, and 25K from the original mesh, preparing six levels of mesh in combination with the original mesh, and then selects the optimal mesh based on the bit rate. In general, for low bit rates, meshes with a small number of polygons are coded, and conversely, for high bit rates, meshes with a large number of polygons are coded.

図1に示すように、メッシュ符号化装置100は、セグメンテーション部101と、メッシュ生成部102と、メッシュ符号化部103とを有する。 As shown in FIG. 1, the mesh coding device 100 includes a segmentation unit 101, a mesh generation unit 102, and a mesh coding unit 103.

セグメンテーション部101は、メッシュをセグメンテーションし、パッチを生成するように構成されている。 The segmentation unit 101 is configured to segment the mesh and generate patches.

具体的には、セグメンテーション部101は、図1に示すように、「Texture map PNG」及び「Mesh OBJ」に基づいて、パッチを生成するように構成されている。 Specifically, as shown in FIG. 1, the segmentation unit 101 is configured to generate patches based on "Texture map PNG" and "Mesh OBJ".

なお、「Texture map PNG」は、非特許文献3に規定されている「Attribute maps」を含み、「Mesh OBJ」は、非特許文献3に規定されている「Connectivity Information」、「Geometry Information」及び「Mapping Information」を含む。 Note that "Texture map PNG" includes "Attribute maps" defined in Non-Patent Document 3, and "Mesh OBJ" includes "Connectivity Information", "Geometry Information", and "Mapping Information" defined in Non-Patent Document 3.

ここで、セグメンテーション部101は、非特許文献1に規定されているセグメンテーション手法を利用するように構成されていてもよい。かかる場合、セグメンテーション部101は、以下の式(1)によって、元のメッシュMallをN個のパッチに分けるように構成されている。 Here, the segmentation unit 101 may be configured to utilize the segmentation method defined in Non-Patent Document 1. In this case, the segmentation unit 101 is configured to divide the original mesh M all into N patches according to the following formula (1):

メッシュ生成部102は、パッチ毎でポリゴン数が異なる複数のメッシュ(テキスチャー情報を含む)を生成するように構成されている。ここで、テキスチャー情報は、「Texture map PNG」の全部又は一部である。 The mesh generating unit 102 is configured to generate a plurality of meshes (including texture information) with different numbers of polygons for each patch. Here, the texture information is all or part of a "Texture map PNG".

例えば、メッシュ生成部102は、元のメッシュから、ポリゴン数が1/2、1/4及び1/8であるメッシュを生成し、ポリゴン数を示す変数fを0、1、2、3にするように構成されている。ここで、変数fは、0である場合、元のポリゴン数を示し、1である場合、元のメッシュの1/2のポリゴン数を示し、2である場合、元のメッシュの1/4のポリゴン数を示し、3である場合、元のメッシュの1/8のポリゴン数を示す。 For example, the mesh generation unit 102 is configured to generate meshes with 1/2, 1/4, and 1/8 the number of polygons from the original mesh, and set the variable f indicating the number of polygons to 0, 1, 2, or 3. Here, when the variable f is 0, it indicates the original number of polygons, when it is 1, it indicates 1/2 the number of polygons of the original mesh, when it is 2, it indicates 1/4 the number of polygons of the original mesh, and when it is 3, it indicates 1/8 the number of polygons of the original mesh.

また、メッシュ生成部102は、変数fとポリゴン数とを対応付ける対応表を用いてもよい。例えば、変数fは、0である場合、元のポリゴン数を示し、1である場合、元のメッシュの9割のポリゴン数を示し、2である場合、元のメッシュの8割のポリゴン数を示し、3である場合、元のメッシュの7割のポリゴン数を示す。 The mesh generating unit 102 may also use a correspondence table that associates the variable f with the number of polygons. For example, when the variable f is 0, it indicates the original number of polygons, when it is 1, it indicates 90% of the number of polygons in the original mesh, when it is 2, it indicates 80% of the number of polygons in the original mesh, and when it is 3, it indicates 70% of the number of polygons in the original mesh.

具体的には、メッシュ生成部102は、以下の手順で、かかる複数のメッシュを生成するように構成されていてもよい。 Specifically, the mesh generator 102 may be configured to generate such multiple meshes in the following manner:

メッシュ生成部102は、1つのパッチMに対して、元のポリゴン数F origの1、1/2、1/4、1/8(或いは、10割、9割、8割、7割)にする場合、以下の手順を実施するように構成されている。 The mesh generating unit 102 is configured to carry out the following procedure when reducing the number of polygons F i orig to 1, 1/2, 1/4, or 1/8 (or 100%, 90%, 80%, or 70%) of the original number of polygons F i orig for one patch M i .

ステップ1として、メッシュ生成部102は、削除すべきエッジを選定するように構成されている。 In step 1, the mesh generation unit 102 is configured to select edges to be deleted.

メッシュ生成部102は、図2に示すように、あるエッジuv(三角形の一辺)のコストを算出し、対象エッジの中からコストが最も小さいエッジを選定するように構成されている。 As shown in FIG. 2, the mesh generation unit 102 is configured to calculate the cost of an edge u v (one side of a triangle) and select the edge with the smallest cost from among the target edges.

ここで、コストの定義は、エッジを削除した場合の視覚的な変化の大きさである。つまり、平坦な領域のポリゴンのエッジ又は短くて細かいエッジのコストが低い。 Here, the cost is defined as the magnitude of the visual change when an edge is removed. In other words, polygon edges in flat areas or short, fine edges have a low cost.

具体的に、メッシュ生成部102は、式(2)で、エッジのコストcost(u,v)を算出するように構成されている。 Specifically, the mesh generation unit 102 is configured to calculate the cost of an edge, cost(u, v), using equation (2).

ここで、Tは、頂点uを含むポリゴンの集合であり、Tuvは、頂点u及び頂点vを含むポリゴンの集合であり、||u-v||は、頂点uと頂点vとの間の距離(エッジuvの長さ)である。 Here, T u is the set of polygons that include vertex u, T uv is the set of polygons that include vertices u and v, and ||u-v|| is the distance between vertices u and v (the length of edge uv).

ステップ2として、メッシュ生成部102は、図3に示すように、edge collapseという操作を用いて、選定したエッジを削減することで、メッシュ(ポリゴン)の簡略化を行うように構成されている。 In step 2, the mesh generation unit 102 is configured to simplify the mesh (polygon) by reducing the selected edges using an operation called edge collapse, as shown in FIG. 3.

ここで、edge collapseは、図3(a)における頂点Vと頂点Vとの間のエッジを消去の対象とし、図3(b)に示すように、頂点Vと頂点Vとを結合する(頂点Vを削除する)操作である。このように、edge collapseを1回実施すると、ポリゴン数が2つ減ることになる。 Here, edge collapse is an operation that targets the edge between vertex Vt and vertex Vs in Fig. 3A as a target for deletion, and combines vertex Vt and vertex Vs (deletes vertex Vt ) as shown in Fig. 3B. In this way, performing edge collapse once reduces the number of polygons by two.

なお、図3(b)の状態を図3(a)の状態に変更することでメッシュ(ポリゴン)詳細化する操作を、vetrex splitと呼ぶ。 The operation of refining the mesh (polygon) by changing the state in Figure 3(b) to the state in Figure 3(a) is called vetrex split.

メッシュ生成部102は、元のメッシュのポリゴン数の1/2になるまで、図2及び図3に示す操作を繰り返して行うように構成されていてもよい。 The mesh generation unit 102 may be configured to repeat the operations shown in Figures 2 and 3 until the number of polygons in the original mesh is reduced to half.

更に、メッシュ生成部102は、元のメッシュのポリゴン数の1/4、更に、元のポリゴン数の1/8になるまで、かかる操作を繰り返して実施し、パッチM 及びM としてメッシュを保存するように構成されていてもよい。 Furthermore, the mesh generation unit 102 may be configured to repeatedly perform such operations until the number of polygons in the original mesh is reduced to 1/4, and then to 1/8 of the original number of polygons, and to store the meshes as patches M 2 i and M 3 i .

最後に、メッシュ生成部102は、元のポリゴン数F origの1、1/2、1/4、1/8(或いは、10割、9割、8割、7割)に対して、それぞれ変数fiを0、1、2、3とするように構成されている。 Finally, the mesh generator 102 is configured to set the variable fi to 0, 1, 2, and 3 for 1 , 1/2, 1/4, and 1/8 (or 100%, 90%, 80%, and 70%) of the original number of polygons F i orig, respectively.

なお、M 、M 、M 及びM のポリゴン数F は、以下の式(3)によって算出される。 The number of polygons F i k of M i 0 , M i 1 , M i 2 and M i 3 is calculated by the following formula (3).

パッチ符号化部103は、パッチ毎に、RDO(Rate Distortion Optimization)を用いて最適なメッシュを選んで符号化し、選択した最適なメッシュのポリゴン数を符号化してビットストリームに入れるように構成されている。 The patch encoding unit 103 is configured to select and encode an optimal mesh for each patch using RDO (Rate Distortion Optimization), encode the number of polygons in the selected optimal mesh, and insert the encoded number of polygons into a bit stream.

パッチ符号化部103は、各パッチでポリゴン数が異なる複数のメッシュM 、M 、M 及びM が用意されているため、その中から最適なメッシュを選択するように構成されている。 The patch encoding unit 103 is configured to select an optimal mesh from among a plurality of prepared meshes M i 0 , M i 1 , M i 2 and M i 3 , each having a different number of polygons in each patch.

例えば、パッチ符号化部103は、以下の式(4)によってコスト(Cost(M ))を算出し、以下の式(5)によってコスト(Cost(M ))が最も小さいメッシュを最適なメッシュとして選択し、対応する変数f optを記録するように構成されている。 For example, the patch encoding unit 103 is configured to calculate the cost (Cost(M i f )) using the following equation (4), select the mesh having the smallest cost (Cost(M i f )) as the optimal mesh using the following equation (5), and record the corresponding variable f i opt .

Cost(M )=Rate(M )+λ・Distortion(M ) (4) Cost( Mif )=Rate ( Mif )+λ・Distortion( Mif ) ( 4)

ここで、Rate()は、符号化ビット数を算出する関数であり、Distortionは、誤差量を算出する関数であり、λは、事前に決められているパラメータである。 Here, Rate( ) is a function for calculating the number of encoding bits, Distortion is a function for calculating the amount of error, and λ is a parameter that is determined in advance.

パッチ符号化部103は、選択した最適なメッシュ及び対応する変数f optをビットストリームに入れるように構成されている。 The patch encoder 103 is configured to put the selected optimal mesh and the corresponding variable f i opt into the bitstream.

このように、ポリゴン数を直接に符号化するより、変数fを符号化する方が、符号化効率を高めることができる。ここで、変数fは、0、1、2、3である。 In this way, encoding the variable f i (where f i is 0, 1, 2, and 3) can improve encoding efficiency rather than directly encoding the number of polygons.

また、パッチ符号化部103は、選択したメッシュのポリゴン数について、以下の式(6)で、変数fから算出できる。 Furthermore, the patch encoding unit 103 can calculate the number of polygons of the selected mesh from the variable f i using the following equation (6).

ただし、F optは、第i番目のパッチで選択したメッシュのポリゴン数であり、F origは、第i番目のパッチにおける元のポリゴン数である。 where F i opt is the number of polygons of the selected mesh in the i-th patch, and F i orig is the original number of polygons in the i-th patch.

パッチ符号化部103は、非特許文献1の方式によって、各パッチで選択した最適なメッシュの頂点の座標、Connectivity及びテキスチャー情報を符号化するように構成されていてもよい。 The patch encoding unit 103 may be configured to encode the coordinates, connectivity, and texture information of the vertices of the optimal mesh selected for each patch using the method described in Non-Patent Document 1.

具体的には、非特許文献1の方式は、メッシュを入力とし、複数のパッチにセグメンテーションする。 Specifically, the method in Non-Patent Document 1 takes a mesh as input and segments it into multiple patches.

そして、非特許文献1の方式は、各パッチにおいて、頂点と頂点との間がエッジで繋がるため、三角形を単位で平面に射影する。 The method described in Non-Patent Document 1 projects triangles onto a plane because edges connect the vertices of each patch.

更に、非特許文献1の方式は、点群と比べて、三角形の射影がスパース的であるため、ラスタライズを用いてポリゴンをピクセルデータに変換し、非特許文献2に規定されているGeometry imageとして利用する。 Furthermore, since the projection of triangles is sparse compared to point clouds, the method of Non-Patent Document 1 uses rasterization to convert polygons into pixel data, which is then used as a Geometry Image as defined in Non-Patent Document 2.

ここで、Geometry imageは、非特許文献2に規定されているように、映像符号化技術で符号化される。また、点群がない情報としてのConnectivityは、非特許文献4のEdgebreakerを用いて符号化される。 Here, the Geometry Image is encoded using a video encoding technique as specified in Non-Patent Document 2. Also, Connectivity, which is information without a point group, is encoded using the Edgebreaker of Non-Patent Document 4.

パッチ符号化部103は、簡単のため、Geometry imageのみで、Rate及びDistortionを算出する。また、Connectivityは、Losslessであるため、Distortionはゼロである。 For simplicity, the patch encoding unit 103 calculates the rate and distortion using only the geometry image. Also, since connectivity is lossless, distortion is zero.

なお、パッチ符号化部103は、上述の式(4)のRate(M )(Geometry imageのみでRate)をカウンターする際に、各パッチで平面に射影し、ラスタライズしたGeometry imageを映像符号化技術で符号化するように構成されていてもよい。 Note that the patch encoding unit 103 may be configured to project each patch onto a plane and encode the rasterized geometry image using a video encoding technique when counting Rate(M f i ) (Rate using only the Geometry image) in the above-mentioned formula (4).

かかる映像符号化技術では、パッチ毎に、符号量を制御するQ値を設定することが可能である。かかる映像符号化技術において、大きいQ値を使うと、小さい符号量になる。 In this video coding technology, it is possible to set a Q value that controls the amount of code for each patch. In this video coding technology, using a large Q value results in a small amount of code.

パッチ符号化部103は、かかるパッチ毎のQ値について、以下のステップで設定することができる。 The patch encoding unit 103 can set the Q value for each patch in the following steps:

ステップ1として、パッチ符号化部103は、全体の符号量を各パッチの大きさに比率して該当パッチに割り当て、割り当てられた符号量によりQ値の初期値Q1 を設定する。 In step 1, the patch encoding unit 103 allocates the total code amount to each patch in proportion to the size of the patch, and sets an initial value Q1 f i of the Q value based on the allocated code amount.

ステップ2として、パッチ符号化部103は、該当パッチの該当メッシュM のポリゴン数によりQ値の初期値Q1 をQ2 に調整する。基本的に、パッチ符号化部103は、ポリゴン数が多い場合、小さいQ値となるように調整する。 In step 2, the patch encoding unit 103 adjusts the initial value Q1f i of the Q value to Q2f i based on the number of polygons of the corresponding mesh Mf i of the corresponding patch. Basically, when the number of polygons is large, the patch encoding unit 103 adjusts the Q value to a small value.

ステップ3として、パッチ符号化部103は、視聴者の視点や視線に応じて表示されるパッチや表示されないパッチがあるため、該当パッチが見える度合いにより、Q2 を、最終Q値であるQ3 に調整する。基本的に、パッチ符号化部103は、表示されないパッチであれば、大きいQ値となるように調整する。 In step 3, since some patches are displayed and some are not displayed depending on the viewer's viewpoint or line of sight, the patch encoding unit 103 adjusts Q2 f i to Q3 f i , which is the final Q value, depending on the visibility of the corresponding patch. Basically, the patch encoding unit 103 adjusts the Q value to a larger value for patches that are not displayed.

図4に示すように、メッシュ復号装置200は、メッシュ復号部201と、メッシュ後処理部202とを具備している。 As shown in FIG. 4, the mesh decoding device 200 includes a mesh decoding unit 201 and a mesh post-processing unit 202.

メッシュ復号部201は、非特許文献1の方式で、各パッチにおいて、メッシュ(具体的には、頂点の座標、Connectivity及びテキスチャー情報)を復号し、各パッチで選択した変数fに基づいて、復号したメッシュにおいて元のポリゴン数を再建するように構成されている。 The mesh decoding unit 201 is configured to decode a mesh (specifically, vertex coordinates, connectivity, and texture information) in each patch in the manner described in Non-Patent Document 1, and to reconstruct the original number of polygons in the decoded mesh based on the variable f i selected in each patch.

メッシュ復号部201は、以下の式(7)によって、上述の元のポリゴン数(目標のポリゴン数)F origを算出するように構成されている。 The mesh decoding unit 201 is configured to calculate the above-mentioned original polygon count (target polygon count) F i orig by the following equation (7).

メッシュ復号部201は、1つのパッチMに対して、元のポリゴン数F origを再建した後、以下のステップを実施するように構成されていてもよい。 The mesh decoding unit 201 may be configured to perform the following steps after reconstructing the original polygon count F i orig for one patch M i :

ステップ1として、メッシュ復号部201は、パッチMにおいて、分割する頂点を選定するように構成されている。 As step 1, the mesh decoding unit 201 is configured to select vertices to be divided in a patch M i .

ここで、メッシュ復号部201は、上述のようにメッシュ生成部102で定義されたエッジのコストを利用するように構成されている。 Here, the mesh decoding unit 201 is configured to use the edge costs defined by the mesh generation unit 102 as described above.

メッシュ復号部201は、図2に示すように、あるエッジuv(三角形の一辺)のコストを算出し、パッチMの中からコストが最も大きいエッジを選定するように構成されている。 As shown in FIG. 2, the mesh decoding unit 201 is configured to calculate the cost of an edge uv (one side of a triangle) and select the edge with the highest cost from within the patch M i .

ここで、メッシュ復号部201は、平坦ではない領域のポリゴン又は面積が大きいポリゴンのエッジに頂点を追加するように構成されている。 Here, the mesh decoding unit 201 is configured to add vertices to edges of polygons in non-flat regions or polygons with large areas.

メッシュ復号部201は、選んだエッジの2つの頂点から境界ではない頂点の任意の1つを操作対象の頂点として選定するように構成されている。メッシュ復号部201は、両方が境界の頂点であれば、エッジのコストをゼロにしてステップ1を繰り返す。 The mesh decoding unit 201 is configured to select any one of the two vertices of the selected edge that is not a boundary vertex as the vertex to be operated on. If both vertices are boundary vertices, the mesh decoding unit 201 sets the cost of the edge to zero and repeats step 1.

ステップ2として、メッシュ復号部201は、図3に示すvertex spritという操作を用いて、ステップ1で選定した頂点を分割するポリゴン詳細化を行うように構成されている。 In step 2, the mesh decoding unit 201 is configured to perform polygon refinement by splitting the vertices selected in step 1 using an operation called vertex split, as shown in FIG. 3.

vertex spritによれば、図3(b)の頂点Vを分割の対象とし、頂点Vと頂点Vとに分割し、頂点Vと頂点Vとの間、頂点Vと頂点Vとの間及び頂点Vと頂点Vとの間に、新しいエッジを作り、頂点Vと繋がった元のエッジe1及びe2を新しい頂点Vと繋げなおす。 According to vertex split, the vertex Vs in FIG. 3B is the target of division, and is divided into vertices Vt and Vs. New edges are created between the vertices Vt and Vs , between the vertices Vl and Vt , and between the vertices Vr and Vt. The original edges e1 and e2 connected to the vertex Vs are reconnected to the new vertex Vt .

メッシュ復号部201は、頂点を分割する際に、新たに生成される2つの頂点の座標の差分ベクトルについて、図2に示すエッジuvの長さの半分にするように構成されている。ここで、vertex spritが1回実施されと、ポリゴン数が2つ増える。 When splitting a vertex, the mesh decoding unit 201 is configured to set the difference vector between the coordinates of the two newly generated vertices to half the length of the edge uv shown in FIG. 2. Here, when a vertex split is performed once, the number of polygons increases by two.

メッシュ復号部201は、元のポリゴン数になるまで、上述のステップ1及びステップ2を繰り返して実施するように構成されている。 The mesh decoding unit 201 is configured to repeatedly perform steps 1 and 2 described above until the original number of polygons is reached.

メッシュ後処理部202は、隣接するパッチのメッシュに対する後処理を実施するように構成されている。 The mesh post-processing unit 202 is configured to perform post-processing on the meshes of adjacent patches.

具体的には、メッシュ後処理部202は、以下のステップを実施するように構成されている。 Specifically, the mesh post-processing unit 202 is configured to perform the following steps:

ステップ1として、パッチの境界のポリゴンは、エッジ不足が発生するため、メッシュ後処理部202は、境界のエッジ毎で、以下のような処理を実施するように構成されている。 In step 1, because the polygons at the boundary of the patch have insufficient edges, the mesh post-processing unit 202 is configured to perform the following processing for each boundary edge.

図5に示すパッチP1の境界であるL1が、処理対象のエッジであるものとする。ここで、実際には、パッチP1とパッチP2/P3とは接しているものとする。 L1, which is the boundary of patch P1 shown in Figure 5, is assumed to be the edge to be processed. Here, it is assumed that patch P1 and patches P2/P3 are actually in contact with each other.

ここで、メッシュ後処理部202は、境界L1から隣のパッチP2/P3のポリゴンの頂点V1~V3と最も近い頂点D1~D3を見つけるように構成されている。 Here, the mesh post-processing unit 202 is configured to find the vertices D1 to D3 that are closest to the vertices V1 to V3 of the polygon of the neighboring patch P2/P3 from the boundary L1.

次に、メッシュ後処理部202は、頂点D1~D3と最も近い頂点V1~V3の距離が閾値以内であれば、点線L11~L13を新しいエッジとして追加するように構成されている。 The mesh post-processing unit 202 is configured to add dotted lines L11 to L13 as new edges if the distance between the vertices D1 to D3 and the closest vertices V1 to V3 is within a threshold.

なお、メッシュ後処理部202は、全ての境界のエッジに対する本操作が終わったら、隣接するパッチ間におけるエッジ不足の問題を解決することできる。 Note that once the mesh post-processing unit 202 has completed this operation for all boundary edges, it can resolve the problem of insufficient edges between adjacent patches.

ステップ2として、Lossy compressionのため、図5に示すように、パッチP1とパッチP2/P3との境界L1でギャップ発生している場合、メッシュ後処理部202は、非特許文献1に規定されている技術と同様に、zippering algorithmを用いて、かかるギャップを埋めるように構成されていてもよい。 In step 2, if a gap occurs at the boundary L1 between patch P1 and patches P2/P3 as shown in FIG. 5 due to lossy compression, the mesh post-processing unit 202 may be configured to fill such gaps using a zippering algorithm, similar to the technique defined in Non-Patent Document 1.

かかる場合、メッシュ後処理部202は、図6に示すように、ギャップが生じる頂点のペア(図6の例では、頂点V1と頂点D1とのペア、頂点V2と頂点D2とのペア及び頂点V3と頂点D3とのペア)を見つけて、かかるペア同士の頂点を平均してマージするように構成されていてもよい。 In such a case, the mesh post-processing unit 202 may be configured to find pairs of vertices where gaps occur (in the example of FIG. 6, the pair of vertices V1 and D1, the pair of vertices V2 and D2, and the pair of vertices V3 and D3), as shown in FIG. 6, and to average and merge the vertices of such pairs.

上述のメッシュ符号化装置100及びメッシュ復号装置200は、コンピュータに各機能(各工程)を実行させるプログラムであって実現されていてもよい。 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).

なお、本実施形態によれば、例えば、動画像通信において総合的なサービス品質の向上を実現できることから、国連が主導する持続可能な開発目標(SDGs)の目標9「レジリエントなインフラを整備し、持続可能な産業化を推進するとともに、イノベーションの拡大を図る」に貢献することが可能となる。 In addition, according to this embodiment, for example, it is possible to realize an improvement in the overall service quality in video communication, which makes it possible to contribute to Goal 9 of the Sustainable Development Goals (SDGs) led by the United Nations, which is to "build resilient infrastructure, promote sustainable industrialization and foster innovation."

100…メッシュ符号化装置
101…セグメンテーション部
102…メッシュ生成部
103…メッシュ符号化部
200…メッシュ復号装置
201…メッシュ復号部
202…メッシュ後処理部
100... mesh encoding device 101... segmentation unit 102... mesh generation unit 103... mesh encoding unit 200... mesh decoding device 201... mesh decoding unit 202... mesh post-processing unit

Claims (8)

メッシュ復号装置であって、
符号化されたビットストリームから、各パッチにおいてメッシュを復号し、各パッチにおけるポリゴン数を示す変数に基づいて、前記メッシュにおいて元のポリゴン数を再建するように構成されているメッシュ復号部と、
隣接する前記パッチの前記メッシュに対する後処理を実施するように構成されているメッシュ後処理部とを備え
前記メッシュ復号部は、前記パッチ毎のポリゴン数を示す変数に基づいて、前記元のポリゴン数を算出し、算出した前記元のポリゴン数になるまで、Vertex spritを繰り返し実施するように構成されていることを特徴とするメッシュ復号装置。
A mesh decoding device, comprising:
a mesh decoder configured to decode a mesh in each patch from the encoded bitstream and reconstruct the original number of polygons in the mesh based on a variable indicating the number of polygons in each patch;
a mesh post-processing unit configured to perform post-processing on the mesh of the adjacent patch ;
The mesh decoding device is characterized in that the mesh decoding unit is configured to calculate the original number of polygons based on a variable indicating the number of polygons for each patch, and to repeatedly perform vertex split until the calculated original number of polygons is reached .
前記メッシュ復号部は、前記パッチにおけるエッジのコストを算出し、前記コストが最も大きいエッジからポリゴンを増やす操作を繰り返すように構成されていることを特徴とする請求項に記載のメッシュ復号装置。 2. The mesh decoding device according to claim 1 , wherein the mesh decoding unit is configured to calculate a cost of an edge in the patch, and repeat an operation of increasing polygons starting from the edge with the largest cost. メッシュ復号装置であって、
符号化されたビットストリームから、各パッチにおいてメッシュを復号し、各パッチにおけるポリゴン数を示す変数に基づいて、前記メッシュにおいて元のポリゴン数を再建するように構成されているメッシュ復号部と、
隣接する前記パッチの前記メッシュに対する後処理を実施するように構成されているメッシュ後処理部とを備え、
前記メッシュ後処理部は、前記パッチの境界でエッジ不足のポリゴンに対して新しいエッジを作るように構成されていることを特徴とするメッシュ復号装置。
A mesh decoding device, comprising:
a mesh decoder configured to decode a mesh in each patch from the encoded bitstream and reconstruct the original number of polygons in the mesh based on a variable indicating the number of polygons in each patch;
a mesh post-processing unit configured to perform post-processing on the mesh of the adjacent patch;
The mesh decoding device according to claim 1, wherein the mesh post-processing unit is configured to create new edges for polygons that lack edges at the boundaries of the patches.
前記メッシュ後処理部は、前記パッチの境界でzippering algorithmを用いてギャップが生じる頂点のペアを見つけて、前記ペア同士の頂点を平均してマージするように構成されていることを特徴とする請求項に記載のメッシュ復号装置。 The mesh decoding device according to claim 3, characterized in that the mesh post-processing unit is configured to find pairs of vertices that create gaps at the boundaries of the patches using a zippering algorithm, and to average and merge the vertices of the pairs . メッシュ復号方法であって、
符号化されたビットストリームから、各パッチにおいてメッシュを復号し、各パッチにおけるポリゴン数を示す変数に基づいて、前記メッシュにおいて元のポリゴン数を再建する工程Aと、
隣接する前記パッチの前記メッシュに対する後処理を実施する工程Bとを有し、
前記工程Aにおいて、前記パッチ毎のポリゴン数を示す変数に基づいて、前記元のポリゴン数を算出し、算出した前記元のポリゴン数になるまで、Vertex spritを繰り返し実施することを特徴とするメッシュ復号方法。
A mesh decoding method, comprising:
A step A of decoding a mesh for each patch from the encoded bitstream and reconstructing the original number of polygons in said mesh based on a variable indicating the number of polygons in each patch;
and B. performing post-processing on the mesh of the adjacent patch ,
In the step A, the original number of polygons is calculated based on a variable indicating the number of polygons for each patch, and vertex split is repeatedly performed until the calculated original number of polygons is reached .
メッシュ復号方法であって、A mesh decoding method, comprising:
符号化されたビットストリームから、各パッチにおいてメッシュを復号し、各パッチにおけるポリゴン数を示す変数に基づいて、前記メッシュにおいて元のポリゴン数を再建する工程Aと、A step A of decoding a mesh for each patch from the encoded bitstream and reconstructing the original number of polygons in said mesh based on a variable indicating the number of polygons in each patch;
隣接する前記パッチの前記メッシュに対する後処理を実施する工程Bとを有し、and step B performing post-processing on the mesh of the adjacent patch,
前記工程Bにおいて、前記パッチの境界でエッジ不足のポリゴンに対して新しいエッジを作ることを特徴とするメッシュ復号方法。A mesh decoding method, characterized in that in the step B, new edges are created for polygons that lack edges at the boundaries of the patches.
コンピュータを、メッシュ復号装置として機能させるプログラムであって、
前記メッシュ復号装置は、
符号化されたビットストリームから、各パッチにおいてメッシュを復号し、各パッチにおけるポリゴン数を示す変数に基づいて、前記メッシュにおいて元のポリゴン数を再建するように構成されているメッシュ復号部と、
隣接する前記パッチの前記メッシュに対する後処理を実施するように構成されているメッシュ後処理部とを具備し、
前記メッシュ復号部は、前記パッチ毎のポリゴン数を示す変数に基づいて、前記元のポリゴン数を算出し、算出した前記元のポリゴン数になるまで、Vertex spritを繰り返し実施するように構成されていることを特徴とするプログラム。
A program for causing a computer to function as a mesh decoding device, comprising:
The mesh decoding device comprises:
a mesh decoder configured to decode a mesh in each patch from the encoded bitstream and reconstruct the original number of polygons in the mesh based on a variable indicating the number of polygons in each patch;
a mesh post-processing unit configured to perform post-processing on the mesh of the adjacent patch ;
the mesh decoding unit is configured to calculate the original number of polygons based on a variable indicating the number of polygons for each patch, and to repeatedly perform vertex split until the calculated original number of polygons is reached .
コンピュータを、メッシュ復号装置として機能させるプログラムであって、A program for causing a computer to function as a mesh decoding device, comprising:
前記メッシュ復号装置は、The mesh decoding device comprises:
符号化されたビットストリームから、各パッチにおいてメッシュを復号し、各パッチにおけるポリゴン数を示す変数に基づいて、前記メッシュにおいて元のポリゴン数を再建するように構成されているメッシュ復号部と、a mesh decoder configured to decode a mesh in each patch from the encoded bitstream and reconstruct the original number of polygons in the mesh based on a variable indicating the number of polygons in each patch;
隣接する前記パッチの前記メッシュに対する後処理を実施するように構成されているメッシュ後処理部とを具備し、a mesh post-processing unit configured to perform post-processing on the mesh of the adjacent patch;
前記メッシュ後処理部は、前記パッチの境界でエッジ不足のポリゴンに対して新しいエッジを作るように構成されていることを特徴とするプログラム。The mesh post-processing unit is configured to create new edges for polygons that lack edges at the boundaries of the patches.
JP2022067448A 2022-04-15 2022-04-15 Mesh decoding device, mesh encoding device, mesh decoding method and program Active JP7712890B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2022067448A JP7712890B2 (en) 2022-04-15 2022-04-15 Mesh decoding device, mesh encoding device, mesh decoding method and program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2022067448A JP7712890B2 (en) 2022-04-15 2022-04-15 Mesh decoding device, mesh encoding device, mesh decoding method and program

Publications (2)

Publication Number Publication Date
JP2023157503A JP2023157503A (en) 2023-10-26
JP7712890B2 true JP7712890B2 (en) 2025-07-24

Family

ID=88469078

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2022067448A Active JP7712890B2 (en) 2022-04-15 2022-04-15 Mesh decoding device, mesh encoding device, mesh decoding method and program

Country Status (1)

Country Link
JP (1) JP7712890B2 (en)

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002501650A (en) 1998-01-30 2002-01-15 ユニバーシティー オブ サザン カリフォルニア 3D mesh compression and encoding
JP2006136021A (en) 1998-08-29 2006-05-25 Samsung Electronics Co Ltd Progressive encoding / decoding method and apparatus for three-dimensional mesh information
JP2007265459A (en) 1997-04-03 2007-10-11 Microsoft Corp Method and device for adaptive refinement of progressive mesh
US20100266216A1 (en) 2009-04-15 2010-10-21 Samsung Electronics Co., Ltd. Progressive mesh decoding apparatus and method
JP2021022122A (en) 2019-07-26 2021-02-18 キヤノン株式会社 Information processing apparatus, information processing method, data structure, and program
JP2023514853A (en) 2020-03-18 2023-04-11 ソニーグループ株式会社 projection-based mesh compression
WO2023181899A1 (en) 2022-03-25 2023-09-28 ソニーグループ株式会社 Information processing device and method

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007265459A (en) 1997-04-03 2007-10-11 Microsoft Corp Method and device for adaptive refinement of progressive mesh
JP2002501650A (en) 1998-01-30 2002-01-15 ユニバーシティー オブ サザン カリフォルニア 3D mesh compression and encoding
JP2006136021A (en) 1998-08-29 2006-05-25 Samsung Electronics Co Ltd Progressive encoding / decoding method and apparatus for three-dimensional mesh information
US20100266216A1 (en) 2009-04-15 2010-10-21 Samsung Electronics Co., Ltd. Progressive mesh decoding apparatus and method
JP2021022122A (en) 2019-07-26 2021-02-18 キヤノン株式会社 Information processing apparatus, information processing method, data structure, and program
JP2023514853A (en) 2020-03-18 2023-04-11 ソニーグループ株式会社 projection-based mesh compression
WO2023181899A1 (en) 2022-03-25 2023-09-28 ソニーグループ株式会社 Information processing device and method

Also Published As

Publication number Publication date
JP2023157503A (en) 2023-10-26

Similar Documents

Publication Publication Date Title
CN115428459B (en) Method, apparatus and system for video-based mesh compression
CN113939849B (en) Mesh compression via point cloud representation
JP5981566B2 (en) Method and apparatus for processing a bitstream representing a 3D model
JP5033261B2 (en) Low-complexity three-dimensional mesh compression apparatus and method using shared vertex information
CN117178297A (en) Microgrids, structured geometries used in computer graphics
RU2267161C2 (en) Method for encoding and decoding given three-dimensional objects and device for realization of said method
US12217465B2 (en) Method and apparatus for point cloud coding
JP2015504545A (en) Predictive position coding
CN101610411A (en) Method and system for video sequence hybrid encoding and decoding
CN118476223B (en) Dynamic mesh encoding for topology simplification
CN117157671A (en) Methods, encoder and decoder for encoding and decoding 3D point clouds
US20250148715A1 (en) Efficient geometry component coding for dynamic mesh coding
CN116848553A (en) A method for dynamic mesh compression based on 2D UV atlas sampling
CN119948527A (en) Method, encoder and decoder for encoding and decoding 3D point cloud
Chai et al. Depth map compression for real-time view-based rendering
CN121532801A (en) Methods for generating global displacement transformation in mesh compression
KR20240163635A (en) V-PCC based dynamic textured mesh coding without using occupancy maps
CN118369693A (en) Merge multiple property graphs
JP7712890B2 (en) Mesh decoding device, mesh encoding device, mesh decoding method and program
US20240135594A1 (en) Adaptive geometry filtering for mesh compression
EP4233006B1 (en) Devices and methods for spatial quantization for point cloud compression
JP7734112B2 (en) Mesh decoding device, mesh encoding device, mesh decoding method and program
CN116868572A (en) Methods, encoders and decoders for encoding and decoding 3D point clouds
US12412313B2 (en) Mesh geometry coding
WO2025152086A1 (en) Method and apparatus for coding a geometry of a point cloud, and data stream having encoded therein a geometry of a point cloud

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20240628

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20250423

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20250513

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20250623

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20250701

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20250711

R150 Certificate of patent or registration of utility model

Ref document number: 7712890

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150