【代码阅读】【3d目标检测】pv-rcnn代码阅读(一)数据准备

本文详细解读了PVRCNN项目中如何通过KittiDataset类进行数据预处理,涉及txt文件操作、样本选择、数据增强配置及点云处理流程。通过build_dataloader和_data_augmentor函数,理解了训练数据的准备过程。

最近在看pvrcnn的源码,加深一下对论文的理解。源码的理解多亏了这位大佬的注释,感谢一下!
首先我们看到train.py函数,在训练之前要对于数据进行一个预处理:

    train_set, train_loader, train_sampler = build_dataloader(
        dataset_cfg=cfg.DATA_CONFIG,
        class_names=cfg.CLASS_NAMES,
        batch_size=args.batch_size,
        dist=dist_train, workers=args.workers,
        logger=logger,
        training=True,
        merge_all_iters_to_one_epoch=args.merge_all_iters_to_one_epoch,
        total_epochs=args.epochs
    )

cfg和arg是前面定义的配置文件及变量。
我们进去查看build_dataloader函数做了什么。
build_dataloader定义在_init_.py里面,首先我们在配置文件中选用dataset来进行dataset的初始化操作:

    dataset = __all__[dataset_cfg.DATASET](
        dataset_cfg=dataset_cfg,
        class_names=class_names,
        root_path=root_path,
        training=training,
        logger=logger,
    )

__all__ = {
   
   
    'DatasetTemplate': DatasetTemplate,
    'KittiDataset': KittiDataset,
    'NuScenesDataset': NuScenesDataset,
    'WaymoDataset': WaymoDataset
}

all函数主要是通过配置文件选择我们要进行数据预处理的数据集:kittiDataset
KittiDataset是定义在kitti_dataset.py中的一个类,我们首先对他进行一个初始化:

    def __init__(self, dataset_cfg, c
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值