当前位置:网站首页>Mmdetection3d (2) -- visualization of results and logs
Mmdetection3d (2) -- visualization of results and logs
2022-07-28 17:53:00 【Zhang Feifei~】
1. Result visualization :
Installed docker Version of mmdetection3d There are some problems in visualization ,open3d It is always difficult to open the window , But the installed version of the source code can realize visualization . Therefore, the source code installation method is adopted . The source code installation is also relatively simple , If the environment is ok , It's a smooth process .
(1) Source code installation steps
Installation process method :https://github.com/open-mmlab/mmdetection3d/blob/master/docs/getting_started.md
There are no pits during installation , Just follow the steps step by step .
After installation and operation, something like :
KeyError: 'SparseConv2d is already registered in conv layer'
The error of , The approximate rate is MMCV Version too high , Appropriate reduction mmcv edition , Just reinstall .
python_open3d_Error: The DISPLAY environment variable is missing
https://blog.csdn.net/shyjhyp11/article/details/113250325
(2) Use the installed version of the source code for visualization
First, configure config In file test_cfg Partial iou_thre as well as score_thr
a. Online visualization
After running, each frame will be visualized , And after visualization, the original point cloud and prediction results will be .obj Save the file to show-dir Under the table of contents . Every time you want to switch to the next frame, you will open3d window × fall . However, this method can only show the prediction results ,GT Not shown together .
eg:
python tools/test.py configs/3dssd/3dssd_kitti-3d-car.py data/mmdetection/pretrain_weight/3dssd_kitti-3d-car_20210324_122002-07e9a19b.pth --show --show-dir ./data/zjh_data/mmdetection/show_result
b. Offline visualization , You can talk to GT Show together
Want and GT Show together , The files to be generated also include gt.obj. Use the following commands to get gt.obj
python tools/test.py ${
CONFIG_FILE} ${
CKPT_PATH} --eval 'mAP' --eval-options 'show=True' 'out_dir=${SHOW_DIR}'
But in actual operation , My source code installed mmdet3d The following error occurred .
This problem has not been solved for the time being , Take a note of it . I haven't changed this part of the source code , I think there is something wrong with the environment configuration .
File "/mnt/data/zjh_data/mmdet3d_install/mmdetection3d/mmdet3d/core/evaluation/kitti_utils/eval.py", line 365, in calculate_iou_partly
overlap_part = image_box_overlap(gt_boxes, dt_boxes)
TypeError: expected dtype object, got 'numpy.dtype[float64]'
Curve saving method :
use docker Mr. version becomes a visual file , Then use the visualization of the source code version . however docker Version because open3d The problem of , It makes it impossible to visualize, which leads to the call open3d When you're in trouble , Makes it impossible to generate visualization files .
resolvent : Open Directory mmdet3d/core/visualization/show_result.py file , hold show_result Function if show call open3d All parts are annotated , Not because of open3d You cannot use the influence visualization file to generate .
Run the following command to generate the model .pkl Files and visualization files 000023_gt.obj ,000023_points.obj ,000023_pred.obj.
python tools/test.py ${
CONFIG_FILE} ${
CKPT_PATH} --out ./data/result_output/out_dir/3dssd.pkl --eval 'mAP' --eval-options 'show=True' 'out_dir=./data/result_output/show_result'
After generation, use tool Offline visualization script in :
python tools/misc/visualize_results.py ${
CONFIG_FILE} --result ~/zjh_data/result_output/out_dir/3dssd.pkl --show-dir ~/zjh_data/result_output/show_result/

2.log Visualization of error curve in file
python tools/analysis_tools/analyze_logs.py plot_curve ~/zjh_data/mmdetection/work_dir623/20210624_004729.log.json --keys loss --legend loss --out loss.pdf
- test Test and submit to kitti Online evaluation on
(1) modify config In file
ann_file=data_root + 'kitti_infos_test.pkl',
split='testing',
data = dict(
samples_per_gpu=6,
workers_per_gpu=4,
train=dict(
type='RepeatDataset',
times=2,
dataset=dict(
type=dataset_type,
data_root=data_root,
ann_file=data_root + 'kitti_infos_train.pkl',
split='training',
pts_prefix='velodyne_reduced',
pipeline=train_pipeline,
modality=input_modality,
classes=class_names,
test_mode=False,
# we use box_type_3d='LiDAR' in kitti and nuscenes dataset
# and box_type_3d='Depth' in sunrgbd and scannet dataset.
box_type_3d='LiDAR')),
val=dict(
type=dataset_type,
data_root=data_root,
ann_file=data_root + 'kitti_infos_val.pkl',
split='training',
pts_prefix='velodyne_reduced',
pipeline=test_pipeline,
modality=input_modality,
classes=class_names,
test_mode=True,
box_type_3d='LiDAR'),
test=dict(
type=dataset_type,
data_root=data_root,
# It has been changed here , When training, change to val
#### The next two lines are revised to test data
ann_file=data_root + 'kitti_infos_test.pkl',
split='testing',
pts_prefix='velodyne_reduced',
pipeline=test_pipeline,
modality=input_modality,
classes=class_names,
test_mode=True,
box_type_3d='LiDAR'))
(2) Use script files to test
边栏推荐
- [unity FPS] tutorial | using unity to make a first person character controller
- [p5.js learning notes] mouse interaction event
- [unity] how to play sprite Jiugongge?
- How to bind idea with code cloud
- leetcode系统性刷题(三)-------二叉树、二分查找
- 关于非递归和递归分别实现求第n个斐波那契数
- [p5.js learning notes] local variable (let) and global variable (VaR) declaration
- abstract、static、final
- ROS system installation
- Jerry ac692n --- prompt tone compression and modification
猜你喜欢

Interviewer: the actual record of algorithm question brushing.pdf I can't even answer it
![【C语言进阶】——剖析入微数据在内存中的存储[上]](/img/6a/ac723cee2543cd2403a7e58d556c8e.png)
【C语言进阶】——剖析入微数据在内存中的存储[上]

3D point cloud processing series - ---- PCA

内部类、常用类

数字滤波器(二)--最小相位延时系统和全通系统

【C语言进阶】——函数指针

mmdetection3d(2)---结果、log可视化

【Unity】Sprite九宫格到底怎么玩?

【p5.js】实战练习——无规则对称

Idea error running 'application' command line is too long solution
随机推荐
Sql Server STUFF与FOR XML PATH
Database performance analysis and optimization (internal training materials of Aite future team)
怎样将IDEA与码云进行绑定
2021 National Undergraduate data statistics and Analysis Competition
MySQL的安装
R language sub() usage
中南大学研究生复试机试题
[C language note sharing] custom type: structure, enumeration, Union (recommended Collection)
有奖征文 | 2022 云原生编程挑战赛征稿活动开启!
【Unity FPS】教程 | 使用Unity制作第一人称角色控制器
Jerry ac1082/1074/1090 development record
[unity] three pictures let you understand the shadergraph editor
leetcode系统性刷题(二)------贪心、回溯、递归
1.2-hexadecimal conversion
MySQL与IDEA连接
JVM performance tuning
Three ways to dynamically call WebService.Net
点云处理---kd-tree
数字滤波器(六)--设计FIR滤波器
2022 IDEA (学生邮箱认证)安装使用教程以及基础配置教程