Cloud-computility
云边协同
构建算力资源池和存储资源池,帮助用户共享数据中心内所有服务器上的 GPU 算力以及存力
GPU虚拟化技术关键的数据加工和转化工作,其中涉及到
数据导入、预处理、筛选、标注、清洗、数据跨平台流动
模型开发、训练、调优等
AI-Model
TorchEx 包含用于个人项目的 PyTorch 自定义算子 operator 集合,
支持以下 operator 的 GPU 计算:
FSD 中使用的 DynamicPointPooling
FSD 中使用的 Connected Component Labeling
https://github.com/Abyssaledge/TorchEx
点云:点云的稀疏性和不规则性
3D目标检测的检测头
纯lidar的目标检测下,已经有很多稀疏的方法(比如FSD/Voxelnext/Flatformer等等)
适用于长距离的场景
lidar based
dense feature map全dense:pointpillar, voxelnet
局部稀疏:second,centerpoint,
全稀疏:fsd, ssd, voxelnext,flatformer
camera based
BEV based method,
LSS: LSS, BevDet4D, BevDepth
工程
mmdetection3d mmdetection
OpenPCDet
mmengine
OpenMMLab 2.0 发布了新一代训练架构 MMEngine,
以统一的执行引擎,灵活支持了 20 个以上的计算机视觉任务
Runner is all you need!配置 Runner 等于配置了整个训练流程,调用 Runner 就能完成训练验证和测试
大多数情况下你只需要让 model 继承 BaseModel,并按照要求实现 forward 接口,就能完成训练、测试、验证的逻辑。
MMEngine 中实现了评测指标(Metric)和评测器(Evaluator)模块来完成模型评测,
实现评测过程和数据集类的解耦
概念说明-稀疏表示-Sparse
Fully Sparse 3D Object Detection (NeurIPS 2022)
first open-sourced LiDAR-based auto-labeling system
SECOND,PointPillars以及CenterPoint为代表的主流一阶段点云物体检测器都或多或少依赖
致密特征图(dense feature map)
Sparse Instance Recognition (SIR)
sparse feature
sparse voxel encoder作为backbone
和segmentor来分割物体并预测每个点所对应的物体中心
connected component labeling的方式来聚类
instance用稀疏的方式提取整体特征,并进行该instance外接框的reasoning
FSD-Fully Sparse 3D Object Detection
test-time augmentation (TTA),
测试时增强 (TTA) 是一种在测试阶段使用的数据增强策略。
它对同一张图片应用不同的增强,例如翻转和缩放,用于模型推理,然后将每个增强后的图像的预测结果合并,以获得更准确的预测结果
TTA 需要两个步骤。首先,你需要在配置文件中添加 tta_model 和 tta_pipeline
二步,运行测试脚本时,设置 --tta 参数,
Fully Sharded Data Parallel (FSDP) 分片数据
配置文件
https://mmdetection3d.readthedocs.io/zh_CN/latest/user_guides/config.html
TestTimeAug Resize RandomFlip
数据增强
mmdet/datasets/extra_aug.py里面,
包括RandomCrop、brightness、contrast、saturation、ExtraAugmentation等等图像增强方法
2.2.Multi-scale Training/Testing 多尺度训练/测试
MultiScaleFlipAug
Soft-NMS 改进了之前比较暴力的 NMS,当 IOU 超过某个阈值后,不再直接删除该框,而是降低它的置信度 (得分),如果得分低到一个阈值,就会被排除;
但是如果降低后仍然较高,就会被保留。
NMS算法的大致思想:对于有重叠的候选框:若大于规定阈值(某一提前设定的置信度)则删除,低于阈值的保留。对于无重叠的候选框:都保留
非极大值抑制(Non-Maximum Suppression,以下简称NMS算法)的思想是搜索局部极大值,抑制非极大值元素
dynamic voxelization, hard voxelization
《Center-based 3D Object Detection and Tracking》(2021CVPR)
Centerpoint
点云做了体素化。设置一个点云的范围比如[-100,-20,-2,100,20,2],
就是限定了点云的范围为前后100m、左右20m、上下2m。
于是得到一个长方体的范围,将这个范围内点云中的点取出,其它的点就不要了。
而体素化则是将这个长方体切成大小完全相同的多个小的体素网格-体素网格是[1,1,2]1m、宽1m、高2m,
一个参数max_num来限制每个格子中点云点数的最大值,格子中的点大过这个数量则会舍弃多余的点。到此我们就完成了点云的体素化
体素特征
会产生”Centre Feature Missing(CFM)”即点云空心化或者叫黑洞的问题
参考
https://github.com/open-mmlab
https://github.com/tusen-ai/SST
https://github.com/open-mmlab/mmengine
https://mmdetection.readthedocs.io/zh_CN/dev-3.x/user_guides/test.html
目标检测比赛中的tricks(已更新更多代码解析 https://zhuanlan.zhihu.com/p/102817180