当前位置:网站首页>[point cloud processing paper crazy reading frontier version 8] - pointview gcn: 3D shape classification with multi view point clouds
[point cloud processing paper crazy reading frontier version 8] - pointview gcn: 3D shape classification with multi view point clouds
2022-07-03 09:07:00 【LingbinBu】
Pointview-GCN: 3D Shape Classification With Multi-View Point Clouds
Abstract
- Capture part of the point cloud from multiple viewpoints around the object 3D shape classification
- Pointview-GCN have multi-level Of Graph Convolutional Networks (GCNs), With fine-to-coarse To aggregate the shape features of a single view point cloud , So as to achieve the right Geometric information of the object and Multi perspective relationship The purpose of coding
- The code can be found in the :https://github.com/SMohammadi89/PointView-GCN PyTorch edition
1. introduction
- The point cloud data captured in real life are all part of the point cloud obtained from different perspectives
- Graph Convolutional Networks (GCNs) It is proved that it is right to Semantic relationship coding for feature aggregation The power of
- Pointview-GCN A method with multi-level GCNs Network of , Aggregate shape features from partial point clouds of multiple views , With fine-to-coarse Mining semantic relationships in adjacent views
- In different layers GCNs Inter join skip connection
- A new data set is proposed , This data set contains point cloud data from a single perspective
2. Related work
MVCNN Use max-pooling Aggregate features from different views , Finally, we get a global shape descriptor, The disadvantage is that The semantic relationship between multi view data is not considered .
View-GCN A new method based on view Graph convolution network , Capture structural relationships in data , But all of the above methods are to aggregate features on the image .

3. Method
- First, take multiple partial point data from different perspectives of the object
- utilize backbone Extract the features of each part of the point cloud
- Create a with N N N Graph of nodes G = { v i } i ∈ N G=\left\{ {v_i} \right\}_{i \in N} G={ vi}i∈N, Pass the first i i i Shape features of single view point cloud data F i F_i Fi Representation node v i v_i vi, among F = { F i } i ∈ N \mathbf{F}=\left\{ {F_i} \right\}_{i \in N} F={ Fi}i∈N yes G G G All node characteristics of , v p v_p vp yes v i v_i vi Adjacent points of (kNN), G G G The adjacency matrix of is A \mathbf{A} A

It is proposed that the feature aggregation of network includes multiple level Of GCNs, Pictured 2 Shown ,level The optimal number of M M M Determined by experiment .
In the j j j individual level in , For the input G j G^j Gj perform graph convolution operation , Update node characteristics F i F_i Fi, Followed by an optional view-sampling, Get smaller graph G j + 1 G^{j+1} Gj+1, G j + 1 G^{j+1} Gj+1 It contains G j G^{j} Gj The most important view information .
G j + 1 G^{j+1} Gj+1 It is put into the... As input again j + 1 j+1 j+1 individual level in .
3.1. Graph convolution and Selective View Sampling
In the j j j individual level in , Perform the following three operations :
- local graph convolution
- non-local message passing
- selective view sampling (SVS)
Local graph convolution
Consider nodes v i j v_i^j vij And its adjacent nodes ,local graph convolution Update the node through the following formula v i j v_i^j vij Characteristics of :
F ~ j = L ( A j F j W j ; α j ) \tilde{\mathbf{F}}^{j}=\mathcal{L}\left(\mathbf{A}^{j} \mathbf{F}^{j} \mathbf{W}^{j} ; \alpha^{j}\right) F~j=L(AjFjWj;αj)
among L ( ⋅ ) \mathcal{L}(\cdot) L(⋅) Express LeakyReLU operation , α j \alpha^{j} αj and W j \mathbf{W}^{j} Wj Is the weight matrix .
non-local message passing
Then we have to pass non-local message passing to update F ~ j \tilde{\mathbf{F}}^{j} F~j, consider G j G^{j} Gj Long distance relationship between all nodes in . Every node v i v_i vi First, update its state to the edge between adjacent vertices :
m i , p j = R ( F ~ i j , F ~ p j ; β j ) i , p ∈ N j m_{i, p}^{j}=\mathcal{R}\left(\tilde{F}_{i}^{j}, \tilde{F}_{p}^{j} ; \beta^{j}\right)_{i, p \in N^{j}} mi,pj=R(F~ij,F~pj;βj)i,p∈Nj
among R ( ⋅ ) \mathcal{R}(\cdot) R(⋅) Represents the... Between a pair of views relation function, β j \beta^{j} βj yes related parameters.
Then update the feature of the vertex by the following formula :
F ~ i j = C ( F ~ i j , ∑ p = 1 , p ≠ i N j m i , p j ; γ j ) \tilde{F}_{i}^{j}=\mathcal{C}\left(\tilde{F}_{i}^{j}, \sum_{p=1, p \neq i}^{N_{j}} m_{i, p}^{j} ; \gamma^{j}\right) F~ij=C⎝⎛F~ij,p=1,p=i∑Njmi,pj;γj⎠⎞
among C ( ⋅ ) \mathcal{C}(\cdot) C(⋅) yes combination function, γ j \gamma^{j} γj yes related parameters.
Through non-local message passing after , The feature is updated by considering the relationship of the whole graph .
selective view sampling (SVS)
- Use Farthest Point Sampling (FPS) Yes G j G^{j} Gj Take the next sample
- Each node after down sampling v i v_i vi The nearest neighbor of V i j \mathbf{V}_{i}^{j} Vij in , Use view-selector choice softmax The node with the largest function response
- take coarsened G j + 1 G^{j+1} Gj+1 And updated F j + 1 \mathbf{F}^{j+1} Fj+1 Put it on the next layer to continue processing
3.2. Multi-level feature aggregation and training loss
In each layer graph convolution after , All have one floor max-pooling It works on F j \mathbf{F}^{j} Fj On , The goal is to get every level Global shape feature on F global F_{\text {global }} Fglobal .
The final global shape feature F global F_{\text {global }} Fglobal It's all level Middle quilt pool Stitching of back features .
From the first floor convolution level To the last floor convolution level Added a residual connection, Avoid when GCNs level The increase in the number of leads to the disappearance of the gradient .
Training losses consist of two elements , Global shape loss L global L_{\text {global }} Lglobal and selective-view Shape loss L selective L_{\text {selective }} Lselective :
L = L global ( S ( F global ) , y ) + ∑ j = 1 M ∑ i = 1 N j + 1 ∑ v s ∈ V i j L selective ( V ( F s j ; θ j ) , y ) \begin{aligned} L=& L_{\text {global }}\left(\mathcal{S}\left(F_{\text {global }}\right), y\right)+\\ & \sum_{j=1}^{M} \sum_{i=1}^{N^{j+1}} \sum_{v_{s} \in \mathbf{V}_{i}^{j}} L_{\text {selective }}\left(\mathcal{V}\left(F_{s}^{j} ; \theta^{j}\right), y\right) \end{aligned} L=Lglobal (S(Fglobal ),y)+j=1∑Mi=1∑Nj+1vs∈Vij∑Lselective (V(Fsj;θj),y)
among L global L_{\text {global }} Lglobal It's cross entropy loss , S \mathcal{S} S It includes the full connection layer and softmax Function classifier , y y y Is shape classification . L selective L_{\text {selective }} Lselective Is used for view selector Cross entropy of , Ensure that the selected view can recognize shape shape classification . V ( ⋅ ) \mathcal{V}(\cdot) V(⋅) Is used for view selector Function of , Parameter is θ j \theta^{j} θj. F s j F_{s}^{j} Fsj Is the node after down sampling .
During the training , Only L global L_{\text {global }} Lglobal Participate in .
4. experiment
Dataset generation
ModelNet40 Contains 12311 individual model,40 Categories
ScanObjectNN Contains 2909 individual model,15 Categories
Based on this, we build 4 Data sets :Model-D, Model-H, Scan-D and Scan-H
D Represents icosahedral (20 individual viewpoints),H It means hemisphere (12 individual viewpoints)
Implementation details
backbone:PointNet++ /DGCNN
4.1. Comparison against state-of-the-art methods


