CN111768482A - 拼贴扩充方法、编码器与解码器 - Google Patents
拼贴扩充方法、编码器与解码器 Download PDFInfo
- Publication number
- CN111768482A CN111768482A CN201911200532.9A CN201911200532A CN111768482A CN 111768482 A CN111768482 A CN 111768482A CN 201911200532 A CN201911200532 A CN 201911200532A CN 111768482 A CN111768482 A CN 111768482A
- Authority
- CN
- China
- Prior art keywords
- collage
- point
- tile
- points
- image
- 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.)
- Withdrawn
Links
- 238000000034 method Methods 0.000 title claims abstract description 31
- 238000005070 sampling Methods 0.000 claims abstract description 23
- 230000006835 compression Effects 0.000 claims description 22
- 238000007906 compression Methods 0.000 claims description 22
- 230000006837 decompression Effects 0.000 claims description 21
- 238000012856 packing Methods 0.000 claims description 7
- 239000003086 colorant Substances 0.000 claims description 5
- 230000003416 augmentation Effects 0.000 claims 3
- 238000009499 grossing Methods 0.000 description 16
- 238000010586 diagram Methods 0.000 description 13
- 230000000694 effects Effects 0.000 description 3
- 101150013335 img1 gene Proteins 0.000 description 3
- 101150071665 img2 gene Proteins 0.000 description 3
- 238000005538 encapsulation Methods 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 230000000877 morphologic effect Effects 0.000 description 1
- 238000004806 packaging method and process Methods 0.000 description 1
- 238000007781 pre-processing Methods 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/10—Segmentation; Edge detection
- G06T7/11—Region-based segmentation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T9/00—Image coding
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T15/00—3D [Three Dimensional] image rendering
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T11/00—2D [Two Dimensional] image generation
- G06T11/001—Texturing; Colouring; Generation of texture or colour
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T5/00—Image enhancement or restoration
- G06T5/77—Retouching; Inpainting; Scratch removal
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/10—Segmentation; Edge detection
- G06T7/136—Segmentation; Edge detection involving thresholding
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/10—Segmentation; Edge detection
- G06T7/187—Segmentation; Edge detection involving region growing; involving region merging; involving connected component labelling
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T9/00—Image coding
- G06T9/001—Model-based coding, e.g. wire frame
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
- H04N19/597—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding specially adapted for multi-view video sequence encoding
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2200/00—Indexing scheme for image data processing or generation, in general
- G06T2200/04—Indexing scheme for image data processing or generation, in general involving 3D image data
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/10—Image acquisition modality
- G06T2207/10004—Still image; Photographic image
- G06T2207/10012—Stereo images
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/10—Image acquisition modality
- G06T2207/10024—Color image
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/10—Image acquisition modality
- G06T2207/10028—Range image; Depth image; 3D point clouds
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/30—Subject of image; Context of image processing
- G06T2207/30196—Human being; Person
- G06T2207/30201—Face
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2210/00—Indexing scheme for image generation or computer graphics
- G06T2210/56—Particle system, point based geometry or rendering
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Multimedia (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Signal Processing (AREA)
- Computer Graphics (AREA)
- Processing Or Creating Images (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
本发明提供一种拼贴扩充方法、编码器与解码器。所述方法包括:获得包括多个点的一点云;根据所述点云获得一第一拼贴,其中所述第一拼贴为所述点云的一子集合;针对所述第一拼贴中的至少一取样点,获得所述点云中距离所述取样点小于一第一阈值的至少一邻近点;以及将所述邻近点加入所述第一拼贴中。
Description
技术领域
本发明涉及一种用于点云的拼贴扩充方法、编码器与解码器。
背景技术
点云(point cloud)是三维空间中的多个点,且此些点中的每一个点会具有位置信息、色彩信息或其他的信息。在已知的点云压缩(Point Cloud Compression,PCC)技术中,编码器会将点云的数据分成多个拼贴(patch),每一个拼贴为该点云的子集合。之后编码器可以根据此些拼贴产生压缩后数据。解码器可以根据压缩后数据获得拼贴,并根据所获得的拼贴重建(或还原)压缩前的点云的数据。
然而,由于拼贴经过编码器压缩,当解码器根据压缩后数据获得拼贴并根据此些拼贴重建(或还原)压缩前的点云的数据时,该点云中的拼贴的交接处可能会失真而产生裂缝,而此裂缝会降低解码器所解码出的点云的数据(即,点云图像)的质量。
发明内容
因此,本发明提供一种拼贴扩充方法、编码器与解码器,可以有效地解决拼贴的交接处可能会失真而产生的裂缝,进而提升解码器所解码出的点云的数据的质量。
本发明提出一种拼贴扩充方法,包括:获得包括多个点的点云;根据点云获得第一拼贴,其中第一拼贴为点云的子集合;针对第一拼贴中的至少一取样点,获得点云中距离取样点小于第一阈值的至少一邻近点;以及将邻近点加入第一拼贴中。
本发明提出一种编码器,包括:拼贴产生模块、拼贴扩充模块、压缩模块以及输出模块。拼贴产生模块用以获得包括多个点的点云并根据点云获得第一拼贴。其中第一拼贴为点云的子集合。拼贴扩充模块用以针对第一拼贴中的至少一取样点,获得点云中距离取样点小于第一阈值的至少一邻近点,并将邻近点加入第一拼贴中。压缩模块用以压缩已加入邻近点的第一拼贴以获得压缩后数据。输出模块用以输出压缩后数据。
本发明提出一种解码器,包括:解压缩模块、拼贴扩充模块与点云重建模块。解压缩模块用以解压缩对应于多个点的点云的压缩后数据以获得至少一解压缩数据。其中解压缩数据包括第一拼贴且第一拼贴为点云的一子集合。拼贴扩充模块用以针对第一拼贴中的至少一取样点,获得点云中距离取样点小于第一阈值的至少一邻近点,并将邻近点加入第一拼贴中。点云重建模块用以根据已加入邻近点的第一拼贴重建点云以获得重建后的点云。
基于上述,本发明的拼贴扩充方法、编码器与解码器可以有效地解决拼贴的交接处可能会失真而产生的裂缝,进而提升解码器所解码出的点云的数据的质量。
附图说明
图1A是依照本发明的一实施例所绘示的编码器的示意图。
图1B是依照本发明的一实施例所绘示的编码器的运作的示意图。
图2是依照本发明的一实施例所绘示的寻找邻近点的方法的流程图。
图3A与图3B是依照本发明的一实施例所绘示的将邻近点加入拼贴的示意图。
图4A是依照本发明的一实施例所绘示的解码器的示意图。
图4B是依照本发明的一实施例所绘示的解码器的运作的示意图。
图5是依照本发明的一实施例所绘示的拼贴扩充方法的效果的示意图。
图6是依照本发明的一实施例所绘示的拼贴扩充方法的流程图。
【符号说明】
1000:编码器
PC:点云
PI:拼贴信息
OM:占据地图
10:拼贴扩充模块
12:拼贴产生模块
14:拼贴封装模块
16:几何图像产生模块
18:纹理图像产生模块
20a~20b:图像填充模块
22:群组扩张模块
24a~24c:压缩模块
26:输出模块
28:平滑模块
30:辅助拼贴信息压缩模块
32:熵压缩模块
S101~S106、S201~S211、S401~S409、S601~S607:步骤
P1~P6:拼贴
P_T:纹理图像
P_G:几何图像
T_IMG:整合后纹理图像
G_IMG:整合后几何图像
C_img1、C_img2:压缩后数据
300~303:图像
4000:解码器
70:输入模块
72a~72b:解压缩模块
74:占据地图解压缩模块
76:辅助拼贴信息解压缩模块
78:几何图像重建模块
80:平滑模块
82:纹理图像重建模块
84:色彩平滑模块
86:拼贴扩充模块
5a~5f、6a~6f:区域
具体实施方式
图1A是依照本发明的一实施例所绘示的编码器的示意图。图1B是依照本发明的一实施例所绘示的编码器的运作的示意图。
请参照图1A,在本实施例中,编码器1000包括拼贴扩充模块10、拼贴产生模块12、拼贴封装模块14、几何图像产生模块16、纹理图像产生模块18、图像填充(padding)模块20a~20b、群组扩张(group dilation)模块22、压缩模块24a~24c、输出模块26、平滑(smoothing)模块28、辅助拼贴信息压缩(auxiliary patch information compression)模块30以及熵(entropy)压缩模块32。
需注意的是,图1A中的编码器1000例如可以由一电子装置所执行。举例来说,电子装置可以具有处理器与存储装置。电子装置可为智能手机、平板计算机、笔记型计算机、个人计算机等装置。
处理器可以是中央处理单元(Central Processing Unit,CPU),或是其他可编程的一般用途或特殊用途的微处理器(Microprocessor)、数字信号处理器(Digital SignalProcessor,DSP)、可编程控制器、特殊应用集成电路(Application Specific IntegratedCircuit,ASIC)或其他类似元件或上述元件的组合。
存储装置可以是任何类型的固定或可移动随机存取存储器(Random AccessMemory,RAM)、只读存储器(Read-Only Memory,ROM)、快闪存储器(flash memory)、硬盘(Hard Disk Drive,HDD)、固态硬盘(Solid State Drive,SSD)或类似元件或上述元件的组合。
在本范例实施例中,电子装置的存储装置中存储有多个程序代码片段,在上述程序代码片段被安装后,会分别由电子装置的处理器来执行。例如,电子装置的存储装置中包括图1A中的各个模块,藉由这些模块来分别执行编码器1000中的各个运作,其中各模块是由一或多个程序代码片段所组成。然而本发明不限于此,上述的各个运作也可以是使用其他硬件形式的方式来实现。
请同时参照图1A与图1B,首先,拼贴产生模块12可以获得包括多个点的点云PC,并根据点云PC获得一拼贴(以下称为,第一拼贴)。特别是,第一拼贴为点云PC的子集合。也就是说,第一拼贴具有点云PC中的部分的点。
以图1B的范例来说明,在图1B的步骤S101中,拼贴产生模块12会获得点云PC。在步骤S102中,拼贴产生模块12会将点云PC的多个点投影至一立方体的六个二维平面上。此些二维平面中的每一个二维平面上群聚的点可以获得至少一拼贴。以图1B的步骤S102的示意图来说,假设拼贴产生模块12会产生拼贴P1~P6。为了方便说明,以下以拼贴P1(即,前述的第一拼贴)为范例进行说明。而相类似的方法可以应用于其他拼贴中。假设拼贴P1在所投影的二维平面(亦称为,第一二维平面)上具有彼此相互群聚的多个点(亦称为,第一点)。在此假设拼贴P1为三维的拼贴并且拼贴P1具有多个点,每一个点用以记录该点在三维空间中的位置、颜色以及其他信息。
在获得拼贴P1后,在步骤S103中,拼贴产生模块12会根据三维的拼贴P1产生对应于拼贴P1的二维拼贴。其中,拼贴P1的二维拼贴包括几何图像P_G以及纹理图像P_T。几何图像P_G以及纹理图像P_T可以分别为二维的图像。几何图像P_G用以表示前述多个第一点的位置信息(例如,三维空间中的坐标)且纹理图像P_T用以表示前述多个第一点的颜色信息。特别是,在步骤S103中,拼贴扩充模块10会用对拼贴P1中的至少一取样点,获得点云PC中距离此些取样点小于一阈值(亦称为,第一阈值)的至少一邻近点,并将此邻近点加入拼贴P1中。例如,拼贴扩充模块10会将邻近点的位置加入拼贴P1的几何图像P_G中并且将邻近点的颜色加入纹理图像P_T中。
图2是依照本发明的一实施例所绘示的寻找邻近点的方法的流程图。图2用以详细说明如何在点云中寻找一取样点的邻近点。
请参照图2,在步骤S201中,拼贴扩充模块10会获得点云中的一拼贴Pchi,其中i为1~n,用以代表点云的第一个拼贴至第n个拼贴。在步骤S203中,拼贴扩充模块10会取得拼贴中的一取样点pj,并在步骤S205中判断取样点pj是否位于拼贴Pchi的边上。若取样点pj不位于拼贴Pchi的边上,则会再次执行步骤S203以取得拼贴Pchi中的其他点作为取样点。若取样点pj位于拼贴Pchi的边上,在步骤S207中,拼贴扩充模块10会扫描点云中的一点pk,并在步骤S209中判断取样点pj与点pk的距离是否小于阈值(即,第一阈值)。若取样点pj与点pk的距离非小于阈值,则拼贴扩充模块10会再次执行步骤S207以扫描点云中的其他点。若取样点pj与点pk的距离小于阈值,在步骤S211中,拼贴扩充模块10会复制点pk至拼贴Pchi。
需注意的是,在另一实施例中,步骤S205可以省略。换句话说,拼贴扩充模块10也可以针对拼贴Pchi中的每一个点在点云中找寻对应的邻近点并将此邻近点加入Pchi中。
在一实施例中,仅当拼贴Pchi中的点的数量大于一阈值(亦称为,第二阈值)时,拼贴扩充模块10才会启动图2的流程以执行获得点云中距离取样点小于第一阈值的邻近点的运作。也就是说,当一拼贴太小时,拼贴扩充模块10不会对此拼贴中的取样点寻找点云中的邻近点。
在一实施例中,当针对某一个取样点从点云中找到多个匹配(即,距离小于第一阈值)的邻近点时,拼贴扩充模块10仅会将一数量(亦称为,第一数量)的邻近点加入第一拼贴中,且此第一数量会小于一阈值(亦称为,第三阈值)。换句话说,针对拼贴中的某一取样点,仅会加入小于某特定数量的邻近点至该拼贴中以避免加入过多的邻近点。而本发明并不用以限定如何从所搜寻出的多个邻近点中挑选欲加入拼贴中的邻近点。
需注意的是,加入拼贴中的邻近点通常是属于同一个点云的另一个拼贴(亦称为,第二拼贴)。也就是说,第二拼贴为点云的另一子集合。藉由在一拼贴中加入不同拼贴中的点,可以有效地降低解码器在解码时拼贴的交接处可能会失真而产生裂缝的问题。
图3A与图3B是依照本发明的一实施例所绘示的将邻近点加入拼贴的示意图。
请参照图3A,假设图像300用以表示目前欲加入邻近点的拼贴。假设第一阈值为1。拼贴扩充模块10会扫描点云中的点以找出距离图像300中的每一个点(或仅每一个边上的点)小于第一阈值的邻近点,并将此些邻近点加入拼贴中以获得如图像301中的拼贴。类似地,请参照图3B,假设图像302用以表示目前欲加入邻近点的拼贴。假设第一阈值为2。拼贴扩充模块10会扫描点云中的点以找出距离图像300中的每一个点(或仅每一个边上的点)小于第一阈值的邻近点,并将此些邻近点加入拼贴中以获得如图像303中的拼贴。
请再次参照图1A与图1B,在此需说明的是,虽然前述范例是先将拼贴P1转换为包括几何图像P_G以及纹理图像P_T的二维拼贴后再将所找出的邻近点的位置与颜色分别加入几何图像P_G以及纹理图像P_T。然而,本发明不限于此,在其他实施例中,也可以先找出拼贴P1中的每个取样点的邻近点,将邻近点加入拼贴P1后再将已加入邻近点的拼贴P1转换为包括几何图像以及纹理图像的二维拼贴,而此二维拼贴几何图像与纹理图像也会分别包括邻近点的位置与颜色。
之后,在步骤S104中,拼贴封装模块14会整合已加入邻近点的位置的几何图像P_G与和拼贴P1同属于第一二维平面的其他拼贴的其他几何图像。几何图像产生模块16会根据点云PC、拼贴产生模块12的输出以及拼贴封装模块14的输出产生整合已加入邻近点的位置的几何图像P_G与属于第一二维平面的其他拼贴的其他几何图像的整合后几何图像G_IMG。也就是说,此步骤是要将多个几何图像整合至单一的一张图像中。
此外,在步骤S104中,拼贴封装模块14还会整合已加入邻近点的颜色的纹理图像P_T与属于第一二维平面的其他拼贴的其他纹理图像。之后纹理图像产生模块18会根据点云PC、拼贴产生模块12的输出以及拼贴封装模块14的输出,产生整合已加入邻近点的颜色的纹理图像P_T与属于第一二维平面的其他拼贴的其他纹理图像的整合后纹理图像T_IMG。也就是说,此步骤是要将多个纹理图像整合至单一的一张图像中。
在获得整合后几何图像G_IMG与整合后纹理图像T_IMG后,还可以针对此两张图像各别进行前处理后再进行压缩。以图1A的编码器1000为例,图像填充模块20a可以对整合后几何图像G_IMG中内部的多个拼贴的几何图像间的空白空间(empty space)进行填充以产生适合用于图像压缩的分段的(piecewise)平滑(smooth)图像。类似地,图像填充模块20b可以对整合后纹理图像T_IMG中内部的多个拼贴的纹理图像间的空白空间进行填充以产生适合用于图像压缩的分段的平滑图像,并再藉由群组扩张模块22来对整合后纹理图像T_IMG进行形态学的扩张。
在将整合后几何图像G_IMG与整合后纹理图像T_IMG进行前处理后,在图1B的步骤S105中,压缩模块24a会压缩整合后几何图像G_IMG以获得一压缩后数据C_img2(亦称为,第一压缩后数据)。压缩模块24b会压缩整合后纹理图像T_IMG以获得一压缩后数据C_img1(亦称为,第二压缩后数据)。之后,在步骤S106中,输出模块26可以以位流的形式来输出前述的压缩后数据C_img1以及压缩后数据C_img2。
此外,拼贴封装模块14还可以产生占据地图(occupancy map)OM。占据地图OM中会包括至少一已占据区块(occupied block)以及至少一空区块(empty block)。其中,已占据区块用以表示前述拼贴所对应的一二维地图(2D map)(即,二维图像)中具有数据的区块,且空区块用以表示二维地图中不具有数据的区块。需说明的是,二维地图会包括多个相素,而二维地图可以藉由n*n个相素的区块大小来将二维地图平分成多个区块,其中n为正整数。
几何图像产生模块16与纹理图像产生模块18可以参考占据地图OM来分别产生整合后几何图像与整合后纹理图像。前述的图像填充模块20a~20b也可以参考占据地图OM来执行其功能。此外,在压缩占据地图OM时,可以选择使用有损压缩的压缩模块24c或是无损压缩的熵压缩模块32来获得压缩后占据地图OM,并藉由输出模块26以位流的形式输出压缩后占据地图OM。
特别是,在一实施例中,在图2的流程中,当邻近点加入一拼贴且对应于此拼贴的占据地图中的已占据区块的数量增加时,拼贴扩充模块10不会将邻近点加入该拼贴中。
在图1A的编码器1000中,拼贴产生模块12可以产生拼贴信息PI。拼贴信息PI可以记录点云PC共有几个拼贴、每个拼贴位于哪个二维平面或其他与点云或拼贴相关的信息。平滑模块28可以根据拼贴信息PI以及压缩模块24a的输出来执行平滑操作以产生平滑的几何图像,并将此平滑图像输入至纹理图像产生模块18中。
辅助拼贴信息压缩模块30主要用于压缩与拼贴相关的辅助(或额外)信息,并以位流形式藉由输出模块26输出压缩后的辅助信息。
需说明的是,虽然图1A中拼贴扩充模块10是耦接拼贴产生模块12。然而在其他实施例中,也可以使用多个拼贴扩充模块10配置在几何图像产生模块16与纹理图像产生模块18之后以达到类似的效果。
图4A是依照本发明的一实施例所绘示的解码器的示意图。图4B是依照本发明的一实施例所绘示的解码器的运作的示意图。
请参照图4A,解码器4000包括输入模块70、解压缩模块72a~72b、占据地图解压缩模块74、辅助拼贴信息解压缩(auxiliary patch information decompression)模块76、几何图像重建模块78、平滑模块80、纹理图像重建模块82、色彩平滑(color smoothing)模块84以及拼贴扩充模块86。解码器4000例如可以由一电子装置所执行。举例来说,电子装置可以具有处理器与存储装置。电子装置可为智能手机、平板计算机、笔记型计算机、个人计算机等装置。
在本范例实施例中,电子装置的存储装置中存储有多个程序代码片段,在上述程序代码片段被安装后,会分别由电子装置的处理器来执行。例如,电子装置的存储装置中包括图4A中的各个模块,藉由这些模块来分别执行解码器4000中的各个运作,其中各模块是由一或多个程序代码片段所组成。然而本发明不限于此,上述的各个运作也可以是使用其他硬件形式的方式来实现。
请同时参照图4A与图4B,在步骤S401中,输入模块70会获得一位流,而此位流中会包括对应于多个点的一点云的至少一压缩后数据,此压缩后数据可以包括压缩后数据C_img1以及压缩后数据C_img2,其中解压缩数据包括每一个拼贴且每一拼贴为点云的子集合。之后在步骤S403中,解压缩模块72a~72b、占据地图解压缩模块74与辅助拼贴信息解压缩模块76会对位流进行解压缩。更详细来说,解压缩模块72a会从位流中获得压缩后数据C_img1并对此压缩后数据C_img1进行解码以在步骤S405中获得整合后纹理图像T_IMG。类似地,解压缩模块72b会从位流中获得压缩后数据C_img2并对此压缩后数据C_img2进行解码以在步骤S405中获得整合后几何图像G_IMG。此外,占据地图解压缩模块74会从位流中获得压缩后的占据地图并进行解码以获得解压缩后的占据地图。辅助拼贴信息解压缩模块76会从位流中获得压缩后的辅助拼贴信息并进行解码以获得解压缩后的辅助拼贴信息。
之后,几何图像重建模块78会根据解压缩模块72b所输出的整合后几何图像G_IMG、占据地图解压缩模块74所输出的占据地图以及辅助拼贴信息解压缩模块76所输出的辅助拼贴信息来获得整合后几何图像G_IMG中的每一个拼贴的几何图像,平滑模块80会对每一个拼贴的几何图像执行一平滑操作。此外,纹理图像重建模块82会根据解压缩模块72a所输出的整合后纹理图像T_IMG与平滑模块80所输出的经平滑操作后的图像获得每一个拼贴的纹理图像,色彩平滑模块84会对每一个拼贴的纹理图像执行一平滑操作。在经由前述的过程后,可以获得如图4B步骤S407中的多个拼贴P1~P6,且每个拼贴具有纹理图像与几何图像,几何图像用以表示每个拼贴的多个点的位置信息,纹理图像用以表示多个点的颜色信息。之后,拼贴扩充模块86可以执行类似于前述拼贴扩充模块10的运作。
以拼贴P1为例,由于已获得拼贴P1~P6,故可以由拼贴P1~P6反推由拼贴P1~P6所组成的点云。拼贴扩充模块86可以针对拼贴P1中的至少一取样点,获得由拼贴P1~P6所组成的点云中距离该取样点小于阈值(例如,前述的第一阈值)的至少一邻近点,并将此邻近点加入拼贴P1中。例如,拼贴P1包括的几何图像用以表示拼贴P1的多个点的位置信息且拼贴P1的纹理图像用以表示拼贴P1的多个点的颜色信息。拼贴扩充模块86会将邻近点的位置加入拼贴P1的几何图像并且将拼贴P1的邻近点的颜色加入纹理图像。
需注意的是,在加入邻近点至拼贴P1的范例中,在一实施例中,拼贴扩充模块86会获得所述拼贴P1所对应的占据地图。类似于先前所述,占据地图中会包括至少一已占据区块(occupied block)以及至少一空区块(empty block)。其中,已占据区块用以表示前述拼贴P1所对应的一二维地图(2D map)(即,二维图像)中具有数据的区块,且空区块用以表示二维地图中不具有数据的区块。当邻近点加入拼贴P1且拼贴P1的占据地图中的已占据区块的数量增加时,拼贴扩充模块86不将邻近点加入拼贴P1中。
此外,在一实施例中,仅当拼贴P1中的点的数量大于一阈值(例如,前述的第二阈值)时,拼贴扩充模块86才会执行前述获得点云中距离取样点小于第一阈值的邻近点的运作。
在一实施例中,当针对拼贴P1的某一个取样点从点云中找到多个匹配(即,距离小于第一阈值)的邻近点时,拼贴扩充模块10仅会将一数量(例如,前述的第一数量)的邻近点加入拼贴P1中,且此第一数量会小于一阈值(例如,前述的第三阈值)。换句话说,针对拼贴P1中的某一取样点,仅会加入小于某特定数量的邻近点至拼贴P1中以避免加入过多的邻近点。而本发明并不用以限定如何从所搜寻出的多个邻近点中挑选欲加入拼贴中的邻近点。
此外,在一实施例中,拼贴扩充模块86会扫描点云PC中的点以找出距离拼贴P1中的每一个点(或仅每一个边上的点)小于第一阈值的邻近点,并将此些邻近点加入拼贴P1中以获得如图像301中的拼贴。
需注意的是,加入拼贴P1中的邻近点通常是属于同一个点云PC的另一个拼贴。而此另一个拼贴为点云的另一子集合。藉由在一拼贴中加入不同拼贴中的点,可以有效地降低解码器在重建出点云时点云的交接处可能会失真而产生裂缝的问题。
虽然前述是以拼贴P1为范例,而相类似的过程可以应用于拼贴P2~P6,故在此不再赘述。
在获得已分别加入邻近点的拼贴P1~P6后,在步骤S409中,可以通过点云重建模块(未绘示)以根据已加入邻近点的拼贴P1~P6重建出点云PC以获得重建后的点云PC。
需注意的是,在图4A的范例中,拼贴扩充模块86是耦接在色彩平滑模块84之后,然而本发明不限于此。在其他实施例中,也可以分别配置拼贴扩充模块86耦接于几何图像重建模块78或纹理图像重建模块82之后。此外,在本实施例中,编码器1000与解码器4000皆具有拼贴扩充模块。然而在其他实施例中,也可以编码器1000以及解码器4000两者的其中之一具有拼贴扩充模块。
图5是依照本发明的一实施例所绘示的拼贴扩充方法的效果的示意图。
请参照图5,在使用已知的方法对于拼贴压缩后重建出的点云中,可以看到如区域5a~5f中具有明显的裂缝。然而,若使用本发明的拼贴扩充方法,可以看到区域6a~6f(对应于前述的区域5a~5f)中并无明显的裂缝。因此,本发明的拼贴扩充方法可以有效地解决拼贴的交接处可能会失真而产生的裂缝,进而提升解码器所解码出的点云的数据的质量。
图6是依照本发明的一实施例所绘示的拼贴扩充方法的流程图。
请参照图6,首先,获得包括多个点的一点云(步骤S601)。根据点云获得一第一拼贴(步骤S603)。其中,第一拼贴为点云的一子集合。之后,针对第一拼贴中的至少一取样点,获得点云中距离取样点小于第一阈值的至少一邻近点(步骤S605)。最后将所找出的邻近点加入第一拼贴(步骤S607)中。
综上所述,本发明的拼贴扩充方法、编码器与解码器可以有效地解决拼贴的交接处可能会失真而产生的裂缝,进而提升解码器所解码出的点云的数据的质量。
Claims (23)
1.一种拼贴扩充方法,包括:
获得包括多个点的点云(point cloud);
根据所述点云获得第一拼贴(patch),其中所述第一拼贴为所述点云的子集合;
针对所述第一拼贴中的至少一取样点,获得所述点云中距离所述取样点小于第一阈值的至少一邻近点;以及
将所述邻近点加入所述第一拼贴中。
2.如权利要求1所述的拼贴扩充方法,其中根据所述点云获得所述第一拼贴的步骤包括:
将所述点云的所述多个点投影至多个二维平面;以及
根据所述多个二维平面中的第一二维平面上群聚的多个第一点获得所述第一拼贴,
其中所述第一拼贴包括几何(geometry)图像以及纹理(texture)图像,所述几何图像用以表示所述多个第一点的位置信息且所述纹理图像用以表示所述多个第一点的颜色信息。
3.如权利要求2所述的拼贴扩充方法,其中将所述邻近点加入所述第一拼贴中的步骤包括:
将所述邻近点的位置加入所述几何图像并且将所述邻近点的颜色加入所述纹理图像。
4.如权利要求3所述的拼贴扩充方法,还包括:
根据已加入所述邻近点的位置的所述几何图像与属于所述第一二维平面的其他拼贴的其他几何图像产生整合后几何图像;
根据已加入所述邻近点的颜色的所述纹理图像与属于所述第一二维平面的其他拼贴的其他纹理图像产生整合后纹理图像;
压缩所述整合后几何图像以获得第一压缩后数据;
压缩所述整合后纹理图像以获得第二压缩后数据;以及
输出所述第一压缩后数据以及所述第二压缩后数据。
5.如权利要求1所述的拼贴扩充方法,还包括:
获得所述第一拼贴所对应的第一占据地图(occupancy map),其中所述第一占据地图包括至少一已占据区块(occupied block)以及至少一空区块(empty block),所述已占据区块用以表示所述第一拼贴所对应的二维地图(2D map)中具有数据的区块,且所述空区块用以表示所述二维地图中不具有数据的区块;
当所述邻近点加入所述第一拼贴且所述第一占据地图中的所述已占据区块的数量增加时,不将所述邻近点加入所述第一拼贴中。
6.如权利要求1所述的拼贴扩充方法,还包括:
仅当所述第一拼贴中的点的数量大于第二阈值时,执行获得所述点云中距离所述取样点小于所述第一阈值的所述邻近点的步骤。
7.如权利要求1所述的拼贴扩充方法,还包括:
将第一数量的所述邻近点加入所述第一拼贴中,其中所述第一数量小于第三阈值。
8.如权利要求1所述的拼贴扩充方法,其中所述取样点为位于所述第一拼贴中的边上的点。
9.如权利要求1所述的拼贴扩充方法,其中所述邻近点属于第二拼贴,所述第二拼贴为所述点云的另一子集合。
10.一种编码器,包括:
拼贴产生模块,用以获得包括多个点的点云,并根据所述点云获得第一拼贴,其中所述第一拼贴为所述点云的子集合;
拼贴扩充(expanding)模块,用以针对所述第一拼贴中的至少一取样点,获得所述点云中距离所述取样点小于第一阈值的至少一邻近点,并将所述邻近点加入所述第一拼贴中;
压缩模块,用以压缩已加入所述邻近点的所述第一拼贴以获得压缩后数据;以及
输出模块,用以输出所述压缩后数据。
11.如权利要求10所述的编码器,其中在根据所述点云获得所述第一拼贴的运作中,
所述拼贴产生模块将所述点云的所述多个点投影至多个二维平面,根据所述多个二维平面中的第一二维平面上群聚的多个第一点获得所述第一拼贴,
其中所述第一拼贴包括几何(geometry)图像以及纹理(texture)图像,所述几何图像用以表示所述多个第一点的位置信息且所述纹理图像用以表示所述多个第一点的颜色信息。
12.如权利要求11所述的编码器,其中在将所述邻近点加入所述第一拼贴中的运作中,
所述拼贴扩充模块将所述邻近点的位置加入所述几何图像并且将所述邻近点的颜色加入所述纹理图像。
13.如权利要求12所述的编码器,还包括:
拼贴封装(patch packing)模块,用以整合已加入所述邻近点的位置的所述几何图像与属于所述第一二维平面的其他拼贴的其他几何图像,以及整合已加入所述邻近点的颜色的所述纹理图像与属于所述第一二维平面的其他拼贴的其他纹理图像;
图像产生模块,用以产生整合已加入所述邻近点的位置的所述几何图像与属于所述第一二维平面的其他拼贴的所述其他几何图像的整合后几何图像,以及产生整合已加入所述邻近点的颜色的所述纹理图像与属于所述第一二维平面的其他拼贴的所述其他纹理图像的整合后纹理图像,其中
所述压缩模块还用以压缩所述整合后几何图像以获得第一压缩后数据以及压缩所述整合后纹理图像以获得第二压缩后数据,
所述输出模块还用以输出所述第一压缩后数据以及所述第二压缩后数据。
14.如权利要求10所述的编码器,其中
仅当所述第一拼贴中的点的数量大于第二阈值时,所述拼贴扩充模块执行获得所述点云中距离所述取样点小于所述第一阈值的所述邻近点的运作。
15.如权利要求10所述的编码器,其中
所述拼贴扩充模块还用以将第一数量的所述邻近点加入所述第一拼贴中,其中所述第一数量小于第三阈值。
16.如权利要求10所述的编码器,其中所述取样点为位于所述第一拼贴中的边上的点。
17.如权利要求10所述的编码器,其中所述邻近点属于第二拼贴,所述第二拼贴为所述点云的另一子集合。
18.一种解码器,包括:
解压缩模块,用以解压缩对应于多个点的点云的至少一压缩后数据以获得至少一解压缩数据,其中所述解压缩数据包括第一拼贴且所述第一拼贴为所述点云的子集合;
拼贴扩充(expanding)模块,用以针对所述第一拼贴中的至少一取样点,获得所述点云中距离所述取样点小于第一阈值的至少一邻近点,并将所述邻近点加入所述第一拼贴中;以及
点云重建模块,用以根据已加入所述邻近点的所述第一拼贴重建所述点云以获得重建后的所述点云。
19.如权利要求18所述的解码器,其中所述第一拼贴包括几何(geometry)图像以及纹理(texture)图像,所述几何图像用以表示所述第一拼贴的多个第一点的位置信息且所述纹理图像用以表示所述多个第一点的颜色信息,
所述拼贴扩充模块将所述邻近点的位置加入所述几何图像并且将所述邻近点的颜色加入所述纹理图像。
20.如权利要求18所述的解码器,其中
仅当所述第一拼贴中的点的数量大于第二阈值时,所述拼贴扩充模块执行获得所述点云中距离所述取样点小于所述第一阈值的所述邻近点的运作。
21.如权利要求18所述的解码器,其中
所述拼贴扩充模块还用以将第一数量的所述邻近点加入所述第一拼贴中,其中所述第一数量小于第三阈值。
22.如权利要求18所述的解码器,其中所述取样点为位于所述第一拼贴中的边上的点。
23.如权利要求18所述的解码器,其中所述邻近点属于第二拼贴,所述第二拼贴为所述点云的另一子集合。
Applications Claiming Priority (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201962818761P | 2019-03-15 | 2019-03-15 | |
US62/818,761 | 2019-03-15 | ||
US201962849976P | 2019-05-20 | 2019-05-20 | |
US62/849,976 | 2019-05-20 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN111768482A true CN111768482A (zh) | 2020-10-13 |
Family
ID=72423878
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911200532.9A Withdrawn CN111768482A (zh) | 2019-03-15 | 2019-11-29 | 拼贴扩充方法、编码器与解码器 |
Country Status (3)
Country | Link |
---|---|
US (1) | US20200294270A1 (zh) |
CN (1) | CN111768482A (zh) |
TW (1) | TW202036483A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2022226850A1 (zh) * | 2021-04-28 | 2022-11-03 | Oppo广东移动通信有限公司 | 点云质量增强方法、编码和解码方法及装置、存储介质 |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TWI816268B (zh) * | 2021-07-05 | 2023-09-21 | 財團法人工業技術研究院 | 內容拼貼編碼方法及內容拼貼解碼方法 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102077589A (zh) * | 2008-06-27 | 2011-05-25 | 汤姆逊许可证公司 | 用于利用基于块拼贴的采样纹理合成的纹理压缩的方法和装置 |
CN104715509A (zh) * | 2015-03-23 | 2015-06-17 | 江苏大学 | 一种基于散乱点云特征的网格重建方法 |
TW201621813A (zh) * | 2014-11-06 | 2016-06-16 | 鴻海精密工業股份有限公司 | 點雲修補方法及系統 |
US20170347120A1 (en) * | 2016-05-28 | 2017-11-30 | Microsoft Technology Licensing, Llc | Motion-compensated compression of dynamic voxelized point clouds |
CN108090960A (zh) * | 2017-12-25 | 2018-05-29 | 北京航空航天大学 | 一种基于几何约束的目标重建方法 |
CN109409437A (zh) * | 2018-11-06 | 2019-03-01 | 安徽农业大学 | 一种点云分割方法、装置、计算机可读存储介质及终端 |
-
2019
- 2019-11-29 US US16/699,114 patent/US20200294270A1/en not_active Abandoned
- 2019-11-29 CN CN201911200532.9A patent/CN111768482A/zh not_active Withdrawn
- 2019-11-29 TW TW108143551A patent/TW202036483A/zh unknown
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102077589A (zh) * | 2008-06-27 | 2011-05-25 | 汤姆逊许可证公司 | 用于利用基于块拼贴的采样纹理合成的纹理压缩的方法和装置 |
TW201621813A (zh) * | 2014-11-06 | 2016-06-16 | 鴻海精密工業股份有限公司 | 點雲修補方法及系統 |
CN104715509A (zh) * | 2015-03-23 | 2015-06-17 | 江苏大学 | 一种基于散乱点云特征的网格重建方法 |
US20170347120A1 (en) * | 2016-05-28 | 2017-11-30 | Microsoft Technology Licensing, Llc | Motion-compensated compression of dynamic voxelized point clouds |
CN108090960A (zh) * | 2017-12-25 | 2018-05-29 | 北京航空航天大学 | 一种基于几何约束的目标重建方法 |
CN109409437A (zh) * | 2018-11-06 | 2019-03-01 | 安徽农业大学 | 一种点云分割方法、装置、计算机可读存储介质及终端 |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2022226850A1 (zh) * | 2021-04-28 | 2022-11-03 | Oppo广东移动通信有限公司 | 点云质量增强方法、编码和解码方法及装置、存储介质 |
Also Published As
Publication number | Publication date |
---|---|
TW202036483A (zh) | 2020-10-01 |
US20200294270A1 (en) | 2020-09-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP7266686B2 (ja) | 点群圧縮のための方法、装置、およびコンピュータプログラム | |
US10657689B2 (en) | Method and apparatus for point cloud color processing | |
WO2019198523A1 (ja) | 画像処理装置および方法 | |
JP2022528528A (ja) | 点群コーディングのための方法、装置、およびコンピュータプログラム | |
JP7478816B2 (ja) | ポイントクラウドコーディングのための方法及び装置 | |
CN111971967A (zh) | 一种用于编码/解码表示3d对象的点云的方法和装置 | |
EP3343446A1 (en) | Method and apparatus for encoding and decoding lists of pixels | |
CN111768482A (zh) | 拼贴扩充方法、编码器与解码器 | |
CN112188209A (zh) | 视频流解码方法、装置、计算机设备和存储介质 | |
KR20240024069A (ko) | 정보 처리 장치 및 방법 | |
CN115176279A (zh) | 用于点云译码的方法和装置 | |
WO2022131948A1 (en) | Devices and methods for sequential coding for point cloud compression | |
US20230298216A1 (en) | Predictive coding of boundary geometry information for mesh compression | |
CN113615201A (zh) | 点云压缩的方法和装置 | |
JP2024509623A (ja) | メッシュ展開のための方法、装置、およびコンピュータプログラム | |
CN116888631A (zh) | 基于点云压缩的动态网格压缩 | |
WO2023095625A1 (ja) | 情報処理装置および方法 | |
WO2023179705A1 (zh) | 编码、解码方法、装置及设备 | |
RU2778377C1 (ru) | Способ и устройство для кодирования облака точек | |
US20230156222A1 (en) | Grid-based patch generation for video-based point cloud coding | |
JP7438612B2 (ja) | ビデオベースのポイント・クラウド・コーディングのための高速パッチ生成 | |
WO2023173238A1 (zh) | 编解码方法、码流、编码器、解码器以及存储介质 | |
WO2023173237A1 (zh) | 编解码方法、码流、编码器、解码器以及存储介质 | |
WO2023240662A1 (zh) | 编解码方法、编码器、解码器以及存储介质 | |
CN115943433A (zh) | 基于视频的点云编码的快速重新着色 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
WW01 | Invention patent application withdrawn after publication |
Application publication date: 20201013 |
|
WW01 | Invention patent application withdrawn after publication |