Checking overlapping-free property for patches in mesh compression
Processing circuitry receive first UV coordinates associated with first vertices of a first patch and second UV coordinates associated with second vertices of a second patch. The first patch and the second patch are partitions from a three dimensional (3D) mesh, the 3D mesh represents a surface of an object with polygons and is partitioned into patches. The first patch includes the first vertices that are mapped to first two dimensional (2D) vertices of a first 2D patch in a 2D map according to the first UV coordinates, the second patch includes the second vertices that are mapped to second 2D vertices of a second 2D patch in the 2D map according to the second UV coordinates. The processing circuitry can apply various overlapping checking techniques on the first 2D patch and the second 2D patch.
1 . A method for mesh processing, comprising:
receiving, first UV coordinates associated with first vertices of a first patch and second UV coordinates associated with second vertices of a second patch, the first patch and the second patch being partitions from a three dimensional (3D) mesh, the 3D mesh representing a surface of an object with polygons and being partitioned into patches, the first patch comprising the first vertices that are mapped to first two dimensional (2D) vertices of a first 2D patch in a 2D map according to the first UV coordinates, the second patch comprising the second vertices that are mapped to second 2D vertices of a second 2D patch in the 2D map according to the second UV coordinates;
determining a first region that encompasses the first 2D patch in the 2D map, the first region being larger than the first 2D patch;
determining a second region that encompasses the second 2D patch in the 2D map, the second region being larger than the second 2D patch;
determining whether the first region and the second region are overlapping free based on first corner coordinates of the first region and second corner coordinates of the second region; and
determining whether the first 2D patch and the second 2D patch are overlapping free based on the first region and the second region, wherein:
when the first 2D patch is an enlarged first 2D patch from a first initial 2D patch and the second 2D patch is an enlarged second 2D patch from a second initial 2D patch, the first 2D patch and the second 2D patch are determined to be overlapped when a square region corresponding to a corner pixel of the first initial 2D patch intersects a boundary edge of the second initial 2D patch.
2 . The method of claim 1 , wherein the first region is an enlarged first bounding box of the enlarged first 2D patch for the first 2D patch, and the second region is an enlarged second bounding box of the enlarged second 2D patch for the second 2D patch.
3 . The method of claim 2 , further comprising:
determining a first bounding box of the first 2D patch according to a minimum U coordinate value, a maximum U coordinate value, a minimum V coordinate value and a maximum V coordinate value in the first UV coordinates;
determining a second bounding box of the second 2D patch according to a minimum U coordinate value, a maximum U coordinate value, a minimum V coordinate value and a maximum V coordinate value in the second UV coordinates;
determining the enlarged first bounding box by enlarging a boundary of the first bounding box; and
determining the enlarged second bounding box by enlarging a boundary of the second bounding box.
4 . An apparatus for mesh processing, comprising processing circuitry configured to:
receive, first UV coordinates associated with first vertices of a first patch and second UV coordinates associated with second vertices of a second patch, the first patch and the second patch being partitions from a three dimensional (3D) mesh, the 3D mesh representing a surface of an object with polygons and being partitioned into patches, the first patch comprising the first vertices that are mapped to first two dimensional (2D) vertices of a first 2D patch in a 2D map according to the first UV coordinates, the second patch comprising the second vertices that are mapped to second 2D vertices of a second 2D patch in the 2D map according to the second UV coordinates;
determine a first region that encompasses the first 2D patch in the 2D map, the first region being larger than the first 2D patch;
determine a second region that encompasses the second 2D patch in the 2D map, the second region being larger than the second 2D patch;
determine whether the first region and the second region are overlapping free based on first corner coordinates of the first region and second corner coordinates of the second region; and
determine whether the first 2D patch and the second 2D patch are overlapping free based on the first region and the second region, wherein:
when the first 2D patch is an enlarged first 2D patch from a first initial 2D patch and the second 2D patch is an enlarged second 2D patch from a second initial 2D patch, the first 2D patch and the second 2D patch are determined to be overlapped when a square region corresponding to a corner pixel of the first initial 2D patch intersects a boundary edge of the second initial 2D patch.
5 . The apparatus of claim 4 , wherein the first region is an enlarged first bounding box of the enlarged first 2D patch for the first 2D patch, and the second region is an enlarged second bounding box of the enlarged second 2D patch for the second 2D patch.
6 . The apparatus of claim 5 , wherein the processing circuitry is configured to:
determine a first bounding box of the first 2D patch according to a minimum U coordinate value, a maximum U coordinate value, a minimum V coordinate value and a maximum V coordinate value in the first UV coordinates;
determine a second bounding box of the second 2D patch according to a minimum U coordinate value, a maximum U coordinate value, a minimum V coordinate value and a maximum V coordinate value in the second UV coordinates;
determine the enlarged first bounding box by enlarging a boundary of the first bounding box; and
determine the enlarged second bounding box by enlarging a boundary of the second bounding box.
7 . A non-transitory computer-readable storage medium storing instructions which when executed by at least one processor cause the at least one processor to perform:
receiving, first UV coordinates associated with first vertices of a first patch and second UV coordinates associated with second vertices of a second patch, the first patch and the second patch being partitions from a three dimensional (3D) mesh, the 3D mesh representing a surface of an object with polygons and being partitioned into patches, the first patch comprising the first vertices that are mapped to first two dimensional (2D) vertices of a first 2D patch in a 2D map according to the first UV coordinates, the second patch comprising the second vertices that are mapped to second 2D vertices of a second 2D patch in the 2D map according to the second UV coordinates;
determining a first region that encompasses the first 2D patch in the 2D map, the first region being larger than the first 2D patch;
determining a second region that encompasses the second 2D patch in the 2D map, the second region being larger than the second 2D patch;
determining whether the first region and the second region are overlapping free based on first corner coordinates of the first region and second corner coordinates of the second region; and
determining whether the first 2D patch and the second 2D patch are overlapping free based on the first region and the second region, wherein:
when the first 2D patch is an enlarged first 2D patch from a first initial 2D patch and the second 2D patch is an enlarged second 2D patch from a second initial 2D patch, the first 2D patch and the second 2D patch are determined to be overlapped when a square region corresponding to a corner pixel of the first initial 2D patch intersects a boundary edge of the second initial 2D patch.
8 . The non-transitory computer-readable storage medium of claim 7 , wherein the first region is an enlarged first bounding box of the enlarged first 2D patch for the first 2D patch, and the second region is an enlarged second bounding box of the enlarged second 2D patch for the second 2D patch.
9 . The non-transitory computer-readable storage medium of claim 8 , wherein the instructions cause the at least one processor to perform:
determining a first bounding box of the first 2D patch according to a minimum U coordinate value, a maximum U coordinate value, a minimum V coordinate value and a maximum V coordinate value in the first UV coordinates;
determining a second bounding box of the second 2D patch according to a minimum U coordinate value, a maximum U coordinate value, a minimum V coordinate value and a maximum V coordinate value in the second UV coordinates;
determining the enlarged first bounding box by enlarging a boundary of the first bounding box; and
determining the enlarged second bounding box by enlarging a boundary of the second bounding box.