mmdetection3d
mmdetection3d copied to clipboard
[Bug] 关于结构复杂的吐槽
Prerequisite
- [X] I have searched Issues and Discussions but cannot get the expected help.
- [X] I have read the FAQ documentation but cannot get the expected help.
- [X] The bug has not been fixed in the latest version (dev-1.x) or latest version (dev-1.0).
Task
I'm using the official example scripts/configs for the officially supported tasks/models/datasets.
Branch
1.x branch https://github.com/open-mmlab/mmdetection3d/tree/dev-1.x
Environment
..
Reproduces the problem - code sample
bevfusion demo
Reproduces the problem - command or script
python3 multi_modality_demo.py demo/data/nuscenes/n015-2018-07-24-11-22-45+0800__LIDAR_TOP__1532402927647951.pcd.bin demo/data/nuscenes demo/data/nuscenes/n015-2018-07-24-11-22-45+0800.pkl projects/BEVFusion/configs/bevfusion_lidar-cam_voxel0075_second_secfpn_8xb4-cyclic-20e_nus-3d.py checkpoints/bevfusion_converted.pth --cam-type all --score-thr 0.2 --show
Reproduces the problem - error message
代码逻辑混乱
Additional information
我在阅读bevfusion的实现时,一直在愤慨,层层跳转也太多了,例如
test_step需要向上跳4层才能找到是BaseModel里面实现的,然后跳到Base3DDetector的forward,然后是BEVFusion里面的predict。而且这种跳转,需要反复翻看各个基类
我觉得代码分两种,一种是清晰地表达论文思路的,一种是高效执行。我认为科研的发展更需要第一种代码
FYI
我记得你们在openmmlab的开放麦有一期,很开心地分享了你们推出的新版本,进行了很多重构,而我用的就行最新版
代码结构极其复杂,bevfusion的中有好多变量都写死,还得自己改 配置文件中,HardSimpleVFE根本就没用,直接写在了voxelize函数里面了 都得自己慢慢发现
Thanks for your problem, the methods we supported are now divided into two types: core package and project package. The method merged into our core package will be more elegant and neat, which typically requires much more time. To support the new methods in a shorter time and due to the lack of human resources, for the new methods merged into project package, usually only accuracy performance is promised, so code readability is usually not very good.