PCQM:彩色3D点云的全参考质量评估方法

1. 简要介绍

在压缩大数据量的点云数据时会产生失真,由于一些条件限制,需要客观质量评价的方法来评估点云失真的程度。本篇论文提出了一种针对含有色彩和位置信息的点云的全参考客观质量评估方法。

问题的核心是如何将彩色信息和位置失真程度的评估结合起来。此篇论文的解决方案是选择和计算和位置和色彩相关的一些特征,再取这些特征最优的子集,作一个线性组合。

2. 评估方法
2.1 建立被比较点云的联系

建立联系时,选取参考点云的点计算失真点云的对应点,也就是将参考点云的点投射到失真点云上,顺序不能颠倒。

建立点云之间的联系分为两部分:几何信息的联系和色彩信息的联系。设参考点云python三维空间点云梯度 三维点云精度怎么评价_点云上的一点python三维空间点云梯度 三维点云精度怎么评价_点云_02,寻找失真点云python三维空间点云梯度 三维点云精度怎么评价_深度学习_03上的对应点python三维空间点云梯度 三维点云精度怎么评价_python三维空间点云梯度_04需要通过python三维空间点云梯度 三维点云精度怎么评价_深度学习_03python三维空间点云梯度 三维点云精度怎么评价_点云_02位置处的邻近点云(此时python三维空间点云梯度 三维点云精度怎么评价_python三维空间点云梯度_04位置未知)用最小二乘法拟合出一个二次曲面python三维空间点云梯度 三维点云精度怎么评价_点云_08。具体过程为:首先用主成分分析(PCA)估计一个大致的切面,求得一个正交坐标轴python三维空间点云梯度 三维点云精度怎么评价_计算机视觉_09,其中python三维空间点云梯度 三维点云精度怎么评价_机器学习_10和表面的大致法向量平行。得到坐标轴后可以得到python三维空间点云梯度 三维点云精度怎么评价_点云_02邻近的第python三维空间点云梯度 三维点云精度怎么评价_计算机视觉_12点的坐标python三维空间点云梯度 三维点云精度怎么评价_深度学习_13,再使得所有邻近点到平面距离平方之和最小拟合出这个二次曲面(最小二乘法),确定了python三维空间点云梯度 三维点云精度怎么评价_点云_08之后,python三维空间点云梯度 三维点云精度怎么评价_python三维空间点云梯度_04python三维空间点云梯度 三维点云精度怎么评价_计算机视觉_09下的坐标为python三维空间点云梯度 三维点云精度怎么评价_python三维空间点云梯度_17。这样就建立了几何信息的联系。

若设曲面python三维空间点云梯度 三维点云精度怎么评价_机器学习_18,则python三维空间点云梯度 三维点云精度怎么评价_点云_08拟合就是使得python三维空间点云梯度 三维点云精度怎么评价_机器学习_20最小。

python三维空间点云梯度 三维点云精度怎么评价_计算机视觉_21

色彩信息的联系相对简单。python三维空间点云梯度 三维点云精度怎么评价_python三维空间点云梯度_04确定之后令其颜色与python三维空间点云梯度 三维点云精度怎么评价_深度学习_03点云上最近的邻近点颜色相同。

2.2 邻近点范围划分

本篇文章用球体作为邻近点的范围划分。用python三维空间点云梯度 三维点云精度怎么评价_机器学习_24表示球心为python三维空间点云梯度 三维点云精度怎么评价_点云_02,半径为python三维空间点云梯度 三维点云精度怎么评价_python三维空间点云梯度_26的球体。需要注意的是,计算特征用python三维空间点云梯度 三维点云精度怎么评价_python三维空间点云梯度_26,计算2.1中的二次曲面用python三维空间点云梯度 三维点云精度怎么评价_python三维空间点云梯度_28

2.3 计算特征
2.3.1 几何特征的计算

几何特征的选取和这个team另一篇论文1中相同。这些特征基于平均曲率信息python三维空间点云梯度 三维点云精度怎么评价_点云_29python三维空间点云梯度 三维点云精度怎么评价_点云_29可以直接由2.1中的拟合二次曲面的系数得到:
python三维空间点云梯度 三维点云精度怎么评价_python三维空间点云梯度_31
对于每个参考点云python三维空间点云梯度 三维点云精度怎么评价_点云上的点python三维空间点云梯度 三维点云精度怎么评价_点云_02,需要计算两个python三维空间点云梯度 三维点云精度怎么评价_点云_29值,一个是python三维空间点云梯度 三维点云精度怎么评价_机器学习_35,一个是python三维空间点云梯度 三维点云精度怎么评价_计算机视觉_36。这两个是需要用到两个拟合曲面,正如2.1所示,拟合二次曲面是基于邻近点来计算的。计算python三维空间点云梯度 三维点云精度怎么评价_机器学习_35的临近点范围为python三维空间点云梯度 三维点云精度怎么评价_计算机视觉_38,计算python三维空间点云梯度 三维点云精度怎么评价_计算机视觉_36则是。这两个平均曲率python三维空间点云梯度 三维点云精度怎么评价_计算机视觉_38值计算之后可以得到如下特征。

python三维空间点云梯度 三维点云精度怎么评价_深度学习_41

python三维空间点云梯度 三维点云精度怎么评价_计算机视觉_42

python三维空间点云梯度 三维点云精度怎么评价_机器学习_43

其中python三维空间点云梯度 三维点云精度怎么评价_计算机视觉_44是常数,防止分母接近0出现不稳定的情况,经常被设为常数1,这借鉴了SSIM的经验。python三维空间点云梯度 三维点云精度怎么评价_点云_45是在python三维空间点云梯度 三维点云精度怎么评价_计算机视觉_38python三维空间点云梯度 三维点云精度怎么评价_计算机视觉_38范围内的邻近点曲率按正态分配权重的均值(Gauss-weighted average)。python三维空间点云梯度 三维点云精度怎么评价_机器学习_48是在这些范围内的邻近点的标准差和协方差。

2.3.2 色彩特征的计算

色彩特征的计算是本篇论文的创新点,是延伸了2D图像的质量评估2工作得到的。作者首先将RGB数值转化为可感知的色域LAB2000HL。然后每个点都有一个亮度值(Lightness)python三维空间点云梯度 三维点云精度怎么评价_点云_49,两个彩色的值(chromatic values)python三维空间点云梯度 三维点云精度怎么评价_python三维空间点云梯度_50,彩度(chroma)可以定义为python三维空间点云梯度 三维点云精度怎么评价_python三维空间点云梯度_51。可以得到如下特征:
python三维空间点云梯度 三维点云精度怎么评价_机器学习_52

python三维空间点云梯度 三维点云精度怎么评价_深度学习_53

python三维空间点云梯度 三维点云精度怎么评价_python三维空间点云梯度_54

python三维空间点云梯度 三维点云精度怎么评价_python三维空间点云梯度_55

python三维空间点云梯度 三维点云精度怎么评价_点云_56

其中python三维空间点云梯度 三维点云精度怎么评价_机器学习_57,python三维空间点云梯度 三维点云精度怎么评价_机器学习_58是在python三维空间点云梯度 三维点云精度怎么评价_机器学习_24范围内的高斯权重均值。

3. 组合几何和色彩的特征

由2.3可以计算每个局部特征值,在整个参考点云python三维空间点云梯度 三维点云精度怎么评价_点云上求均值可以得到全局特征值。接下来就是要将特征值组成的列向量python三维空间点云梯度 三维点云精度怎么评价_机器学习_61映射为一个标量值,范围从0到1。作者则将这些特征线性组合起来,用逻辑回归得到权重,也就是下面的python三维空间点云梯度 三维点云精度怎么评价_计算机视觉_62向量
python三维空间点云梯度 三维点云精度怎么评价_计算机视觉_63

3.1 数据和训练

文章选取了IST Rendering Point Cloud数据集。包含六个MPEG库的彩色点云(点的数量从272,684到4,848,745),这六个点云分别用八叉树剪枝、MPEG G-PCC、MPEG V-PCC三种编码方式以不同的编码率得到低、中、高三种不同的质量。所以一共是6*3*3=54个点云。每个点云被20个志愿者使用DSIS主观评测方法进行主观打分。数据集中使用了三种渲染方法,但是因为本文注重的是彩色点云,所以注重3D points with color这种渲染方法的主管评测均值(MOS)。

文章的模型仅有一个参数python三维空间点云梯度 三维点云精度怎么评价_python三维空间点云梯度_26,在测试中选择python三维空间点云梯度 三维点云精度怎么评价_深度学习_65,其中BB是最大的框盒长度(bounding box)。

3.2 训练结果

文章模型的表现的测试结果由主观和客观得分之间的Spearman和Pearson相关系数3得到。

首先是单个特征的预测表现,其中python三维空间点云梯度 三维点云精度怎么评价_深度学习_66的表现最佳,这部分不赘述。

其次是线性模型的最优化。为了防止过拟合需要选择一个最优的特征子集。首先将数据集按照六个初始点云分割,每个子集有3*3*3=27个点云。一部分是用来训练得到最优的权重,一部分用来测试。因为一共有6个初始点云,所以一共有python三维空间点云梯度 三维点云精度怎么评价_机器学习_67种分割方式,取其均值,便是一组特征列向量的表现结果。因为有8个特征,所以共有python三维空间点云梯度 三维点云精度怎么评价_点云_68种结果,遍历所有结果,可以压缩到三个特征:python三维空间点云梯度 三维点云精度怎么评价_深度学习_69,也就是Curvature structure,Lightness comparison,Lightness structure。

最后是PCQM模型的综合结果,文章将单个python三维空间点云梯度 三维点云精度怎么评价_深度学习_66特征和PCQM和两个 baseline进行比较。两个baseline分别为:python三维空间点云梯度 三维点云精度怎么评价_机器学习_71python三维空间点云梯度 三维点云精度怎么评价_点云_02python三维空间点云梯度 三维点云精度怎么评价_python三维空间点云梯度_04之间的几何距离均值(用简单的最近邻方式),再用框盒长度进行归一化。python三维空间点云梯度 三维点云精度怎么评价_机器学习_74为色域距离的均值(LAB2000HL)。可以得到PCQM两个相关系数都是最佳的。

取多个训练子集,再取平均可以得到最佳的系数为:
python三维空间点云梯度 三维点云精度怎么评价_机器学习_75


  1. G. Meynet, J. Digne, and G. Lavou´e, “PC-MSDM : A quality metric for 3D point clouds,” in International Conference on Quality of Multimedia Experience, 2019. ↩︎
  2. I. Lissner, J. Preiss, P. Urban, M. S. Lichtenauer, and P. Zolliker, “Imagedifference prediction: From grayscale to color,” IEEE Transactions on Image Processing, vol. 22, no. 2, pp. 435–446, 2013. ↩︎