当前位置:网站首页>[point cloud series] so net: self organizing network for point cloud analysis
[point cloud series] so net: self organizing network for point cloud analysis
2022-04-23 13:18:00 【^_^ Min Fei】
List of articles
Clean up the draft box , I forgot to release what I wrote long ago ;)
1. Summary
1.1 original text
subject :SO-Net:Self-Organizing Network for Point Cloud Analysis, CVPR2018
The paper :https://link.zhihu.com/?target=https%3A//arxiv.org/abs/1803.04249
Code :https://github.com/lijx10/SO-Net
brief introduction : The self-organizing neural network is mainly used (SOM) To get representative points
1.2 Background knowledge
Self organizing neural network (SOM)
Kohonen A neural network model is proposed , Data can be Unsupervised learning clustering .
Contains only : Input layer + Output layer ( Mapping layer ), Because there is no middle hidden layer , Therefore, the output maintains the original topology .
SOM It is an unsupervised clustering method , Simulate the different characteristics of the division of labor of nerve cells in different regions of the human brain , That is, different regions have different corresponding characteristics , And automatically complete . The problem of identifying the unknown cluster center can be realized by self-organizing map .
Training uses “ Competitive learning “ The way , Each input sample finds a node in the hidden layer that best matches it , be called ”winning neuron“. Then the random gradient descent method is used to update the activation node parameters . meanwhile , The points adjacent to the active node also update the parameters appropriately according to their distance from the active node .

SOM There are mainly two steps :
- Select the active node ;
- Update the weights of the active points and adjacent nodes ;
–> Brain science research shows that : Adjacent neurons can stimulate each other , thus SOM The operation is similar ;
–> Determine the neighborhood : Set a radius , All points within the radius are adjacent points , As learning progresses , Make the radius smaller and smaller until the end of learning .
SOM effect : clustering & Dimension reduction
2. motivation
And PointNet++ And PointCNN The overall idea is similar , Lower level or PointNet, namely : First select some representative points , Partition the point cloud , And then use PointNet, adopt Max-pooling Each region gets a trait vector as a node feature , Then splice all node features , Receive FC Classification in layers .
The difference : Selecting the center point is through self-organizing structure mapping SOM To carry out , And only one down sampling operation .
3. thought
- Build self-organizing structure mapping (SOM) To choose representative points , To establish the spatial distribution of point clouds .
- The network has a multi-level structure
- The receptive field can pass through KNN To adjust
4. Algorithm
Self organizing networks : In a point cloud N Point use M individual SOM Node to represent .
4.1 SOM Permutation invariance of
In this article SOM The size is set to m × m m\times m m×m size , among m ∈ [ 5 , 11 ] m\in[5,11] m∈[5,11]. Compared with the feedback mechanism in the network ,SOM It's unsupervised contrastive learning .
however SOM Not permutable , because :
(1) The training results are highly dependent on the initialization node ;
–> Fixed number of initialized nodes , It can be homogenized and dispersed in a unit ball to obtain the initialization point , Pictured 2(a) Shown
(2) The update per sample depends on the sorting of the input points ;
–> Not applicable to point by point update , Use Block update , That is, the gain of accumulating all points is updated , Avoid permutation changes introduced by sequence ;

4.2 Coding framework
SOM Is to guide hierarchical feature extraction , And a tool for systematically regulating the overlap of receptive fields .
Given SOM Output , For each node s i s_i si Look for it K Nearest neighbor :

Then put each p i p_i pi Subtract from related nodes , Owned by one becomes k k k A little bit :

such KN A normalized point is passed forward to the next layer :

Finally, the feature extraction of nodes uses the maximum pool to extract K N KN KN A point feature becomes M M M A node feature .

Since each point is normalized to k k k A coordinate , It also guarantees M M M The receptive fields cover each other after the maximum pool , That is to say $M
individual spot capsule enclosed 了 Points include individual spot capsule enclosed 了 kN individual return One turn spot , this in Of A normalization point , there individual return One turn spot , this in Of k$ Is a parameter that controls coverage .
and SOM Similar feature aggregation . Because the input point of the first layer is from M M M individual SOM Nodes represent , So it's actually divided into M M M A mini point cloud , Pictured 3 Shown . Every mini The point cloud includes a small number of points , Their original points are interrelated . about 2048 For a point cloud ,M=64,k=3,mini The point cloud probably includes 90 A little bit .
And SOM The connection of nodes plays a role in connecting these mini The point cloud is assembled back to the original point cloud . because SOM It clearly reveals the spatial distribution of the input point cloud , Our separation and assembly process is better than the grouping strategy PointNet++ More effective .
The overall frame diagram is shown in the figure :

4.3 Self encoder
Two parallel branches :

5. experimental result
Data to enhance :
The input point cloud is normalized to zero mean in a unit cube . In the training phase, the following data are used to enhance :
(a) Gaussian noise N ( 0 , 0 : 01 ) \mathcal{N}(0,0:01) N(0,0:01) Add to point coordinates and face normal vectors ( If applicable );
(b) Gaussian noise N ( 0 , 0 : 04 ) \mathcal{N}( 0,0:04) N(0,0:04) Add to SOM node .
Point cloud 、 Surface normal vector ( If applicable ) and SOM Nodes are scaled by a factor sampled from a uniform distribution . Other additional enhancements , Such as random shift or rotation , Will not improve the results .
It can be seen that the effect was very good at that time

Robustness experiment :


6. Conclusion and thinking
Mainly used SOM[19] To solve the point selection problem , Simulate the spatial distribution of point cloud ;
Something to explore : Node feature extraction produces a feature matrix similar to an image , It does not change with the order of input points . As the receptive field increases , Standard can be applied ConvNets Further integrate node features . however , In our experiment , We use it 2D Convolution sum pooling Replaced the second batch of full connection layers , The classification accuracy decreased slightly . It is a promising direction to study the causes and solutions of this phenomenon .
Reference resources :
版权声明
本文为[^_^ Min Fei]所创,转载请带上原文链接,感谢
https://yzsam.com/2022/04/202204230611136714.html
边栏推荐
- Melt reshape decast long data short data length conversion data cleaning row column conversion
- AUTOSAR from introduction to mastery 100 lectures (87) - key weapon of advanced EEA - AUTOSAR and DDS
- PyTorch 21. NN in pytorch Embedding module
- Is Hongmeng system plagiarism? Or the future? Professional explanation that can be understood after listening in 3 minutes
- MySQL 8.0.11下载、安装和使用可视化工具连接教程
- Ding ~ your scholarship has arrived! C certified enterprise scholarship list released
- GIS practical tips (III) - how to add legend in CASS?
- Super 40W bonus pool waiting for you to fight! The second "Changsha bank Cup" Tencent yunqi innovation competition is hot!
- Machine learning -- naive Bayes
- Async void provoque l'écrasement du programme
猜你喜欢

X509 parsing

9419 page analysis of the latest first-line Internet Android interview questions

榜样专访 | 孙光浩:高校俱乐部伴我成长并创业

According to the salary statistics of programmers in June 2021, the average salary is 15052 yuan. Are you holding back?

MySQL 8.0.11 download, install and connect tutorials using visualization tools

nodejs + mysql 实现简单注册功能(小demo)

Xi'an CSDN signed a contract with Xi'an Siyuan University, opening a new chapter in IT talent training

Ding ~ your scholarship has arrived! C certified enterprise scholarship list released

十万大学生都已成为猿粉,你还在等什么?

AUTOSAR from introduction to mastery 100 lectures (86) - 2F of UDS service foundation
随机推荐
缘结西安 | CSDN与西安思源学院签约,全面开启IT人才培养新篇章
Translation of attention in natural language processing
100000 college students have become ape powder. What are you waiting for?
CSDN College Club "famous teacher college trip" -- Hunan Normal University Station
【行走的笔记】
Vscode tips
PyTorch 21. NN in pytorch Embedding module
three. JS text ambiguity problem
Solve the problem that Oracle needs to set IP every time in the virtual machine
鸿蒙系统是抄袭?还是未来?3分钟听完就懂的专业讲解
Complete project data of UAV apriltag dynamic tracking landing based on openmv (LabVIEW + openmv + apriltag + punctual atom four axes)
这几种 VSCode 扩展是我最喜欢的
MySQL 8.0.11 download, install and connect tutorials using visualization tools
decast id.var measure. Var data splitting and merging
office2021安装包下载与激活教程
Hbuilderx + uniapp packaging IPA submission app store stepping on the pit
three.js文字模糊问题
AUTOSAR from introduction to mastery 100 lectures (52) - diagnosis and communication management function unit
Temperature and humidity monitoring + timing alarm system based on 51 single chip microcomputer (C51 source code)
Design of STM32 multi-channel temperature measurement wireless transmission alarm system (industrial timing temperature measurement / engine room temperature timing detection, etc.)