网络测试和学习demo

This commit is contained in:
cyy_mac
2026-05-09 17:03:40 +08:00
parent edbe8fdbf9
commit 78298e56f1
9 changed files with 2868 additions and 0 deletions

View File

@@ -0,0 +1,50 @@
# Network Learning — 网络结构可视化学习
论文《Cross Fusion of Point Cloud and Learned Image for Loop Closure Detection》中所有网络结构的可视化 Demo。
## 快速开始
```bash
conda activate fusion_cyy
cd network_learning
# 依次运行各网络demo
python 01_alnet_demo.py # ALNet — 图像特征提取器
python 02_ricnn_demo.py # RICNN — 旋转不变CNN + 位置编码
python 03_converter_demo.py # Converter — 跨模态特征转换器
python 04_generator_fusion_demo.py # Generator + FusionHead
python 05_netvlad_demo.py # NetVLAD — 全局描述子聚合
python 06_uot_demo.py # UOT — 最优传输位姿估计
# 或一次性看完整流水线
python 08_full_pipeline_demo.py --mode all
```
所有图像输出到 `output/` 目录。
## 文件说明
| 文件 | 内容 |
|------|------|
| `01_alnet_demo.py` | ALNet中间特征、感受野、参数量分析 |
| `02_ricnn_demo.py` | RICNN卷积核分组、池化区域、旋转不变性测试、位置编码 |
| `03_converter_demo.py` | 跨模态转换前后特征相似度、Attention权重 |
| `04_generator_fusion_demo.py` | Generator变长→定长、FusionHead多来源融合 |
| `05_netvlad_demo.py` | 软分配过程、VLAD结构、NetVLAD变体对比 |
| `06_uot_demo.py` | 代价矩阵、Sinkhorn迭代、刚体变换、参数影响 |
| `08_full_pipeline_demo.py` | BEV/Img/Fusion三种模式端到端可视化 |
| `LEARNING_GUIDE.md` | 完整学习文档9个网络结构详解 |
## 网络结构一览
| # | 网络 | 文件 | Demo |
|---|------|------|------|
| 1 | ALNet | `ALIKE/alnet.py` | `01_alnet_demo.py` |
| 2 | RICNN | `BEVNet.py` | `02_ricnn_demo.py` |
| 3 | EncodePosition | `BEVNet.py` | `02_ricnn_demo.py` |
| 4 | Converter | `net.py` | `03_converter_demo.py` |
| 5 | Generator | `net.py` | `04_generator_fusion_demo.py` |
| 6 | FusionHead | `net.py` | `04_generator_fusion_demo.py` |
| 7 | LocalPool | `net.py` | (轻量级,见文档) |
| 8 | NetVLAD | `netvlad.py` | `05_netvlad_demo.py` |
| 9 | UOTHead | `uot.py` | `06_uot_demo.py` |