
目标检测实战
文章平均质量分 90
openpcdet、mmdetecetion等框架的使用,以及目标检测代码实战笔记
非晚非晚
一往无前,不急不躁,生命不熄,折腾不止!
展开
-
【MIT-BEVFusion代码解读】第四篇:融合特征fuser和解码特征decoder
的大小,实际上源代码也是这么做的。最后将得到两个分支的特征进行。,第一个特征使用卷积降低通道数即可,第二个则需要反卷积来提升。所以backbone只有两个分支,都是5个卷积模块组成。的长和宽都减半至90,然后在经过5个相同的。将通道降至128,后面再接5个相同的。,将通道数128上至256,并且将。特征进行融合,这里使用的。部分由两部分组成,分别是。,这个分支首先经过第一个。,然后再卷积得到 =>提取特征,最后得到特征。得到了两个大小不同的。原创 2024-08-29 13:33:54 · 1666 阅读 · 0 评论 -
【MIT-BEVFusion代码解读】第三篇:camera的encoder部分
camera的encoder主要有3部分,分别是backboneneck和vtransform部分。其中backbone使用neck使用vtransform部分使用的是,如下所示。fill:#333;color:#333;color:#333;fill:none;使用使用使用backboneneckvtransform调用的顺序分别为,具体代码如下所示。原创 2024-08-29 13:30:27 · 2698 阅读 · 0 评论 -
【MIT-BEVFusion代码解读】第二篇:LiDAR的encoder部分
稀疏卷积常用于3D项目(如3D点云分割)中,由于点云数据是稀疏的,无法使用标准的卷积操作。同理,2D任务中,如果只处理其中一部分像素,也需要使用稀疏卷积,这样有助于模型加速。 本质上就是通过建立哈希表,保存特定位置的计算结果。稀疏卷积和普通卷积没有区别,最重要的区别在于卷积的数据的存储方式和计算方法,这种计算方法可以增加计算稀疏点云的效率,其他的都是完全相同的(但SubMConv3d还是稍微有点区别的,只有中心kernel覆盖值才计算),唯一多了一个indice_key,这是为了在indice。原创 2024-08-15 14:39:52 · 2590 阅读 · 0 评论 -
【MIT-BEVFusion代码解读】第一篇:整体结构与config参数说明
模型BEVFusion,内部包含四个模块。encoderfuserdecoder和head。它们之间的流程图如下所示。下面就这四部分的主要参数进行简要说明,具体的流程会在后续的文章展开。原创 2024-08-15 14:22:56 · 2863 阅读 · 1 评论 -
MIT-BEVFusion训练环境安装以及问题解决记录
训练代码对pytorch有要求,所以需要找到对应的CUDA版本,这里我安装的是11.3版本。也可能是cuda与torch版本不匹配,需要进pytorch官网查询对应版本。照抄就行,经过验证。如果你的cuda不是11.03,可以进入。:yapf包的版本问题,降低为yapf==0.40.1。下载安装openmpi,要不然会报mpi错误。:setuptools版本过高导致。:setuptools版本过高导致。查询需要安装的torch版本。原创 2024-08-09 15:29:26 · 1114 阅读 · 0 评论 -
mmdetection3d报错问题解决汇总
当在mmdetection3d上添加了新的网络结构之后,使用多GPU运行程序时,会报以下错误。ERROR:torch.distributed.elastic.multiprocessing.api:failed (exitcode: 1) local_rank: 0 (pid: 333) of binary: /opt/conda/bin/pythonTraceback (most recent call last):原创 2023-06-14 14:13:39 · 11744 阅读 · 2 评论 -
openpcdet之pointpillar代码阅读——第三篇:损失函数的计算
0. 检测头的设计1. 损失计算的理论2. 生成anchors3. GT与anchor的匹配4. box编码5. 损失函数设计Pointpillars使用了和SECOND相同的损失函数。每个三维目标检测框可以用7个变量来描述原创 2022-07-18 08:23:18 · 4461 阅读 · 0 评论 -
openpcdet之pointpillar代码阅读——第二篇:网络结构
上一篇文章,我们讲了数据增强和数据处理,并且我们得到了相应的pillar数据。下面我们继续讲pointpillar中的网络结构。随后经过VFE之后,就可以把原始的点云结构(N*4)(N∗4)变换成了(D,P,N)(D,P,N),其中 D代表了每个点云的特征维度,也就是每个点云10个特征(论文中只有9维),P代表了所有非空的立方柱体,N代表了每个pillar中最多会有多少个点。具体操作以及说明如下............原创 2022-07-14 13:34:35 · 4418 阅读 · 0 评论 -
openpcdet之pointpillar代码阅读——第一篇:数据增强与数据处理
1. 数据增强1.1 gt数据采集——gt_sampling1.2 全局翻转——random_world_flip1.3 全局旋转——random_world_rotation1.4 全局尺度变换——random_world_scaling2. 数据处理2.1 数据范围限制2.2 点云随机2.3 点云变换至pillar3. 数据收集——datalodar...............原创 2022-07-13 13:42:28 · 6029 阅读 · 8 评论 -
OpenPCDet v0.5版本的安装与测试
OpenPCDet更新了最新版本v0.5,同时也支持open3d。因为之前也没怎么用过mayavi,本来还想基于openpcdet 0.3版本,自己写一个open3d的显示,看到官方更新了一个最新版,果断安装最新版使用了,效果还不错,于是写一个相关的使用教程吧。...原创 2022-05-16 18:01:07 · 2398 阅读 · 1 评论