4.2. Ablation studies
Effects of levels of GCN and skip connection

Effects of number of input views

Hemispherical angle of view design accuracy is not as good as icosahedral , Maybe it's because the bottom doesn't collect enough information .
Effects of PointNet++ models of varying classification accuracy

边栏推荐
- 22-06-27 Xian redis (01) commands for installing five common data types: redis and redis
- Notes and bugs generated during the use of h:i:s and y-m-d
- Character pyramid
- 20220630 learning clock in
- 拯救剧荒,程序员最爱看的高分美剧TOP10
- TP5 multi condition sorting
- What is the difference between sudo apt install and sudo apt -get install?
- Recommend a low code open source project of yyds
- AcWing 787. 归并排序(模板)
- Sending and receiving of request parameters
猜你喜欢

Gaussian elimination acwing 883 Gauss elimination for solving linear equations

Log4j2 vulnerability recurrence and analysis

【点云处理之论文狂读经典版13】—— Adaptive Graph Convolutional Neural Networks

数位统计DP AcWing 338. 计数问题

The "booster" of traditional office mode, Building OA office system, was so simple!

Facial expression recognition based on pytorch convolution -- graduation project

【点云处理之论文狂读经典版10】—— PointCNN: Convolution On X-Transformed Points

高斯消元 AcWing 883. 高斯消元解线性方程组

Format - C language project sub file

AcWing 785. Quick sort (template)
随机推荐
Digital statistics DP acwing 338 Counting problem
【点云处理之论文狂读经典版8】—— O-CNN: Octree-based Convolutional Neural Networks for 3D Shape Analysis
Wonderful review | i/o extended 2022 activity dry goods sharing
cres
Escape from heaven and forget what he suffered. In ancient times, it was called the punishment of escape from heaven. Article collection
樹形DP AcWing 285. 沒有上司的舞會
Digital management medium + low code, jnpf opens a new engine for enterprise digital transformation
LeetCode 715. Range 模块
DOM 渲染系统(render mount patch)响应式系统
记忆化搜索 AcWing 901. 滑雪
22-06-27 Xian redis (01) commands for installing five common data types: redis and redis
常见渗透测试靶场
Facial expression recognition based on pytorch convolution -- graduation project
Basic knowledge of network security
Sword finger offer II 091 Paint the house
AcWing 785. Quick sort (template)
LeetCode 1089. Duplicate zero
Summary of methods for counting the number of file lines in shell scripts
【点云处理之论文狂读前沿版9】—Advanced Feature Learning on Point Clouds using Multi-resolution Features and Learni
Character pyramid