CN107071478B - 基于双抛物线分区模板的深度图编码方法 - Google Patents
基于双抛物线分区模板的深度图编码方法 Download PDFInfo
- Publication number
- CN107071478B CN107071478B CN201710200075.8A CN201710200075A CN107071478B CN 107071478 B CN107071478 B CN 107071478B CN 201710200075 A CN201710200075 A CN 201710200075A CN 107071478 B CN107071478 B CN 107071478B
- Authority
- CN
- China
- Prior art keywords
- coordinate
- template
- double
- line
- point
- 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
Links
Classifications
-
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
本发明属于视频编码技术领域,具体涉及基于双抛物线分区模板的深度图编码方法,通过两条抛物线来拟合深度边界的分割线,将块分割成两个分区模板;对得到的分区模板进行调整本发明通过双抛物线来拟合分区分割线,与现有的Wedgelet相比,分割边界更加平滑,可以用更大的块来描述深度图中物体的边界,能够更好的适应现实中复杂的边界情况;并仅对其中的一部分模板用双抛物线生成,其他模板通过旋转和对称得到,大大减少了模板生成的计算量,并增强了模板生成的一致性。对16*16和32*32的模板重复性设置阈值,减少了模板的数量,优化了之后的编码时间。
Description
技术领域
发明属于视频编码技术领域,具体涉及一种基于双抛物线分区模板的深度图编码方法。
背景技术
伴随着计算机通信和显示技术的发展,三维视频因能够为观众提供身临其境的立体视听体验而引起海内外工业界和学术界的广泛关注和研究。三维视频系统利用DIBR视点合成技术,用纹理图像和深度图像可以生成任意视点位置的纹理视频,避免了直接传输大量纹理视频数据所带来的数据量。
深度图像反映了三维场景中物体到相机的距离信息,由大部分的平坦区域和少部分的锐利边缘组成,边缘部分编码质量的好坏直接影响了虚拟视点的合成质量。编码研究者根据深度图的边界特性,将深度建模模式(Depth Modelling Modes,DMM)作为一种可选的帧内预测模式引入到3D视频编解码框架中。
DMM模式包括Wedgelet分割和Contour分割两种模式。Wedgelet分割的边界分割线为直线,可以通过遍历楔形模板查询表获得,但是只适用于具有直线边界的图像块;Contour分割的边界分割线为曲线,可以直接通过相应的纹理图像获得,比较适用于纹理图像与深度图像的相关性较高的深度图像(如电脑三维动画制作的深度视频序列)。然而,现有的深度获取技术还不成熟,较难获得和纹理图匹配程度较高的深度图,而直接通过相应的纹理图像获得的轮廓分割线准确度不高,会直接影响Contour预测的效率。
发明内容
为了能够改善现有深度图编码方式的缺陷,更好的对深度图进行编码从而提高虚拟视点的合成质量,本发明提供了一种基于双抛物线分区模板的深度图编码方法。其特征在于用两条抛物线来拟合深度的边界,通过双抛物线模板表优化深度图的编码,双抛物线模板表的生成包括以下过程:
步骤1、对8*8、16*16、32*32的块的起始点和终点在上-下对边和左-下临边两种情况进行起始点、终点和第三点的遍历
8*8、16*16、32*32的块(分别对应k=1、2、4),对于上-下对边情况,起始点S坐标取(k,k)至(8k,k),步长为k,终点E坐标取(k,8k)至(8k,8k),步长为k,第三点P坐标取(mk,nk)(1≤m≤8,1≤n≤8)且不在SE连线上;对于左-下临边情况,起始点S坐标取(k,k)至(k,8k),步长为k,终点E坐标取(k,k)至(8k,k),步长为k,第三点P坐标取(mk,nk)(1≤m≤8,1≤n≤8)且不在SE连线上。
步骤2、通过起始点、终点和第三点得到双抛物线分区模板
对于步骤1得到的多组3个点的坐标,进行如下操作后得到双抛物线模板:
已知起始点S(x1,y1)、终点E(x2,y2)和空间中第三点P(x3,y3)的坐标,通过垂直公式求得第三点在起始点终点连线上的垂足O'(x4,y4)。
进行坐标轴旋转,将起始点S(x1,y1)和终点E(x2,y2)连线视为旋转后的x'轴,将与之垂直的第三点P(x3,y3)和垂足O'(x4,y4)的连线视为旋转后的y'轴,旋转后坐标轴原点为垂足O'(x4,y4),则原坐标轴上的点在旋转后坐标轴上的坐标可通过下式求得:
其中(x,y)表示点在原坐标系中的坐标,(x',y')表示点在旋转后坐标系中的坐标,θ为x'轴相对于x轴的逆时针旋转角度。
在旋转坐标系中,起始点、终点和第三点对应的坐标分别为(x′1,y′1)、(x′2,y′2)、(x′3,y′3)。将y'轴视为抛物线的对称轴,抛物线方程退化为y=ax2+c。第三点(x'3,y'3)分别与起点(x′1,y′1),终点(x'2,y'2)构成两条抛物线,可求得在旋转坐标系上两条抛物线方程。离散化后即可得到旋转坐标系中的分割线上的点坐标。
对旋转坐标系中的分割线上的点坐标进行坐标逆变换,即可求得原坐标系中的分割线上的点坐标
将分割线的两侧分别赋值0/1,归为两个分区。
通过上述方法得到双抛物线模板表的部分模板。
步骤3、设置阈值去除重复的模板
对步骤2生成的模板,去掉其中重复或相似的模板。对于模板的重复性,两个模板若分区形状相同,就认为它们是重复的,即不用考虑分区的赋值是0还是1。因为16*16和32*32的模板数量过于庞大,对16*16和32*32的块分别设置4和16的阈值。即如果两个模板的形状不同,但差别小于阈值,仍认为它们是重复的。
步骤4、对分区后的块进行旋转遍历
步骤2生成的模板包括了希望的双抛物线可生成的分区形状,对这部分模板进行90°、180°和270°的旋转,对称以及对称后进行90°、180°和270°的旋转,即可得到双抛物线的分区模板表。
本发明通过:1、双抛物线来拟合分区分割线,与现有的Wedgelet相比,分割边界更加平滑,可以用更大的块来描述深度图中物体的边界,能够更好的适应现实中复杂的边界情况;2、仅对其中的一部分模板用双抛物线生成,其他模板通过旋转和对称得到,大大减少了模板生成的计算量,并增强了模板生成的一致性。3、对16*16和32*32的模板重复性设置阈值,减少了模板的数量,优化了之后的编码时间。
综上所述,本发明更好的解决了深度图的锐利边界的编码问题,提高了深度图的编码效率。
附图说明
图1为实施例生成双抛物线分区的示意图;
图2为实施例通过旋转和对称生成其他分区模板的示意图。
具体实施方式
下面结合附图和具体深度编码对本发明方法作进一步的详细说明,来说明双抛物线分区在深度图编码中的有效性。
在实施中,双抛物线分区模板表的生成步骤如下:
步骤1、对8*8、16*16、32*32的块的起始点和终点在上-下对边和左-下临边两种情况进行起始点、终点和第三点的遍历
8*8、16*16、32*32的块(分别对应k=1、2、4),对于上-下对边情况,起始点S坐标取(k,k)至(8k,k),步长为k,终点E坐标取(k,8k)至(8k,8k),步长为k,第三点P坐标取(mk,nk)(1≤m≤8,1≤n≤8)且不在SE连线上;对于左-下临边情况,起始点S坐标取(k,k)至(k,8k),步长为k,终点E坐标取(k,k)至(8k,k),步长为k,第三点P坐标取(mk,nk)(1≤m≤8,1≤n≤8)且不在SE连线上。
步骤2、通过起始点、终点和第三点得到双抛物线分区模板
对于步骤1得到的多组3个点的坐标,进行如下操作后得到双抛物线模板:
已知起始点S(x1,y1)、终点E(x2,y2)和空间中第三点P(x3,y3)的坐标,通过垂直公式求得第三点在起始点终点连线上的垂足O'(x4,y4)。
进行坐标轴旋转,将起始点S(x1,y1)和终点E(x2,y2)连线视为旋转后的x'轴,将与之垂直的第三点P(x3,y3)和垂足O'(x4,y4)的连线视为旋转后的y'轴,旋转后坐标轴原点为垂足O'(x4,y4),则原坐标轴上的点在旋转后坐标轴上的坐标可通过下式求得:
其中(x,y)表示点在原坐标系中的坐标,(x',y')表示点在旋转后坐标系中的坐标,θ为x'轴相对于x轴的逆时针旋转角度。
在旋转坐标系中,起始点、终点和第三点对应的坐标分别为(x′1,y′1)、(x′2,y′2)、(x'3,y'3)。将y'轴视为抛物线的对称轴,抛物线方程退化为y=ax2+c。第三点(x′3,y′3)分别与起点(x′1,y′1),终点(x'2,y'2)构成两条抛物线,可求得在旋转坐标系上两条抛物线方程。离散化后即可得到旋转坐标系中的分割线上的点坐标。
对旋转坐标系中的分割线上的点坐标进行坐标逆变换,即可求得原坐标系中的分割线上的点坐标
将分割线的两侧分别赋值0/1,归为两个分区,用双抛物线生成分区的效果如图1所示。
通过上述方法得到双抛物线模板表的部分模板。
步骤3、设置阈值去除重复的模板
对步骤2生成的模板,去掉其中重复或相似的模板。对于模板的重复性,两个模板若分区形状相同,就认为它们是重复的,即不用考虑分区的赋值是0还是1。因为16*16和32*32的模板数量过于庞大,对16*16和32*32的块分别设置4和16的阈值。即如果两个模板的形状不同,但差别小于阈值,仍认为它们是重复的。
步骤4、对分区后的块进行旋转遍历
步骤2生成的模板包括了希望的双抛物线可生成的分区形状,如图2所示,对这部分模板进行90°、180°和270°的旋转,对称以及对称后进行90°、180°和270°的旋转,即可得到双抛物线的分区模板表。
最后对3D-HEVC的编解码器HTM进行修改,进行编码器性能测试,将双抛物线分区模板表集成到编解码器HTM的15.2版本,在现有深度建模模式中新加入新的DMM5模式,即通过遍历双抛物线的分区模板表来对深度图进行编码。DMM5模式将深度块与双抛物线分区模板表进行匹配,找到最佳匹配分区模板,并与其它编码方式进行比较。若优于其它编码方式,则该深度块用DMM5方式来进行编码。DMM5模式在找到最佳匹配分区模板后的编码方式和DMM1相同。
在对编解码器进行修改后,在全帧内模式下对修改后的编码器的效果进行测试。表1说明了本发明的方法对编码器的性能的提升。编码码率和图像PSNR值构成的BD-Rate值,用来表征相同图像平均保真度下码率的平均节省,BD-Rate值越小编码性能越高。实验结果表格中,每项百分比值均通过改进后算法得到的BD-Rate值与原始标准参考软件中的基准(anchor)BD-Rate值计算得来,负的百分比表示改进后的算法能够带来码率节省,也就是提高了编码效率。每一项的表征进行说明如下:
video 0、video 1和video 2分别表征单独视点纹理视频的BD-Rate百分比,衡量的是单独每个视点纹理图视频的编码性能。即:video 0项计算的BD-Rate值中,PSNR来自该视点纹理视频图像,码率也只是来自于该视点纹理视频消耗的码率,与深度视频的编码性能无关。video 1和video 2项类似。
video PSNR/video bitrate:这项表征的是三个编码视点纹理视频,在三个编码视点纹理视频总码率消耗下的平均编码性能。计算的BD-Rate值中,PSNR来自三个编码视点纹理视频图像,码率也只是来自于三个编码视点纹理视频消耗的码率,与三个视点的深度视频的编码性能无关,衡量的是纹理视频的编码质量。
video PSNR/total bitrate:这项表征的是三个编码视点纹理视频,在三个编码视点纹理加深度视频总码率消耗下的平均编码性能。计算的BD-Rate值中,PSNR仅仅来自三个编码视点纹理视频图像,而码率却是三个编码视点纹理视频与深度视频总的码率消耗。
synth PSNR/total bitrate:合成的中间虚拟视点经过左右参考视点纹理视频图像的三维映射变换得到,因此左右视点的纹理视频编码好坏直接影响最终合成视点的质量,而左右视点三维映射变换的空间位置却是通过其深度视频图像寻找,错误的深度会使得纹理视频中像素映射到错误的位置,导致合成的虚拟视点图像中物体扭曲以及景物之间位置错乱,因此深度视频的编码质量也直接影响最终的合成虚拟视点。而这项计算的BD-Rate值中,PSNR值来自于最终的6个虚拟合成视点的纹理视频,而码率却是整个编码流程中所有编码视点(虚拟合成视点无需编码)纹理与深度总的码率消耗,因此,这一项是对整个视频编码算法优劣的衡量,表征了6个虚拟合成视点在整个编码系统消耗的总码率下的编码性能。对于衡量一套视频编码算法的优劣,这一项表征非常重要,因此3D-HEVC标准制定工作中递交的算法提案,主要通过该指标来权衡其价值。
表1在3D-HEVC编码器HTM-15.2上的测试结果
通过表1可以看出,双抛物线分区方法的引入,使得编码器在全帧内模式下获得了0.16%的增益。
Claims (1)
1.基于双抛物线分区模板的深度图编码方法,其特征在于:用两条抛物线来拟合深度的边界,通过双抛物线模板表优化深度图的编码,双抛物线模板表的生成包括以下过程:
步骤1、对8*8、16*16、32*32的块的起始点和终点在上-下对边和左-下临边两种情况进行起始点、终点和第三点的遍历;
8*8、16*16、32*32的块,分别对应k=1、2、4,对于上-下对边情况,起始点S坐标取(k,k)至(8k,k),步长为k,终点E坐标取(k,8k)至(8k,8k),步长为k,第三点P坐标取(mk,nk)(1≤m≤8,1≤n≤8)且不在SE连线上;对于左-下临边情况,起始点S坐标取(k,k)至(k,8k),步长为k,终点E坐标取(k,k)至(8k,k),步长为k,第三点P坐标取(mk,nk)(1≤m≤8,1≤n≤8)且不在SE连线上;
步骤2、通过起始点、终点和第三点得到双抛物线分区模板;
对于步骤1得到的多组3个点的坐标,进行如下操作后得到双抛物线模板:
已知起始点S(x1,y1)、终点E(x2,y2)和空间中第三点P(x3,y3)的坐标,通过垂直公式求得第三点在起始点终点连线上的垂足O'(x4,y4);
进行坐标轴旋转,将起始点S(x1,y1)和终点E(x2,y2)连线视为旋转后的x'轴,将与之垂直的第三点P(x3,y3)和垂足O'(x4,y4)的连线视为旋转后的y'轴,旋转后坐标轴原点为垂足O'(x4,y4),则原坐标轴上的点在旋转后坐标轴上的坐标可通过下式求得:
其中(x,y)表示点在原坐标系中的坐标,(x',y')表示点在旋转后坐标系中的坐标,θ为x'轴相对于x轴的逆时针旋转角度;
在旋转坐标系中,起始点、终点和第三点对应的坐标分别为(x′1,y′1)、(x'2,y'2)、(x'3,y'3);将y'轴视为抛物线的对称轴,抛物线方程退化为y=ax2+c;第三点(x'3,y'3)分别与起点(x′1,y′1),终点(x'2,y'2)构成两条抛物线,可求得在旋转坐标系上两条抛物线方程;离散化后即可得到旋转坐标系中的分割线上的点坐标;
对旋转坐标系中的分割线上的点坐标进行坐标逆变换,即可求得原坐标系中的分割线上的点坐标:
将分割线的两侧分别赋值0/1,归为两个分区;
通过上述方法得到双抛物线模板表的部分模板;
步骤3、设置阈值去除重复的模板;
对步骤2生成的模板,去掉其中重复或相似的模板;对于模板的重复性,两个模板若分区形状相同,就认为它们是重复的,即不用考虑分区的赋值是0还是1;因为16*16和32*32的模板数量过于庞大,对16*16和32*32的块分别设置4和16的阈值;即如果两个模板的形状不同,但差别小于阈值,仍认为它们是重复的;
步骤4、对分区后的块进行旋转遍历;
步骤2生成的模板包括了希望的双抛物线可生成的分区形状,对这部分模板进行90°、180°和270°的旋转,对称以及对称后进行90°、180°和270°的旋转,即可得到双抛物线的分区模板表。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710200075.8A CN107071478B (zh) | 2017-03-30 | 2017-03-30 | 基于双抛物线分区模板的深度图编码方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710200075.8A CN107071478B (zh) | 2017-03-30 | 2017-03-30 | 基于双抛物线分区模板的深度图编码方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN107071478A CN107071478A (zh) | 2017-08-18 |
CN107071478B true CN107071478B (zh) | 2019-08-20 |
Family
ID=59620807
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710200075.8A Active CN107071478B (zh) | 2017-03-30 | 2017-03-30 | 基于双抛物线分区模板的深度图编码方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN107071478B (zh) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108234987A (zh) * | 2018-01-23 | 2018-06-29 | 西南石油大学 | 一种用于深度图像边界拟合的双抛物线分区模板优化方法 |
CN110636299B (zh) | 2018-06-21 | 2022-06-14 | 北京字节跳动网络技术有限公司 | 用于处理视频数据的方法、装置及计算机可读记录介质 |
CN113545087A (zh) * | 2019-03-11 | 2021-10-22 | Oppo广东移动通信有限公司 | 预测值的确定方法、编码器以及计算机存储介质 |
CN110363212B (zh) * | 2019-03-28 | 2022-02-15 | 西南石油大学 | 基于边界扫描的多wedgelet图像近似方法 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2015152605A1 (ko) * | 2014-03-31 | 2015-10-08 | 삼성전자 주식회사 | 깊이 영상을 부호화 또는 복호화 하는 방법 및 장치 |
WO2015194915A1 (ko) * | 2014-06-20 | 2015-12-23 | 삼성전자 주식회사 | 인터 레이어 비디오 부복호화를 위한 깊이 영상의 예측 모드 전송 방법 및 장치 |
CN105247863A (zh) * | 2013-07-08 | 2016-01-13 | 联发科技(新加坡)私人有限公司 | 三维视频编码中简化的cabac编码方法 |
WO2016056782A1 (ko) * | 2014-10-08 | 2016-04-14 | 엘지전자 주식회사 | 비디오 코딩에서 뎁스 픽처 코딩 방법 및 장치 |
-
2017
- 2017-03-30 CN CN201710200075.8A patent/CN107071478B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105247863A (zh) * | 2013-07-08 | 2016-01-13 | 联发科技(新加坡)私人有限公司 | 三维视频编码中简化的cabac编码方法 |
WO2015152605A1 (ko) * | 2014-03-31 | 2015-10-08 | 삼성전자 주식회사 | 깊이 영상을 부호화 또는 복호화 하는 방법 및 장치 |
WO2015194915A1 (ko) * | 2014-06-20 | 2015-12-23 | 삼성전자 주식회사 | 인터 레이어 비디오 부복호화를 위한 깊이 영상의 예측 모드 전송 방법 및 장치 |
WO2016056782A1 (ko) * | 2014-10-08 | 2016-04-14 | 엘지전자 주식회사 | 비디오 코딩에서 뎁스 픽처 코딩 방법 및 장치 |
Also Published As
Publication number | Publication date |
---|---|
CN107071478A (zh) | 2017-08-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107071478B (zh) | 基于双抛物线分区模板的深度图编码方法 | |
CN108335352B (zh) | 一种面向多视图大规模三维重建场景的纹理映射方法 | |
KR101310589B1 (ko) | 이미지들로부터의 빠른 스테레오 재구성을 위한 기술들 | |
CN103248911B (zh) | 多视点视频中基于空时结合的虚拟视点绘制方法 | |
EP3367334B1 (en) | Depth estimation method and depth estimation apparatus of multi-view images | |
CN103024421B (zh) | 自由视点电视中的虚拟视点合成方法 | |
CN111951384B (zh) | 一种基于单张人脸图片的三维人脸重建方法和系统 | |
CN101483770B (zh) | 一种编解码方法及装置 | |
CN108305286A (zh) | 基于颜色编码的多目立体视觉脚型三维测量方法、系统和介质 | |
CN103530907B (zh) | 基于图像的复杂三维模型绘制方法 | |
CN103345771A (zh) | 一种基于建模的图像高效渲染方法 | |
CN108347611B (zh) | 用于经纬图的编码块级拉格朗日乘子的优化方法 | |
CN105026997A (zh) | 投影系统、半导体集成电路及图像修正方法 | |
CN106530333A (zh) | 基于捆绑约束的分级优化立体匹配方法 | |
WO2021248966A1 (zh) | 点云质量评估方法、编码器、解码器及存储介质 | |
CN105469386B (zh) | 一种确定立体相机高度与俯仰角的方法及装置 | |
CN105141940B (zh) | 一种分区域的3d视频编码方法 | |
CN105049866A (zh) | 基于绘制失真模型的多视点加深度编码的码率分配方法 | |
You et al. | IPDAE: Improved patch-based deep autoencoder for lossy point cloud geometry compression | |
Faramarzi et al. | Mesh coding extensions to mpeg-i v-pcc | |
CN105007494B (zh) | 一种3d视频深度图像的帧内楔形分割模式选择方法 | |
CN106791772B (zh) | 基于绘制的最大可容忍深度失真计算方法 | |
Deng et al. | Structural similarity-based synthesized view distortion estimation for depth map coding | |
CN115297316A (zh) | 语境特征融合的虚拟视点合成图像空洞填充方法 | |
Duch et al. | Depth map compression via 3D region-based representation |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |