Shell Net

Posted by Packy on February 18, 2020

2019_ICCV Oral_Shellnet

问题:点云处理框架准确性和训练速度的平衡性问题。

现有工作:

现有的点云分析框架虽然获得了良好的准确率,但是训练速度低,而且网络体系结构复杂。基本上现有工作对于准确性和训练速度上不能有很好的平衡。

创新点:

提出了一个新的方法 ,本文提出了一种有效的端到端置换不变的ShellConv 同心球壳卷积来对同心的球形空间进行统计,并定义具有代表性的特征,解决点序歧义问题。这种高效的点云置换不变卷积,能够有效平衡点云处理深度网络的精度和训练速度的问题。

方法:

计算机生成了可选文字: Algorithm1ShellConvOperator. {F„eu(q):qOp}庫Representative四, point叟t,andpreviouslayerfeaturespoint Output:Fp 庫Convolutionalfeatures耐 巫Neighborpointqis localisedwithasthecenter. :{蚂。刷@}{mip(q)}*Individually皿eachpoint qtoahigherdimensionalspace. 尘伊@}{[FAq),蚂-@}*Concatenatethe localandpreviouslayerfeatures. :{S}{S:qE(Is}I>termineshellq belongs怖accordingthedistances什omqtocenter萨 6:伊(习}{max-pool({F(q):qQs}):} Getfixedsizefeatureofeachshellamaxpoolover allpointsinthes让 :Fpconv({F(S)})庫PerformaIDconvolutionwith allshellfeaturesfrominner怖outer. return

ShellConv实现的功能是计算出一个采样点的feature。如上图(c)所示,一个Shell表示两个同心但不同半径的球面之间的空间范围。ShellConv的主要思路是:

1 先随机采样若干点 (红色点表示)

2 将采样点的邻居点划分到不同的shell内;

同一个shell内的点,通过聚合函数(max_pool)计算出一个shell的局部feature;

3 最后用多个shell的局部feature,计算出采样点的feature

感觉就是pointnet++,多了一个变半径的功能。

结论:

未来可以将这种卷积应用在 不同的点云分析领域: 目标检测、实例分割等;

或者将思想扩展到Mesh上,同时也可以用此方法构建用于点云生成的自动编码器。